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

Similar documents
Introduction to Sequential Circuits

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

LATCHES & FLIP-FLOP. Chapter 7

ELCT201: DIGITAL LOGIC DESIGN

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

Unit 11. Latches and Flip-Flops

Digital Logic Design Sequential Circuits. Dr. Basem ElHalawany

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

Sequential Circuits: Latches & Flip-Flops

Name Of The Experiment: Sequential circuit design Latch, Flip-flop and Registers

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.

Logic Design. Flip Flops, Registers and Counters

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

CHAPTER 1 LATCHES & FLIP-FLOPS

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

YEDITEPE UNIVERSITY DEPARTMENT OF COMPUTER ENGINEERING. EXPERIMENT VIII: FLIP-FLOPS, COUNTERS 2014 Fall

Experiment 8 Introduction to Latches and Flip-Flops and registers

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

6. Sequential Logic Flip-Flops

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

Combinational vs Sequential

Sequential Logic and Clocked Circuits

Introduction to Microprocessor & Digital Logic

Chapter. Synchronous Sequential Circuits

The basic logic gates are the inverter (or NOT gate), the AND gate, the OR gate and the exclusive-or gate (XOR). If you put an inverter in front of

Rangkaian Sekuensial. Flip-flop

COMP2611: Computer Organization. Introduction to Digital Logic

Synchronous Sequential Logic

CPS311 Lecture: Sequential Circuits

ELCT201: DIGITAL LOGIC DESIGN

Chapter 11 Latches and Flip-Flops

Asynchronous (Ripple) Counters

EKT 121/4 ELEKTRONIK DIGIT 1

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

D Latch (Transparent Latch)

RS flip-flop using NOR gate

The NOR latch is similar to the NAND latch

Flip-Flops and Sequential Circuit Design

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

CHAPTER 4: Logic Circuits

Engr354: Digital Logic Circuits

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

INTRODUCTION TO SEQUENTIAL CIRCUITS

DIGITAL CIRCUIT COMBINATORIAL LOGIC

Other Flip-Flops. Lecture 27 1

Digital Fundamentals: A Systems Approach

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

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

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

Chapter 8 Sequential Circuits

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

Switching Circuits & Logic Design

CHAPTER 4: Logic Circuits

Flip-Flops and Related Devices. Wen-Hung Liao, Ph.D. 4/11/2001

SEQUENTIAL LOGIC. Satish Chandra Assistant Professor Department of Physics P P N College, Kanpur

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

Synchronous Sequential Logic

Digital Circuits ECS 371

Chapter 5 Synchronous Sequential Logic

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

Slide Set 6. for ENCM 369 Winter 2018 Section 01. Steve Norman, PhD, PEng

Computer Science 324 Computer Architecture Mount Holyoke College Fall Topic Notes: Sequential Circuits

NH 67, Karur Trichy Highways, Puliyur C.F, Karur District UNIT-III SEQUENTIAL CIRCUITS

MC9211 Computer Organization

Digital Fundamentals. Lab 5 Latches & Flip-Flops CETT Name: Date:

RS flip-flop using NOR gate

Contents Slide Set 6. Introduction to Chapter 7 of the textbook. Outline of Slide Set 6. An outline of the first part of Chapter 7

UNIT IV. Sequential circuit

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

11. Sequential Elements

Digital Circuit And Logic Design I. Lecture 8

Digital Circuit And Logic Design I

Chapter 4. Logic Design

Chapter 5: Synchronous Sequential Logic

Counter dan Register

211: Computer Architecture Summer 2016

EE292: Fundamentals of ECE

Computer Science 324 Computer Architecture Mount Holyoke College Fall Topic Notes: Sequential Circuits

EET2411 DIGITAL ELECTRONICS

CMSC 313 Preview Slides

Figure 30.1a Timing diagram of the divide by 60 minutes/seconds counter

Logic. Andrew Mark Allen March 4, 2012

Last time, we saw how latches can be used as memory in a circuit

CHAPTER 11 LATCHES AND FLIP-FLOPS

WEEK 10. Sequential Circuits: Analysis and Design. Page 1

Sequential Logic Circuits

LAB #4 SEQUENTIAL LOGIC CIRCUIT

Chapter 5 Flip-Flops and Related Devices

Chapter 1: Switching Algebra Chapter 2: Logical Levels, Timing & Delays. Introduction to latches Chapter 9: Binary Arithmetic

CS8803: Advanced Digital Design for Embedded Hardware

