Reconfigurable Computing CS294-6 Fall 1998 Dr. Andre DeHon.

Slides:



Advertisements
Similar presentations
Lecture 9: Coarse Grained FPGA Architecture October 6, 2004 ECE 697F Reconfigurable Computing Lecture 9 Coarse Grained FPGA Architecture.
Advertisements

Balancing Interconnect and Computation in a Reconfigurable Array Dr. André DeHon BRASS Project University of California at Berkeley Why you don’t really.
Caltech CS184a Fall DeHon1 CS184a: Computer Architecture (Structures and Organization) Day17: November 20, 2000 Time Multiplexing.
Reconfigurable Computing: What, Why, and Implications for Design Automation André DeHon and John Wawrzynek June 23, 1999 BRASS Project University of California.
Caltech CS184a Fall DeHon1 CS184a: Computer Architecture (Structures and Organization) Day20: November 29, 2000 Review.
CS294-6 Reconfigurable Computing Day 5 September 8, 1998 Comparing Computing Devices.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 21: April 2, 2007 Time Multiplexing.
Introduction to Reconfigurable Computing CS61c sp06 Lecture (5/5/06) Hayden So.
CS294-6 Reconfigurable Computing Day 6 September 10, 1998 Comparing Computing Devices.
ENGIN112 L38: Programmable Logic December 5, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 38 Programmable Logic.
Spring 08, Jan 15 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Introduction Vishwani D. Agrawal James J. Danaher.
11/14/05ELEC Fall Multi-processor SoCs Yijing Chen.
Spring 07, Jan 16 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Introduction Vishwani D. Agrawal James J. Danaher.
RISC By Don Nichols. Contents Introduction History Problems with CISC RISC Philosophy Early RISC Modern RISC.
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.
Caltech CS184a Fall DeHon1 CS184a: Computer Architecture (Structures and Organization) Day4: October 4, 2000 Memories, ALUs, and Virtualization.
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.
Trends toward Spatial Computing Architectures Dr. André DeHon BRASS Project University of California at Berkeley.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 10: February 12, 2007 Empirical Comparisons.
CS 300 – Lecture 2 Intro to Computer Architecture / Assembly Language History.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 1: January 8, 2007 Introduction and Overview.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 5: January 24, 2007 ALUs, Virtualization…
Comparing Computing Machines Dr. André DeHon UC Berkeley November 3, 1998.
CS 151 Digital Systems Design Lecture 38 Programmable Logic.
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
Reconfigurable Computing. This Class is About Reconfigurable Computing Computer Architecture Coping with Change.
Reconfigurable Devices Presentation for Advanced Digital Electronics (ECNG3011) by Calixte George.
ENG3050 Embedded Reconfigurable Computing Systems General Information Handout Winter 2015, January 5 th.
CBSSS 2002: DeHon Architecture as Interface André DeHon Friday, June 21, 2002.
Caltech CS184b Winter DeHon 1 CS184b: Computer Architecture [Single Threaded Architecture: abstractions, quantification, and optimizations] Day3:
COMPUTER SCIENCE &ENGINEERING Compiled code acceleration on FPGAs W. Najjar, B.Buyukkurt, Z.Guo, J. Villareal, J. Cortes, A. Mitra Computer Science & Engineering.
Caltech CS184 Winter DeHon CS184: Computer Architecture (Structure and Organization) Day 1: January 3, 2005 Introduction and Overview.
Penn ESE534 Spring DeHon 1 ESE534: Computer Organization Day 9: February 24, 2014 Operator Sharing, Virtualization, Programmable Architectures.
Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Topics Memories: –ROM; –SRAM; –DRAM; –Flash. Image sensors. FPGAs. PLAs.
J. Christiansen, CERN - EP/MIC
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 7: January 24, 2003 Instruction Space.
ISSS 2001, Montréal1 ISSS’01 S.Derrien, S.Rajopadhye, S.Sur-Kolay* IRISA France *ISI calcutta Combined Instruction and Loop Level Parallelism for Regular.
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
COARSE GRAINED RECONFIGURABLE ARCHITECTURES 04/18/2014 Aditi Sharma Dhiraj Chaudhary Pruthvi Gowda Rachana Raj Sunku DAY
Caltech CS184a Fall DeHon1 CS184a: Computer Architecture (Structures and Organization) Day7: October 16, 2000 Instruction Space (computing landscape)
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 8: January 27, 2003 Empirical Cost Comparisons.
Penn ESE534 Spring DeHon 1 ESE534: Computer Organization Day 1: January 11, 2012 Introduction and Overview.
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 5: January 17, 2003 What is required for Computation?
1 - CPRE 583 (Reconfigurable Computing): Reconfigurable Computing Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture.
Caltech CS184 Winter DeHon CS184a: Computer Architecture (Structure and Organization) Day 4: January 15, 2003 Memories, ALUs, Virtualization.
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.
Reconfigurable Architectures Greg Stitt ECE Department University of Florida.
Penn ESE534 Spring DeHon ESE534: Computer Organization Day 14: March 12, 2012 Empirical Comparisons.
Penn ESE534 Spring DeHon 1 ESE534: Computer Organization Day 11: February 20, 2012 Instruction Space Modeling.
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 10: January 28, 2005 Empirical Comparisons.
1 The user’s view  A user is a person employing the computer to do useful work  Examples of useful work include spreadsheets word processing developing.
ESE534: Computer Organization
ELEC 7770 Advanced VLSI Design Spring 2016 Introduction
ESE532: System-on-a-Chip Architecture
CS184a: Computer Architecture (Structure and Organization)
Instructor: Dr. Phillip Jones
Architecture & Organization 1
Instructor: Dr. Phillip Jones
ELEC 7770 Advanced VLSI Design Spring 2014 Introduction
Lecture 41: Introduction to Reconfigurable Computing
Architecture & Organization 1
ELEC 7770 Advanced VLSI Design Spring 2012 Introduction
ELEC 7770 Advanced VLSI Design Spring 2010 Introduction
ESE534: Computer Organization
CS184a: Computer Architecture (Structure and Organization)
ESE534: Computer Organization
Programmable logic and FPGA
Presentation transcript:

