EE241 - Spring 2013 Advanced Digital Integrated Circuits. Announcements. Lecture 14: Statistical timing Latches

Similar documents
Homework 3 posted this week, due after Spring break Quiz #2 today Midterm project report due on Wednesday No office hour today

EE141-Fall 2010 Digital Integrated Circuits. Announcements. Homework #8 due next Tuesday. Project Phase 3 plan due this Sat.

EE141-Fall 2010 Digital Integrated Circuits. Announcements. Synchronous Timing. Latch Parameters. Class Material. Homework #8 due next Tuesday

Lecture 26: Multipliers. Final presentations May 8, 1-5pm, BWRC Final reports due May 7 Final exam, Monday, May :30pm, 241 Cory

ECE321 Electronics I

EE241 - Spring 2007 Advanced Digital Integrated Circuits. Announcements

ECEN454 Digital Integrated Circuit Design. Sequential Circuits. Sequencing. Output depends on current inputs

Lecture 11: Sequential Circuit Design

Clocking Spring /18/05

Clock - key to synchronous systems. Lecture 7. Clocking Strategies in VLSI Systems. Latch vs Flip-Flop. Clock for timing synchronization

Clock - key to synchronous systems. Topic 7. Clocking Strategies in VLSI Systems. Latch vs Flip-Flop. Clock for timing synchronization

11. Sequential Elements

CPE/EE 427, CPE 527 VLSI Design I Sequential Circuits. Sequencing

Static Timing Analysis for Nanometer Designs

VirtualSync: Timing Optimization by Synchronizing Logic Waves with Sequential and Combinational Components as Delay Units

Sequencing. Lan-Da Van ( 范倫達 ), Ph. D. Department of Computer Science National Chiao Tung University Taiwan, R.O.C. Fall,

Timing Error Detection: An Adaptive Scheme To Combat Variability EE241 Final Report Nathan Narevsky and Richard Ott {nnarevsky,

DEPARTMENT OF ELECTRICAL &ELECTRONICS ENGINEERING DIGITAL DESIGN

More on Flip-Flops Digital Design and Computer Architecture: ARM Edition 2015 Chapter 3 <98> 98

Project 6: Latches and flip-flops

EECS150 - Digital Design Lecture 3 Synchronous Digital Systems Review. Announcements

EE 447/547 VLSI Design. Lecture 9: Sequential Circuits. VLSI Design EE 447/547 Sequential circuits 1

Lecture 21: Sequential Circuits. Review: Timing Definitions

First Name Last Name November 10, 2009 CS-343 Exam 2

Chapter 7 Sequential Circuits

data and is used in digital networks and storage devices. CRC s are easy to implement in binary

Sequential Circuit Design: Part 1

CprE 281: Digital Logic

Unit 11. Latches and Flip-Flops

Lecture 8: Sequential Logic

Timing EECS141 EE141. EE141-Fall 2011 Digital Integrated Circuits. Pipelining. Administrative Stuff. Last Lecture. Latch-Based Clocking.

EEC 118 Lecture #9: Sequential Logic. Rajeevan Amirtharajah University of California, Davis Jeff Parkhurst Intel Corporation

Sequential Circuit Design: Part 1

Lecture 10: Sequential Circuits

EECS150 - Digital Design Lecture 3 - Timing

Flip-Flops. Because of this the state of the latch may keep changing in circuits with feedback as long as the clock pulse remains active.

Flip-Flops A) Synchronization: Clocks and Latches B) Two Stage Latch C) Memory Requires Feedback D) Simple Flip-Flop Gate

A Fast Approach for Static Timing Analysis Covering All PVT Corners Sari Onaissi

Chapter 6. Flip-Flops and Simple Flip-Flop Applications

CMSC 313 Preview Slides

Memory elements. Topics. Memory element terminology. Variations in memory elements. Clock terminology. Memory element parameters. clock.

Advanced Digital Logic Design EECS 303

II. ANALYSIS I. INTRODUCTION

Logic Design II (17.342) Spring Lecture Outline

cascading flip-flops for proper operation clock skew Hardware description languages and sequential logic

Jin-Fu Li Advanced Reliable Systems (ARES) Laboratory. National Central University

Figure 1 shows a simple implementation of a clock switch, using an AND-OR type multiplexer logic.

EECS150 - Digital Design Lecture 3 - Timing

CS8803: Advanced Digital Design for Embedded Hardware

The outputs are formed by a combinational logic function of the inputs to the circuit or the values stored in the flip-flops (or both).

