Sequential Synchronous Circuit Analysis

Similar documents
Chapter 4 Part 2 Sequential Circuits

Digital Logic and Design (Course Code: EE222) Lecture 19: Sequential Circuits Contd..

Analysis and Design of Sequential Circuits: Examples

Synchronous Sequential Logic

Chapter 5 Synchronous Sequential Logic

Finite State Machine. By : Ali Mustafa

Overview of Chapter 4

Lecture (08) Synchronous Sequential Logic

Finite State Machine (FSM)

Synchronous Sequential Logic Part I

Synchronous Sequential Logic Part I. BME208 Logic Circuits Yalçın İŞLER

Sequential Circuit Design

ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN. Week 7 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering

Clocked Synchronous State-machine Analysis

The Design Procedure. Output Equation Determination - Derive output equations from the state table

ELE2120 Digital Circuits and Systems. Tutorial Note 9

Lecture 8: Sequential Networks and Finite State Machines

Lecture 3 Review on Digital Logic (Part 2)

King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department

EEE2135 Digital Logic Design

CprE 281: Digital Logic

or 0101 Machine

Synchronous Sequential Circuit Design. Digital Computer Design

EECS Components and Design Techniques for Digital Systems. FSMs 9/11/2007

FSM model for sequential circuits

Different encodings generate different circuits

FYSE420 DIGITAL ELECTRONICS

Chapter 7. Synchronous Sequential Networks. Excitation for

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

3. Complete the following table of equivalent values. Use binary numbers with a sign bit and 7 bits for the value

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

Chapter 5 Synchronous Sequential Logic

Mealy & Moore Machines

CPE100: Digital Logic Design I

Appendix B. Review of Digital Logic. Baback Izadi Division of Engineering Programs

11.1 As mentioned in Experiment 10, sequential logic circuits are a type of logic circuit where the output of

Digital Design. Sequential Logic

Lecture 10: Synchronous Sequential Circuits Design

Sequential Circuit Analysis

ECE380 Digital Logic. Synchronous sequential circuits

Philadelphia University Student Name: Student Number:

Fundamentals of Digital Design

UNIVERSITY OF BOLTON SCHOOL OF ENGINEERING BENG (HONS) ELECTRICAL & ELECTRONICS ENGINEERING EXAMINATION SEMESTER /2017

Analysis of Clocked Sequential Circuits

Chapter 4. Sequential Logic Circuits

Topic 8: Sequential Circuits

CE1911 LECTURE FSM DESIGN PRACTICE DAY 1

Lecture 14: State Tables, Diagrams, Latches, and Flip Flop

Ch 7. Finite State Machines. VII - Finite State Machines Contemporary Logic Design 1


Sequential logic and design

Models for representing sequential circuits

Chapter 15 SEQUENTIAL CIRCUITS ANALYSIS, STATE- MINIMIZATION, ASSIGNMENT AND CIRCUIT IMPLEMENTATION

DIGITAL LOGIC CIRCUITS

EE40 Lec 15. Logic Synthesis and Sequential Logic Circuits

Boolean Algebra and Digital Logic 2009, University of Colombo School of Computing

Let s now begin to formalize our analysis of sequential machines Powerful methods for designing machines for System control Pattern recognition Etc.

CSE140: Components and Design Techniques for Digital Systems. Midterm Information. Instructor: Mohsen Imani. Sources: TSR, Katz, Boriello & Vahid

Digital Logic: Boolean Algebra and Gates. Textbook Chapter 3

Synchronous Sequential Logic. Chapter 5

CSE 140: Components and Design Techniques for Digital Systems. Lecture 9: Sequential Networks: Implementation

Lecture 17: Designing Sequential Systems Using Flip Flops

Introduction EE 224: INTRODUCTION TO DIGITAL CIRCUITS & COMPUTER DESIGN. Lecture 6: Sequential Logic 3 Registers & Counters 5/9/2010

Philadelphia University Student Name: Student Number:

Synchronous Sequential Circuit Design

Sequential vs. Combinational

EGR224 F 18 Assignment #4

ENGG 1203 Tutorial _03 Laboratory 3 Build a ball counter. Lab 3. Lab 3 Gate Timing. Lab 3 Steps in designing a State Machine. Timing diagram of a DFF

Topic 8: Sequential Circuits. Bistable Devices. S-R Latches. Consider the following element. Readings : Patterson & Hennesy, Appendix B.4 - B.

ELCT201: DIGITAL LOGIC DESIGN

Digital Circuits and Systems

EECS150 - Digital Design Lecture 23 - FSMs & Counters

XI STANDARD [ COMPUTER SCIENCE ] 5 MARKS STUDY MATERIAL.

BER KELEY D AV IS IR VINE LOS AN GELES RIVERS IDE SAN D IEGO S AN FRANCISCO

Gates and Flip-Flops

Final Exam. ECE 25, Spring 2008 Thursday, June 12, Problem Points Score Total 90

(Boolean Algebra, combinational circuits) (Binary Codes and -arithmetics)

CPE100: Digital Logic Design I