Logic Gates, Timers, Flip-Flops & Counters. Subhasish Chandra Assistant Professor Department of Physics Institute of Forensic Science, Nagpur

5: Sequential Logic Latches & Flip-flops

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

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

Chapter 5 Sequential Circuits

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

FLIP-FLOPS AND RELATED DEVICES

Review of Flip-Flop. Divya Aggarwal. Student, Department of Physics and Astro-Physics, University of Delhi, New Delhi. their state.

ECE 341. Lecture # 2

Digital Systems Laboratory 3 Counters & Registers Time 4 hours

Transcription:

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

SN s ENEL 353 Fall 216 Slide Set 7 slide 2/45 Contents Combinational versus Sequential Logic SR latches Clock signals The D latch Introduction to D Flip-Flops D flip-flop implementation using two D latches The clock divider Abbreviations and symbols for D flip-flops N-bit registers, enabled DFFs, resettable DDFs Synchronous and asynchronous sequential circuits

SN s ENEL 353 Fall 216 Slide Set 7 slide 3/45 Outline of Slide Set 7 Combinational versus Sequential Logic SR latches Clock signals The D latch Introduction to D Flip-Flops D flip-flop implementation using two D latches The clock divider Abbreviations and symbols for D flip-flops N-bit registers, enabled DFFs, resettable DDFs Synchronous and asynchronous sequential circuits

SN s ENEL 353 Fall 216 Slide Set 7 slide 4/45 Combinational versus Sequential Logic This is review: The outputs of a combinational logic circuit depend only the current values of its inputs. The outputs of a sequential logic circuit depend on the history of its input values. We ve just seen that the above definition of combinational logic is very slightly untrue, due to very tiny delays. However, sequential logic is totally different. Outputs of sequential logic circuits may depend on the history of input values indefinitely far back in the past minutes, hours, or days, not just picoseconds.

SN s ENEL 353 Fall 216 Slide Set 7 slide 5/45 Outline of Slide Set 7 Combinational versus Sequential Logic SR latches Clock signals The D latch Introduction to D Flip-Flops D flip-flop implementation using two D latches The clock divider Abbreviations and symbols for D flip-flops N-bit registers, enabled DFFs, resettable DDFs Synchronous and asynchronous sequential circuits

SN s ENEL 353 Fall 216 Slide Set 7 slide 6/45 SR latches Here are two ways to build an SR latch, perhaps the simplest sequential circuit element: NOR-based R NAND-based S S N R N Notice that it s possible to wire together combinational devices in ways that produce sequential devices! Harris & Harris use and as names of outputs, but I prefer and N because as we ll soon see it s not always true that N = NOT().

SN s ENEL 353 Fall 216 Slide Set 7 slide 7/45 Static analysis of the SR latch We ll look at the NOR-based circuit. (Analysis of the NAND-based circuit is very similar.) R = (R + N) N = (S + ) S N depends on N, and N depends on. This is a system of two Boolean algebra equations in two unknowns! For all four possible combinations of R and S, let s solve for and N.

SN s ENEL 353 Fall 216 Slide Set 7 slide 8/45 Dynamic behaviour of a NOR-based SR latch 1 S 1 R 1 1 N useful behaviour problematic behaviour???????? A pulse on S or R is a transition from to 1, followed later by a transition from 1 to. Let s make some notes about useful and problematic behaviour of the SR latch.

SN s ENEL 353 Fall 216 Slide Set 7 slide 9/45 The SR latch is an example of a bistable circuit A bistable circuit is one that will sit in either one of two stable states. We ve just seen that an SR latch is bistable when S = R = : either (, N) = (,1) or (, N) = (1,). It s important to understand that if there are no pulses on S or R, the state of an SR latch will persist as long as the circuit is powered up. When S = R =, the state will not spontaneously flip between (, N) = (,1) and (, N) = (1,) (unless the latch is affected by severe electrical noise). To understand why the state is stable when S = R =, you need to study the pull-up and pull-down networks of the gates that make up an SR latch. That is not an ENEL 353 topic.

SN s ENEL 353 Fall 216 Slide Set 7 slide 1/45 Symbols for SR latches It s less important to know what is going on inside an SR latch (NOR gates, NAND gates, inverters and/or other devices) than it is to know its behaviour as a black box. (Black box: You can play with its inputs and observe its outputs, but you can t look inside it.) Here are two symbols, one from our course textbook, and another from an author named Wakerly... S S R R N (Wakerly s Digital Design book is very good, but for a beginner, reading it may be somewhat like trying to drink from a firehose.)

