SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs...

65
SEQUENTIAL LOGIC CIRCUIT DESIGN

Transcript of SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs...

Page 1: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

SEQUENTIAL LOGIC

CIRCUIT DESIGN

Page 2: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

22

Sequential CircuitsSequential Circuits

CombinationalCircuit

MemoryElements

Inputs Outputs

Asynchronous

Synchronous

CombinationalCircuit

Flip-flops

Inputs Outputs

Clock

Page 3: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

33

LatchesLatches

SR Latch

R

S

Q

Q

S R Q0 Q Q’

0 0 0

0

1

0

0

0 1 Q = Q0

Initial Value

Page 4: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

44

LatchesLatches

SR Latch

R

S

Q

Q

S R Q0 Q Q’

0 0 0 0 10 0 1

1

0

0

0

1 0 Q = Q0

Q = Q0

Page 5: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

55

LatchesLatches

SR Latch

R

S

Q

Q

S R Q0 Q Q’

0 0 0 0 10 0 1 1 00 1 0 0

0

1

1

0

1 Q = 0

Q = Q0

Page 6: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

66

LatchesLatches

SR Latch

R

S

Q

Q

S R Q0 Q Q’

0 0 0 0 10 0 1 1 00 1 0 0 10 1 11

0

1

0

0 1Q = 0

Q = Q0

Q = 0

Page 7: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

77

LatchesLatches

SR Latch

R

S

Q

Q

S R Q0 Q Q’

0 0 0 0 10 0 1 1 00 1 0 0 10 1 1 0 11 0 0

0

1

0

1

1 0

Q = 0

Q = Q0

Q = 1

Page 8: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

88

LatchesLatches

SR Latch

R

S

Q

Q

S R Q0 Q Q’

0 0 0 0 10 0 1 1 00 1 0 0 10 1 1 0 11 0 0 1 01 0 1

1

0

0

1

1 0

Q = 0

Q = Q0

Q = 1

Q = 1

Page 9: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

99

LatchesLatches

SR Latch

R

S

Q

Q

S R Q0 Q Q’

0 0 0 0 10 0 1 1 00 1 0 0 10 1 1 0 11 0 0 1 01 0 1 1 01 1 0

0

1

1

1

0 0

Q = 0

Q = Q0

Q = 1

Q = Q’

0

Page 10: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

1010

LatchesLatches

SR Latch

R

S

Q

Q

S R Q0 Q Q’

0 0 0 0 10 0 1 1 00 1 0 0 10 1 1 0 11 0 0 1 01 0 1 1 01 1 0 0 01 1 1

1

0

1

1

0 0

Q = 0

Q = Q0

Q = 1

Q = Q’

0

Q = Q’

Page 11: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

1111

LatchesLatches

SR Latch

R

S

Q

Q

S R Q

0 0 Q0

0 1 0

1 0 1

1 1 Q=Q’=0

No change

Reset

Set

Invalid

S

R

Q

Q

S R Q

0 0 Q=Q’=1

0 1 1

1 0 0

1 1 Q0

Invalid

Set

Reset

No change

Page 12: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

1212

LatchesLatches

SR Latch

R

S

Q

Q

S R Q

0 0 Q0

0 1 0

1 0 1

1 1 Q=Q’=0

No change

Reset

Set

Invalid

S’ R’ Q

0 0 Q=Q’=1

0 1 1

1 0 0

1 1 Q0

Invalid

Set

Reset

No change

S

R

Q

Q

Page 13: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

1313

Controlled LatchesControlled Latches

SR Latch with Control Input

C S R Q

0 x x Q0

1 0 0 Q0

1 0 1 0

1 1 0 1

1 1 1 Q=Q’

No change

No change

Reset

Set

Invalid

S

R

Q

Q

S

R

C

S

RQ

QS

R

C

Page 14: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

1414

Controlled LatchesControlled Latches

D Latch (D = Data)

C D Q

0 x Q0

1 0 0

1 1 1

No change

Reset

Set

S

R

Q

Q

D

C

C

Timing Diagram

D

Q

