BANGALORE: Until a few years ago, the requirements of typical embedded systems lagged that of the PC market by a generation. Today, embedded systems need more and more performance and developers are increasingly leaning towards multi-core embedded processors in their systems design.
Move to multicore
In the past, chip manufacturers just released faster single-core processors to meet performance requirements. After all, packing smaller transistors into a given space, and running them at faster speeds has driven exponential increases in performance. The challenge is that each transistor on a chip consumes power and produces heat, and the faster the transistors are clocked, the more heat they generate. Leakage current adds to the heat problem. In other words, continuing to use single-core processor design methods will eventually result in the processor becoming too hot to cool.
Since reducing a processor’s frequency and voltage results in a cubic reduction in its overall power requirements, even small speed reductions can make a big difference. Semiconductor manufacturers have recognized, therefore, that the way forward is to build processors that run at somewhat lower frequencies and voltages, but to integrate two or more of these processing cores on a single chip. Overall performance increases because multiple processing cores (aka MultiCore) can perform two or more tasks at once.
Hence, chip vendors like Intel now focus on developing its embedded processors in lock-step with the PC market. With the introduction of Intel Core microarchitecture into embedded systems, Intel hopes to revolutionize the embedded market by bringing the power of parallel processing to embedded developers in an open standards-based building block architecture.
Advantage of symmetric multiprocessing architectures
Simply having two processors or two cores is not as simple as it may sound. In order for the platform to truly benefit from all that multi-core has to offer, there will need to be a shift in the fundamental way that software is created. In symmetric multiprocessing architectures, a single block of memory is shared among multiple processing cores on the same chip. A single OS image runs across all cores so that work is done in a truly parallel system. SMP operating systems load-balance work between the available cores. Many multicore processors also include large on-chip level 2 caches, which enable very fast data transfers between the cores.
There is a growing tendency for embedded designers to use these architectures in new designs because of their cost, time-to-market and performance advantages. SMP has long been the dominant multiprocessing architecture for servers. Software development tools for parallelizing applications are mature, and operating systems such as Linux and Windows have long been highly optimized for SMP architectures.
Likewise, RTOS vendors are releasing SMP versions of their operating systems and tools, so sophisticated SMP operating system choices are growing.The hardware and software design issues of SMP are therefore well understood by a large pool of experienced engineers, and this experience can be applied directly to developing multicore SMP systems.
Multi-core applications in embedded
Multi-core and symmetric multiprocessing are suited for several embedded applications in today’s world. For example, in an industrial environment, a chip with multiple independent processors can dedicate one core to running a robot under a real-time operating system, while the second core runs enterprise applications. Thus, essential control isn’t starved for processing cycles or memory. These market segments are rapidly adopting state-of-the-art processor and chipset technology.
The latest security and surveillance solutions need to be able to capture and process security video in real time. Older platforms requiring human analysis are rapidly being replaced by sophisticated intelligent platforms. For example, a surveillance system in an airport needs to be able to monitor human behavior or recognize unattended baggage and send information to security. All this requires heavy computational algorithms and compression technology. Dual and multi-core processors are often the foundation of such platforms.
A growing market segment in India is Medical Imaging. Developers in India are working on the latest Ultrasound, MRI and Diagnostic devices for both local and overseas markets. These devices require speed, high resolution imagery, reconstruction capability and high bandwidth. Reconstruction algorithms especially require a tremendous amount of processing power and dual-core embedded processors are widely adopted in this segment.
In the interactive-client segment, which is rapidly growing in India, there is a trend towards increased performance, connectivity and rich graphics. A point-of-sale terminal (POS) is a great example of this. The latest POS devices incorporate dual-display for advertising, complex accounting applications and are increasingly connected to a central server for remote management. Developers are increasingly leaning towards dual core processors as the architecture of choice.
Similarly, in the telecom space, as network operators, service providers and ISVs continue their relentless quest for the next “killer app” whether it be voice, video, data or wireless services, they will undoubtedly turn to multicore processing more and more to meet their power and performance requirements.
Author is marketing director (Emerging Mkts), Embedded Markets Division, Intel Corporation