Getting Started With LabVIEW FPGA

Publish Date: Dec 09, 2016 | 43 Ratings | 4.28 out of 5 | Print | 6 Customer Reviews | Submit your review

Overview

The NI LabVIEW FPGA Module lets you graphically implement digital circuits within an FPGA chip. Watch these short videos to see what it’s like to program in LabVIEW FPGA, and implement basic tasks using analog and digital I/O.

Table of Contents

  1. Writing Your First LabVIEW FPGA Program  
  2. Implementing Counters in LabVIEW FPGA
  3. Using Analog Inputs and Outputs in LabVIEW FPGA
  4. Using Graphical Loop Structures in LabVIEW FPGA
  5. Measuring Loop Timing in LabVIEW FPGA
  6. Single-Cycle Timed Loops in LabVIEW FPGA
  7. Debouncing Digital Signals in LabVIEW FPGA
  8. Using Feedback Nodes in LabVIEW FPGA
  9. Generating Signals in LabVIEW FPGA
  10. Using Graphical Case Structures in LabVIEW FPGA
  11. Finite Sampling Using For Loops in LabVIEW FPGA
  12. Implementing Simple Event Triggers in LabVIEW FPGA
  13. Custom Analog Triggering in LabVIEW FPGA
  14. Configuring Independent Analog Channels in LabVIEW FPGA
  15. Additional Resources

 

1. Writing Your First LabVIEW FPGA Program  

Learn how you can use LabVIEW system design software to program an FPGA hardware target.

  • Use graphical structures and I/O nodes to build custom digital circuits
  • Compile the block diagram to run LabVIEW code in hardware

Duration: 6:32

 

Back to Top

2. Implementing Counters in LabVIEW FPGA

FPGAs are excellent for implementing counters, and LabVIEW lets you build them graphically.

  • Create a simple event counter in LabVIEW FPGA to count rising digital edges
  • Display the counter register value on the LEDs of an NI CompactRIO module

Duration: 6:03

 

Back to Top

3. Using Analog Inputs and Outputs in LabVIEW FPGA

You can use I/O nodes in LabVIEW FPGA to generate analog signals and take analog measurements.

  • Generate an analog voltage using a CompactRIO analog output module
  • Measure back the voltage using a CompactRIO analog input module

Duration: 5:51

 

Back to Top

4. Using Graphical Loop Structures in LabVIEW FPGA

Unlike CPUs, FPGA hardware lets you execute code with true parallel operation, and LabVIEW FPGA has graphical loop structures to let different parts of your block diagram run simultaneously.

  • Use multiple LabVIEW FPGA While Loop structures to create independent circuits
  • Use Loop Timer functions to specify how fast different loops should run

Duration: 6:14

 

Back to Top

5. Measuring Loop Timing in LabVIEW FPGA

LabVIEW FPGA lets you run graphical block diagrams in hardware, which can execute on the order of microseconds and nanoseconds.

  • Learn how low-level timing works when LabVIEW code is running on an FPGA chip
  • Use Tick Count functions in LabVIEW FPGA to monitor loop execution speeds

Duration: 4:43

 

Back to Top

6. Single-Cycle Timed Loops in LabVIEW FPGA

Learn about the single-cycle Timed Loop, a special structure in LabVIEW FPGA that lets you optimize your FPGA design for both size and speed.

  • Execute FPGA logic in a single-cycle Timed Loop within a single “tick”
  • Achieve 25 nanosecond loop rates at the default compile clock of 40 MHz

Duration: 4:34

 

Back to Top

7. Debouncing Digital Signals in LabVIEW FPGA

Mechanical switches and relays can often bounce when changing state, and you can use LabVIEW FPGA to implement debounce circuitry and filter out unwanted digital edges.

  • Graphically implement a digital debounce filter on a simple event counter
  • Programmatically set a minimum amount of time to identify valid transitions

Duration: 9:10

 

Back to Top

8. Using Feedback Nodes in LabVIEW FPGA