Clocked Sequential Circuits UNIT 13 ANALYSIS OF CLOCKED SEQUENTIAL CIRCUITS. Analysis of Clocked Sequential Circuits. Signal Tracing and Timing Charts

Sequential Logic Circuits

Example: vending machine

Homework #4. CSE 140 Summer Session Instructor: Mohsen Imani. Only a subset of questions will be graded

Synchronous Sequential Circuit Design. Dr. Ehab A. H. AL-Hialy Page 1

Chapter 6 Introduction to state machines

Parity Checker Example. EECS150 - Digital Design Lecture 9 - Finite State Machines 1. Formal Design Process. Formal Design Process

ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN. Week 9 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering

Sequential Circuits Sequential circuits combinational circuits state gate delay

Lecture 13: Sequential Circuits, FSM

EECS150 - Digital Design Lecture 17 - Sequential Circuits 3 (Counters)

Computers also need devices capable of Storing data and information Performing mathematical operations on such data

ELEC Digital Logic Circuits Fall 2014 Sequential Circuits (Chapter 6) Finite State Machines (Ch. 7-10)

CSE140: Digital Logic Design Registers and Counters

Lab #10: Design of Finite State Machines

EE 209 Logic Cumulative Exam Name:

10/12/2016. An FSM with No Inputs Moves from State to State. ECE 120: Introduction to Computing. Eventually, the States Form a Loop

Chapter 7 Sequential Logic

Department of Electrical & Electronics EE-333 DIGITAL SYSTEMS

Asynchronous sequence circuits

ELE2120 Digital Circuits and Systems. Tutorial Note 10

Total time is: 1 setup, 2 AND, 3 XOR, 1 delay = (1*1) + (2*2) + (3*3) + (1*1) = 15ns

Transcription:

Sequential Synchronous Circuit Analysis General Model Current State at time (t) is stored in an array of flip-flops. Next State at time (t+1) is a Boolean function of State and Inputs. Outputs at time (t) are a Boolean function of State(t) and (Mealy) of Inputs (t). Storage Elements Inputs Combinational Logic Outputs State Next State CLK

Example 1: Analysis Input: x(t) Output: State: y(t) (A(t), B(t)) What is the Output Function? x Next State D C Q Q A A y(t) = x(t)(b(t) + A(t)) CP D C Q Q' B B What is the Next State Function? A(t+1) = A(t)x(t) + B(t)x(t) B(t+1) = A(t)x(t) Output y

State Table Characteristics State table a multiple variable table with the following four sections: Present State the values of the state variables for each allowed state. Input the input combinations allowed. Next-state the value of the state at time (t+1) based on the present state and the input. Output the value of the output as a function of the present state and (Mealy) the input. From the viewpoint of a truth table: the inputs are Input, Present State and the outputs are Output, Next State

Example 1: Alternate State Table A(t+1) = A(t) x(t) + B(t) x(t) B(t+1) = A(t) x(t) y(t) = x(t) (B(t) + A(t)) The time sequence of inputs, outputs, and flip-flop states can be enumerated in a state table (sometimes called transition table). A+ = A x + B x B+ = A x y = x (B + A)

Example 1 Where in time are inputs, outputs and states defined? A+ = A x + B x B+ = A x y = x (B + A) Reset Clock X Next A Next B A B Y

State Diagrams The sequential circuit function can be represented in graphical form as a state diagram with the following components: A circle with the state name in it for each state A directed arc from the Present State to the Next State for each state transition A label on each directed arc with the Input values which causes the state transition, and A label: On each circle with the output value produced: Moore type or On each directed arc with the output value produced: Mealy type.

Example 1: State Diagram Diagram gets confusing for large circuits For small circuits, usually easier to understand than the state table 0/0 A B 0 0 0/1 0/1 1 0 A+ = A x + B x B+ = A x y = x (B + A) 0/1 0 1 1 1 x=1/y=0 : means input = 1 output = 0 Mealy

Analysis with JK Flip-Flops J A = B K A = B x J B = x K B = Ax + Ax = A x 8 Moore

Analysis with JK Flip-Flop The circuit can be specified by the flip-flop input equations: J A = B K A = B x J B = x K B = Ax + Ax = A x 9

Analysis with JK Flip-Flops A+ = JA + KA B+ = JB + KB J A = B K A = B x J B = x K B = Ax + Ax = A x Substituting the values of J A and K A from the input equations, we obtain the state equation for A: A = BA + (Bx)A = AB + AB +Ax The state equation provides the bit values for the column under next state of A in the state table. Similarly, the state equation for flip-flop B can be derived from the characteristic equation by substituting the values of J B and K B : B = xb + (A x)b = Bx + ABx + ABx 10

Analysis with JK Flip-Flops The state diagram of the sequential circuit is: A = BA + (Bx)A = AB + AB +Ax B = xb + (A x)b = Bx + ABx + ABx 11 Moore

Analysis With T Flip-Flops Characteristic equation: Q = T Q T A = B x T B = x y = A B 12 Moore

