Inside LabVIEW DSP
Overview
The National Instruments LabVIEW DSP Module for NI SPEEDY-33 and Texas Instruments C6711 and C6713 DSKs helps you design, prototype, and deploy DSP systems through an easy-to-use, interactive graphical environment. There are a host of features that make LabVIEW DSP an ideal tool for development of DSP systems. This document details the key LabVIEW DSP Module features that make programming DSP systems intuitive and fun.
Table of Contents
- Hundreds of built-in analysis and development functions
- Modularity of code for reuse in future designs
- Easy-to-build, interactive GUIs for real-time interaction
- Express VIs for configuration-based code development
- Easy access to the analog and digital I/O lines of the DSP target
- Code portability to multiple DSP targets (NI SPEEDY-33, TI C6711 or C6713 DSKs only)
- Stand-alone application development capability
- Conclusion
Hundreds of built-in analysis and development functions
The LabVIEW DSP Module comes with hundreds of built-in signal processing and analysis functions such as different window, transform and waveform generation functions to help you quickly prototype your systems. For example, the LabVIEW DSP Module can implement digital filters created using the LabVIEW Digital Filter Design toolkit. The LabVIEW Digital Filter Design Toolkit includes configuration-based coefficients generation. Once these coefficients are generated, you can store them in a file and import and implement them on the DSP using the LabVIEW DSP Module. Figure 1 shows the configuration window from the Digital Filter Design Toolkit.

[+] Enlarge Image
You can choose from several kinds of design methods including elliptic, chebyshev, and butterworth. Once you define the kind of filter you want and generate the coefficients, you can import it and implement it using the LabVIEW DSP Module. Figure 2 shows the configuration screen for the VI used to import digital filter coefficients in LabVIEW DSP and implement it on the DSP target.

[+] Enlarge Image
Modularity of code for reuse in future designs

The ability to reuse tested code in bigger applications simply by connecting inputs and outputs helps modularize applications and make them easier to develop. Also, having subVIs or subcomponents in a program leads to a cleaner design that is easier to debug later.
Easy-to-build, interactive GUIs for real-time interaction
The LabVIEW DSP Module takes advantage of the interactive features of LabVIEW. You can now build powerful and sophisticated GUIs for your DSP applications by using graphs and charts, Boolean switches and LEDs, different types of gauges, sliders, and lots of other extremely useful front-panel objects.

[+] Enlarge Image
Figure 4 shows an example of the kind of interactive front panels that you can build using LabVIEW DSP. The power of LabVIEW DSP lies in the fact that you can interact with the program running on the DSP in real time and see the results on your front panel.
Express VIs for configuration-based code development
LabVIEW DSP makes it very easy for both expert programmers and novice users to build DSP applications. The LabVIEW DSP Module uses LabVIEW Express Technology so you can configure complex operations through a dialog interface, eliminating the need to drop in multiple blocks and connecting them with wires. For example, Figure 6 shows the configuration window for the Spectral Measurements Express VI.

[+] Enlarge Image
Figure 5 shows that the configuration panels include several options from which you can choose. In this example, you can determine whether the function should calculate the RMS or power spectrum measurement. They also can choose to apply a window if they need to; there are several windows available including Hamming, Hanning, and Blackman-Harris. The power of Express VIs is that once the block is configured, all you have to do is connect the inputs and outputs and run the VI. The LabVIEW DSP Module implements the Express VI function on the DSP. Express VIs help reduce the time to market by providing you with the most common options through an easy-to-use interface. In addition, if you prefer finer control, you always can obtain it by dropping in individual VIs and wiring them together.
Easy access to the analog and digital I/O lines of the DSP target
Most DSP targets have a series of inputs and outputs, both analog and digital. LabVIEW DSP comes equipped with configurable elemental I/O VIs you can use to configure the analog and digital I/O of the DSP target (NI SPEEDY-33, TI C6711 or C6713 DSKs) .

Figure 6. Elemental I/O Palette in the LabVIEW DSP Module.
Figure 6 shows the elemental I/O palette in LabVIEW DSP. These I/O VIs are completely customizable by double-clicking on the icon after they are dropped onto the block diagram. Figure 7 shows the configuration screen for the Analog Input VI. As it can be seen in Figure 7, you can select between single-channel or dual-channel modes and whether they want to acquire a single sample or multiple samples. In addition, you also can adjust the sampling rate and other parameters depending on their applications.

[+] Enlarge Image
Code portability to multiple DSP targets (NI SPEEDY-33, TI C6711 or C6713 DSKs only)
You can see the power of using LabVIEW DSP when switching from one hardware target to another. The LabVIEW DSP Module currently supports three DSP targets only – the NI SPEEDY-33 board and the Texas Instruments C6711 and C6713 DSKs - and switching between these targets is extremely easy.

[+] Enlarge Image
Stand-alone application development capability
The LabVIEW DSP Module also facilitates developing and deploying standalone DSP applications. In fact, you can deploy and run any application you create with the LabVIEW DSP module in a standalone manner.

[+] Enlarge Image
Conclusion
Until now, both experienced DSP design engineers, students learning signal processing and DSP enthusiasts have faced many challenges in quickly building DSP systems. Graphical programming tools such as LabVIEW DSP abstract the implementation details and facilitate rapid DSP application prototyping and deployment. The intuitive graphical environment allows the novice user to learn concepts quickly.
Graphical programming for DSPs helps students and professors develop DSP applications faster by creating object code directly from a block diagram. The LabVIEW DSP Module promotes provides a hands-on experiential learning environment for learning DSP concepts. The students get to experience real world phenomena which help connecting theory to the real world and reinforce the importance of DSPs. The savings in design and development time, the maintainability advantages, and the self-documenting nature of graphical programming for DSPs will help make teaching and learning DSP concepts easier and fun
Reader Comments | Submit a comment »
Legal
This tutorial (this "tutorial") was developed by National Instruments ("NI"). Although technical support of this tutorial may be made available by National Instruments, the content in this tutorial may not be completely tested and verified, and NI does not guarantee its quality in any way or that NI will continue to support this content with each new revision of related products and drivers. THIS TUTORIAL IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND AND SUBJECT TO CERTAIN RESTRICTIONS AS MORE SPECIFICALLY SET FORTH IN NI.COM'S TERMS OF USE (http://ni.com/legal/termsofuse/unitedstates/us/).
