Timing Optimization Andreas Kuehlmann

Slides:



Advertisements
Similar presentations
Courtesy RK Brayton (UCB) and A Kuehlmann (Cadence) 1 Logic Synthesis Sequential Synthesis.
Advertisements

CPE 626 CPU Resources: Adders & Multipliers Aleksandar Milenkovic Web:
ECE 551 Digital System Design & Synthesis Lecture 08 The Synthesis Process Constraints and Design Rules High-Level Synthesis Options.
Timing Optimization. Optimization of Timing Three phases 1globally restructure to reduce the maximum level or longest path Ex: a ripple carry adder ==>
Improving Placement under the Constant Delay Model Kolja Sulimma 1, Ingmar Neumann 1, Lukas Van Ginneken 2, Wolfgang Kunz 1 1 EE and IT Department University.
ECE Synthesis & Verification - Lecture 8 1 ECE 697B (667) Spring 2006 ECE 697B (667) Spring 2006 Synthesis and Verification of Digital Circuits Introduction.
➢ Performing Technology Mapping and Optimization by DAG Covering: A Review of Traditional Approaches Evriklis Kounalakis.
Optimizing high speed arithmetic circuits using three-term extraction Anup Hosangadi Ryan Kastner Farzan Fallah ECE Department Fujitsu Laboratories University.
Modern VLSI Design 2e: Chapter4 Copyright  1998 Prentice Hall PTR.
Technology Mapping.
Spring 07, Mar 8 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Timing Verification and Optimization Vishwani D.
Logic Design Outline –Logic Design –Schematic Capture –Logic Simulation –Logic Synthesis –Technology Mapping –Logic Verification Goal –Understand logic.
CSE241 RTL Performance.1Kahng & Cichy, UCSD ©2003 CSE241A VLSI Digital Circuits Winter 2003 Recitation 2.5: Performance Coding.
Merging Synthesis With Layout For Soc Design -- Research Status Jinian Bian and Hongxi Xue Dept. Of Computer Science and Technology, Tsinghua University,
Layout-based Logic Decomposition for Timing Optimization Yun-Yin Lien* Youn-Long Lin Department of Computer Science, National Tsing Hua University, Hsin-Chu,
Modern VLSI Design 2e: Chapter 4 Copyright  1998 Prentice Hall PTR Topics n Crosstalk. n Power optimization.
FPGA Technology Mapping. 2 Technology mapping:  Implements the optimized nodes of the Boolean network to the target device library.  For FPGA, library.
Digital Integrated Circuits© Prentice Hall 1995 Combinational Logic COMBINATIONAL LOGIC.
Modern VLSI Design 4e: Chapter 4 Copyright  2008 Wayne Wolf Topics n Interconnect design. n Crosstalk. n Power optimization.
ECE 260B – CSE 241A Static Timing Analysis 1http://vlsicad.ucsd.edu ECE260B – CSE241A Winter 2005 Logic Synthesis Website:
1 Wire Length Prediction-based Technology Mapping and Fanout Optimization Qinghua Liu Malgorzata Marek-Sadowska VLSI Design Automation Lab UC-Santa Barbara.
ECE Advanced Digital Systems Design Lecture 12 – Timing Analysis Capt Michael Tanner Room 2F46A HQ U.S. Air Force Academy I n t e g r i.
1 EECS 219B Spring 2001 Timing Optimization Andreas Kuehlmann.
Modern VLSI Design 3e: Chapter 4 Copyright  1998, 2002 Prentice Hall PTR Topics n Combinational network delay. n Logic optimization.
Reconfigurable Computing - Type conversions and the standard libraries John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots.
Modern VLSI Design 3e: Chapter 4 Copyright  1998, 2002 Prentice Hall PTR Topics n Interconnect design. n Crosstalk. n Power optimization.
4. Combinational Logic Networks Layout Design Methods 4. 2
Logic Restructuring for Timing Optimization
Topics Combinational network delay.
Technology Mapping. 2 Technology mapping is the phase of logic synthesis when gates are selected from a technology library to implement the circuit. Technology.
Courtesy RK Brayton (UCB) and A Kuehlmann (Cadence) 1 Logic Synthesis Multi-Level Logic Synthesis.
Modern VLSI Design 4e: Chapter 4 Copyright  2008 Wayne Wolf Topics n Combinational network delay. n Logic optimization.
In-Place Decomposition for Robustness in FPGA Ju-Yueh Lee, Zhe Feng, and Lei He Electrical Engineering Dept., UCLA Presented by Ju-Yueh Lee Address comments.
Courtesy RK Brayton (UCB) and A Kuehlmann (Cadence) 1 Logic Synthesis Timing Optimization.
1 Timing Closure and the constant delay paradigm Problem: (timing closure problem) It has been difficult to get a circuit that meets delay requirements.
EECE 320 L8: Combinational Logic design Principles 1Chehab, AUB, 2003 EECE 320 Digital Systems Design Lecture 8: Combinational Logic Design Principles.
Reconfigurable Computing - Performance Issues John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on Cockburn Sound, Western.
COE 360 Principles of VLSI Design Delay. 2 Definitions.
Global Delay Optimization using Structural Choices Alan Mishchenko Robert Brayton UC Berkeley Stephen Jang Xilinx Inc.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 61 Lecture 6 Logic Simulation n What is simulation? n Design verification n Circuit modeling n True-value.
Reducing Structural Bias in Technology Mapping
IAY 0600 Digital Systems Design
Time-borrowing platform in the Xilinx UltraScale+ family of FPGAs and MPSoCs Ilya Ganusov, Benjamin Devlin.
VLSI Testing Lecture 5: Logic Simulation
CSE241A VLSI Digital Circuits Winter 2003 Recitation 2
VLSI Testing Lecture 5: Logic Simulation
Vishwani D. Agrawal Department of ECE, Auburn University
CSE Winter 2001 – Arithmetic Unit - 1
COMBINATIONAL LOGIC.
Vishwani D. Agrawal James J. Danaher Professor
ESE535: Electronic Design Automation
Topics Logic synthesis. Placement and routing..
Sungho Kang Yonsei University
ECE 667 Synthesis and Verification of Digital Systems
Timing Optimization.
Reinventing The Wheel: Developing a New Standard-Cell Synthesis Flow
EE115C – Winter 2009 Digital Electronic Circuits
Integrating an AIG Package, Simulator, and SAT Solver
Combinational Circuits
ECE 352 Digital System Fundamentals
Technology Mapping I based on tree covering
VLSI CAD Flow: Logic Synthesis, Placement and Routing Lecture 5
Lecture 9 Digital VLSI System Design Laboratory
Description and Analysis of MULTIPLIERS using LAVA
EE216A – Fall 2010 Design of VLSI Circuits and Systems
A 200MHz <insert E #>pJ 6-bit Absolute-Value Detector
Reinventing The Wheel: Developing a New Standard-Cell Synthesis Flow
Combinational Circuits
Robert Brayton Alan Mishchenko Niklas Een
Arithmetic Building Blocks
Presentation transcript:

