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

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

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

EE241 - Spring 2007 Advanced Digital Integrated Circuits. Announcements

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

Lecture 21: Sequential Circuits. Review: Timing Definitions

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

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

ECE321 Electronics I

Lecture 11: Sequential Circuit Design

Clocking Spring /18/05

11. Sequential Elements

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

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

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

Sequential Circuit Design: Part 1

Static Timing Analysis for Nanometer Designs

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

Sequential Circuit Design: Part 1

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

II. ANALYSIS I. INTRODUCTION

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

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

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.

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

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

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

Lecture 8: Sequential Logic

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

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

Lecture 10: Sequential Circuits

CMOS Latches and Flip-Flops

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

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

Lecture 6. Clocked Elements

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

DEPARTMENT OF ELECTRICAL &ELECTRONICS ENGINEERING DIGITAL DESIGN

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

EE241 - Spring 2005 Advanced Digital Integrated Circuits

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

Project 6: Latches and flip-flops

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

Sequential Circuit Design: Principle

Chapter 7 Sequential Circuits

EE-382M VLSI II FLIP-FLOPS

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

CS8803: Advanced Digital Design for Embedded Hardware

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

Unit 11. Latches and Flip-Flops

Design for Testability

Clocks. Sequential Logic. A clock is a free-running signal with a cycle time.

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

EECS150 - Digital Design Lecture 3 - Timing

Combinational vs Sequential

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

Digital Logic Design ENEE x. Lecture 19

Logic Design II (17.342) Spring Lecture Outline

CS3350B Computer Architecture Winter 2015

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

(CSC-3501) Lecture 7 (07 Feb 2008) Seung-Jong Park (Jay) CSC S.J. Park. Announcement

COMP2611: Computer Organization. Introduction to Digital Logic

CHAPTER 11 LATCHES AND FLIP-FLOPS

Objectives. Combinational logics Sequential logics Finite state machine Arithmetic circuits Datapath

Guidance For Scrambling Data Signals For EMC Compliance

Design of Fault Coverage Test Pattern Generator Using LFSR

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

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

D Latch (Transparent Latch)

Unit 9 Latches and Flip-Flops. Dept. of Electrical and Computer Eng., NCTU 1

Lec 24 Sequential Logic Revisited Sequential Circuit Design and Timing

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

CprE 281: Digital Logic

CSE115: Digital Design Lecture 23: Latches & Flip-Flops

Energy-Delay Space Analysis for Clocked Storage Elements Under Process Variations

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).

ELEN Electronique numérique

Notes on Digital Circuits

Advanced Digital Logic Design EECS 303

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

CMSC 313 Preview Slides

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

Go BEARS~ What are Machine Structures? Lecture #15 Intro to Synchronous Digital Systems, State Elements I C

L4: Sequential Building Blocks (Flip-flops, Latches and Registers)

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

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

EECS150 - Digital Design Lecture 3 - Timing

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

CS61C : Machine Structures

Fundamentals of Computer Systems

Retiming Sequential Circuits for Low Power

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

A Novel Low-overhead Delay Testing Technique for Arbitrary Two-Pattern Test Application

LFSR Counter Implementation in CMOS VLSI

A clock is a free-running signal with a cycle time. A clock may be either high or low, and alternates between the two states.

Digital Circuits and Systems

CprE 281: Digital Logic

Chapter 5 Synchronous Sequential Logic

ECE 341. Lecture # 2

Power Distribution and Clock Design

Fundamentals of Computer Systems

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 on Wednesday No office hour today Makeup office hour tomorrow 11-12 in BWRC 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

Latch vs. Flip-Flop Courtesy of IEEE Press, New York. 2000 21 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 22 11

Latches Transmission-Gate Latch C 2 MOS Latch D Q D Q 23 Latches Courtesy of IEEE Press, New York. 2000 24 12

Latch Pair as a Flip-Flop 25 Requirements for the Flip-Flop Design High speed of operation: Small -Output delay Small setup time Small hold time Inherent race immunity Low power Small clock load High driving capability Integration of logic into flip-flop Multiplexed or clock scan Robustness 26 13

Sources of Noise Courtesy of IEEE Press, New York. 2000 27 Types of Flip-Flops Latch Pair (Master-Slave) Pulse-Triggered Latch Data L1 L2 L Data D Q D Q D Q 28 14

Flip-Flop Delay Sum of setup time and -output delay is the true measure of the performance with respect to the system speed T = T -Q + T Logic + T setup (ignoring skew) D Q Logic D Q N T -Q T Logic T Setup 29 Delay vs. Setup/Hold Times 350 Minimum Data-Output 300 250 -Output [ps] Setup 200 150 100 Hold 50 0-200 -150-100 -50 0 50 100 150 200 Data- [ps] 30 15

Master-Slave Latch Pairs Case 1: PowerPC 603 (Gerosa, JSSC 12/94) D b Q b 31 Master-Slave Latches Case 2: C 2 MOS D Ck Ckb Q Ckb Ck Ck Ckb Ck Feedback added for static operation Locally generated clock Poor driving capability Ck Ckb 32 16

Next Lecture Latches and flip-flops 33 17