SN s ENEL 353 Fall 216 Slide Set 7 slide 11/45 Outline of Slide Set 7 Combinational versus Sequential Logic SR latches Clock signals The D latch Introduction to D Flip-Flops D flip-flop implementation using two D latches The clock divider Abbreviations and symbols for D flip-flops N-bit registers, enabled DFFs, resettable DDFs Synchronous and asynchronous sequential circuits

SN s ENEL 353 Fall 216 Slide Set 7 slide 12/45 Clock signals A clock signal in a digital circuit is a periodic square wave : 1 t H t L T C time T C is the period of the clock, also called the cycle time. The clock frequency f C is related to the period as f C = 1/T C. If the frequency of a clock is 2.5 GHz, what is its period? The duty cycle is defined as (t H /T C ) 1%. Usually t H = t L =.5T C, so the duty cycle is 5%, but that s not true for all clock signals.

SN s ENEL 353 Fall 216 Slide Set 7 slide 13/45 Clock signals and sequential logic systems In the most common kind of sequential circuit, a common clock signal is supplied to all of the D latches and/or D flip-flops in the circuit. (D latches and D flip-flops are important sequential logic components that will be presented very soon.) In digital integrated circuit design, distributing a common clock signal to all the latches and flip-flops in the circuit is just as important as making sure V DD and ground are connected to all combinational and sequential elements.

SN s ENEL 353 Fall 216 Slide Set 7 slide 14/45 Outline of Slide Set 7 Combinational versus Sequential Logic SR latches Clock signals The D latch Introduction to D Flip-Flops D flip-flop implementation using two D latches The clock divider Abbreviations and symbols for D flip-flops N-bit registers, enabled DFFs, resettable DDFs Synchronous and asynchronous sequential circuits

SN s ENEL 353 Fall 216 Slide Set 7 slide 15/45 uick review of the SR latch, part 1 R S N S R N 1 1 1 1 A pulse on S sets the state drives it to 1. A pulse on R resets the state drives it to. If there are no pulses on S or R, the state maintains its value as long as the circuit is powered up. In normal operation, N =.

SN s ENEL 353 Fall 216 Slide Set 7 slide 16/45 uick review of the SR latch, part 2 R S N Asserting S and R at the same time (in other words, making S = R = 1) should be avoided. When S = R = 1, it s possible that = N. For the NOR-based SR latch, we saw that when S = R = 1, = N =. (For a NAND-based SR latch, when S = R = 1, it turns out that = N = 1.) Behaviour of an SR latch when S and R make 1 transitions at nearly the same time is unpredictable.

SN s ENEL 353 Fall 216 Slide Set 7 slide 17/45 The D latch A D latch has two input wires. One of them is called D, for data. The other is usually called CLK, and is usually connected to a clock signal. One way to make a D latch is with an SR latch... CLK R D S N Why is it safe to label the D latch outputs as and, rather than and N as was done for the SR latch?

Behaviour of a D latch slide 18 CLK R D S N Let s complete the timing diagram below, then make some notes about D latch behaviour. CLK 1 D 1 S 1 R 1 1

SN s ENEL 353 Fall 216 Slide Set 7 slide 19/45 Symbols for D latches and D flip-flops Left: D latch. Right: D flip-flop. CLK CLK D D The symbols look very similar, but there is a really significant difference in behaviour! We ll now move on to studying D flip-flops, which are very important sequential logic elements.

SN s ENEL 353 Fall 216 Slide Set 7 slide 2/45 Outline of Slide Set 7 Combinational versus Sequential Logic SR latches Clock signals The D latch Introduction to D Flip-Flops D flip-flop implementation using two D latches The clock divider Abbreviations and symbols for D flip-flops N-bit registers, enabled DFFs, resettable DDFs Synchronous and asynchronous sequential circuits

SN s ENEL 353 Fall 216 Slide Set 7 slide 21/45 D Flip-Flops: Essential components in almost all sequential circuits!!! In learning about combinational logic circuits, it would be impossible to make progress without knowing exactly what NOT, AND and OR gates do. Similarly, it is impossible to understand most sequential circuits without knowing exactly what the basic behaviour of a D flip-flop is... how the state of a D flip-flop changes in response to its input signals.

SN s ENEL 353 Fall 216 Slide Set 7 slide 22/45 Clock edges Transitions between logic levels in a clock signal are usually called clock edges. A 1 transition is called a rising edge or a positive edge. A 1 transition is called a falling edge or a negative edge. Let s make a sketch of a clock signal and label the rising and falling edges.

