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

Similar documents
Engr354: Digital Logic Circuits

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

Digital Logic Design Sequential Circuits. Dr. Basem ElHalawany

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

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

INTRODUCTION TO SEQUENTIAL CIRCUITS

Chapter 11 Latches and Flip-Flops

ECE321 Electronics I

D Latch (Transparent Latch)

Unit 11. Latches and Flip-Flops

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

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

Lec 24 Sequential Logic Revisited Sequential Circuit Design and Timing

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

! 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

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

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

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

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.

Digital Circuits ECS 371

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

6. Sequential Logic Flip-Flops

Traversing Digital Design. EECS Components and Design Techniques for Digital Systems. Lec 22 Sequential Logic - Advanced

ELCT201: DIGITAL LOGIC DESIGN

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

Lecture 11: Sequential Circuit Design

EEE2135 Digital Logic Design Chapter 6. Latches/Flip-Flops and Registers/Counters 서강대학교 전자공학과

Lecture 8: Sequential Logic

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

RS flip-flop using NOR gate

Sequential Circuit Design: Part 1

Introduction. NAND Gate Latch. Digital Logic Design 1 FLIP-FLOP. Digital Logic Design 1

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

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

Logic Design. Flip Flops, Registers and Counters

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

Sequential Circuits: Latches & Flip-Flops

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

Combinational vs Sequential

Chapter 5: Synchronous Sequential Logic

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

CMOS Latches and Flip-Flops

Sequential Circuit Design: Part 1

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

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

Switching Circuits & Logic Design

CHAPTER 1 LATCHES & FLIP-FLOPS

RS flip-flop using NOR gate

Introduction to Sequential Circuits

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

Flip-Flops and Sequential Circuit Design

UNIT 11 LATCHES AND FLIP-FLOPS

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

Lecture 21: Sequential Circuits. Review: Timing Definitions

Other Flip-Flops. Lecture 27 1

CHAPTER 11 LATCHES AND FLIP-FLOPS

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.

Synchronous Sequential Logic

Sequential Design Basics

Basis of sequential circuits: the R-S latch

Digital Integrated Circuits EECS 312

12/31/2010. Overview. 12-Latches and Flip Flops Text: Unit 11. Sequential Circuits. Sequential Circuits. Feedback. Feedback

