Lynx: A scalable solution utilising FPGAs for high performance data processing Part B: Firmware & Software Development December 2009 CSIR DPSS Presentation.

Slides:



Advertisements
Similar presentations
By Sunil G. Kulkarni, SO/F, Pelletron-Linac Facility, BARC-TIFR. 21/01/2011 ASET.
Advertisements

StreamBlade SOE TM Initial StreamBlade TM Stream Offload Engine (SOE) Single Board Computer SOE-4-PCI Rev 1.2.
1 SECURE-PARTIAL RECONFIGURATION OF FPGAs MSc.Fisnik KRAJA Computer Engineering Department, Faculty Of Information Technology, Polytechnic University of.
Graduate Computer Architecture I Lecture 15: Intro to Reconfigurable Devices.
Network Management Overview IACT 918 July 2004 Gene Awyzio SITACS University of Wollongong.
1 Performed By: Khaskin Luba Einhorn Raziel Einhorn Raziel Instructor: Rivkin Ina Spring 2004 Spring 2004 Virtex II-Pro Dynamical Test Application Part.
DSP Algorithm on System on Chip Performed by : Einat Tevel Supervisor : Isaschar Walter Accompanying engineers : Emilia Burlak, Golan Inbar Technion -
Configurable System-on-Chip: Xilinx EDK
The Xilinx EDK Toolset: Xilinx Platform Studio (XPS) Building a base system platform.
ECE 699: Lecture 2 ZYNQ Design Flow.
Implementation of DSP Algorithm on SoC. Mid-Semester Presentation Student : Einat Tevel Supervisor : Isaschar Walter Accompaning engineer : Emilia Burlak.
Foundation and XACTstepTM Software
1 Chapter 7 Design Implementation. 2 Overview 3 Main Steps of an FPGA Design ’ s Implementation Design architecture Defining the structure, interface.
v8.2 System Generator Audio Quick Start
Using FPGAs with Embedded Processors for Complete Hardware and Software Systems Jonah Weber May 2, 2006.
GallagherP188/MAPLD20041 Accelerating DSP Algorithms Using FPGAs Sean Gallagher DSP Specialist Xilinx Inc.
1 DSP Implementation on FPGA Ahmed Elhossini ENGG*6090 : Reconfigurable Computing Systems Winter 2006.
General Purpose FIFO on Virtex-6 FPGA ML605 board midterm presentation
© 2011 Xilinx, Inc. All Rights Reserved Intro to System Generator This material exempt per Department of Commerce license exception TSU.
© 2011 Xilinx, Inc. All Rights Reserved This material exempt per Department of Commerce license exception TSU Xilinx Tool Flow.
Programmable Logic- How do they do that? 1/16/2015 Warren Miller Class 5: Software Tools and More 1.
Delevopment Tools Beyond HDL
Students: Oleg Korenev Eugene Reznik Supervisor: Rolf Hilgendorf
General Purpose FIFO on Virtex-6 FPGA ML605 board Students: Oleg Korenev Eugene Reznik Supervisor: Rolf Hilgendorf 1 Semester: spring 2012.
Xilinx at Work in Hot New Technologies ® Spartan-II 64- and 32-bit PCI Solutions Below ASSP Prices January
W.Skulski Phobos Workshop April /2003 Firmware & software development Digital Pulse Processor DDC-8 (Universal Trigger Module) Wojtek Skulski University.
ISE. Tatjana Petrovic 249/982/22 ISE software tools ISE is Xilinx software design tools that concentrate on delivering you the most productivity available.
Impulse Embedded Processing Video Lab Generate FPGA hardware Generate hardware interfaces HDL files HDL files FPGA bitmap FPGA bitmap C language software.
Highest Performance Programmable DSP Solution September 17, 2015.
Digital Radio Receiver Amit Mane System Engineer.
Upgrade to Real Time Linux Target: A MATLAB-Based Graphical Control Environment Thesis Defense by Hai Xu CLEMSON U N I V E R S I T Y Department of Electrical.
1 WORLD CLASS – through people, technology and dedication High level modem development for Radio Link INF3430/4431 H2013.
ASIC/FPGA design flow. FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming.
Xilinx Development Software Design Flow on Foundation M1.5
© 2003 Xilinx, Inc. All Rights Reserved For Academic Use Only Xilinx Design Flow FPGA Design Flow Workshop.
1 Advanced topics in OpenCIM 1.CIM: The need and the solution.CIM: The need and the solution. 2.Architecture overview.Architecture overview. 3.How Open.
ATCA based LLRF system design review DESY Control servers for ATCA based LLRF system Piotr Pucyk - DESY, Warsaw University of Technology Jaroslaw.
J. Christiansen, CERN - EP/MIC
NIOS II Ethernet Communication Final Presentation
Introduction to FPGA Created & Presented By Ali Masoudi For Advanced Digital Communication Lab (ADC-Lab) At Isfahan University Of technology (IUT) Department.
© 2011 Xilinx, Inc. All Rights Reserved This material exempt per Department of Commerce license exception TSU DSP Design Flow System Generator for DSP.
LAB1 Summary Zhaofeng SJTU.SOME. Embedded Software Tools CPU Logic Design Tools I/O FPGA Memory Logic Design Tools FPGA + Memory + IP + High Speed IO.
Part A Presentation Implementation of DSP Algorithm on SoC Student : Einat Tevel Supervisor : Isaschar Walter Accompanying engineer : Emilia Burlak The.
Management of the LHCb DAQ Network Guoming Liu * †, Niko Neufeld * * CERN, Switzerland † University of Ferrara, Italy.
© 2004 Xilinx, Inc. All Rights Reserved Embedded Processor Design.
BridgePoint Integration John Wolfe / Robert Day Accelerated Technology.
Sub-Nyquist Sampling Algorithm Implementation on Flex Rio
Lecture 12: Reconfigurable Systems II October 20, 2004 ECE 697F Reconfigurable Computing Lecture 12 Reconfigurable Systems II: Exploring Programmable Systems.
Final Presentation Implementation of DSP Algorithm on SoC Student : Einat Tevel Supervisor : Isaschar Walter Accompanying engineer : Emilia Burlak The.
© 2005 Xilinx, Inc. All Rights Reserved This material exempt per Department of Commerce license exception TSU HDL Co-Simulation.
FPL Sept. 2, 2003 Software Decelerators Eric Keller, Gordon Brebner and Phil James-Roxby Xilinx Research Labs.
CORE Generator System V3.1i
SOC Virtual Prototyping: An Approach towards fast System- On-Chip Solution Date – 09 th April 2012 Mamta CHALANA Tech Leader ST Microelectronics Pvt. Ltd,
© 2004 Xilinx, Inc. All Rights Reserved Adding a Processor System to an FPGA Design.
© 2003 Xilinx, Inc. All Rights Reserved Course Wrap Up DSP Design Flow.
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
Graphical Design Environment for a Reconfigurable Processor IAmE Abstract The Field Programmable Processor Array (FPPA) is a new reconfigurable architecture.
DDRIII BASED GENERAL PURPOSE FIFO ON VIRTEX-6 FPGA ML605 BOARD PART B PRESENTATION STUDENTS: OLEG KORENEV EUGENE REZNIK SUPERVISOR: ROLF HILGENDORF 1 Semester:
Survey of Reconfigurable Logic Technologies
Design with Vivado IP Integrator
Generic and Re-usable Developments for Online Software Slow Control, Configuration, Data Format & Online Processing Shebli Anvar, CEA Irfu January 12,
Firmware and Software for the PPM DU S. Anvar, H. Le Provost, Y.Moudden, F. Louis, E.Zonca – CEA Saclay IRFU – Amsterdam/NIKHEF, 2011 March 30.
Hands On SoC FPGA Design
Introduction to Programmable Logic
ENG3050 Embedded Reconfigurable Computing Systems
Using FPGAs with Processors in YOUR Designs
Figure 1 PC Emulation System Display Memory [Embedded SOC Software]
ECE 699: Lecture 3 ZYNQ Design Flow.
THE ECE 554 XILINX DESIGN PROCESS
THE ECE 554 XILINX DESIGN PROCESS
Presentation transcript:

Lynx: A scalable solution utilising FPGAs for high performance data processing Part B: Firmware & Software Development December 2009 CSIR DPSS Presentation by Richard Focke Experimental Radar Systems Team Firmware / Software Developer

Background on firmware Demonstrate our design Showcase novel concepts Not only applicable to radar Possible issues Introduction: Goals of my Presentation © CSIR

1. FPGA Firmware Background 2. System Design Goals 3. Board Support Package 4. BSP Enabling Systems 5. Data Processing Firmware 6. Development Issues Part B: Firmware & Software Development Topics © CSIR

1. What is FPGA Firmware? © CSIR

HDL for hardware simulation only - Model 3 rd party hardware - Test bench for functional verification - Read and write files - Dynamic structures HDL for FPGA firmware (or ASIC) - Not all language features - Register transfer level (RTL) - Model basic FPGA blocks - Instantiate advanced FPGA blocks 1. HDL Uses © CSIR

1. FPGA Firmware Background 2. System Design Goals Part B: Firmware & Software Development Topics © CSIR

Adaptability & Scalability All FPGAs one processing space Migrate-able functions Decoupled hardware interfaces Functional independence Software: generic adaptable Consistent software interface Independent of processing flow 2. System Design Goals © CSIR

1. FPGA Firmware Background 2. System Design Goals 3. Board Support Package Part B: Firmware & Software Development Topics © CSIR