Timing Optimization Andreas Kuehlmann EECS 219B Spring 2003 Timing Optimization Andreas Kuehlmann

Restructuring for Timing Optimization Outline: Definitions and problem statement Overview of techniques (motivated by adders) Tree height reduction (THR) Generalized bypass transform (GBX) Generalized select transform (GST) Partial collapsing

Timing Optimization Factors determining delay of circuit: Underlying circuit technology Circuit type (e.g. domino, static CMOS, etc.) Gate type Gate size Logical structure of circuit Length of computation paths False paths Buffering Parasitics Wire loads Layout

Problem Statement Given: Initial circuit function description Library of primitive functions Performance constraints (arrival/required times) Generate: an implementation of the circuit using the primitive functions, such that: performance constraints are met circuit area is minimized

Current Design Process Behavioral description Behavior Optimization (scheduling) Logic and latches Partitioning (retiming) Logic equations Logic synthesis Technology independent Technology mapping Gate library Perf. Constraints Delay models Gate netlist Timing driven place and route Layout

Technology Mapping for Delay Function tree Buffer tree

Overview of Solutions for Delay Circuit re-structuring Rescheduling operations to reduce time of computation Implementation of function trees (technology mapping) Selection of gates from library Minimum delay (load independent model - Kukimoto) Minimize delay and area (Jongeneel, DAC’00) (combines Lehman-Watanabe and Kukimoto) Implementation of buffer trees Touati (LT-trees) Singh Resizing Constant delay synthesis