Combinational vs Sequential

Lec 24 Sequential Logic Revisited Sequential Circuit Design and Timing

Bubble Razor An Architecture-Independent Approach to Timing-Error Detection and Correction

Design of Fault Coverage Test Pattern Generator Using LFSR

CMOS Latches and Flip-Flops

System IC Design: Timing Issues and DFT. Hung-Chih Chiang

Level and edge-sensitive behaviour

Midterm Exam 15 points total. March 28, 2011

UNIT IV CMOS TESTING. EC2354_Unit IV 1

Digital Integrated Circuits EECS 312

1. What does the signal for a static-zero hazard look like?

ECEN689: Special Topics in High-Speed Links Circuits and Systems Spring 2011

! Two inverters form a static memory cell " Will hold value as long as it has power applied

Sequential Logic. Sequential Circuits. ! Timing Methodologies " Cascading flip-flops for proper operation " Clock skew

Novel Pulsed-Latch Replacement Based on Time Borrowing and Spiral Clustering

Dual Edge Adaptive Pulse Triggered Flip-Flop for a High Speed and Low Power Applications

EECS 270 Midterm 1 Exam Closed book portion Winter 2017

EECS150 - Digital Design Lecture 17 - Circuit Timing. Performance, Cost, Power

EE241 - Spring 2005 Advanced Digital Integrated Circuits

Administrative issues. Sequential logic

EECS 270 Group Homework 4 Due Friday. June half credit if turned in by June

VARIABLE FREQUENCY CLOCKING HARDWARE

LFSR Counter Implementation in CMOS VLSI

1608 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 18, NO. 11, NOVEMBER 1999

Digital Integrated Circuit Design II ECE 426/526, Chapter 10 $Date: 2016/04/07 00:50:16 $

Sequential Logic Notes

CprE 281: Digital Logic

Chapter 9. Timing Design. (Based on Chapter 7 and Chapter 8 of Wakerly) Data Path Comb. Logic. Reg. Reg. Reg C <= A + B

ISSCC 2003 / SESSION 19 / PROCESSOR BUILDING BLOCKS / PAPER 19.5

Digital Circuits and Systems

Retiming Sequential Circuits for Low Power

EE-382M VLSI II FLIP-FLOPS

ELEN Electronique numérique

Lecture 17: Introduction to Design For Testability (DFT) & Manufacturing Test

Lecture 23 Design for Testability (DFT): Full-Scan

Power Reduction Techniques for a Spread Spectrum Based Correlator

CprE 281: Digital Logic

6.S084 Tutorial Problems L05 Sequential Circuits

Chapter 6. sequential logic design. This is the beginning of the second part of this course, sequential logic.

Testability: Lecture 23 Design for Testability (DFT) Slide 1 of 43

Comparative study on low-power high-performance standard-cell flip-flops

Digital Fundamentals

ECE 555 DESIGN PROJECT Introduction and Phase 1

ECE 341. Lecture # 2

Fundamentals of Computer Systems

Logic Design. Flip Flops, Registers and Counters

Low Power VLSI Circuits and Systems Prof. Ajit Pal Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

Chapter 9. Timing Design. (Based on Chapter 7 and Chapter 8 of Wakerly)

Sequential logic. Circuits with feedback. How to control feedback? Sequential circuits. Timing methodologies. Basic registers

EE273 Lecture 11 Pipelined Timing Closed-Loop Timing November 2, Today s Assignment

Transcription:

EE241 - Spring 2013 Advanced Digital Integrated Circuits Lecture 14: Statistical timing Latches Announcements Homework 3 posted this week, due after Spring break Quiz #2 today Midterm project report due today 2 1

Outline Last lecture Latch-based timing This lecture Variability and timing Latches 3 4. Design for performance B. Statistical timing 2

Pictorial view of setup and hold tests Actual early AT Early RAT 0 or more switching(s) allowed Actual late AT Late RAT Data must be stable Hold time Latest clock arrival time Early slack Data must be stable Late Setup time slack Earliest clock arrival time (next cycle) 5 Handling of across-chip variation Each gate has a range of delay: [lb, ub] The lower bound is used for early timing The upper bound is used for late timing This is called an early/late split Static timing obtains bounds on timing slacks Timing is performed as one forward pass and one backward pass Setup test Hold test Launching late path Launching early path LF CF LF CF Capturing early path Capturing late path 6 3

