Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow...

18
© 2004 Altera Corporation Rapid SDR Waveform Development in FPGAs Using DSP Builder Rapid SDR Waveform Development in FPGAs Using DSP Builder Joel A. Seely – Altera Steven W. Cox – General Dynamics C4 Systems Joel A. Seely – Altera Steven W. Cox – General Dynamics C4 Systems

Transcript of Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow...

Page 1: Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow Allows You to Rapidly Identify Problems & Troubleshoot −Reduces Risk, Time & Resources

© 2004 Altera Corporation

Rapid SDR Waveform Development in FPGAs Using DSP Builder

Rapid SDR Waveform Development in FPGAs Using DSP Builder

Joel A. Seely – AlteraSteven W. Cox – General Dynamics C4 Systems

Joel A. Seely – AlteraSteven W. Cox – General Dynamics C4 Systems

Proceeding of the SDR 04 Technical Conference and Product Exposition. Copyright © 2004 SDR Forum. All Rights Reserved

Page 2: Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow Allows You to Rapidly Identify Problems & Troubleshoot −Reduces Risk, Time & Resources

2© 2004 Altera Corporation - Confidential

AgendaAgendaIntroductionTraditional Waveform DesignWaveform Design Using Higher-Level Tools (DSP Builder)Example Design & StepsEfficiency AnalysisConclusion

Proceeding of the SDR 04 Technical Conference and Product Exposition. Copyright © 2004 SDR Forum. All Rights Reserved

Page 3: Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow Allows You to Rapidly Identify Problems & Troubleshoot −Reduces Risk, Time & Resources

3© 2004 Altera Corporation - Confidential

IntroductionIntroductionSoftware-Defined Radios Are Becoming UbiquitousThree Major Programmable Components− GPP, DSP, FPGA

FPGA is Taking on More “Heavy Lifting” Computationally− Lowering Burden of DSP & GPP

As FPGA Designs Become More Complex, New Tools Are RequiredDSP Builder Is an Example of One of These Tools− The MathWorks’ Simulink Capabilities− Fixed Point Blockset

Interfaces to Third-Party Tools to Generate Synthesizable FPGA HDL

− Allows for Design, Simulation & Verification Prior to Hardware Implementation

Proceeding of the SDR 04 Technical Conference and Product Exposition. Copyright © 2004 SDR Forum. All Rights Reserved

Page 4: Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow Allows You to Rapidly Identify Problems & Troubleshoot −Reduces Risk, Time & Resources

4© 2004 Altera Corporation - Confidential

Traditional FPGA Waveform DesignTraditional FPGA Waveform DesignStart with System-Level Specifications & SimulationsUse These to Hand-Code HDLTypically System Designer Had No Insight Into FPGA’sImplementation DetailsDesigner Needed to be an Expert in HDL—Not the sort of Expertise an Engineer Would Pick Up OvernightManual HDL Coding is Inefficient as Waveforms Become More Complex− Tedious− Time-Consuming− Potential for Lots of Bugs− Increased Development Time & Cost

Proceeding of the SDR 04 Technical Conference and Product Exposition. Copyright © 2004 SDR Forum. All Rights Reserved

Page 5: Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow Allows You to Rapidly Identify Problems & Troubleshoot −Reduces Risk, Time & Resources

5© 2004 Altera Corporation - Confidential

Traditional Waveform Design FlowTraditional Waveform Design Flow

Waveform MATLAB/Simulink

Floating Point Model

Timing Verified?

Waveform Requirements

Waveform Detailed Design

Documents

Verify Against Floating Point Model

using ModelSim/Quartus® II Software

Verify VHDL Timing using

ModelSim

Compile VHDL Using

Quartus II Software

Test Waveform Modem in Lab

Waveform FPGA Design/Docs

Hand Code in VHDL, Verilog, or

Schematic Capture

NoYes

Simulate to Validate

Proceeding of the SDR 04 Technical Conference and Product Exposition. Copyright © 2004 SDR Forum. All Rights Reserved

Page 6: Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow Allows You to Rapidly Identify Problems & Troubleshoot −Reduces Risk, Time & Resources

6© 2004 Altera Corporation - Confidential

DSP Builder – Higher-Level Design ToolDSP Builder – Higher-Level Design ToolDeveloped to Address Issues in Complex System Development New Design Flow Needed− Define Architecture− Implement / Design / Re-Use Modules− Integrate of Modules− Translate Design in FPGA − Verify FPGA Design in the Lab

Proceeding of the SDR 04 Technical Conference and Product Exposition. Copyright © 2004 SDR Forum. All Rights Reserved

Page 7: Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow Allows You to Rapidly Identify Problems & Troubleshoot −Reduces Risk, Time & Resources

7© 2004 Altera Corporation - Confidential

Waveform Design Flow Using DSP BuilderWaveform Design Flow Using DSP BuilderDefine

Architecture

Design & Implement Modules

