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

Similar documents
Lecture 11: Sequential Circuit Design

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

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

Lecture 10: Sequential Circuits

11. Sequential Elements

Sequential Circuit Design: Part 1

Sequential Circuit Design: Part 1

Chapter 7 Sequential Circuits

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

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

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

Digital Logic & Computer Design CS Professor Dan Moldovan Spring Chapter 3 :: Sequential Logic Design

MUX AND FLIPFLOPS/LATCHES

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

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

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

ECE321 Electronics I

Lecture 21: Sequential Circuits. Review: Timing Definitions

Engr354: Digital Logic Circuits

Lec 24 Sequential Logic Revisited Sequential Circuit Design and Timing

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

give sequence to events have memory (short-term) use feedback from output to input to store information

Fundamentals of Computer Systems

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

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

Fundamentals of Computer Systems

Clocking Spring /18/05

Lecture 1: Circuits & Layout

Glitches/hazards and how to avoid them. What to do when the state machine doesn t fit!

Lecture 1: Intro to CMOS Circuits

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

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

2.6 Reset Design Strategy

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

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

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

Sequential Logic. E&CE 223 Digital Circuits and Systems (A. Kennings) Page 1

CS3350B Computer Architecture Winter 2015

Fundamentals of Computer Systems

Memory, Latches, & Registers

ALGORITHMS IN HW EECS150 ALGORITHMS IN HW. COMBINATIONAL vs. SEQUENTIAL. Sequential Circuits ALGORITHMS IN HW

LOW POWER AND HIGH PERFORMANCE SHIFT REGISTERS USING PULSED LATCH TECHNIQUE

6. Sequential Logic Flip-Flops

Logic Design. Flip Flops, Registers and Counters

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

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.

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

CMOS Latches and Flip-Flops

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

UNIT III COMBINATIONAL AND SEQUENTIAL CIRCUIT DESIGN

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

DIGITAL SYSTEM FUNDAMENTALS (ECE421) DIGITAL ELECTRONICS FUNDAMENTAL (ECE422) LATCHES and FLIP-FLOPS

Sequential Circuits. Sequential Logic. Circuits with Feedback. Simplest Circuits with Feedback. Memory with Cross-coupled Gates.

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

Combinational vs Sequential

Momentary Changes in Outputs. State Machine Signaling. Oscillatory Behavior. Hazards/Glitches. Types of Hazards. Static Hazards

Introduction to Digital Logic Missouri S&T University CPE 2210 Flip-Flops

ESE 570 STATIC SEQUENTIAL CMOS LOGIC CELLS. Kenneth R. Laker, University of Pennsylvania, updated 25Mar15

EMT 125 Digital Electronic Principles I CHAPTER 6 : FLIP-FLOP

Basis of sequential circuits: the R-S latch

CS61C : Machine Structures

COMP2611: Computer Organization. Introduction to Digital Logic

CSE140: Components and Design Techniques for Digital Systems. More D-Flip-Flops. Tajana Simunic Rosing. Sources: TSR, Katz, Boriello & Vahid

CS 110 Computer Architecture. Finite State Machines, Functional Units. Instructor: Sören Schwertfeger.

D Latch (Transparent Latch)

Software Engineering 2DA4. Slides 9: Asynchronous Sequential Circuits

Slide Set 7. for ENEL 353 Fall Steve Norman, PhD, PEng. Electrical & Computer Engineering Schulich School of Engineering University of Calgary

EL302 DIGITAL INTEGRATED CIRCUITS LAB #3 CMOS EDGE TRIGGERED D FLIP-FLOP. Due İLKER KALYONCU, 10043

CS61C : Machine Structures

COE 202: Digital Logic Design Sequential Circuits Part 1. Dr. Ahmad Almulhem ahmadsm AT kfupm Phone: Office:

SEQUENTIAL CIRCUITS SEQUENTIAL CIRCUITS

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

Clock Domain Crossing. Presented by Abramov B. 1

EECS150 - Digital Design Lecture 3 - Timing

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

Sequential Logic. References:

EE-382M VLSI II FLIP-FLOPS

Chapter 11 Latches and Flip-Flops

Feedback Sequential Circuits

Digital System Design

Digital Design, Kyung Hee Univ. Chapter 5. Synchronous Sequential Logic

Project 6: Latches and flip-flops

Topic 8. Sequential Circuits 1

Lecture 8: Sequential Logic

More Digital Circuits

3 Flip-Flops. The latch is a logic block that has 2 stable states (0) or (1). The RS latch can be forced to hold a 1 when the Set line is asserted.

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