t

Output may change

Page 15: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

1515

Controlled LatchesControlled Latches

D Latch (D = Data)

C D Q

0 x Q0

1 0 0

1 1 1

No change

Reset

Set

C

Timing Diagram

D

Q

Output may change

S

R

Q

Q

D

C

Page 16: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

1616

Flip-FlopsFlip-Flops

Controlled latches are level-triggered

Flip-Flops are edge-triggered

C

CLK Positive Edge

CLK Negative Edge

Page 17: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

1717

Flip-FlopsFlip-Flops

Master-Slave D Flip-Flop

D Latch(Master)

D

C

QD Latch(Slave)

D

C

Q QD

CLK CLK

D

QMaster

QSlave

Looks like it is negative edge-triggered

Master Slave

Page 18: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

1818

Flip-FlopsFlip-Flops

Edge-Triggered D Flip-Flop

D

CLK

Q

Q

D Q

Q

D Q

Q

Positive Edge

Negative Edge

Page 19: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

1919

Flip-FlopsFlip-Flops

JK Flip-Flop

D Q

Q

Q

QCLK

J

K

J Q

QK

D = JQ’ + K’Q

Page 20: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

2020

Flip-FlopsFlip-Flops

T Flip-Flop

D = TQ’ + T’Q = T Q

J Q

QK

T D Q

Q

T

D = JQ’ + K’QT Q

Q

Page 21: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

2121

Flip-Flop Characteristic TablesFlip-Flop Characteristic Tables

D Q

Q

D Q(t+1)0 01 1

Reset

Set

J K Q(t+1)0 0 Q(t)0 1 01 0 11 1 Q’(t)

No change

Reset

Set

Toggle

J Q

QK

T Q

Q

T Q(t+1)0 Q(t)1 Q’(t)

No change

Toggle

Page 22: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

2222

Flip-Flop Characteristic EquationsFlip-Flop Characteristic Equations

D Q

Q

D Q(t+1)0 01 1

Q(t+1) = D

J K Q(t+1)0 0 Q(t)0 1 01 0 11 1 Q’(t)

Q(t+1) = JQ’ + K’Q

J Q

QK

T Q

Q

T Q(t+1)0 Q(t)1 Q’(t)

Q(t+1) = T Q

Page 23: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

2323

Flip-Flop Characteristic EquationsFlip-Flop Characteristic Equations

Analysis / Derivation

J Q

QK

J K Q(t) Q(t+1)0 0 0 00 0 1 10 1 00 1 11 0 01 0 11 1 01 1 1

No change

Reset

Set

Toggle

Page 24: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

2424

Flip-Flop Characteristic EquationsFlip-Flop Characteristic Equations

Analysis / Derivation

J Q

QK

J K Q(t) Q(t+1)0 0 0 00 0 1 10 1 0 00 1 1 01 0 01 0 11 1 01 1 1

No change

Reset

Set

Toggle

Page 25: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

2525

Flip-Flop Characteristic EquationsFlip-Flop Characteristic Equations

Analysis / Derivation

J Q

QK

J K Q(t) Q(t+1)0 0 0 00 0 1 10 1 0 00 1 1 01 0 0 11 0 1 11 1 01 1 1

No change

Reset

Set

Toggle

Page 26: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

2626

Flip-Flop Characteristic EquationsFlip-Flop Characteristic Equations

Analysis / Derivation

J Q

QK

J K Q(t) Q(t+1)0 0 0 00 0 1 10 1 0 00 1 1 01 0 0 11 0 1 11 1 0 11 1 1 0

No change

Reset

Set

Toggle

Page 27: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

2727

Flip-Flop Characteristic EquationsFlip-Flop Characteristic Equations

Analysis / Derivation

J Q

QK

J K Q(t) Q(t+1)0 0 0 00 0 1 10 1 0 00 1 1 01 0 0 11 0 1 11 1 0 11 1 1 0

K

0 1 0 0J 1 1 0 1

Q

Q(t+1) = JQ’ + K’Q

Page 28: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

2828

