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

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

Chapter 5. Introduction

Chapter 5 Synchronous Sequential Logic

Universidad Carlos III de Madrid Digital Electronics Exercises

Lecture 11: Synchronous Sequential Logic

ELCT201: DIGITAL LOGIC DESIGN

The reduction in the number of flip-flops in a sequential circuit is referred to as the state-reduction problem.

Digital Logic Design I

Digital Logic Design Sequential Circuits. Dr. Basem ElHalawany

Analysis of Clocked Sequential Circuits

Finite State Machine Design

Chapter 5: Synchronous Sequential Logic

Chapter. Synchronous Sequential Circuits

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

Chapter 11 State Machine Design

EECS150 - Digital Design Lecture 19 - Finite State Machines Revisited

Sequential Logic Circuits

Chapter 5 Sequential Circuits

EET2411 DIGITAL ELECTRONICS

Digital Circuit And Logic Design I. Lecture 8

Digital Circuit And Logic Design I

Section 6.8 Synthesis of Sequential Logic Page 1 of 8

More design examples, state assignment and reduction. Page 1

1. Convert the decimal number to binary, octal, and hexadecimal.

ECE 301 Digital Electronics

UNIT III. Combinational Circuit- Block Diagram. Sequential Circuit- Block Diagram

EE292: Fundamentals of ECE

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

Part II. Chapter2: Synchronous Sequential Logic

Other Flip-Flops. Lecture 27 1

Digital Circuits ECS 371

FPGA Implementation of Sequential Logic

Unit 11. Latches and Flip-Flops

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

Chapter 5 Synchronous Sequential Logic

