High-Level Synthesis with LabVIEW FPGA - … Synthesis with LabVIEW FPG… · LabVIEW, LabVIEW...

Post on 04-Oct-2018

311 views 14 download

Transcript of High-Level Synthesis with LabVIEW FPGA - … Synthesis with LabVIEW FPG… · LabVIEW, LabVIEW...

ni.com

High-Level Synthesis with LabVIEW FPGA

National Instruments

2 ni.com

• Introduction

• NI RIO technology

• LabVIEW FPGA & IP Builder

• RIO Hardware Platform

• Application

Agenda

3 ni.com

An Ideal Embedded Architecture

• Floating-point processing

• Communications • Multicore technology

• High-speed control & processing

• Reconfigurable hardware

• Reliability

• Low-level access to hardware

• Custom timing & triggering

• Modular I/O

I/O FPGA Processor

I/O

I/O

I/O

4 ni.com

I/O

The Challenge

FPGA Processor

I/O

I/O

I/O

• Low-level tools Verilog & VHDL

• Fixed-point algorithms

• Custom drivers and middleware

• Multicore programming challenge

• Custom timing for different types of I/O

• Custom digital interface/buses

5 ni.com

Build vs. Buy

Build

• Custom HW/SW solution

• Use a lot of in-house resources

• Ability to get exactly what you want

Buy

• Off-the-shelf HW/SW solution

• Use less resources because systems are pre-built

• Often get more than you need

6 ni.com

Volume per year

Cost

100 1000 10000

Buy

Build

Now with new versions of sbRIO: • Gives the BUILD customer a cheaper OTS solution • Gives the BUY customer a more flexible OTS solution

Build vs. Buy

7 ni.com

Enet USB RTOS

Analysis

Logging Comm

Multicore

Analog I/O Digital I/O

Comm I/O

3rd party I/O

Motion I/O

IPNet

Analysis IP

3rd party IP

Control IP

Comm IP Timing IP

Packaged Board-Level

NI RIO Technology Platform

Processor FPGA I/O

NI RIO Hardware

8 ni.com

Enet USB RTOS

Analysis

Logging Comm

Control

Analog I/O Digital I/O

Comm I/O

3rd party I/O

Motion I/O

IPNet

Analysis IP

3rd party IP

Control IP

Comm IP Timing IP Bus IP

LabVIEW FPGA • Fixed-point processing • Built-in functions for analysis, control and communications • Ability to integrate VHDL

Drivers and middleware • Pre-built I/O and communication drivers • DMA, single-point communication between processor and FPGA • Ability to create custom I/O

LabVIEW, LabVIEW Real-Time •Multicore programming • Built-in functions for analysis, control and communications • Ability to integrate C code and text-based math

Processor FPGA I/O

NI RIO Software

9 ni.com

NI RIO Software Benefits

• Graphical programming for multicore/real-time processors

and FPGAs

• Advanced signal processing and control algorithms

• Built-in drivers and middleware for I/O and

communication

• Open for integration of existing code/IP

10 ni.com

LabVIEW

C, C++

LabVIEW

FPGA

Vivado HLS

VHDL

Programming

HLS(High-Level Synthesis)

11 ni.com

Counter Analog I/O I/O with DMA

LabVIEW FPGA VHDL 66 Pages ~4000 lines

LabVIEW FPGA

12 ni.com

VHDL Generation Analysis

Logic Reduction

Place and Route

Timing Verification

Generation

Download/Run

LabVIEW FPGA Code FPGA Logic Implementation

Translation Optimization Synthesis Bit Stream

LabVIEW FPGA

13 ni.com

LabVIEW FPGA IP Builder

• Add-on Tool for LabVIEW FPGA

• Rapidly develop high performance algorithms for FPGAs

• Quickly explore design tradeoffs using directives

• Reuse IP to meet new design requirements

LV FPGA IP Builder VI LV FPGA VI

Manual optimization required Optimization using high-level synthesis

14 ni.com

Create Algorithm VI

Specify Directives

Generate performance estimation

Generate Design

Use within top-level LV

FPGA VI

• Use dataflow programming • Limited functions palette

LabVIEW FPGA IP Builder User Flow

15 ni.com

Create Algorithm VI

Specify Directives

Generate performance estimation

Generate Design

Use within top-level LV

FPGA VI

