PC/104 vs. COM: A face off between flexibility and customization
These days the comparison between PC/104 and Computer-On-Module (COM) boards occurs frequently. There are plenty of claims about how one is better than the other, but the truth is that both have their place. PC/104 and COM are different, and each has its advantages in various situations. One is only “better” than the other as far as how it fits each specific user application.
PC/104 I/O modules can be stacked on a PC/104 SBC processor card to quickly and easily expand the system. All PC/104 processor boards are complete and self contained, with the processor, memory, and system I/O all on one board. Connect power, keyboard, and video and a PC/104 SBC will power up and be ready to run a user program.
COM boards are not stackable; they are designed to plug into only one other card, a carrier card. The carrier card or baseboard, which is usually a custom design specific to an application, contains both system I/O and user I/O. The system I/O circuitry supports the processor and RAM on the COM board, allowing it to boot up and run, and the user I/O typically supports special requirements in the user’s application. However, there is a catch: The COM board cannot start up or run without the carrier card, and the carrier card can’t be fully developed until the application hardware and software are running and tested. Additionally, the application hardware and software can’t be tested until the carrier card is developed and built.
The development of a custom carrier card to support an off-the-shelf COM module is not a trivial task. One wrong trace or connection and the COM board will not start up or even allow the system to be debugged. Of course, the design of the carrier card also needs to be complete enough for both today’s and tomorrow’s needs. Otherwise a redesign of the carrier card will be needed to add any additional features.
In contrast, PC/104 products are in a ready-to-run state. Off-the-shelf or custom I/O boards can be added whenever needed, but they are not needed for the system to start and run. Expansion boards can be added to, or removed from, a PC/104 system as needed if system requirements change in the future.
It’s all about pinout
The PC/104 connectors primarily carry bus signals between boards, whereas COM connectors must carry both bus signals and I/O signals from the processor board to the carrier card. This requirement creates a challenge for designers using COMs in that a connector pinout that will accommodate the new I/O signals on future processors can’t be defined. The only way to upgrade a COM system to a newer technology is to redefine the connector pinout, which of course requires redesigning the carrier card. Newer processors support USB 3.0, LVDS and DisplayPort outputs, SATA III, and so on, but taking advantage of these kinds of technological improvements requires a redesign of the entire COM system.
The PC/104 philosophy of connecting I/O signals directly to the outside world (without running them through the stacking connector) makes these barriers disappear. A new PC/104 processor card can provide the user with a direct connection to any new type of high-speed I/O without changing the way the rest of the system connects. PC/104 SBCs can include any number of serial ports, USB ports, and the like (Figure 1).
Two approaches to custom I/O
One of the big advantages of a COM + carrier card system is the custom features that a user can design into the carrier card. However, custom I/O functions can also be designed into a PC/104 expansion card and plugged into almost any PC/104 SBC. If a new PC/104 SBC is released, the custom I/O board will still plug into the stack and continue to provide special functions without redesign.
Flexibility is key in an evolving market
There are advantages to both approaches, but the flexibility to grow into new processors and technology while maintaining compatibility with existing custom I/O boards gives PC/104 the edge in systems that will need to be updated at some point in their lifecycle.
PC/104 Consortium 408-337-0904