Spring 07, Mar 8 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Timing Verification and Optimization Vishwani D.

Slides:



Advertisements
Similar presentations
10/4-6/05ELEC / Lecture 111 ELEC / (Fall 2005) Special Topics in Electrical Engineering Low-Power Design of Electronic Circuits.
Advertisements

CPE 626 CPU Resources: Adders & Multipliers Aleksandar Milenkovic Web:
Timing Analysis - Delay Analysis Models
Mar. 23, 2001VLSI Test: Bushnell-Agrawal/Lecture 201 Lecture 20 Delay Test n Delay test definition n Circuit delays and event propagation n Path-delay.
Courtesy RK Brayton (UCB) and A Kuehlmann (Cadence) 1 Logic Synthesis Timing Analysis.
Spring 07, Apr 10, 12 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Constraint Graph and Performance Optimization.
Spring 07, Feb 6 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Verification Vishwani D. Agrawal James J. Danaher.
CSE-221 Digital Logic Design (DLD)
Spring 07, Feb 13 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Binary Decision Diagrams Vishwani D. Agrawal James.
Fall 2006, Oct. 31, Nov. 2 ELEC / Lecture 10 1 ELEC / (Fall 2006) Low-Power Design of Electronic Circuits Power Analysis:
Dec. 19, 2005ATS05: Agrawal and Doshi1 Concurrent Test Generation Auburn University, Department of Electrical and Computer Engineering Auburn, AL 36849,
Concurrent Test Generation Auburn University, Department of Electrical and Computer Engineering Auburn, AL 36849, USA Vishwani D. Agrawal Alok S. Doshi.
Spring 08, Apr 1 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2008 Testability Measures Vishwani D. Agrawal James.
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.
Spring 08, Jan 31.. ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2008 Timing Simulation and STA Vishwani D. Agrawal.
Copyright Agrawal, 2007 ELEC6270 Fall 07, Lecture 12 1 ELEC 5270/6270 Fall 2007 Low-Power Design of Electronic Circuits Pass Transistor Logic: A Low Power.
CSE 246: Computer Arithmetic Algorithms and Hardware Design Instructor: Prof. Chung-Kuan Cheng Winter 2004 Lecture 4.
Spring 07, Feb 8 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Logic Equivalence Vishwani D. Agrawal James J.
Spring 08, Feb 28 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2008 Retiming Vishwani D. Agrawal James J. Danaher.
Spring 07, Jan 23 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Moore’s Law Vishwani D. Agrawal James J. Danaher.
Spring 08, Mar 27 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2008 Fault Simulation Vishwani D. Agrawal James J.
Vishwani D. Agrawal James J. Danaher Professor
10/11/05ELEC / Lecture 121 ELEC / (Fall 2005) Special Topics in Electrical Engineering Low-Power Design of Electronic Circuits.
January 16, '02Agrawal: Delay testing1 Delay Testing of Digital Circuits Vishwani D. Agrawal Agere Systems, Murray Hill, NJ USA
Spring 08, Mar 4, 6 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2008 Constraint Graph and Performance Optimization.
Spring 07, Mar 20 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 A Linear Programming Solution to Clock Constraint.
Spring 07, Apr 5 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Retiming Vishwani D. Agrawal James J. Danaher Professor.
Spring 07, Mar 1, 6 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Timing Simulation and STA Vishwani D. Agrawal.
CSE 246: Computer Arithmetic Algorithms and Hardware Design Instructor: Prof. Chung-Kuan Cheng Lecture 4.
ECE 301 – Digital Electronics
Spring 08, Feb 6 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2008 Timing Verification and Optimization Vishwani D.
Spring 07, Jan 30 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 SOC Test Scheduling Vishwani D. Agrawal James.
 Arithmetic circuit  Addition  Subtraction  Division  Multiplication.
