36
ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of Electrical and Computer Engineering Auburn University, Auburn, AL 36849 http://www.eng.auburn.edu/~vagrawal [email protected] Fall 2008, Dec 3 Fall 2008, Dec 3 ELEC2200-002 Lecture 13 ELEC2200-002 Lecture 13 1

ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Embed Size (px)

Citation preview

Page 1: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

ELEC 2200-002Digital Logic Circuits

Fall 2008Finite State Machines (FSM)

(Chapter 7-10)Vishwani D. Agrawal

James J. Danaher ProfessorDepartment of Electrical and Computer Engineering

Auburn University, Auburn, AL 36849http://www.eng.auburn.edu/~vagrawal

[email protected]

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 11

Page 2: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Two Types of Digital Circuits1. Output depends uniquely on inputs:

Contains only logic gates, AND, OR, . . . No feedback interconnects

2. Output depends on inputs and memory: Contains logic gates, latches and flip-flops May have feedback interconnects Contents of flip-flops define internal state; N flip-flops

provide 2N states; finite memory means finite states, hence the name “finite state machine (FSM)”.

Clocked memory – synchronous FSM No clock – asynchronous FSM

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 22

Page 3: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Textbook Organization

Chapter 6: Sequential devices – latches, flip-flops.

Chapter 7: Modular sequential logic – registers, shift registers, counters.

Chapter 8: Specification and analysis of FSM.

Chapter 9: Synchronous (clocked) FSM design.

Chapter 10: Asynchronous (pulse mode) FSM design.

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 33

Page 4: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Mealy and Moore FSMMealy machine: Output is a function of inputs and the present state.

Moore machine: Output is a function of the present state alone.

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 44

S0 S1

1/1

1/0

0/0 0/1

Mealy machine

S0/1 S1/0

1/1

1/0

0/1 0/0

Moore machine

G. H. Mealy, “A Method for Synthesizing Sequential Circuits,” BellSystems Tech. J., vol. 34, pp. 1045-1079, September 1955.E. F. Moore, “Gedanken-Experiments on Sequential Machines,” Annals ofMathematical Studies, no. 34, pp. 129-153 ,1956, Princeton Univ. Press, NJ.

Page 5: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Example 8.17: Robot Control

A robot moves in straight line, encounters obstacle and turns right or left until path is clear; on alternate obstacle encounters use right and left turn strategies.

Define input: One bitX = 0, no obstacle

X = 1, an obstacle encountered

Define outputs: Two bitsZ1, Z2 = 00 no turn

Z1, Z2 = 01 turn right by a predetermined angle

Z1, Z2 = 10 turn left by a predetermined angle

Z1, Z2 = 11 output not used

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 55

Page 6: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Example 8.17: Robot Control (Continued . . . 2)

Because turning strategy depends on the action for the previous obstacle, the robot must remember the past.

Therefore, we define internal memory states:State A = no obstacle detected, last turn was left

State B = obstacle detected, turning right

State C = no obstacle detected, last turn was right

State D = obstacle detected, turning left

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 66

Page 7: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Realization of FSMThe general hardware architecture of an FSM, known as Huffman model, consists of:

Flip-flops for storing the state.

Combinational logic to generate outputs and next state from inputs and present state.

Clock to synchronize state changes.

Initialization hardware to set the machine in a known state.

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 77

Combinational logic

Flip-flops

OutputsInputs

Presentstate

Nextstate

ClockClear

Page 8: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Example 8.17: Robot Control (Continued . . . 3)

Construct state diagram.

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 88

A

D C

B

A: no obstacle, last left turnB: obstacle, turn rightC: no obstacle, last right turnD: obstacle, turn left

Input: X = 0, no obstacleX = 1, obstacle

Outputs:Z1, Z2 = 00, no turnZ1, Z2 = 01, right turnZ1, Z2 = 10, left turn

0/001/01

0/000/00

0/00

1/01

1/101/10

X Z1 Z2

Page 9: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Example 8.17: Robot Control (Continued . . . 4)

