March, 2007Intro-1http://csg.csail.mit.edu/arvind Design methods to facilitate rapid growth of SoCs Arvind Computer Science & Artificial Intelligence Lab.

Slides:



Advertisements
Similar presentations
SOC Design: From System to Transistor
Advertisements

An EHR based methodology for Concurrency management Arvind (with Asif Khan) Computer Science & Artificial Intelligence Lab Massachusetts Institute of Technology.
Constructive Computer Architecture: Multirule systems and Concurrent Execution of Rules Arvind Computer Science & Artificial Intelligence Lab. Massachusetts.
March 2007http://csg.csail.mit.edu/arvindSemantics-1 Scheduling Primitives for Bluespec Arvind Computer Science & Artificial Intelligence Lab Massachusetts.
Embedded System Lab. What is an embedded systems? An embedded system is a computer system designed for specific control functions within a larger system,
Assurance through Enhanced Design Methodology Orlando, FL 5 December 2012 Nirav Davé SRI International This effort is sponsored by the Defense Advanced.
Feng-Xiang Huang A Low-Cost SOC Debug Platform Based on On-Chip Test Architectures.
DSI Division of Integrated Systems Design Functional Verification Environments Development Goals Our main goals are in the field of developing modular.
6/30/2015HY220: Ιάκωβος Μαυροειδής1 Moore’s Law Gordon Moore (co-founder of Intel) predicted in 1965 that the transistor density of semiconductor chips.
SOFTWARE CRISIS SOLUTIONS? © University of LiverpoolCOMP 319slide 1.
(1) Introduction © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
Stmt FSM Richard S. Uhler Computer Science & Artificial Intelligence Lab Massachusetts Institute of Technology (based on a lecture prepared by Arvind)
Asynchronous Pipelines: Concurrency Issues Arvind Computer Science & Artificial Intelligence Lab Massachusetts Institute of Technology October 13, 2009http://csg.csail.mit.edu/koreaL12-1.
March, 2007http://csg.csail.mit.edu/arvindIPlookup-1 IP Lookup Arvind Computer Science & Artificial Intelligence Lab Massachusetts Institute of Technology.
September 24, L08-1 IP Lookup: Some subtle concurrency issues Arvind Computer Science & Artificial Intelligence Lab.
December 10, 2009 L29-1 The Semantics of Bluespec Arvind Computer Science & Artificial Intelligence Lab Massachusetts Institute.
Chap. 1 Overview of Digital Design with Verilog. 2 Overview of Digital Design with Verilog HDL Evolution of computer aided digital circuit design Emergence.
An Introduction to Programming and Object-Oriented Design Using Java By Jaime Niño and Fred Hosch Slides by Darwin Baines and Robert Burton.
COE4OI5 Engineering Design. Copyright S. Shirani 2 Course Outline Design process, design of digital hardware Programmable logic technology Altera’s UP2.
February 22, 2005http://csg.csail.mit.edu/6.884/L07-1 Bluespec-1: Design Affects Everything Arvind Computer Science & Artificial Intelligence Lab Massachusetts.
December 12, 2006http://csg.csail.mit.edu/6.827/L24-1 Scheduling Primitives for Bluespec Arvind Computer Science & Artificial Intelligence Lab Massachusetts.
Pipelining combinational circuits Arvind Computer Science & Artificial Intelligence Lab. Massachusetts Institute of Technology February 20, 2013http://csg.csail.mit.edu/6.375L05-1.
Lecture on Computer Science as a Discipline. 2 Computer “Science” some people argue that computer science is not a science in the same sense that biology.
High Performance Embedded Computing © 2007 Elsevier Lecture 3: Design Methodologies Embedded Computing Systems Mikko Lipasti, adapted from M. Schulte Based.
February 14, 2007L04-1http://csg.csail.mit.edu/6.375/ Bluespec-1: Design methods to facilitate rapid growth of SoCs Arvind Computer Science & Artificial.
September 3, 2009L02-1http://csg.csail.mit.edu/korea Introduction to Bluespec: A new methodology for designing Hardware Arvind Computer Science & Artificial.
Introduction to Bluespec: A new methodology for designing Hardware Arvind Computer Science & Artificial Intelligence Lab. Massachusetts Institute of Technology.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
March 6, 2006http://csg.csail.mit.edu/6.375/L10-1 Bluespec-4: Rule Scheduling and Synthesis Arvind Computer Science & Artificial Intelligence Lab Massachusetts.
An Overview of Hardware Design Methodology Ian Mitchelle De Vera.
Constructive Computer Architecture: Guards Arvind Computer Science & Artificial Intelligence Lab. Massachusetts Institute of Technology September 24, 2014.
September 22, 2009http://csg.csail.mit.edu/koreaL07-1 Asynchronous Pipelines: Concurrency Issues Arvind Computer Science & Artificial Intelligence Lab.
VLSI Design System-on-Chip Design
What’s Ahead for Embedded Software? (Wed) Gilsoo Kim
2/19/2016http://csg.csail.mit.edu/6.375L11-01 FPGAs K. Elliott Fleming Computer Science & Artificial Intelligence Lab Massachusetts Institute of Technology.
Introduction to Bluespec: A new methodology for designing Hardware Arvind Computer Science & Artificial Intelligence Lab. Massachusetts Institute of Technology.
Constructive Computer Architecture Sequential Circuits - 2 Arvind Computer Science & Artificial Intelligence Lab. Massachusetts Institute of Technology.
Modular Refinement Arvind Computer Science & Artificial Intelligence Lab Massachusetts Institute of Technology March 8,
Introduction to Bluespec: A new methodology for designing Hardware Arvind Computer Science & Artificial Intelligence Lab. Massachusetts Institute of Technology.
February 13, 2008L04-1http://csg.csail.mit.edu/6.375 Bluespec: The need for a new design methodology Arvind Computer Science & Artificial Intelligence.
Multiple Clock Domains (MCD) Arvind with Nirav Dave Computer Science & Artificial Intelligence Lab Massachusetts Institute of Technology.
Problem: design complexity advances in a pace that far exceeds the pace in which verification technology advances. More accurately: (verification complexity)
October 20, 2009L14-1http://csg.csail.mit.edu/korea Concurrency and Modularity Issues in Processor pipelines Arvind Computer Science & Artificial Intelligence.
Introduction to Bluespec: A new methodology for designing Hardware
Introduction to Bluespec: A new methodology for designing Hardware
System-on-Chip Design
Scheduling Constraints on Interface methods
Sequential Circuits Constructive Computer Architecture Arvind
Sequential Circuits: Constructive Computer Architecture
Introduction to Bluespec: A new methodology for designing Hardware
Stmt FSM Arvind (with the help of Nirav Dave)
Pipelining combinational circuits
Multirule Systems and Concurrent Execution of Rules
Bluespec-1: Design Affects Everything
Constructive Computer Architecture: Guards
Pipelining combinational circuits
Modules with Guarded Interfaces
Pipelining combinational circuits
Sequential Circuits - 2 Constructive Computer Architecture Arvind
Introduction to Bluespec: A new methodology for designing Hardware
Multirule systems and Concurrent Execution of Rules
Stmt FSM Arvind (with the help of Nirav Dave)
HIGH LEVEL SYNTHESIS.
Constructive Computer Architecture: Guards
Control Hazards Constructive Computer Architecture: Arvind
Design methods to facilitate rapid growth of SoCs
Multirule systems and Concurrent Execution of Rules
Introduction to Bluespec: A new methodology for designing Hardware
Bluespec-7: Semantics of Bluespec
Presentation transcript:

