Automated industrial control systems are an integral part of today’s manufacturing facilities. As these systems’ capabilities advance, the engineer shifts from someone who oversees processes to one who manages the data produced and functions performed by these systems to ensure product quality. Manufacturing systems need to be reliable, since downtime is an expensive alternative. Automation has reduced the number of people staffed at each facility so, if a system goes down, it’s probably not feasible for people to actually step in and move production along. If a system stops, so does production.

Additionally, the manufacturing industry is always striving for more processing power, more multitasking, more functionality. Systems need to be cost-effective and technologically advanced to provide a direct return-on-investment, while being flexible enough to accommodate upgrades and expansions.

Better Balance in System Design

Rugged SBCs can combine low power consumption with multi-core processing.

Although industrial PCs have commonly been used in instrumentation and control applications, embedded technology has proven a viable alternative to these expensive, and often unreliable, systems. By combining multi-core processors, job-matched operating systems and application software with advanced chipsets and user interfaces, designers get better development opportunities, while end users get better performance. Each industry using embedded technology has a unique set of requirements as well as a variety of operating conditions and environments. Some applications rely on protective measures, while others need more preventive strategies. In addition to environmental and reliability considerations, industrial automation puts improved manufacturing productivity and minimized system expenses high on its list of requirements.

Multiprocessing Provides Performance

Rugged CompactPCI-based SBCs (single board computers) that combine powerful multi-core processing with robust features are increasingly being used in automation applications since these boards can provide ample performance without excessive power consumption, heat build-up, or latency issues, in a well-accepted industry format. How does multi-core processing solve these issues?

Power consumption: When the clock speed of a processor increases, more transistors and higher input voltages are typically required. Since each transistor leaks a small amount of current, the cumulative effect becomes problematic. The more transistors, the more leakage. Multi-core processors, using two or more cores and more cache, deliver comparable or better performance and lower power demands than leading-edge CPUs running at the highest available clock speeds, preserving power consumption.

Heat build-up: Overheating is not limited to ambient temperatures of an application alone. Thermal management deals with heat generated by system operation, as well. Heat sinks and thermal watchdogs that supervise processor and board temperature are two protective strategies, but multi-core processors provide a preventative way of keeping processing throughput high, while minimizing power draw and the associated effects of heat generation.

Latency issues: Not only does multicore technology provide greater processor density, especially critical in thermally-restricted environments, it can also reduce latency. By dedicating one or more cores to time-critical tasks, which reduces the queuing of high-priority tasks, multi-core processing diminishes latency issues within an embedded system.

Also, choosing storage devices from OEMs who employ hyper-threading technology, which enables the execution of two software threads in an increasingly parallel manner by utilizing previously unused processor resources, allows a designer to easily migrate control software to multi-core applications.

Give Integration Some Consideration

Figure 1. Virtualization Technology enables a system to run more than one OS.

Getting the various elements of a system to work well together does not happen by accident. It takes planning and attention to detail.

Board design: Regardless of processor architecture, several environmental aspects influence board selection, such as confirming the minimum cooling airflow requirements needed to complement heat-sink design concepts. If there is the potential for shock and vibration, specify boards with soldered components to provide greater reliability according to applicable DIN, EN, or IEC industry standards. In applications operating outside a controlled environment, conformal coating provides an added level of protection against dust, moisture or condensation.

Peripheral integration. The board must provide sufficient mass storage, graphics processing, and I/O opportunities. Boards pre-configured for parallel and serial IDE (PATA/SATA), multiple USB 2.0 ports, Ethernet channels, and video and high-definition audio ports offer options for immediate use and future system potential. For example, choosing boards that combine 3U CPCI ruggedness with high-bandwidth PCI Express capability complement increased bus performance as well as enhanced data transfer rates and throughput.

Software: System productivity depends not only on the robustness of its hardware, but on software efficiency as well. An SBC built around a multiprocessor design provides software flexibility that can contribute to productivity and reliability.

Virtualization technology allows a single physical machine to function as multiple "virtual" machines. Virtual Machine Monitor (VMM) system software manages multiple operating systems without significant emulation costs. The multiple operating systems share the hardware with full transparency to the operating systems and application software (Figure 1).

Using multi-core processing, each operating system can be dedicated to a specific core. For example, one core can support a real-time operating system (RTOS) while another is dedicated to a general purpose operating system (GPOS), eliminating the need to interrupt RTOS operations if the GPOS crashes and requires a re-boot.

Figure 2. Migrating software to multi-core applications can depend on a task’s simplicity, repetitive processes needed or the level of data or functional parallelism in the code.

Virtualization technology increases system stability, scalability and serviceability, while allowing legacy software to run more efficiently. Applications can run as multitasking, distributed processing or threaded (Figure 2). Because multi-core processing, virtualization and hyper-threading functionality must be supported by a compatible CPU, chip set and BIOS, various compiler, analyzer and cluster tools are available depending on the application.

Whether a project calls for upgrading an existing application or developing a new one, COTS boards, peripherals and software make it possible to satisfy multiple needs while eliminating potential problems. In industrial automation, a multi-core architecture in an appropriate SBC format with CPCI compatibility holds significant promise for improving reliability, productivity and performance-per-watt efficiency.

This article was written by Stephen Cunha, Vice President, MEN Micro Inc. (Ambler, PA). For more information, contact Mr. Cunha at This email address is being protected from spambots. You need JavaScript enabled to view it., or visit .