Developing Embedded Applications using CompactRIO and LabVIEW FPGA Course Overview

Developing Embedded Applications using CompactRIO and LabVIEW FPGA course delivers a learning experience for designing, prototyping, and deploying reliable FPGA code for your application using NI comactRIO. At the end of the course, you will be able to translate your embedded system requirements into a scalable software architecture, choose appropriate methods for inter-process communication, design, deploy and replicate your FPGA code for your embedded application.

 

Course Last Release Date or Version Number: 2023

Course Details:

Developing Embedded Applications using CompactRIO and LabVIEW FPGA Course Outline

LessonOverviewTopics
Programming Using LabVIEW FPGALearn about FPGA common usages, how to work with them in LabVIEW, its user interfaces, compilation details and basic optimizations.
  • Introduction to FPGA
  • Developing an FPGA VI
  • Interactive Front Panel Communication 
  • Selecting an Execution Mode
  • Compiling an FPGA VI
  • Compilation Considerations
  • Basic Optimizations
Using FPGA I/O and TimingExplore techniques for accessing and controlling I/O as well as the timing of the FPGA VI.
  • Configuring FPGA I/O
  • Exploring I/O Types
  • Exploring Analog CompactRIO I/O
  • Handling FPGA I/O Errors
  • Setting Loop Execution Rates
  • Synchronizing C Series Modules
  • Creating Delays between Events
  • Measuring Time between Events
  • Benchmarking Loop Periods
Signal Processing in LabVIEW FPGAExplore data types, methods and built-in or external functions to process signals with the FPGA.
  • Using Fixed-Point Data Type
  • Using Single-Precision Floating Point
  • Performing FPGA Math & Analysis
  • Integrating Third-Party Intellectual Property (IP)
Inter-process Communication in LabVIEW FPGAExplore the available communication mechanisms for processes running in the FPGA
  • Exploring Parallel Loops on FPGA
  • Transferring Latest Data (Tag)
  • Transferring Buffered Data (Stream, Message)
Communicating between the FPGA and Real-Time VIsExplore the available mechanisms to transfer data between the FPGA and the RT VIs
  • Programmatically Communicating with the FPGA VI from the Real-Time VI
  • Deploying an FPGA VI
  • Transferring Latest Data (Tag)
  • Transferring Buffered Data (Stream, Message)
  • Synchronizing the RT VI and FPGA VI
  • Implementing an FPGA Watchdog
Exploring Common FPGA OptimizationsLearn about optimizations for the FPGA performance and resource usage.
  • Optimization Use Cases
  • Optimization Techniques for FPGA Size
  • Optimization Techniques for Speed/Throughput
  • Executing Code in Single-Cycle Timed Loops
  • Implementing Pipelining
  • Exploring Four-Wire Handshaking
Debugging and Testing in FPGALearn techniques for debugging and testing your FPGA VI and explore some additional resources.
  • Debugging and Testing FPGA Code
  • Investigating Additional Resources

Get started with Developing Embedded Applications using CompactRIO and LabVIEW FPGA today