Circuit Restructuring Approaches: Local: Mimic optimization techniques in adders Carry lookahead (THR tree height reduction) Conditional sum (GST transformation) Carry bypass (GBX transformation) Global: Reduce depth of entire circuit Partial collapsing Boolean simplification

Restructuring Methods Performance measured by levels, sensitizable paths, technology dependent delays Level based optimizations: Tree height reduction (Singh ‘88) Partial collapsing and simplification (Touati ‘91) Generalized select transform (Berman ‘90) Sensitizable paths Generalized bypass transform (McGeer ‘91)

Tree-Height Reduction (THR) Singh’88: 6 n’ Collapsed Critical region 5 n Critical region 5 5 Duplicated logic l m 1 m 1 1 1 4 k 1 2 4 k i j 3 i j 3 h h 2 2 a b c d e f g a b c d e f g

Tree-Height Reduction 4 New delay = 5 n’ 3 n’ Collapsed Critical region 5 5 2 Duplicated logic 1 m m 1 1 1 1 1 2 4 1 k 2 4 k i j i j 3 3 h h 2 2 a b c d e f g a b c d e f g

Generalized bypass transform (GBX) McGeer’91: Make critical path false Speed up the circuit Bypass logic of critical path(s) fm=f fm+1 … fn=g fm =f fm+1 … fn=g g’ 1 Boolean difference dg __ df s-a-0 redundant

GBX and KMS transform GBX gives little area increase, BUT creates an untestable fault (on control input to multiplexer) KMS transform: (remove false paths without increasing delay) fk is last node on false path that fans out. Duplicate false path {f1,…, fk} -> {f’1, … , f’k} f’j fans out to every fanout of fj except fj+1, and fj just fans out to fj+1 Set f0 input to f1 to controlling value and propagate constant (can do because path is false and does not fanout) KMS results Function of every node, except f1, … ,fk is unchanged Added k nodes Area added in linear in size of length of false paths; in practice small area increase.

KMS Keutzer, Malik, Saldanha’90: fm+1 fm+2 fm+k fm+k+1 … fn Delay is not increased f’m+1 f’m+2 … f’m+k fm+1 fm+k+1 fm+2 fm+k … fn

Generalized select transform (GST) Berman’90: Late signal feeds multiplexor a out b c d e f g a=0 b out c d e f g a=1 1 b a c d e f g

GST vs GBX a c g … h g’ b 1 a GBX dh __ da a c g GBX … h g’ b 1 a a=0 h g’ b 1 a GBX dh __ da a c g GBX … h g’ b 1 a a=0 b c d e f g a=1 b c d e f g a=0 out b GST c d e f g 1 a=1 b c d e f g a

GST vs GBX Select transform appears to be more area efficient But Boolean difference generally more efficiently formed in practice No delay/speedup advantage for either transform Can reuse parts of the critical paths for multiple fanouts on GST GST out2 1 a a=0 out1 b c d e f g 1 a=1 b c d e f g a

Technology Independent Delay Reductions Generally THR, GBX, GST (critical path based methods) work OK, but very greedy and computationally expensive Why are technology independent delay reductions hard? Lack of fast and accurate delay models # levels, fast but crude # levels + correction term (fanout, wires,… ): a little better, but still crude (what coefficients to use?) Technology mapped: reasonable, but very slow Place and route: better but extremely slow Silicon: best, but infeasibly slow (except for FPGAs) b e t r s l o w e r

Conclusions Variety of methods for delay optimization No single technique dominates When applied to ripple-carry adder get Carry-lookahead adder (THR) Carry-bypass adder (GBX) Carry-select adder (GST) Clustering/Partial collapse All techniques ignore false paths when assessing the delay and critical regions Can use KMS transform to eliminate false paths without increasing delay (area increase however).