Construct state table.

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 99

A

D C

B

0/001/01

0/000/00

0/00

1/01

1/101/10

X Z1 Z2

A/00

C/00

C/00

A/00

B/01

B/01

D/10

D/10

XPresent 0 1state

A

B

C

D

Nextstate

OutputsZ1, Z2

Page 10: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

XY1 Y2 0 1

00

01

11

10

Example 8.17: Robot Control (Continued . . . 5)

State assignment: Need log24 = 2 binary state variables for 4 to represent 4 states.

Let memory variables be Y1,Y2:

A: Y1, Y2 = 00; B: Y1, Y2 = 01; C: Y1, Y2 = 11, D: Y1, Y2 = 10

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 1010

A/00

C/00

C/00

A/00

B/01

B/01

D/10

D/10

XPresent 0 1state

A

B

C

D

00/00

11/00

11/00

00/00

01/01

01/01

10/10

10/10

Page 11: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

XY1 Y2 0 1

00

01

11

10

Example 8.17: Robot Control (Continued . . . 6)

Construct truth tables for outputs, Z1 and Z2, and excitation variables, Y1 and Y2.

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 1111

00/00

11/00

11/00

00/00

01/01

01/01

10/10

10/10

NextState, Y1*, Y2*

OutputsZ1, Z2

InputPresent

state Outputs Next state

X Y1 Y2 Z1 Z2 Y1* Y2*

0 0 0 0 0 0 0

0 0 1 0 0 1 1

0 1 0 0 0 0 0

0 1 1 0 0 1 1

1 0 0 0 1 0 1

1 0 1 0 1 0 1

1 1 0 1 0 1 0

1 1 1 1 0 1 0

Page 12: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Example 8.17: Robot Control (Continued . . . 7)

Synthesize logic functions, Z1, Z2, Y1*, Y2*.

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 1212

InputPresent

state Outputs Next state

X Y1 Y2 Z1 Z2 Y1* Y2*

0 0 0 0 0 0 0

0 0 1 0 0 1 1

0 1 0 0 0 0 0

0 1 1 0 0 1 1

1 0 0 0 1 0 1

1 0 1 0 1 0 1

1 1 0 1 0 1 0

1 1 1 1 0 1 0

Z1 = XY1Y2 + XY1 Y2 = XY1

Z2 = XY1Y2 + XY1 Y2 = XY1

Y1* = XY1 Y2 + . . .

Y2* = XY1 Y2 + . . .

Page 13: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Example 8.17: Robot Control (Continued . . . 8)

Synthesize logic functions, Z1, Z2, Y1*, Y2*.

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 1313

1 1

1 1X

Y1

Y2

1 1

1 1X

Y2

1 1X

Y1

Y2

1 1X

Y1

Y2

Y1

Z1

Z2

Y1*

Y2*

Page 14: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Example 8.17: Robot Control (Continued . . . 9)

Synthesize logic and connect memory elements (flip-flops).

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 1414

Y2

Y1

Y1

Y2

XZ1

Z2

Y1*

Y2*

CK

CLEAR

Combinational logic

Page 15: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Steps in FSM SynthesisExamine specified function to identify inputs, outputs and memory states.

Draw a state diagram.

Minimize states (see Section 9.1).

Assign binary codes to states (Section 9.4).

Derive truth tables for state variables and output functions.

Minimize multi-output logic circuit.

Connect flip-flops for state variables. Don’t forget to connect clock and clear signals.

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 1515

Page 16: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Architecture of an FSMThe Huffman model, containing:

Flip-flops for storing the state.

Combinational logic to generate outputs and next state from inputs and present state.

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 1616

Combinational logic

Flip-flops

OutputsInputs

Presentstate

Nextstate

ClockClear

D. A. Huffman, “The Synthesis of Sequential Switching Circuits,J. Franklin Inst., vol. 257, pp. 275-303, March-April 1954.

Page 17: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

State Minimization

An FSM contains flip-flops and combinational logic:

