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

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

Sequential vs. Combinational

Chapter #6: Sequential Logic Design

Integrated Circuits & Systems

EE141- Spring 2007 Digital Integrated Circuits

Digital Integrated Circuits A Design Perspective

Digital Integrated Circuits A Design Perspective

Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic. November Digital Integrated Circuits 2nd Sequential Circuits

Chapter 7 Sequential Logic

ELCT201: DIGITAL LOGIC DESIGN

CMPEN 411. Spring Lecture 18: Static Sequential Circuits

Lecture 9: Sequential Logic Circuits. Reading: CH 7

Synchronous Sequential Logic

ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN. Week 7 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering

Digital Integrated Circuits A Design Perspective

GMU, ECE 680 Physical VLSI Design

9/18/2008 GMU, ECE 680 Physical VLSI Design

Topic 8: Sequential Circuits

ELEC Digital Logic Circuits Fall 2014 Sequential Circuits (Chapter 6) Finite State Machines (Ch. 7-10)

Memory Elements I. CS31 Pascal Van Hentenryck. CS031 Lecture 6 Page 1

Chapter 13. Clocked Circuits SEQUENTIAL VS. COMBINATIONAL CMOS TG LATCHES, FLIP FLOPS. Baker Ch. 13 Clocked Circuits. Introduction to VLSI

Lecture 14: State Tables, Diagrams, Latches, and Flip Flop

Sequential Logic Worksheet

Overview of Chapter 4

EET 310 Flip-Flops 11/17/2011 1

Sequential Logic. Rab Nawaz Khan Jadoon DCS. Lecturer COMSATS Lahore Pakistan. Department of Computer Science

Problem Set 9 Solutions

Vidyalankar S.E. Sem. III [ETRX] Digital Circuits and Design Prelim Question Paper Solution

5. Sequential Logic x Computation Structures Part 1 Digital Circuits. Copyright 2015 MIT EECS

ALU, Latches and Flip-Flops

Introduction EE 224: INTRODUCTION TO DIGITAL CIRCUITS & COMPUTER DESIGN. Lecture 6: Sequential Logic 3 Registers & Counters 5/9/2010

Designing Sequential Logic Circuits

Fundamentals of Computer Systems

LOGIC CIRCUITS. Basic Experiment and Design of Electronics

Digital Design. Sequential Logic

ECE/Comp Sci 352 Digital Systems Fundamentals. Charles R. Kime Section 2 Fall Logic and Computer Design Fundamentals

LOGIC CIRCUITS. Basic Experiment and Design of Electronics. Ho Kyung Kim, Ph.D.

CMPEN 411 VLSI Digital Circuits Spring 2012 Lecture 17: Dynamic Sequential Circuits And Timing Issues

CHAPTER 9: SEQUENTIAL CIRCUITS

Computers also need devices capable of Storing data and information Performing mathematical operations on such data

Introduction to Digital Logic

Chapter 14 Sequential logic, Latches and Flip-Flops

Jin-Fu Li Advanced Reliable Systems (ARES) Lab. Department of Electrical Engineering. Jungli, Taiwan

Digital Electronics Sequential Logic

Sequential Logic Circuits

ΗΜΥ 307 ΨΗΦΙΑΚΑ ΟΛΟΚΛΗΡΩΜΕΝΑ ΚΥΚΛΩΜΑΤΑ Εαρινό Εξάμηνο 2018

P2 (10 points): Given the circuit below, answer the following questions:

MODULE 5 Chapter 7. Clocked Storage Elements

S.Y. Diploma : Sem. III [CO/CM/IF/CD/CW] Digital Techniques

L8/9: Arithmetic Structures

Sequential Circuits Sequential circuits combinational circuits state gate delay

MOSIS REPORT. Spring MOSIS Report 1. MOSIS Report 2. MOSIS Report 3

Review: Designing with FSM. EECS Components and Design Techniques for Digital Systems. Lec 09 Counters Outline.

S.Y. Diploma : Sem. III [DE/ED/EI/EJ/EN/ET/EV/EX/IC/IE/IS/IU/MU] Principles of Digital Techniques

ALU A functional unit

MAHALAKSHMI ENGINEERING COLLEGE TIRUCHIRAPALLI

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Department of Electrical Engineering and Computer Sciences

Lecture 7: Sequential Networks

Chapter 4. Sequential Logic Circuits

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

CPE/EE 422/522. Chapter 1 - Review of Logic Design Fundamentals. Dr. Rhonda Kay Gaede UAH. 1.1 Combinational Logic

Time Allowed 3:00 hrs. April, pages

Topic 8: Sequential Circuits. Bistable Devices. S-R Latches. Consider the following element. Readings : Patterson & Hennesy, Appendix B.4 - B.

CSE140: Components and Design Techniques for Digital Systems. Midterm Information. Instructor: Mohsen Imani. Sources: TSR, Katz, Boriello & Vahid

I. Motivation & Examples

Hold Time Illustrations

Chapter 3. Chapter 3 :: Topics. Introduction. Sequential Circuits

Lecture 7: Logic design. Combinational logic circuits

