Gone are the days when embedded systems were a part of complex industrial and defence equipment alone. Today, these have found place in washing machines, microwave ovens, cars and, thanks to mobile phones, in almost everybody’s pockets too! Quite naturally, the increase in demand and applications continues to fuel innovations in embedded systems technology on an almost daily basis. This article brings to you some of the significant recent developments in this field
1. Multi-core magic in mobiles and other devices
“One key trend that is taking the world by storm is the rise of ‘multi-core.’ This year’s Consumer Electronics Show played host to multiple mobile devices running on dual-core CPUs, and soon we will see devices further enhanced with tri-core and multi-core processors,” says Guru Ganesan, managing director, ARM India.
In a recent report titled ‘Multi-core Components and Tools,’ published by the Venture Development Corporation, it was indicated that 8.4 per cent of the respondents were using a multi-core architecture on their current project. Of those currently using single-processor architectures, 14.3 per cent reported that they expected to be using multi-core processor architectures within the next two years.
There are many reasons why multi-core processors are slowly replacing single-core processors. Each processor in a multi-core system works independently, allowing the user to multi-task with ease, speed and flexibility.It also works well when the CPU needs to perform complex steps, as the multiple cores work together to complete these tasks faster. Further, multi-core processors are also more power-efficien, so the users are able to do more without having to charge their phones frequently. This also helps the industry meet various energy- and environment-related goals and regulations.
“For these reasons, especially from the power consumption aspect, I believe multi-core processors will be a game-changer in the electronics industry. Dual-core is quickly becoming main-stream and devices running on quad-core processors are likely to see light in 2012. I believe that such technology step-ups on processor designs will increase the capabilities of smartphones. It certainly seems like multi-core is here to stay and is the stepping stone to ‘many-core’ processors,” says Ganesan.
In order to harness the full potential of such processors, we also need real-time operating systems and applications that are designed from the ground-up to think and act as per the parallel processing philosophies. There is no point in treating a multi-core like just another fast processor—the parallel processing ability is the actual benefitthat needs to be leveraged in the long run, and this needs truly parallel applications as well.
2. Virtualisation enters the embedded domain
Venkatesh Kumaran, country manager, Wind River, points out that not just multi-core technology but virtualisation is also gaining momentum. Much has been said and done about server and desktop virtualisation, but now the IT industry has realised that there is a lot of scope for virtualisation in the embedded domain too. The flexibility,parallel processing, enhanced processor utilisation and other benefitsof virtualisation have been found to be very useful in mobile phones, tablet PCs and deeply-embedded avionics and automotive applications.
Embedded virtualisation refers to a type-1 hypervisor deployed within an embedded system. Type-1 hypervisor is a special type of operating system that runs directly on the bare hardware. It allows multiple virtual machines or applications to use the underlying hardware platform without bothering about the technical complexity or even knowing that they are sharing a system. Embedded hypervisors are a hybrid of a virtualisation platform and a microkernel, which allows these to support VMs as well as individual applications.
In general, embedded hypervisors implement a different kind of abstraction with different constraints than other platforms. For example, embedded hypervisors must be small and extremely efficientin their use of memory—since memory tends to be one of the key limiters to performance in embedded environments. Within this small footprint, the virtualisation platform also needs to implement a lot of security measures, as embedded systems are often a part of a larger network of devices.
Most importantly, the embedded hypervisor must support scheduling with real-time capabilities. In the case of handsets, the hypervisor can share the platform with core communication capabilities and third-party applications. Scheduling with real-time characteristics allows the critical functions to coexist with applications that operate on a best-effort basis. Some of the existing embedded virtualisation solutions include PikeOS, OKL4, NOVA and Codezero.
3. operating system becomes mandatory, software turns more complex
Kumaran points out, “The operating system (OS) is becoming mandatory on every device, and the software code per device has also increased substantially.”