Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei ECE 300 Advanced VLSI Design Fall 2006 Lecture 24: CAD Systems &

Slides:



Advertisements
Similar presentations
TOPIC : SYNTHESIS DESIGN FLOW Module 4.3 Verilog Synthesis.
Advertisements

ECE 667 Synthesis and Verification of Digital Circuits
ECOE 560 Design Methodologies and Tools for Software/Hardware Systems Spring 2004 Serdar Taşıran.
ECE Synthesis & Verification - Lecture 2 1 ECE 667 Spring 2011 ECE 667 Spring 2011 Synthesis and Verification of Digital Circuits High-Level (Architectural)
Modern VLSI Design 2e: Chapter 8 Copyright  1998 Prentice Hall PTR Topics n High-level synthesis. n Architectures for low power. n Testability and architecture.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics High-level synthesis. Architectures for low power. GALS design.
High Performance Embedded Computing © 2007 Elsevier Chapter 7, part 1: Hardware/Software Co-Design High Performance Embedded Computing Wayne Wolf.
FPGA-Based System Design: Chapter 6 Copyright  2004 Prentice Hall PTR Register-transfer Design n Basics of register-transfer design: –data paths and controllers.
Copyright 2001, Agrawal & BushnellDay-1 PM Lecture 4a1 Design for Testability Theory and Practice Lecture 4a: Simulation n What is simulation? n Design.
Modern VLSI Design 2e: Chapter 4 Copyright  1998 Prentice Hall PTR Topics n Switch networks. n Combinational testing.
Lecture 26: Reconfigurable Computing May 11, 2004 ECE 669 Parallel Computer Architecture Reconfigurable Computing.
1 HW/SW Partitioning Embedded Systems Design. 2 Hardware/Software Codesign “Exploration of the system design space formed by combinations of hardware.
Modern VLSI Design 2e: Chapter4 Copyright  1998 Prentice Hall PTR.
02/02/20091 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
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.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
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.
The Multicycle Processor II CPSC 321 Andreas Klappenecker.
Mahapatra-Texas A&M-Fall'001 cosynthesis Introduction to cosynthesis Rabi Mahapatra CPSC498.
Computer Engineering 222. VLSI Digital System Design Introduction.
1/31/20081 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
Modern VLSI Design 2e: Chapter 4 Copyright  1998 Prentice Hall PTR Topics n Crosstalk. n Power optimization.
Modern VLSI Design 4e: Chapter 4 Copyright  2008 Wayne Wolf Topics n Interconnect design. n Crosstalk. n Power optimization.
Electronic Design Automation. Course Outline 1.Digital circuit design flow 2.Verilog Hardware Description Language 3.Logic Synthesis –Multilevel logic.
Chap. 1 Overview of Digital Design with Verilog. 2 Overview of Digital Design with Verilog HDL Evolution of computer aided digital circuit design Emergence.
Introduction to VLSI Design – Lec01. Chapter 1 Introduction to VLSI Design Lecture # 2 A Circuit Design Example.
CAD for Physical Design of VLSI Circuits
Modern VLSI Design 4e: Chapter 4 Copyright  2008 Wayne Wolf Topics n Switch networks. n Combinational testing.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics Testability and architecture. Design methodologies. Multiprocessor system-on-chip.
Modern VLSI Design 3e: Chapter 5,6 Copyright  2002 Prentice Hall PTR Adapted by Yunsi Fei Topics n Sequential machine (§5.2, §5.3) n FSM construction.
Section 10: Advanced Topics 1 M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi.
1 5. Application Examples 5.1. Programmable compensation for analog circuits (Optimal tuning) 5.2. Programmable delays in high-speed digital circuits (Clock.
CSE 494: Electronic Design Automation Lecture 2 VLSI Design, Physical Design Automation, Design Styles.
1 Towards Optimal Custom Instruction Processors Wayne Luk Kubilay Atasu, Rob Dimond and Oskar Mencer Department of Computing Imperial College London HOT.
Hardware/Software Co-design Design of Hardware/Software Systems A Class Presentation for VLSI Course by : Akbar Sharifi Based on the work presented in.
Modern VLSI Design 3e: Chapter 4 Copyright  1998, 2002 Prentice Hall PTR Topics n Combinational network delay. n Logic optimization.
ELEC692/04 course_des 1 ELEC 692 Special Topic VLSI Signal Processing Architecture Fall 2004 Chi-ying Tsui Department of Electrical and Electronic Engineering.
L11: Lower Power High Level Synthesis(2) 성균관대학교 조 준 동 교수
Modern VLSI Design 3e: Chapters 3 & 8Partly from 2002 Prentice Hall PTR week6-1 Lectures 16 Transfer Characteristics (Delay and Power) Feb. 10, 2003.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics Basics of register-transfer design: –data paths and controllers; –ASM charts. Pipelining.
Modern VLSI Design 3e: Chapter 4 Copyright  1998, 2002 Prentice Hall PTR Topics n Interconnect design. n Crosstalk. n Power optimization.
Modern VLSI Design 3e: Chapter 10 Copyright  1998, 2002 Prentice Hall PTR Topics n CAD systems. n Simulation. n Placement and routing. n Layout analysis.
Introduction to VLSI Design – Lec01. Chapter 1 Introduction to VLSI Design Lecture # 11 High Desecration Language- Based Design.
6. A PPLICATION MAPPING 6.3 HW/SW partitioning 6.4 Mapping to heterogeneous multi-processors 1 6. Application mapping (part 2)
Topics Combinational network delay.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics Modeling with hardware description languages (HDLs).
Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Topics n Modeling with hardware description languages (HDLs).
IMPLEMENTATION OF MIPS 64 WITH VERILOG HARDWARE DESIGN LANGUAGE BY PRAMOD MENON CET520 S’03.
1 Copyright  2001 Pao-Ann Hsiung SW HW Module Outline l Introduction l Unified HW/SW Representations l HW/SW Partitioning Techniques l Integrated HW/SW.
Modern VLSI Design 4e: Chapter 4 Copyright  2008 Wayne Wolf Topics n Combinational network delay. n Logic optimization.
Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Topics n Basics of register-transfer design: –data paths and controllers; –ASM.
FPGA-Based System Design: Chapter 6 Copyright  2004 Prentice Hall PTR Topics n Low power design. n Pipelining.
FPGA-Based System Design Copyright  2004 Prentice Hall PTR Topics n Modeling with hardware description languages (HDLs).
High Performance Embedded Computing © 2007 Elsevier Lecture 10: Code Generation Embedded Computing Systems Michael Schulte Based on slides and textbook.
EECE 320 L8: Combinational Logic design Principles 1Chehab, AUB, 2003 EECE 320 Digital Systems Design Lecture 8: Combinational Logic Design Principles.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 61 Lecture 6 Logic Simulation n What is simulation? n Design verification n Circuit modeling n True-value.
ASIC Design Methodology
ELEC 7770 Advanced VLSI Design Spring 2016 Introduction
VLSI Testing Lecture 5: Logic Simulation
Topics Modeling with hardware description languages (HDLs).
VLSI Testing Lecture 5: Logic Simulation
Vishwani D. Agrawal Department of ECE, Auburn University
ELEC 7770 Advanced VLSI Design Spring 2014 Introduction
Topics Modeling with hardware description languages (HDLs).
Introduction to cosynthesis Rabi Mahapatra CSCE617
ELEC 7770 Advanced VLSI Design Spring 2012 Introduction
Lesson 4 Synchronous Design Architectures: Data Path and High-level Synthesis (part two) Sept EE37E Adv. Digital Electronics.
ELEC 7770 Advanced VLSI Design Spring 2010 Introduction
ECE-C662 Introduction to Behavioral Synthesis Knapp Text Ch
HIGH LEVEL SYNTHESIS.
Presentation transcript:

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei ECE 300 Advanced VLSI Design Fall 2006 Lecture 24: CAD Systems & Algorithms Yunsi Fei [Adapted from Jan Rabaey et al’s Digital Integrated Circuits ©2002, PSU Irwin & Vijay © 2002, and Princeton Wayne Wolf’s Modern VLSI Design © 2002 ]

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Topics CAD systems and algorithms (§10) –CAD systems (§10.2) –Hardware-software co-design (§10.11) –High-level synthesis (§10.10) –State optimizations (§10.9)

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei CAD systems n Too many transistors, too little time! – have to resort to CAD tools when design IC with billions of transistors n Tools aren’t very useful unless they talk to each other. n Design interchange languages: –VHDL (TM), Verilog (TM) (function and structure); –EDIF (netlists); –GDS, CIF (masks).

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei CAD tool interactions database tool 1tool 2 tool 3tool 4 database (hub-and-spoke)translator tool 1tool 2 tool 3tool 4 xlate a xlate c xlate b xlate e xlate d

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Back annotation n Often want to iteratively improve design. n Back annotation updates a more-abstract design with information from later design stages. –Example: annotate logic schematic with extracted parasitic Rs and Cs. n Back annotation requires tools to know more about each other.

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei An Automated Design Flow High-level synthesis Logic Synthesis Technology Mapping Placement and Routing High level description (VHDL, Verilog) RT-level description (VHDL, Verilog) Netlist (EDIF format) Layout(GDSII, CIF format)

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Verification and testing n Errors could be introduced at different stages –At design stage –At fabrication stage n How do we guarantee our design is correct? –Verification –e.g. Simulation, model checking n How do we know if the chip is functioning? –Testing

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Event-driven simulation n Event-driven simulation is designed for digital circuit characteristics –small number of signal values; –relatively sparse activity over time. n Event-driven simulators try to update only those signals which change in order to reduce CPU time requirements.

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Event-driven simulator structure n An event is a change in a signal value. n A timewheel is a queue of events. n Simulator traces structure of circuit to determine causality of events—event at input of one gate may cause new event at gate’s output.

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Event-driven simulation example A B C D logic networkbehavior

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Event-driven simulation example, cont’d n Events at primary inputs: –A changes at t=1; –B changes at t=2. n Immediate causality: –C changes at t=3 when both inputs to NOR are 0. n Event propagation: –D changes at t=4.

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Delay models n Unit-delay simulators assume that each component has a one-unit delay. Model function but not performance. n Variable-delay simulators allow each component to have its own delay. Accuracy of performance estimates from variable- delay simulators depends on how well circuits can be extracted to digital model.

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Switch simulation n Special type of event-driven simulation optimized for MOS transistors. n Treats transistor as switch. Takes capacitance into account to model charge sharing, etc. n Can also be enhanced to model transistor as resistive switch.

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Switch simulation example

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Switch simulation example, cont’d n Node g may be connected to either power supply, but signals on that node are terminated by gate of transistor. n To solve for values of a and b nodes, must first solve for value of g node. –If g=1, then a=b. –If g=0, other parts of circuit determine a and b independently.

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Switch simulation and charge sharing n Closed transistor connects source and drain nodes. Want to determine voltages of source/drain nodes taking into account capacitance. n Capacitance determines node size. Use size of connected nodes to determine new value of nodes. n Result may be X (unknown).

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Topics n CAD systems and algorithms (§10) –CAD systems (§10.2) –Hardware-software co-design (§10.11) –High-level synthesis (§10.10) –State optimizations (§10.9)

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Hardware/software co-design n Use programmable CPUs along with specialized logic blocks to implement a particular application. n CPUs can implement background functions much more efficiently than dedicated logic: higher utilization of logic. n Important in systems-on-chip.

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Co-synthesis styles n Hardware/software partitioning: –Architectural template consists of 1 CPU + n ASICs. –Put operations on CPU or ASIC. n Distributed system synthesis: –No fixed architectural template. –Allocate function units and communication, schedule operations.

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Topics n CAD systems and algorithms (§10) –CAD systems (§10.2) –Hardware-software co-design (§10.11) –High-level synthesis (§10.10) –State optimizations (§10.9)

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei High-Level Synthesis n High-level synthesis systems translate behavioral descriptions into register-transfer implementations by scheduling and binding, and control optimization. n Most high-level synthesis systems concentrate on data paths.

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Force-directed scheduling n Compute schedulable range of each operator by computing ASAP, ALAP schedules –Find a schedule that involves lowest cost between ASAP and ALAP Distribution cost = cost of operator  probability it will be scheduled in that step. n Force = difference between distribution cost at a control step and average distribution.

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Example n Cost distribution –Assume adder cost 1 –2, 2.5, 1.5 for stage 1, 2, 3 n Force calculation –For each possible move »F A=1 = (2-2.5)×.5 = -.25 »F B=1 = (2-2.5)×.5 = -.25 »F B=2 =F C=3 = (2-2.5)×.5 = -.25 »F C=2 = ( )×.5 = 0.5 –Take the smallest force ASAPALAP A C B

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Example

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Scheduling under resource constraints ASAP Resource constraints

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Scheduling extensions n Chaining: executing several operators in one cycle to balance path lengths. n Multicycling: executing a pipelined operator over several cycles.

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Binding n Which resource(s) should be used for a specific operation, and which storage element used for a variable n Datapath element allocation –Straightforward n Register allocation for variables –Can be formulated as clique partitioning. –Good heuristic algorithms exist to solve clique partitioning problems

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Clique partitioning n Resource allocation graph –Node: an element to be allocated. –Edge: Two elements can share the resource n Clique: A fully-connected subgraph n Example –Two variables can share the same register if they are not live at any given time

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Clique partitioning example A C E B D F

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Resource binding on a scheduled graph

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Topics n CAD systems and algorithms (§10) –CAD systems (§10.2) –Hardware-software co-design (§10.11) –High-level synthesis (§10.10) –State optimizations (§10.9)

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Sequential machine optimizations n State assignment: choose codes for states. n Create common factors in states by assigning them close codes: –s0 = 000, s1 = 001 (x 0 ’ x 1 ’ x 2 ); –s0 + s1 = x 0 ’ x 1 ’. n If all constraints cannot be satisfied in minimum number of bits, can add bits to code to allow constraints to be satisfied

Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei Adding code bits code groups: s1, s2 s2, s3 s3, s4 S1S1 S2S2 S3S3 S4S4