CPE100: Digital Logic Design I

Unit II Chapter 4:- Digital Logic Contents 4.1 Introduction... 4

UNIVERSITY OF CALIFORNIA

EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs. Cross-coupled NOR gates

ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN. Week 9 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering

EE40 Lec 15. Logic Synthesis and Sequential Logic Circuits

Issues on Timing and Clocking

Chapter 3. Digital Design and Computer Architecture, 2 nd Edition. David Money Harris and Sarah L. Harris. Chapter 3 <1>

Laboratory Exercise #8 Introduction to Sequential Logic

課程名稱 : 數位邏輯設計 P-1/ /6/11

Sequential Circuits. Circuits with state. Silvina Hanono Wachman Computer Science & Artificial Intelligence Lab M.I.T. L06-1

Konstruktion av Vippor och Latchar

74LS195 SN74LS195AD LOW POWER SCHOTTKY

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Department of Electrical Engineering and Computer Sciences

Synchronous Sequential Circuit

Adders, subtractors comparators, multipliers and other ALU elements

Lecture 5. MOS Inverter: Switching Characteristics and Interconnection Effects

UMBC. At the system level, DFT includes boundary scan and analog test bus. The DFT techniques discussed focus on improving testability of SAFs.

Sequential Circuits. CS/EE 3700 : Fundamentals of Digital System Design

For smaller NRE cost For faster time to market For smaller high-volume manufacturing cost For higher performance

Menu. Master-Slave Flip-Flop

Y. Tsiatouhas. VLSI Systems and Computer Architecture Lab

NTE74177 Integrated Circuit TTL 35Mhz Presettable Binary Counter/Latch

University of Toronto Faculty of Applied Science and Engineering Edward S. Rogers Sr. Department of Electrical and Computer Engineering

Timing Constraints in Sequential Designs. 63 Sources: TSR, Katz, Boriello & Vahid

COEN 312 DIGITAL SYSTEMS DESIGN - LECTURE NOTES Concordia University

ELEN Electronique numérique

ESE 570: Digital Integrated Circuits and VLSI Fundamentals

NTE74176 Integrated Circuit TTL 35Mhz Presettable Decade Counter/Latch

Clock Strategy. VLSI System Design NCKUEE-KJLEE

Unit 7 Sequential Circuits (Flip Flop, Registers)

74F194 4-Bit Bidirectional Universal Shift Register

Transcription:

