TenAsys INtime® RTOS and Intel® Dual-Core Processors Help Lower System Costs for Embedded Real-Time Applications: A Case Study

A Real-Time Dilemma
Microsoft® Windows® XP is an attractive platform for many embedded applications developers. The familiar GUI makes it easy for users to learn and use programs, while the behind-the-scenes protocols readily integrate with existing enterprise networks. But many embedded applications, such as automated manufacturing systems that require closed-loop control, need a real-time operating system as well. Critical machine control functions must follow a deterministic schedule and meet deadlines predictably, in a definite order. Such a deterministic application can only be built if the timing of events managed by the operating system is reliable and predictable and the developer is allowed extensive control over the relative priorities of all operations and events.

“Windows doesn’t work that way,” says Paul Fischer, Senior Technical Marketing Engineer at TenAsys. “It is built around a general-purpose multitasking kernel that distributes performance fairly to maximize use of system resources. This architecture makes Windows ideal for desktop, server and general-purpose computing environments— precisely because it is fair to all applications. But this is also why real-time embedded developers need an RTOS: because they must be unfair with regard to their use of the processor.”

A Dual-OS Solution
TenAsys resolved this dilemma by using virtualization technology to host both Windows XP and a real-time operating system in the same solution. Because key computing resources must be dedicated to the RTOS, developers often add a second computing platform to their solutions, using either a second dedicated real-time processor on the motherboard or two completely separate hardware systems, including chassis, power supply, and so forth.

Fischer explains: “A two-platform hardware solution allows developers to assign all the resources of one CPU to Windows applications while simultaneously giving the RTOS its own dedicated computing platform. Because the two operating systems then run on separate hardware platforms, there is no contention for CPU resources. This keeps timing jitter to a minimum so that closed-loop control applications, like those found in automated machinery, can run with maximum precision.”

Because additional components (such as power supplies, storage devices, chassis, and interconnect hardware) require more board space and programming effort, a second computing platform significantly increases both the cost and complexity of an embedded system.

The Dual-Core Answer
The new Intel® Core™ Duo processor contains two distinct execution cores in a single hardware platform. Using the Intel Core Duo processor, developers can dedicate one core to the INtime RTOS and the other to Windows to achieve the same level of functionality as a two-platform hardware solution without the second platform. The Intel Core Duo solution is more efficient to work with. It provides many of the same design efficiencies as a single-platform system: using less board space, consuming less power, and requiring less development time.

“We expect the Intel® Core™ Duo processor to make it much easier and more cost-effective for developers to extend their Windows-based applications into embedded systems without sacrificing critical performance requirements,” says Fischer. In fact, Intel estimates that be cause dual-core processor-based systems can be constructed with a single processor board containing a single set of central processor resources (such as memories and disks), developers can significantly lower their system costs by eliminating the need for multiple hardware platforms, each with their own related components.

Better Precision on One Platform
The TenAsys INtime RTOS is a widely established real-time operating system optimized for Windows and Intel® Architecture. “What makes the TenAsys INtime® RTOS unique is how we use virtual machine technology to host both Windows and a protected-mode RTOS environment on a single-core hardware platform,” explains Fischer. “We use one development tool, Visual Studio®, for both environments, enabling developers to create and deploy sophisticated real-time applications without trying to force a Windows device driver to achieve real-time performance.”

Now developers can realize very precise performance from their Windows-based embedded, real-time applications without the addition of a second hardware platform (See “A Real-World Example”). Using the Intel Core Duo processor’s built-in IPI communication mechanism, TenAsys software allows for tight coordination between the two execution cores, eliminating context switch times entirely. Worst-case timer interrupt latencies are reduced by an order of magnitude — to as little as 1–3 microseconds — so that loop cycle times in the 50–200 microsecond range can operate with very high precision and accuracy on a real-time Windows system.

Having a dedicated core to run the RTOS in a dual-core processor system provides other advantages as well. Because application processing can be assigned to an independent OS/core, the potential to develop even more advanced control algorithms emerges, resulting in further increases in the quality and performance of the control systems that can be implemented on real-time Windows systems.

The TenAsys INtime RTOS has been validated on the Intel Core Duo processor architecture and is ready for integration into Windows-based embedded solutions. Along with the Mobile Intel® 945GM Express chipset, the Intel Core Duo processor plus Windows and the INtime RTOS allows for faster real-time bandwidth, high-quality graphics, and remote asset management capabilities — all essential features in a tightly controlled real-time embedded system.

The TenAsys INtime RTOS and the National Instruments LabVIEW® Embedded Development Module are examples of new dual-core processing technology as the starting point for exciting changes in embedded system design. When one platform can do the job of two, it’s not hard to imagine how graphics-rich applications and multiple operating systems may eventually lead to a new range of embedded applications.

“There are a vast number of potential uses for new dual-core — and eventually multi-core — processors. How vendors will employ solutions is yet to be seen, but examples like National Instruments LabVIEW Embedded technology using an Intel® Core™ Duo processor and INtime in their Windows-based, real-time virtual instruments gives us just a tiny glimpse at how vast,” remarks Fischer.

For more information on Intel® Core™ Duo processors and this case study please see intel.com/design/intarch

A Real-World Example
One of the first real-time Microsoft ® Windows® applications ported to the new Intel® dual-core platform is the National Instruments LabVIEW® Embedded Development Module. TenAsys Corporation has done the development work, dedicating one execution core to host Windows and the LabVIEW Front Panel user interface while the other processor core hosts INtime® and the LabVIEW Embedded Virtual Instrument (VI) runtime engine.

LabVIEW Embedded technology was developed to maximize data acquisition and control performance and was originally designed to run on two, independent hardware platforms — one for the real-time embedded target and the other for the host applications. Using the TenAsys INtime plug-in for the LabVIEW Embedded Development Module, application developers can take full advantage of Intel’s new dual-core architecture to implement embedded, real-time applications on a single Windows-based hardware platform. Developers are able to realize all of the underlying control, data acquisition and processing functions in a high-performance, real-time environment capable of updating instrument display parameters and closing control loops as frequently as once every 50 microseconds.

“Bringing the LabVIEW Embedded technology environment onto the Intel® Core™ Duo platform opens up a wide range of new embedded development opportunities,” said Shelley Gretlein, National Instruments Group Manager for Real-Time and Embedded Software. “The TenAsys INtime software plug-in for the LabVIEW Embedded Development Module simplifies and extends the ways in which engineers and scientists can use graphical programming on cost-effective, high-performance, embedded platforms.”