`COEN 312 DIGITAL SYSTEMS DESIGN - LECTURE NOTES Concordia University

ELE2120 Digital Circuits and Systems. Tutorial Note 7

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

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

Sequential Circuits. Output depends only and immediately on the inputs Have no memory (dependence on past values of the inputs)

Sequential Logic Circuits

Digital Logic Design ENEE x. Lecture 19

CMSC 313 Preview Slides

CSE Latches and Flip-flops Dr. Izadi. NOR gate property: A B Z Cross coupled NOR gates: S M S R Q M

DIGITAL CIRCUIT LOGIC UNIT 11: SEQUENTIAL CIRCUITS (LATCHES AND FLIP-FLOPS)

Advanced Digital Logic Design EECS 303

ELCT201: DIGITAL LOGIC DESIGN

EET2411 DIGITAL ELECTRONICS

IT T35 Digital system desigm y - ii /s - iii

Chapter 5 Synchronous Sequential Logic

ECE 341. Lecture # 2

Feedback Sequential Circuits

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

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

Experiment 8 Introduction to Latches and Flip-Flops and registers

CPS311 Lecture: Sequential Circuits

Registers & Counters. Logic and Digital System Design - CS 303 Erkay Savaş Sabanci University

Final Exam review: chapter 4 and 5. Supplement 3 and 4

NH 67, Karur Trichy Highways, Puliyur C.F, Karur District UNIT-III SEQUENTIAL 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).

PRE J. Figure 25.1a J-K flip-flop with Asynchronous Preset and Clear inputs

Fundamentals of Computer Systems

Digital Fundamentals

problem maximum score 1 28pts 2 10pts 3 10pts 4 15pts 5 14pts 6 12pts 7 11pts total 100pts

CHAPTER 4: Logic Circuits

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

MC9211 Computer Organization

11. Sequential Elements

Synchronous Sequential Logic

Fundamentals of Computer Systems

Multiplexor (aka MUX) An example, yet VERY useful circuit!

Digital Circuit And Logic Design I. Lecture 8

Transcription:

L4: Sequential Building Blocks (Flip-flops, Latches and Registers) Acknowledgements: Lecture material adapted from R. Katz, G. Borriello, Contemporary Logic esign (second edition), Prentice-Hall/Pearson Education, 25. Lecture material adapted from J. Rabaey, A. Chandrakasan, B. Nikolic, igital Integrated Circuits: A esign Perspective Copyright 23 Prentice Hall/Pearson. L4: 6. Spring 26 Introductory igital Systems Laboratory

Combinational Logic Review in in Combinational Circuit in in in N- in M- 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. Spring 26 Introductory igital Systems Laboratory 2

A Sequential System Inputs Current State COMBINATIONAL LOGIC Registers Outputs Next state Memory element 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. Spring 26 Introductory igital Systems Laboratory 3

A Simple Example Adding N inputs (N- Adders) in in in 2 in N- Using a sequential (serial) approach reset in Current_Sum clk L4: 6. Spring 26 Introductory igital Systems Laboratory 4

Implementing State: Bi-stability V o =V i2 V o2 =V i V i2 = V o Point C is Metastable C V o V i2 δ V i = V o2 V i2 =V o V i A V o2 V i2 = V o A Points A and B are stable (represent & ) C B V i =V o2 δ B V i = V o2 L4: 6. Spring 26 Introductory igital Systems Laboratory 5

NOR-based Set-Reset (SR) Flipflop S S R S R SR =, SR =, SR = SR = SR = SR = SR = SR = SR = R Forbidden State Reset Hold Set Reset Set SR = SR = 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. Spring 26 Introductory igital Systems Laboratory 6

Making a Clocked Memory Element: Positive -Latch S R G clk R and S clock sample hold sample hold A Positive -Latch: Passes input to output when 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. Spring 26 Introductory igital Systems Laboratory 7 hold

Multiplexor Based Positive & Negative Latch 2: multiplexor Positive Latch Negative Latch in in out SEL Out = sel * in + sel * in "data" clk "load" clk "remember" "stored value" L4: 6. Spring 26 Introductory igital Systems Laboratory 8

74HC75 (Positive Latch) L4: 6. Spring 26 Introductory igital Systems Laboratory 9

Building an Edge-Triggered Register Negative latch M Positive latch G G Slave Master M M 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. Spring 26 Introductory igital Systems Laboratory

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. Spring 26 Introductory igital Systems Laboratory

Important Timing Parameters Clock Clock: Periodic Event, causes state of memory element to change 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 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. Spring 26 Introductory igital Systems Laboratory 2

74HC74 (Positive Edge-Triggered Register) 74HC74 (courtesy TI) -FF with preset and clear L4: 6. Spring 26 Introductory igital Systems Laboratory 3

The J-K J K Flip-Flop Flop J K S R J K + + J K \ Eliminate the forbidden state of the SR Flip-flop Use output feedback to guarantee that R and S are never both one L4: 6. Spring 26 Introductory igital Systems Laboratory 4

J-K K Master-Slave Register Sample inputs while clock high Sample inputs while clock low J P S S K R P R 's Set Reset Catch T oggle J K Correct Toggle Operation J φ K P \ P \ Master outputs Slave outputs Is there a problem with this circuit? L4: 6. Spring 26 Introductory igital Systems Laboratory 5

Pulse Based Edge-Triggered J-K J K Register Input X φ Input φ Output X t plh Schematic Output J φ K S R J φ K JK Register Logic Symbol JK Register Schematic L4: 6. Spring 26 Introductory igital Systems Laboratory 6

Pulse-Triggered Registers Ways to design an edge-triggered sequential cell: Master-Slave Latches Pulse-Based Register ata L L2 ata Latch Short pulse around clock edge Pulse registers are widely used in high-performance microprocessor chips (Sun Microsystems, AM, Intel, etc.) The can have a negative setup time! L4: 6. Spring 26 Introductory igital Systems Laboratory 7

Flip-Flop Flop vs. Toggle Flip-Flop Flop Flip-Flop N T T (Toggle) Flip-Flop T N N- N- L4: 6. Spring 26 Introductory igital Systems Laboratory 8

Realizing ifferent Types of Memory Elements Characteristic Equations : J-K: T: + = + = J + K + = T + T E.g., J=K=, then + = J=, K=, then + = J=, K=, then + = J=, K=, then + = Implementing One FF in Terms of Another J C K K J C implemented with J-K J-K implemented with L4: 6. Spring 26 Introductory igital Systems Laboratory 9

esign Procedure Excitation Tables: What are the necessary inputs to cause a particular kind of change in state? + J X X K X X T Implementing FF with a J-K FF: ) Start with K-map of + = ƒ(, ) 2) Create K-maps for J and K with same inputs (, ) 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., = =, + = then J =, K = X X X X X + = J = K = L4: 6. Spring 26 Introductory igital Systems Laboratory 2

esign Procedure (cont.) Implementing J-K FF with a FF: ) 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 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. Spring 26 Introductory igital Systems Laboratory 2

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. Spring 26 Introductory igital Systems Laboratory 22

System Timing (I): Minimum Period In Combinational Logic CLout T h T h IN T su T cq T su T cq FF T cq,cd T logic T cq,cd CLout T l,cd T su2 T > T cq + T logic + T su L4: 6. Spring 26 Introductory igital Systems Laboratory 23

System Timing (II): Minimum elay In Combinational Logic CLout IN FF CLout T su T h T cq,cd T h T l,cd T cq,cd + T logic,cd > T hold L4: 6. Spring 26 Introductory igital Systems Laboratory 24

Shift-Register Typical parameters for Positive edge-triggered Register Tsu 2ns Th 5ns Tsu 2ns Th 5ns Tw 25ns Tplh 25ns 3ns Tphl 4ns 25ns all measurements are made from the clocking event that is, the rising edge of the clock Shift-register IN OUT IN L4: 6. Spring 26 Introductory igital Systems Laboratory 25