ECAD Tool Flows These notes are taken from the book: It’s The Methodology, Stupid! by Pran Kurup, Taher Abbasi, Ricky Bedi, Publisher ByteK Designs,

Slides:



Advertisements
Similar presentations
Digital Systems Verification Lecture 13 Alessandra Nardi.
Advertisements

TOPIC : SYNTHESIS DESIGN FLOW Module 4.3 Verilog Synthesis.
Logic Synthesis – 3 Optimization Ahmed Hemani Sources: Synopsys Documentation.
Ch.3 Overview of Standard Cell Design
Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003.
CSE241 Formal Verification.1Cichy, UCSD ©2003 CSE241A VLSI Digital Circuits Winter 2003 Recitation 6: Formal Verification.
DCDL The Design Constraints Description Language An Emerging OVI Standard.
Timing Analysis Timing Analysis Instructor: Dr. Vishwani D. Agrawal ELEC 7770 Advanced VLSI Design Team Project.
The Design Process Outline Goal Reading Design Domain Design Flow
1 Hardware description languages: introduction intellectual property (IP) introduction to VHDL and Verilog entities and architectural bodies behavioral,
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
Logic Design Outline –Logic Design –Schematic Capture –Logic Simulation –Logic Synthesis –Technology Mapping –Logic Verification Goal –Understand logic.
An Introduction to Synopsys Design Automation Jeremy Lee November 7, 2007.
1 Application Specific Integrated Circuits. 2 What is an ASIC? An application-specific integrated circuit (ASIC) is an integrated circuit (IC) customized.
ECE 699: Lecture 2 ZYNQ Design Flow.
Foundation and XACTstepTM Software
1 Chapter 7 Design Implementation. 2 Overview 3 Main Steps of an FPGA Design ’ s Implementation Design architecture Defining the structure, interface.
From Concept to Silicon How an idea becomes a part of a new chip at ATI Richard Huddy ATI Research.
Digital System Design EEE344 Lecture 1 INTRODUCTION TO THE COURSE
Timing control in verilog Module 3.1 Delays in Verilog.
EDA TOOLS. Why EDA? Imagine a Intel based micro processor having 1.5 million transistors. Would it be feasible to design such a complex system with help.
Digital Circuit Implementation. Wafers and Chips  Integrated circuit (IC) chips are manufactured on silicon wafers  Transistors are placed on the wafers.
VerificationTechniques for Macro Blocks (IP) Overview Inspection as Verification Adversarial Testing Testbench Design Timing Verification.
Design methodology.
TM Efficient IP Design flow for Low-Power High-Level Synthesis Quick & Accurate Power Analysis and Optimization Flow JAN Asher Berkovitz Yaniv.
ISE. Tatjana Petrovic 249/982/22 ISE software tools ISE is Xilinx software design tools that concentrate on delivering you the most productivity available.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Lecture 12 – Design Procedure.
Chap. 1 Overview of Digital Design with Verilog. 2 Overview of Digital Design with Verilog HDL Evolution of computer aided digital circuit design Emergence.
CAD Techniques for IP-Based and System-On-Chip Designs Allen C.-H. Wu Department of Computer Science Tsing Hua University Hsinchu, Taiwan, R.O.C {
ASIC/FPGA design flow. FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming.
CADENCE CONFIDENTIAL 1CADENCE DESIGN SYSTEMS, INC. Cadence Formal Verification 2003 Beijing International Microelectronics Symposium C. Michael Chang Vice.
ASIC Design Flow – An Overview Ing. Pullini Antonio
Xilinx Development Software Design Flow on Foundation M1.5
Design Verification An Overview. Powerful HDL Verification Solutions for the Industry’s Highest Density Devices  What is driving the FPGA Verification.
HDL-Based Layout Synthesis Methodologies Allen C.-H. Wu Department of Computer Science Tsing Hua University Hsinchu, Taiwan, R.O.C {
Lecture 2 1 ECE 412: Microcomputer Laboratory Lecture 2: Design Methodologies.
Chonnam national university VLSI Lab 8.4 Block Integration for Hard Macros The process of integrating the subblocks into the macro.
EE 466/586 VLSI Design Partha Pande School of EECS Washington State University
Slide 1 2. Verilog Elements. Slide 2 Why (V)HDL? (VHDL, Verilog etc.), Karen Parnell, Nick Mehta, “Programmable Logic Design Quick Start Handbook”, Xilinx.
CHAPTER 8 Developing Hard Macros The topics are: Overview Hard macro design issues Hard macro design process Physical design for hard macros Block integration.
ASIC to FPGA Conversion Flow. Conversion Feasibility Flow Chart Design Rules Checking Feasibility Report RTL CodeQuick Conversion ASIC Netlist Fault coverage.
Verification – The importance
ECE-C662 Lecture 2 Prawat Nagvajara
Tools - Design Manager - Chapter 6 slide 1 Version 1.5 FPGA Tools Training Class Design Manager.
DEVICES AND DESIGN : ASIC. DEFINITION Any IC other than a general purpose IC which contains the functionality of thousands of gates is usually called.
IMPLEMENTATION OF MIPS 64 WITH VERILOG HARDWARE DESIGN LANGUAGE BY PRAMOD MENON CET520 S’03.
Chapter 11 System-Level Verification Issues. The Importance of Verification Verifying at the system level is the last opportunity to find errors before.
Classification of Simulators Logic Simulators Emulator-basedSchematic-basedHDL-based Event-drivenCycle-basedGateSystem.
ASIC/FPGA design flow. Design Flow Detailed Design Detailed Design Ideas Design Ideas Device Programming Device Programming Timing Simulation Timing Simulation.
Written by Whitney J. Wadlow
-1- Soft Core Viterbi Decoder EECS 290A Project Dave Chinnery, Rhett Davis, Chris Taylor, Ning Zhang.
EECE 320 L8: Combinational Logic design Principles 1Chehab, AUB, 2003 EECE 320 Digital Systems Design Lecture 8: Combinational Logic Design Principles.
EMT 351/4 DIGITAL IC DESIGN Week # 1 EDA & HDL.
Introduction to ASICs ASIC - Application Specific Integrated Circuit
ASIC Design Methodology
Topics Modeling with hardware description languages (HDLs).
Topics Modeling with hardware description languages (HDLs).
EE141 Design Styles and Methodologies
Timing Analysis 11/21/2018.
332:437 Lecture 7 Verilog Hardware Description Language Basics
ECE-C662 Introduction to Behavioral Synthesis Knapp Text Ch
ECE 699: Lecture 3 ZYNQ Design Flow.
332:437 Lecture 7 Verilog Hardware Description Language Basics
HIGH LEVEL SYNTHESIS.
332:437 Lecture 7 Verilog Hardware Description Language Basics
THE ECE 554 XILINX DESIGN PROCESS
H a r d w a r e M o d e l i n g O v e r v i e w
Measuring the Gap between FPGAs and ASICs
Digital Designs – What does it take
THE ECE 554 XILINX DESIGN PROCESS
Presentation transcript:

ECAD Tool Flows These notes are taken from the book: It’s The Methodology, Stupid! by Pran Kurup, Taher Abbasi, Ricky Bedi, Publisher ByteK Designs, ( http://www.bytekinc.com (now a defunct link) A tool flow describes the method and order (the methodology) in tools are used produce a design Different companies can take the same collection of tools and use a different methodology to produce an IC Typically, companies will add their own in-house tools to the off-the-shelf tools to tailor the tool flow to their particular needs An ECAD group is usually responsible for designing and maintaining the methodology – they are also responsible for training others in the use of this methodology. BR 6/00

An ASIC Flow Functional Specifications RTL Coding Statistical Wire load models for constraints Behavioral Simulation Logic Synthesis Test Insertion/ATPG ASIC – Application Specific Integrated Circuit ATPG – Automated Test Pattern Generation BR 6/00

An ASIC Flow (cont) IPO – In Place Optimization Test Insertion/ATPG IPO/Physical Hierarchy Gate-level Netlist Simulation Floor-Planning Placement & Route BR 6/00

“Timing Closure” “Timing Closure” refers to producing a design that meets timing specifications Want to verify that your design has timing closure before you fabricate The problem is that with deep submicron, the parasitics (R,L,C) of the physical layout greatly affect timing This leads to the need to produce layout, extract parasitics from the layout, ‘back-annotate’ the parasitics into your timing verification methodology, and then modify logic/layout in order to meet timing specifications and achieve timing closure BR 6/00

The Hell of Iteration Logic Synthesis Placement & Route Parasitic Extraction Incremental Place/Route Back Annotation Files (I.e., SDF) Timing Verification (static timing analysis, gate level simulation No In-Place Optimization, Incremental Synthesis Meets timing? Yes LVS, DRC, Tapeout BR 6/00

Loop through P&R is Time Consuming In-Place Optimization essentially means to tweak transistor sizes without moving cells around Moving cells around requires routing to be modified If you have to move cells or change the netlist such that different cells are used, then would like to do it in a local area so that you do not have go through the entire Place/Route process again Incremental Place/Route tries to accomplish this Incremental synthesis means to read in the gate level netlist, and modify the netlist incrementally in order to meet failed timing constraints Does NOT START with RTL, starts with gate level netlist produced by first synthesis pass Goal is to change as few as gates as possible, and then use incremental place/route to change the layout. BR 6/00

Verification Methodology System Simulators Behavioral HDL HDL Simulators Code Coverage RTL Gate Level Simulators Static Timing Analysis Gate-Level Hardware Accelerators Layout vs. Schematic (LVS) Physical Domain Verification Methodology BR 6/00

Behavioral RTL Testbench Simulation Gate Level (post Synthesis, pre-layout) Gate Level (post Synthesis, post-layout) Goal is to use same testbench for all levels of simulation abstraction, and mix different levels BR 6/00

HDL-Based (Verilog, VHDL) Schematic-based Hardware Logic Simulators HDL-Based (Verilog, VHDL) Schematic-based Hardware Gate-Sim System Event-Driven Cycle-Based Obsolete DSP Apps, Tools: Matlab, SPW, COASSAP New technology: Speedsim, IKOS, Cobra Interpreted Code Compiled Code HW Accel FPGA based from Quickturn, IKOS Leapfrog, NC-Verilog, Spec-C, SystemC Verilog-XL Modelsim IKOS BR 6/00

Comments on Logic Simulators Hardware Emulators usually FPGA-based, used to test functionality of design (can’t simulate at speed) Very expensive, used because 10x-100x faster than software simulation Hardware Acceleration usually means parallel execution of VHDL/Verilog/C/C++ Push towards using C/C++ as simulation language Compiled code can be faster than VHDL/Verilog simulators VHDL/Verilog usually compiled to a ‘byte code’ form, then byte code is interpreted Some simulators will convert Verilog/VHDL to C/C++, then compile for extra speed. Cycle-based simulations do not compute what is going on inside of a clock, just results from clock-to-clock This is a higher level of abstraction, code can be written in either VHDL/Verilog or C/C++ BR 6/00

Formal Verification Formal Verification means that mathematical techniques to prove that the hardware is correct as it progresses from one abstraction level to another (Behavioral to RTL to Gate-level to Physical), etc. Attraction is that circuit does not have to be simulated – no need for test vector generation Generation of test vectors, simulation/checking of vectors time consuming Test vectors may not cover all possible cases Formal Verification is difficult, very much a research area Is currently a ‘hot’ area for tool development BR 6/00

Formal Verification Categories Equivalence Checking – most widely used, easiest Use a mathematical approach to compare a reference design to a revised design (do two netlists implement the same boolean function?) Reference design must be correct Model Checking – a research area Compare a design implementation against a set of properties (the model) that defines the behavior Properties define the specifications of the design Incorporates elements of Equivalence checking but goes beyond this Theorem Proving – most advanced Formally prove two designs are correct Designs must be represented in a ‘formal’ specification language that incorporates the specifications of the design in addition to the behavior VHDL/Verilog does not include this though extensions have been proposed. BR 6/00

Static Timing vs. Full Simulation Timing Static timing traces paths in the design, computes delays along the paths, and checks if delay constraints met No need for vector generation Cannot detect glitches, timing failure due to dynamic behavior (such as charge sharing problems) Static analysis used to direct synthesis optimization – synthesis tools computes delay paths and tries to produce netlists that meet constraints Setup time violations checked for with ‘slow corner’ timing library Hold time violations checked for with ‘fast corner’ timing library Full Simulation timing is time consuming, requires test vector generation, but only way to detect dynamic timing faults BR 6/00

Timing-Driven Layout One way to reduce time spent in timing closure iteration is to have a Place/Route tool capable of timing-driven layout During Place/Route, tool uses timing constraints to driven generation of layout (primarily routing) Must be able to accurately estimate wire delays during place/route procedure Goal is to produce layouts that meet timing constraints so that iterations through physical layout are minimized Most modern P/R tools support timing driven layout BR 6/00

High Level Logic Synthesis Flow RTL High Level Logic Synthesis Flow Logic Synthesis Test Synthesis Placement Back Annotation Incremental Synthesis Parasitic Extraction & Back Annotation Clock Tree Insertion & Routing BR 6/00

Detailed Logic Synthesis Flow Constraints HDL Technology Test Ready Synthesis Logic synthesis Pre-Scan Test DRC test synthesis Scan Insertion Detailed Logic Synthesis Flow Post Scan Test DRC JTAG/IO Pads Synth SDF Path Constraints Floorplanning (Placement) Parasitic Extraction Physical Info based Synthesis (Inc. Syn) SDF, PDEF, set_loads Clock Tree Synthesis/Routing BR 6/00

Logic Synthesis Constraints Synthesis driven by constraints Timing Constraints Clock period, setup time, hold time constraint Area constraints Power Constraints Gate choices can definitely affect power consumption Logic synthesis can generate gating that minimizes the number of transitions during operation Design Rule Constraints Maximum loading on outputs Maximum transition time on outputs BR 6/00

File Formats File Expansion Description LEF PLEF Library Exchange Format Parametric LEF Format developed by Cadence DEF Design Exchange Format SPEF Standard Parasitic Exchange Format Industry standard format SDF Standard Delay Format Industry standard format giving pin to pin delays PDEF Physical Design Exchange Format Industry standard format for physical cluster and placement information (initiated by Synopsys) SDF files can be read by Synopsys – contains both gate delays and interconnect delays. SDF can also be generated by Synopsys. VHDL/Verilog simulators can also use SDF. BR 6/00

Delay from input pin to output pin Header Information Min:Typical:Max Rising Delays Falling Delays Delay from input pin to output pin BR 6/00

Setup/Hold constraints Interconnect Delays BR 6/00

PDEF – Physical Design Exchange Format Would like to exchange clustering information between front end tools (logic synthesis - Design Compiler) and back end tools (physical layout) ‘clustering’ means that the layout tool needs to place a group of cells (a cluster) close together because they are related This will hopefully minimize routing delays between these cells BR 6/00

Cluster Definition BR 6/00

Info in logic synthesis tool Placement by floorplanner BR 6/00

Standard Parasitic Exchange Format (SPEF) Exchange parasitics between layout tools and delay calculators - delay calculators use parasitics to produce SDF files BR 6/00

Header contains information for technology (layers, spacing, etc). LEF files describe physical information for layout libraries – used by external place/route tools Header contains information for technology (layers, spacing, etc). Macro statements define each cell (pins and obstructions – timing info needed for timing driven layout) BR 6/00

DEF files contains final placed/routed design Produced by Silicon Ensemble after placement/routing, imported back into Cadence layout editor (Virtuoso). Contains physical information for routes, pin placement, cell placement BR 6/00