CALTECH CS137 Winter2002 -- DeHon CS137: Electronic Design Automation Day 1: January 7, 2002 Introduction.

Slides:



Advertisements
Similar presentations
CALTECH CS137 Fall DeHon 1 CS137: Electronic Design Automation Day 19: November 21, 2005 Scheduling Introduction.
Advertisements

Courtesy RK Brayton (UCB) and A Kuehlmann (Cadence) 1 Logic Synthesis Sequential Synthesis.
Penn ESE534 Spring DeHon 1 ESE534: Computer Organization Day 14: March 19, 2014 Compute 2: Cascades, ALUs, PLAs.
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.
The Design Process Outline Goal Reading Design Domain Design Flow
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 1: January 14, 2009 Introduction.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 15: March 12, 2007 Interconnect 3: Richness.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 2: January 23, 2008 Covering.
Caltech CS184a Fall DeHon1 CS184a: Computer Architecture (Structures and Organization) Day8: October 18, 2000 Computing Elements 1: LUTs.
EDA (CS286.5b) Day 1 Introduction. Apple Pie Intro (1) How do we design modern computational systems? –Millions->billions of devices –used in everything.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 21: April 15, 2009 Routing 1.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 11: February 14, 2007 Compute 1: LUTs.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 19: April 9, 2008 Routing 1.
Logic Design Outline –Logic Design –Schematic Capture –Logic Simulation –Logic Synthesis –Technology Mapping –Logic Verification Goal –Understand logic.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 5: February 2, 2009 Architecture Synthesis (Provisioning, Allocation)
EDA (CS286.5b) Day 3 Clustering (LUT Map and Delay) N.B. no lecture Thursday.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 16: March 23, 2009 Covering.
EDA (CS286.5b) Day 19 Covering and Retiming. “Final” Like Assignment #1 –longer –more breadth –focus since assignment #2 –…but ideas are cummulative –open.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 5: February 2, 2009 Architecture Synthesis (Provisioning, Allocation)
Register-Transfer (RT) Synthesis Greg Stitt ECE Department University of Florida.
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 13: February 4, 2005 Interconnect 1: Requirements.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 1: January 14, 2015 Introduction Complete questionnaire.
CBSSS 2002: DeHon Architecture as Interface André DeHon Friday, June 21, 2002.
Chapter 1 An Introduction to Processor Design 부산대학교 컴퓨터공학과.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 2: January 26, 2015 Covering Work preclass exercise.
CALTECH CS137 Fall DeHon CS137: Electronic Design Automation Day 1: September 26, 2005 Introduction.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 2: January 21, 2015 Heterogeneous Multicontext Computing Array Work Preclass.
CSE 494: Electronic Design Automation Lecture 2 VLSI Design, Physical Design Automation, Design Styles.
Major objective of this course is: Design and analysis of modern algorithms Different variants Accuracy Efficiency Comparing efficiencies Motivation thinking.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 24: April 18, 2011 Covering and Retiming.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 10: February 18, 2015 Architecture Synthesis (Provisioning, Allocation)
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 8: February 4, 2004 Fault Detection.
Penn ESE525 Spring DeHon 1 ESE535: Electronic Design Automation Day 6: February 4, 2014 Partitioning 2 (spectral, network flow)
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 7: February 3, 2002 Retiming.
1 - CPRE 583 (Reconfigurable Computing): VHDL to FPGA: A Tool Flow Overview Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 5: 9/7/2011.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 1: January 12, 2011 Introduction Complete questionnaire.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 23: April 20, 2015 Static Timing Analysis and Multi-Level Speedup.
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 13: February 20, 2002 Routing 1.
Penn ESE534 Spring DeHon 1 ESE534: Computer Organization Day 2: January 20, 2010 Universality, Gates, Logic Work Preclass Exercise.
Technology Mapping. 2 Technology mapping is the phase of logic synthesis when gates are selected from a technology library to implement the circuit. Technology.
CALTECH CS137 Spring DeHon 1 CS137: Electronic Design Automation Day 5: April 12, 2004 Covering and Retiming.
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 15: March 4, 2002 Two-Level Logic-Synthesis.
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 13: February 6, 2003 Interconnect 3: Richness.
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 6: January 26, 2004 Sequential Optimization (FSM Encoding)
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 10: January 31, 2003 Compute 2:
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 17: March 11, 2002 Sequential Optimization (FSM Encoding)
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 11: January 31, 2005 Compute 1: LUTs.
CBSSS 2002: DeHon Universal Programming Organization André DeHon Tuesday, June 18, 2002.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 15: March 13, 2013 High Level Synthesis II Dataflow Graph Sharing.
CALTECH CS137 Fall DeHon 1 CS137: Electronic Design Automation Day 2: September 28, 2005 Covering.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 1: January 16, 2008 Introduction.
CALTECH CS137 Fall DeHon 1 CS137: Electronic Design Automation Day 21: November 28, 2005 Routing 1.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 25: April 17, 2013 Covering and Retiming.
Advanced Algorithms Analysis and Design
ESE534 Computer Organization
CS137: Electronic Design Automation
ESE535: Electronic Design Automation
ESE535: Electronic Design Automation
ESE534: Computer Organization
ESE534: Computer Organization
ESE535: Electronic Design Automation
Objective of This Course
ESE535: Electronic Design Automation
ESE535: Electronic Design Automation
HIGH LEVEL SYNTHESIS.
ESE535: Electronic Design Automation
CS184a: Computer Architecture (Structures and Organization)
ESE535: Electronic Design Automation
VLSI CAD Flow: Logic Synthesis, Placement and Routing Lecture 5
Presentation transcript:

CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 1: January 7, 2002 Introduction

CALTECH CS137 Winter DeHon Apple Pie Intro (1) How do we design modern computational systems? –Millions->billions of devices –used in everything –billion dollar businesses –rapidly advancing technology –more “effects” to address –rapidly developing applications and uses

CALTECH CS137 Winter DeHon Apple Pie Intro (2) Options: –human handles all the details –human solves problem, machine checks –human defines something about the solution and machine fills in the details Remember: –millions of devices, changing world, TTM

CALTECH CS137 Winter DeHon Apple Pie Intro (3) Human brain power is the bottleneck –to producing new designs –to creating new things (applications of technology) –(to making money)

CALTECH CS137 Winter DeHon Apple Pie Intro (4) How do we unburden the human? –Take details away from him raise the level of abstraction at which he specifies computation –Pick up the slack machine take over the details

CALTECH CS137 Winter DeHon Central Questions How do we make the machine fill in the details (elaborate the design)? How well can we make it solve this problem? How fast can it solve this problem?

CALTECH CS137 Winter DeHon Outline Apple Pie Intro (done) Instructor The Problem Decomposition Costs Not Solved This Class

CALTECH CS137 Winter DeHon Instructor VLSI/CAD user –Architect, Computer Designer Avoid tedium FPGA prototype Analyze Architectures –necessary to explore –costs different Requirements of Computation

CALTECH CS137 Winter DeHon Problem Map from a problem specification down to an efficient implementation on a particular computational substrate. What’s –a specification –a substrate –have to do during mapping

CALTECH CS137 Winter DeHon Problem: Specification Recall: basic tenant of CS theory –we can specify computations percisely –Universal languages/building blocks exist Turing machines nand gates

CALTECH CS137 Winter DeHon Specifications netlist logic gates FSM programming language –C, C++, Lisp, Java block diagram RTL behavioral dataflow graph layout SPICE netlist

CALTECH CS137 Winter DeHon Substrate “full” custom VLSI metal-only gate-array FPGA Processor (scalar, VLIW, Vector, MIMD) billiard balls molecules DNA

CALTECH CS137 Winter DeHon What are we throwing away? (what does mapping have to recover?) layout TR level circuits logic gates / netlist FSM RTL behavioral programming language –C, C++, Lisp, Java

CALTECH CS137 Winter DeHon Specification not Optimal Y = a*b*c + a*b*/c + /a*b*c Multiple representations with the same semantics (computational meaning) Only have to implement the semantics, not the “unimportant” detail Exploit to make smaller/faster/cooler

CALTECH CS137 Winter DeHon Problem Revisited Map from some “higher” level down to substrate Fill in details: –device sizing, placement, wiring, circuits, gate or functional-unit mapping, timing, encoding, data movement, scheduling, resource sharing

CALTECH CS137 Winter DeHon DOMAIN SPECIFIC RTL GATE TRANSISTOR BEHAVIORAL Design Productivity by Approach a b s q 0 1 d clk GATES/WEEK (Dataquest) K - 2K 2K - 10K 8K - 12K Source: Keutzer (UCB EE 244)

