ECE 301 – Digital Electronics

Slides:



Advertisements
Similar presentations
State Machine Design Procedure
Advertisements

VIII - Working with Sequential Logic © Copyright 2004, Gaetano Borriello and Randy H. Katz 1 Finite state machine optimization State minimization  fewer.
TOPIC : Finite State Machine(FSM) and Flow Tables UNIT 1 : Modeling Module 1.4 : Modeling Sequential circuits.
Sequential Circuits1 DIGITAL LOGIC DESIGN by Dr. Fenghui Yao Tennessee State University Department of Computer Science Nashville, TN.
Digital Electronics Chapter 5 Synchronous Sequential Logic.
Circuits require memory to store intermediate data
Sequential Circuit Design
ECE 301 – Digital Electronics Circuit Design and Analysis (Lecture #9A) The slides included herein were taken from the materials accompanying Fundamentals.
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 301 – Digital Electronics Minterm and Maxterm Expansions and Incompletely Specified Functions (Lecture #6) The slides included herein were taken from.
ECE 331 – Digital System Design
ECE 331 – Digital System Design
ECE C03 Lecture 111 Lecture 11 Finite State Machine Optimization Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
Sequential Circuits and Finite State Machines Prof. Sin-Min Lee
Give qualifications of instructors: DAP
Sequential Circuit Design
Overview Sequential Circuit Design Specification Formulation
ECE 331 – Digital System Design Counters (Lecture #18)
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 Karnaugh Maps and Determining a Minimal Cover (Lecture #7) The slides included herein were taken from the materials accompanying.
ECE 301 – Digital Electronics Karnaugh Maps and Determining a Minimal Cover (Lecture #8) The slides included herein were taken from the materials accompanying.
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.
ETE Digital Electronics
ECE 301 – Digital Electronics Counters (Lecture #16)
IKI c-Synthesis of Sequential Logic Bobby Nazief Semester-I The materials on these slides are adopted from: Prof. Daniel Gajski’s transparency.
Applications of Synchronous Circuits (Class 10.2 – 3/28/2013) CSE 2441 – Introduction to Digital Logic Spring 2013 Instructor – Bill Carroll, Professor.
ECE 331 – Digital Systems Design Sequential Logic Circuits: FSM Design (Lecture #20)
CS/EE 3700 : Fundamentals of Digital System Design Chris J. Myers Lecture 8: Synchronous Sequential Circuits Chapter 8.
Digital Design Lecture 10 Sequential Design. State Reduction Equivalent Circuits –Identical input sequence –Identical output sequence Equivalent States.
Synchronous Sequential Logic Part II
Circuit, State Diagram, State Table
FINITE STATE MACHINES - II
Instructor: Alexander Stoytchev CprE 281: Digital Logic.
Sequential Logic Materials taken from: Digital Design and Computer Architecture by David and Sarah Harris & The Essentials of Computer Organization and.
Module 9.  Digital logic circuits can be categorized based on the nature of their inputs either: Combinational logic circuit It consists of logic gates.
George Mason University ECE 545 – Introduction to VHDL ECE 545 Lecture 5 Finite State Machines.
Chapter 8 -- Analysis and Synthesis of Synchronous Sequential Circuits.
Introduction to Sequential Logic Design Finite State-Machine Design.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 5 – Sequential Circuits Logic and Computer.
1 Lecture 22 Sequential Circuits Analysis. 2 Combinational vs. Sequential  Combinational Logic Circuit  Output is a function only of the present inputs.
ECE 331 – Digital System Design Circuit Design and Analysis (Lecture #9A) The slides included herein were taken from the materials accompanying Fundamentals.
Introduction to State Machine
DLD Lecture 26 Finite State Machine Design Procedure.
ANALYSIS OF SEQUENTIAL CIRCUITS by Dr. Amin Danial Asham.
DESIGN OF SEQUENTIAL CIRCUITS by Dr. Amin Danial Asham.
© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Digital Logic Design Dr. Oliver Faust.
1 State Reduction Goal: reduce the number of states while keeping the external input-output requirements unchanged. State reduction example: a: input 0.
Instructor: Alexander Stoytchev CprE 281: Digital Logic.
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.
Sequential Circuit: Design BIL- 223 Logic Circuit Design Ege University Department of Computer Engineering.
State Machine Design State Machine Design Digital Electronics
ECE 301 – Digital Electronics Brief introduction to Sequential Circuits and Latches (Lecture #14)
ECE 331 – Digital System Design Introduction to Sequential Circuits and Latches (Lecture #16)
Sequential Circuit Design 05 Acknowledgement: Most of the following slides are adapted from Prof. Kale's slides at UIUC, USA.
Digital Design: With an Introduction to the Verilog HDL, 5e M. Morris Mano Michael D. Ciletti Copyright ©2013 by Pearson Education, Inc. All rights reserved.
Week #7 Sequential Circuits (Part B)
ANALYSIS OF SEQUENTIAL CIRCUITS
Sequential logic design principles
ECE 301 – Digital Electronics
FINITE STATE MACHINES (FSMs)
Instructor: Alexander Stoytchev
Instructor: Alexander Stoytchev
Instructor: Alexander Stoytchev
Presentation transcript:

ECE 301 – Digital Electronics Sequential Logic Circuits: State Assignment And State Minimization (Lecture #20)

State Assignment Problem ECE 301 - Digital Electronics

State Assignment Problem Some state assignments are better than others. The state assignment influences the complexity of the state machine. The combinational logic required in the state machine design is dependent on the state assignment. Types of state assignment Binary encoding: 2N states → N Flip-Flops Gray-code encoding: 2N states → N Flip-Flops One-hot encoding: N states → N Flip-Flops ECE 301 - Digital Electronics

FSM: State Assignment Example: Design a FSM that detects a sequence of two or more consecutive ones on an input bit stream. The FSM should output a 1 when the sequence is detected, and a 0 otherwise. This is another example of a sequence detector. ECE 301 - Digital Electronics

ECE 301 - Digital Electronics FSM: State Assignment Input: 0 1 1 1 0 1 0 1 1 0 1 1 1 0 1 … Output: 0 0 1 1 0 0 0 0 1 0 0 1 1 0 0 … ECE 301 - Digital Electronics

ECE 301 - Digital Electronics FSM: State Assignment C z = 1  Reset B z = A w 1 S0 / 0 S1 / 0 S2 / 1 State Diagram ECE 301 - Digital Electronics

ECE 301 - Digital Electronics FSM: State Assignment Present State Next State Output w = 0 w = 1 S0 S1 S2 1 State Table ECE 301 - Digital Electronics

FSM: State Assignment #1 State Assigned Table Present State Next State Output w = 0 w = 1 QA QB QA+ QB+ z S0 S1 1 S2 d Using Binary Encoding for the State Assignment ECE 301 - Digital Electronics

FSM: State Assignment #1 State Assigned Table Present State Next State FF Inputs w = 0 w = 1 QA QB QA+ QB+ DA DB S0 1 S1 S2 d Characteristic Equation: D = Q+ ECE 301 - Digital Electronics

FSM: State Assignment #1 ECE 301 - Digital Electronics

FSM: State Assignment #1 K-Map and Boolean expression for z ECE 301 - Digital Electronics

FSM: State Assignment #1 DA = w.(QA + QB) z A z = QA w B DB = w.QA'.QB' ECE 301 - Digital Electronics

FSM: State Assignment #2 State Assigned Table Present State Next State Output w = 0 w = 1 QA QB QA+ QB+ z S0 S1 1 S2 d Using Gray-code Encoding for the State Assignment ECE 301 - Digital Electronics

FSM: State Assignment #2 State Assigned Table Present State Next State FF Inputs w = 0 w = 1 QA QB QA+ QB+ DA DB S0 1 S1 S2 d Characteristic Equation: D = Q+ ECE 301 - Digital Electronics

FSM: State Assignment #2 K-Map and Boolean expression for DA, DB and z ECE 301 - Digital Electronics

FSM: State Assignment #2 D Q Y 2 1 w Clock z y Resetn A B DA = w.QB DB = w z = QA ECE 301 - Digital Electronics

FSM: State Assignment #3 State Assigned Table Present State Next State w = 0 w = 1 QA QB QC QA+ QB+ QC+ S0 1 S1 S2 For each state only one flip-flop is set to 1. The remaining combination of state variables are not used. Using One-hot Encoding for the State Assignment Characteristic Equation: D = Q+ ECE 301 - Digital Electronics

FSM: State Assignment #3 ECE 301 - Digital Electronics

FSM: State Assignment #3 Resetn D Q Clock DA = w.QC' z z = QA A B C DB = w.QC DC = w.' w ECE 301 - Digital Electronics

ECE 301 - Digital Electronics State Minimization ECE 301 - Digital Electronics

FSM: State Minimization Definition: Two states Si and Sj are said to be equivalent if and only if for every possible input sequence, the same output sequence will be produced regardless of whether Si or Sj is the initial state. ECE 301 - Digital Electronics

FSM: State Minimization Definition: A partition consists of one or more blocks, where each block comprises a subset of states that may be equivalent, but the states in a given block are definitely not equivalent to the states in other blocks. ECE 301 - Digital Electronics

State Minimization: Partitioning State Minimization through Partitioning: Form an initial partition (P1) that includes all states. Form a second partition (P2) by separating the states into two blocks based upon their output values. Form a third partition (P3) by separating the states into blocks corresponding to the next state values. Continue partitioning until two successive partitions are the same (i.e. PN-1 = PN). All states in any one block are equivalent. Equivalent states can be combined into a single state. ECE 301 - Digital Electronics

State Minimization: Partitioning Example: Use partitioning to minimize the number of states in the following Finite State Machine (FSM). ECE 301 - Digital Electronics

State Minimization: Partitioning F / 0 E / 0 D / 1 B / 1 C / 0 A / 1 State Diagram ECE 301 - Digital Electronics

State Minimization: Partitioning Present Next state Output state w = 1 z A B C D F E G ECE 301 - Digital Electronics

State Minimization: Partitioning Initial Partition: P1 = (ABCDEFG) The initial partition contains all states in the state diagram / table. ECE 301 - Digital Electronics

State Minimization: Partitioning Separate states based on output value. P2 = (ABD)(CEFG) Present Next state Output state w = 1 z A B C D F E G ECE 301 - Digital Electronics

State Minimization: Partitioning Separate states based on next state values. P3 = (ABD)(CEG)(F) ABD CEFG 1 1 BDB CFG FFEF ECDG unique state ECE 301 - Digital Electronics

State Minimization: Partitioning Separate states based on next state values. P4 = (AD)(CEG)(F)(B) ABD CEG 1 1 BDB CFG FFF ECG unique states ECE 301 - Digital Electronics

State Minimization: Partitioning Separate states based on next state values. P5 = (AD)(CEG)(F)(B) AD CEG 1 1 BB CG FFF ECG same as previous partition (P4) ECE 301 - Digital Electronics

State Minimization: Partitioning Since P4 = P5, state minimization is complete. The equivalent states are: A = D C = E = G B F Thus, the FSM can be realized with just 4 states. ECE 301 - Digital Electronics

FSM: State Minimization Present Next state Output state w = 1 z A B C F Minimized State Table ECE 301 - Digital Electronics

FSM: State Minimization Minimized State Diagram ECE 301 - Digital Electronics

Acknowledgments The slides used in this lecture were taken, with permission, from those provided by McGraw-Hill for Fundamentals of Digital Logic with VHDL Design (3rd Edition). They are the property of and are copyrighted by McGraw-Hill Higher Education. ECE 301 - Digital Electronics