LabVIEW FPGA IP Builder User Flow

16 ni.com

Create Algorithm VI

Specify Directives

Generate performance estimation

Generate Design

Use within top-level LV

FPGA VI

LabVIEW FPGA IP Builder User Flow

17 ni.com

Create IP VI

LabVIEW FPGA IP Builder User Flow

Create Algorithm VI

Specify Directives

Generate performance estimation

Generate Design

Use within top-level LV

FPGA VI

Generate HDL

Choose VI and Directives

18 ni.com

LabVIEW FPGA IP Builder User Flow

Create Algorithm VI

Specify Directives

Generate performance estimation

Generate Design

Use within top-level LV

FPGA VI

• Integrate into Single-Cycle Timed Loop • Add I/O, DMA FIFOs, Host Communication, etc.

21 ni.com

Packaged Board-Level

NI RIO Hardware

NI RIO Hardware Benefits

• Reconfigurable, off-the-shelf hardware

• Breadth of high-quality I/O (analog, motion, vision, RF,…)

• Variety of packaged and board-level form factors

• Open platforms for integration with 3rd-party hardware

22 ni.com

NI RIO Technology Curve

CompactRIO

Single-Board RIO

Multicore CompactRIO

PC RIO / R Series

PXI / FlexRIO

Processor FPGA I/O

I/O

Custom I/O

I/O

Deploy

Perfo

rmance

23 ni.com

CompactRIO

Enet

USB Analysis

Logging Comm

Control

Analog I/O Digital I/O

Comm I/O

3rd party I/O

Motion I/O

IPNet

Analysis IP

3rd party IP

Control IP

Comm IP Timing IP

-40 to 70 deg C Hardware and OEM Services Rugged Certifications/Ratings Up to 8 I/O Slots

VxWorks RTOS

(Xilinx Virtex/Spartan Class) (Industrial/Embedded Class) (Real-Time, Freescale) Processor FPGA I/O

Packaging

• Most rugged platform

• Compact size, -40 to 70 ⁰C

• Industrial and Embedded I/O

• Analog, digital, motion, communication,…

• Integrated FPGA in chassis

24 ni.com

CompactRIO

25 ni.com

Extreme Ruggedness

• -40 to 70 °C temperature range

• 50g shock, 5g vibration

Low Power Consumption

• 9 to 35 VDC power, 7-10W

Real-Time Processor 신뢰할 수 있는 측정, 분석, 제어, 연결성을 제공 (Maximum Specification) CPU – Intel i7 1.33 GHz RAM – 2 GB DDR3 Storage – 32 GB Enet, RS232, USB

I/O Modules 센서의 쉬운 연결 신호조절 기능 내장 아날로그 I/O 디지털 I/O 모션 드라이버 통신 모듈

Reconfigurable FPGA 40MHz 고속 클럭의 사용자 정의 가능한 제어 및 I/O 구성 Xilinx Spartan-6 LX150

CompactRIO

26 ni.com

작은 사이즈

10.3 x 9.7cm

보드 입출력

전원

USB

Ethernet

RS232

CAN

RIO 기본 구성

Real-Time 프로세서

프로그래밍 가능한 FPGA

FPGA 디지털 입출력

RIO Mezzanine Card (RMC)

FPGA 디지털 입출력

USB

프로세서 입출력

Single-Board RIO

27 ni.com

RIO Architecture & NI LabVIEW

NI Single-Board RIO NI CompactRIO PC RIO/R Series PXI RIO/FlexRIO

Processor

Smart Grid Renewables Life Sciences Industrial Control

FPGA

I/O

I/O

I/O

I/O

28 ni.com

Embedded Design Industrial Control &

Measurements Test &

Communications

•Embedded prototyping a •Medical devices •Renewable Energy •Robotics

•Machine prototyping •Industrial control •Optimized automation

•RF, wireless and custom test •Hardware-in-the loop (HIL)

NI RIO Applications and Industries

29 ni.com

NI LabVIEW RIO Evaluation Kit

• RIO Evaluation hardware

• 400 MHz Real-Time Controller

• Ethernet, CAN, USB, SDCard,

• RS232 & RS485 serial ports

• AI, AO, DIO, LCD Screen

• Step-by-Step Tutorials

• Cables and accessories

• 90-day extended evaluation

version of NI LabVIEW, Real-Time and FPGA