How is the early/late split computed? The best way is to take known effects into account during characterization of library cells History effect, simultaneous switching, pre-charging of internal nodes, etc. This drives separate characterization for early and late; this is the most accurate method Failing that, the most common method is derating factors Example: Late delay = library delay * 1.05 Early delay = library delay * 0.95 The IBM way of achieving derating is LCD factors (Linear Combination of Delay) (FC=fast chip, SC=slow chip, see next page) Late delay = L * FC_delay + L * NOM_delay + L * SC_delay Early delay = E * FC_delay + E * NOM_delay + E * SC_delay Across-chip variation is therefore assumed to be a fixed proportion of chipto-chip variation for each cell type 7 IBM delay modeling* At a given corner late delay = intrinsic + systematic + random early delay = intrinsic systematic random Intrinsic: Chip means Systematic ACV Random ACV *P. S. Zuchowski, ICCAD 04 Early Late Early Late 8 4

Traditional timing corners Intra-chip variation Intra-chip variation Fast chip early Fast chip late Slow chip early Slow chip late Chip-to-chip variation Fast chip Slow chip 9 The problem with an early/late split The early/late split is very useful Allows bounds during delay modeling Any unknown or hard-to-model effect can be swept under the rug of an early/late split But, it has problems Additional pessimism (which may be desirable) Unnecessary pessimism (which is never desirable) Setup test Launching late path LF CF This physically common portion can t be both fast and slow at the same time Capturing early path 10 5

Additional pessimism: Clock tree view FP1 and FP2 FP3 LF 1 LF 2 LF 3 Comb. CF Comb. Comb. 11 How to have less pessimism? Common path pessimism removal Account for correlations Credit for statistical averaging of random 12 6

Statistical timing Deterministic a + c + MAX Statistical b a + c + MAX b 13 The problem of correlations There are many reasons for correlations Chip-to-chip variations are perfectly correlated within a single chip Same circuit types Same device families Same metal levels Same voltage islands Same regions of the chip Dependence on common sources of variation Reconvergent fanout Etc. In a reasonable-sized chip, there may be 100 million timing quantities, so we don t handle correlations in the classical way Not by storing and manipulating a 100M x 100M covariance matrix 14 7

Canonical form a0 a1 X 1 a2 X 2 an X n a n 1 R a Constant (nominal value) Sensitivities Deviation of global sources of variation from nominal values All timing quantities are parameterized by the sources of variation Correlation can be judged on-demand by inspection Independently random uncertainty 15 Statistical timing basics Represent all timing quantities in canonical form Delays, slews, guard times, ATs, RATs, slacks, PLL adjusts, constraints, CPPR adjusts Propagate ATs forward through the timing graph Addition of two canonical forms is easy Max/min operations are also easy with the help of some analytic formulas Propagate RATs backward through the timing graph Subtraction of two canonical forms is easy Use statistical max/min operations Slack is simply the difference between AT and RAT Since this is available in canonical form, we get sensitivities of circuit performance to sources of variation for free These can be used to ensure a robust design 16 8

Statistical max operation *C. E. Clark, The greatest of a finite set of random variables, OR Journal, March-April 1961, pp. 145 162 **M. Cain, The moment-generating function of the minimum of bivariate normal random variables, American Statistician, May 94, 48(2) 17 1 Unified view of correlations Correlation Coefficient Independently random part D a 0 a X a X i i r R Spatially correlated part: within-chip distancerelated correlation Globally correlated part: chip-to-chip, wafer-to-wafer, batch-tobatch variation 0 Distance 18 9

26 Spatial correlation vs. early/late split 79 81 83 85 87 89 78 80 82 84 86 88 90 66 68 70 72 74 76 65 67 69 71 73 75 77 53 55 57 59 61 63 52 54 56 58 60 62 40 42 44 46 48 50 39 41 43 45 47 49 27 29 31 LF 28 1 LF 30 2 32 LF 3 34 36 CF 14 16 18 20 22 24 13 15 17 19 21 23 25 1 3 5 7 9 11 0 2 4 6 8 10 12 33 35 37 early clock 64 51 38 Dependence on common virtual variables cancels out at the timing test 19 4. Design for performance C. Latches and flip-flops 10

21 Latch vs. Flip-Flop Courtesy of IEEE Press, New York. 2000 22 11

Latch Pair vs. Flip-Flop Performance metrics Delay metrics Delay penalty Clock skew penalty Inclusion of logic Inherent race immunity Power/Energy Metrics Power/energy PDP, EDP Design robustness 23 Latches Transmission-Gate Latch C 2 MOS Latch Clk Clk D Q D Q Clk Clk 24 12