Number of flip-flops, Nff = log2 Ns , Ns = #states

Size of combinational logic depends on state assignment.

Examples:

1.Ns = 16, Nff = log2 16 = 4

2.Ns = 17, Nff = log2 17 = 4.0875 = 5

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 1717

Ceiling operator

Page 18: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Equivalent StatesTwo states of an FSM are equivalent (or indistinguishable) if for each input they produce the same output and their next states are identical.

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 1818

Si

Sj

Sm

Sn

1/0

1/0

0/0

0/0

Si,j

Sm

Sn

1/0

0/0

Si and Sj are equivalent andmerged into a single state.

Page 19: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Minimizing StatesExample: States A . . . I, Inputs I1, I2, Output, Z

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 1919

Present state

Next state, output (Z)

InputI1 I2

A D, 0 C, 1

B E, 1 A, 1

C H, 1 D, 1

D D, 0 C, 1

E B, 0 G, 1

F H, 1 D, 1

G A, 0 F, 1

H C, 0 A, 1

I G, 1 H, 1

A and D are equivalent

A and E produce same output.Can they be equivalent?

Page 20: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Implication Table Method

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 2020

A B C D E F G H

B

C

D

E

F

G

H

I

√BDCG

ADCF

CDAC

EHAD

EHAD

EGAH

Present state

Next state, output (Z)

InputI1 I2

A D, 0 C, 1

B E, 1 A, 1

C H, 1 D, 1

D D, 0 C, 1

E B, 0 G, 1

F H, 1 D, 1

G A, 0 F, 1

H C, 0 A, 1

I G, 1 H, 1

ADCF

CDAC

BCAG

BDCG

ACAF

GHDH

GHDH

ABFG

Page 21: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Implication Table Method (Cont.)

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 2121

A B C D E F G H

B

C

D

E

F

G

H

I

√BDCG

ADCF

CDAC

EHAD

EHAD

EGAH

ADCF

CDAC

BCAG

BDCG

ACAF

GHDH

GHDH

Equivalent states:

S1: A, D, G

S2: B, C, F

S3: E, H

S4: IABFG

Page 22: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Minimized State Table

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 2222

Present state

Next state, output (Z)

InputI1 I2

A D, 0 C, 1

B E, 1 A, 1

C H, 1 D, 1

D D, 0 C, 1

E B, 0 G, 1

F H, 1 D, 1

G A, 0 F, 1

H C, 0 A, 1

I G, 1 H, 1

Present state

Next state, output (Z)

InputI1 I2

S1 = (A, D, G) S1, 0 S2, 1

S2 = (B, C, F) S3, 1 S1, 1

S3 = (E, H) S2, 0 S1, 1

S4 = I S1, 1 S3, 1

Original Minimized

Number of flip-flops is reducedfrom 4 to 2.

Page 23: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

State AssignmentState assignment means assigning distinct binary patterns (codes) to states.

N flip-flops generate 2N codes.

While we are free to assign these codes to represent states in any way, the assignment affects the optimality of the combinational logic.

Rules based on heuristics are used to determine state assignment.

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 2323

Page 24: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Criteria for State AssignmentOptimize:

Logic gates, or

Delay, or

Power consumption, or

Testability, or

Any combination of the above

Up to 4 or 5 flip-flops: can try all assignments and select the best.

More flip-flops: Use an existing heuristic (one discussed next) or invent a new heuristic.

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 2424

Page 25: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

The Idea of AdjacencyInputs are A and B

State variables are Y1 and Y2

An output is F(A, B, Y1, Y2)

A next state function is G(A, B, Y1, Y2)

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 2525

1 1

1 1

A

B

Y1

Y2

Karnaugh map ofoutput function ornext state function

Larger clucsersproduce smaller logic function.

Clustering mintermsdiffer in one variable.

Page 26: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Size of an ImplementationNumber of product terms determine number of gates.

Number of literals in a product term determine number of gate inputs, which is proportional to number of transistors.

Hardware α (number of literals)

