Graphical system design holds center stage

Oct. 1, 2007
NIWeek showcases National Instruments products and ideas for the future.

NIWeek showcases National Instruments products and ideas for the future.

By Andrew Wilson, Editor

James Truchard, president of National Instruments (NI; Austin, TX, USA; www.ni.com), is, in every sense, a master planner. Each year during August, his company holds its annual event for developers that have embraced its flagship LabVIEW software. The conference is replete with new product introductions; educational summits on test and measurement, real-time control, software development, and machine vision; and technical papers that describe how developers have built systems, often with NI software and hardware.

But it is not the organization of the conference that makes Truchard a master planner. Rather, it his vision for the company’s software and how to make it more accessible to those in industry. Indeed, it was, perhaps, what was not said at this year’s NIWeek (August 7-9, 2007) rather than what was that gave attendees insight into what to expect from the company in the coming years.

On the first day of the conference, Truchard set the stage for the conference with an opening presentation entitled “Increasing productivity with graphical system design.” It was this theme that was taken up by many of the speakers during the three-day event.

Truchard highlighted the theme of last year’s conference-how his company was moving to the next level by making LabVIEW a system-design platform. To accomplish this, the company intends to make the software available at a number of different levels- embedding it within FPGAs, multicore processors, and custom processing boards. To share intellectual property developed for FPGAs among LabVIEW users, National Instruments is setting up IPNet, a Web-based service designed as an open community for LabVIEW FPGA code.

Key features

Following his introduction, Truchard turned the floor over to Tim Dehne, NI senior vice president of research and development, who introduced the latest version of LabVIEW-8.5-and demonstrated some of its key features. These include optimized performance for multicore processors, a new statechart model (similar to that already found in NI Vision Builder AI), and an upgraded version of the company’s LabVIEW FPGA module.

“Using its parallel dataflow language, developers can map their applications to multicore and FPGA architectures for data streaming, control, analysis, and signal processing,” says Dehne. “LabVIEW 8.5 scales user applications based on the total available number of cores and features thread-safe drivers and libraries to improve throughput for RF, high-speed digital I/O, and mixed-signal test applications. LabVIEW 8.5 also delivers symmetric multiprocessing with the LabVIEW Real-Time Environment, where designers can load balance tasks across multiple cores without sacrificing determinism. Users can manually assign portions of code to specific processor cores to fine-tune real-time systems or isolate time-critical sections of code on a dedicated core.

Dehne introduced Rob Dye, principle architect of LabVIEW Core, who demonstrated a simple signal-processing program that performs a fast Fourier transform on a signal, filters it, and returns the result to the time domain. After copying and pasting the code four times in LabVIEW, Dye created four separate threads and ran the code on a quad-core processor (see Fig. 1). Compared with running the code on a single processor, this resulted in a four times increase in processing speed, to the amazement of those familiar with Amdahl’s law!

Figure 1. Using LabVIEW 8.5, developers can run several copies of a single program and distribute them across multiple CPU cores. In this example, a simple signal-processing program performs an FFT on a signal, filters it, and returns the result to the time domain. This program is run simultaneously on the four processors.
Click here to enlarge image

With an inherently simple and parallel example, such an increase may be possible, especially if the code is specifically tailored. In more conventional programs, which are developed in both a sequential and parallel fashion, Amdahl’s law will, of course, limit this performance increase. However, for the purpose of demonstrating the LabVIEW 8.5 Real-Time Module that includes symmetric multiprocessing and automatic core scheduling support, the demonstration was impressive.

The LabVIEW Statechart Module allows engineers to create complex state machines that model the behavior of real-time embedded systems. “With the Statechart Model, developers can use a high-level statechart notation to design software that interacts with hardware ranging from FPGAs to any NI hardware,” says Christy Dellas, NI staff software engineer. To demonstrate, Dellas simulated a laser-based milling machine that uses NI SoftMotion Development Module executing on a CompactRIO system to control the motion of the laser.

