Top Banner
11/12/07 1 FrameWork Logic and MATLAB Board Support Package Dan McLane Billy Kao Innovative Integration
45

FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Apr 23, 2018

Download

Documents

vuongkiet
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

11/12/07 1

FrameWork Logic andMATLAB Board Support Package

Dan McLaneBilly Kao

Innovative Integration

Page 2: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

FrameWork Logic and MATLAB Products

• Innovative Integration offers– FrameWork Logic for traditional VHDL design using Xilinx ISE software– Support for MATLAB/Simulink and Xilinx System Generator based designs– Extensive II VHDL IP cores

• Results– Rapid application development– Smooth integration of custom logic in II Framework– Real time testing and debugging of algorithms using ChipScope Pro and

MATLAB/Simulink

Page 3: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

MATLAB Board Support Package

Page 4: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Bridge to the Real World - System Generator/Simulink

• Bit true, cycle true• Simulation => Validation

=> Implementation in Simulink environment

• Hardware-in-the-loop

BSP

Features

Page 5: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Start Your Design in Simulink

Page 6: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Xilinx System Generator

Page 7: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

System Modeling in Simulink

Page 8: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

System Modeling in Simulink

• Visualized debugging tools • Reliable IP cores• No multiple clock domain issues

Page 9: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Cores from Various Sources

Page 10: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Design Flow in Simulink

Page 11: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Design Flow Comparison

Traditional VHDL CodingXilinx System Generator

Source: DSP Magazine, May 2006 p.37

• System level design, no hardware engineer needed

Page 12: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

II MATLAB BSP

Advantage- Save more than 80% time of hand-coding VHDL System Generator : 45.5 hrs Traditional VHDL : 782 hrs Reason: clocking, defect discovery, and component interfaces- Graphical interfaces for easy project construction- Visual tools for easy debugging- Fast simulation ability (Support Modelsim and Chipscope)- Free

Now support: Quadia, Quixote, PMC UWB, TX, DR, P25M, X3 Family

Source: DSP Magazine, May 2006 p.40

Page 13: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

MATLAB BSP Reduces Verification Time

Page 14: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Co-Sim Integrates MATLAB Design Tools with Hardware

• Access the hardware DIRECTLY from MATLAB

• Use powerful MATLAB tools for DSP design and test

• Xilinx System Generator tools link Simulink to the hardware through the BSP

• Hardware Co-simulation radically improves system design and test by reducing design and debug effort

Page 15: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Start and Verifythe design usingXilinx Blocksets

Combine the designwith peripheral

devices on boardHardware Cosim

II blocksets

Integrate thedesign into Logic

Design Flow

–Step 1. Start your design in Simulink–Step 2. Attach II blocks to the design–Step 3. Hardware co-simulation–Step 4. Implementation

Page 16: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

ADC0 ADCINTF

Gain\offset

FIFO User'sDesign

ADC0

FIFO

splitter

User'sDesign

FIFO

FIFO

DDRINTF

DDRINTF

packetizer RIO

J4

12

12

@125MHz

FPGAMatlab/Simulink@150MHz@150MHz

Gain\offset

32 32 32

32in_16out

32in_16out

16in_32out

16in_32out

joiner

16

SBSRAM INTF

SBSRAM INTF

PMC UWB Block Diagram

Page 17: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

II PMC UWB Library

Page 18: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Hardware Co-simulation

• Bit true, cycle true, hardware-in-the-loop simulation

• Fast simulation with infrastructures on the board compilation

Page 19: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Compilation Flow

Top-LevelVHDL file

Synthesis

NGC file

User's Design

NGC file

NGDBUILD

PAR

BITGEN

Page 20: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Demo

Page 21: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Build Your Design

Page 22: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

ADC0 ADCINTF

Gain\offset

FIFO User'sDesign

ADC0

FIFO

splitter

User'sDesign

FIFO

FIFO

DDRINTF

DDRINTF

packetizer RIO

J4

12

12

@125MHz

FPGAMatlab/Simulink@150MHz@150MHz

Gain\offset

32 32 32

32in_16out

32in_16out

16in_32out

16in_32out

joiner

16

SBSRAM INTF

SBSRAM INTF

PMC UWB Block Diagram

Page 23: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

NEW Feature – System Configuration Panel

• Easy configuration• No software needed• Capability of changing settings

on the fly

Page 24: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Integrating MATLAB Core into FrameWork Logic

FrameWork Logic

MATLAB

Replace Gateways with constants for final implementation

Page 25: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Design in MATLAB/Simulink

Page 26: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

FrameWork VHDL Logic Design

Page 27: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

II FrameWork Logic