Examples of four minterm functions:F1 = ABCD +ABCD +ABCD +ABCD has 16 literals

F2 = ABC +ACD has 6 literals

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 2626

Page 27: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Rule 1States that have the same next state for a given input should be assigned logically adjacent codes.

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 2727

Combinational logic

Flip-flops

OutputsFixedInputs

Presentstate

Nextstate

ClockClear

Si

Sj

Sk

Page 28: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Rule 2States that are the next states of the same state under logically adjacent inputs, should be assigned logically adjacent codes.

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 2828

Combinational logic

Flip-flops

OutputsAdjacentInputs

Fixedpresent

state

Nextstate

ClockClear

SkSm

Si

I1I2

Page 29: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Example of State Assignment

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 2929

Present state

Next state, output (Z)

Input, X0 1

A C, 0 D, 0

B C, 0 A, 0

C B, 0 D, 0

D A, 1 B, 1

D B

A

C

0/0

0/0

0/0

1/01/0

1/0

1/1

0/1

A adj B(Rule 1)

A adj C(Rule 1)

B adj D(Rule 2)

Figure 9.19 of textbook C adj D(Rule 2)

A B

C D

0 1

0

1

Verify that BC andAD are not adjacent.

Page 30: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

A = 00, B = 01, C = 10, D = 11

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 3030

Present state

Y1, Y2

Next state, outputY1*Y2*, Z

Input, X0 1

A = 00 10, 0 11, 0

B = 01 10, 0 00, 0

C = 10 01,0 11, 0

D = 11 00, 1 01, 1

InputPresent

state Output Next state

X Y1 Y2 Z Y1* Y2*

0 0 0 0 1 0

0 0 1 0 1 0

0 1 0 0 0 1

0 1 1 1 0 0

1 0 0 0 1 1

1 0 1 0 0 0

1 1 0 0 1 1

1 1 1 1 1 0

Page 31: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Logic Minimization for Optimum State Assignment

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 3131

1 1

1 1 1X

Y1

Y2

1

1 1X

Y2

1

1X

Y1

Y2Y1

Z Y1*

Y2*

Result: 5 products, 10 literals.

Page 32: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Circuit for Optimum State Assignment

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 3232

Y2

Y1

Y1

Y2

X

Z

Y2*

Y1*

CK

CLEAR

Combinational logic

Page 33: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Using an Arbitrary State Assignment: A = 00, B = 01, C = 11, D = 10

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 3333

Present state

Y1, Y2

Next state, outputY1*Y2*, Z

Input, X0 1

A = 00 11, 0 10, 0

B = 01 11, 0 00, 0

C = 11 01,0 10, 0

D = 10 00, 1 01, 1

InputPresent

state Output Next state

X Y1 Y2 Z Y1* Y2*

0 0 0 0 1 1

0 0 1 0 1 1

0 1 0 1 0 0

0 1 1 0 0 1

1 0 0 0 1 0

1 0 1 0 0 0

1 1 0 1 0 1

1 1 1 0 1 0

Page 34: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Logic Minimization for Arbitrary State Assignment

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 3434

1 1

1 1X

Y1

Y2

1 1 1

1X

Y2

1

1X

Y1

Y2Y1

Z Y1*

Y2*

Result: 6 products, 14 literals.

Page 35: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Circuit for Arbitrary State Assignment

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 3535

Y2

Y1

Y1

Y2

X

Z

Y2*

Y1*

CK

CLEAR

Comb.logic

Page 36: ELEC 2200-002 Digital Logic Circuits Fall 2008 Finite State Machines (FSM) (Chapter 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of

Find Out More on FSMState minimization through partioning (Section 9.2.2).

Incompletely specified sequential circuits (Section 9.3).

Further rules for state assignment and use of implication graphs (Section 9.4).

Asynchronous or fundamental-mode sequential circuits (Chapter 10).

Fall 2008, Dec 3Fall 2008, Dec 3 ELEC2200-002 Lecture 13ELEC2200-002 Lecture 13 3636