Integrate Modules

Translate Design to

Altera FPGA

Verify Design in the Lab

Protocol Definition● Start with Existing Floating Point Simulink Model

Sub Blocks● Design in DSP Builder Blocks, Get Data From SImulink Model● Timing/Detail Design Uses ModelSim● Run DSP Builder in SImulink when Verifying Data

All Blocks● Divide Simulation in Fast & Slow Clocks Rates if Possible● Use Sims to Examine Boundary Conditions in Design & Timing Issues in ModelSim● Use DSP Builder to Run Sims & Verify Data & for Initial Sizing & Synthesize

FPGA Design● Remove Stimulus from Design for Synthesis● Generate Quartus Symbol with DSP Builder Script, Insert Into Total Design & Compile● Check Timing

Lab Verification● Check Data with Logic Analyzer● Store Data from Logic Analyzer to file● Analyze Final Data from Logic Analyzer in Simulink

Proceeding of the SDR 04 Technical Conference and Product Exposition. Copyright © 2004 SDR Forum. All Rights Reserved

Page 8: Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow Allows You to Rapidly Identify Problems & Troubleshoot −Reduces Risk, Time & Resources

8© 2004 Altera Corporation - Confidential

Example Design – MIL-STD 110AExample Design – MIL-STD 110AStarting Point for the SDR ArchitectureUsed the 1,200 Bits/Second Transmit Mode of the SpecificationFloating-Point Model Was Used For− Guideline & Comparison− Initial Sizing− Architecture Mapping Estimates

Proceeding of the SDR 04 Technical Conference and Product Exposition. Copyright © 2004 SDR Forum. All Rights Reserved

Page 9: Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow Allows You to Rapidly Identify Problems & Troubleshoot −Reduces Risk, Time & Resources

9© 2004 Altera Corporation - Confidential

1

Example Design – MIL-STD 110AExample Design – MIL-STD 110A

Data

FEC1 1clk Interleaver

2.4kHz

3,2,1Grey

Encode/Symbol

Formatter

Modulator16I, 16Q 3

3

3

3

Packet Formatter

Data from Simulink

clk PROM

Scrambler

●Format Symbol to 1, 2, 3 Bits

●Rate 1/2●Output Clock

Doubles

●Ping-Pong Memory●Syncs on Interleaver

Frames

●Mode Dependent Parameters

●Long/Short Formats

●Randomize Data According to Sequence

●Data/Sync Random Sequence

●LUT for Modulation●8 PSK

ConstellationMapper

PreambleGenerator

Proceeding of the SDR 04 Technical Conference and Product Exposition. Copyright © 2004 SDR Forum. All Rights Reserved

Page 10: Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow Allows You to Rapidly Identify Problems & Troubleshoot −Reduces Risk, Time & Resources

10© 2004 Altera Corporation - Confidential

Implementation/SimulationImplementation/SimulationUsed Altera DSP Builder & Simulink Toolbox BlocksetsUses Schematic EntryTies to Third-Party Simulators (ModelSim) for Timing Verification & ControlAutomated Creation of− HDL− Stimulus for Sub-Blocks− Scripts to Load & Compile the

Updated DesignStreamlines the Iterative Process of Simulating a Design

Do Schematic Capture of Design with DSP Builder in Simulink

Run DSP Builder to Generate HDL

Run Timing Analysis in ModelSim Using tcl Script Generated by DSP Builder

Analyze Data

Reiterate to Fix Errors

Proceeding of the SDR 04 Technical Conference and Product Exposition. Copyright © 2004 SDR Forum. All Rights Reserved

Page 11: Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow Allows You to Rapidly Identify Problems & Troubleshoot −Reduces Risk, Time & Resources

11© 2004 Altera Corporation - Confidential

Implementation/SimulationImplementation/SimulationFloating Point & DSP Builder Models are Compared & VerifiedDSP Builder Model & Floating-Point Models Are Run Separatelyin SimulinkCommands in Simulink Manipulate the DSP Builder Fixed-Point Data to Compare to the Floating-Point Model To Correct Errors, Update the Models in Simulink & Rerun the Simulations to Verify

Run DSP Builder Blocks in Simulink & Output Data to

Workspace

Compare & Analyze Data in Simulink Workspace

Reiterate to Fix Errors

Run Floating Point Simulink Model & Output

Data to Workspace

SimulinkModels

Proceeding of the SDR 04 Technical Conference and Product Exposition. Copyright © 2004 SDR Forum. All Rights Reserved

Page 12: Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow Allows You to Rapidly Identify Problems & Troubleshoot −Reduces Risk, Time & Resources

12© 2004 Altera Corporation - Confidential

IntegrationIntegrationData Validation Done in Simulink− DSP Builder Models are C Code− C-Code Simulators Run Faster than HDL

Interpretative Simulators