SN s ENEL 353 Fall 216 Slide Set 7 slide 23/45 A good quote from your textbook From page 114 of Harris and Harris: A D flip-flop copies D to on the rising edge of the clock, and remembers its state at all other times. Reread this definition until you have it memorized; one of the most common problems for beginning digital designers is to forget what a flip-flop does.

SN s ENEL 353 Fall 216 Slide Set 7 slide 24/45 Learning D flip-flip behaviour by example CLK Let s complete the timing diagram. D CLK 1 D 1 1 1

SN s ENEL 353 Fall 216 Slide Set 7 slide 25/45 Outline of Slide Set 7 Combinational versus Sequential Logic SR latches Clock signals The D latch Introduction to D Flip-Flops D flip-flop implementation using two D latches The clock divider Abbreviations and symbols for D flip-flops N-bit registers, enabled DFFs, resettable DDFs Synchronous and asynchronous sequential circuits

SN s ENEL 353 Fall 216 Slide Set 7 slide 26/45 D flip-flop implementation using two D latches: master-slave configuration D IN CLK input for flip-flop CLK CLK D N1 D OUT Your instructor thinks that grabber-holder would be a more descriptive (and less creepy) name than master-slave for this kind of D flip-flop design. master slave latch latch D flip-flop Let s make some notes on the jobs done by the master and slave latches in this circuit.

CLK input for flip-flop slide 27 D IN CLK D N1 CLK D OUT master slave latch latch D flip-flop Let s see how this circuit works by completing this diagram... flip-flop CLK 1 1 D IN 1 N1 1 OUT

SN s ENEL 353 Fall 216 Slide Set 7 slide 28/45 Outline of Slide Set 7 Combinational versus Sequential Logic SR latches Clock signals The D latch Introduction to D Flip-Flops D flip-flop implementation using two D latches The clock divider Abbreviations and symbols for D flip-flops N-bit registers, enabled DFFs, resettable DDFs Synchronous and asynchronous sequential circuits

The clock divider slide 29 This simple and useful circuit can be built with a D flip-flop and an inverter. The output CLK2 is a clock signal with half the frequency of the input CLK1. CLK1 If the frequency of CLK1 is, say, 1 khz, the signals will look like this on an oscilloscope... CLK1 CLK2 D CLK2 The basic behaviour of a D flip-flop explains why CLK2 is constant between rising edges of CLK1. But what is going on at those rising edges? According to the inverter, D =, but according to the flip-flop, = D. It seems like D has to be and 1 at the same time!

SN s ENEL 353 Fall 216 Slide Set 7 slide 3/45 How the clock divider works We already know that the inverter has a minimum delay t cd. The flip-flop is a physical device, so also has a minimum delay, which is called t ccq. Let s make some notes about t ccq. CLK1 D CLK2 Now let s study what happens when = just before a rising edge of CLK1, and when = 1 just before a rising edge of CLK1.

SN s ENEL 353 Fall 216 Slide Set 7 slide 31/45 A small amount of delay is a good thing! We ve just seen that delays in the clock divider circuit are essential in making it work. The same idea is true for most other systems built using D flip-flops. Of course, long delays are bad they result in circuits that are slow or unreliable, or both. Note: There is much more to learn about timing of flip-flop circuits, but we won t do that until we get to Section 3.5 of Harris & Harris.

SN s ENEL 353 Fall 216 Slide Set 7 slide 32/45 About the clock edges visible on the scope... A few slides back it was suggested that if the clock divider input frequency was 1 khz, the input and output signals would look like this on an oscilloscope... CLK1 CLK2 Why do all the clock edges appear to be perfectly vertical? Why do the edges on CLK2 appear to occur at exactly the same time as rising edges on CLK1?

SN s ENEL 353 Fall 216 Slide Set 7 slide 33/45 Outline of Slide Set 7 Combinational versus Sequential Logic SR latches Clock signals The D latch Introduction to D Flip-Flops D flip-flop implementation using two D latches The clock divider Abbreviations and symbols for D flip-flops N-bit registers, enabled DFFs, resettable DDFs Synchronous and asynchronous sequential circuits

SN s ENEL 353 Fall 216 Slide Set 7 slide 34/45 Abbreviations for D flip-flop DFF is short, simple and obvious, so we ll use it in this course. Some literature uses the term flop, which is short but possibly ambiguous.

SN s ENEL 353 Fall 216 Slide Set 7 slide 35/45 Symbols for D flip-flops In symbols, the triangle on the CLK input indicates an edge-triggered device. With output... D CLK Lacking output... D CLK D Lacking output, condensed symbol... CLK All DFF designs have an internal signal, but many of them, to save space and power, do not make available as an output.

