Academic Company Events NI Developer Zone Support Solutions Products & Services Contact NI MyNI

Document Type: Instrumentation Newsletter
NI Supported: No
Publish Date: Feb 23, 2007


Feedback


Yes No

Related Categories

Related Links - Developer Zone

Related Links - Products and Services

Accelerating Embedded System Design

16 ratings | 4.50 out of 5
Read in | Print

From consumer electronics to industrial machinery and automotive computers, the engineers that design embedded systems are working in a fiercely competitive global market. The risks and potential rewards are great. A successful product could see production volumes in the millions of units per year while a failure could spell disaster for a company with thousands of development hours at risk. While competitive pressure to get products to market faster continues to increase, embedded systems are growing more sophisticated and complex. It now takes longer than ever to complete new designs. The 2005 Embedded Market Survey by CMP Media indicates that more than half of all projects release at least three months late and the average time to complete a new design has reached a record 15 months. Most embedded project failures cite overall complexity and inadequate or changing specifications.

To help design teams tackle an increasingly complex job and get products to market more quickly and reliably, virtual instrumentation technology is evolving to provide a comprehensive set of tools for embedded system design, prototyping, and deployment. The National Instruments LabVIEW high-level graphical programming language and PC-based commercial off-the-shelf (COTS) hardware can assist with every stage of development -- from the earliest stages of design and simulation, to prototyping the system with real-world I/O signals and hardware, to deploying the embedded software on a chosen processor target.

To manage more complicated design requirements, teams are spending more time on software development and switching to more sophisticated processors. CMP Media reports that the main processor in about half of all designs is now a 32-bit device rather than an 8- or 16-bit device. This trend toward 32-bit microprocessors makes it easier to use code created with the help of high-level design tools because 32-bit devices have a large instruction set that is more like a PC. By combining design, prototyping, and deployment technology in a single graphical programming toolchain, NI LabVIEW speeds development for a wide variety of embedded processing devices. This article explores key LabVIEW 8 tools and capabilities for accelerating embedded system design.

Design
Embedded system design is a multidimensional process that involves electrical, software, and mechanical engineering. For example, a modern photocopier is an advanced machine that includes hundreds of sensors; dozens of actuators; and a variety of software subsystems such as control loops, networking, and self-diagnostics. To simulate the behavior of this complex system, you can use native LabVIEW system identification, simulation, and control design capabilities to create a model and develop your control algorithms. LabVIEW also provides interoperability with a variety of third-party tools for circuit design, simulation, mechanical/CAD, and embedded software development. Depending on the target, LabVIEW applications can include text-based C code, VHDL, MathScript, or DLL calls.

Signal processing and digital filter design are key embedded system technologies because they are necessary to derive meaningful information from sensors. Real-world sensors encode meaningful information in complex signals. For example, the position and speed of a paper roller might be transmitted in the voltage waveforms of a sine-cosine encoder. For reliable control of paper tension in the photocopier, the sensor interface subsystem must accurately interpret these signals and correct for noise, attenuation, and other practical issues. LabVIEW offers sophisticated digital filter design and validation tools to speed development for both floating- and fixed-point devices.

Prototype
Prototyping is the process of taking algorithms and embedded code developed during the design stage and connecting them to the real-world system and environment. Prototyping helps get new designs to market more quickly and reliably because you can begin more important engineering work earlier in the process and assist teams in refining goals and requirements.

LabVIEW makes it easier than ever to connect algorithms and logic to real I/O signals because it includes built-in support for virtually any type of sensor or actuator. In addition to traditional PC-based I/O modules, field-programmable gate array (FPGA)-based intelligent data acquisition (DAQ) devices are increasing in popularity for prototyping. You can customize intelligent DAQ devices to perform the type of I/O and signal processing operations found in very specialized hardware devices. Reconfigurable FPGA hardware technology is at the core of the National Instruments CompactRIO embedded prototyping and deployment system. See "NI CompactRIO Embedded Prototyping and Deployment System" for details.




[+] Enlarge Image


Figure 1. LabVIEW provides key technologies for improving embedded system design.