Make in-house boards usable Appropriate BSP crucial - Memory - Communications - Control - Monitoring - Real-time data viewing - Real-time data capture BSP abstract FPGA - Constrains function - Not dictate design 4. Board Support Package (BSP) © CSIR

Components of the BSP: - Firmware wrapper (Processing FPGAs) - System controller (SCON) - RSP controller (RSPCON) - CCM FPGA Extra systems: - Display processor (DIP) - Data Acquisition Processor (DAP) 3. BSP Components © CSIR

3. BSP Firmware Wrapper © CSIR

3. BSP Control Interface © CSIR

Command Interpretation - Address translation on each layer - Group size and implementation System Usability - Able to determine the meaning of each group - Can apply a template to define registers - Search for and use any register in any group - Rescan can automatically pick-up changes 3. BSP Dynamic Memory Map © CSIR

Based on Xilinx RocketIO - Utilising Xilinx Aurora (free) - SerialRapidIO, PCIe, 10GBE & FibreChannel Combine two RocketIO channels 6.4 Gbps - Carry 128-bit data at 40 MHz (640 MBps) - Potentially can combine up to 8 links! - Data conveyed as bursts with headers. 3. BSP High-speed data interface © CSIR

3. BSP External Interfaces © CSIR

1. FPGA Firmware Background 2. System Design Goals 3. Board Support Package 4. BSP Enabling Systems Part B: Firmware & Software Development Topics © CSIR

Control Software Application for signal processor Architecture - Layered OO design using C++ Builder (Windows) Role - User interface for the signal processor - RSP Setup, Control, Monitoring and BIT - Centralised Facility Mode and Status Indication - Developed in-house 4. System Controller (SCON) Overview © CSIR

High level of re-configurability using XML - Add extra processing functions - No recompile necessary Extensible event-driven OO framework - Add new software functionality Highly multi-threaded design allows multiple concurrent background and foreground tasks 4. SCON Features © CSIR

VME Boards Memory Map in XML format (Gateway to Hardware) Static Memory Map - Board level registers - Parsed after VME discovery process Dynamic Memory Map (TLV representation) - Discovery process: Read TLV-type registers of function XMLs parsed based on structure and type value. - Rediscovery when: New Firmware Component added Firmware Component changes 4. SCON Reconfigure-ability © CSIR

Static design-time GUI 4.SCON GUI Types © CSIR XML-Based Dynamic GUI

RSPCON - COTS Single-board VME PC - Ethernet Messages ↔VME Transactions - Decouples SCON from VME standard - Runs on VxWorks CCM – Configuration Control and Monitoring FPGA - VME Transactions ↔ LVDS (or GBE ↔ LVDS) - Monitors hardware - Configures FPGAs - Determines placement of functions on FPGAs (Dynamic Memory Map) 4. Ethernet-VME Bridge © CSIR