March, 2007Intro-1http://csg.csail.mit.edu/arvind Design methods to facilitate rapid growth of SoCs Arvind Computer Science & Artificial Intelligence Lab Massachusetts Institute of Technology System-on-a-chip

March, 2007 Intro-2http://csg.csail.mit.edu/arvind/ The biggest SoC drivers Explosive growth in markets for cell phones game boxes sensors and actuators Functionality and applications are constrained primarily by: - cost - power/energy constrains

March, 2007 Intro-3http://csg.csail.mit.edu/arvind/ Current Cellphone Architecture Comms. Processing Application Processing WLAN RF WCDMA/GSM RF Complex, High Performance but must not dissipate more than 3 watts Today’s chip becomes a block in tomorrow’s chip IP reuse is essential Hardware/software migration IP = Intellectual Property

March, 2007 Intro-4http://csg.csail.mit.edu/arvind/ An under appreciated fact If a functionality (e.g. H.264) is moved from a programmable device to a specialized hardware block, the power/energy savings are 100 to 1000 fold but our mind set Software is forgiving Hardware design is difficult, inflexible, brittle, error prone,... Power savings  more specialized hardware

March, 2007 Intro-5http://csg.csail.mit.edu/arvind/ SoC Trajectory: multicores, heterogeneous, regular,... On-chip memory banks Structured on- chip networks General- purpose processors Can we rapidly produce high-quality chips and surrounding systems and software? Application- specific processing units IBM Cell Processor

