Considerations for the embedded ARM paradigm
Although defining the "embedded" market can be a point of contention, the 2000s saw significant growth of ARM-based products in a range of vertical industries. In many cases, ARM-based processors are now head-to-head with their x86 counterparts in the embedded segment, with the Small Form Factor (SFF) Computer-On-Module (COM) market being no exception. As ARM expands into promising markets such as the Internet of Things (IoT), it is also growing in the embedded development arena.
ARM and x86-based embedded systems, through efficient and compact Integrated Circuits (ICs), are enabling new Small Form Factors (SFFs) to get even smaller. In the 1980s and ‘90s, x86 thrived in the embedded arena as it provided a familiar software platform that allowed engineers to focus on the hardware challenges of complex digital systems. Soon after, Intel- and AMD-based SFFs like PC/104 became popular as general-purpose motherboards that simplified design and integration in a variety of highly diverse, lower volume applications, eventually leading to the rise of an x86-centric class of off-the-shelf embedded computers.
Since then, the focus of embedded system development has shifted to power, performance, and cost optimization, with a reaffirmed emphasis on reliability. This transformation suited ARM processing technology perfectly, as the license-based architecture was born with low power, low cost, and manufacturing flexibility at its core. By the late ‘90s, ARM began gaining visibility in embedded systems for its combination of respectful computing performance with low cost and impressively low power, as well as uptime improvements. Less heat, fewer components, and no moving parts have always been critical factors in deterministic systems, and the flexibility of ARM made the design of such systems simpler. Current projections show that the RISC-based architecture will continue making gains in the embedded segment over the coming years (Figure 1).
Next steps for ARM in embedded
While ARM has made solid progress in the embedded space over the past decade, there are still considerable inroads to be made in enabling ARM technology for the SFF development community. Despite the implications of ARM’s licensing strategy on reducing barriers to entry – which would logically result in a faster proliferation of ARM-based products – several challenges remain to widespread dissemination of the architecture in embedded systems, including:
- Lack of a joint strategy among the ARM IC vendors
- Design diversity of embedded SFF solutions, and
- Lack of a widely accepted ARM software development platform for embedded applications.
ARM enters the battle of the boards
The merchant SFF board market is a firsthand example of the trend towards ARM architectures – as both well-established players and startups have adopted different strategies to confront an expanding class of SFF embedded computers. Some companies have stayed the x86 course while others are fully embracing ARM. It is also increasingly common to find vendors that provide both solutions, even within the same product.
This divergence from the previous norm has resulted in an interesting paradigm, particularly in the development and selection of standards-based SFFs. While SFF board standards have been the rule due to the dominance of x86, increasingly integrated ARM System-on-Chip (SoC) designs are diluting the benefits of standards to some extent.
Take an ARM SoC integrated with a user-programmable FPGA, for instance: If this compute unit is deployed on a standard motherboard, the signals that need to be extracted will likely vary from those provided on any specification’s pinout or connector, thereby resulting in a custom or semi-custom solution to fit the needs of the end user. While this architecture provides enhanced flexibility and tailored functionality for the target application, the final solution will likely be proprietary.
The point here is to illustrate the wide range of applications, and therefore options, in the embedded systems market that make design decisions difficult. In response, more and more engineers have begun relying on the Computer-On-Module (COM) design methodology to enable highly integrated and easily upgradeable systems through the use of application-specific carrier boards. With this approach, the design challenge begins with choosing a pinout that best meets user requirements. Qseven, EDM, and SMARC are just a few of the ARM-compatible standard options, while a multitude of proprietary options are available from companies like Technologic Systems, Toradex, congatec, and others. Table 1 displays the relative pinout disparity between a standard Qseven module and Technologic Systems’ TS-SOCKET Macrocontroller.
Linux emerges as development platform in the connected age
Embedded software is another area that can provide solid gains for ARM. While embedded designers using x86 benefited greatly from mature software development tools that made embedded development straightforward, ARM developers have needed to go through a discovery process. In response, a rich ARM development ecosystem has emerged around Linux environments, with Android gaining visibility recently as well.
One action ARM is taking to address software challenges is the creation of a standard software development platform. Initial efforts have involved standard cross compilers, exploitation of the Linux kernel, and increased availability of Integrated Development Environments (IDEs), including a joint initiative between ARM and IC vendors to establish an open-source, Linaro-based software architecture for ARM to optimize embedded development (www.linaro.org). In addition, independent partnerships, like that between Freescale and Oracle, aim to improve Java development on ARM cores, particularly as more and more devices become Internet-enabled.
ARM and the advent of the IoT
The IoT space looks to be a promising area for ARM-enabled devices thanks to the RISC processor’s history in small, low-power, integrated, and network-enabled devices. These characteristics are critical prerequisites for the majority of IoT edge applications, and although recent products like Intel’s Atom processor E3800 Series and Quark SoC show potential in low-power systems, it remains to be seen whether x86 options will be financially viable in the ultra-low-power arena.
While the vast quantity of IoT devices will be small, cost-sensitive devices, in reality IoT products scale from Memory Management Unit-less (MMU-less) microcontrollers to sophisticated multicore solutions running Real-Time Operating Systems (RTOSs). Many of these higher end devices will act as communications hubs for automated wireless sensor networks (for smart grids, traffic control, and waste management, to name a few), requiring that they provide a range of connectivity options in a low-power, industrial-grade package that can withstand rugged deployment environments.
To facilitate the rollout of these IoT “gateway” platforms, ARM’s Sensinode Business Unit is spearheading development of the 6LoWPAN protocol, an IPv6-enabled software abstraction layer that runs on top of low-power radios to make them IP-enabled. For example, the Freescale i.MX6-based TS-4900 COM supports 6LoWPAN, providing IPv6 connectivity via the board’s integrated Wi-Fi and Bluetooth controller (Figure 2). The board eases application development with support for Android, QNX, and Linux 3.10 and higher Operating Systems (OSs), in an industrial form factor that consumes under 2 W of power.
Continuing integration of the embedded ARM paradigm
In the diverse embedded environment, no single solution will be able to fit the requirements of every end-user scenario. Whether ARM- or x86-based, standard or customized, each solution will have its place in SFF computing, a situation that will only benefit engineers as the different platforms seek to simplify embedded development. As the ARM integration continues, engineers can stay abreast of development trends by visiting the mbed.org development community or ARM’s Connected Community (www.arm.com).