Reconfigurable Computing: What, Why, and Implications for Design Automation André DeHon and John Wawrzynek June 23, 1999 BRASS Project University of California.

Slides:



Advertisements
Similar presentations
FPGA (Field Programmable Gate Array)
Advertisements

TIE Extensions for Cryptographic Acceleration Charles-Henri Gros Alan Keefer Ankur Singla.
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.
BRASS Eylon Caspi, Michael Chu, Randy Huang, Joseph Yeh, John Wawrzynek University of California, Berkeley – BRASS.
A Survey of Logic Block Architectures For Digital Signal Processing Applications.
Caltech CS184a Fall DeHon1 CS184a: Computer Architecture (Structures and Organization) Day17: November 20, 2000 Time Multiplexing.
Zheming CSCE715.  A wireless sensor network (WSN) ◦ Spatially distributed sensors to monitor physical or environmental conditions, and to cooperatively.
CS294-6 Reconfigurable Computing Day 5 September 8, 1998 Comparing Computing Devices.
Some Thoughts on Technology and Strategies for Petaflops.
Introduction to Reconfigurable Computing CS61c sp06 Lecture (5/5/06) Hayden So.
SCORE - Stream Computations Organized for Reconfigurable Execution Eylon Caspi, Michael Chu, Randy Huang, Joseph Yeh, Yury Markovskiy Andre DeHon, John.
Physical Implementation 1)Manufactured Integrated Circuit (IC) Technologies 2)Programmable IC Technology 3)Other Technologies Other Technologies 1. Off-The-Shelf.
Lecture 26: Reconfigurable Computing May 11, 2004 ECE 669 Parallel Computer Architecture Reconfigurable Computing.
CS294-6 Reconfigurable Computing Day 6 September 10, 1998 Comparing Computing Devices.
FPGA chips and DSP Algorithms By Emily Fabes. 2 Agenda FPGA Background Reasons to use FPGA’s Advantages and disadvantages of using FPGA’s Sample VHDL.
11/14/05ELEC Fall Multi-processor SoCs Yijing Chen.
Design of a Reconfigurable Hardware For Efficient Implementation of Secret Key and Public Key Cryptography.
Caltech CS184a Fall DeHon1 CS184a: Computer Architecture (Structures and Organization) Day8: October 18, 2000 Computing Elements 1: LUTs.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 9: February 7, 2007 Instruction Space Modeling.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 11: February 14, 2007 Compute 1: LUTs.
CS294-6 Reconfigurable Computing Day 9 September 22, 1998 Project Startup: Mediabench With annotations from class discussion.
State Machines Timing Computer Bus Computer Performance Instruction Set Architectures RISC / CISC Machines.
Trends toward Spatial Computing Architectures Dr. André DeHon BRASS Project University of California at Berkeley.
February 4, 2002 John Wawrzynek
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
Introduction to FPGA and DSPs Joe College, Chris Doyle, Ann Marie Rynning.
BRASS Analysis of QuasiStatic Scheduling Techniques in a Virtualized Reconfigurable Machine Yury Markovskiy, Eylon Caspi, Randy Huang, Joseph Yeh, Michael.
1 A survey on Reconfigurable Computing for Signal Processing Applications Anne Pratoomtong Spring2002.
Introduction to Reconfigurable Computing Greg Stitt ECE Department University of Florida.
Networking Virtualization Using FPGAs Russell Tessier, Deepak Unnikrishnan, Dong Yin, and Lixin Gao Reconfigurable Computing Group Department of Electrical.
February 12, 1998 Aman Sareen DPGA-Coupled Microprocessors Commodity IC’s for the Early 21st Century by Aman Sareen School of Electrical Engineering and.
A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.
ECE-777 System Level Design and Automation Introduction 1 Cristinel Ababei Electrical and Computer Department, North Dakota State University Spring 2012.
Reconfigurable Devices Presentation for Advanced Digital Electronics (ECNG3011) by Calixte George.
Eric Keller, Evan Green Princeton University PRESTO /22/08 Virtualizing the Data Plane Through Source Code Merging.
Architectures for mobile and wireless systems Ese 566 Report 1 Hui Zhang Preethi Karthik.
Paper Review: XiSystem - A Reconfigurable Processor and System
Automated Design of Custom Architecture Tulika Mitra
ASIP Architecture for Future Wireless Systems: Flexibility and Customization Joseph Cavallaro and Predrag Radosavljevic Rice University Center for Multimedia.
J. Christiansen, CERN - EP/MIC
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 Reconfigurable Computing Greg Stitt ECE Department University of Florida.
Reconfigurable Computing Using Content Addressable Memory (CAM) for Improved Performance and Resource Usage Group Members: Anderson Raid Marie Beltrao.
Design Space Exploration for Application Specific FPGAs in System-on-a-Chip Designs Mark Hammerquist, Roman Lysecky Department of Electrical and Computer.
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 7: January 24, 2003 Instruction Space.
Lecture 16: Reconfigurable Computing Applications November 3, 2004 ECE 697F Reconfigurable Computing Lecture 16 Reconfigurable Computing Applications.
Lecture 10: Logic Emulation October 8, 2013 ECE 636 Reconfigurable Computing Lecture 13 Logic Emulation.
EE3A1 Computer Hardware and Digital Design
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Novel, Emerging Computing System Technologies Smart Technologies for Effective Reconfiguration: The FASTER approach.
Task Graph Scheduling for RTR Paper Review By Gregor Scott.
Development of Programmable Architecture for Base-Band Processing S. Leung, A. Postula, Univ. of Queensland, Australia A. Hemani, Royal Institute of Tech.,
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.
Physically Aware HW/SW Partitioning for Reconfigurable Architectures with Partial Dynamic Reconfiguration Sudarshan Banarjee, Elaheh Bozorgzadeh, Nikil.
Lecture 17: Dynamic Reconfiguration I November 10, 2004 ECE 697F Reconfigurable Computing Lecture 17 Dynamic Reconfiguration I Acknowledgement: Andre DeHon.
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 11: January 31, 2005 Compute 1: LUTs.
Penn ESE534 Spring DeHon 1 ESE534: Computer Organization Day 11: February 20, 2012 Instruction Space Modeling.
Lecture 4: Contrasting Processors: Fixed and Configurable September 20, 2004 ECE 697F Reconfigurable Computing Lecture 4 Contrasting Processors: Fixed.
Dynamo: A Runtime Codesign Environment
CS184a: Computer Architecture (Structure and Organization)
Introduction to Reconfigurable Computing
Anne Pratoomtong ECE734, Spring2002
Dynamically Reconfigurable Architectures: An Overview
Instructor: Dr. Phillip Jones
Characteristics of Reconfigurable Hardware
Instructor: Dr. Phillip Jones
Physical Implementation
Presentation transcript:

Reconfigurable Computing: What, Why, and Implications for Design Automation André DeHon and John Wawrzynek June 23, 1999 BRASS Project University of California at Berkeley

Outline  Traditional Hardware vs. Software  Characteristics of reconfigurable (RC) arrays  Hybrid: Mixing and Matching  Opportunities for Design Automation

Traditional Choice: Hardware vs. Software  Hardware fast  “spatial execution”  fine-grained parallelism  no parasitic connections  Hardware compact  operators tailored to function  simple control  direct wire connections between operators But fixed!

Traditional Choice: Hardware vs. Software  Software Slow  sequential execution  overhead time “interpreting” operations  Software Inefficient Area  fixed width operators, may not match problem  general operators, bigger than required  area to store instructions, control execution But Flexible!

Reconfigurable Hardware  RC Hardware Fast  spatial parallelism like hardware  problem specific operators, control  RC Hardware Flexible  operators and interconnect programmable like software

Reconfigurable Hardware  Flexibility comes at a cost:  area in:  switches  configuration  delay in:  switches (added resistance)  logic (more spread out)  modifying configuration (traditionally)  Challenging “compiler” target

New Design Space

Important Distinction  Instruction Binding Time  When do we decide what operation needs to be performed?  General Principle  Earlier the decision is bound, the less area & delay required for the implementation.