March, 2007 Intro-6http://csg.csail.mit.edu/arvind/ Things to remember Design costs (hardware & software) dominate Within these costs verification and validation costs dominate IP reuse is essential to prevent design- team sizes from exploding design cost = number of engineers x time to design

March, 2007 Intro-7http://csg.csail.mit.edu/arvind/ Common quotes “Design is not a problem; design is easy” Almost complete reliance on post-design verification for quality Mind set “Verification is a problem” “Timing closure is a problem” “Physical design is a problem”

March, 2007 Intro-8http://csg.csail.mit.edu/arvind/ The U.S. auto industry Sought quality solely through post-build inspection Planned for defects and rework and U.S. quality was… Through the early 1980s: Defect MakeInspectRework Defect

March, 2007 Intro-9http://csg.csail.mit.edu/arvind/ … less than world class Adding quality inspectors (“verification engineers”) and giving them better tools, was not the solution The Japanese auto industry showed the way “Zero defect” manufacturing

March, 2007 Intro-10http://csg.csail.mit.edu/arvind/ New mind set: Design affects everything! A good design methodology Can keep up with changing specs Permits architectural exploration Facilitates verification and debugging Eases changes for timing closure Eases changes for physical design Promotes reuse Design for Correctness  It is essential to

March, 2007 Intro-11http://csg.csail.mit.edu/arvind/ New ways of expressing behavior to reduce design complexity Decentralize complexity: Rule-based specifications (Guarded Atomic Actions) Lets you think one rule at a time Formalize composition: Modules with guarded interfaces Automatically manage and ensure the correctness of connectivity, i.e., correct-by- construction methodology Bluespec  Smaller, simpler, clearer, more correct code for both simulation AND synthesis Strong flavor of Unity

March, 2007 Intro-12http://csg.csail.mit.edu/arvind/ data_in push_req_n pop_req_n clk rstn data_out full empty Reusing IP Blocks Example: Commercially available FIFO IP block These constraints are spread over many pages of the documentation... No machine verification of such informal constraints is feasible

March, 2007 Intro-13http://csg.csail.mit.edu/arvind/ Bluespec promotes composition through guarded interfaces not full not empty n n rdy enab rdy enab rdy enq deq first FIFO theModuleA theModuleB theFifo.enq(value1); theFifo.deq(); value2 = theFifo.first(); theFifo.enq(value3); theFifo.deq(); value4 = theFifo.first(); theFifo Enqueue arbitration control Dequeue arbitration control Self-documenting interfaces; Automatic generation of logic to eliminate conflicts in use.

March, 2007 Intro-14http://csg.csail.mit.edu/arvind/ Bluespec: State and Rules organized into modules All state (e.g., Registers, FIFOs, RAMs,...) is explicit. Behavior is expressed in terms of atomic actions on the state: Rule: guard  action Rules can manipulate state in other modules only via their interfaces. interface module

March, 2007 Intro-15http://csg.csail.mit.edu/arvind/ The Plan BS2- Simple Example: GCD BS3- Combinational Circuits: IFFT BS4- Architectural Exploration: a BS5- The IP Lookup problem; subtle concurrency issues BS6- Bluespec Semantics and Scheduling Primitives Bluespec is available in two versions: BSV – Bluespec in System Verilog ESEPro – Bluespec in SystemC These lectures will use BSV syntax