New Standards Allow More CPU Options in Embedded Computing
- Created on Wednesday, 01 August 2012
Page 1 of 2
Embedded system designers often find themselves trapped by CPU design choices they made years earlier, since switching costs can be astronomical. Hardware development often involves processor-specific interface chips and board design. Software switching costs can be even more onerous, since CPU architectures drive the purchase of development tools and the requirement for customized software. However, a couple of industry trends have opened up the CPU platform, and system designers are gaining the ability to mix and match CPU suppliers or even change CPU instruction sets to optimize products across a wider range of applications.
As always, semiconductor integration drives the technology trends, as more system functions have been pulled into fewer chips. While many high-volume markets might end up with a single-chip SOC, most embedded designs have unique requirements and are better-served with a general- purpose embedded processor that interfaces to hardware components that are specific to each system design. For the most flexibility in these moderate-volume products, many system designers have turned to Computer-on-Module (COM) to allow a single carrier board design that serves a range of products and allows rapid adoption of new CPU technology with standards-based daughter cards. The trend toward higher levels of integration has commoditized the advanced peripherals for high-speed interconnect technology, allowing the newest COM standards to include multiple channels of PCI Express, Gigabit Ethernet, USB 3.0, and DisplayPort.
With the broad adoption of new standards, such as COM Express Rev. 2.0, embedded system designers have now been decoupled from the CPU-specific legacy interfaces that were rooted in their PC heritage. The new interfaces have broad industry support and share technical characteristics for high-level, packet-based interconnect with a layer of hardware abstraction above the physical and link-layer bus architectures of the past. It doesn’t matter what sort of CPU is processing the data, since these new interfaces connect at a data transfer level and have broad support by a myriad of CPU types. Most of the COM standards still include support for general- purpose I/O and allow some PCtype functionality.
While this article focuses on the hardware aspects of CPU selection, the software trend toward abstraction is obviously also underway. Almost all embedded operating systems offer support for both x86 (Intel, AMD and VIA) and ARM-based CPUs from a variety of vendors. Application source code has become much more portable as cross-platform development tools and libraries have become the norm. Even binary portability has become easier as more applications adopt technologies like Java and HTML5. The trend toward software abstraction may even offer opportunities for other CPU architectures (MIPS, PPC, Tensilica, etc.) to stay competitive in markets dominated by x86 and ARM.