CHAPTER 11 LATCHES AND FLIP-FLOPS

Keeping The Clock Pure. Making The Impurities Digestible

Unit 11. Latches and Flip-Flops

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

Logic Design ( Part 3) Sequential Logic- Finite State Machines (Chapter 3)

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

Synchronous Digital Logic Systems. Review of Digital Logic. Philosophy. Combinational Logic. A Full Adder. Combinational Logic

DEPARTMENT OF ELECTRICAL &ELECTRONICS ENGINEERING DIGITAL DESIGN

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

Learning Outcomes. Unit 13. Sequential Logic BISTABLES, LATCHES, AND FLIP- FLOPS. I understand the difference between levelsensitive

EE241 - Spring 2007 Advanced Digital Integrated Circuits. Announcements

Digital Circuits and Systems

Transcription:

ECEN454 igital Integrated Circuit esign Sequential Circuits ECEN 454 Combinational logic Sequencing Output depends on current inputs Sequential logic Output depends on current and previous inputs Requires separating previous, current, future Called state or tokens Ex: FSM, pipeline in CL out CL CL Finite State Machine Pipeline ECEN 454 10.2 1

Sequencing Cont. If tokens moved through pipeline at constant speed, no sequencing elements would be necessary Ex: fiber-optic cable Light pulses (tokens) are sent down cable Next pulse sent before first reaches end of cable No need for hardware to separate pulses But dispersion sets min time between pulses This is called wave pipelining in circuits In most circuits, dispersion is high elay fast tokens so they don t catch slow ones ECEN 454 10.3 Sequencing Overhead Use flip-flops to delay fast tokens so they move through exactly one stage each cycle Inevitably adds some delay to the slow tokens Makes circuit slower than just the logic delay Called sequencing overhead Some people call this clocking overhead But it applies to asynchronous circuits too Inevitable side effect of maintaining sequence ECEN 454 10.4 2

: Level sensitive Sequencing Elements a.k.a. transparent latch, latch Flip-flop: edge triggered A.k.a. master-slave flip-flop, flip-flop, register Timing iagrams Transparent Flop Opaque Edge-trigger (latch) (flop) ECEN 454 10.5 : Level sensitive Sequencing Elements a.k.a. transparent latch, latch Flip-flop: edge triggered A.k.a. master-slave flip-flop, flip-flop, register Timing iagrams Transparent Flop Opaque Edge-trigger (latch) (flop) ECEN 454 10.6 3

esign Pass Transistor Pros + + Cons ECEN 454 10.7 esign Pass Transistor Pros + Tiny + Low clock load Cons V t drop nonrestoring Used in 1970 s backdriving output t noise sensitivity dynamic diffusion input ECEN 454 10.8 4

esign Transmission gate + - ECEN 454 10.9 esign Transmission gate +No V t drop - Requires inverted clock ECEN 454 10.10 5

esign Inverting buffer + + + Fixes either ECEN 454 10.11 esign Inverting buffer + Restoring + No backdriving + Fixes either Output noise sensitivity Or diffusion input Inverted output ECEN 454 10.12 6

esign Tristate feedback + ECEN 454 10.13 esign Tristate feedback + Static Backdriving risk Static latches are now essential ECEN 454 10.14 7

esign Buffered input + + ECEN 454 10.15 esign Buffered input + Fixes diffusion input + Noninverting ECEN 454 10.16 8

esign Buffered output + ECEN 454 10.17 Buffered output esign + No backdriving Widely used in standard cells + Very robust (most important) - Rather large - Rather slow (1.5 2 FO4 delays) - High clock loading ECEN 454 10.18 9

esign atapath latch + - ECEN 454 10.19 esign atapath latch + Smaller, faster - unbuffered input ECEN 454 10.20 10

Metastability A A Stable A=B=0 B A=> B =>B Metastable A=B=V m A, B Stable A=B=V ECEN 454 10.21 Flip-Flop esign Flip-flop is built as pair of back-to-back latches ECEN 454 10.22 11

Enable Enable: ignore clock when en = 0 Mux: increase latch - delay Clock Gating: increase en setup time, skew Symbol Multiplexer esign Clock Gating esign en 1 0 en en en Flop 1 0 en Flop en ECEN 454 10.23 Flop Reset Force output low when reset asserted Synchronous vs. asynchronous Symbol Flop reset reset Synchronous Reset reset reset Asynchronous Reset reset reset reset reset ECEN 454 10.24 12

Set / Reset Set forces output high when enabled Flip-flop with asynchronous set and reset set reset reset set ECEN 454 10.25 Flip-flops 2-Phase es Sequencing Methods ECEN 454 10.26 13