Flip-Flops with Direct InputsFlip-Flops with Direct Inputs

Asynchronous Reset

D Q

Q

R

Reset

R’ D CLK Q(t+1)

0 x x 0

Page 29: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

2929

Flip-Flops with Direct InputsFlip-Flops with Direct Inputs

Asynchronous Reset

D Q

Q

R

Reset

R’ D CLK Q(t+1)

0 x x 0

1 0 ↑ 0

1 1 ↑ 1

Page 30: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

3030

Flip-Flops with Direct InputsFlip-Flops with Direct Inputs

Asynchronous Preset and Clear

PR’ CLR’ D CLK Q(t+1)

1 0 x x 0D Q

Q

CLR

Reset

PR

Preset

Page 31: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

3131

Flip-Flops with Direct InputsFlip-Flops with Direct Inputs

Asynchronous Preset and Clear

PR’ CLR’ D CLK Q(t+1)

1 0 x x 0

0 1 x x 1

D Q

Q

CLR

Reset

PR

Preset

Page 32: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

3232

Flip-Flops with Direct InputsFlip-Flops with Direct Inputs

Asynchronous Preset and Clear

PR’ CLR’ D CLK Q(t+1)

1 0 x x 0

0 1 x x 1

1 1 0 ↑ 0

1 1 1 ↑ 1

D Q

Q

CLR

Reset

PR

Preset

Page 33: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

3333

Analysis of Clocked Sequential CircuitsAnalysis of Clocked Sequential Circuits

The State

● State = Values of all Flip-Flops

Example

A B = 0 0

D Q

Q

CLK

D Q

Q

A

B

y

x

Page 34: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

3434

Analysis of Clocked Sequential CircuitsAnalysis of Clocked Sequential Circuits

State Equations

D Q

Q

CLK

D Q

Q

A

B

y

x

A(t+1) = DA

= A(t) x(t)+B(t) x(t)

= A x + B x

B(t+1) = DB

= A’(t) x(t)

= A’ x

y(t) = [A(t)+ B(t)] x’(t)

= (A + B) x’

Page 35: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

3535

Analysis of Clocked Sequential CircuitsAnalysis of Clocked Sequential Circuits

State Table (Transition Table)

D Q

Q

CLK

D Q

Q

A

B

y

x

A(t+1) = A x + B x

B(t+1) = A’ x

y(t) = (A + B) x’

Present State

InputNext State

Output

A B x A B y0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

t+1 tt

0 0 00 1 00 0 11 1 00 0 11 0 00 0 11 0 0

Page 36: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

3636

Analysis of Clocked Sequential CircuitsAnalysis of Clocked Sequential Circuits

State Table (Transition Table)

D Q

Q

CLK

D Q

Q

A

B

y

x

A(t+1) = A x + B x

B(t+1) = A’ x

y(t) = (A + B) x’

Present State

Next State Output

x = 0 x = 1 x = 0 x = 1

A B A B A B y y0 0 0 0 0 1 0 00 1 0 0 1 1 1 01 0 0 0 1 0 1 01 1 0 0 1 0 1 0

t+1 tt

Page 37: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

3737

Analysis of Clocked Sequential CircuitsAnalysis of Clocked Sequential Circuits

State Diagram

D Q

Q

CLK

D Q

Q

A

B

y

x

0 0 1 0

0 1 1 1

0/0

0/1

1/0

1/0

1/0

1/0 0/10/1

AB input/output

Present State

Next State Output

x = 0 x = 1 x = 0 x = 1

A B A B A B y y

0 0 0 0 0 1 0 0

0 1 0 0 1 1 1 0

1 0 0 0 1 0 1 0

1 1 0 0 1 0 1 0

Page 38: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

3838

Analysis of Clocked Sequential CircuitsAnalysis of Clocked Sequential Circuits

D Flip-Flops

Example: D Q

Q

x

CLK

yA

Present State

InputNext State

A x y A0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

01101001

0 100,11 00,11

01,10

01,10

A(t+1) = DA = A x y

Page 39: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

3939