Reconfigurable Computing CS294-6 Fall 1998 Dr. Andre DeHon

This Class is About Reconfigurable Computing Computer Architecture Coping with Change

Outline What’s wrong with the status quo (Admin break: handouts) Reconfigurable Computing: What and Why (break) What this class is about

Big Idea The Biggest Idea here is perhaps the simplest: When we have 1000x the resources, we design computer differently. (Good architecture depends on costs.)

Fountainhead Pathenon Quote “Look,” said Roark. “The famous flutings on the famous columns---what are they there for? To hide the joints in wood---when columns were made of wood, only these aren’t, they’re marble. The triglyphs, what are they? Wood. Wooden beams, the way they had to be laid when people began to build wooden shacks. Your Greeks took marble and they made copies of their wooden structures out of it, because others had done it that way. Then your masters of the Renaissance came along and made copies in plaster of copies in marble of copies in wood. Now here we are making copies in steel and concrete of copies in plaster of copies in marble of copies in wood. Why?

What About Computer Architecture? Are we making copies in submicron CMOS VLSI of copies in NMOS of copies in TTL of early vacuum tube computer designs? Mainframe->Mini->super microprocessors ? CDC->Cray1->i860->Vector microprocessors?

1983 Computer Architecture VLSI is “new” to the computer architect you have 15M  in 4  m NMOS want to run “all” programs What do you build? 2

What can we build in 15M  12Kb SRAM (1.2K  bit) 1500 Gate-Array Gates (10K  /gate) 30 4-LUTs (500K /4LUT) 32b ALU+RF+control

1983 RISC II MIPs

