Introducing modularity in embedded design

Monday, July 13, 2015

Modularity The concept of modularity is widely used in various industries. I am sure you are familiar with modular kitchens that are widely used in houses nowadays. Software developers also leverage the concept of modularity by splitting their software stack into small modules. The benefits in both these cases are parallel development of modules leading to less development time, easy customization based on requirements, portability to adapt to future requirements, and cost advantage in terms of less development time and reduced risk.

In this post, I will be introducing modularity in embedded design. An embedded platform consists of hardware including CPU, memory, I/Os, power circuitry, PCB, and many more, and in terms of software: Operating system, BSPs, device drivers, UI, application, etc. We can split this entire platform in the following manner:

Modularity Details 1

This ‘Application specific’ part constitutes both the hardware and software, depending on the end-application and OEMs requirements. OEMs can differentiate their products from those of their competitors by adding value to this part, as this is the part that users can interact and experience.

The ‘Application agnostic’ part consists of essential design commodities, including the processing & memory requirements. This part may not differ much whether the end-product is a medical device or retail PoS device, assuming the processing and memory requirements are somewhat similar.

Usually, the entire embedded platform is designed and developed from scratch, and this leads to multiple issues, as mentioned in my earlier blog post. There are also constraints in using off-the-shelf platform such as Single Board Computer (SBC); few of the constraints of SBC are mentioned in this other blog post. A Computer on Module (CoM) or System on Module (SoM) can come quite handy for efficient embedded design.

The revamped embedded architecture after introducing modularity by using a CoM can be represented as below:

Modularity Details 2


A Computer on Module (CoM) or System on Module (SoM) is a cost-effective, reliable and ready-to-use computing solution that consists of the application-agnostic hardware and software. System developers can focus on the application-specific part by using an off-the-shelf CoM, and thus accelerate time-to-market without compromising on product development cost and risk.

The combination of an off-the-shelf Computer on Module (CoM) and an application-specific carrier board, offers a complete platform for building any end-products for diverse applications such as medical, industrial automation, aerospace, robotics, etc.

Details of Computer on Module

An example carrier board along with the various I/Os is shown below:

Carrier Board details

A combination of a CoM and a compatible carrier board offers a complete embedded development platform to build various end-products.

Complete Development Platform

Toradex offers Computer on Modules powered by leading ARM based SoCs, at variety of price, performance, power, and interface support. These extensive series of CoMs addresses the diverse demands of embedded applications in areas of medical, industrial automation, building automation, robotics, automobiles, marine, aerospace, and many more. Check out my next blog to know how a Computer on Module addresses the constraints (mentioned in the blog) of chip-based or development from scratch of embedded products.

#Computer on Module #Embedded Development
AuthorPrakash Mohapatra, Product Manager, Toradex

Subscribe to our future Blog posts:


Leave a comment

Your email ID will be kept confidential. Required fields are marked *

Click to change the Code

Please enter the letters as they are shown in the image above. Letters are not case-sensitive.



* Your comment will be reviewed and then added. Thank you.