`COEN 312 DIGITAL SYSTEMS DESIGN - LECTURE NOTES Concordia University

CHAPTER 4: Logic Circuits

Synchronous Sequential Logic

Synchronous Sequential Logic. Chapter 5

CPS311 Lecture: Sequential Circuits


The word digital implies information in computers is represented by variables that take a limited number of discrete values.

ELCT201: DIGITAL LOGIC DESIGN

Logic and Computer Design Fundamentals. Chapter 7. Registers and Counters

Flip-Flops and Sequential Circuit Design

10.1 Sequential logic circuits are a type of logic circuit where the output of the circuit depends not only on

Chapter 5 Synchronous Sequential Logic

Synchronous Sequential Logic

MC9211 Computer Organization

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

Introduction to Sequential Circuits

L5 Sequential Circuit Design

Computer Architecture and Organization

Synchronous Sequential Logic

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

ELE2120 Digital Circuits and Systems. Tutorial Note 7

DIGITAL TECHNICS II. Dr. Bálint Pődör. Óbuda University, Microelectronics and Technology Institute

ENGG 1203 Tutorial. D Flip Flop. D Flip Flop. Q changes when CLK is in Rising edge PGT NGT

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

NH 67, Karur Trichy Highways, Puliyur C.F, Karur District DEPARTMENT OF INFORMATION TECHNOLOGY CS 2202 DIGITAL PRINCIPLES AND SYSTEM DESIGN

Synchronous sequential circuits

Combinational vs Sequential

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

CHAPTER1: Digital Logic Circuits

B.Tech CSE Sem. 3 15CS202 DIGITAL SYSTEM DESIGN (Regulations 2015) UNIT -IV

CHAPTER 4: Logic Circuits

Introduction to Computer Engineering EECS dickrp/eecs203/

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

Sequential Design Basics

UNIT IV. Sequential circuit

DIGITAL TECHNICS. Dr. Bálint Pődör. Óbuda University, Microelectronics and Technology Institute

D Latch (Transparent Latch)

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

Switching Circuits & Logic Design, Fall Final Examination (1/13/2012, 3:30pm~5:20pm)

EECS 3201: Digital Logic Design Lecture 9. Ihab Amer, PhD, SMIEEE, P.Eng.

Asynchronous (Ripple) Counters

Synchronous Sequential Logic

Logic Design II (17.342) Spring Lecture Outline

Combinational / Sequential Logic

Course Administration

Chapter Contents. Appendix A: Digital Logic. Some Definitions

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

Logic Design. Flip Flops, Registers and Counters

ECE 263 Digital Systems, Fall 2015

Registers and Counters

CS8803: Advanced Digital Design for Embedded Hardware

2 Sequential Circuits

ECE 341. Lecture # 2

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

Experiment # 12. Traffic Light Controller

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

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

ELCT201: DIGITAL LOGIC DESIGN

EECS150 - Digital Design Lecture 15 Finite State Machines. Announcements

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

Engr354: Digital Logic Circuits

1.b. Realize a 5-input NOR function using 2-input NOR gates only.

Principles of Computer Architecture. Appendix A: Digital Logic

LATCHES & FLIP-FLOP. Chapter 7

6. Sequential Logic Flip-Flops

Transcription:

WEEK 10 Sequential Circuits: Analysis and Design Page 1

Analysis of Clocked (Synchronous) Sequential Circuits Now that we have flip-flops and the concept of memory in our circuit, we might want to determine what a circuit is doing. The behavior of a clocked sequential circuit is determined from its inputs, outputs and state of the flip-flops (i.e., the output of the flip-flops). The analysis of a clocked sequential circuit consists of obtaining a table of a diagram of the time sequences of inputs, outputs and states. E.g., given a current state and current inputs, how will the state and outputs change when the next active clock edge arrives??? E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 2

Analysis Procedure We have a basic procedure for analyzing a clocked sequential circuit: Write down the equations for the outputs and the flip-flop inputs. Using these equations, derive a state table which describes the next state. Obtain a state diagram from the state table. It is the state table and/or state diagram that specifies the behavior of the circuit. Notes: The flip-flop input equations are sometimes called the excitation equations. The state table is sometimes called a transition table. We can best illustrate the procedure by doing examples E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 3

Analysis Example Consider the following circuit. We want to determine how it will behave. A B J Q Q0 K R T Q Q1 Z R Observations: The circuit has two inputs A and B, one output Z (it happens that the output is equal to one of the flip flop outputs). E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 4

Analysis Example More Observations A B J Q Q0 K R T Q Q1 Z R Observations: The circuit has two flip-flops (different types) with outputs Q 0 and Q 1 (This implies that there are as many as 4 different states in the circuit, namely Q 0 Q 1 = 00, 01, 11, 10). Observations: The circuit output depends on the current state (flip-flop outputs) only. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 5

Analysis Example Flip-Flop Input Equations and Output Equations A B J Q Q0 K R T Q Q1 Z R We write down Boolean expressions for the FF inputs and the circuit outputs. Done in terms of the circuit inputs and the current state (flip-flop outputs) of the system. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 6

Analysis Example State Table Using the FF input equations, we can build a table showing the FF inputs (this is the first step in creating the state table): A B J Q Q0 K R T Q Q1 Z E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 7 R

Analysis Example State Table Continued We now have the FF input values, and know the FF behavior (for both JKFF and TFF): We can then determine the next FF output values: E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 8

Analysis Example State Table Summarized We can (finally) write the next state information and the output values (based on current state and input values) in the state table format: AB=01,AB=10 AB=00 00 01 Complete it! AB=10 11 10 Observation: The output Z (in this example) is only a function of the current state; it does not depend on the inputs. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 9

Analysis Example State Table Alternative Representation We can also write the state table in a slightly different (tabular) format if we choose. The information presented is the same. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 10

State Diagram Another way to illustrate the behavior of a clocked sequential circuit is with a state diagram. 11 01,10 00 11/1 01/1 01,10 01,10 11 01,10 11 00 10/0 00/0 11 00 00 E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 11

State Diagram Explained Each bubble (state bubble) in the state diagram represents one state of the system. The flip-flop outputs that correspond to that state are labeled inside of the bubble. Each edge leaving a bubble represents a possible transition to another state once the active clock edge arrives. The edges are labeled with the input values that cause the transition to occur. In this state diagram, the output values are labeled inside of the state bubbles. We can do this because the outputs are only a function of the current state in this example. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 12

Topologies of Clocked Sequential Circuits States Recall our basic block diagram of a clocked sequential circuit: inputs combinatorial circuit next state function flip-flops outputs current state clock The next state is always a function of the current state and the current inputs. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 13

Topologies of Clocked Sequential Circuits - Outputs Recall our basic block diagram of a clocked sequential circuit: inputs combinatorial circuit next state function flip-flops outputs current state clock The outputs can be a function of either: The current state only, or The current state and the current inputs. We can categorize the topology of the clocked sequential circuit depending on how the outputs are computed. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 14

Moore Machines (Basic Topology) If outputs depend only on the current state, we have a Moore Machine. We can re-arrange the drawing of a clocked sequential circuit: inputs combinatorial circuit next state function flip-flops current state combinatorial circuit outputs clock IMPORTANT OBSERVATION: In a Moore Machine, the outputs change synchronously with the clock as the state changes synchronously with the clock. Important because this means outputs change at predictable times and timing analysis easy (outputs good right after clock edge). E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 15

Mealy Machines (Basic Topology) If outputs depend on both the current state and the current input, we have a Mealy Machine. We can re-arrange the drawing of a clocked sequential circuit: inputs combinatorial circuit next state function flip-flops current state combinatorial circuit outputs clock IMPORTANT OBSERVATION: In a Mealy Machine, the outputs change asynchronously with respect to the clock since inputs can change at any time. Important because this means outputs change at unpredictable times and timing analysis is harder (when are outputs valid?). E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 16

State Diagram for a Moore Machine Recall our analysis example We derived the following state diagram. 11 01,10 00 11/1 01/1 01,10 01,10 11 01,10 11 00 10/0 00/0 11 00 00 Since we found that the outputs depended only on the current state, our analysis example was for a Moore Machine; this is why the output values were labeled inside to the state bubble. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 17

State Diagram for a Mealy Machine Consider for a moment a circuit in which the output values are a function of both the current state and the current input values. E.g., if we had the following state table for a circuit with one input X, one output Z and two flip-flops (4 possible states): Observation: The output Z does depend on both the current state and the current input; e.g., when the current state is 11, the output Z is different for different values of X. So this state table does correspond to a Mealy Machine, and we need to draw our state diagram slightly differently. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 18

State Diagram for a Mealy Machine Illustrated For a Mealy Machine, note that the outputs are labelled along the edges, indicating that the outputs depend on both the current state (where the edge begins) and the current input value (which is labelled on the edge itself). X=0/Z=0 1/0 1/0 00 01 0/0 0/0 1/0 10 11 0/0 1/1 E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 19

Initial State When we turn on the power or need to start over our clocked sequential circuits, we would like to be able to control the initial state that the circuit enters. For our analysis example, both the flip-flops had asynchronous resets. We can use resets and presets to force the circuit into a particular, initial state. For our analysis example, forcing the reset to 1 would force the flip-flop outputs to 00, and our initial state would be 00. We can illustrate the initial state in the state diagram if we choose E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 20

Initial State Illustrated The initial state is illustrated by an incoming edge pointing at the initial state. 11 01,10 00 11/1 01/1 01,10 01,10 11 01,10 11 00 10/0 00/0 11 00 00 reset E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 21

Textbook Analysis of clocked sequential circuits is described in the textbook in Chapter 5, Section 5-4. Mealy and Moore Machines are also described in Section 5-4. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 22

Design of Clocked (Synchronous) Sequential Circuits Design of clocked sequential circuits is very much the opposite of the analysis and we can follow a sequence of steps (some steps will need to be illustrated). E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 23

Design Procedure Understand the verbal description of the problem, and create a state diagram and/or a state table. Note that the states may have only symbolic names at this point. Reduce the number of states, if possible (state reduction). This may yield a circuit with fewer flip-flops. Perform state assignment which means assigning binary codes to the symbolic state names. Select a flip-flop type (e.g., DFF, TFF, JKFF, or some combination thereof ). Derive simplified output equations. Derive the next-state equations and the flip-flop input equations. Draw a schematic of the resulting circuit. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 24

Design Example We will illustrate the design procedure by doing an example. Then, we will go back an investigate alternative choices we could have made at various steps. Consider the following verbal problem description: A vending machine dispenses a package of gum which costs 15 cents. The machine has a single slot that accepts nickels and dimes only and a sensor indicates the type of coin deposited. Make a controller that sends a signal to a chute release once enough change has been deposited. Note that the machine does not give change or credits. Getting from the verbal problem description to a state diagram and/or a state table is likely the hardest part of the design procedure. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 25

Design Example Block Diagram We can illustrate the verbal problem description as a block diagram. coin sensor n d vending machine control release chute release mechanism reset clk Our controller has two inputs, n and d, to indicate the coin deposited. It also has a clock and a reset input. It produces one output, release, once enough change has been deposited. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 26

Design Example Problem Interpretation We can make some observations about the problem: Once 15 or more cents has been deposited we assert the release signal so the gum is dispensed. When a nickel is deposited, n is set to 1. When a dime is deposited, d is set to 1. Inputs n or d are both 0 when no coin deposited. Both n and d are never set to 1 simultaneously. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 27

Design Example Problem Interpretation Continued We need to detect sequences of deposited nickels and dimes that add up to 15 cents. 0c 0c 0c 0c 0c n n n d d 5c 5c 5c n n d 10c 10c 10c 10c n d n d 15c 15c 15c 20c 20c It then makes sense to define a state and the amount of money deposited so far. We can then draw a state diagram. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 28

Design Example State Diagram We can draw the state diagram: n=0 & d=0 n=0 & d=0 d=1 n=0 & d=0 reset n=1 n=1 n=1 + d=1 S0/0 S1/0 S2/0 S3/1 0c 5c 10c >= 15c d=1 Note that the states are symbolic (e.g., S0 represents 0 cents deposited so far, S1 representes 5 cents deposited so far, S2 represents 10 cents deposited so far, and S3 represents >= 15 cents deposited ). E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 29

Design Example State Table From the state diagram, we can write the state table immediately. n=0 & d=0 n=0 & d=0 d=1 n=0 & d=0 reset n=1 n=1 n=1 + d=1 S0/0 S1/0 S2/0 S3/1 0c 5c 10c >= 15c d=1 E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 30

Design Example State Assignment Presently, our states have symbolic names (S0, S1, etc.) and we need to encode them as bit strings. How should we do the encoding? Decisions, decisions, How many bits we chose for the encoding influences the number of flip-flops required. How we assign binary patterns to states can influence the complexity of the flip-flop input equations. Etc E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 31

Design Example State Assignment In our example, we have 4 states, so we need a minimum of 2 bits to encode the states (and therefore a minimum of 2 flip-flops). We will use the following encoding: S0 Ã 00 S1 Ã 01 S2 Ã 10 S3 Ã 11 E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 32

Design Example State Table With binary codes assigned, we can redo our state table with binary values instead of symbolic names: E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 33

Design Example Flip-Flop Selection Need to select a type of flip-flop to serve as the storage element for the state information and to hold the current state information. We different possibilities, including DFF, TFF and JKFF. The selection of flip-flop type will influence the complexity of the logic required to generate the flip-flop input equations (i.e., the complexity of the next state logic). E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 34

Design Example Flip-Flop Selection For our example, we will chose DFF. With DFF, the output Q(t+1) equals input D(t) once the active clock edge arrives. So, DFF are convenient in that the FF input equations only need to produce the encoding of the next state!!! I.e., the DFF input equations should be equal to the next state information in the state table!!! E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 35

Design Example Flip-Flop Input Equations Use the state table along with DFF behavior to derive FF input equations Note: Once again With DFF, the input equations EQUAL the next state columns of the state table. nd Q1Q0 00 01 11 10 00 01 11 10 0 0 X 1 1 1 X 0 0 0 X 0 0 1 X 1 D0 nd Q1Q0 00 01 11 10 00 01 11 10 0 1 X 0 0 1 X 1 0 0 X 0 1 1 X 1 D1 E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 36

Design Example Output Equations Use the state table to derive the output equations. Q1Q0 nd 00 01 11 10 00 01 11 10 0 0 1 0 0 0 1 0 X X X X 0 0 1 0 release E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 37

Design Example Circuit Implementation (Schematic) Finally, we can draw our schematic with two DFF, and logic equations to produce the flip-flop inputs and the output equation. d D1 D Q Q1 release n R D0 D R Q Q0 Note that we can use the resets on the DFF to reset the circuit into its initial state (this was a result of the encoding scheme that made the initial state 00). E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 38

Alternatives in Flip-Flop Type Selection Recall that the flip-flops hold the current state information. The next state information is determined by the flip-flop input equations. DFF are an obvious and convenient choice to hold state information since their inputs ARE the next state equations. However A different type of FF might result in input equations that are much simpler (less gates) compared to that obtained using DFF. This will change the design procedure, since we need to account for the different behaviors of different types of flip-flops. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 39

Changes in Design Due To Flip-Flop Selection If using DFF: Look at the state table and derive equations for the next state given the current state and the circuit inputs. Apply (connect) the next state logic directly to the DFF inputs. If not using DFF: Look at the state table to see how the current state CHANGES to the next state for a given current state and inputs. Examine the excitation table for the FF to determine how the FF input must be set to get the DESIRED CHANGE from current state to next state. Derive logic functions for the FF inputs given the current state and inputs and apply (connect) these equations directly to the FF inputs. EMPHASIS: When we use FF that are not DFF, the logic applied to the FF input are NOT the next state equations BUT WILL GENERATE THE CORRECT NEXT STATE IN CONJUNCTION WITH THE FF BEHAVIOR. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 40

Excitation Tables We can rewrite the behavior of all flip-flop types in terms of how the output changes given the current inputs to the flip-flops. Changes in flip-flop outputs depending on flip-flop inputs is done via an Excitation Table. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 41

Excitation Tables - DFF For DFF, the output Q(t+1) depends only on the input D(t). E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 42

Excitation Tables - TFF For a TFF, the output Q(t+1) changes to the complement of Q(t) if the input is 1. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 43

Excitation Tables - JKFF Excitation Table for JKFF slightly more complicated, but can be determined from the characteristic table: E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 44

Implementation Choices Flip-Flop Selection We can now consider the changes in circuits for different flip-flop choices. Assume we have the following state table (no outputs shown) which was derived originally from some verbal description of a problem: Can implement circuit using each type of FF to illustrate the design procedure. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 45

Implementation Choices DFF Selection and Input Equations Assume we select DFF. We need two DFF and need their input equations. The transition table tells us that the DFF input equals the next state information. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 46

Implementation Choices DFF Input Equations We draw K-Maps to determine DFF input equations. Q1Q0 Q1Q0 A 0 00 01 11 10 0 1 1 1 A 0 00 01 11 10 0 0 1 0 1 0 1 0 0 D0 1 1 1 0 1 D1 E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 47

Implementation Choices DFF Schematic Finally, we can draw our circuit. D1 D Q Q1 A R D0 D Q Q0 R E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 48

Implementation Choices TFF Selection and Input Equations Assume we select TFF. We need two TFF and need their input equations. Use next state and TFF transition table to figure out TFF inputs: E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 49

Implementation Choices TFF Input Equations We draw K-Maps to determine TFF input equations. A Q1Q0 Q1Q0 00 01 11 10 00 01 11 10 A 0 0 0 0 1 0 0 0 0 1 1 0 0 1 0 T0 1 1 1 1 0 T1 E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 50

Implementation Choices TFF Schematic Finally, we can draw our circuit (not really any simpler than DFF in this example). A T1 T Q Q1 R T0 T Q Q0 R E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 51

Implementation Choices JKFF Selection and Input Equations Assume we select JKFF. We need two JKFF and need their input equations. Use next state and JKFF transition table to figure out JKFF inputs: E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 52

Implementation Choices JKFF Input Equations We draw K-Maps to determine JKFF input equations. A Q1Q0 Q1Q0 00 01 11 10 00 01 11 10 A 0 0 X X 1 0 0 0 X X 1 0 X X 0 J0 1 1 1 X X J1 Q1Q0 Q1Q0 A 0 00 01 11 10 X 0 0 X A 0 00 01 11 10 X X 0 1 1 X 0 1 X K0 1 X X 1 0 K1 E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 53

Implementation Choices JKFF Schematic Finally, we can draw our circuit (simpler than DFF in this example). A J1 J Q Q1 K1 K J0 J Q Q0 K0 K E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 54

Comment on Implementation Choices In this example, TFF was not any simpler than DFF, but sometimes it is. JKFF resulted in a much simpler implementation. This is often the case (but not always). When JKFF are available, they have lots of don t cares X s in the K-Maps and this turns out (often) to yield simple input equations. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 55

Textbook Sections Clocked circuit design and implementation using different types of flip-flops is covered in the textbook in Chapter 5, Section 5.7. E&CE 223 Digital Circuits and Systems (Fall 2004 - A. Kennings) Page 56