Analysis of Clocked Sequential CircuitsAnalysis of Clocked Sequential Circuits

JK Flip-Flops

Example:

J Q

QK

CLK

J Q

QK

x

A

B

JA = B KA = B x’

JB = x’ KB = A x

A(t+1) = JA Q’A + K’A QA

= A’B + AB’ + AxB(t+1) = JB Q’B + K’B QB

= B’x’ + ABx + A’Bx’

Present State

I/PNext State

Flip-FlopInputs

A B x A B JA KA JB KB

0 0 0

0 0 1

0 1 0

0 1 1

1 0 0

1 0 1

1 1 0

1 1 1

0 0 1 0

0 0 0 1

1 1 1 0

1 0 0 1

0 0 1 1

0 0 0 0

1 1 1 1

1 0 0 0

0 1

0 0

1 1

1 0

1 1

1 0

0 0

1 1

Page 40: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

4040

Analysis of Clocked Sequential CircuitsAnalysis of Clocked Sequential Circuits

JK Flip-Flops

Example:

J Q

QK

CLK

J Q

QK

x

A

BPresent State

I/PNext State

Flip-FlopInputs

A B x A B JA KA JB KB

0 0 0

0 0 1

0 1 0

0 1 1

1 0 0

1 0 1

1 1 0

1 1 1

0 0 1 0

0 0 0 1

1 1 1 0

1 0 0 1

0 0 1 1

0 0 0 0

1 1 1 1

1 0 0 0

0 1

0 0

1 1

1 0

1 1

1 0

0 0

1 1

0 0 1 1

0 1 1 0

1 0 1

0

1

00

1

Page 41: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

4141

Analysis of Clocked Sequential CircuitsAnalysis of Clocked Sequential Circuits

T Flip-Flops

Example:

TA = B x TB = xy = A B

A(t+1) = TA Q’A + T’A QA

= AB’ + Ax’ + A’BxB(t+1) = TB Q’B + T’B QB

= x B

A

B

T Q

QR

T Q

QR

CLK Reset

xy

Present State

I/PNext State

F.FInputs

O/P

A B x A B TA TB y

0 0 0

0 0 1

0 1 0

0 1 1

1 0 0

1 0 1

1 1 0

1 1 1

0 0

0 1

0 0

1 1

0 0

0 1

0 0

1 1

0 0

0 1

0 1

1 0

1 0

1 1

1 1

0 0

0

0

0

0

0

0

1

1

Page 42: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

4242

Analysis of Clocked Sequential CircuitsAnalysis of Clocked Sequential Circuits

T Flip-Flops

Example:

A

B

T Q

QR

T Q

QR

CLK Reset

xy

Present State

I/PNext State

F.FInputs

O/P

A B x A B TA TB y

0 0 0

0 0 1

0 1 0

0 1 1

1 0 0

1 0 1

1 1 0

1 1 1

0 0

0 1

0 0

1 1

0 0

0 1

0 0

1 1

0 0

0 1

0 1

1 0

1 0

1 1

1 1

0 0

0

0

0

0

0

0

1

1

0 0 0 1

1 1 1 0

0/01/0

0/0

1/0

1/0

1/1

0/00/1

Page 43: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

4343

Mealy and Moore ModelsMealy and Moore Models

The Mealy model: the outputs are functions of both the present state and inputs (Fig. 5-15).

● The outputs may change if the inputs change during the clock pulse period.

♦ The outputs may have momentary false values unless the inputs are synchronized with the clocks.

The Moore model: the outputs are functions of the present state only (Fig. 5-20).

● The outputs are synchronous with the clocks.

Page 44: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

4444

Mealy and Moore ModelsMealy and Moore Models

Fig. 5.21 Block diagram of Mealy and Moore state machine

Page 45: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

4545

Mealy and Moore ModelsMealy and Moore Models

Present State

I/PNext State

O/P

A B x A B y0 0 0 0 0 00 0 1 0 1 00 1 0 0 0 10 1 1 1 1 01 0 0 0 0 11 0 1 1 0 01 1 0 0 0 11 1 1 1 0 0

