The demands from embedded system developers means segmentation still prevails at a hardware and software level. But recent developments in Computer-on-Module platforms point towards a more unified future. By Jochen Dieckfoß, Embedded software expert and Windows Embedded MVP, Adeneo, and Klaus Seufzger, Software Developer, congatec.
ARM processors have had a firm foothold in the market for decades. The efficient instruction set of the ARM architecture enables the development of devices with low power consumption and high power efficiency. Because of these properties, ARM processors are increasingly used in embedded systems. Many semiconductor manufacturers offer their own Systems-on-Chip (SoCs) based on the ARM architecture, either in the shape of general purpose components or application specific processors with additional integrated components such as RAM, GPU, CAN and SATA.
The advantage of a SoC implementation is obvious; due to the integration of all required components, device manufacturers are able to develop a complete and consistent system in a very short amount of time. However, SoC integration drives up the complexity of the hardware development, which is why the right support is vital. Customised SoC modules that can be integrated into a device manufacturer’s design without modification provide the perfect base for a successful hardware design. For example, congatec provides an ARM-based application package that combines Qseven modules with software support from Adeneo Embedded for Windows Embedded Compact 7 (WEC7).
While ARM-based SoC integration enables device manufacturers to design hardware more quickly, semiconductor manufacturers benefit from the ability to differentiate themselves from the competition by specialising in a specific segment. However, the wide choice of ARM SoCs makes standardising the software impossible — unlike developers are used to from Intel. This means that the software needs to be specially adapted to the module or device. In embedded systems this has the added advantage of the execution time and memory requirements of the software being optimised. However, this benefit is often offset by longer development times, underlining the need for specialist knowledge, experience and know-how when developing software for ARM architectures. As a specialist in hardware-focused software development on ARM architectures, Adeneo Embedded can provide this expertise.
Figure 1: The conga-QMX6 Qseven ARM module with Freescale i.MX6 processor
WEC7 is a scalable, small-footprint, hard real-time capable, 32-bit operating system with symmetric multiprocessing (SMP) support. WEC7 also offers a new multimedia player version, Internet Explorer with Flash 10.1, plus the powerful and familiar development and design tools, Visual Studio and MS Blend. XAML, Assembler, C++ and C# can also be used.
Thanks to Silverlight for Windows Embedded (SWE), WEC7 provides a framework for the development of complex, consistent and animated user interfaces based on C++. The advantage of SWE over classical user interface design is a clear separation between design and application logic. This allows designers and programmers to concentrate on their core expertise and work with familiar development tools.
In collaboration with Adeneo Embedded, an application-ready WEC7 board support package is currently available for the conga-QMX6 Qseven module with the Freescale i.MX ARM Cortex A9 processor.
To date, the use of ARM-based systems has mostly been tied to a specific project for which a dedicated SoC needs to be developed. For large volume production runs in the consumer world this still remains the most efficient approach; a situation that is unlikely to change much in the foreseeable future, despite the advent of more and more application processors.
Figure 2: The operating system is transferred to the conga-QMX6 module with Microsoft’s Platform Builder software
However, in many industrial embedded markets such as measurement, automation and medical technology, the focus is different. Here, the specific expertise of the manufacturer lies in the application, whereas the electronics (especially the processor) is rarely a core competence and constitutes a technical challenge. In these cases, pre-integrated and rapidly deployable application-ready platforms are required. Developers are only too keen to take advantage of ARM technology, but due to the great variety (too many signals, no uniform interface) it has not lent itself to standardisation in the past.
The key to standardisation is the availability of uniform interfaces and signals. The major chip manufacturers have recognised this and manufacturers such as Freescale now offer useful approaches. Opinions within the community of embedded manufacturers remain divided as to how many signals a module connector really needs (and tolerates) and which signals should be part of an ARM-based standard. Another point of contention concerns the number of so-called standards the market and users will tolerate. Ultimately, Qseven in version 1.20 is the only established standard in the market that supports ARM and x86.
Computer modules offer much-coveted hardware and software options. With Computer-on-Modules (COMs), developers and OEMs can design these new opportunities particularly efficiently into their embedded applications. COMs integrate the core functionality of the computer system on a removable board, and can be bought as complete pre-integrated components. The external interfaces and peripheral components are implemented on an application-specific carrier board, which is relatively easy to develop.
Systems with COMs also offer freely scalable performance in line with the selected COM. This enables OEMs to efficiently develop complete product lines. Even years later such systems can be upgraded by simply swapping the module for one with more computing power, without redesigning the entire system. This is a very cost-effective solution, especially for high-quality systems with specific I/Os and housings. They can be kept technologically up-to-date for several processor generations at a fraction of the cost of a new design. This way, it is possible to significantly extend the product life cycle while keeping total cost of ownership (TCO) to a minimum. For long-lived applications it is particularly important to use a trusted standard, which makes the Qseven standard developed by the SGET an ideal choice.
Figure 3: The Qseven ARM Computer-on-Module with development carrier board
The most outstanding feature of Qseven is its broad scalability; modules are fully compatible and interchangeable for perfect scalability. The advantage for developers is that the modules are pre-integrated and the necessary driver adjustments for the chosen operating system have already been done. In addition, they get access to the latest technologies without having to spend time and effort to become familiar with new advancements.
The quality of the product and the support are top priorities. In this context, long-term experience and appropriate expertise of the manufacturer are as important as the ability to innovate. The latter is often more pronounced in highly specialised SMEs than in large companies that work in all kinds of different areas. congatec specialised early in innovative modules and their further development, and has played a key role in the SGET working group for the Qseven standard. Customers therefore benefit not only from reliable systems development, but also from the right software and integration expertise and a known good support structure over the entire life cycle of a product.
This gives developers the freedom to focus on their core competence, namely the application and the required peripherals. Another advantage of the modular concept is the fact that system manufacturers can stick to their proven manufacturing technology without the need to constantly replace expensive equipment with the latest technology. These are the reasons why COMs have been so successful in recent years, especially in embedded projects with small and medium quantities up to several tens of thousands per year.
congatec’s conga-QMX6 Qseven module introduces a new module generation. It is equipped with the Freescale i.MX6 ARM Cortex A9 processor family that scales from 1 to 4 ARM cores and has a sophisticated high-end, 3D-capable HD graphics interface. The Qseven module is available in 4 processor variants from Freescale i.MX6 single-core ARM Cortex A9, 1.0GHz, 512kB cache up to Freescale i.MX6 quad-core ARM Cortex A9, 1.2GHz, 1MB cache.
Figure 4: conga-QMX6 block diagram
The integrated graphics core is designed for multimedia applications with a video processing unit (VPU), 2D and 3D graphics (GPU2D/3D), four shaders with up to 200MT/s (million triangles/second) and dual stream of 1080p/720p. A dual HDMI v1.4 graphics interface is available; a second HDMI port is shared with LVDS which is also equipped with an 18/24 bit dual channel with a resolution of up to 1920x1200 pixels (WUXGA).
A microSD socket can be used for cost-effective storage; an optional 16GB soldered solid state drive (eMMC) is available for robust applications.
Differential interfaces such as 1x PCI Express 2.0, 2x SATA 2.0, 6x USB 2.0, Gigabit Ethernet, 1x SDIO, CAN bus, LPC and I2S sound are all available. Thanks to features such as multiple watchdog timer, CAN and I²C bus, the application becomes faster and more reliable, even if the system is in standby mode.
A starter kit offers a fast route to Qseven applications based on the ARM architecture. The kit’s centrepiece is the new Qseven module conga-QMX6. In addition to the flexible Qseven evaluation carrier board conga-QEVAL, the starter kit includes a suitable 12V power adapter. The conga-QEVAL is easy to integrate and comes with multiple interfaces supporting the latest standards. With the supplied cable set it takes just a few minutes to build a compact demo system.
Figure 5: Qseven starter kit for rapid evaluation
The board support packages (BSPs) for Windows Embedded and Linux are provided in close cooperation with congatec’s software partner Adeneo Embedded. The starter kit accelerates the evaluation process during the design-in phase, thereby enabling shorter time-to-market.
Brief market outlook for WEC2013
In June 2013, Microsoft unveiled WEC2013, the successor to the WEC7 operating system. Microsoft made only comparatively small changes in the kernel of WEC2013. With image sizes staring around 300KB, Compact 2013 remains a component-based, small-footprint operating system. The hard real-time capability introduced with Windows CE 3.0 has also been maintained. This hard real-time capability is the key feature which makes WEC2013 ideal for use in Microsoft's targeted core areas of medical technology, retail and industrial automation. Lastly, WEC2013 continues to support SMP introduced with WEC7.
However, Microsoft has also made some modifications to the Compact 2013 kernel. For instance, the performance of the file system was dramatically increased and the operating system is now due to start up within two seconds.
Great improvements have been made to the development tools. As in preceding versions, Microsoft relies on the well-known, widespread and mature development environment Visual Studio. Platform Builder, the development tool for OS and driver developers, is now a plug-in for the latest Visual Studio 2012 version. Application developers can now also develop for Compact 2013 in Visual Studio 2012 and take advantage of an updated version of the runtime for managed C # application development thanks to NET Compact Framework 3.9. With the integration of Platform Builder into Visual Studio 2012, it is possible to use the latest Microsoft compilers and the latest C++ tools; therefore, only x86 and ARMv7 processors are supported. Previously, in WEC7, only Visual Studio 2008 allowed both; this forced many developers to install several versions of Visual Studio at the same time. Apart from double licensing costs and storage requirements, availability of Visual Studio 2008 has lately started to become a problem.
A major change in Compact 2013 is the so-called streamlining. Microsoft has taken a close look at all dependencies throughout the entire Compact 2013 operating system with the aim of reducing the image size to optimise Compact 2013 for the target markets. One consequence of streamlining is the discontinuation of certain components including multimedia technologies such as DLNA, Windows shell, various servers and web technologies or device synchronisation technologies. For this reason, developers need to evaluate carefully whether a change to WEC2013 is worthwhile or whether the development should be continued on WEC7.