Outline. Introduction to number systems: sign/magnitude, ones complement, twos complement Review of latches, flip flops, counters

Similar documents
Chapter 5 Synchronous Sequential Logic

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

ELCT201: DIGITAL LOGIC DESIGN

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

Digital Logic Design I

Analysis of Clocked Sequential Circuits

CHAPTER 4: Logic Circuits

Lecture 11: Synchronous Sequential Logic

Sequential Logic Circuits

Advanced Digital Logic Design EECS 303

EE292: Fundamentals of ECE

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

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

Universidad Carlos III de Madrid Digital Electronics Exercises

FPGA Implementation of Sequential Logic

CS8803: Advanced Digital Design for Embedded Hardware

Chapter 5: Synchronous Sequential Logic

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

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

MC9211 Computer Organization

Final Exam review: chapter 4 and 5. Supplement 3 and 4

Synchronous Sequential Logic

Synchronous Sequential Logic. Chapter 5

CS8803: Advanced Digital Design for Embedded Hardware

CHAPTER1: Digital Logic Circuits

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

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

1. (1pts) What is the Hamming distance between these two bit patterns: and ?

Chapter 5 Synchronous Sequential Logic

CHAPTER 4: Logic Circuits

Administrative issues. Sequential logic

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

Combinational / Sequential Logic

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

Chapter 5 Sequential Circuits

Synchronous Sequential Logic

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

Course Administration

Problems with D-Latch

Computer Architecture and Organization

2 Sequential Circuits

Synchronous Sequential Logic

Part II. Chapter2: Synchronous Sequential Logic

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

ECE 25 Introduction to Digital Design. Chapter 5 Sequential Circuits ( ) Part 1 Storage Elements and Sequential Circuit Analysis

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

L5 Sequential Circuit Design

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

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

Logic Design II (17.342) Spring Lecture Outline

ELCT201: DIGITAL LOGIC DESIGN

In this lecture we will work through a design example from problem statement to digital circuits.

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

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

Flip-Flops and Sequential Circuit Design

1. a) For the circuit shown in figure 1.1, draw a truth table showing the output Q for all combinations of inputs A, B and C. [4] Figure 1.

Introduction to Sequential Circuits

Chapter 11 State Machine Design

EECS 270 Final Exam Spring 2012

ELCT201: DIGITAL LOGIC DESIGN

ECE 301 Digital Electronics

Introduction to Computer Engineering EECS dickrp/eecs203/