On Timing- Independent False Path Identification Feng Yuan, Qiang Xu Cuhk Reliable Computing Lab, The Chinese University of Hong Kong ICCAD 2010.
Spring 2010, Feb 10...ELEC 7770: Advanced VLSI Design (Agrawal)1 ELEC 7770 Advanced VLSI Design Spring 2010 Constraint Graph and Retiming Solution Vishwani.
Chapter 6-1 ALU, Adder and Subtractor
Arithmetic Building Blocks
False Path. Timing analysis problems We want to determine the true critical paths of a circuit in order to: –To determine the minimum cycle time that.
Computing Systems Designing a basic ALU.
Spring 2014, Feb 14...ELEC 7770: Advanced VLSI Design (Agrawal)1 ELEC 7770 Advanced VLSI Design Spring 2014 Constraint Graph and Retiming Solution Vishwani.
April 3, 2003Agrawal: Fault Collapsing1 Hierarchical Fault Collapsing; Functional Equivalences and Dominances Vishwani D. Agrawal Rutgers University, Dept.
Spring 2010, Mar 10ELEC 7770: Advanced VLSI Design (Agrawal)1 ELEC 7770 Advanced VLSI Design Spring 2010 Gate Sizing Vishwani D. Agrawal James J. Danaher.
1 Carry Lookahead Logic Carry Generate Gi = Ai Bi must generate carry when A = B = 1 Carry Propagate Pi = Ai xor Bi carry in will equal carry out here.
CPEN Digital System Design
ELEC Digital Logic Circuits Fall 2015 Delay and Power Vishwani D. Agrawal James J. Danaher Professor Department of Electrical and Computer Engineering.
ELEC Digital Logic Circuits Fall 2014 Delay and Power Vishwani D. Agrawal James J. Danaher Professor Department of Electrical and Computer Engineering.
Speaker: Nansen Huang VLSI Design and Test Seminar (ELEC ) March 9, 2016 Simulation-Based Equivalence Checking.
ELEC 5270/6270 Spring 2013 Low-Power Design of Electronic Circuits Pass Transistor Logic: A Low Power Logic Family Vishwani D. Agrawal James J. Danaher.
Vishwani D. Agrawal James J. Danaher Professor
VLSI Testing Lecture 5: Logic Simulation
Vishwani D. Agrawal Department of ECE, Auburn University
VLSI Testing Lecture 6: Fault Simulation
VLSI Testing Lecture 7: Combinational ATPG
ELEC Digital Logic Circuits Fall 2014 Logic Testing (Chapter 12)
CSE Winter 2001 – Arithmetic Unit - 1
ELEC 7770 Advanced VLSI Design Spring 2012 Retiming
ELEC 7770 Advanced VLSI Design Spring 2010 Interconnects and Crosstalk
Vishwani D. Agrawal James J. Danaher Professor
ELEC 5270/6270 Spring 2011 Low-Power Design of Electronic Circuits Pass Transistor Logic: A Low Power Logic Family Vishwani D. Agrawal James J. Danaher.
VLSI Testing Lecture 8: Sequential ATPG
ELEC 7770 Advanced VLSI Design Spring 2014 Technology Mapping
ELEC 7770 Advanced VLSI Design Spring 2016 Technology Mapping
Fault Models, Fault Simulation and Test Generation
Vishwani D. Agrawal James J. Danaher Professor
VLSI Testing Lecture 7: Combinational ATPG
Vishwani D. Agrawal James J. Danaher Professor
VLSI Testing Lecture 9: Delay Test
ELEC 7770 Advanced VLSI Design Spring 2016 Retiming
ELEC Digital Logic Circuits Fall 2015 Logic Testing (Chapter 12)
ELEC 7770 Advanced VLSI Design Spring 2012 Timing Simulation and STA
Presentation transcript:

Spring 07, Mar 8 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Timing Verification and Optimization Vishwani D. Agrawal James J. Danaher Professor ECE Department, Auburn University Auburn, AL

Spring 07, Mar 8ELEC 7770: Advanced VLSI Design (Agrawal)2 Proof of Correctness  Static timing analysis proves the timing correctness. That is, the circuit is guaranteed to work at the clock rate determined by the critical path.  But the circuit may also work correctly at faster speeds.  Because the critical path identified by STA may be a “false path”.  STA overestimates the delay of the circuit.

Spring 07, Mar 8ELEC 7770: Advanced VLSI Design (Agrawal)3 False and True Paths  A false path cannot propagate an event and hence cannot affect the timing of the circuit. False paths are dynamically unsensitizable.  Dynamically sensitizable path (true path): All off-path inputs must settle down to their non-controlling values when the event propagates through the path. 1 z y a b c d e f True path of length 4 True path of length 3

Spring 07, Mar 8ELEC 7770: Advanced VLSI Design (Agrawal)4 Static Sensitization of Path  Static sensitization of path: All off-path inputs can be set to their non-controlling values.  Longest path in the following example is statically unsensitizable. Such paths are often referred to, though not correctly, as false paths. 1 z y a b de f False path of length 4 True path of length