• Framework Logic Features– Comprehensive board support packages in MATLAB and VHDL for FPGA

signal processing development – Hardware interface layer design structure allows rapid integration of application

specific code– Designed to support real time signal processing and data acquisition

• Complete end-to-end simulation testbench using ModelSim• Reference designs illustrating hardware use

– Saves time by providing a simplified access to the hardware and data stream– Supported by software for control, data logging and signal generation– Get you off to a quick start

➔ Reduced design, test and verification time

Page 28: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Innovative IP Core Library

Page 29: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Xilinx IP Cores

Page 30: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Example: FIR Filter in UWB

● Two 12-bit 250 MSPS AD converters● Virtex-II Pro FPGA, 4 Million gates● 64MB SDRAM plus 2MB SRAM for FPGA● Sample clocks: dual external or on-board PLL

● Software Defined Radio (SDR) ● Electronic Warfare● Advanced RADAR● Telecom IP development

Page 31: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

VHDL Design Flow

Step 1 : Define system requirements and architecture

● Define DSP, data analysis, triggering and system control functions

● Define accuracy and dynamic range requirements

● Identify real-time constraints such as data rates and processing rates

● Identify system data buffering requirements

● Estimate logic usage

Page 32: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Step 2 – Create cores and logic

● Create new logic and cores using Xilinx Core Generator, MATLB, or VHDL● Simulate and verify core functionality

Page 33: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Step 3 – Add functions to FrameWork Logic

Custom Application

Page 34: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Step 4 - Simulation

• Simulate the logic using testbench

• FrameWork Logic provides complete testbench with models for A/D, memories, etc

• Saves time before debug!

Page 35: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Xilinx ISE Environment

Sources

Processes

Project Summary

Console

Page 36: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Step 5: Compile and Download Logic

Page 37: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Step 6 - Debug

Page 38: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Software Defined Radio

Page 39: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Software Defined Radio

• Wireless communication issue today– Compatibility & Spectrum usage

• Purpose– Produce a radio that can receive and transmit a new form of radio protocol by

running new software• Key

– Software- programmable hardware

Page 40: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Digital Down Converter (DDC)

N=3, R=64

Normalized freq0.5 / 64 = 0.0078

C(z)

G(z)

B6

Page 41: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

Our DDC Solution

• MATLAB Simulink design for FPGA• Supports up to 208 MSPS with >90 dB dynamic range• 10 kHz tuning resolution

Page 42: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

MATLAB Simulation (Bit True, Cycle True)

Page 43: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

II Digital Receiver (SDR)

Clock circuitry

A/D12-bit

130/208 MSPS

A/D12-bit

130/208 MSPS

A

B

Clk CIC30:1

NCO

MixerA/D Mux

RegistersA/D input select

Mixer FreqRev Code

StatusGainTest

20 channels of I/Q @ 4.33 MSPS

32--bit

J4Link

UWB1 of 2

CommandChannel

1 of 20 channels

A/D Intf

A/D Intf

Gain

PCI FPGA

DDR RAM16Mx16

DSP

Quadia Logic1 of 2

DSP

CFIR2:1

Overflowdetect

1 of 20 channels

Interrupts

10 channels of I/Q @

1.0833MSPS16-bit

Interrupts

Triggering

Spectral

invert

Register Spectral Inversion

20-bit

TestMux

TestGenerator

TestMux

RegisterTest Controls

2-bit

Dual QueueVFIFO

FIFO

Register Rev Codes

StatusRegister DCMs locked

Clock DCMIn = DSP1 EMIF Clk

Out = DSP1 EMIF Clk

Clock DCMIn = DSP2 EMIF Clk

Out = DSP2 EMIF Clk

DSP1 Registers

DSP2 Registers DRR FIFO Thresh

J4 link

Reset

Data Flow Controller

Overflowdetect

FIFO

FIFO

10 channels of I/Q @

1.0833MSPS16-bit

FIFO

PFIR2:1

TestGenerator

Page 44: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

PMC UWB: 2x 250 MSPS A/D + VP40 FPGA

Quadia: 4x TI '6416 DSP + 2x VP40 FPGA + 2x PMC sites

Software Defined Radio Results

• SDR implemented on Quadia and UWB

• Example results shown for 97.5MHz input, 130 MSPS sampling, channels tuned to 97.5+n*10KHz

Page 45: FrameWork Logic and MATLAB Board Support Package · FrameWork Logic and MATLAB Board Support Package Dan McLane ... Traditional VHDL Coding Xilinx System Generator ... FIR Filter

II SDR Support

• Logic designs and supporting software are available for application development

• Full application note available