In addition to using shift registers, you can also use Feedback Nodes in LabVIEW FPGA to pass data between different loop iterations.

  • Learn how Feedback Nodes can be helpful for making LabVIEW block diagrams easier to read
  • Use Feedback Nodes within subVIs to create modular functions that can hold data between loop iterations

Duration: 4:16

 

Back to Top

9. Generating Signals in LabVIEW FPGA

You can dynamically generate continuous waveforms using LabVIEW FPGA and analog output I/O Nodes.

  • Continuously generate values onboard the FPGA using the Sine Wave Generator function
  • Output a sine wave voltage signal and read it back in with an analog input channel

Duration: 8:48

 

Back to Top

10. Using Graphical Case Structures in LabVIEW FPGA

Case structures are used to selectively activate parts of your FPGA design, and are good for implementing custom hardware triggers and state machines.

  • Graphically create hardware-timed Case conditions with LabVIEW Case structures
  • Use a digital input signal to enable and disable an analog input channel in hardware

Duration: 3:27

 

Back to Top

11. Finite Sampling Using For Loops in LabVIEW FPGA

For Loops are useful structures when you already know the number of iterations you’d like to execute code, and work well for taking a finite number of analog voltage samples.

  • Use a For Loop in LabVIEW to predetermine the number of analog input samples to take
  • Combine a For Loop with a While Loop and Case structure to create a retriggerable data acquisition application

Duration: 4:12

 

Back to Top

12. Implementing Simple Event Triggers in LabVIEW FPGA

A digital transition from false to true (rising edge) or true to false (falling edge) might be just the right trigger event that your application needs.

  • Continuously monitor a digital input line using the single-cycle Timed Loop
  • Use a rising edge to trigger the Data Acquisition Loop

Duration: 5:59

 

Back to Top

13. Custom Analog Triggering in LabVIEW FPGA

In LabVIEW FPGA, you can configure the exact type of trigger condition you need, based on the value of analog input channels.

  • Continuously monitor an analog input channel and make use of only samples that are above a certain user-defined threshold
  • Implement an “OR” trigger to specify multiple trigger conditions within FPGA hardware

Duration: 7:16

 

Back to Top

14. Configuring Independent Analog Channels in LabVIEW FPGA

Most data acquisition devices are designed to share sample clocks and triggers, but with LabVIEW FPGA, you can implement different timing engines in hardware, and achieve true independent operation.

  • Use parallel loop structures to control independent analog input and output channels
  • Configure different sample clocks and alarm conditions without affecting other I/O channels

Duration: 7:42

 

 

Back to Top

15. Additional Resources

View additional resources to get you up and running with LabVIEW FPGA and reconfigurable I/O (RIO) hardware:

LabVIEW FPGA Developer Center - links to various online training and development resources for new, intermediate, and advanced LabVIEW FPGA developers

LabVIEW FPGA Product Support Page

Compact RIO Developers Guide - View recommended architectures and best practices to get started with CompactRIO

Use the LabVIEW Skills Guide to build a learning plan and find resources to help meet your software and hardware needs

 

 

Back to Top

Customer Reviews
6 Reviews | Submit your review

Very helpful  - Jun 9, 2017

A very helpful tutorial, thank you!

Video doesnot work  - May 16, 2017

All videos does not work in IE, Firefox and Chrome.

Doku ->Print  - Sep 22, 2016

When i try to print ind pdf-Printer there are only empty papers als print in a printer?

Videos don't seem to work neither in chrome or firerox  - May 18, 2016

Where are the videos? I only get a little box in ie when trying to see the videos.

It is very useful for Embedded Engineers.  - Jan 14, 2015

The LabVIEW, Real Time module and FPGA module are very useful for embedded engineers. The concept to prototype will be achieved in short time.

Very good presentation  - Jan 22, 2014

View more reviews

Bookmark & Share


Ratings

Rate this document

Answered Your Question?
Yes No

Submit