Introduction to NI Logic Analyzer and Pattern Generator Solution
During the process of debugging and validating a digital system, a common task is the acquisition and generation of digital waveforms. A logic analyzer is an instrument that captures the response of a digital system for use in debugging and verifying its operation. Similarly, a pattern generator is a device that stimulates a digital system with a known set of data across multiple channels.
Traditionally, engineers used separate logic analyzer and pattern generator bench-top instruments that had to be individually configured and manually controlled. The NI 100 MHz logic analyzer and pattern generator solution replace these two bench-top instruments with a single PC-Based module capable of analyzing and generating digital waveforms. This solution is intended for engineers who need a flexible, easy-to-implement instrument for digital design, test and debug applications up to 100 MHz. The PC-Based implementation means that a standard computer and a common application development environment, like the included NI SignalExpress, can be used to perform complex analysis, data logging, and report generation.
NI offers two solutions to choose from, with each available for both PCI and PXI. The NI 6542 solution is designed for common interfacing and test applications that need basic acquisition and generation capabilities. The NI 6552 solution offers advanced features, such as programmable voltage levels in 10 mV steps, on-the-fly bi-directionality, and the ability to passively probe a circuit with low loading. These additional features of the NI 6552 device are necessary for applications such as bit error rate testing and IC characterization.
NI Logic Analyzer and Pattern Generator Data Sheet
Understanding the Features and Terminology
NI 6542 and NI 6552 devices offer a maximum clock rate of 100 MHz for analyzing the timing and state information of digital electronics. The clock can be generated by an onboard oscillator or an external, free-running clock. The external clock can be routed into the device through the CLK IN SMB connector, a terminal block, or the PXI backplane.
To guarantee a high level of precision, the onboard clock source can be phase lock looped (PLL) to a reference clock. The most common source is the 10 MHz reference clock available from the PXI backplane. An external reference clock can also be provided. To synchronize the digital device with other instruments, you can export the sample and reference clock or use the advanced synchronization capabilities of PXI.
It is often necessary to control, or trigger, the digital waveform acquisition or generation on a specific event to ensure that the proper data is acquired. The NI digital instruments support edge, pattern, level, and multirecord triggers.
An edge trigger, a common digital event, is the transition of a signal from low to high (rising edge) or high to low (falling edge). A pattern match trigger configures the instrument to monitor the input channels for a specific pattern (i.e. '10100111'). The trigger asserts when this pattern is detected on the input channels. A level trigger initiates the acquisition when a signal transitions below or above a defined level.
A unique capability of the NI logic analyzer solution is the ability to perform multirecord acquisitions, which allow you to capture multiple, triggered waveforms without software intervention. Using this mode, you can capture data around recurring events, such as a known error, without developing complex sequential triggering or having to rearm the acquisition.
A high-quality flying-lead cable provides 38 pairs of 50 Ω signal and ground connections to your device under test (DUT). Each signal and ground pair connects to standard 0.1 in. header pins or the included grabber clips. For a more permanent connectivity solution, a cable and terminal block can be used.
The NI digital I/O devices offer deep onboard memory for capturing large amounts of data and for generating complex patterns. The digital instruments have 64 MB of total onboard memory; 32 MB of onboard memory is for acquired data and a separate 32 MB of memory is used to store test vectors for a generation. The instruments support scripting, which allows you to link and loop multiple waveforms together in a generation operation. The script specifies the order in which the waveforms are generated, the number of times they are generated, and the triggers and markers associated with the generation
The NI logic analyzer and pattern generator solution include the NI-HSDIO driver, the Digital Waveform Editor, and NI SignalExpress. NI-HSDIO is a powerful API for LabVIEW and C. The NI Digital Waveform Editor provides an interactive tool for creating, editing and importing digital patterns.
NI SignalExpress is interactive software for engineers who want to quickly acquire, generate, and analyze analog and digital signals. Using the built-in steps in SignalExpress, you can develop complex analysis, automatic data logging, and report generation applications. The functionality of SignalExpress can be expanded indefinitely by developing user-defined steps in NI LabVIEW.
The generation and acquisition capabilities of these instruments make them ideal for stimulus-response applications such as bit error rate testing (BERT). NI 6542 devices can drive data on one set of channels while simultaneously analyzing the response data on the remaining channels. NI 6552 devices offer more advanced features, including per-cycle tristate and real-time hardware data comparison. With per-cycle tristate, you can switch from analyzing data to generating data on a per-channel, per-clock-cycle basis. Real-time hardware comparison checks the acquired data against the expected response for errors at the full clock rate of the digital instrument.
You can expand the digital test system to include different types of measurements and to increase the total number of channels. The modular, PC-based platform allows you to create a complete mixed-signal test system by including analog, digital, and RF instruments.
SignalExpress can be used to synchronize the elements of a mixed-signal test system by routing clock signals and triggers between devices. With the PXI platform, these routes are connected internally, eliminating the complexity of external wiring.
Using SignalExpress for Logic Analysis
NI SignalExpress allows you to create test, measurement, and analysis applications interactively without requiring any programming knowledge. Included with the NI logic analyzer and pattern generation solution, SignalExpress enables you to control the operation of the digital I/O device and to analyze and store the acquired data. Once installed onto your computer, you can launch SignalExpress by navigating to Start » Programs » National Instruments » SignalExpress » SignalExpress.
The acquisition of digital data using SignalExpress can be accomplished in one easy step. After opening SignalExpress, click on Add Step and browse to Digital » Acquire Signals » NI-HSDIO Acquire.
A dialog box for configuring the acquisition parameters opens. On the Configuration tab, choose your high-speed digital device, the channels, and the sample rate desired for your acquisition. On the subsequent tabs, configure the voltage levels, triggering options, and advanced timing options.
For instance, to trigger an acquisition based on an external digital signal, click on the Trigger tab and choose Digital Edge for the Reference trigger type parameter. In the figure below, the acquisition is configured to trigger on a rising edge of the signal connected to PFI0, a general-purpose I/O channel for triggers and events.
Notice that the Pretrigger samples parameter is set to 500, indicating that an acquisition will contain the 500 digital values directly before the trigger event. Since the Samples to read parameter on the configuration tab is set to 1000, the total acquisition will have 500 pretrigger and 500 posttrigger samples.
If further synchronization is needed, use the options on the Advanced Timing tab to specify an external sample clock or reference clock. The position relative to the reference clock at which each sample is acquired can be specified with 40 ps resolution when operating at 100 MHz clock rate.
Once you have completed configuring the acquisition, you can close the step and press the Run button on the SignalExpress toolbar.
Using SignalExpress for Pattern Generation
To generate digital data using SignalExpress, you must first create or import a digital waveform. To do this, use the included NI Digital Waveform Editor. Open the Digital Waveform Editor by browsing to Start » Programs » National Instruments » Digital Waveform Editor.
Complete the following steps in the Digital Waveform Editor to create a sample test pattern quickly:
1. Select File » New Waveform from the menu at the top of the window. The Generate New Waveform dialog box appears.
2. Enter the number of samples, signals, and the rate (in Hertz) for your waveform and click Ok.
3. The automatic fill option allows you to quickly create test patterns. Right-click on one or more selected signals and navigate to Fill. Select the desired fill option, such as a count up or pseudorandom, to automatically fill the selected channels with a known pattern. Multiple channels can be selected by selecting a channel and then, while holding the SHIFT or CTL key, clicking on another channel.
4. Select File » Save As from the menu at the top of the window. Enter a filename and then click Ok. Click Ok again in the Save Format window to store the digital waveform into Hierarchical Waveform Storage (.HWS) file.
Note: For more information on creating digital waveforms in the HWS format, visit the NI Digital Waveform Editor Help.
Once the test data is saved from the Digital Waveform Editor as an HWS file, return to SignalExpress. Load the data into SignalExpress by clicking on Add Step and browsing to Digital » Load/Save Signals » Load from HWS.
The configuration window for loading your HWS file opens. Click on the folder button next to the Load file path box to launch a file dialog box.
Navigate to and select the newly created HWS file. Click Open. The Load from HWS step displays the digital waveform in the preview area at the top of the window and the File type drop-down control automatically changes to Digital waveform data.
Now that digital waveform data has been loaded, the next step is to configure the generation step in SignalExpress. Close any open configuration windows and click on Add Step and browse to Digital » Generate Signals » NI-HSDIO Generate.
A dialog box for generation, which automatically references the waveform loaded in the previous step, opens. On the Configuration tab, select your high-speed digital device, the channels required, and whether you want a finite or continuous generation session. Place a checkmark next to Extract rate from waveform. On the subsequent tabs, configure the voltage levels, triggering options, and advanced timing options.
Once you have completed configuring the generation, you can close the step and press the Run button on the SignalExpress toolbar.
Analysis and Report Generation in Software
One of the main benefits of using a PC-based instrument is the fact that your hardware and software are tightly integrated. Using standard application development environments, such as SignalExpress, LabVIEW, and C, you can expand and customize your test and measurement system to do more than just acquire and display data.
SignalExpress includes a step to compare an acquired digital waveform with the expected digital response. To access this feature, click on Add Step in SignalExpress and browse to Digital » Test » Digital Compare. A dialog box opens prompting for a reference waveform and a test waveform for the comparison. The test waveform is a digital waveform returned from an HSDIO Acquire Step. The reference waveform can either be a HWS file created by the user or a saved HWS file from a previous acquisition.
To save a digital waveform in SignalExpress, click on Add Step and browse to Digital » Load/Save Signals » Save to HWS. A dialog box opens prompting you for a waveform to store. The default waveform to save is the digital waveform returned by your HSDIO Acquire Step.
SignalExpress also provides the option to print a graph or save it as an image. To do this, right-click on the graph you wish to print or save and browse to Export » Print Display or Export » Save as Image.
Using LabVIEW Express VIs for Acquisition and Display
NI LabVIEW can also be used to acquire, generate, and display digital data. With NI-HSDIO Express VIs, LabVIEW offers the same dialog interfaces to acquire and generate digital data. The powerful programming capabilities of LabVIEW offer even more flexibility than SignalExpress to customize the analysis and presentation of the digital data.
Note: The following instructions are for users who have had some exposure to the LabVIEW graphical programming environment.
The following steps guide you through developing a basic acquisition program in LabVIEW:
1. Open a blank VI in LabVIEW and save it as “HSDIO Express Acquire.vi”
2. Go to the block diagram and right-click to open the Functions palette.
3. Browse to Measurement I/O » NI-HSDIO and locate the HSDIO Express (Acquisition) VI. (Note: Clicking on the Search button and typing “hsdio express” is an alternate way to locate this VI)
4. Click and drag the HSDIO Express (Acquisition) VI onto the block diagram
5. Once it loads, a dialog box opens resembling the configuration window for the HSDIO Acquire step in SignalExpress. Based on your application needs, adjust the acquisition parameters such as device, channels, triggering, and advanced timing.
6. Once you have chosen the appropriate settings, click OK. A single function now appears on your block diagram that, once the program is run, initiates the acquisition of digital data from your HSDIO device.
7. Go to the front panel of the VI and right-click to open the Controls palette.
8. Browse to Modern » Graph and locate the Digital Waveform Graph. (Note: Clicking on the Search button and typing “digital graph” is an alternate way to locate this graphical indicator)
9. Click and drag the Digital Waveform Graph onto the front panel.
10. Return to the block diagram and wire the “data” output of the Express VI to the Digital Waveform Graph. The VI is now ready to run.
Once completed with these 10 steps, you will have a functioning LabVIEW program that performs simple digital acquisition. Following similar steps, you can create a digital generation program as well. Using this as a starting point, you can develop more complex LabVIEW programs to accommodate a wide variety of digital test, validation, and control applications. LabVIEW also offers tools for the analysis, storage, and reporting of data, providing the ability to fully customize and automate your application.
For more help on getting started with LabVIEW and NI-HSDIO, over 60 NI-HSDIO examples can be found in the NI Example Finder. In LabVIEW, navigate to Help » Find Examples… to launch the finder. To find the NI-HSDIO examples, browse to Hardware Input and Output » Modular Instruments » NI-HSDIO (High-Speed Digital I/O).