![Page 1: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/1.jpg)
Incorporating FPGAs in Test Applications
NI Technical Conference
Long Island Nov 10, 2009
Terry Stratoudakis, P.E.
ALE System Integration
![Page 2: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/2.jpg)
Agenda
Introduction to FPGAs in test
FPGAs in test applications
New FPGA-enabled applications
FPGA-enhanced applications
FPGA for test hardware
Examples
Programming in LabVIEW FPGA for test
applications
![Page 3: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/3.jpg)
Introduction to FPGAs in Test
![Page 4: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/4.jpg)
Software-Defined Test System Architecture
Software Hardware
DriverApplication
Measurement
Analog or
Digital
Front End
Bus Interface
and I/O
Control
Standard Virtual
Instrumentation
Model
10011011
![Page 5: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/5.jpg)
Field Programmable Gate Arrays
Introduced in 1987
Customizable Integrated Circuit (IC)
Similar to Application Specific ICs (ASICs)
No Operating System
Configured with Hardware Descriptor Language (HDL)
Parallel Execution
Millions of configurable gates on a single chip
![Page 6: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/6.jpg)
Who makes FPGAs?
Actel
Aeroflex UTMC
Lattice Semiconductor
And others...
*Market leadershttp://seekingalpha.com/article/85478-altera-and-xilinx-report-the-battle-continues
Altera*
Atmel
Xilinx*
![Page 7: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/7.jpg)
FPGA Configuration Tools
Direct: Hardware Description Languages (HDL)
akin to assembly language
Examples: Verilog and VHDL
High-Level
FPGA design accessible to software engineers
Text based using C or Matlab with concurrency models
Examples:
Graphical/Flow based with LabVIEW FPGA
![Page 8: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/8.jpg)
VHDL Adder Example
![Page 9: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/9.jpg)
C-Based Example Image Filter excerpt*
![Page 10: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/10.jpg)
Graphical Based Matrix Math Example*
![Page 11: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/11.jpg)
FPGA Technology
I/O Blocks
Programmable
Interconnects
Logic
Blocks
![Page 12: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/12.jpg)
FPGA Logic Implementation
A
B
C
D
FEE
Implementing Logic on FPGA: F = {(A+B)CD} E
LabVIEW FPGA Code
![Page 13: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/13.jpg)
A
B
C
D
FE
True Parallelism
YW X
Z
![Page 14: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/14.jpg)
FPGA-Based Test System Architecture
System intelligence and decision making can be
moved from software to hardware
Software
Driver
Open
FPGA
System
Model
NI Hardware
Measurement
Analog or
Digital
Front End
Bus Interface/
Programmable
FPGA
![Page 15: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/15.jpg)
Benefits of FPGAs in Test Systems
High Reliability Designs implemented in hardware
Low Latency Run algorithms at deterministic rates down to 5 ns
Reconfigurable Create DUT / application-specific personalities
High Performance Computational abilities open new possibilities for measurement and data processing speed
True Parallelism Enables parallel tasks and pipelining, reducing test times
![Page 16: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/16.jpg)
FPGAs in Test Applications
New FPGA-enabled applications
![Page 17: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/17.jpg)
Stimulus
RFID Testing
Response
RFID
Reader (Emulated)
RFID
Tag (DUT)
![Page 18: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/18.jpg)
RFID Testing Response-Stimulus
Testing an RFID tag requires emulating the tag reader
Interrogates and responds to tag within microseconds
Coding/decoding, modulation/demodulation, and
decision making must be completed in hardware to
meet timing Closed-Loop Test
![Page 19: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/19.jpg)
Real-time spectral measurements
RF
Processing
![Page 20: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/20.jpg)
FPGAs in Test Applications
FPGA-enhanced applications
![Page 21: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/21.jpg)
A Simple Digital Protocol: I2C
Integrated
Circuit
SDA
SCL
Pattern Generator
Logic Analyzer
Traditional Approach
Static stimulus and expected responses
Difficult to accommodate multiple clock domains
010ZZ01
0101101
![Page 22: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/22.jpg)
A Simple Digital Protocol: I2C
Integrated
Circuit
SDAProtocol-Aware
Tester
Protocol-Aware Approach
Address, Data, Address, Receive
Response Data
Intelligence built into the testerAccommodates wait cycles
Easy to cross clock domains
Test with high-level commands Real-world scenario
Inherently easier to program
Protocols
![Page 23: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/23.jpg)
System Control
(FPGA)
DUT
PXI Data or Trigger Bus
Instrument
Controller
(SMC)
Instrument
Controller
(SMC)
AD
C
DA
CTransfer of system timing and decision making from software to
hardware
Digital Communication
Test System
Control
![Page 24: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/24.jpg)
FPGA for Test Application Areas
Real-time / co-processing
Data reduction / in-line processingProcessing
Protocol-aware ATE
Interfacing (digital or modulated)Protocols
Response-stimulus test
Hardware-in-the-loop (HIL)
Closed-Loop Test
Digital DUT interfacing and command
Complex triggers
Test System Control
![Page 25: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/25.jpg)
FPGA for Test Hardware
![Page 26: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/26.jpg)
COTS Integration of FPGAs
Example: NI FlexRIO (?)
![Page 27: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/27.jpg)
NI FlexRIO System Architecture
Synchronization
Clocking/triggers
Power/cooling
Data streaming
PXI PlatformNI FlexRIO FPGA Module
Virtex-5 FPGA
132 digital I/O lines
128 MB of DDR2 DRAM
NI FlexRIO Adapter Module
Interchangeable I/O
Customizable by users
Adapter Module
Development Kit (MDK)
PXI
![Page 28: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/28.jpg)
NI FlexRIO FPGA
Virtex-5 FPLX30,
Direct access132 sidifferentia
400 Mbps
1 Gbps
128 MB2x 64
800 MB/s
Adapter mo
![Page 29: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/29.jpg)
NI FlexRIO Adapter Module
Card edge connector
Defines I/O for NI
LabVIEW FPGA
Self identification
Custom connectivity
Adapter Module
Development Kit (MDK)
![Page 30: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/30.jpg)
NI FlexRIO Adapter Module Options
Complete
integration with
LabVIEW FPGA
R Series-like
experience
Expands NI
I/O breadth
Custom and
application-
specific modules
Requires PCB
and HDL design
work
Supported
through MDK
NI ModulesThird-Party
Modules
Custom
Modules
![Page 31: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/31.jpg)
NI 6581
High-Speed Digital Adapter Module
100 MHz digital I/O
54 single-ended channels
Selectable voltage levels
1.8, 2.5, 3.3 V (5 V compatible)
External DIO voltage reference
1.8 to 5.5 V
Configurable by connectorNI 6581
![Page 32: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/32.jpg)
NI 6585
200 MHz LVDS Digital Instrument
200 MHz digital I/O
32 / 42 LVDS channels
200 Mbps SDR, 300 Mbps DDR
PXI-6585R
![Page 33: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/33.jpg)
Gigabit Ethernet interfaces
MAC and Ethernet frames
Fault-injection software
Camera Camera Link Interface
High-speed image processing
Low-latency control
IEEE-1394b interface
3 ports at 800 Mbps
100 MHz vector digital I/O
8 ch. per-pin PMU
NI FlexRIO Partner Modules
![Page 34: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/34.jpg)
Custom NI FlexRIO Adapter Module
Development Kit (MDK)
6 W Power electrical and thermal limit
3.3 V (1 A) and 12 V (200 mA) rails
LVTTL (3.3 V), LVCMOS (1.2, 1.5, 1.8, 2.5, 3.3 V), LVDCI (1.5, 1.8 V, 2.5, 3.3 V), LVDS (2.5 V)
400 Mbps (Single-Ended), 1 Gbps (Differential)
I2C EEPROM for module identification and user-defined storage
NI Mechanical Enclosures
![Page 35: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/35.jpg)
Demo: Digital Filtering
FIR Filter
![Page 36: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/36.jpg)
NI PXIe-5641R RIO IF Transceiver
2 IF Inputs and 2 IF Outputs
14-bit ADCs and DACs
20 MHz Instantaneous
Bandwidth (25 MS/s I/Q)
IFs from 250 kHz to 80 MHz
Xilinx Virtex-5 SX95T
LabVIEW-programmable
FPGA
![Page 37: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/37.jpg)
FPGA for Test Hardware
How NI FlexRIO and the PXIe-5641R fit
into FPGA for test applications
![Page 38: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/38.jpg)
RFID Testing Response-Stimulus
FPGA on PXIe-5641R IF Transceiver can perform
necessary processing
Upconverter and downconverter condition the signal for
the correct RF frequency of the tag
PXI-5610
UpconverterRFID
TagPXI-5600
Downconverter
![Page 39: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/39.jpg)
A Real-Time Spectrum Analyzer
![Page 40: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/40.jpg)
A Simple Digital Example: I2C
Integrated
Circuit
SDA
SCL
Protocol-Aware Approach
Address, Data, Address, Receive
Response Data
Intelligence built into the testerAccommodates wait cycles
Easy to cross clock domains
Test with high-level commands Real-world scenario
Inherently easier to program
![Page 41: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/41.jpg)
Sparkle Code Counter
Single-Cycle Timed Loop
I/O Node
![Page 42: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/42.jpg)
Digital FilterI/O Node
I/O Node
IP
Integration
Node
FIFO
FIFOFIFO
FIFO
![Page 43: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/43.jpg)
Bit Error Rate Test
DRAM Read
I/O Node
I/O Node
Multiplexer
Delay
![Page 44: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/44.jpg)
3 GS/s Trigger for Data Reduction3 GS/s /
16
I/O Nodes
~0
Delay
~0
Delay
Pip
elin
e
![Page 45: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/45.jpg)
Real-Time Frequency Measurements
Stage 1 Stage
2
Stage 3 Stage 4
![Page 46: Incorporating FPGAs for Test Ap · Programming in LabVIEW FPGA for test applications. Introduction to FPGAs in Test. Software-Defined Test System Architecture Software Hardware Application](https://reader033.vdocument.in/reader033/viewer/2022042810/5f9b13240a4e8a72025419bb/html5/thumbnails/46.jpg)
Conclusions
FPGAs enable some types of test applications
not previously possible, and make others faster
LabVIEW FPGA represents a powerful hardware
programming paradigm for test engineers and
system integrators