Analysis With T Flip-Flops Consider the previous sequential circuit. It has two flip-flops A and B, one input x, and one output y. It can be described algebraically by two input equations and an output equation: T A = B x T B = x y = A B A=(Bx)A+(Bx)A =AB+Ax+ABx B=x B 13

Analysis With T Flip-Flops Characteristic equation: Q(t + 1) = T Q 00/0 : means state is 00 and output is 0 14

Sequential Circuit Analysis Initialization: reset to (0, 0, 0) Equations: D Q A Z A = B C C RQ B = B C + B C D Q B C = A C C RQ Z = A Clock Reset D Q C RQ C Moore

Example 2: State Table A = B C B = B C + B C C = A C Z = A A B C A B C Z (t) (t+1) 0 0 0 0 0 1 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 0 1 0 0 1 1 1 0 0 0 0 0 0 1 0 0 1 0 1 0 0 0 0 0 1 1 1 1

Example 2: State Diagram Reset ABC 000 111 100 001 011 010 101 What is the function of the circuit? Which states are used? 110 Moore

Analysis with D Flip-Flop The circuit we want to analyze is described by the input equation D A = A x y The D A symbol implies a D flip-flop with output A. The x and y variables are the inputs to the circuit. No output equations are given, so the output is implied to come from the output of the flip-flop. Moore

Analysis with D Flip-Flop The binary numbers under A x y are listed from 000 through 111. The next state values are obtained from the state equation D A = A x y The state diagram consists of two circles-one for each state

Equivalent State Definitions Two states are equivalent if their response for each possible input sequence is an identical output sequence. Alternatively, two states are equivalent if their outputs produced for each input symbol is identical and their next states for each input symbol are the same or equivalent. Two states that are not equivalent are distinguishable

Equivalent State Example For states S3 and S2, the output for input 0 is 1 and input 1 is 0, and the next state for input 0 is S0 and for input 1 is S2. states S3 and S2 are equivalent. 0/1 0 S0/0 S1 S2 0/1 0/1 S3

Equivalent State Example 0/1 0 S0/0 S1 0/1 0/1 0/0 S2 S3 Replacing S3 and S2 by a single state gives state diagram: S0 0/1 0/1 S1 Examining the new diagram, states S1 and S2 are equivalent since their outputs for input 0 is 1 and input 1 is 0, and their next state for input 0 is S0 and for input 1 is S2, 0/0 S2 Replacing S1 and S2 by a single state gives state diagram: S0 0/1 S1

Moore and Mealy Models Sequential Circuits or Sequential Machines are also called Finite State Machines (FSMs). Two formal models exist: Moore Model Named after E.F. Moore Outputs are a function ONLY of states Usually specified on the states. Mealy Model Named after G. H. Mealy Outputs are a function of inputs AND states Usually specified on the state transition arcs.

Moore and Mealy Example Diagrams & Tables Mealy Model State Diagram maps inputs and state to outputs Present State Next State x=0 x=1 Output x=0 x=1 0 0 1 0 0 1 0 1 0 1 Moore Model State Diagram maps states to outputs Present State Next State x=0 x=1 Output 0 0 1 0 1 0 2 0 2 0 2 1 x=0/o=0 x=0 x=1 x=1/o=0 0 1 0/0 x=0/o=0 x=0 x=0 2/1 x=1 x=1/o=1 x=1

Mixed Moore and Mealy Outputs In real designs, some outputs may be Moore type and other outputs may be Mealy type. Example: Figure can be modified to illustrate this State 00: Moore States 01, 10, and 11: Mealy 0 00/0 01 1 0/1 This simplifies output specification 0/1 0/1 10 11

State Reduction Example : next state state a a b c d e f f g f g a input 0 1 0 1 0 1 1 0 1 0 0 output 0 0 0 0 0 1 1 0 1 0 0 t 0 t 1 t 2 t 3 26

State Reduction We now proceed to reduce the number of states for this example. First, we need the state table; it is more convenient to apply procedures for state reduction using a table rather than a diagram. The state table of the circuit is listed in Table 5-6 and is obtained directly from the state diagram.

State Reduction States g and e are two such states: they both go to states a and f and have outputs of 0 and 1 for x=0 and x=1, respectively. Therefore, states g and e are equivalent and one of these states can be removed. The procedure of removing a state and replacing it by its equivalent is demonstrated in Table 5-7. The row with present g is removed and state g is replaced by state e each time it occurs in the next-state columns. 28

State Reduction Present state f now has next states e and f and outputs 0 and 1 for x=0 and x=1, respectively. The same next states and outputs appear in the row with present state d. Therefore, states f and d are equivalent and state f can be removed and replaced by d. The final reduced table is shown in Table 5-8. The state diagram for the reduced table consists of only five states. 29

State Reduction Example : state a a b c d e f f g f g a input 0 1 0 1 0 1 1 0 1 0 0 output 0 0 0 0 0 1 1 0 1 0 0 (e, g) e (d, f) d state a a b c d e d d e d e a output 0 0 0 0 0 1 1 0 1 0 0 30

State Assignment pseudo 31