L4: Sequential Building Blocks (Flip-flops, Latches and Registers) Acknowledgements:., Materials in this lecture are courtesy of the following people and used with permission. - Randy H. Katz (University of California, Berkeley, epartment of Electrical Engineering & Computer Science) - Gaetano Borriello (University of Washington, epartment of Computer Science & Engineering, http://www.cs.washington.edu/370) - Rabaey, A. Chandrakasan, B. Nikolic. igital Integrated Circuits: A esign Perspective. Prentice Hall, 2003. L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 1

Combinational Logic Review in 0 in 1 in N-1 Combinational Circuit in 0 in 1 in M-1 Combinational logic circuits are memoryless No feedback in combinational logic circuits Output assumes the function implemented by the logic network, assuming that the switching transients have settled Outputs can have multiple logical transitions before settling to the correct value L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 2

A Sequential System Sequential circuits have memory (i.e., remember the past) The current state is held in memory and the next state is computed based the current state and the current inputs In a synchronous systems, the clock signal orchestrates the sequence of events L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 3

A Simple Example Adding N inputs (N-1 Adders) in 0 in 1 in2 in N-1 Using a sequential (serial) approach reset in Current_Sum clk L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 4

Implementing State: Bi-stability V o1 =V i2 V o2 =V i1 V i2 = V o1 Point C is Metastable C V o1 V i2 1 G V i1 = V o2 V i2 =V o1 V i1 A V o2 V i2 = V o A Points A and B are stable (represent 0 & 1) C B V i1 =V o2 G B V i1 = V o2 L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 5

NOR-based Set-Reset (SR) Flipflop S S R S R 0 0 1 0 1 0 0 1 0 1 1 1 0 0 SR = 00, 01 SR = 00, 10 SR = 1 0 0 1 1 0 SR = 0 1 SR = 0 1 SR = 1 0 SR = 11 SR = 1 1 SR = 1 1 R Forbidden State SR = 0 0 0 0 SR = 0 0 Reset Hold Set Reset Set R S?? Flip-flop refers to a bi-stable element (edge-triggered registers are also called flip-flops) this circuit is not clocked and outputs change asynchronously with the inputs L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 6

Making a Clocked Memory Element: Positive -Latch S CLK R hold sample hold sample hold R and S G clk clock A Positive -Latch: Passes input to output when CLK is high and holds state when clock is low (i.e., ignores input ) A Latch is level-sensitive: invert clock for a negative latch L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 7

Multiplexor Based Positive & Negative Latch 2:1 multiplexor Positive Latch Negative Latch in 0 0 out in 1 1 0 1 1 0 SEL Out = sel * in 1 + sel * in 0 CLK CLK "data" clk "load" clk "remember" "stored value" L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 8

Building an Edge-Triggered Register Negative latch Positive latch M G G Master-Slave Register Use negative clock phase to latch inputs into first latch Use positive clock to change outputs with second latch View pair as one basic unit master-slave flip-flop twice as much logic L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 10

Latches vs. Edge-Triggered Register Edge triggered device sample inputs on the event edge 7474 Transparent latches sample inputs as long as the clock is asserted Positive edge-triggered register Timing iagram: 7475 C Level-sensitive latch Bubble here for negative edge triggered register 7474 7475 Behavior the same unless input changes while the clock is high L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 11

Important Timing Parameters Clock Input T su T h There is is a timing "window" around the clocking event during which the input must remain stable and unchanged in in order to to be be recognized g Clock: Periodic Event, causes state of memory element to change memory element can be updated on the: rising edge, falling edge, high level, low level Setup Time (T su ) Minimum time before the clocking event by which the input must be stable Hold Time (T h ) Minimum time after the clocking event during which the input must remain stable Propagation elay (T cq for an edge-triggered register and T dq for a latch) elay overhead of the memory element L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 12

The J-K J K Flip-Flop Flop J K S R 100 J K + + 0 0 0 1 0 1 1 0 1 0 J K 1 1 \ Eliminate the forbidden state of the SR Flip-flop Use output feedback to guarantee that R and S are never both one L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 14

J-K K Master-Slave Register Sample inputs while clock high Sample inputs while clock low J S P S K R P R CLK 1's Set Reset Catch Toggle 100 J K Correct Toggle Operation J I K P \ P \ Master outputs Slave outputs Is there a problem with this circuit? L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 15

Pulse Based Edge-Triggered J-K J K Register Input X I Output Schematic I Input X Output t plh J I K S R J I K JK Register Logic Symbol JK Register Schematic L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 16

Flip-Flop Flop vs. Toggle Flip-Flop Flop Flip-Flop 0 N 0 0 1 1 0 1 0 1 1 T T T (Toggle) Flip-Flop 0 N 1 0 1 0 0 N-1 1 N-1 1 L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 17

Realizing different types of memory elements Characteristic Equations : + = E.g., J=K=0, then + = J-K: + = J + K J=1, K=0, then + = 1 J=0, K=1, then + = 0 T: + = T + T J=1, K=1, then + = Implementing One FF in Terms of Another J C K K J C implemented with J-K J-K implemented with L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 18

esign Procedure Excitation Tables: What are the necessary inputs to cause a particular kind of change in state? Implementing FF with a J-K FF: + J K T 0 0 0 X 0 0 0 1 1 X 1 1 1 0 X 1 1 0 1 1 X 0 0 1 1) Start with K-map of + = ƒ(, ) 0 0 1 0 1 2) Create K-maps for J and K with same inputs (, ) 1 0 1 3) Fill in K-maps with appropriate values for J and K + = to cause the same state changes as in the original K-map E.g., = = 0, + = 0 then J = 0, K = X 0 1 0 1 0 0 1 0 X X 1 X X 1 1 0 J = K= L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 19

esign Procedure (cont.) Implementing J-K FF with a FF: 1) K-Map of + = F(J, K, ) 2,3) Revised K-map using 's excitation table its the same! that is why design procedure with FF is simple! JK J 00 01 11 10 0 0 0 1 1 1 1 0 0 1 K + = = J + K Resulting equation is the combinational logic input to to cause same behavior as J-K FF. Of course it is identical to the characteristic equation for a J-K FF. L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 20

System Timing Parameters In Combinational Logic Register Timing Parameters T cq : worst case rising edge clock to q delay T cq, cd : contamination or minimum delay from clock to q T su : setup time T h : hold time Logic Timing Parameters T logic : worst case delay through the combinational logic network T logic,cd : contamination or minimum delay through logic network L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 21

elay in igital Circuits V V R on V out V out C L R on C L (a) Low-to-high (b) High-to-low R v out review v in C t p = ln (2) W = 0.69 RC L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 22

System Timing (I): Minimum Period CLout In Combinational Logic CLK T h T h IN T su T cq T su T cq FF1 T cq,cd T logic T cq,cd CLout T l,cd T su2 T > T cq + T logic + T su L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 23

System Timing (II): Minimum elay CLout In Combinational Logic CLK IN FF1 CLout T su T h T cq,cd T h T l,cd T cq,cd + T logic,cd > T hold L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 24

Shift-Register Typical parameters for Positive edge-triggered Register Tsu 20ns Th 5ns Tsu 20ns Th 5ns CLK Tw 25ns Tplh 25ns 13ns Tphl 40ns 25ns all measurements are made from the clocking event that is, the rising edge of the clock Shift-register IN 0 1 OUT IN 100 0 1 CLK CLK L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 25

Clocks are not perfect: Clock Skew CLout In Combinational Logic Wire delay CLK CLK į>0 T > T + T + T - į cq logic su T cq,cd + T logic,cd > T hold + į L4: 6.111 Spring 2004 Introductory igital Systems Laboratory 26