SiP, SoC, SoM, CoM—What’s the Difference?
What's the difference between SiP, SoC, SoM, and CoM?
There's an increasing number of acronyms (and initialisms) associated with hardware products. Here's a quick look at four common terms and what they denote.
While perusing through descriptions of various embedded system products and devices, you may come across many acronyms: SiP, SoC, SoM, maybe even CoM.
What are they and what’s the difference between them all? Let's take a look and break it down.
Image courtesy of ASE Global.
System-in-a-Package components are comprised of multiple integrated circuit together in the same packaging where they are connected internally. Components like DRAM, flash memory, processors, and other basic electronic components are often contained in an SiP, making them fairly capable and contained systems. SiPs can be stacked vertically or horizontally, with either wire bonds or solder bump connections.
The appeal of an SiP is that it can compact an otherwise complex system into a very simple package, making it easier to integrate into larger systems. It also simplifies PCB layouts.
SiPs are commonly used in small electronic devices such as smartphones and wearable devices. For example, the STMicroelectronics ST53G is an SiP which combines a microcontroller and RF booster for the application of contactless payment systems in wearables like smartwatches.
A Package-on-a-Package stacks single-component packages vertically, connected via ball grid arrays. Packages can be discrete components (memory, CPU, other logic) or a System-in-a-Package stacked with another package for added or expanded functionality.
PoP provides more component density, and also simplifies PCB design. It also can improve signal propagation since the interconnects between components is much shorter.
Similar to SiPs, PoPs are often found in small electronic devices.
Image courtesy of Moody751.
A System-on-a-Chip brings together all the necessary components of a computer into a single chip or integrated circuit. Commonly, an SoC can be based around either a microcontroller (includes CPU, RAM, ROM, and other peripherals) or a microprocessor (includes only a CPU). It is also possible for SoCs to be customized for a specific application, including whatever components, memory, or peripherals necessary, ranging from digital/analog signal ICs, FPGAs, and IOs.
Software for an SoC usually abstracts functionality so that it can be easily programmed and connected to.
The advantage of an SoC is that it is cheaper, smaller, and more energy efficient. The disadvantage is that, unlike a full-size computer, they are locked into their configuration.
Devices like Raspberry Pi are based around an SoC. SoCs can also help designers speed up the adoption of new protocols, such as these Bluetooth 5 SoCs that make it easier to integrate Bluetooth 5 into new products.
Image courtesy of Toradex.
A computer-on-a-module is a step above an SoC, but not quite a fully functional computer. It’s comprised of a single-board with a microprocessor, memory, and IO. However, it usually is paired with a carrier board. CoMs provide a plug-and-play type advantage, since a CoM can be replaced or upgraded within a carrier, without having to change the carrier.
And there you have it! If you have clarifications you'd like to make on any of these acronyms or would like to see others covered, leave a comment below.