SN s ENEL 353 Fall 216 Slide Set 7 slide 36/45 Outline of Slide Set 7 Combinational versus Sequential Logic SR latches Clock signals The D latch Introduction to D Flip-Flops D flip-flop implementation using two D latches The clock divider Abbreviations and symbols for D flip-flops N-bit registers, enabled DFFs, resettable DDFs Synchronous and asynchronous sequential circuits

SN s ENEL 353 Fall 216 Slide Set 7 slide 37/45 N-bit registers An N-bit register is a group of N DFFs with a common CLK input. At right, (a) shows 4 DFFs configured as a 4-bit register, and (b) is a symbol for that register. Let s make some notes about the symbol. D 3 D 2 D 1 D (a) D D D D CLK 3 2 1 CLK 4 4 D 3: 3: Image is taken from Figure 3.9 from Harris D. M. and Harris S. L., Digital Design and Computer Architecture, 2nd ed., c 213, Elsevier, Inc. (b)

SN s ENEL 353 Fall 216 Slide Set 7 slide 38/45 Enabled D flip-flops D EN This kind of DFF is good for a circuit design in which it is useful to have a flip-flop sometimes hold its state for many clock cycles, rather than copy D on every single rising edge of the clock. Let s write a precise description of the behaviour of an enabled DFF. Let s show how an enabled DFF can be built using a plain DFF and a 2:1 multiplexer.

SN s ENEL 353 Fall 216 Slide Set 7 slide 39/45 Resettable D flip-flops Here are two symbols for the same thing... D RESET r Let s write a precise description of the behaviour of a resettable DFF, then build one using a plain DFF, an AND gate, and an inverter What would DFFs with reset inputs be useful for?

SN s ENEL 353 Fall 216 Slide Set 7 slide 4/45 Variations on enabled and resettable DFFs Here is a pretty obvious variation on the resettable DFF... On each rising edge of CLK, { D if SET = D = 1 if SET = 1 SET s Many textbooks use the names PRESET and CLEAR instead of SET and RESET. Also note that the above is a synchronous SET some DFFs have asynchronous SET and/or RESET. Some DFFs are designed to support two or all three of RESET, SET and EN inputs.

SN s ENEL 353 Fall 216 Slide Set 7 slide 41/45 The rest of Section 3.2 in Harris & Harris Section 3.2.7 presents and explains the most common present-day transistor-level designs for D latches and DFFs. We will not cover this topic in ENEL 353. If you are curious about this material, you will have to go back and read Section 1.7 before reading Section 3.2.7. Section 3.2.8 has a good example illustrating the difference between a D latch and a DFF. Check it out carefully!

SN s ENEL 353 Fall 216 Slide Set 7 slide 42/45 Outline of Slide Set 7 Combinational versus Sequential Logic SR latches Clock signals The D latch Introduction to D Flip-Flops D flip-flop implementation using two D latches The clock divider Abbreviations and symbols for D flip-flops N-bit registers, enabled DFFs, resettable DDFs Synchronous and asynchronous sequential circuits

SN s ENEL 353 Fall 216 Slide Set 7 slide 43/45 Synchronous and asynchronous sequential circuits A synchronous sequential circuit is a sequential logic system that has one or more bits of state; and has its state updates controlled by a clock signal, so that the state updates are synchronized by the clock. Making digital systems synchronous is a very powerful design technique the vast majority of digital circuits, including just about all practical computer processors, are synchronous sequential systems. An asynchronous sequential circuit is a sequential logic system in which some state updates occur not synchronized by the clock.

SN s ENEL 353 Fall 216 Slide Set 7 slide 44/45 Synchronous and asynchronous reset of DFFs FF1 has synchronous reset but FF2 has asynchronous reset. Let s complete the timing diagram to show the difference in behaviour. CLK FF1 D r 1 FF2 r R 2 CLK 1 D 1 R 1 1 1 1 2

SN s ENEL 353 Fall 216 Slide Set 7 slide 45/45 Textbook examples of asynchronous sequential circuits Section 3.3.1 in Harris & Harris presents two asynchronous sequential circuits with problematic behaviour: A ring oscillator made from 3 inverters. A D latch design that fails if delays within its components aren t exactly right. In ENEL 353, we re going to move on to synchronous sequential circuits, but it s worth studying these examples to get an idea of the difficulties that can arise in sequential circuits that are not run by a clock signal.