Reconfigurable Computing After a Decade: A New Perspective and Challenges For Hardware-Software Co-Design and Development Tirumale K Ramesh, Ph.D. Boeing.

Slides:



Advertisements
Similar presentations
Embedded System, A Brief Introduction
Advertisements

A hardware-software co-design approach with separated verification/synthesis between computation and communication Masahiro Fujita VLSI Design and Education.
Field Programmable Gate Array
FPGA (Field Programmable Gate Array)
1 General-Purpose Languages, High-Level Synthesis John Sanguinetti High-Level Modeling.
SOC Design: From System to Transistor
Defect Tolerance for Yield Enhancement of FPGA Interconnect Using Fine-grain and Coarse-grain Redundancy Anthony J. YuGuy G.F. Lemieux September 15, 2005.
© 2003 Xilinx, Inc. All Rights Reserved Course Wrap Up DSP Design Flow.
Presenter MaxAcademy Lecture Series – V1.0, September 2011 Dataflow Programming with MaxCompiler.
ECOE 560 Design Methodologies and Tools for Software/Hardware Systems Spring 2004 Serdar Taşıran.
TIE Extensions for Cryptographic Acceleration Charles-Henri Gros Alan Keefer Ankur Singla.
A reconfigurable system featuring dynamically extensible embedded microprocessor, FPGA, and customizable I/O Borgatti, M. Lertora, F. Foret, B. Cali, L.
EELE 367 – Logic Design Module 2 – Modern Digital Design Flow Agenda 1.History of Digital Design Approach 2.HDLs 3.Design Abstraction 4.Modern Design Steps.
Defense MicroElectronics Activity Defense MicroElectronics Activity VE The Impact of System Level Design on the DMS World Keith Bergevin Senior.
Graduate Computer Architecture I Lecture 15: Intro to Reconfigurable Devices.
Zheming CSCE715.  A wireless sensor network (WSN) ◦ Spatially distributed sensors to monitor physical or environmental conditions, and to cooperatively.
Extensible Processors. 2 ASIP Gain performance by:  Specialized hardware for the whole application (ASIC). −  Almost no flexibility. −High cost.  Use.
MICROELETTRONICA Design methodologies Lection 8. Design methodologies (general) Three domains –Behavior –Structural –physic Three levels inside –Architectural.
Some Thoughts on Technology and Strategies for Petaflops.
1 HW/SW Partitioning Embedded Systems Design. 2 Hardware/Software Codesign “Exploration of the system design space formed by combinations of hardware.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
Define Embedded Systems Small (?) Application Specific Computer Systems.
Configurable System-on-Chip: Xilinx EDK
Reconfigurable Computing S. Reda, Brown University Reconfigurable Computing (EN2911X, Fall07) Lecture 08: RC Principles: Software (1/4) Prof. Sherief Reda.
UCB November 8, 2001 Krishna V Palem Proceler Inc. Customization Using Variable Instruction Sets Krishna V Palem CTO Proceler Inc.
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.
Implementation of DSP Algorithm on SoC. Characterization presentation Student : Einat Tevel Supervisor : Isaschar Walter Accompany engineer : Emilia Burlak.
Digital System Design EEE344 Lecture 1 INTRODUCTION TO THE COURSE
1 A survey on Reconfigurable Computing for Signal Processing Applications Anne Pratoomtong Spring2002.
(1) Introduction © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
© 2011 Xilinx, Inc. All Rights Reserved Intro to System Generator This material exempt per Department of Commerce license exception TSU.
© Copyright Alvarion Ltd. Hardware Acceleration February 2006.
1  Staunstrup and Wolf Ed. “Hardware Software codesign: principles and practice”, Kluwer Publication, 1997  Gajski, Vahid, Narayan and Gong, “Specification,
Delevopment Tools Beyond HDL
Xilinx at Work in Hot New Technologies ® Spartan-II 64- and 32-bit PCI Solutions Below ASSP Prices January
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
Chap. 1 Overview of Digital Design with Verilog. 2 Overview of Digital Design with Verilog HDL Evolution of computer aided digital circuit design Emergence.
1 3-General Purpose Processors: Altera Nios II 2 Altera Nios II processor A 32-bit soft core processor from Altera Comes in three cores: Fast, Standard,
COMPUTER SCIENCE &ENGINEERING Compiled code acceleration on FPGAs W. Najjar, B.Buyukkurt, Z.Guo, J. Villareal, J. Cortes, A. Mitra Computer Science & Engineering.
ASIC/FPGA design flow. FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming.
Automated Design of Custom Architecture Tulika Mitra
Design Verification An Overview. Powerful HDL Verification Solutions for the Industry’s Highest Density Devices  What is driving the FPGA Verification.
J. Christiansen, CERN - EP/MIC
IEEE ICECS 2010 SysPy: Using Python for processor-centric SoC design Evangelos Logaras Elias S. Manolakos {evlog, Department of Informatics.
1 Towards Optimal Custom Instruction Processors Wayne Luk Kubilay Atasu, Rob Dimond and Oskar Mencer Department of Computing Imperial College London HOT.
Reminder Lab 0 Xilinx ISE tutorial Research Send me an if interested Looking for those interested in RC with skills in compilers/languages/synthesis,
Introduction to FPGA Created & Presented By Ali Masoudi For Advanced Digital Communication Lab (ADC-Lab) At Isfahan University Of technology (IUT) Department.
- 1 - EE898_HW/SW Partitioning Hardware/software partitioning  Functionality to be implemented in software or in hardware? No need to consider special.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Novel, Emerging Computing System Technologies Smart Technologies for Effective Reconfiguration: The FASTER approach.
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
Reconfigurable Computing Ender YILMAZ, Hasan Tahsin OĞUZ.
Evaluating and Improving an OpenMP-based Circuit Design Tool Tim Beatty, Dr. Ken Kent, Dr. Eric Aubanel Faculty of Computer Science University of New Brunswick.
Development of Programmable Architecture for Base-Band Processing S. Leung, A. Postula, Univ. of Queensland, Australia A. Hemani, Royal Institute of Tech.,
FPGA ( Field programmable gate array ) April 2008 Prepared by : Muhammad Ziyada Muhammad Al tabakh.
SUBJECT : DIGITAL ELECTRONICS CLASS : SEM 3(B) TOPIC : INTRODUCTION OF VHDL.
Programmable Logic Devices
System-on-Chip Design
Programmable Hardware: Hardware or Software?
Andreas Hoffmann Andreas Ropers Tim Kogel Stefan Pees Prof
ASIC Design Methodology
Dynamo: A Runtime Codesign Environment
A Methodology for System-on-a-Programmable-Chip Resources Utilization
ENG3050 Embedded Reconfigurable Computing Systems
Anne Pratoomtong ECE734, Spring2002
Figure 1 PC Emulation System Display Memory [Embedded SOC Software]
The performance requirements for DSP applications continue to grow and the traditional solutions do not adequately address this new challenge Paradigm.
A High Performance SoC: PkunityTM
ECE 699: Lecture 3 ZYNQ Design Flow.
HIGH LEVEL SYNTHESIS.
Presentation transcript:

Reconfigurable Computing After a Decade: A New Perspective and Challenges For Hardware-Software Co-Design and Development Tirumale K Ramesh, Ph.D. Boeing Associate Technical Fellow Senior Member, IEEE Northern Virginia Chapter IEEE Computer Society Meeting April 14, 2005

NoVA Chapter IEEE Computer Society Meeting- April 14, Outline What is and Why Reconfiguration? Applications Architecture in the past New Architecture Trends Hardware-Software Co-Design and Development Future

NoVA Chapter IEEE Computer Society Meeting- April 14, What is Reconfiguration ? The ability to change the hardware entity as warranted by an application. This is an emerging field that blurs the traditional boundaries between hardware and software. Who will like Reconfigurable Computing ? One who enjoys real-time design and applications One with a pioneering spirit to learn more on software and knowledgeable about hardware (or vice versa) One who likes to produce a challenging hardware/software solutions to an application

NoVA Chapter IEEE Computer Society Meeting- April 14, Why Reconfigurable Hardware? The one-to-one match of application to a fixed architecture is difficult and we cannot achieve high throughput Greater functionality can be achieved with a reconfigurable logic Lower system cost Evaluate in terms of lifetime system costs to determine the savings The ability to provide for high fault tolerance in the system Reduced time-to-market Flexible logic and on-the field reprogrammable

NoVA Chapter IEEE Computer Society Meeting- April 14, Applications Defense, Aerospace & Automotive Electronics Hybrid Supercomputing for Scientific Applications Hybrid Embedded Computing Hardware Accelerators High-data stream applications-Massive Reconfigurable Arrays Image and Signal Processing

NoVA Chapter IEEE Computer Society Meeting- April 14, Types of Reconfiguration Processor Reconfiguration Changing the internal hardware capabilities(Data Path- Word size, Pipelining, Communication among Multiple Data Path Units, etc.) Communication Reconfiguration A set of communication channels provided in run-time for a pair of processors Control Reconfiguration Changes the way in which instructions streams are processed on a processor (SIMD, MIMD, MSIMD)

NoVA Chapter IEEE Computer Society Meeting- April 14, Architecture in the past FPGA logic used more as a logic glue and also for replacing multiple chips and for reducing the chip count Fine-grain logic Not much run-time reconfigurable capability were available All designs were done at low level (VHDL) Very limited abstraction at system level Minimal Tools support Used Multiple FPGAs to gain more logic due to device density limitations

NoVA Chapter IEEE Computer Society Meeting- April 14, New Architectural Trends Coarse-grain architectures Large IP building blocks Reconfigurable Processor Units(RPU) Custom Interfaces Highly parallel processing elements Morphware Accelerators- Data Stream Engines Coarse-grain data paths units configured as high-level parallelism similar to ILP by using Configware to program the resources and Flowware to program the data streams running through the resources. Distributed adaptive boards (FPGA based) Single API for Distributed ACS -Single high level host program in C or C++ with networking code for interaction of multiple boards

NoVA Chapter IEEE Computer Society Meeting- April 14, Hardware-Software Co-Design and Development Cooperative design of hardware and software Co design shortens time-to-market due to use of flexible software and enhancing performance via specific hardware as necessary Reconfigurable hardware adds to flexibility as design changes can be made on the field –Less expensive than ASIC Co-design is an interdisciplinary activity System level modeling Hardware and software design

NoVA Chapter IEEE Computer Society Meeting- April 14, Hardware-Software Co-Design Flow System Spec Cost Analysis & Estimation HW/SW Partitioning HW SpecSW Spec SynthesisCompile Design Verification Design Not Met Simulation and/or Emulation

NoVA Chapter IEEE Computer Society Meeting- April 14, HW/SW Co-Design of Embedded Reconfigurable Systems Integrating COTS processor, ASIC and Programmable Logic on a single platform COTS Processor On-chip RAM Reconfigurable Processor System Arch and Performance Profiling HW/SW Partitioning HW Synthesis FPGA bit streams Compiler

NoVA Chapter IEEE Computer Society Meeting- April 14, HW/SW Partitioning in Reconfigurable Systems FPGA Perform Processing Both in Space and Time Space- Refers to Physical Implementation of different functionality in vast hardware resources (parallel processing) Time-FPGA can be reconfigured at various steps of the application algorithm to instantiate different architectures at different run times(dynamic) Partitioning needs to account for both spatial and time domains

NoVA Chapter IEEE Computer Society Meeting- April 14, Key Design Requirements Speed of Reconfiguration Atleast close to the speed of execution Speed, size and density >100 MHZ, >8M Logic gates Memory interfaces Support high-data stream- data stream memories with fast access time Development Tools Automatic mapping and compiling Integration into low level design synthesis tools

NoVA Chapter IEEE Computer Society Meeting- April 14, System-on-a chip Integrating COTS processor, ASIC and Programmable Logic on a single die COTS Processor ASIC Core FPGA Core Mixed-Signal Cores Development Tools and Methodologies Simulation/ Emulation Boards Silicon Processing Test and Validate

NoVA Chapter IEEE Computer Society Meeting- April 14, HW/SW Co-Design Languages/Tools Adapting high level languages SpecC- extension of ANSI-C Support embedded systems design, including behavioral and structural hierarchy Targeted for system-level design language intended for spec and architectural modeling though developed for synthesis and verification in mind HardwareC-Uniformly incorporates both functionality and design constraints SystemC-Uses C++ class libraries and a simulation kernel for creating behavioral and RTL designs

NoVA Chapter IEEE Computer Society Meeting- April 14, HW/SW Co-Design and Development-System Languages/Tools(Continued) Java based approaches JHDL- Java to RTL Compiler runs Java into synthesizable HDL code UML- System level modeling Extend UML to apply them as high level models working with other languages UML profile for SystemC- a language that enables specify, analyze, design, construct, view SW and HW artifacts in a SoC design flow

NoVA Chapter IEEE Computer Society Meeting- April 14, HW/SW Co-Design and Development-System Languages/Tools (Continued) Extending HDL Languages System Verilog- Blends Verilog, C/C++ An extension to IEEE Verilog Supports interfaces that allow module connections at a high level of abstraction SuperLog Verilog superset that includes constructs from C Verliog 2001 and SuperLog at two ends of the spectrum Utilizes power of C with the simplicity of Verilog for a very productive design process

NoVA Chapter IEEE Computer Society Meeting- April 14, Algorithm/Data Flow Tools MATLAB to FPGA Design IP Core Instantiation Xilinx DSP Sys Gen Khorus- Data Flow Tool for Image Processing Ptolomey- Graphical Entry Tool for System Level Design

NoVA Chapter IEEE Computer Society Meeting- April 14, Future System-on-a chip (SoC) to gain more logic, performance and low cost and power advantages Use of more Modular Block Architectures at the device level- Ex: Xilinx ASMBL Domain-specific block pre-fabricated with mixture of processors, peripherals, and other special interfaces to support different application domains Use of advanced packaging technology and flexible placement of on power and ground More Use of Parallel Processing techniques and FPGA architectures for both spatial and time domain mapping

NoVA Chapter IEEE Computer Society Meeting- April 14, Future Mix and match of Parameterized and Custom blocks High Level Abstraction Tools with integration to low level tools for optimum design process Use of XML for Configuration of processors and to specify the targeted hardware devices Allows for adding application-specific instructions to a processor