Timing iagrams Contamination and Propagation elays A Combinational Logic Y A Y t cd t pd t pd t cd Logic Prop. elay Logic Cont. elay t setup thold t pcq /Flop Clk-> Prop. elay Flop t ccq /Flop Clk-> Cont. elay t ccq t pcq t pdq -> Prop. elay t cdq t setup t hold -> Cont. elay /Flop Setup Time /Flop Hold Time h t ccq t pcq t setup t hold t cdq t pdq ECEN 454 10.27 Max-elay: Flip-Flops F1 1 Combinational Logic 2 F2 T c t pcq t setup 1 t pd 2 t pd < T c ( t setup + t pcq ) sequencing overhead ECEN 454 10.28 14

Max elay: 2-Phase es 1 2 1 t pd = t pd1 + t pd2 < T c 2t pdq sequencing overhead 1 1 Combinational 2 2 Combinational 3 Logic 1 Logic 2 1 L1 L2 L3 3 2 T c 1 t pdq1 1 t pd1 2 t pdq2 2 t pd2 3 ECEN 454 10.29 Min-elay: Flip-Flops t cd F1 1 CL 2 F2 1 t ccq t cd 2 t hold ECEN 454 10.30 15

Min-elay: Flip-Flops t t t cd hold ccq F1 1 CL 2 F2 1 t ccq t cd 2 t hold ECEN 454 10.31 Min-elay: 2-Phase es 1 t t cd 1, cd 2 L1 1 CL Hold time reduced by nonoverlap 2 2 L2 Paradox: hold applies twice each cycle, vs. only once for flops. But a flop is made of two latches! 1 2 t nonoverlap 1 2 t ccq t hold t cd ECEN 454 10.32 16

Min-elay: 2-Phase es t t t t t cd1, cd 2 hold ccq nonoverlap 1 L1 1 CL Hold time reduced by nonoverlap 2 2 L2 Paradox: hold applies twice each cycle, vs. only once for flops. But a flop is made of two latches! 1 2 t nonoverlap 1 2 t ccq t hold t cd ECEN 454 10.33 Time Borrowing In a flop-based system: ata launches on one rising edge Must setup before next rising edge If it arrives late, system fails If it arrives early, time is wasted Flops have hard edges In a latch-based system ata can pass through h latch while transparent t Long cycle of logic can borrow time into next As long as each loop completes in one cycle ECEN 454 10.34 17

Time Borrowing Example 1 2 1 1 2 (a) Combinational Logic Combinational Logic Borrowing time across half-cycle boundary Borrowing time across pipeline stage boundary 1 2 (b) Combinational Logic Combinational Logic Loops may borrow time internally but must complete within the cycle ECEN 454 10.35 How Much Borrowing? 2-Phase es T c borrow setup nonoverlap t t t 2 1 1 2 L1 1 2 Combinational Logic 1 LCombinational L2 2 1 2 t nonoverlap T c T c /2 Nominal Half-Cycle 1 elay t borrow t setup 2 ECEN 454 10.36 18

Clock Skew We have assumed zero clock skew Clocks really have uncertainty in arrival time ecreases maximum propagation delay requirement Increases minimum contamination delay requirement ecreases time borrowing ECEN 454 10.37 Skew: Flip-Flops F1 1 Combinational Logic 2 F2 T c t pd < T c ( t setup + t pcq + t skew ) 1 t pcq t pdq t setup t skew sequencing overhead 2 t cd > t hold t ccq + t skew F1 1 CL 2 F2 t skew t hold 1 t ccq 2 t cd ECEN 454 10.38 19

Skew: 2-Phase es 1 2 1 1 1 Combinational 2 2 Combinational 3 Logic 1 Logic 2 L1 L2 L3 3 1 2 t pd = t pd1 + t pd2 < T c 2t pdq sequencing overhead: not influenced by skew t cd1, t cd2 > t hold t ccq t nonoverlap + t skew t borrow < T c /2 ( t setup + t nonoverlap + t skew ) ECEN 454 10.39 Two-Phase Clocking If setup times are violated, reduce clock speed If hold times are violated, chip fails at any speed In this class, working chips are most important No tools to analyze clock skew An easy way to guarantee hold times is to use 2- phase latches with big nonoverlap times Call these clocks 1, 2 (ph1, ph2) ECEN 454 10.40 20

Flip-Flops: Summary Very easy to use, supported by all tools 2-Phase Transparent es: Lots of skew tolerance and time borrowing ECEN 454 10.41 21