What has changed in 15 years? Technology (0.25  m CMOS) Capacity (20G  Architecture? 2

Capacity

Architecture Moved memory system on chip 32->64b datapath +FPU, moved on chip 1->4 compute units …lots of “hacks” to preserve sequential model of original uP

Why did we build computers this way in 1983? Yesterday’s solution becomes today’s historical curiosity. -- Goldratt

Why…1983?

More Why?

Have our assumptions changed? Beware of cached answers. Always check your assumptions. To stay young requires unceasing cultivation of the ability to unlearn old falsehoods. -- Lazarus Long

Why…1983?

Example HP PA-RISC8500 (Hot Chips X) SPEC fits in on-chip cache What next? Does it make sense to keep this architecture and balance as capacity continues to grow?

Admin: Handouts Why Configurable Computing (today’s read) XC4K (Thursday read) HSRA Overview (Thursday read, hmwrk) Terminology Course Administrivia SPACE1 assignment Questionaire (return end of class)

Challenging our Assumptions General-purpose computing machines don’t have to look like processors. 1000x increase in single-chip silicon capacity changes the underlying design costs.

Early RC Successes Fastest RSA implementation is on a reconfigurable machine (DEC PAM) Splash2 (SRC) performs DNA Sequence matching 300x Cray2 speed, and 200x a 16K CM2 Many modern processors and ASICs are verified using FPGA emulation systems For many signal processing/filtering operations, single chip FPGAs outperform DSPs by x.

What is Configurable Computing? Short answer: Computing via post-fabrication, spatially programmed connection of processing elements.

Defining Terms Computes one function (e.g. FP- multiply, divider, DCT) Function defined at fabrication time Computes “any” computable function (e.g. Processor, DSPs, FPGAs) Function defined after fabrication Fixed Function: Programmable:

“Any” Computation? (Universality) Any computation which can “fit” on the programmable substrate Limitations: hold entire computation and intermediate data Recall size/fit constraint

Benefits of Programmable Non-permanent customization and application development after fabrication economies of scale (amortize large, fixed design costs) time-to-market (evolving requirements and standards, new ideas)

Distinction in Instruction Binding Time Fabrication time --> Fixed function devices Beginning of product use --> Actel/Quicklogic FPGAs Beginning of usage epoch --> Reconfigurable FPGAs Every cycle --> traditional RISC processors

Spatial vs. Temporal Computing Spatial Temporal

Density Comparison

Spatial/Configurable Benefits 10x raw density advantage over processors potential for fine-grained (bit-level) control --- can offer another order of magnitude benefit

Processor vs. FPGA Area

Configurable Drawbacks Each compute/interconnect resource dedicated to single function Must dedicate resources for every computational subtask Infrequently needed portions of a computation sit idle --> inefficient use of resources

Where CC interesting? Regular applications -- need same operation repeatedly High concurrency -- large number of operations can occur simultaneously Fine-grained data -- small operand data widths

Implications? Post-fabrication programmable computing space >> processor arch. With 10G  dies now and 1T  on the horizon, a much wider space of computing architectures opens up. Major feature: more spatial processing, less multiplexing/sharing of resources. 22

Break

This Class Good Architecture is driven by media costs Technology advances --> Costs change What makes sense now, in the near future Theme: watch for/make note of where cost assumptions drive architecture Be prepared to re-evaluate/review your solutions

Another Quote An organization must have some means of combating the process by which people become prisoners of their procedures. The rule book becomes fatter as the ideas become fewer. Almost every well established organization is a coral reef of procedures that were laid down to achieve some long-forgotten objective. -- John W. Gardner Some would argue computer architecture is falling prey to this phenomenon.

Who Course for? Programmable Architects (FPGA, processor, etc.) ASIC/ASP architects System designers who may use any of above

What’s it about? Architectures for late-bound computing systems Emphasis on spatial computing Re-exam what goes into these architectures and why Build up tools, techniques, and intuition for the architect and system designer

Topics Instructions Interconnect Compute elements Retiming Specialization Control Allocation Costs Comparisons Modeling Mapping Architecture Components Related Issues

Class Requirements Participation (reading, class discussion) [20%] Weekly exercises [60%] Project Summary [20%] No tests/final

Exercises 4 common/intro 7 “project” -- explore architecture issues from class for a particular application kernel Grade best 9 of 11 Please try all Use HSRA as starting point architecture

Intro Exercises Spatial Compute -- high throughput multiply Special/Spatial -- FIR Cycle -- IIR Area-Time -- AT for above

Project Exercises Kernels selected from Multimedia benchmark set (likely JPEG, GSM, ADPCM, maybe rendering…) Each student has different kernel (together look at variance in application requirements) Different aspect of focus each week

Project Components Analyze sequential version Spatial implementation Interconnect requirements Retiming requirements Power implications Specialization opportunities and impact Programming

Project Report Summarize lessons for some component/feature across class project results E.g. Power, AT, Interconnect

Next Time FPGA/HSRA introduction Take a look at reading HSRA for projects