Spring 07, Mar 8ELEC 7770: Advanced VLSI Design (Agrawal)5 An Example  A statically unsensitizable false path can be dynamically sensitizable.  P. C. McGeer and R. K. Brayton, Integrating Functional and Temporal Domains in Logic Design, Springer, g a b d e f c 1 False paths of delay 3 1

Spring 07, Mar 8ELEC 7770: Advanced VLSI Design (Agrawal)6 Static Sensitization Condition Off-path inputs x y z There must exist an input vector (PI) that satisfies the following conditions: ∂y/∂x = 1, ∂z/∂y = 1,... Where ∂y/∂x = y(x=1, PI)  y(x=0, PI) is Boolean difference

Spring 07, Mar 8ELEC 7770: Advanced VLSI Design (Agrawal)7 An ATPG Method x y z Stuck-at-0 Path is false if this fault is redundant

Spring 07, Mar 8ELEC 7770: Advanced VLSI Design (Agrawal)8 Optimism and Pessimism Dynamically sensitizable paths Statically sensitizable Paths (optimistic) Structural paths analyzed by STA (pessimistic)

Spring 07, Mar 8ELEC 7770: Advanced VLSI Design (Agrawal)9 Theorem  Every statically sensitizable path is dynamically sensitizable.  Proof: Since a vector exists to sensitize the path, if that vector does not specify the path input, then toggling the primary input at the origin of the path will propagate an event through the path.  P. C. McGeer and R. K. Brayton, Integrating Functional and Temporal Domains in Logic Design, Springer, 1991, p. 35.

Spring 07, Mar 8ELEC 7770: Advanced VLSI Design (Agrawal)10 Theorem  Longest path in a circuit is dynamically sensitizable if it is statically sensitizable.  Proof: Because this is the longest path, all off- path inputs will settle to their sensitizing values at the inputs of any gate before the on-path event propagates through that gate.  P. C. McGeer and R. K. Brayton, Integrating Functional and Temporal Domains in Logic Design, Springer, 1991, p. 37.

Spring 07, Mar 8ELEC 7770: Advanced VLSI Design (Agrawal)11 Speeding Up a Circuit a w u v x y z a w u v x y z time 2 2 3

Spring 07, Mar 8ELEC 7770: Advanced VLSI Design (Agrawal)12 Speeding Up a Circuit a w u v x y z a w u v x y z time Reducing the delay of a false path can increase circuit delay.

Spring 07, Mar 8ELEC 7770: Advanced VLSI Design (Agrawal)13 A Delay Optimization Algorithm  REDUCE_DELAY(Circuit graph (V, E), ε) Repeat { Compute critical paths and critical delay Δ Set output data ready time to Δ Compute slacks U = vertex subset with slack < ε W = select vertices in U Apply transformation to vertices in W } until (no transformation can reduce Δ) }  G. De Micheli, Synthesis and Optimization of Digital Circuits, McGraw-Hill, 1994, p. 427.

Spring 07, Mar 8ELEC 7770: Advanced VLSI Design (Agrawal)14 Example of a Transformation (1) delay= Δ = 11 a b c d e g x y x = a’ + b’ + c’ + d’ + e’

Spring 07, Mar 8ELEC 7770: Advanced VLSI Design (Agrawal)15 Example of a Transformation (2) delay= Δ = 8 x y d b c a e g

Spring 07, Mar 8ELEC 7770: Advanced VLSI Design (Agrawal)16 32-bit Ripple-Carry Adder FA0 FA1 FA2 FA31 c0 a0 b0 a1 b1 a2 b2 a31 b31 sum0 sum1 sum2 sum31 c31

Spring 07, Mar 8ELEC 7770: Advanced VLSI Design (Agrawal)17 One-bit Full-Adder Circuit ai bi XOR AND XOR AND OR ci sumi Ci+1 FAi

Spring 07, Mar 8ELEC 7770: Advanced VLSI Design (Agrawal)18 Speeding Up the Adder 16-bit ripple carry adder a0-a15 b0-b15 cin sum0-sum15 16-bit ripple carry adder a16-a31 b16-b bit ripple carry adder a16-a31 b16-b31 1 Multiplexer sum16-sum31, c This is a carry-select adder