Our world today is full of electronic devices. We see a lot of them in our homes, in our offices and at shopping malls. Each device has their own characteristic, and they are all equipped with computers embedded deep in their system. These small computers are called single board computers (SBCs).
Single board computers are small circuit boards that contain all the components (i.e. processor, memory, I/O, etc.) necessary to function as a complete digital computer. These computers are actually similar in appearance to your typical desktop computer motherboard, although much smaller. Single board computers are found in many applications we use today. They are often used as the base for personal computers like laptops and notebooks. Single board computers are designed to be integrated with other electronic components to form an industrial machine or an electronic product.
But how can the combination of a processor, memory, and other computer components automate the functions of a specific electronic product or industrial machine? There are actually two phases in the design of embedded single board computers. The first is the design of the computer hardware, and the second is the design of the computer software.
In the hardware design phase, a company in need of a new industrial machine may opt to design their own embedded SBC in-house. They hire engineers to design the SBC for them. Alternatively, they can ask an SBC manufacturer to make an embedded SBC custom-designed for their specific application.
Today, most companies purchase SBCs that are already pre-designed — often called off-the-shelf SBCs. As opposed to custom SBCs, off-the-shelf embedded SBCs adhere to certain standards that are determined by their form factor. Most common form factors for embedded SBCs are the PC/104, EBX and EPIC form factor.
So how can these off-the-shelf embedded SBCs perform a specific function if they have the same designs? The answer is the software design. For the computer to perform a specific function, a computer program must be developed instructing the computer what to do. Companies usually hire software engineers for this design phase. Embedded SBC manufacturers often provide extensive software support.