Deploy
Deployment is one of the most challenging parts of the development process because it involves combining all of the design components into an integrated working system that must be robust, cost-effective, and reproducible in high volumes. Traditionally, engineers had to rewrite most of the software from the design and prototyping stages in the low-level syntax of the embedded device. Portability also was a major challenge for low-level code. Now, you can easily move the same LabVIEW graphical source (G code) among embedded targets. You also can translate LabVIEW G code to ANSI C for portability into any third-party toolchain. The new LabVIEW Embedded Development Module takes this a step further by opening the native code generation and cross-compilation engines so advanced developers can create board support packages for any microprocessor and OS.


LabVIEW Technology
Compilation Method
Target Operating Systems
Common Hardware Targets
Development System
Native LabVIEW compiler1
Windows, Linux, Mac
Desktop, laptop, CompactPCI/PXI, industrial PCs, single-board computers
LabVIEW Real-Time Module
Native LabVIEW compiler1
Phar Lap ETS, RTX
All of the above plus NI Compact FieldPoint, CompactRIO, Compact Vision System
LabVIEW PDA Module
Cross-compiler, third-party tools1
Palm, Windows Mobile for Pocket PC, Windows CE4
Handhelds, cell phones, touch panel displays
LabVIEW FPGA Module
VHDL code generation, integrated Xilinx ISE tools1
N/A (result is hardware)
CompactRIO chassis, PCI/PXI R Series intelligent DAQ devices
NI LabVIEW Embedded Module for ADI Blackfin Processors3
C code generation, integrated ADI VisualDSP++ tools1
VisualDSP++ Kernel (VDK)
600 MHz ADI Blackfin DSP/MPU hybrid
LabVIEW Embedded Development Module
C code generation, third-party compiler2
eCos, VxWorks, UNIX, Windows (any OS)
Any 32-bit microprocessor or DSP
1OEM-ready -- compilation is fully automated and no knowledge of the third-party toolchain is required.
2Requires knowledge of a third-party toolchain.
3NI announced the first public beta version in August 2005.
4Windows CE support for select devices.


Table 1. NI LabVIEW 8 targets a wide variety of embedded devices.



As shown in Table 1, LabVIEW includes native embedded targeting technology for general-purpose PCs, real-time industrial systems, handheld and portable devices, FPGAs, DSP/MPU hybrids, and arbitrary 32-bit microprocessors. The list of hardware targets programmable with LabVIEW has expanded greatly in recent years as the core technologies are woven more tightly into the fabric of the language. All of these heterogeneous computing devices are programmed using a consistent graphical development experience.

LabVIEW provides an array of COTS hardware targets from a variety of vendors that you can use as OEM-ready subsystems in embedded designs. NI and third-party vendors such as Analog Devices have performed extensive validation and testing on these OEM-ready hardware targets. To get you up and running quickly and reliably, LabVIEW delivers specialized cross-compilation, linking, and debugging engines for each target.

Graphical System Design
The National Instruments graphical system design platform combines LabVIEW programming with COTS measurement and embedded hardware targets to help your development teams design, prototype, and deploy systems more quickly and reliably. By embracing PC-based technology, these tools make it easier to connect design and simulation code to real-world signals. As the list of OEM-ready embedded targets grows, LabVIEW developers can benefit from an increasingly automated development process. Stay tuned -- the future looks bright for virtual instrumentation in embedded design.

Brian MacCleery
Senior Product Manager
brian.maccleery@ni.com



Read sidebar, "NI CompactRIO Embedded Prototyping and Deployment System."
View FREE tutorials and learn more about how LabVIEW 8 is accelerating embedded design.

This article first ran in the January 24, 2006, issue of NI News and the Q1 2006 issue of Instrumentation Newsletter.

16 ratings | 4.50 out of 5
Read in | Print

Reader Comments | Submit a comment »

 

Legal
This material is protected under the copyright laws of the U.S. and other countries and any uses not in conformity with the copyright laws are prohibited, including but not limited to reproduction, DOWNLOADING, duplication, adaptation and transmission or broadcast by any media, devices or processes.