Components: - Embedded PowerPC 440 running VxWorks - Display GUI Functions performed: - Display data from any processing point - Intensity image plot, 3D & 2D Waterfall plot A- trace & R-trace - Implemented using T-chart Enables: - Verification of processing functions - Provides human comprehensible information 4. Display Processor © CSIR

Components: - DAP Console: GUI for setup and recording - Curtiss-Wright Phoenix M6000 VXS Card - Fibre-optic Storage Area Network High Speed Data Capture - From any processing point on any card: data filtering interleaving multiple channels - Supports recording data rates up to 640 MB/s (SI Mega) TB of storage capacity equates to 1 hour recording of LYNX RSP data at full data rate 4. Data Acquisition Processor (DAP) © CSIR

1. FPGA Firmware Background 2. System Design Goals 3. Board Support Package 4. BSP Enabling Systems 5. Data Processing Firmware Part B: Firmware & Software Development Topics © CSIR

Types of functions: - Generation of timing & signals - Data conditioning functions - Mathematical processing Required elements: - Memories - Adders, subtractions, multipliers & dividers - State-machines Design constraints: - FPGA configurable logic - FPGA DSP building blocks - Memory capacities 5. Data Processing Firmware © CSIR

Control / Status Interface: - Compile list of configurable parameters - Determine the necessity for tables of data - Implement the required DMM interface Data Processing: - Partition available FPGA resources per function - Using actual numbers determine which algorithms will fit - Make use of over-clocking and SIMD to expand the available resources - Implement the chosen algorithm using suitable tools 5. How to Create a Data Processing Function © CSIR

1. FPGA Firmware Background 2. System Design Goals 3. Board Support Package 4. BSP Enabling Systems 5. Data Processing Firmware 6. Development Issues Part B: Firmware & Software Development Topics © CSIR

Mapping firmware into clock regions Full FPGAs (> 75%) cause routing problems High speed designs > 400 MHz placement sensitive Automatic BRAM and DSP mapping: poor timing & no control IP cores require a lot of FPGA resources: sometimes have bugs Tools over-promise & under-deliver 6. Development Issues © CSIR

Demonstration of system © CSIR

Adaptable & scalable system Easy use through BSP Generic data processing Covered development issues Conclusion © CSIR

Thank you Questions?

A. Development Tools Part B: Firmware & Software Development Topics © CSIR

Lynx LVDS Design A. Mentor Graphics HDL Author & Modelsim © CSIR

Hierarchical Graphical Design for HDL Pros: - FPGA Vendor Independent - Graphical view intuitive & easy to manipulate - Hierarchical design: maintainable & reusable - Only leaf nodes of hierarchy coded in HDL Cons: - Not an integrated development environment - Expensive license - Poor integration with some design tools A. Mentor Graphics HDL Author & Modelsim © CSIR

Lynx TGF ISE Project A. Xilinx Integrated Synthesis Environment (ISE) © CSIR

Integrated Design Environment for Xilinx Pros: - Quick and easy access to all design flows - Integrates well with all Xilinx applications - Easy to use and configure Cons: - Specific to Xilinx - Poor file management - Expensive license A. Xilinx Integrated Synthesis Environment (ISE) © CSIR

A. System Generator for DSP © CSIR Lynx IF Sampler Example

High Level DSP Design Environment Pros: - Easy implementation of DSP algorithms - Visualisation tools for multi-rate systems - Big ready-to-use block set - Hardware in the loop simulation - Simulate using existing Matlab Simulink blocks Cons: - High level: difficult to trace problems - Poor state-machine design control - Matlab based, expensive A. System Generator for DSP © CSIR

Lynx DIP Embedded Processor A. Xilinx Embedded Development Kit (EDK) © CSIR

Embedded Processor Implementation Pros: - XPS: build processor subsystem quickly - SDK: eclipse IDE with GNU debugger - IP block set for processor type functions - Support for Linux, VxWorks and Xilkernel Cons: - Integrating own IP not well managed - Black-box approach to IP - Specific to Xilinx A. Xilinx Embedded Development Kit (EDK) © CSIR