MealyMealy

For the same statestate,the outputoutput changes with the inputinput

Present State

I/PNext State

O/P

A B x A B y0 0 0 0 0 00 0 1 0 1 00 1 0 0 1 00 1 1 1 0 01 0 0 1 0 01 0 1 1 1 01 1 0 1 1 11 1 1 0 0 1

MooreMoore

For the same statestate,the outputoutput does not change with the inputinput

Page 46: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

4646

Moore State DiagramMoore State Diagram

State / Output

0 0 / 0 0 1 / 0

1 1 / 1 1 0 / 0

0

1

1

1

00

01

Page 47: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

4747

State Reduction and AssignmentState Reduction and Assignment

State Reduction Reductions on the number of flip-flops and the number of gates.

● A reduction in the number of states may result in a reduction in the number of flip-flops.

● An example state diagram showing in Fig. 5.25.

Fig. 5.25 State diagram

Page 48: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

4848

State ReductionState Reduction

● Only the input-output sequences are important.

● Two circuits are equivalent

♦ Have identical outputs for all input sequences;

♦ The number of states is not important.

Fig. 5.25 State diagram

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

Page 49: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

4949

Equivalent states

● Two states are said to be equivalent

♦ For each member of the set of inputs, they give exactly the same output and send the circuit to the same state or to an equivalent state.

♦ One of them can be removed.

Page 50: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

5050

Reducing the state table

● e = g (remove g);

● d = f (remove f);

Page 51: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

5151

● The reduced finite state machine

State:a a b c d e d d e d e 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

Page 52: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

5252

● The unused states are treated as don't-care condition fewer combinational gates.

Fig. 5.26 Reduced State diagram

Page 53: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

5353

State AssignmentState Assignment

State Assignment

To minimize the cost of the combinational circuits.

● Three possible binary state assignments. (m states need n-bits, where 2n > m)

Page 54: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

5454

● Any binary number assignment is satisfactory as long as each state is assigned a unique number.

● Use binary assignment 1.

Page 55: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

5555

Design Procedure Design Procedure

Design Procedure for sequential circuit

● The word description of the circuit behavior to get a state diagram;

● State reduction if necessary;

● Assign binary values to the states;

● Obtain the binary-coded state table;

● Choose the type of flip-flops;

● Derive the simplified flip-flop input equations and output equations;

● Draw the logic diagram;

Page 56: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

5656

Design of Clocked Sequential CircuitsDesign of Clocked Sequential Circuits

Example:

Detect 3 or more consecutive 1’s

S0 / 0 S1 / 0

S3 / 1 S2 / 0

0

1

1

0 0

1

0

1

State A BS0 0 0

S1 0 1S2 1 0

S3 1 1

Page 57: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

5757

Design of Clocked Sequential CircuitsDesign of Clocked Sequential Circuits

Example:

Detect 3 or more consecutive 1’s

Present State

InputNext State

Output

A B x A B y0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

0 0 00 1 00 0 01 0 00 0 01 1 00 0 11 1 1

S0 / 0 S1 / 0

S3 / 1 S2 / 0

0

1

1

0 0

1

0

1

Page 58: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

5858

Design of Clocked Sequential CircuitsDesign of Clocked Sequential Circuits

Example:

Detect 3 or more consecutive 1’s

Present State

InputNext State

Output

A B x A B y0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

0 0 00 1 00 0 01 0 00 0 01 1 00 0 11 1 1

A(t+1) = DA (A, B, x)

= ∑ (3, 5, 7)

B(t+1) = DB (A, B, x)

= ∑ (1, 5, 7)

y (A, B, x) = ∑ (6, 7)

Synthesis using DD Flip-Flops

Page 59: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

5959

Design of Clocked Sequential Circuits with Design of Clocked Sequential Circuits with DD F.F. F.F.

Example:

Detect 3 or more consecutive 1’s

DA (A, B, x) = ∑ (3, 5, 7)

= A x + B x

DB (A, B, x) = ∑ (1, 5, 7)

= A x + B’ x

y (A, B, x) = ∑ (6, 7)

