Massive multicore platforms drive the cloud as well as high-performance computing (HPC) supercomputer systems. General-purpose graphics processing units (GPGPUs) grind through floating-point arrays with ease, but they’re large and power hungry even with the trend toward low-power cores.
Battery-powered devices like smart phones are at the other end of the embedded spectrum. These highly customized products specifically target consumers, but the need to deliver compact application solutions means designers are looking for ways to reduce time-to-market.
Companies like InHand Electronics have tiny motherboards that are designed for mobile applications. InHand’s Fingertip5 is a board about the size of a credit card with an 800-MHz Marvell PXA320. It incorporates Wi-Fi and Bluetooth, and it can handle GPS. Boards like the Fingertip5 are very useful, but they’re designed to be used by themselves or augmented with custom interface boards.
Computer-on-module (COM) solutions take a different approach. They require a carrier board that normally has connectors, but they may also incorporate support or specialized electronics. The advantage with a COM board design method is that the system can be populated by one of any number of COM boards. Designers then can make tradeoffs addressing criteria such as cost, power utilization, performance, and even peripherals.
Modules make these improvements possible, and two recent platforms exemplify the trend toward smaller, faster, and lower-power devices. Kontron implements the ULP-COM standard, while Gumstix extends is own compact form factor with a dual-core Arm Cortex-A9 processor from Texas Instruments.
COM Gets Smaller
COM standards like PICMG’s COM Express have been used in a wide range of applications. COM Express boards come in multiple sizes starting with 125- by 95-mm boards. They were designed to hold processors found in typical PC platforms, meaning x86 processors with PCI Express links to carrier board peripherals.
Smaller modules are also available. Some mobile applications employ the 84-mm by 55-mm nanoETXexpress size, which uses a 220-pin connector on the bottom of the board. However, there’s still a need for even smaller, less expensive platforms.
The Standardization Group for Embedded Technologies (SGET) developed the ULP-COM specification, which includes two form factors: a full-size 82- by 80-mm module and a smaller 82- by 50-mm module. Both plug into a 314-pin MXM 3.0 edge connector that’s just 4.3 mm high, allowing 1.5-mm board spacing.
Kontron’s ULP-COM-sAT30 uses the smaller form factor, but it still has room for Nvidia’s Tegra 3 (Fig. 1a). The 1.2-GHz chip has four Arm Cortex-A9 cores plus a fifth low-power core that runs by itself to cut power consumption. It typically requires 5 W. The Tegra 3 also has an integrated 12-core GeForce GPU.
The module has enough room for 64 Gbytes of eMMC NAND flash as well as up to 2 Gbytes of DDR3 memory. It also has a x1 PCI Express Gen 1 interface. It’s a narrower pipe than that found on the typical COM Express module. However, a x1 PCI Express link is usually more than enough for many applications.
Most applications will get by with the other peripheral interfaces, which include a 1-Gbit Ethernet port, three USB, two SPI, five I2C, and four serial port interfaces. One of the three USB 2.0 ports supports OTG. The modules also have SATA, SD Card, and eMMC interfaces.
The Tegra 3 GPU handles displays with 18/24-bit LCD interfaces, dual-channel, 32-bit low-voltage differential signaling (LVDS), and HDMI. Two CSI-2 dual-lane camera ports handle video input.
Kontron’s ULP-COM-xAMX6 (Fig. 1b) fits into the same slot, but its processor is based on an 800-MHz Free-scale i.MX6 series chip (see “CES 2011 Micros”). Versions of the board are available with one, two, or four Cortex-A9 cores. Versions of the chip support up to two independent graphics engines with four 3D shaders and HD video support up to 1080p at 60 Hz.
The modules support two MIPI-conforming camera inputs to handle video sensors. The module and processors support up to three PCI Express x1 lanes, Gigabit Ethernet, and a Media Local Bus interface. The other peripheral interfaces are typical including three USB 2.0 ports, two SPI, five I2C, and a pair of CAN interfaces. Storage interfaces include SATA, SDIO, and eMMC.
These ULP-COM modules provide a lot of processing and interface support in a compact package. The number of options will continue to improve, but now developers have a platform to build on and to expand in the future. ULP-COM’s supporters include Adlink, Advantech, and GreenBase, so designers will have a lot of choices for ULP-COM options.
Tiny Module Runs Dual-Core Processor
Gumstix’s Overo modules aren’t just for prototypes or hobbyists. They’re also used for production applications (see “Gumstix Is For More Than Prototyping”). The 58- by 17-mm form factor is even smaller than ULP-COM. It’s only 4.2 mm high as well. Its two 70-pin Hirose DF40 connectors are designed for rugged applications, and there are four mounting holes for solid installation.
Gumstix’s Overo modules are based on single Arm Cortex-A8 processors. Peripheral options include built-in Wi-Fi and Bluetooth support like the AirStorm COM. This combination can be very handy for robotic applications. For example, the TurtleCore (Fig. 2) board plugs into an iRobot Create robot (see “TurtleCore Tacks Cortex-A8 On To iRobot Create”). The TurleCore board handles Overo modules but not the new DuoVero Crystal.
The DuoVero Crystal pushes the performance and power envelope for this small system (Fig. 3). It runs a 1-GHz, dual-core Texas Instruments OMAP 4430 using Arm Cortex-A9 processors. An integrated PowerVR SGX540 graphics controller can handle 1080p video streams and image processing for a 20-Mpixel main camera or dual 5-Mpixel stereo cameras. On-board memory includes 1 Gbyte of RAM and a microSD socket for flash memory. A TWL6040 codec provides audio support. A tiny heatsink allows full-power operation.
The DuoVero can plug into custom systems or a range of off-the-shelf baseboards. The DuoVero Parlor board provides connectors for micro-HDMI, 10/100BaseT Ethernet, USB Host, USB OTG, USB console, and stereo audio that expose the interfaces found on the DuoVero module. It even has a 6-mm rechargeable coin-cell socket. Hardware developers may be interested in the DuoVero Chateau Breakout Board.
Most Arm development tools will work with DuoVero, which runs Ubuntu Linux. Cross-platform development can take advantage of fast, multicore PCs, but the Linux environment is suitable for native development as well. It’s easier to set up, and the DuoVero provides enough performance so smaller projects don’t take a long time to build.
The challenge with any module format lies in providing designers with enough options. Gumstix does this by offering a wide range of modules. The ULP-COM standard has a number of adopters. Coming up with standards is always difficult as the modules are reduced in size because of the necessary tradeoffs in I/O, memory, power, and board space.
Memory tends to be the more difficult challenge because it isn’t an option that can be easily moved to the carrier board, so the amount and type are dictated by the module designer. For off-chip flash at least, there sometimes are options. For example, the DuoVero has a microSD socket that provides flexibility but is less rugged than on-chip or memory soldered on the board. Many of the Overo modules have on-chip or soldered memory.
Not all embedded applications need compact solutions like these, but new applications will be possible because these modules are available.