Programmable computing comes of age at NIWeek
If there was one trend at National Instruments’ annual NIWeek (Austin, TX, USA), it was that programmable computing has finally reached mainstream systems design.
If there was one trend at National Instruments’ annual NIWeek (Austin, TX, USA), it was that programmable computing has finally reached mainstream systems design. In the opening keynote speech, James Truchard, president of NI, discussed how the LabVIEW dataflow concept can be used in design and embedded control and outlined how virtual instrumentation will expand into embedded software development and industrial control.
“Trends in embedded system design, including the move from low-level tools to platform-based tools and from single processors with one operating system to multiple processors with multiple operating systems, make LabVIEW a natural fit for this area,” Truchard said. “Design engineers need a platform-based tool that can address multiple models of computation-from state diagrams to simulation models to graphical data flow-while eliminating the complexity that limits application development.”
Truchard’s message was positively reinforced in presentation after presentation as technical staff members introduced a string of announced products and ideas in development. These included NI Vision Builder for Automated Inspection, a LabVIEW FPGA programming module, reconfigurable I/O devices, a reconfigurable embedded control and acquisition platform, and programmable machine-vision systems.
“FPGAs have gained wide market adoption among digital design engineers, and we are delivering these benefits to engineers by eliminating the EDA programming curve,” said Tim Dehne, NI senior vice president of R&D. “Graphical programming of FPGAs extends virtual instrumentation by empowering LabVIEW users to synthesize their own custom measurement circuitry that rivals the performance and optimization of vendor-defined hardware.”
The company’s FPGA PCI-board allows LabVIEW developers to define custom I/O and control hardware without the use of EDA tools. LabVIEW programmers have used this to create hardware-in-the-loop simulation, digital communication protocol interfaces, and closed-loop control applications. Once developed, this code can be downloaded to a number of other NI products including the company’s PXI-7831R multifunction I/O board, the CompactRIO embedded control and acquisition platform, and the CVS-145x Compact Vision System (CVS).
With eight analog inputs, eight analog outputs, and 96 digital I/O lines, the NI PXI-7831R module’s I/O can be configured as counters, pulsewidth-modulation channels, custom digital protocols, or I/O. Hardware logic can be defined in LabVIEW to implement timing and triggering control, offloading the host processor of I/O-intensive operations.
“Because the execution target is an FPGA, parallel operations can occur simultaneously. In contrast, a VI with parallel operations running on a single processor would not occur in parallel. Instead, the operating system would time-slice the processor between those operations. With LabVIEW FPGA, the inherent parallelism of the graphical programming language can perform parallel operation in hardware,” said Dehne.
Like the NI PXI-7831R module, CompactRIO also uses reconfigurable I/O (RIO) to let developers define their own custom measurement hardware circuitry using reconfigurable FPGAs and LabVIEW. CompactRIO features a real-time embedded processor, a four- or eight-slot reconfigurable chassis containing an FPGA, and ten hot-swappable industrial I/O modules. FPGA circuitry at the heart of the system executes embedded LabVIEW applications deterministically. With CompactRIO, engineers can implement multiloop analog proportional-integral-derivative-based control systems at loop rates exceeding 100 kSample/s and digital control systems at loop rates up to 1 MSample/s and evaluate multiple rungs of Boolean logic in less than 25 ns.
Last year, NI introduced its 1454 CVS to extend the power of LabVIEW software into machine-vision applications (seeVision Systems Design, July 2003, p. 45). The CVS integrated I/O architecture delivers 15 digital input lines, 14 digital output lines, and RS-232 and Ethernet connectivity to more than 20 of the company’s FieldPoint family of distributed I/O measurement modules. According to Chad Humberston, FPGA project manager at NI, the CVS in-built FPGA can now be programmed using LabVIEW FPGA to implement custom counters, timing, or motor control applications, adding greater flexibility to CVS-based systems.
Trends in embedded system design
In addition to announcing a number of new products at NIWeek, product managers and engineers alike alluded to several developments in embedded systems design. In his keynote speech, James Truchard spoke of the increased level of abstraction in embedded-systems design, noting the history of computer programming as it has progressed from assembly, through C, to high-level graphical programming languages. Indeed, with some very sophisticated virtual instruments (VIs) now available with LabVIEW, it will be the nature of the application that defines the algorithms that control it, many speculated.
Although such concepts may be decades away, the nature of distributed embedded computing is certainly becoming a reality. At NIWeek, Paul Austin, principal software architect, showed LabVIEW controlling a sound card based on Texas Instruments (Dallas, TX, USA; www.ti.com) DSPs. In another demonstration, Joel Sumner, engineering group manager at NI, showed how engineers at Charmed Labs (Hawthorne, NJ, USA; www.charmedlabs.com) had taken LabVIEW, converted it to C code, and implemented a Game Boy-controlled motor drive robot complete with infrared sensors. “In the future,” said Sumner, “we expect LabVIEW to be running on hardware platforms that no NI engineer has ever seen.”