CALTECH CS137 Winter DeHon To Design, Implement, Verify 10M transistors a b s q 0 1 d clk ,500 Power Delay Area Beh RTL Implementations here are often not good enough Because implementations here are inferior/ unpredictable Staff Months Source: Keutzer (UCB EE 244)

CALTECH CS137 Winter DeHon Decomposition Conventionally, decompose into phases: –scheduling, assignment -> RTL –retiming, sequential opt. -> logic equations –logic opt., covering -> gates –placement-> placed gates –routing->mapped design Good abstraction, manage complexity

CALTECH CS137 Winter DeHon Decomposition (easy?) All steps are (in general) NP-hard. –routing –placement –partitioning –covering –logic optimization –scheduling What do we do about NP-hard problems? –Return to this problem in a few slides…

CALTECH CS137 Winter DeHon Decomposition Easier to solve –only worry about one problem at a time Less computational work –smaller problem size Abstraction hides important objectives –solving 2 problems optimally in sequence often not give optimal result of simultaneous solution

CALTECH CS137 Winter DeHon Mapping and Decomposition Two important things to get back to –disentangling problems –coping with NP-hardness

CALTECH CS137 Winter DeHon Costs Once get (preserve) semantics, trying to minimize the cost of the implementation. –Otherwise this would be trivial –(none of the problems would be NP-hard) What costs? Typically: EDA [:-)] –energy –delay –area

CALTECH CS137 Winter DeHon Costs Different cost critera (e.g. EDA) –behave differently under transformations –lead to tradeoffs among them [LUT cover example next slide] –even have different optimality/hardness e.g. optimally solve delay covering in poly time, but not area mapping

CALTECH CS137 Winter DeHon Costs: Area vs. Delay

CALTECH CS137 Winter DeHon Big Challenge Rich, challenging, exciting space Great value –practical –theoretical Worth vigorous study –fundamental/academic –pragmatic/commercial

CALTECH CS137 Winter DeHon Costs Cannot, generally, solve a problem independent of costs –costs define what is “optimal” –e.g. (A+B)+C vs. A+(B+C) [cost=pob. Gate output is high] A,B,C independent P(A)=P(B)=0.5, P(C)=0.01 P(A)=0.1, P(B)=P(C)=0.5

CALTECH CS137 Winter DeHon Costs may also simplify problem Often one cost dominates –Allow/supports decomposition –Solve dominant problem/effect first (optimally) –Cost of other affects negligible total solution can’t be far from optimal –e.g. Delay (area) in gates, delay (area) in wires –Require: formulate problem around relative costs Simplify problem at cost of generallity

CALTECH CS137 Winter DeHon Coping with NP-hard Problems simpler sub-problem based on dominate cost or special problem structure problems exhibit structure –optimal solutions found in reasonable time in practice approximation algorithms heuristic solutions high density of good/reasonable solutions?

CALTECH CS137 Winter DeHon Not a solved problem NP-hard problems –almost always solved in suboptimal manner –or for particular special cases decomposed in suboptimal ways quality of solution changes as dominant costs change –…and relative costs are changing! new effects and mapping problems crop up with new architectures, substrates

CALTECH CS137 Winter DeHon This Class Toolkit of techniques at our disposal Common decomposition and subproblems Big ideas that give us leverage Formulating problems and analyze success Cost formulation

CALTECH CS137 Winter DeHon This Class: Toolkit Dynamic Programming Linear Programming (LP, ILP) Graph Algorithms Greedy Algorithms Randomization Search Heuristics Approximation Algorithms

CALTECH CS137 Winter DeHon This Class: Decomposition Scheduling Logic Optimization Covering/gate-mapping Partitioning Placement Routing Select composition (spring?)

CALTECH CS137 Winter DeHon Student Requirements Reading Class Mini-Project –month long, applying ideas from class –[ask about computers, access] Homework(2)/Exam Spring Term: major, student-selected project

CALTECH CS137 Winter DeHon Graduate Class Assume you are here to learn –Motivated –Mature –Not just doing minimal to get by and get a grade

CALTECH CS137 Winter DeHon Misc. Web page Syllabus Reading Assignment 1 Mini-Project [make sure get names/ s]

CALTECH CS137 Winter DeHon Questions?

CALTECH CS137 Winter DeHon Today’s Big Ideas: Human time limiter Leverage: raise abstraction+fill in details Problems complex (human, machine) Decomposition necessary evil (?) Implement semantics –but may transform to reduce costs Dominating effects Problem structure Optimal solution depend on cost (objective)