= A B

Synthesis using DD Flip-Flops

B

0 0 1 0

A 0 1 1 0x B

0 1 0 0

A 0 1 1 0xB

0 0 0 0

A 0 0 1 1x

Page 60: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

6060

Design of Clocked Sequential Circuits with Design of Clocked Sequential Circuits with DD F.F. F.F.

Example:

Detect 3 or more consecutive 1’s

DA = A x + B x

DB = A x + B’ x

y = A B

Synthesis using DD Flip-Flops

D Q

Q

A

CLK

x

BD Q

Q

y

Page 61: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

6161

Flip-Flop Excitation TablesFlip-Flop Excitation Tables

Present State

Next State

F.F.Input

Q(t) Q(t+1) D0 00 11 01 1

Present State

Next State

F.F.Input

Q(t) Q(t+1) J K0 00 11 01 1

0 0 (No change)0 1 (Reset)

0 x

1 x

x 1

x 0

0

1

0

1

1 0 (Set)1 1 (Toggle)0 1 (Reset)1 1 (Toggle)0 0 (No change)1 0 (Set)

Q(t) Q(t+1) T0 00 11 01 1

0

1

1

0

Page 62: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

6262

Design of Clocked Sequential Circuits with Design of Clocked Sequential Circuits with JKJK F.F. F.F.

Example:

Detect 3 or more consecutive 1’s

Present State

InputNext State

Flip-FlopInputs

A B x A B JA KA JB KB

0 0 0 0 00 0 1 0 10 1 0 0 00 1 1 1 01 0 0 0 01 0 1 1 11 1 0 0 01 1 1 1 1

0 x0 x0 x1 xx 1x 0x 1x 0

JA (A, B, x) = ∑ (3)dJA (A, B, x) = ∑ (4,5,6,7)KA (A, B, x) = ∑ (4, 6)dKA (A, B, x) = ∑ (0,1,2,3)JB (A, B, x) = ∑ (1, 5)dJB (A, B, x) = ∑ (2,3,6,7)KB (A, B, x) = ∑ (2, 3, 6)dKB (A, B, x) = ∑ (0,1,4,5)

Synthesis using JKJK F.F.

0 x1 xx 1x 10 x1 xx 1x 0

Page 63: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

6363

Design of Clocked Sequential Circuits with Design of Clocked Sequential Circuits with JKJK F.F. F.F.

Example:

Detect 3 or more consecutive 1’s

JA = B x KA = x’

JB = x KB = A’ + x’

Synthesis using JKJK Flip-Flops

B

0 0 1 0

A x x x xx

B

x x x x

A 1 0 0 1x

B

0 1 x x

A 0 1 x xx

B

x x 1 1

A x x 0 1x

CLK

J Q

QK

x

A

B

J Q

QK y

Page 64: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

6464

Design of Clocked Sequential Circuits with Design of Clocked Sequential Circuits with TT F.F. F.F.

Example:

Detect 3 or more consecutive 1’s

Present State

InputNext State

F.F.Input

A B x A B TA TB

0 0 0 0 00 0 1 0 10 1 0 0 00 1 1 1 01 0 0 0 01 0 1 1 11 1 0 0 01 1 1 1 1

00011010

Synthesis using TT Flip-Flops01110110

TA (A, B, x) = ∑ (3, 4, 6)TB (A, B, x) = ∑ (1, 2, 3, 5, 6)

Page 65: SEQUENTIAL LOGIC CIRCUIT DESIGN. 1 Sequential Circuits Combinational Circuit Memory Elements Inputs Outputs  Asynchronous  Synchronous Combinational.

6565

Design of Clocked Sequential Circuits with Design of Clocked Sequential Circuits with TT F.F. F.F.

Example:

Detect 3 or more consecutive 1’s

TA = A x’ + A’ B x

TB = A’ B + B x

Synthesis using TT Flip-Flops

B

0 0 1 0

A 1 0 0 1x

B

0 1 1 1

A 0 1 0 1x

A

B

y

T Q

Q

x

CLK

T Q

Q