How to Choose the Right Embedded System on Module?
I. What is an Embedded System on Module
(1) Definition of System on Module
An embedded system on module is a highly integrated circuit board that typically encompasses key components such as the main controller (like CPU), memory (such as DDR, eMMC or FLASH, etc.), storage (such as eMMC or FLASH), and power management chips. It is generally connected to the base board through methods like board-to-board connectors, stamp hole soldering, and gold fingers. Its function is to provide the core computing and storage capabilities for the embedded system.
Simultaneously, through the led-out functional pins, it facilitates users in designing the peripheral circuits.
Taking the common ARM architecture system on module as an example, its components might also include cache, clock circuit, reset circuit, etc. In terms of software, the system on module often has accomplished the transplantation and adaptation of the embedded operating system (such as Linux, Android, etc.), as well as the development of related interface drivers, Uboot, file system and graphical interface, providing users with a complete and easily secondary-developable basic platform.
(2) The Key Role of System on Module
The system on module has a crucial impact on the performance and functionality of the entire embedded system. From a performance perspective, the processor architecture, core count, main frequency, etc. carried by the system on module directly determine the computing speed and processing capacity of the system. For instance, a high-performance system on module can rapidly handle complex algorithms and large volumes of data, enabling the embedded system to handle high-intensity tasks such as high-definition video processing and real-time data analysis.
In terms of functionality, the abundant peripheral interfaces (such as UART, SPI, IIC, USB, etc.) integrated on the system on module offer support for the connection and communication between the system and external devices. Meanwhile, the stability and reliability of the system on module are directly associated with the operating quality of the entire embedded system.
Additionally, a high-quality system on module can also optimize the power consumption management of the system, reduce the energy consumption of the system, and prolong the battery life of the device. For embedded systems that need to operate in specific environments (such as high-temperature and high-humidity environments in the field of industrial control), the working temperature range and stability of the system on module guarantee the normal operation of the system.
Furthermore, the upgrade and replacement of the system on module are relatively convenient, enabling the embedded system to achieve performance improvement and function expansion without large-scale redesign, thereby extending the product life cycle and reducing development and maintenance costs.
II. Key Factors for Selection
(1) Hardware Platform
ARM Cortex-A53 is suitable for application scenarios that require a balance between performance and power consumption, and have relatively simple operating peripherals, such as 100Mbps network ports, CAN ports, serial ports, etc. It performs well in cost control and is often used in some mid-to-low-end smart devices.
ARM Cortex-A55 is suitable for application scenarios with relatively low performance requirements, emphasizing cost and power consumption, and having simpler operating peripherals, such as 100Mbps network ports, CAN ports, serial ports, etc.
Cortex-A76 is suitable for applications that have certain requirements for resolution, need to run databases and Java virtual machines, and have gigabit network ports.
The Cortex-A78 platform has an improvement in performance compared to Cortex-A76 and can handle more complex processing requirements, such as some multitasking and light graphic computing.
Cortex-X2 is often used in scenarios involving high-definition video processing, complex artificial intelligence operations, video monitoring, and multi-screen display, and requiring large-capacity storage.
(2) Operating System
The Android operating system has a good user interface and a rich application ecosystem, and is suitable for devices with high requirements for entertainment and interactivity, such as advertising machines and handheld Pads. However, when expanding peripherals, there may be problems with driver non-support and the need for self-transplantation. The Linux operating system has high stability and strong customizability and performs well in fields such as industrial control that require the expansion of various peripherals.
(3) Processor Performance
The architecture of the processor determines its efficiency in processing instructions. For example, an advanced architecture can improve single-core performance and multi-core collaboration efficiency. The more cores there are, the stronger the ability to handle tasks in parallel. The higher the main frequency, the more computing operations per unit time. But at the same time, factors such as cache size and manufacturing process also need to be comprehensively considered to fully evaluate processor performance.
(4) Peripheral Resources
Common peripheral resources include network ports for network communication, serial ports for low-speed data transmission, and USB interfaces for connecting various devices, etc. To evaluate whether peripheral resources meet the requirements, consider factors such as the number of interfaces, transmission rate, and supported protocols. For example, if high-speed and stable network transmission is required, gigabit network ports may be necessary; if multiple devices need to be connected, an adequate number of USB interfaces is very important.
(5) Operating Temperature
Commercial-grade products usually have an operating temperature range of 0 - 70 degrees, suitable for ordinary indoor environments. Industrial-grade products typically have an operating temperature range of -40 - 85 degrees and can operate stably in harsh industrial environments. In strict industrial fields, such as high-temperature, low-temperature, or large temperature difference environments, industrial-grade products must be selected to ensure the reliability of the system.
(6) Special Functions
For system on modules integrated with NPU units, they can efficiently handle artificial intelligence-related tasks and are suitable for fields such as intelligent monitoring. Multiple gigabit network ports can meet the demand for rapid transmission of large amounts of data and are often seen in scenarios such as data centers. Multiple display interfaces can support simultaneous display on multiple screens and are suitable for applications such as multimedia display. Based on specific project requirements, consider whether these special functions are necessary.
III. Connection Forms of System on Modules
(1) Pin Headers Connector
Pin headers connector was a common connection form for early system on modules. Its characteristics include: low connector cost and relatively simple structure. In terms of application, it is commonly seen in scenarios such as low-end, large-size smart devices, development boards, and debug boards. However, pin headers connector also has some limitations. Firstly, it is not convenient for mass production. The quality of pin headers and pin sockets from different brands varies greatly, and frequent plugging and unplugging can easily lead to poor contact. Secondly, its volume is relatively large and is not suitable for designs with compact space requirements. Additionally, due to its large pitch, it is difficult to connect hundreds of pins.
(2) Stamp Holes
The advantage of stamp holes connector is that it can minimize the connector cost, and the welding is firm and has strong shock resistance. However, it also has obvious drawbacks. One is that it is not easy to disassemble and cannot be repaired separately. The second is that the folding section is not easy to control precisely. If the distance from the line is too close, it is easy to cause line damage and result in scrapping. Currently, stamp holes system on modules can still be seen on the market and are commonly used in some applications that are sensitive to cost and have low requirements for removability.
(3) Board-to-Board Connector
The characteristics of board-to-board connector mainly include small size, surface mountability, and high reliability. It can solve the problems in reliability, testing, maintenance, production and other processes of previous connector forms. It has a wide range of application scenarios. For example, in compact smart hardware products, it can meet the high requirements for space and performance. At the same time, in some devices that require frequent data transmission and signal processing, its high reliability and stability can also play an important role. But the main disadvantage of board-to-board connector is its high cost and possible limitations in high-frequency and high-speed signal transmission.
(4) Gold Fingers
Gold fingers are one of the common connection forms of system on modules. It refers to a row of slender metal contacts on the edge of the system on module that match the slots on the base board. The advantages include convenient and quick plugging and unplugging, being able to easily insert or remove into the matching slot, facilitating the installation and disassembly of the system on module, and being beneficial for equipment maintenance and upgrade; good contact, the close contact between the metal contacts and the slots can provide a stable and reliable electrical connection and ensure the quality of signal transmission; space saving, its compact design does not occupy much space around the system on module, which is conducive to the miniaturization design of the product.
The disadvantages are high alignment accuracy requirements. During the plugging and unplugging process, precise alignment with the slot is required; otherwise, it may cause contact damage or poor contact; prone to wear, frequent plugging and unplugging may cause the metal coating on the gold fingers to wear, thereby affecting the stability and reliability of the connection; electrostatic sensitive, it is vulnerable to electrostatic influence, which may cause damage to the system on module; high cost and relatively complex manufacturing process.
Architecture: Cortex-A8
Frequency: 800MHz
RAM: 512MB DDR3
ROM: 256MB NandFlash,1GB NandFlash
System: Linux3.2,Android2.3,Android4.2,LinuxRT
Architecture: Cortex-A7
Frequency: 800MHz
RAM: 256MB DDR3,512MB DDR3
ROM: 256MB NandFlash,8GB eMMC
System: Linux4.1.15+QT5.6
Architecture: 4*A53+M7
Frequency: 1.6GHZ
RAM: 2GB/4GB LPDDR4
ROM: 16GB eMMC
System: Linux5.4.70+Qt5.15, Android 11
Architecture: 4*A53+M7
Frequency: 1.6GHZ
RAM: 2GB/4GB LPDDR4
ROM: 16GB / 32GB eMMC
System: Linux 6.1.36
IV. Practical Cases and Experience Sharing
(1) Successful Selection Case
In the development of an industrial Internet of Things device, an embedded system on module with strong communication capabilities and industrial-grade stability was correctly selected. This system on module supports multiple serial ports, Ethernet interfaces, and CAN-Bus, meeting the connection requirements of the device with various sensors and control systems. Its high-performance processor can quickly process a large amount of data to ensure the real-time response of the device. In addition, this system on module has passed strict electromagnetic compatibility tests and operates stably in harsh industrial environments, greatly improving the reliability and stability of the device. Eventually, the product was successfully launched into the market and received high recognition from customers.
(2) Failure Selection Lesson
There was once a project where an incorrectly selected embedded system on module with insufficient performance led to slow system operation and inability to meet the requirements of real-time data processing. In addition, the number and type of peripheral interfaces of the selected system on module could not meet the connection requirements of the device with external devices, and an additional expansion board was required, increasing the cost and complexity of the system.
Moreover, the stability of this system on module was poor, and it was prone to failures after long-term operation. The solution was to re-evaluate the project requirements, select a system on module with stronger performance, rich interfaces, and high stability, and redesign and debug the entire system. This process not only consumed a lot of time and cost but also delayed the product's market launch time. The lesson learned is to fully understand the specific requirements of the project before selection and conduct a comprehensive evaluation of the performance, interfaces, stability, etc. of the system on module.
V. Precautions for Selecting System on Module Manufacturers
(1) Supply Cycle
A stable supply cycle is crucial for the selection of embedded system on modules. During the product research and development and production process, if the supply of system on modules is interrupted or delayed, it may lead to the stagnation of the entire project, bringing huge economic losses and time costs. Therefore, it is crucial to select suppliers that can provide long-term and stable supply.
To evaluate the stability of the supply cycle of system on modules, the following aspects can be considered: Firstly, understand the production scale and strength of the supplier. Large-scale production enterprises usually have a more stable supply chain and production capacity. Secondly, investigate the historical supply records of the supplier to see if there are frequent out-of-stock or delay situations. Furthermore, pay attention to the supply situation of the chips and components used in the system on module to understand whether they are easily affected by market fluctuations and shortages. In addition, signing a clear supply agreement with the supplier, stipulating terms such as supply cycle, quantity, and liability for breach of contract, is also an important measure to ensure stable supply.
(2) Technical Support and Service
High-quality technical support is of great help for the development of embedded system on modules. During the development process, developers may encounter various technical problems, such as driver development, system optimization, compatibility issues, etc. If they can obtain timely and professional technical support from the supplier, it will greatly improve the development efficiency and reduce detours in the development process.
Technical support includes providing detailed technical documentation, sample codes, development tools, etc., to help developers get started quickly. At the same time, be able to respond promptly to developers' inquiries and problems and provide effective solutions. In addition, high-quality technical services can also provide customized development support and optimization and improvement based on customers' specific needs.
For example, Forlinx Embedded provides developers with rich technical materials and a professional technical team support, helping developers solve problems such as MPU pin multiplexing configuration, greatly reducing the development difficulty and improving the development efficiency.
(3) Cost and Cost Performance
When choosing an embedded system on module, it is necessary to control the cost while meeting the requirements to achieve the best cost performance. First of all, it is necessary to clarify the specific requirements of the project and avoid excessive pursuit of high performance, which leads to excessive costs. For example, if the project does not have high requirements for processing capabilities, choosing an overly high-end system on module will result in cost waste.
Secondly, comprehensively consider the hardware configuration and price of the system on module. In addition to focusing on main parameters such as processor performance, memory size, and storage capacity, the richness and applicability of peripheral interfaces should also be considered. Some system on modules may have excellent performance in some aspects, but insufficient or inapplicable interfaces may require additional expansion modules, increasing costs and system complexity.
In addition, the long-term usage cost of the system on module should be considered, including maintenance costs, upgrade costs, etc. Some system on modules may have a low initial purchase price, but more funds and energy may be required for subsequent maintenance and upgrades.
For instance, the iMX8 series, iMX9 series, iMX6 series, TI 62x series, RK3588, RK3568 and other system on modules of Forlinx Embedded provide high performance. Meanwhile, through optimized design and cost control, they offer users competitive prices and long-term cost-effectiveness.