Reconfigurable Advantage ÊExploit cases where operation can be bound and then reused a large number of times. ËCustomization of operator type, width, and interconnect. ÌFlexible low overhead exploitation of application parallelism.

Specialization  Late binding of operations  exploit cases where data can be “wired” into computation  narrows the performance gap between custom hardware and reconfigurable implementation  Example: Multiplication

Runtime Reconfiguration*  Data-driven customization  ex: MPEG encode with partial reconfiguration between (I,P,B) frame types (every 33ms)  Hardware Virtualization  demand paging, like virtual memory  Dynamic specialization  ex: bind program variables on loop entry * FPGAs poor at supporting this. All very experimental. * FPGAs poor at supporting this. All very experimental.

 Two important variables: Programmable Device Space  operator word width op w  “instruction” or context depth

Programmable Application Space Yield  Bit-level, reconfigurable organization is complimentary to processors FPGA (c=w=1) “Processor” (c=1024, w=64)

Case for Hybrid Architectures  In general, applications have a mix of word sizes and binding times  …and even a mix of fixed and variable processing requirements  Previous slide suggests no single architecture robust across entire space  Need heterogenous components to best

Heterogenous Architecture

Design Automation Opportunities  Currently, a limiter to the advancement of this technology is the state of the software flow.  The ideal is HLL compilation with short compile/debug cycle.  Must combine elements of parallizing compilers,  thread- and ILP-level parallelism extraction  with elements of hardware/software co-design,  partitioning of “circuits” for RC array from “software” for processor  coordination of memory accesses

Design Automation Opportunities  and elements of FPGA and ASIC CAD.  low-level spatial mapping (PPR)  more importance on pipelining/retiming  fixed resource constraints: wire tracks, memory/compute ratio preallocated  Flexible nature of the RC array encourages other optimizations:  specialization of circuit instances around early bound data  fast, online algorithms to support run-time specialization

Design Automation Opportunities  Most importantly, the tools must run fast  development requirements similar to software only environment  need to better understand tool quality/time tradeoff  Short of complete integrated HLL compilation  “hand partitioning” between processor and RC array  combined FPGA flow with HLL  library based approach

Summary  Reconfigurable architectures  spatial computing style like hardware  programmable like software  more computation per unit area than processors  efficient where processors are inefficient  Heterogenous architectures (mix processors, reconfigurable, custom)  “general-purpose” and “application-targeted” processing components  Exploiting these architectures: new opportunities for DA optimization.

Extra Slides

Brief History  1960: Estrin (UCLA) “fixed plus variable structure computer”  1980’s: Researchers using FPGAs reports “Supercomputer level performance at orders of magnitude lower costs”  Mid 1990’s: DARPA invests  $100M in “Adaptive Computing”  Late 1990’s: 6 startup companies doing “Reconfigurable Computing”

Why the fuss now?  The Promise: “Programmability of microprocessors with performance of ASICs”  Programmability key for:  standard (low cost) components  shorter time to market  adapting to changing standards  adaptability within a given application  Technology pull:  greater processing capacity per IC  higher costs, fewer new designs  SOC benefits from on-chip flexibility

Application Successes  Research >10x performance density advantage over microprocessors and DSPs  Pattern matching  Data encryption  Data compression  Video and image processing  Commercial Push  telecom switches  network routers  mobile phones

Programmable Design Space  Variable Effects:  operator word width can be order of magnitude in yielded density difference  consider narrow (bit) data on wide word architecture  operator instruction depth can be order of magnitude density difference op

Programmable Design Space Density  Small slice of space  100  density across  Large difference in peak densities  large design space!