After Validation Preliminary Sizing & Synthesis Estimates Made− Provides an Early Alert for Sizing & Timing Constraints− Allows for Fixing Problems in the Early Stages of the

Design Cycle

Optimizations for Simulation During the Integration Phase− Changed Input Data Clock to 0.66 MHz (Instead of 1,200 Hz)

-> Faster Simulation− Decreased Bits/Frame to 1,440 to 120

Proceeding of the SDR 04 Technical Conference and Product Exposition. Copyright © 2004 SDR Forum. All Rights Reserved

Page 13: Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow Allows You to Rapidly Identify Problems & Troubleshoot −Reduces Risk, Time & Resources

13© 2004 Altera Corporation - Confidential

Integration (Cont.)Integration (Cont.)Separated Slow & Fast Clock Dependencies− Slow Clock Dependences Run From Beginning

of Waveform Chain to Input of Scrambler− Fast Clock Dependencies Run From Scrambler to Output

of Modulator − Only Valid Data at Output of Data Formatter Was

Captured to Workspace − Fast Dependencies Were Run As Separate Simulation

With Only Valid Data Output From Formatter

This Integration/Simulation Methodology Significantly Reduced Simulation Time For High-Speed Portion of Circuit & Allowed Efficient Design Validation

Proceeding of the SDR 04 Technical Conference and Product Exposition. Copyright © 2004 SDR Forum. All Rights Reserved

Page 14: Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow Allows You to Rapidly Identify Problems & Troubleshoot −Reduces Risk, Time & Resources

14© 2004 Altera Corporation - Confidential

SynthesisSynthesisFirst Replace Simulink Stimulus with Input PinsDSP Builder Generates Quartus II Script for Loading DSP Builder Design & Create SymbolAnticipate Test Points Needed for Debugging New Design− If Additional Test Points Needed, Must Update the

DSP Builder ModelSynthesis & Compilation Done in Quartus II Software− Other Synthesis Tools Also Available

Timing Results AnalyzedRaw Binary File Created

Proceeding of the SDR 04 Technical Conference and Product Exposition. Copyright © 2004 SDR Forum. All Rights Reserved

Page 15: Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow Allows You to Rapidly Identify Problems & Troubleshoot −Reduces Risk, Time & Resources

15© 2004 Altera Corporation - Confidential

Lab VerificationLab VerificationLoaded RBF Onto FPGA on Software Radio− Altera EP20K1000 Device

Each Sub-Block Was Checked With Logic AnalyzerDesign Yielded an 8psk Constellation− See Graph

Logic Analyzer Captured the Final Data (I & Q)− Used to Verify Against the

Data in the Floating Point Simulink Environment

− Only Took a Few Days

8-ary PSK Transmit Output

-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

-1 -0.5 0 0.5 1

QuadratureIn

Pha

se

Proceeding of the SDR 04 Technical Conference and Product Exposition. Copyright © 2004 SDR Forum. All Rights Reserved

Page 16: Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow Allows You to Rapidly Identify Problems & Troubleshoot −Reduces Risk, Time & Resources

16© 2004 Altera Corporation - Confidential

Efficiency AnalysisEfficiency AnalysisMajor Improvements in Several Design Areas− Design− Integration− Translation (HDL Coding)− Verification

Nearly 50% Improvement − 26 Days vs. 49 Days Through Traditional Method

Proceeding of the SDR 04 Technical Conference and Product Exposition. Copyright © 2004 SDR Forum. All Rights Reserved

Page 17: Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow Allows You to Rapidly Identify Problems & Troubleshoot −Reduces Risk, Time & Resources

17© 2004 Altera Corporation - Confidential

Efficiency Analysis (Cont.)Efficiency Analysis (Cont.)

0 2 4 6 8 10 12

Define Architecture

Design Modules

Integrate Modules

Translate to FPGA

Verify in Lab

Document

Days to Implement SDR

DSP Builder

Traditional Method

Proceeding of the SDR 04 Technical Conference and Product Exposition. Copyright © 2004 SDR Forum. All Rights Reserved

Page 18: Rapid SDR Waveform Development in FPGAs Using DSP Builder...DSP Builder/Simulink/ModelSim Flow Allows You to Rapidly Identify Problems & Troubleshoot −Reduces Risk, Time & Resources

18© 2004 Altera Corporation - Confidential

ConclusionConclusionDSP Builder is Powerful Tool for Rapidly Developing SDR Waveforms on FPGAs

DSP Builder Flow Allows You to Allocate Time in an Appropriate Manner for Developing Waveforms

DSP Builder/Simulink/ModelSim Flow Allows You to Rapidly Identify Problems & Troubleshoot − Reduces Risk, Time & Resources in the Lab

DSP Builder Tool Allows the Hardware to be Abstracted to a Higher Level− FPGA & System Waveform Developers Can

Operate in a Common Environment

Proceeding of the SDR 04 Technical Conference and Product Exposition. Copyright © 2004 SDR Forum. All Rights Reserved