`COEN 312 DIGITAL SYSTEMS DESIGN - LECTURE NOTES Concordia University

Chapter 5 Sequential Circuits

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

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

Chapter 3 Unit Combinational

More design examples, state assignment and reduction. Page 1

Department of CSIT. Class: B.SC Semester: II Year: 2013 Paper Title: Introduction to logics of Computer Max Marks: 30

TMEL53, DIGITALTEKNIK. INTRODUCTION TO SYNCHRONOUS CIRCUITS, FLIP-FLOPS and COUNTERS

St. MARTIN S ENGINEERING COLLEGE

Digital Circuit Engineering

CPS311 Lecture: Sequential Circuits

Synchronous sequential circuits

Digital Logic Design Sequential Circuits. Dr. Basem ElHalawany

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

Quiz #4 Thursday, April 25, 2002, 5:30-6:45 PM

Spring 2017 EE 3613: Computer Organization Chapter 5: The Processor: Datapath & Control - 1

FE REVIEW LOGIC. The AND gate. The OR gate A B AB A B A B 0 1 1

UNIT IV. Sequential circuit

We are here. Assembly Language. Processors Arithmetic Logic Units. Finite State Machines. Circuits Gates. Transistors

Unit 11. Latches and Flip-Flops

EECS150 - Digital Design Lecture 19 - Finite State Machines Revisited

Final Examination (Open Katz, Calculators OK, 3 hours)

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

Chapter 5. Introduction

P U Q Q*

MODEL QUESTIONS WITH ANSWERS THIRD SEMESTER B.TECH DEGREE EXAMINATION DECEMBER CS 203: Switching Theory and Logic Design. Time: 3 Hrs Marks: 100

Computer Organization

CHAPTER 6 COUNTERS & REGISTERS

ECE 341. Lecture # 2

Other Flip-Flops. Lecture 27 1

ELEN Electronique numérique

D Latch (Transparent Latch)

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

Previous Lecture Sequential Circuits. Slide Summary of contents covered in this lecture. (Refer Slide Time: 01:55)


CSC258: Computer Organization. Combinational Logic

Transcription:

Outline Last time: Introuction to number systems: sign/magnitue, ones complement, twos complement Review of latches, flip flops, counters This lecture: Review Tables & Transition Diagrams Implementation Using D Flip-Flops Machine Equivalence Incompletely Specifie Machines Assignment & Coing Schemes Design Example: Assign Coes to s Design Example: Implement Using D flip-flops Design Example: Implement Using T flip-flops CS5 Newton/Pister 8.. Clocke Synchronous Finite- Machines Example: Consier the stuent association coffee vening machine which sells coffee at 5 /cup. The machine will accept nickles, imes, an quarters, one at a time. The coffee release line will be set to true when 5 or more has been put into the machine an the machine will return the correct change. CS5 Newton/Pister 8..2 CS5 Sp 98 R. Newton & K. Pister

primary inputs (σ(t)) seconary inputs (q(t)) Definition: Mealy Machine Next- Logic Memory Output Logic l seconary outputs (q(t+)) primary outputs (z(t)) A sequential machine or Mealy Machine can be characterize by the quintuple: M = ( S, Q, Z,, l) where S = finite non-empty set of input symbols σ, σ2,..., σi Q = finite non-empty set of states q, q2,..., qn Z = finite non-empty set of output symbols z, z2,..., zm = next-state function, which maps Q S fi Q l = the output function, which maps Q S fi Z CS5 Newton/Pister 8..3 primary inputs (σ(t)) seconary inputs (q(t)) Definition: Moore Machine Next- Logic Memory Output Logic l seconary outputs (q(t+)) primary outputs (z(t)) A sequential machine is sai to be of the Moore type (Moore Machine ) if its output function is a function only of its states (i.e. l : Q fi Z) Every Mealy Machine can be converte to a Moore Machine an vice versa. If the Memory is clocke, the machines are Clocke, Synchronous Mealy an Moore machines respectively. CS5 Newton/Pister 8..4 CS5 Sp 98 R. Newton & K. Pister 2

Design Example: Inputs, Outputs an s Example: Consier the stuent association coffee vening machine which sells coffee at 5 /cup. The machine will accept nickles, imes, an quarters, one at a time. The coffee release line will be set to true when 5 or more has been put into the machine an the machine will return the correct change. Input S = { 5,, 25 } M = ( S, Q, Z,, l ) Sequential Machine Output Z = { D, R, R5, R, R5, R2 } Q = { q, q5, q } CS5 Newton/Pister 8..5 Next- an Output Functions /Output table ( symbol roppe for clarity): q\s 5 25 q q5,d q,d q,r q5 q,d q,r q,r5 q q,r q,r5 q,r2 Input q Next, Output q5 q q 5/D q5 CS5 Newton/Pister Means that upon the insertion of 5, when the machine is in state q, it will go to state q5, the coffee will not be release an no change ( ) will be returne. 8..6 CS5 Sp 98 R. Newton & K. Pister 3

How About a Moore Machine? Input S = { 5,, 25 } Next- Logic Memory Output Logic l Output Z = { D, R, R5, R, R5, R2 } Q = { q, q5, q, } CS5 Newton/Pister 8..7 Input /Output Transition Table an Transition Diagram: Moore Machine q\s 5 25 z q q5 q q25 D q5 q q5 q3 D q q5 q2 q35 D q5 q5 q q25 R q2 q5 q q25 R5 q25 q5 q q25 R q3 q5 q q25 R5 q35 q5 q q25 R2 q/d q5/r q5/d q/d q2/r5 q3/5 Next Output q25/r q35/2 CS5 Newton/Pister 8..8 CS5 Sp 98 R. Newton & K. Pister 4

Conversion to Mealy Machine Input q\s 5 25 q q5,d q,d q25,r q5 q q,d q5,r q3,r5 q5,r q2,r5 q35,r2 q5 q5,d q,d q25,r q2 q5,d q,d q25,r q25 q5,d q,d q25,r q3 q5,d q,d q25,r q35 q5,d q,d q25,r Next, Output CS5 Newton/Pister 8..9 Machine Equivalence Let qa an qb be two states of machines Ma an Mb respectively. s qa an qb are sai to be equivalent iff, starting with qa an qb, for any sequence of input symbols applie to the two machines, the output sequences are ientical. If qa an i are not ientical, they are sai to be istinguishable. Let Ma an Mb be two sequential machines. Ma an Mb are sai to be eqivalent iff for every state of Ma there exists at least one equivalent state in Mb, an vice versa. Similarly, if Ma an Mb are not equivalent we say they are istinguishable. Two states qa an qb are equivalent if: () qa an qb prouce the same output values (for Mealy machines, they must prouce the same outputs for all legal input conitions). (2) For each input combination, qa an qb must have the same next state, or equivalent next states. CS5 Newton/Pister 8.. CS5 Sp 98 R. Newton & K. Pister 5

Minimization of Completely-Specifie Machines Two states are sai to be k-equivalent if, when excite by an input sequence of k symbols, yiel ientical output sequences. The machine can be partitione by this k-equivalence relation into k-equivalence classes. For any n-state machine, there can be at most (n-) successive, istinct partitions. For any n-state machine, these equivalence classes contain one an only one unique state. To minimize a completely-specifie machine: () Fin the -equivalence classes, 2-equivalence classes, etc. until the k+ equivalence classes are the same as the K equivalence classes, then stop. (2) Combine all the states in the same class into a single state. If the machine has m equivalence classes, the machine has m states. CS5 Newton/Pister 8.. Design Example: Minimization q \ s 5 25 -partition q q5,d q,d q25,r I q5 q,d q5,r q3,r5 II q q5,r q2,r5 q35,r2 III q5 q5,d q,d q25,r I q2 q5,d q,d q25,r I q25 q5,d q,d q25,r I q3 q5,d q,d q25,r I q35 q5,d q,d q25,r I CS5 Newton/Pister 8..2 CS5 Sp 98 R. Newton & K. Pister 6

Design Example: Minimization -partition q \ s 5 25 2-partition q q5,d q,d q25,r q5 q5,d q,d q25,r I q2 q5,d q,d q25,r q25 q5,d q,d q25,r q3 q5,d q,d q25,r q35 q5,d q,d q25,r II q5 q,d q5,r q3,r5 III q q5,r q2,r5 q35,r2 CS5 Newton/Pister 8..3 Assignment q\s 5 25 q q5,d q,d q,r q5 q,d q,r q,r5 q q,r q,r5 q,r2 We must assign coes to symbolic values. Coes for input an output symbols are usually "given" so we must etermine coes for the state symbols. This process is calle state assignment or state coing. If binary storage elements are use we nee: Ølog2(N s )ø < N m < N s CS5 Newton/Pister 8..4 CS5 Sp 98 R. Newton & K. Pister 7

Design Example: Assignment Minimum-Length Coe For this example, 2 < N m < 3. If we choose N m = 2, an assign coes ranomly, then we have the state table: q\σ 5 25,D,D,R,D,R,R5,R,R5,R2??,????,????,?? unuse state CS5 Newton/Pister 8..5 Implementation Using D Flip-Flops Can use positive-ege-triggere D flop-flop irectly to implement storage element: Input S = { 5,, 25 } Next- Logic D Q CLK D Q Output Logic l Output Z = { D, R, R5, R, R5, R2 } CLK D Q CLK CLK Q = {,,} CS5 Newton/Pister 8..6 CS5 Sp 98 R. Newton & K. Pister 8

Design Example: Assignment One-Hot Coe For this example, 2 < N m < 3. If we choose N m = 3, an assign coes ranomly but where exactly one bit of the coe is "" for each vali state, then we have the state table: q\s 5 25,D,D,R,D,R,R5,R,R5,R2???,?????,?????,?????,?????,?????,?????,?????,?????,?????,?????,?????,?????,?????,?????,?? unuse states CS5 Newton/Pister 8..7 Steps to FSM Design Construct a state/output table from the wor escription (or a state graph). Minimization: Minimize the number of states (usually helps). Assignment: Coose a set of state variables an assign coes to name states. Substitute the state-variable combinations into the state/output table to create a transition/output table that shows the esire next-state variable combination for each state/input combination. Choose a flip-flop type (e.g. D, J-K, T) for the state memory. Construct an excitation table that shows the excitation values require to obtain the esire next-state value for each state/input combination. Derive excitation equations from excitation table. Derive output equations from transition/output table. Draw logic iagram that shows combinational next-state an output functions as well as flip-flops. CS5 Newton/Pister 8..8 CS5 Sp 98 R. Newton & K. Pister 9

Minimization Using an Implication Table Buil a compatibility checking table in a laer shape, as shown, an label each row q2, q3,... qn an column q, q2, qn- (no nee for iagonal). b q\s z a b c e f g h c f h e a e c a f b b h c g c e f g h a b c e f g CS5 Newton/Pister 8..9 Minimization Using am Implication Table: Summary of Approach Construct an implication table which contains a square for each pair of states. Label each row q2, q3,... qn an column q, q2, qn- (no nee for iagonal). Compare each each pair of rows in the state table. If the outputs associate with states i an j are ifferent, put an in square i-j to inicate that i j (trivial non-equivalence). If the outputs an the next states are the same, put a in square i-j to inicate i j (trivial equivalence). In all other squares, put state-pairs that must be equivalent if states i-j are to be equivalent (if the next states of i an j are m an n for some input σ, then m-n is an implie pair an goes in square i-j). Go through the non- an non- squares, one at a time. If square i-j contains an implie pair an square m-n contains an, then i j so put an in i-j as well. If any 's were ae in the last step, repeat it until no more 's are ae. For each square i-j which not containing an, i j. CS5 Newton/Pister 8..2 CS5 Sp 98 R. Newton & K. Pister

Implication Table Example: Pass q\s z a b c e f g h c f h e a e c a f b b h c g b c e f g h -f c-h c-e b- c-h a-f e-h b-f a- e-f b- c-e -g a-b e-h c-f a-b a-g c-f b-g a b c e f g CS5 Newton/Pister 8..2 Implication Table Example: Pass an Pass 2 b c -f c-h c-e a-f e-h b c -f c-h c-e a-f e-h e f g h b- c-h b-f a- e-f b- c-e -g a-b e-h c-f a-b a-g c-f b-g a b c e f g e f g h b- c-h b-f a- e-f b- c-e -g a-b e-h c-f a-b a-g c-f b-g a b c e f g CS5 Newton/Pister 8..22 CS5 Sp 98 R. Newton & K. Pister

Implication Table Example: Final Table q\s z a b c f g h c f h c a f b b h c g CS5 Newton/Pister 8..23 Steps to FSM Design Construct a state/output table from the wor escription (or a state graph). Minimization: Minimize the number of states (usually helps a bit). Assignment: Coose a set of state variables an assign coes to name states. Substitute the state-variable combinations into the state/output table to create a transition/output table (next-state table) that shows the esire next-state variable combination for each state/input combination. Construct next-state K-maps as neee. Choose a flip-flop type (e.g. D, J-K, T) for the state memory. Construct an excitation table that shows the flip-flop input excitation values require to obtain the esire next-state value for each state/input combination. Derive flip-flop excitation equations from excitation table. Derive output equations from transition/output table. Draw logic iagram that shows combinational next-state an output functions as well as flip-flops. CS5 Newton/Pister 8..24 CS5 Sp 98 R. Newton & K. Pister 2

Guielines for Assignment The iea of the following heuristics is to try to get the 's together (in the same implicant) on the flip-flop input maps. This metho oes not apply to all problems an even when it is applicable it oes not guarantee a minimum soultion. s which have the same next state, for a given input, shoul be given ajacent assignments ("fan-out oriente"). s which are the next states of the same state shoul be given ajacent assignments ("fan-in oriente"). Thir priority, to simplify the output function, states which have the same output for a given input shoul be given ajacent assignments (this will help put the 's together in the output K- maps; "output oriente"). / b a / / c / / e / f / / {a,b}; {,e}; {c,f} CS5 Newton/Pister 8..25 But How Do You Actually Do It? Write own all of the states that shoul be given ajacent assignments accoring to the criteria above ("assignment constraints", or "face embeing constraints.") Then, using a Karnaugh-map, try to satisfy as many of them as possible (or use a computer program which oes it: Kiss, Nova, Mustang, Jei). Some guielines to help are: Assign the starting state to the "" square on the map (picking a ifferent square oesn't help, since all squares have the same number of ajacencies an it's easier to reset to ""). Fanout-oriente guielines an ajacency conitions require more than once shoul be satisfie first. When guielines require that 3 or 4 states be ajacent, these states shoul be place within a group of 4 on the assignment map. If there are only a few outputs, the output guieline shoul be applie last. If there are lots of outputs an only a few states, then give more weight to the thir guieline. CS5 Newton/Pister 8..26 CS5 Sp 98 R. Newton & K. Pister 3

Assignment: Design Example q \ s q q, q2, q q3, q2, q2 q, q4, q3 q5, q2, q4 q, q6, q5 q5, q2, q6 q, q6, Consier the state table opposite: Guieline : {q,q2,q4,q6} since all have q as next-state with input. Similary {q,q,q3,q5}; {q3,q5}; {q4,q6}. Guieline 2: {q,q2} since nextstates of q. Similarly {q2,q3}; {q,q4}; {q2,q5} twice; {q,q6} twice. Guieline 3: woul not be worth using here. We alreay have a lot of constraints an their is only one output, mostly. CS5 Newton/Pister 8..27 Assignment: Design Example Given the ajacency constraints: : {q,q2,q4,q6}; {q,q,q3,q5}; {q3,q5}; {q4,q6}. 2: {q,q2}; {q2,q3}; {q,q4}; {q2,q5} twice; {q,q6} twice. Choose number of flip-flops: 6 states so nee at least 3 an no more than 6. Try with 3 -A, B, C say. Task is now to choose assignment of 3-bit (ABC) state coes to q-q6 so that as many of the above constraints as possible are satisfie, in the orer state earlier. AB A C B AB A C q q2 q q q6 q4 q5 q3 2 3 2 3 B q q3 q2 q4 6 7 6 7 q5 4 5 4 q6 5 CS5 Newton/Pister 8..28 CS5 Sp 98 R. Newton & K. Pister 4

Assignment: Design Example Assignments achieve by trial-anerror (question: woul we have been able to satisfy more constraints using 4 flip-flops instea of 3?). Top assignment leas to coes: q =, q =, q2 =, q3 =, q4 =, q5 =, q6 = Now we can construct the next-state maps for the assignment. {q,q2,q4,q6} sa BC q q q 3 * 4 q q5 q2 q5 q3 5 7 2 3 5 2 6 4 {q3,q5} * q2 q2 {q,q3,q5} q2 q4 q6 8 9 q6 {q4,q6} CS5 Newton/Pister 8..29 Steps to FSM Design Construct a state/output table from the wor escription (or a state graph). Minimization: Minimize the number of states (usually helps a bit). Assignment: Coose a set of state variables an assign coes to name states. Substitute the state-variable combinations into the state/output table to create a transition/output table (next-state table) that shows the esire next-state variable combination for each state/input combination. Construct next-state K-maps as neee. Choose a flip-flop type (e.g. D, J-K, T) for the state memory. Construct an excitation table that shows the flip-flop input excitation values require to obtain the esire next-state value for each state/input combination. Derive flip-flop excitation equations from excitation table. Derive output equations from transition/output table. Draw logic iagram that shows combinational next-state an output functions as well as flip-flops. CS5 Newton/Pister 8..3 CS5 Sp 98 R. Newton & K. Pister 5

Guielines for Determining Flip-Flop Input Equations from Next- Map Qn = Qn = Rules for forming input map from nextstate map (2) Type Input D T EN S-R S R J-K J K Qn+= Qn+= * * * Qn+= Qn+ = * * * Qn = half no change no change Qn = half no change complement no change replace s with *s replace s with *s complement no change fill in with *s fill in with *s complement Notes: () * = "on't care" (2) Always copy *s from next-state map to input map first (3) For S, Qn= half an R, Qn= half, fill remaining entries with s. CS5 Newton/Pister 8..3 Flip-Flop Input Equations From Next- Map: Example AB Qn 2 6 4 * 3 7 5 AB Qn 2 6 4 * 3 7 5 AB Qn 2 6 4 * 3 7 5 Qn+ next-state map D input map T input map AB AB Qn Qn S 2 6 4 * * 3 7 5 2 6 4 * * * * 3 7 5 J CS5 Newton/Pister AB Qn R * * 2 6 4 3 7 * 5 S-R input map AB Qn * * * 2 6 * 4 3 7 * 5 J-K input map K 8..32 CS5 Sp 98 R. Newton & K. Pister 6

Next- Maps: Design Example Choose flip-flop types: D flip-flops Recall assignments: q =, q =, q2 =, q3 =, q4 =, q5 =, q6 = Construct D input maps from next-state map, substituting state coes. A BC * * 4 2 8 5 3 9 3 7 5 2 6 4 A BC 5 3 3 * 4 7 * 2 8 5 9 2 6 4 sa BC 3 * 4 5 * 2 8 3 9 7 5 2 6 4 An+ Bn+ Cn+ CS5 Newton/Pister 8..33 Steps to FSM Design Construct a state/output table from the wor escription (or a state graph). Minimization: Minimize the number of states (usually helps a bit). Assignment: Coose a set of state variables an assign coes to name states. Substitute the state-variable combinations into the state/output table to create a transition/output table (next-state table) that shows the esire next-state variable combination for each state/input combination. Construct next-state K-maps as neee. Choose a flip-flop type (e.g. D, J-K, T) for the state memory. Construct an excitation table that shows the flip-flop input excitation values require to obtain the esire next-state value for each state/input combination. Derive flip-flop excitation equations from excitation table. Derive output equations from transition/output table. Draw logic iagram that shows combinational next-state an output functions as well as flip-flops. CS5 Newton/Pister 8..34 CS5 Sp 98 R. Newton & K. Pister 7

Next- Maps: Summary of Example Nee 6 gates an 3 gate-inputs to implement the machine using this assignment. Straight binary assignment (q=, q=, etc.) woul yiel gates an 39 gate-inputs. The approach gave goo results in this example, but that is not always the case. CS5 Newton/Pister 8..35 Derive Output Equations from Output Maps A BC 3 * 4 5 7 * 2 3 5 2 6 4 8 9 Output map from Transition/Output Table CS5 Newton/Pister 8..36 CS5 Sp 98 R. Newton & K. Pister 8

Steps to FSM Design Construct a state/output table from the wor escription (or a state graph). Minimization: Minimize the number of states (usually helps a bit). Assignment: Coose a set of state variables an assign coes to name states. Substitute the state-variable combinations into the state/output table to create a transition/output table (next-state table) that shows the esire next-state variable combination for each state/input combination. Construct next-state K-maps as neee. Choose a flip-flop type (e.g. D, J-K, T) for the state memory. Construct an excitation table that shows the flip-flop input excitation values require to obtain the esire next-state value for each state/input combination. Derive flip-flop excitation equations from excitation table. Derive output equations from transition/output table. Draw logic iagram that shows combinational next-state an output functions as well as flip-flops. CS5 Newton/Pister 8..37 CS5 Sp 98 R. Newton & K. Pister 9