ECE 331 – Digital System Design

Slides:



Advertisements
Similar presentations
STATE DIAGRAM AND STATE TABLES
Advertisements

State-machine structure (Mealy)
State Machine Design Procedure
Analysis of Clocked Sequential Circuits
TOPIC : Finite State Machine(FSM) and Flow Tables UNIT 1 : Modeling Module 1.4 : Modeling Sequential circuits.
ECE 331 – Digital System Design Latches and Flip-Flops (Lecture #17) The slides included herein were taken from the materials accompanying Fundamentals.
1 EE365 Sequential-circuit analysis. 2 Clocked synchronous seq. circuits A.k.a. “state machines” Use edge-triggered flip-flops All flip-flops are triggered.
Digital Logic Design Lecture 27.
Nonlinear & Neural Networks LAB. CHAPTER 13 Analysis of Clocked Sequential Circuit 13.1 A Sequential Parity Checker 13.2 Analysis by Signal Tracing 13.3.
Unit 13 Analysis of Clocked Sequential Circuits Ku-Yaw Chang Assistant Professor, Department of Computer Science and Information.
UNIT 14 DERIVATION OF STATE GRAPHS AND TABLES Spring 2011.
ECE 331 – Digital System Design Flip-Flops and Registers (Lecture #18) The slides included herein were taken from the materials accompanying Fundamentals.
Sequential Circuit Design
ECE 331 – Digital System Design Introduction to and Analysis of Sequential Logic Circuits (Lecture #20) The slides included herein were taken from the.
ECE 331 – Digital System Design State Reduction and State Assignment (Lecture #22) The slides included herein were taken from the materials accompanying.
ECE 331 – Digital System Design
Give qualifications of instructors: DAP
Sequential Circuit Design
Overview Sequential Circuit Design Specification Formulation
1 Design of a Sequence Detector (14.1) Seq. ends in > Z=1 (no reset) Otherwise--> Z=0 Typical input/output sequence Partial Soln. (Mealy Network):
ECE 301 – Digital Electronics
ECE 331 – Digital System Design Counters (Lecture #19) The slides included herein were taken from the materials accompanying Fundamentals of Logic Design,
ECE 331 – Digital System Design Sequential Circuit Design (Lecture #23) The slides included herein were taken from the materials accompanying Fundamentals.
ECE 301 – Digital Electronics Introduction to Sequential Logic Circuits (aka. Finite State Machines) and FSM Analysis (Lecture #17)
ECE 331 – Digital Systems Design Introduction to Sequential Logic Circuits (aka. Finite State Machines) and FSM Analysis (Lecture #19)
9/15/09 - L22 Sequential Circuit Design Copyright Joanne DeGroat, ECE, OSU1 Sequential Circuit Design Creating a sequential circuit to address a.
Lecture 10 Topics: Sequential circuits Basic concepts Clocks
Digital Computer Design Fundamental
ECE 331 – Digital Systems Design Sequential Logic Circuits: FSM Design (Lecture #20)
Chapter 5 - Part Sequential Circuit Design Design Procedure  Specification  Formulation - Obtain a state diagram or state table  State Assignment.
1 COMP541 State Machines Montek Singh Feb 8, 2012.
Unit 14 Derivation of State Graphs
Lecture 18 More Moore/Mealy machines.
L6 – Derivation of State Graphs and Tables. State Graphs and Tables  Problem Statement translation To State Graphs To State Tables  Ref: text : Unit.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 5 – Sequential Circuits Part 2 – Sequential.
CPEN Digital System Design Chapter 5 - Sequential Circuits Sequential Circuit Design C. Gerousis © Logic and Computer Design Fundamentals, 4 rd Ed.,
1 © 2014 B. Wilkinson Modification date: Dec Sequential Logic Circuits Previously, we described the basic building blocks of sequential circuits,
Module : FSM Topic : types of FSM. Two types of FSM The instant of transition from the present to the next can be completely controlled by a clock; additionally,
Introduction to State Machine
Fall 2004EE 3563 Digital Systems Design EE3563 Chapter 7, 8, 10 Reading Assignments  7.1, 7.2, 7.3  8.1, ,   8.5.1, 8.5.2,
General model of a sequential network.
FINITE STATE MACHINES (FSMs)
DLD Lecture 26 Finite State Machine Design Procedure.
ECE 301 – Digital Electronics
ANALYSIS OF SEQUENTIAL CIRCUITS by Dr. Amin Danial Asham.
DESIGN OF SEQUENTIAL CIRCUITS by Dr. Amin Danial Asham.
1 State Reduction Goal: reduce the number of states while keeping the external input-output requirements unchanged. State reduction example: a: input 0.
CEC 220 Digital Circuit Design Mealy and Moore State Machines Friday, March 27 CEC 220 Digital Circuit Design Slide 1 of 16.
ENG241 Digital Design Week #7 Sequential Circuits (Part B)
© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Digital Logic Design Dr. Oliver Faust.
Synchronous Counter Design
Overview Part 1 - Storage Elements and Sequential Circuit Analysis
Week #7 Sequential Circuits (Part B)
SLIDES FOR CHAPTER 15 REDUCTION OF STATE TABLES STATE ASSIGNMENT
4.
Lecture 13 Derivation of State Graphs and Tables
CS 352 Introduction to Logic Design
Lecture 12 Analysis of Clocked Sequential Network
Adapted by Dr. Adel Ammar
Analysis of Clocked Sequential Circuit
SLIDES FOR CHAPTER 13 ANALYSIS OF CLOCKED SEQUENTIAL CIRCUITS
ECE 301 – Digital Electronics
FINITE STATE MACHINES (FSMs)
State Reduction and State Assignment
KU College of Engineering Elec 204: Digital Systems Design
KU College of Engineering Elec 204: Digital Systems Design
DESIGN OF SEQUENTIAL CIRCUITS
ECE 352 Digital System Fundamentals
EGR 2131 Unit 12 Synchronous Sequential Circuits
ECE 352 Digital System Fundamentals
Presentation transcript:

ECE 331 – Digital System Design Derivation of State Graphs and State Tables (Lecture #21) The slides included herein were taken from the materials accompanying Fundamentals of Logic Design, 6th Edition, by Roth and Kinney, and were used with permission from Cengage Learning.

Material to be covered … Chapter 14: Sections 1 – 5 Fall 2010 ECE 331 - Digital System Design

Sequential Circuit Design Understand specifications Draw state graph (to describe state machine behavior) Construct state table (from state graph) Perform state minimization (if necessary) Encode states (aka. state assignment) Create state-assigned table Select type of Flip-Flop to use Determine Flip-Flop input equations and FSM output equation(s) Draw logic diagram ECE 331 - Digital Systems Design

Designing a sequence detector. Example: Designing a sequence detector. Fall 2010 ECE 331 - Digital System Design

Example: A sequence detector (Mealy) To illustrate the design of a clocked Mealy sequential circuit, we will design a sequence detector. The circuit is of the form: serial bit stream (input) output (serial bit stream) Fall 2010 ECE 331 - Digital System Design

Example: A sequence detector (Mealy) Suppose we want to design the sequence detector so that any input sequence ending in 101 will produce an output of Z = 1 coincident with the last 1. The circuit does not reset when a 1 output occurs. A typical input sequence and the corresponding output sequence are: X = 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 0 Z = 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 (time: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15) Fall 2010 ECE 331 - Digital System Design

Example: A sequence detector (Mealy) Initially, we do not know how many flip-flops will be required, so we will designate the circuit states as S0, S1, etc. We will start with a reset state designated S0. If a 0 input is received, the circuit can stay in S0 because the input sequence we are looking for does not start with a 0. Fall 2010 ECE 331 - Digital System Design

Example: A sequence detector Design in progress … Fall 2010 ECE 331 - Digital System Design

Example: A sequence detector (Mealy) State Graph for the Mealy Machine Fall 2010 ECE 331 - Digital System Design

Example: A sequence detector (Mealy) We can then convert our state graph to a state table: Since there are 3 states, we only need 2 flip-flops for the circuit. Fall 2010 ECE 331 - Digital System Design

Example: A sequence detector (Mealy) And then convert our state table to a transition table: Fall 2010 ECE 331 - Digital System Design

Example: A sequence detector (Mealy) From the transition table, we can plot the next-state maps for the flip-flops and the map for the output function Z: Fall 2010 ECE 331 - Digital System Design

Example: A sequence detector (Mealy) Using the derived equations, we can then draw the corresponding circuit diagram: Fall 2010 ECE 331 - Digital System Design

Example: A sequence detector (Moore) The procedure for finding the state graph for a Moore machine is similar to that used for a Mealy machine, except that the output is written with the state. We will rework the previous example as a Moore machine: the circuit should produce an output of 1 only if an input sequence ending in 101 has occurred. Fall 2010 ECE 331 - Digital System Design

Example: A sequence detector (Moore) Design in progress … Fall 2010 ECE 331 - Digital System Design

Example: A sequence detector (Moore) State Graph for the Moore Machine Fall 2010 ECE 331 - Digital System Design

Example: A sequence detector (Moore) As with the Mealy machine, the state and transition tables can be derived from the state graph: Fall 2010 ECE 331 - Digital System Design

A more complex sequence detector. Example: A more complex sequence detector. Fall 2010 ECE 331 - Digital System Design

Example: Another sequence detector (Moore) Now we will derive a state graph for a sequential circuit of somewhat greater complexity than the previous examples. For this circuit, the output Z should be 1 if the input sequence ends in either 010 or 1001, and Z should be 0 otherwise. A typical input sequence and the corresponding output sequence are: Fall 2010 ECE 331 - Digital System Design

Example: Another sequence detector (Moore) Design in progress … Fall 2010 ECE 331 - Digital System Design

Example: Another sequence detector (Mealy) The state graph for the equivalent Mealy machine is derived in the textbook. Fall 2010 ECE 331 - Digital System Design

Another Moore Finite State Machine (FSM). Example: Another Moore Finite State Machine (FSM). Fall 2010 ECE 331 - Digital System Design

Example: Another FSM (Moore) Design a Moore sequential circuit with one input X and one output Z. The output Z is to be 1 if the total number of 1’s received is odd and at least two consecutive 0’s have been received. A typical input and output sequence is: Fall 2010 ECE 331 - Digital System Design

Example: Another FSM (Moore) Design in progress … Fall 2010 ECE 331 - Digital System Design

Example: Another FSM (Moore) Fall 2010 ECE 331 - Digital System Design

Constructing State Graphs Although there is no one specific procedure which can be used to derive state graphs or tables for every problem, the following guidelines should prove helpful: First, construct some sample input and output sequences to make sure that you understand the problem statement. Determine under what conditions, if any, the circuit should reset to its initial state. If only one or two sequences lead to a nonzero output, a good way to start is to construct a partial state graph for those sequences. Fall 2010 ECE 331 - Digital System Design

Constructing State Graphs 4. Another way to get started is to determine what sequences or groups of sequences must be remembered by the circuit and set up states accordingly. 5. Each time you add an arrow to the state graph, determine whether it can go to one of the previously defined states or whether a new state must be added. 6. Check your graph to make sure there is one and only one path leaving each state for each combination of values of the input variables. 7. When your graph is complete, test it by applying the input sequences formulated in part 1 and making sure the output sequences are correct. Fall 2010 ECE 331 - Digital System Design

Another Mealy Finite State Machine (FSM). Example: Another Mealy Finite State Machine (FSM). Fall 2010 ECE 331 - Digital System Design

Example: Another FSM (Mealy) A sequential circuit has one input (X) and one output (Z). The circuit examines groups of four consecutive inputs and produces an output Z = 1 if the input sequence 0101 or 1001 occurs. The circuit resets after every four inputs. Find a Mealy state graph. A typical input and output sequence is: Fall 2010 ECE 331 - Digital System Design

Example: Another FSM (Mealy) Design in progress … Fall 2010 ECE 331 - Digital System Design

Example: Another FSM (Mealy) Fall 2010 ECE 331 - Digital System Design

A FSM with multiple inputs (Moore). Example: A FSM with multiple inputs (Moore). Fall 2010 ECE 331 - Digital System Design

Example: Multiple Inputs (Mealy) A sequential circuit has two inputs (X1, X2) and one output (Z). The output remains a constant value unless one of the following input sequences occurs: (a) The input sequence X1X2 = 01, 11 causes the output to become 0. (b) The input sequence X1X2 = 10, 11 causes the output to become 1. (c) The input sequence X1X2 = 10, 01 causes the output to change value. (The notation X1X2 = 01, 11 means X1 = 0, X2 = 1 followed by X1 = 1, X2 = 1.) Fall 2010 ECE 331 - Digital System Design

Example: Multiple Inputs (Mealy) Fall 2010 ECE 331 - Digital System Design

Example: Multiple Inputs (Mealy) The state table for the Moore machine: Fall 2010 ECE 331 - Digital System Design

Example: Multiple Inputs (Mealy) The state graph for the Moore machine: Fall 2010 ECE 331 - Digital System Design

Alphanumeric State Graph Notation When a state sequential circuit has several inputs, it is often convenient to label the state graph arcs with alphanumeric input variable names instead of 0’s and 1’s. XiXj / ZpZq means if inputs Xi and Xj are 1 (we don’t care what the other input values are), the outputs Zp and Zq are 1 (and the other outputs are 0). That is, for a circuit with four inputs (X1, X2, X3, and X4) and four outputs (Z1, Z2, Z3, and Z4), X1X4′ / Z2Z3 is equivalent to 1--0 / 0110. This type of notation is very useful for large sequential circuits where there are many inputs and outputs. Fall 2010 ECE 331 - Digital System Design

Properly specified State Graphs In general, a completely specified state graph has the following properties: When we OR together all input labels on arcs emanating from a state, the result reduces to 1. When we AND together any pair of input labels on arcs emanating from a state, the result is 0. Fall 2010 ECE 331 - Digital System Design

ECE 331 - Digital System Design Questions? Fall 2010 ECE 331 - Digital System Design