The Statechart Module visually depicts how the FPGA in the CompactRIO system is used in the application (see Fig. 2). First, there is a waiting period until the laser is in the correct position. The laser then performs the drawing and moves into concurrent states where it returns to its original position and simultaneously feeds the paper through the machine and then trims the paper. “By visualizing the statechart,” says Dellas, “no data flow code is required to obtain state-like behavior.”

Figure 2. With LabVIEW statechart model, developers can use high-level notation to design software that interacts with hardware ranging from FPGAs to any NI hardware.
Click here to enlarge image

To increase support for FPGA platforms, the LabVIEW 8.5 FPGA Module adds support for the Statechart Module and enhanced IP blocks for signal generation and processing. According to Vineet Aggarwal, product marketing manager of NI data-acquisition products, new features also include the ability to automatically script code for high-speed DMA data streaming.

Of course, such data-streaming applications require a high-bandwidth system controller and RAID data storage. NI has announced the NI PXIe-8130 embedded controller with four x4 PCI Express links that can deliver up to 4 Gbytes/s of bandwidth to a PXI Express system. The controller includes a 2.3-GHz AMD Turion 64 X2 dual-core processor, ExpressCard slot, and Gigabit Ethernet.

In addition, the 8262 module and HDD-8263 and HDD-8264 external RAID hard-drive enclosures offer sustained hard-drive streaming rates of up to 600 Mbytes/s. The 8262 module provides a x4 cabled PCI Express link that can cable to the 3U HDD-8264, which includes 12 250-Gbyte SATA hard drives (3 Tbytes), or the 1U HDD-8263, which includes four 250-Gbyte SATA hard drives.

Future visions

NI introduced two smart cameras based on the PowerPC processor. The first, the 1722, features a 60-frame/s VGA CCD sensor from Sony, a 400-MHz PowerPC, and dual Gigabit Ethernet (see Fig. 3). Having 2-in, 2-out optoisolated inputs and RS-232 interface, the camera is also supplied with Vision Builder AI software that can be run autonomously within the camera. This camera was shown interfacing with the company’s CompactRIO system and Compact Vision Systems to inspect and sort bottles (see “Sorting and checking colored bottles,” p. 21).

Figure 3. NI 1722 smart camera features a 60-frame/s VGA CCD sensor from Sony, a 400-MHz PowerPC, and dual Gigabit Ethernet. With 2-in, 2-out optoisolated inputs and RS-232 interface, the camera is also supplied with the company’s AI Vision Builder software that can be run autonomously within the camera.
Click here to enlarge image

The second camera, the NI 1742, features the same interfaces as the 1722 but includes additional features such as direct-drive lighting controller, encoder support, and a faster 533-MHz PowerPC processor. The 1742 is also supplied with Vision Builder AI. According to Matt Slaughter, product marketing engineer in the Vision Group, these products will be the first in a series of smart cameras that will, next year, include faster processors and higher-resolution sensors. With a price tag starting at $1999 (including software), these cameras natively integrate with the company’s programmable automation controllers.

Of course, the drive to make NI products more compact and expandable will continue next year. According to Tommy Connell, software engineer, the three years since the Compact RIO system has been on the market, system developers have demanded a more compact version of the product for embedded applications. To address this, NI is currently developing a family of single-board RIO products specifically designed for targeting high-volume applications. These new single-board RIO systems will feature an on-board CPU, FPGA capability, and digital I/O integrated onto the same PCB.

Simultaneously, the company alluded to its “LabVIEW on a chip” project that would allow its LabVIEW software to be distributed across multiple CPU, I/O, and FPGA functions on a single device. And, according to one source at NIWeek, the company is already discussing the idea with camera vendors wishing to develop third-party smart cameras.

The concept of distributing its software across single devices, single-board computers, and custom and off-the-shelf systems may not be new. Indeed, it is the very concept that Intel used many years ago to leverage its processor expertise into multiple architectures. However, perhaps what makes Truchard a master planner is that he has realized this and how such a concept can be used to make LabVIEW more widely accepted.

Voice Your Opinion

To join the conversation, and become an exclusive member of Vision Systems Design, create an account today!