Dynamically Reconfigurable Architectures: An Overview

Slides:



Advertisements
Similar presentations
TIE Extensions for Cryptographic Acceleration Charles-Henri Gros Alan Keefer Ankur Singla.
Advertisements

Implementation Approaches with FPGAs Compile-time reconfiguration (CTR) CTR is a static implementation strategy where each application consists of one.
A reconfigurable system featuring dynamically extensible embedded microprocessor, FPGA, and customizable I/O Borgatti, M. Lertora, F. Foret, B. Cali, L.
Week 1- Fall 2009 Dr. Kimberly E. Newman University of Colorado.
Extensible Processors. 2 ASIP Gain performance by:  Specialized hardware for the whole application (ASIC). −  Almost no flexibility. −High cost.  Use.
Lecture 26: Reconfigurable Computing May 11, 2004 ECE 669 Parallel Computer Architecture Reconfigurable Computing.
Term Project Overview Yong Wang. Introduction Goal –familiarize with the design and implementation of a simple pipelined RISC processor What to do –Build.
Introduction to Systems Architecture Kieran Mathieson.
Configurable System-on-Chip: Xilinx EDK
A Programmable Coprocessor Architecture for Wireless Applications Yuan Lin, Nadav Baron, Hyunseok Lee, Scott Mahlke, Trevor Mudge Advance Computer Architecture.
Performance Analysis of the IXP1200 Network Processor Rajesh Krishna Balan and Urs Hengartner.
Dynamically Reconfigurable Architectures: An Overview Juanjo Noguera Dept. Computer Architecture (DAC-UPC)
UCB November 8, 2001 Krishna V Palem Proceler Inc. Customization Using Variable Instruction Sets Krishna V Palem CTO Proceler Inc.
HW/SW Co-Synthesis of Dynamically Reconfigurable Embedded Systems HW/SW Partitioning and Scheduling Algorithms.
SSS 4/9/99CMU Reconfigurable Computing1 The CMU Reconfigurable Computing Project April 9, 1999 Mihai Budiu
Lecture 1: Course Introduction September 3, 2013 ECE 636 Reconfigurable Computing Lecture 1 Course Introduction Prof. Russell Tessier.
Dynamic Hardware Software Partitioning A First Approach Komal Kasat Nalini Kumar Gaurav Chitroda.
A Flexible Architecture for Simulation and Testing (FAST) Multiprocessor Systems John D. Davis, Lance Hammond, Kunle Olukotun Computer Systems Lab Stanford.
Presenter MaxAcademy Lecture Series – V1.0, September 2011 Introduction and Motivation.
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
Reconfigurable Hardware in Wearable Computing Nodes Christian Plessl 1 Rolf Enzler 2 Herbert Walder 1 Jan Beutel 1 Marco Platzner 1 Lothar Thiele 1 1 Computer.
Networking Virtualization Using FPGAs Russell Tessier, Deepak Unnikrishnan, Dong Yin, and Lixin Gao Reconfigurable Computing Group Department of Electrical.
Reconfigurable Computing Systems: An Overview Presented by: Gurwant Kaur Koonar Vijay Pandya 14 th March 2003.
ECE 720T5 Fall 2012 Cyber-Physical Systems Rodolfo Pellizzoni.
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,
A Reconfigurable Processor Architecture and Software Development Environment for Embedded Systems Andrea Cappelli F. Campi, R.Guerrieri, A.Lodi, M.Toma,
Architectures for mobile and wireless systems Ese 566 Report 1 Hui Zhang Preethi Karthik.
COMPUTER SCIENCE &ENGINEERING Compiled code acceleration on FPGAs W. Najjar, B.Buyukkurt, Z.Guo, J. Villareal, J. Cortes, A. Mitra Computer Science & Engineering.
SYSTEM-ON-CHIP (SoC) AND USE OF VLSI CIRCUIT DESIGN TECHNOLOGY.
Paper Review: XiSystem - A Reconfigurable Processor and System
ECE 465 Introduction to CPLDs and FPGAs Shantanu Dutt ECE Dept. University of Illinois at Chicago Acknowledgement: Extracted from lecture notes of Dr.
Automated Design of Custom Architecture Tulika Mitra
J. Christiansen, CERN - EP/MIC
1 Towards Optimal Custom Instruction Processors Wayne Luk Kubilay Atasu, Rob Dimond and Oskar Mencer Department of Computing Imperial College London HOT.
Page 1 Reconfigurable Communications Processor Principal Investigator: Chris Papachristou Task Number: NAG Electrical Engineering & Computer Science.
The variety Of Processors And Computational Engines CS – 355 Chapter- 4 `
CS5222 Advanced Computer Architecture Part 3: VLIW Architecture
1 - CPRE 583 (Reconfigurable Computing): Reconfigurable Computing Architectures Iowa State University (Ames) Reconfigurable Architectures Forces that drive.
Task Graph Scheduling for RTR Paper Review By Gregor Scott.
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
Reconfigurable Computing Ender YILMAZ, Hasan Tahsin OĞUZ.
Survey of multicore architectures Marko Bertogna Scuola Superiore S.Anna, ReTiS Lab, Pisa, Italy.
1 Advanced Digital Design Reconfigurable Logic by A. Steininger and M. Delvai Vienna University of Technology.
WARP PROCESSORS ROMAN LYSECKY GREG STITT FRANK VAHID Presented by: Xin Guan Mar. 17, 2010.
1 - CPRE 583 (Reconfigurable Computing): Reconfigurable Computing Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture.
Re-configurable Bus Encoding Scheme for Reducing Power Consumption of the Cross Coupling Capacitance for Deep Sub-micron Instructions Bus Siu-Kei Wong.
Reconfigurable Computing Nehir Sönmez
Programmable Logic Devices Zainalabedin Samadi. Embedded Systems Technology  Programmable Processors  Application Specific Processor (ASIP)  Single.
Dynamic and On-Line Design Space Exploration for Reconfigurable Architecture Fakhreddine Ghaffari, Michael Auguin, Mohamed Abid Nice Sophia Antipolis University.
Programmable Logic Devices
ECE 636 Reconfigurable Computing Lecture 1 Course Introduction Prof
Nios II Processor: Memory Organization and Access
Microprocessors Personal Computers Embedded Systems Programmable Logic
Dynamo: A Runtime Codesign Environment
Hands On SoC FPGA Design
Topics SRAM-based FPGA fabrics: Xilinx. Altera..
ECE354 Embedded Systems Introduction C Andras Moritz.
Evaluating Register File Size
Chapter 1: Introduction
Embedded systems, Lab 1: notes
Reconfigurable Computing Systems: An Overview
A High Performance SoC: PkunityTM
Programmable Logic- How do they do that?
Introduction to Microprocessor Programming
Department of Electrical Engineering Joint work with Jiong Luo
Mapping DSP algorithms to a general purpose out-of-order processor
NetPerL Seminar Hardware/Software Co-Design
Research: Past, Present and Future
(Lecture by Hasan Hassan)
Programmable logic and FPGA
Presentation transcript:

Dynamically Reconfigurable Architectures: An Overview Juanjo Noguera Dept. Computer Architecture (DAC-UPC) jnoguera@ac.upc.es

Outline Introduction Reconfigurable Computing Reconfigurable devices and systems Reconfigurable Systems Classification Reconfiguration Methods Reconfigurable Instruction Set Processors ASIP-based approach Coprocessor-based approach Conclusions

Introduction Reconfigurable Computing (RC) is an emerging paradigm for digital systems design Technology improvements have made possible new programmable logic devices (FPGAs, CPLDs) Objective of the talk: Give an overview of RC concepts and introduce the Reconfigurable Instruction Set Processors.

Introduction (II) RC objectives: Specialization, performance, flexibility Basic idea: “Programmable Hardware”  Specialization  Performance  Power consumption  Flexibility  Programming

Introduction (III) RC comparison versus other alternatives Performance Flexibility, Power GPP ASIC DSP RC Application Specific Systems General Purpose Systems Cost Performance Reconfigurable Computing

Outline Introduction Reconfigurable Computing Reconfigurable devices and systems Reconfigurable Systems Classification Reconfiguration Methods Reconfigurable Instruction Set Processors ASIP-based approach Coprocessor-based approach Conclusions

Reconfigurable Devices General device architecture Logic Bloc Interconnection Structure I/O Bloc Reconfigurable Computing

Reconfigurable Devices (II) Routing strategies A B C Continuous Routing Structured Routing Reconfigurable Computing

Reconfigurable Devices (III) SRAM based devices with infinite number of reconfigurations App 1 -> Bitstream 1 App 2 -> Bitstream 2 App n -> Bitstream n Configuration Bitstream 110011101 ... Reconfigurable Computing Reconfigurable Device

Reconfigurable Systems (I) Rapid System (ASIC) Prototyping Reconfigurable Computing CPU PLD PLD PLD PLD PLD

Reconfigurable Systems (II) Reconfigurable Systems Classification Host Computer (d) PLD CPU Reconfigurable Computing (c) RAM PLD SYSTEM BUS PLD RAM PLD I/O (b) RAM (a)

Reconfiguration Methods (I) Compile Time Reconfiguration (CTR) Device configuration is fixed during application run time execution Run Time Reconfiguration (RTR) Device configuration changes during application run time execution RTR strategies Global RTR Partial RTR Reconfigurable Computing

Reconfiguration Methods (II) Global Run Time Reconfiguration (Single context) Application Execution #1 Execution Reconfiguration #2 Reconfiguration #2 Reconfigurable Computing Reconfiguration #4 Execution #3 #4 Reconfiguration Contexts #1 Dynamically Reconfigurable Device

Reconfiguration Methods (III) Partial Run Time Reconfiguration (Multiple context) Aplicació #1 Reconfiguration #4 #1 #2 #2 Reconfigurable Computing #3 #4 #4 #1 Reconfiguration Contexts #3 Dynamically Reconfigurable Device

Reconfiguration Methods (IV) Run-Time Reconfiguration Challenges Temporal Partitioning Context Scheduling (static) Reconfiguration Latency Overhead Configuration Pre-fetching Configuration Caching Configuration Compression Reconfigurable Computing

Outline Introduction Reconfigurable Computing Reconfigurable devices and systems Reconfigurable Systems Classification Reconfiguration Methods Reconfigurable Instruction Set Processors ASIP-based approach Coprocessor-based approach Conclusions

Reconfigurable Instruction Set Processors Reconfigurable Processor Introduction By including reconfigurability we can increase flexibility with high specialization Reconfigurable Instruction Set Processors Processor PLD Reconfigurable Processor

Reconfigurable Instruction Set Processors Introduction (II) Coprocessor based approach ASIP based approach · · · Task 1 Task K Task K+1 Task N Software Hardware Reconfigurable Instruction Set Processors Task 1 Task 2 Task N Software Hardware · · ·

Coprocessor based approach (I) Typical example: CPU + PCI board Altera ARC-PCI Compaq Pamette System on Chip (SoC) Altera´s Excalibur device Chameleon Systems, Inc. Reconfigurable Instruction Set Processors

Coprocessor based approach (II) Altera ARC-PCI Reconfigurable Instruction Set Processors

Coprocessor based approach (III) Compaq Pamette Reconfigurable Instruction Set Processors

Coprocessor based approach (IV) Altera´s Excalibur device Embedded Processor: ARM, MIPS or NIOS Reconfigurable Instruction Set Processors

Coprocessor based approach (V) Chameleon Systems, Inc. Reconfigurable Instruction Set Processors

ASIP based approach (I) Reconfigurable unit within CPU Fetch Decode Issue Integer Unit FP Branch LD/ST Reconfigurable Reconfigurable Instruction Set Processors

ASIP based approach (II) Challenge: CAD tools C Code Compiler Assembly Code Instruction Description (Configuration bits) Reconfigurable Instruction Set Processors

ASIP based approach (III) C Parsing Optimizations Inst. Identification Inst. Selection Config. Scheduling Code Generation C Code Assembly Code Hardware Generation Configuration bits Estimator Compiler Structure Reconfigurable Instruction Set Processors

ASIP based approach (II) Example: Philips CinCISe Architecture Encoded Instruction Word Register File ALU RFU MUX 5 4 32 Reconfigurable Instruction Set Processors

ASIP based approach (III) Application example: DES & A5 encryptation algorithms 27 26 25 23 22 30 7 6 5 4 3 2 27 26 25 22 XOR Reconfigurable Instruction Set Processors srl $13, $2, 20 andi $25, $13, 1 srl $14, $2, 21 andi $24, $14, 6 or $15, $25, $24 srl $13, $2, 22 andi $14, $13, 56 or $25, $15, $14 sll $24, $25, 2 srl $24, $5, 18 srl $25, $5, 17 xor $8, $24, $25 srl $9, $5, 16 xor $10, $8, $9 srl $11, $5, 13 xor $12, $10, $11 andi $13, $12, 1

Conclusions Reconfigurable Computing is an emerging and interesting computing paradigm RC devices and architectures are becoming a reality There is a big challenge is High-level synthesis (CAD) tools

Conclusions (II) ?? What is the future ?? Flexibility, Power RC GPP RC DSP RC RC ASIC Performance