You are on page 1of 32

Unit 14 Problem Solutions

14.4

Typical input and output sequences:

X = 0 1 0 0 0 0 0 1 0 1 0 1 1 ...
Z = (0) 0 0 0 0 0 0 0 1 1 1 ... (output remains 1)
X = 1 1 1 1 1 0 1 1 1 1 1 1 0 0 0 1 0 1 ...
Z = (0) 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 ... (output remains 1)
X = 0 1 0 1 0 1 ...
Z = (0) 0 0 0 1 1 1 ... (output remains 1)
See FLD p. 656 for state graph.

14.5

Name
S0
S1
S2
S3
S4
S5
S6
S7
S8

Meaning
Reset
One 0, no 1s
Two 0s, no 1s
Two 0s and one 1
Two 0s and Two 1s
One 1, no 0s
Two 1s, no 0s
Two 1s and one 0
One 0 and one 1

Typical input and output sequence:

X = 0 0 1 0 1 0 1 1 0 0 1 0 1 0 0 ...
Z1 = 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 ... (output remains 0 after 100 received)
Z2 = 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 ... (at this point, the sequence 01 has occurred, so Z1 = 0 from now on)
The graph needs two distinct parts. The first checks for 010 and 100. If 100 is received, we proceed to the second
part of the graph, which checks only for 100. The two parts are joined by a one-way arc, so once in the second part it
is impossible to go back to the first.
See FLD p. 656 for state table and graph.
The state meanings are given in the following table:
Name
S0
S1
S2
S3
S4
S5
S6
S7

Meaning
Reset
Last input was 0, 100 has never occurred
Last input was 01, 100 has never occurred
Last input was 1, 100 has never occurred
Last input was 10, 100 has never occurred
Last input was 0, 100 has occurred at least once
Last input was 1, 100 has occurred at least once
Last input was10, 100 has occurred at least once

99

14.6

This should be solved in the same way as Example 3 on FLD p. 406. Assign a state to each possible input (00, 01, 11,
10) with an output of 0, and another state to each input with an output of 1. This gives eight states.
See FLD p. 657 for the state table.
State
S0
S1
S2
S3

State
S4
S5
S6

Z=0
Last input was 00
Last input was 01
Last input was 11

S7

Last input was 10

Z=1
Last input was 00
Last input was 01
Last input was 11
Last input was 10

Each input takes you to the state defined by that input (e.g. an input of 01 takes you to either S1 or S5). The only thing
in question is whether the output is 0 or 1. Determine the output by checking whether the last two inputs correspond
to the three input sequences.
Alternate Solution: Notice that when Z = 0, causes the output to become 0 is the same as remaining constant, and
causes the output to become 1 is the same as toggling the output. The situation is similar when Z = 1. So we can
use only four states, as follows:
State
Meaning
S0 Z= 0 and last input was either 00 or 01
S1 Z = 0 and last input was either 10 or 11
S2 Z = 1 and last input was either 00 or 10
S3

State
S0
S1
S2
S3

Z = 1 and last input was either 01 or 11

Next State
X1X2 = 00 01 11
S0 S0 S1
S2 S0 S1
S2 S3 S3
S0 S3 S3

10
S1
S1
S2
S2

Note: The state table with 8 states reduces to this 4-state table using methods in Unit 15.
00,01

10,11

S0
0

00,10

00
01,11
10

10,11

01

00

S2

S1

S3

01,11

14.7 (a) Typical input and output sequence:

X = 0 0 1 0 0 1 1 0 0 0 1 1 0 1 0 0 1 ...
Z = 1 1 0 0 0 0 1 1 1 1 0 0 0 1 1 1 0 ...
See FLD p. 657 for state graph.
State
Meaning
S0 Number of 1s is divisible by three
S1 Number of 1s is one more than divisible by 3
S2 Number of 1s is two more than divisible by 3

100

Z
0
0
1
1

14.7 (b) Typical input and output sequence:

X = 0 0 0 0 1 1 1 1 0 0 0 1 1 0 1 1 1 1 ...
Z = 0 1 0 1 0 0 1 0 0 0 0 0 0 1 0 0 1 0 ...
See FLD p. 657 for state graph.
State
Meaning
S0 Number of 1s is divisible by three, no 0s
S1 Number of 1s is one more than divisible by 3, no 0s
S2 Number of 1s is two more than divisible by 3, no 0s
S3
S4
S5
S6
S7
S8

Number of 1s is divisible by three, number of 0s is odd

Number of 1s is one more than divisible by 3, number of 0s is odd
Number of 1s is two more than divisible by 3, number of 0s is odd
Number of 1s is divisible by three, number of 0s is even and < 0
Number of 1s is one more than divisible by 3, number of 0s is even and < 0
Number of 1s is two more than divisible by 3, number of 0s is even and < 0

14.8 (a) Typical input and output sequence:

X1 = 1 0 0 1 0 0 1 1 1 0 ...
X2 = 1 0 0 0 1 1 0 0 1 1 ...
Z1 = 0*0 0 1 0 0 1 0 1 0 ...
Z2 = 0*1 0 0 1 0 0 0 0 1 ...
*
Regardless of any value of N.
See FLD p. 657 for state table.

00

00

00

01
01

00

00

S1

01

01
11

01

11

See FLD p. 658 for state table.

10
11

10

11
01

00

S4

01

10

01
10

State
Meaning
S0 Reset state / current output is = 00
S1 Previous input was 00 / current output is = 00
S2 Previous input was 00 / current output is = 01
S3
S4
S5
S6
S7
S8
S9

S10

101

00

S3

01

00

Previous input was 10

00

00

10
00

14.8 (b) Similar to part (a), but we need a separate state for each
possible output and previous input.

10

10

01

S2

10

11

10
10

01

State
Meaning
S0 Reset
S1 Previous input was 00
S2 Previous input was 01
S4

00

00

10

S3

S0

Previous input was 01 / current output is = 10

Previous input was 01 / current output is = 00
Previous input was 01 / current output is = 01
Previous input was 10 / current output is = 10
Previous input was 10 / current output is = 00
Previous input was 10 / current output is = 01
Previous input was 11 / current output is = 10
Previous input was 11 / current output is = 00

14.9 (a)

14.9 (b)

See FLD p. 658 for state table.

State
Meaning
S0 Previous output bit was 0
S1 Previous output bit was 1

S0

S1

State
Meaning
Output bit is 0
S0
Output bit is 1
S1

S0

1
1

S1
1

See FLD p. 658 for state table.

0

14.9 (c) A false output occurs in NRZI just before the input
NRZ goes from 1 to 0.

14.9 (d) Notice that the Moore output is delayed to the next
clock cycle.

14.10

14.11

14.12

Plot 0s horizontally. Plot 1s vertically. Receiving

a 0 takes us one state to the right. Receiving a 1
takes us one state down. The output is a 1 only in
the three 0s or more, one 1 or more state:
S0
0

S2
0

S3
0

S1
0

S4
0

S1

S7
1

0
1

1
00

S6
0
00

S0

0
10
1
00

S7

1
00

0
00

0
00

S1

S2

Button pressed. First full clock cycle with

Z = 1.
Second full clock cycle with Z = 1.

S4

S3

S5

0, 1

1
00

S2

* When this point in the graph is reached,

011 has been received, and we are only
looking for 011 to occur again.

S3
0
00

S4

1*
01
0
00

0
00

0
00

1
00

S5

1
01

State
Meaning
S0 Reset
S1 Previous input was 0 / 011 has not occurred
S2 Previous input was 01 / 011 has not occurred
S3

S5

S4

S6

S7

Meaning

14.13

00

State
S0 Reset

S5
0

S6
0

Previous input was 10 / 011 has not occurred

102

Next State
State X = 0 X = 1
S0
S1
S6
S1
S1
S2
S2
S7
S3
S3
S4
S3
S4
S4
S5
S5
S4
S3
S6
S7
S6
S7
S1
S2

Z1Z2
X=0 X=1
00
00
00
00
00
01
00
00
00
00
00
01
00
00
10
00

14.14

10,11

S0
0

11
10,11

00,01
00,01

S1
0

01

10
1

01,11

00
01,11

11
S0
S0
S3
S3

Z
0
0
1
1

State
Meaning
S0 Z = 0, last input was 10 or 11
S1 Z = 0, last input was 00 or 01
S2 Z = 1, last input was 00 or 10

10

S2

00,10

Next State
X1X2 = 00 01 10
S1 S1 S0
S1 S1 S2
S2 S3 S2
S2 S3 S0

State
S0
S1
S2
S3

S3

S3

Alternate solution has 8 states, similar to problem 14.6:

State
Meaning
S0 Z = 0, last input was 10 (reset)
S1 Z = 0, last input was 00
S2 Z = 0, last input was 01
S3

S5

S7

S4

S6

14.15 (a) We need four states to describe the

1s received, as there are four possible
remainders when dividing by four. An
input of 1 takes us to the next state in
cyclic fashion. An input of zero leaves
us in the same state.

Next State
X1X2 = 00 01 10
S1 S2 S0
S1 S2 S4
S1 S2 S4
S1 S2 S0
S5 S6 S4
S5 S6 S4
S5 S6 S0
S5 S6 S0

State
S0
S1
S2
S3
S4
S5
S6
S7
0

1
1

S0

S1

Z
0
0
0
0
1
1
1
1
0

1
Remainder:

11
S3
S3
S3
S3
S7
S7
S7
S7

0
1

0
1

S2
2

S3
3

14.15 (b) Now, expand the state graph into two dimensions: one for 1s and the other for 0s. We need two states to describe
the zeros, odd and even.
0

S1
1

S3
1

0
0
0

S5
1

S7

0
0
0
0
0
0
0

S0
1

Left column: odd zeros

Right column: even zeros

S2
1

S4
1

S6

103

First row: Remainder = 0

Second row: Remainder = 1
Third row: Remainder = 2
Fourth row: Remainder = 3

As part (a)

14.16 (a) We need four states, one for each of the possible past inputs. The next state is just the one that describes that input.
The output Z1 is formed by adding the value of the present state to the present input. Z2 is found in a similar way:
Next State
State 00 01 10 11
S0
S0 S1 S2 S3
S1
S0 S1 S2 S3
S2
S0 S1 S2 S3
S3
S0 S1 S2 S3

00
00
00
00
10

Z1Z2
01 10
00 00
00 10
10 11
11 11

11
10
11
11
11

State
Meaning
S0 Previous input was 00 (0)
S1 Previous input was 01 (1)
S2 Previous input was 10 (2)
S3

14.16 (b) The Moore version is less intuitive. Again, we need

a state for each past input. We do not, however, need
a state for every possible output (this would give 4
4 = 16 states) since some outputs never occur. For
instance, if the last input was zero, Z2 can never be 1,
because anything multiplied by zero is zero. In fact,
only ten states are needed:

Previous
X1X2
Input
State 00 01 10
00
S0
S0 S2 S5
00
S1
S0 S2 S5
01
S2
S0 S2 S6
01
S3
S0 S2 S6
01
S4
S0 S2 S6
10
S5
S0 S3 S7
10
S6
S0 S3 S7
10
S7
S0 S3 S7
11
S8
S1 S4 S7
11
S9
S1 S4 S7

Note: The output can never be 01. If two integers

between 0 and 3 multiply to a number greater than 2,
their sum is also greater than 2, i.e. (Z2 = 1) (Z1 = 1)

14.17

There are two identical parts: one with an output of

0 and one with an output of 1.
State
S1, S4
S2, S5
S3, S0

11 Z1Z2
S8 00
S8 10
S9 00
S9 10
S9 11
S9 00
S9 10
S9 11
S9 10
S9 11

1
0

S0
0

Meaning
Previous input was 0
Previous inputs were 01
Previous input was 1 / Reset (S0)

S5

S1

S2

S4

S3

14.18

There are two identical parts: one with an output of 0 and one
with an output of 1.
State
S0
S1
S2
S3
S4
S5

Meaning

Reset
Previous input was 1
Previous inputs were 10

S1
0

1
S0
0

0
1

0

104

S5
1

S2
0

S3
1
S4
1

14.19

This is another problem similar to 14.10. Plot the

number of 0s horizontally and the number of pairs
vertically:
no 0's

one zero

S0

no pairs

11
0

S1

one pair

11
0

S4

two pairs
11
0

01
0 10
0
00
0
01
0 10
0
01 10
0, 0

two zeros

14.20

0s
0
0
1
2
0
1
2
3
4

Present
State
S0
S1
S2
S3
S4
S5
S6
S7
S8

four zeros

00
0

S2
00
0
11 01
0
0 10
0
S5
11
0

01 10
0, 0

S3

00
0

11 01
0
0 10
0

S6

00
0

Next State
00 01 10 11
S3 S2 S2 S1
S6 S5 S5 S4
S7 S6 S6 S5
S8 S7 S7 S6
S6 S5 S5 S4
S7 S6 S6 S5
S0 S7 S7 S6
S0 S0 S0 S7
S0 S0 S0 S0

00
0
0
0
0
0
0
1
1
1

S8

S7

01 10
0, 0
11
0

11
0

00
0

Pairs
0
1
1
1
2
2
2
2
2

three zeros

00 01 10
1, 1, 1
to S0

00
1
to S0

Z1Z2
01 10
0 0
0 0
0 0
0 0
0 0
0 0
0 0
1 1
1 1

11
0
0
0
0
0
0
0
0
1

00 01 10 11
1, 1, 1, 1
to S0

0s are plotted horizontally. 1s are plotted

vertically.
Next State
State X = 0 X = 1
S0
S2
S1
S1
S3
S0
S2
S4
S3
S3
S5
S2
S4
S2
S5
S5
S3
S4

Z
0
1
0
1
0
1

S0

S2

1
1
0

no 0's

S3

odd 0's

105

even 1's

S1

S4
0
1

S5
0

even 0's

odd 1's

14.21

Next State
State X = 0 X = 1
S0
S1
S0
S1
S1
S2
S2
S1
S3
S3
S1
S0

Z1Z2
X=0 X=1
00
00
00
00
00
10
00
01

State
Meaning
S0 Reset, 0111
S1 0
S2 01
S3

0
0
1

00

S0
1

14.22
State 00
S0
S0
S1
S0
S2
S0
S3
S0

0
00

S1

1
00

00

S2

00

00

10

S3

01

X1X2
01 10
S1 S2
S1 S2
S3 S2
S3 S3

00

11
S3
S3
S3
S3

Z
0
0
0
1

14.23

10

10, 11

00

S3

S2
0

10

01, 11

01, 10, 11

Z = 1 (Until input 00)

Next State
Z
State X = 0 X = 1 X = 0 X = 1
0
1
S0
S1
S0
0
1
S1
S2
S0
0
1
S2
S2
S3
0
1
S3
S1
S4
1
1
S4
S1
S0

State
Meaning
S0 No sequence
S1 0
S2 00
S4

S1

01
11

00

Example: X = 0 0 1 1 0 0 1 1 0 1 0 1
Z=001110111101
Note: Overlapping sequences are allowed.

S3

01
00

S0

State
Meaning
S0 Reset
S1 Previous input was 01, Z = 0
S2 Previous input was 10, Z = 0
S3

011

001

0011

0
1

S0

S1

S2

S3

106

S4

14.24

Next State
State X = 0 X = 1
S0
S0
S1
S1
S6
S2
S2
S3
S6
S3
S3
S4
S4
S6
S5
S5
S5
S6
S6
S6
S6

S1
0

S4
S5
S6

14.25

S4

1

One 1 in second group

Two 1s in second group (Z = 1)

S5

Disqualified state (Z = 0)

Next State
State X = 0 X = 1
S0
S0
S1
S1
S2
S3
S2
S0
S1
S3
S2
S3

S6

S3

To delay by two clock periods, we need to

remember the previous two inputs. So we have
four states, one for each combination of two inputs:

0
1

S0

Z
X=0 X=1
0
0
0
0
1
1
1
1

S1

S2

S3

1
1

State
Meaning
S0 Previous two inputs were 00
S1 Previous two inputs were 01
S2 Previous two inputs were 10
S3

S2
0

State
Meaning
S0 No 1s
S1 One 1 in first group
S2 Two 1s in first group
S3

S0

Z
0
0
0
0
0
1
0

two inputs.

107

0,1

14.26

This is the same as 14.25, except that we need to

remember the last three inputs. So we have eight
states:
Next State
State X = 0 X = 1
S0
S0
S1
S1
S2
S3
S2
S4
S5
S3
S6
S7
S4
S0
S1
S5
S2
S3
S6
S4
S5
S7
S6
S7

S0

S4

S3

S1

Z
X=0 X=1
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1

S2

S5

S7

S6

Note: The state number expressed in binary gives

the last 3 inputs.
14.27

Next State
State X = 0 X = 1
S0
S1
S1
S1
S2
S4
S2
S3
S3
S3
S0
S0
S4
S3
S5
S5
S0
S0

SV
X=0 X=1
00
10
10
00
00
10
00
10
10
00
10
01

0 1
00, 10
0

S0

S3
S5

10

0 1
10, 01

Two bits received; Carry-in = 1

Three bits received; Carry-in = 0
Three bits received; Carry-in = 1

108

00

0 1
00, 10

S3

0
10

S1
1

State
Meaning
S0 No bits received
S1 One bit received
S2 Two bits received; Carry-in = 0
S4

0 1
00, 10

S2

S4

1
00

S5

14.28

Next State
State X = 0 X = 1
S0
S1
S1
S1
S2
S3
S2
S4
S5
S3
S5
S5
S4
S0
S0
S5
S0
S0

DB
X=0 X=1
00
10
10
00
10
00
00
10
11
00
00
10

0 1
11, 00
0

0 1
00, 10

S0

S3
S5
14.29

S43

10
1
00

S1
1

00

0 1
00, 10

S3

0 1
00, 10

State
Meaning
S0 No bits received
S1 One bit received
S2 Two bits received; Borrow-in = 1
S4

0
10

S2

Two bits received; Borrow-in = 0

Three bits received; Borrow-in = 1
Three bits received; Borrow-in = 0

This is similar to 14-15, and should be answered in

the same way. See the solution to 14-15 for more
information.

0
S0

00

Horizontally: Number of 1s modulo 3

Vertically: Number of 0s modulo 3.
Next State
State X = 0 X = 1
S0
S3
S1
S1
S4
S2
S2
S5
S0
S3
S6
S4
S4
S7
S5
S5
S8
S0
S6
S0
S7
S7
S0
S8
S8
S0
S0

00

YZ
00
01
10
00
01
10
00
01
10

00
0

109

S4

01

S7

01
0

0
1

0
1

S2

10

S6

01

S3

S1

S5

10

0
1

S8

10
0

S5

14.30

This problem is essentially a circular counting

exercise. Pairs of 1s take you further around the
state graph. Pairs can overlap, so if the last input
was a 1, and the present input is a 1, you move on.
If the sequence is interrupted, you branch off while
you wait for the next 1. Then, you go back to the
cycle of counting.
Next State
State X = 0 X = 1
S0
S0
S1
S1
S0
S2
S2
S3
S4
S3
S3
S2
S4
S5
S6
S5
S5
S4
S6
S7
S0
S7
S7
S6

14.31

S0

00

YZ
00
00
01
01
10
10
11
11

State
S0
S1
S5

Meaning
Reset
A=0
A=1

S3, S6

B=1

S2, S4

11

S1

S5

00

S4

1
0

11

S7

S6

10

S2

01
0

10

Interruption to
the flow of 1's

We notice that input ABXX becomes output AABB.

It can be seen that it is not necessary to remember
both A and B at once. We remember A for the first
two clocks and B for the next two. Notice that if
the output were, say, ABAB, we could not do this.
Next State
State X = 0 X = 1
S0
S1
S5
S1
S2
S3
S2
S4
S4
S3
S6
S6
S4
S0
S0
S5
S2
S3
S6
S0
S0

1's take you

around

S0
S1
1 0
0, 0

X=0 X=1
0
1
0
0
0
0
1
1
0
0
1
1
1
1

1 0
0, 0

S4

110

S5
1

S2

B=0

S3

1 0
1, 1

S6

1 0
1, 1

S3

01

14.32

This problem is simply addition. We need a state to describe every possible sum of money entered, i.e., 0 to 45 in
5 intervals.
Just go to the state with the correct sum. The 25 state dispenses the product (R = 1) and resets. States above this in
value cascade down to S5 by giving out a nickel. When they get to S5, the product is dispensed.
\$
.00
.05
.10
.15
.20
.25
.30
.35
.40
.45

Present
NDQ
State 000 100 010
S0
S0 S1 S2
S1
S1 S2 S3
S2
S2 S3 S4
S3
S3 S4 S5
S4
S4 S5 S6
S5
S0 S6
S5 S7
S6 S8
S7 S9
S8 -

001 RC
S5 00
S6 00
S7 00
S8 00
S9 00
10
01
01
01
01
-

14.33 (a) Look at Figure 14-19, FLD p. 408, to see that

Manchester 01 gives NRZ 00
Manchester 10 gives NRZ 11

1
1

1
0

S1

S2

S0
0
1

0
0

Other Manchester inputs are presumed not to occur.

Next State
Z
State X = 0 X = 1 X = 0 X = 1
0
1
S0
S1
S2
0*
0
S1
S0
1
1*
S2
S0
* Filled in to prevent False outputs.
14.33 (b) This is the same as the Mealy, except that we need
two reset states, one with an output of zero, the
other with an output of 1. Invalid inputs never
occur.
Next State
State X = 0 X = 1
S0
S1
S2
S1
S0
S2
S3
S3
S1
S2

S0
0
0

S1
0

Z
0
0
1
1

111

S2
1

S3
1

14.33 (c), (d)

CLOCK2

Manchester
NRZ (Mealy)
NRZ (Moore)

false outputs
Note: Moore output is delayed one clock cycle of CLOCK2.
R'

14.34

State
Meaning
Reset
S0
One ring, waiting for two (or answer)
S1
S3, S4, S5 One, two, or three rings, respectively;
waiting for four (or answer)
Activate answering machine; wait for
S2

S0
0

RS
A'R' S
3
0
A

R
A'R'

RS'
A

S1

A'R'

S4
0

S2

S5
0

A'R'

112

A'

Unit 15 Problem Solutions

15.1 (a) Implication chart after one pass:

Complete implication chart

F-H

C-E

B-E
F-H

C-D
A-F

B-D
A-H

A-B
E-F
B-D

D-E
F-H

B-H
F-G

Next State
State X = 0 X = 1
A
A
C
B
C
F
C
B
A
F
B
F

c-h
e-a
h-f

i-e
h-g
e-h
e-b

c-h
e-b

h
i

B-D
A-H

A-F

C-D
F-H

B-D

D-E
F-H

c-f
b-e
b

A-H
B-H
F-G

E-G

So 1(B, 100) = 010 011 = 2(G, 100), and B G.

(Alternative: 1(B, 110) = 001 000 = 2(G, 110).
Also, 1(B, 00101) 2(G, 00101), but this requires
an X of length 5.

i-e
f-g
a-b

A-B
E-F

Input: X:
1 0 0
Starting Z:
0 1 0
in B: State: (B) F B
Starting Z:
0 1 1
in G: State: (G) H
H

See FLD p. 660 for

reduced state table.

c-i
d-h
e-f
e-b
a

C-D
A-F

F H because B H, (and also because F G), and

B H because the output differs for X = 0.
So use the sequence X = 100.

ab
ce
hf
dgi

Output
X=0 X=1
1
0
0
0
0
0
1
0

c-e

e-h
e-a

B-E
F-H

c
d

C-E

15.2

A-H

E-G

F-H

F
C-D
F-H

G
H

A-F

AH
CEG
BD

c-i
f-d
h-f
a-b
d

c-e
g-d
h-f

113

15.3

S0 S5 a
S1 b
S1 S5 a
S6 b
S2 S2 a
S6 b
S3

S5 a
S1 c
S5 a
S6 c
S2 a
S6 c

S4 S4 a
S3 b
S5 S0 a
S1 b
S6

S4 a
S3 c
S0 a
S1 c

a
15.4 (a)
X3 Q

b S1
c S3, S6

S0 a
S1 b

15.3 (b) Starting from S0, it is not possible to reach S2 or S4.

So then the circuits would perform the same.

S5 a
S1 b
c

X1 X2
00 01

Since S2 and S4 do not have corresponding states,

the circuits are not equivalent.

S0 a
S1 b
S3 c
S5 a
S6 c
S2 and S4 have no
equivalent states.

15.4 (b)
11

10

X3 Q

X1 X2
00 01

11

10

00

00

01

01

11

11

10

10

D = X2'X3 Q + X1'X2 Q' + X1 X2'Q' + X2 X3'Q

Z=Q

X1 X2
00 01

11

10

00

01

11

10

R = X2 X3 Q + X2'X3'Q

Z=Q

X3 Q

S = X1'X2 Q' + X1 X2'Q'

15.5 (a) The first row may be all 0s, because if a column has a 1 in the first row, we can invert it so that it has a 0 in the first
row without changing the number of gates. No column should be all 0s, because that is the same as the two flipflop case. There are only 3 columns which fit these criteria: 001, 010, and 011. No column may be used twice,
because again that is the same as the two flip-flop case. So we need only check one assignment (which consists of the
three columns in any order) to see whether a three flip-flop solution is better than a two flip-flop solution. One such
assignment is:
0 0 0
0 1 1
1 0 1

114

15.5 (b) Excluding 0000, there are 7 possible columns. All possible non-repeating combinations are given here. Those with
repeating rows are crossed out; 29 assignments remain to try.
00 0
00 0
01 1
10 1
(1 2 3)
00 0
01 1
00 0
10 1
(1 4 5)
00 0
00 1
11 1
01 1
(2 3 7)
00 0
01 1
10 1
10 1
(3 4 7)

00 0
00 1
01 1
11 1
(1 3 7)
00 0
00 1
11 1
01 0
(2 3 6)
00 0
01 1
10 1
10 0
(3 4 6)

00 0
00 1
01 0
10 0
(1 2 4)
00 0
01 1
00 1
10 0
(1 4 6)
00 0
01 1
10 0
00 1
(2 4 5)
00 0
01 1
10 1
11 0
(3 4 6)

00 0
00 1
01 0
10 1
(1 2 5)
00 0
01 1
00 1
10 1
(1 4 7)
00 0
01 1
10 1
00 0
(2 4 6)
00 0
01 1
10 1
11 1
(3 5 7)

15.6 (a) Group (S1, S4, S6, S7) and (S2, S3, S5, S8).

00 0
00 1
01 1
10 0
(1 2 6)
00 0
01 1
00 1
11 0
(1 5 6)
00 0
01 1
10 1
00 1
(2 4 7)
00 0
01 1
11 1
10 1
(3 6 7)

B C

One possible assignment:

S1 = 000
S5 = 111
S2 = 100
S6 = 011
S3 = 101
S7 = 010
S4 = 001
S8 = 110

00 0
00 1
01 1
10 1
(1 2 7)
00 0
01 1
00 1
11 1
(1 5 7)
00 0
01 1
10 1
01 0
(2 5 6)
00 0
11 1
00 1
01 0
(4 5 6)

00

S1

S2

01

S4

11
10

00 0
00 1
01 0
11 0
(1 3 4)
00 0
01 1
01 1
10 1
(1 6 7)
00 0
01 1
10 1
01 1
(2 5 7)
00 0
11 1
00 1
01 1
(4 5 7)
A

B C

00 0
00 1
01 0
11 1
(1 3 5)
00 0
00 1
11 0
01 0
(2 3 4)
00 0
01 1
11 1
00 1
(2 6 7)
00 0
11 1
01 1
00 1
(4 6 7)

00 0
00 1
01 1
11 0
(1 3 6)
00 0
00 1
11 0
01 1
(2 3 5)
00 0
01 1
10 0
10 1
(3 4 5)
00 0
11 1
01 1
10 1
(5 6 7)

00

S3

01

S6

S5

11

S7

S8

10

1
Z = A

15.6 (b) I: (S3, S4) (S1, S8) (S3, S7) (S5, S8)
II: (S4, S5) (S1, S6) (S7, S8) (S1, S7) (S2, S3)
(S2, S4) (S6, S8) (S3, S5)
Adjacencies that are satisfied are checked ()

B C

S1 = 000
S5 = 101
S2 = 010
S6 = 110
S3 = 011
S7 = 001
S4 = 111
S8 = 100

B C

X A
00

01

11

10

00

01

11

10

00

S1

S8

01

S7

11
10

B C

X A
00

01

11

10

00

S5

01

S3

S4

11

S2

S6

10

B C

X A
00

01

11

10

00

01

11

10

115

State
S1
S7
S2
S3
S8
S5
S6
S4

ABC
000
001
010
011
100
101
110
111

A+B+C+
X=0 X=1
101 111
110 100
000 110
001 100
101 011
010 011
111 010
001 000

15.7 (a) Guidelines:

1. (A, D, F) (C, E) (A, D) (C, E) (B, F)
2. (F, D)2 (D, B) (A, C)2 (B, F)
3. (A, B, D, F) (C, E)
See FLD p. 661 for one good solution.

15.8 (a) Guidelines:

1. (B, D)2 (C, D)2 (A, B)
2. (B, D) (A, C) (A, C, B) (A, B, C, D)
3. (A, B)2 (B, D)2 (C, D)2

Q2

Best assignment: A = 00, B = 01, C = 10, D = 11

15.8 (b)
X1 X2

Q1 Q2
00 01

11

10

Q2

Satisfies all

Q1 Q2
00 01

11

10

Q1

Q2

(B, D) not
satisfied

X1 X2

Q1

(C, D) not
satisfied

Q1 Q2
00 01

11

10

00

00

00

01

01

01

11

11

11

10

10

10

X1 X2

Q1 Q2
00 01

Q1+

Q2+

11

10

X1 X2

Q1 Q2
00 01

Z1 = Q2 X1

11

10

X1 X2

Q1 Q2
00 01

11

10

00

00

00

01

01

01

11

11

11

10

10

10

T1
T1 = X1X2' + Q1Q2X1'
+
Q1'Q2X1 + Q2'X1'X2

15.9

X1 X2

Q1

T2 = Q1'Q2'X1 + Q1 Q2 X1

See FLD p. 661 for solution using Q1, Q2, and Q3.
Alternate solution using Q0, Q1 and Q2:
D0 = X'Q0 + XY'Q2
D1 = XQ0 + XQ2 + X'Q1
D2 = YQ1 + X'Y'Q2
P = XQ0 + X'Q2 + XQ1
= XQ0 + Q2
S = X'Q0 + XY'Q2

116

Z2 = Q1 Q2' + Q1 X1'

15.10 (a) b
agh
df
eb

c
d

h-f
b-h

Next State
State X = 0 X = 1
a
a
c
b
c
d
c
d

d-f

f-h
b-g

h-g

h-a
a

a
d

15.11 (a) b

b-e
c-d

0
0

a-d
c-e

c
a-b
e-c
b-d

bd
gh
cf

b-d
e-f
d-g

e-f
b-g

abd
ce

e-c
a-b

c
b-e
b-c
b-f
c-g

0
0

g-a

b
a

h-g

15.10 (b) Input: 00

0
0
Output starting in state c: 01 (state c
state a
state a)
0
0
Output starting in state d: 00 (state d state d
state d)
15.11 (b) b

Output
X=0 X=1
1
0
0
1

a-d
a-b
e-f
a-b
f-a
b-d
c

c-f
a-d
f-a
b-d
e

g-h
d-b

g
h

a-h
a-i
g

g-a
i-a
h

Next State
Z
State X = 0 X = 1 X = 0 X = 1
1
0
a
b
c
1
0
b
e
b
1
1
c
g
b
1
0
e
c
g
0
1
g
g
i
0
1
i
a
a

117

Present
State
a
c
f

Next State
00 01 11 10
a c c a
c a f a
f a a a

Z
0
1
1

15.12 (a) b

i-c
c-f

c
d

d-c, d-e
f-g

i-c

i-f

b-f, i-c
g-k
b-j, c-g
i-k, g-h
b-e
i-f
b-i, c-i
g-d
i-f

b-f, i-c
f-i, g-k
b-j, c-k
f-g, g-h
b-e
c-f
b-i, c-i
f-i, g-d
c-f

g
h
i
j

ahj
be
dk
fi

k
a

b-f, c-i
g-k
b-j, c-k
i-g, g-h
b-e, c-f
i-c
b-i, c-i
g-d
c-f
c-i
a-h, d-e h-a
d-c, f-g
c
d

f-j, i-k
i-g, k-h
f-e, i-f
i-c, k-g
k-d

Present
State
a
b
c
d
f
g

Next State
00 01 11 10
b f c g
b c f g
a d d f
a c b g
f f f d
a d g a

f-b, i-f
i-c, k-g

j-e, k-f
h-g, g-c
j-i, k-i e-i, f-i
g-i, h-d c-i, g-d
j-b, k-f e-b
g-c, h-g

i-b, i-c
d-g, i-f

Z
0
0
1
1
0
0

15.12 (b) b
c
d

a-g, a-c
k-i
k-i

e
f

beik
cfh

g-a
c-d

Present
State
a
b
c
g

c-f, f-h
d-a
a-g, a-c
g-d

a-d
i-k

a-g, d-c
g-d, i-k

a-g, a-h
g-d

a-d
i-k

a-g, d-h
g-d, i-k

g
h
i
j

c-h
f-h

a-j
i-k

f-c
a

c-h
f-h
a-d

g-j, c-j
a-g, i-k

Next State
00 01 11 10
a a g b
c c g a
g c a b
c a g b

g-j, c-j
d-g
f-c, h-c
a-d
e
f

118

g-j, h-j
d-g
h-c
g

00
1
0
1
0

Z
01 11
0 0
0 0
0 0
1 0

10
0
0
0
0

15.13 (a) S0 e f, S1 c d, S2 S3 a b
Since every state in N has an equivalent state in M, and
vice versa, N and M are equivalent.
S0
S1
S2
S3

E S0
A S2
E S0
A S3
A

F S0
B S2
F S0
B S3
B

E S3
D S1
E S0
D S1

E S3
C S1
E S0
C S1

B S3
D S1
B S0
D S1

B S3
C S1
B S0
C S1

S3 S0 S11 S0 S10
S3 S10 S3 S12
S10
S11

S3 S13
S3 S12

S12

X =0
S2
S0
S0

S0
S1
S2
S2 S3
Note:

S1 S10
S0 S13
S0 S10
S2 S13

15.14 (c) X = 0 1 1
Z = (0) 0 1 1
Z1 = (0) 0 1 0

S0 S10
S3 S13
S13

S2 and S12 have no corresponding states,

N and N' are not equivalent.
15.15 (a) Set dont care to 0 so S2 S4 S5:
Present Next State
Output
State X = 0 1 X = 0 X = 1
0
0
S0
S1 S2
1
1
S1
S3 S2
0
1
S2
S2 S2
1
1
S3
S2 S2

Set dont care to 0 so S1 S3 S4:

Present Next State
Output
State X = 0 1 X = 0 X = 1
0
0
S10
S11 S15
1
1
1
S1
S11 S12
1
1
1
0
1
S2
S2 S1
1
1
1
0
1
S5
S5 S2

119

N
1
S1
S1
S2

S2 A
S1 C
S0 E

Present Next State

State X = 0 1 Output
0
S10
S11 S10
1
0
S1
S10 S12
1
1
1
1
S2
S3 S2
1
1
1
0
S3
S0 S3

Present Next State

State X = 0 1 Output
0
S0
S1 S0
0
S1
S0 S2
1
S2
S3 S4
0
S3
S0 S3
S1 S10
S0 S12
S0 S10
S2 S12

15.14 (a) Set dont care to S3 so S4 S3:

15.14 (b) S S S1
0
1
1
S0 S10
S1 S0 S11
S2 S10
S2

15.13 (b)

0
0
1

X =0 1
A
E A 1
C
E C 0
E
A C 0
E F, C D, A B

15.15 (b) S S S1
0
1
1
S2 S15
S1
S3 S11
S2 S12
S2
S2 S12 S2 S15
S2 S11 S2 S12
S3
S2 S11
S2 S12
1
S0
S11
S12
S15

15.15 (c) X = 1 0
Z= 01
Z1 = 0 0

No equivalent states.
15.16 (a) Invert all three columns of assignment (iv), and
then swap the first and last columns. Then (iii)
and (iv) are the same, therefore, Assignment (iii)
Assignment (iv).

15.16 (b) Equivalent assignments to each column having 000

as the starting state. Invert any column with 1 in
the first row.

S0
S1
S2
S3
S4
S5

15.16 (c) Many state assignments are not equivalent to

(i) through (v), for example:
101
000
011
100
010
110
15.17 (a)

or

011
101
000
100
010
110

Straight
Binary
Assignment
000
001
010
011
100
101
110
111

(ii) - (c'2)
000
101
011
100
010
110

iii - c'1
000
001
100
101
011
010

Equivalent State Assignments (any three)

c2 c3

c1 c3

c1 c2

c1 c3 c2 c1 c1 c2 c3 c1

000
001

000
100

000
010

000
010

000
100

100
101
010
011
110
111

010
110
001
101
011
111

001
011
100
110
101
111

100
110
001
011
101
111

001
101
010
110
011
111

15.17 (b) Many state assignments are not equivalent to the

straight binary assignment, for example:

111
101

111
001

110
100
011
010
001
000

010
011
100
101
000
110

120

etc.

iv - c'1c'2 v - c'3
000
000
100
110
001
100
101
010
110
001
010
011

15.18 (a) 1. (A, H) (B, G) (A, D) (E, G)

2. (D, G) (E, H) (B, F) (F, G) (C, A) (H, C) (E, A)
(D, B)
3. (A, C, E, G) (B, D, F, H)
Consider Guideline #3 only:
Q2 Q3

Q1

00

01

11
10

Q2 Q3

Q1

15.18 (b) Consider Guidelines #1, 2:

A = 000, B = 111, C = 110, D = 001, E = 010,
F = 101, G = 011, H = 100
D2 D3

00

01

11

10

D1

Q2 Q3

X1 Q1
00 01

Q2 Q3

00

00

01

01

11

11

10

10

X Q1
00

01

11

10

Q2 Q3

X Q1
00

01

11

10

00

00

01

01

11

11

10

10

D2 = X'Q2 + X Q2'

15.19 (a) 1. (A, C)2 (B, C)2 (A, D)

2. (A, C) (B, D) (A, B, D)
(A, B, C, D)
3. (A, D)
Adjacencies that are satisfied are checked ()
Q1

Q1Q2
00
11
10
01

15.19 (b)

Q1 Q2

00
00
11
00
01

10

D1 = X1'Q2'Q3 + X1'Q2 Q3' + X1 Q1

Z = Q1

Q2

11

D3 = Q1'Q2' + Q1 Q3'

X1 X2
00 01

11

10

00

01

11

10

11

10

Q1+

Q1+Q2+
01 11
00 10
01 11
00 11
11 00

10
10
01
01
10

00
01
11
11
01

Z1Z2
01 11
01 01
11 11
11 00
01 01

Q1 Q2

X1 X2
00 01

00

10
01
11
00
01

01

11

10
Q2+

15.19 (b)
(contd)

X1 X2
Q1 Q2
00 01

11

10

00

01

11

10

Q1 Q2

X1 X2
00 01

11

10

00

01

11

10

K1 = X1'X2 + X1 X2' + X2'Q2'

K1 = X1'X2 + X1 X2' + X1'Q2'

121

Q1 Q2

X1 X2
00 01

11

10 Q1 Q2

X1 X2
00 01

11

10

00

01

11

10

00

01

11

10

J2 = X1 Q1

K2 = X1 Q1'

15.20 (b) 1. (A, C) (B, D) (C, E)

2. (A, B) (C, E) (A, D) (A, C) (B, D)
3. (A, C, E) (B, D)
Adjacencies that are satisfied are checked ()
A = 000, B = 100, C = 001, D = 101, E = 011
All are satisfied except (A, D)
Alternate:

15.20 (a) B
C A-F
B-G
D
E A-I
B-G
F A-H
B-I
G

AFH
BI
DG

E-A
F-I
F-H
G-I
E-F
G-B

I-F
G-B

Next State
State X = 0 X = 1
A
A
B
B
C
E
C
A
D
D
C
A
E
B
D

X Q1
00

01

11

10

Q2 Q3

X Q1
00

01

11

10

00

01

01

11

11

10

10

10

00

01

11

10

01

11

Q2 Q3

01

11

10

X Q1
00

X Q1
00

Q1+Q2+Q3+
X=0 1
000 100
001 011
000 101
001 000
100 101

01

11

10

Z
1
0
1
0
1

Q2 Q3

Q1

00

01

01

11

11

10

10

Q2+ = X Q1 Q3'

Q2 Q3

00

00

01

11

10

Z = Q1'

Q3+ = X'Q1 + X Q1'Q3 + Q1 Q3'

Q2 Q3

X Q1
00

01

11

10

01

11

10

00

01

01

11

11

10

10

01

11

10

K1 = 1

J2 = X Q1 Q3'

122

Q2 Q3

X Q1
00

00

00

J1 = Q2 + X

Q1Q2Q3
000
100
001
101
011

11

15.20 (c)

01

00

Q1

00

X Q1
00

Q2 Q3

10

X
1
0
1
0
1

Q1+ = Q2 + X Q1'

Q2 Q3

Q1

F-E

15.20 (c)
(contd)
Q2 Q3

H-F
I-B

A-E

I-H
G-I
A-F

H A-F
I

Q2 Q3

K2 = 1

15.20 (d)
Q2 Q3

X Q1
00

01

11

10

Q2 Q3

X Q1
00

01

11

10

00

00

01

01

11

11

10

10

K3 = X'Q1' + X Q1

J3 = Q1

Output Z equation is the same for D and J-K flip-flops.

(Actually, it is the same for any flip-flop.)
15.21 (a) B I-B
C-I
C I-C B-C
C-G I-G
D

AI
BH
DF

I-D
C-E

I-E
C-F

H I-H
C-A
I

B-H
I-A
B-A
I-C
B

Present Next State

State X = 0 1 Output
1
A
A C
1
B
B A
1
C
C G
0
D
A C
0
E
D E
0
G
E D

C-H
G-A
C-A
G-C
C
D

D-I
E-C
D-E
E-F

I-E
C-F

H-A
A-C
H

15.21 (b) 1. (A, D)2

2. (A, C)2 (A, B) (C, G) (D, E)2
3. (A, B, C) (D, E, G)
There are several solutions. Here is one satisfying
all guidelines:
A = 000, B = 010, C = 001, D = 100, E = 110,
G = 101

Q2 Q3

Q1

00

01

11
10

123

15.21 (c)
Q1Q2Q3
000
010
001
100
110
101

Q2 Q3

Q1+Q2+Q3+
X=0 1
000 001
010 000
001 101
000 001
100 110
110 100

X Q1
00

Z
1
1
1
0
0
0

01

11

10

Q2 Q3

X Q1
00

01

11

10
0

00

01

01

11

11

10

10

D1 = Q1 Q3 + Q1 Q2 + X Q3

01

11

10

01

11

10

Q2 Q3

Q1

10

11

00

01

X Q1
00

00

00

Q2 Q3

D2 = X'Q1'Q2 + X'Q1 Q3 + X Q1 Q2

Z = Q1'

D3 = Q1'Q3 + X Q2'Q3'

15.21 (d) Again, Z = Q1':

Q2 Q3

X Q1
00

01

11

10

X Q1
00

Q2 Q3

01

11

10

00

00

01

01

01

11

11

11

10

10

10

10

01

11

10

Q2 Q3

X Q1
00

J3 = X Q2'

01

11

10

00

00

01

01

11

11

10

10

K1 = Q2'Q3'

Q2 Q3

J2 = X'Q1 Q3

J1 = X Q3
X Q1
00

11

X Q1
00

00

Q2 Q3

01

Q2 Q3

X Q1
00

01

11

10

00

01

11

10

K2 = X'Q1 + X Q1'

124

K3 = Q1

15.22

Present Next State

Output
State X = 0 1 X = 0 X = 1
0
0
S0
S1 S4
0
0
S1
S1 S2
1
0
S2
S3 S4
0
0
S3
S5 S2
S4
S5

S3 S4
S1 S2

0
0

0
1

Q2 Q3

X Q1
00

Q1

00

S0

01

S4

S3

11

S2

10

S1

Q 2 Q3

1. (S0, S1, S5) (S0, S2, S4) (S1, S3, S5)

2. (S1, S4) (S1, S2)2 (S3, S4)2 (S2, S5)
3. (S0, S1, S3, S4)
S0 = 000. S1 = 010, S2 = 011, S3 = 101, S4 = 001,
S5 = 110
Q1Q2Q3
000
010
011
101
001
110

S5

15.22 (a)
Q2 Q3

X Q1
00

00

01

11

01

11

10

10

11

01

01

11

11

10

Q2 Q3

X Q1
00

00

10

X Q1
00

11

10

01

11

10

Q2 Q3

00

X Q1
00

00

01

11

01

11

10

Q2 Q3

S1 = X'Q3

11

10

00

01

11

10

10

Q3+ = Q1'Q3 + X

Q2 Q3

X Q1
00

00

01

11

R3 = X'Q1
10

Q2 Q3

X Q1
00

00

01

01

11

11

S2 = X'Q3' + Q1

01

11

10

10

S3 = X

(a) D1 = XQ1'Q2' + Q2 + X'Q1Q3'; D2 = X; D3 = X'Q2'

Z = X'Q1'Q2 + XQ1Q3
(b) S1 = XQ1'Q3' + Q2; R1 = XQ1Q2' + Q3; S2 = X;
R2 = X'; S3 = X'Q2'; R3 = X; Z = X'Q1'Q2 + XQ1Q3

125

10

11

10

01

00

11

11

01

11

10

1
Z = X'Q2 Q3 + X Q1 Q3'

01

01

X Q1
00

10

10

01

R2 = Q2 Q3

Q2 Q3
Q1 00

10

10

R1 = X + Q3'
Q2 Q3

11

Q2 Q3

X Q1
00

01

00

01

01
11

Q2 Q3

Q1+ = X'Q3

15.22 (b)

X Q1
00

01

00

10

Q1+Q2+Q3+
Z
X=0 1 X=0 X=1
010 001
0
0
010 011
0
0
101 001
1
0
110 011
0
0
101 001
0
0
010 011
0
1

15.23

Present
State
S0
S1
S2
S3
S4
S5

Next State
X=0 1
S2 S1
S5 S0
S3 S1
S3 S4
S4 S3
S4 S0

Q1 Q2
Q3 00

01

11

10

Z
0
0
0
0
1
0

Q1Q2Q3
000
001
010
110
111
011

Q1+Q2+Q3+
X=0 1
010 001
011 000
110 001
110 111
111 110
111 000

Z
0
0
0
0
1
0

1. (S2, S3) (S4, S5) (S0, S2) (S1, S5)

2. (S1, S2) (S0, S5) (S1, S3) (S3, S4)2 (S0, S4)
S0 = 000, S1 = 001, S2 = 010, S3 = 110, S4 = 111,
S5 = 011
Guideline 3 is of no use for this state table.

15.23 (a)
Q2 Q3

X Q1
00

01

11

10

Q2 Q3

15.23 (b)

X Q1
00

01

11

10

Q2 Q3

X Q1
00

01

11

10

X Q1
00

Q2 Q3

01

11

10

00

00

00

00

01

01

01

01

11

11

11

11

10

10

10

10

Q1+
Q2 Q3

X Q1
00

J1 = X'Q2

01

11

10

01

11

10

00

00

01

01

11

11

10

10

Q2+

01

11

10

00

01

11

10

11

00

01

11
10

Q3+

X Q1
00

01

11

10

Q2 Q3

X Q1
00

01

11

10

00

00

01

01

11

11

10

10

T2 = X'Q2' + X Q1'Q2

K2 = X Q1'

10

01

Q2 Q3

J2 = X'
X Q1
Q2 Q3
00

X Q1
Q2 Q3
00

T1 = X'Q1'Q2

K1 = 0

X Q1
Q2 Q3
00

Q2 Q3

X Q1
00

01

11

10

Q2 Q3

X Q1
00

01

11

10

00

00

01

01

11

11

10

10

J3 = X

K3 = X

126

T3 = X

15.24

See solutions to 14.13 for the state table.

I. (S0, S1, S7) (S2, S6) (S3, S4, S5) (S0, S6) (S1, S7)
(S2, S3, S5)
II. (S1, S6) (S6, S7) (S1, S2)2 (S3, S7) (S3, S4)2
(S4, S5)
III. (S0, S1, S3, S4, S6) (S2, S5)
Q 2 Q3

Q1

00

S0

S6

01

S1

S5

11

S3

S4

10

S7

S2

Q2 Q3

Q1Q2Q3
000
001
110
011
111
101
100
010

X Q1
00

01

11

10

00

01

11

10

X Q1
00

01

11

10

00

01

11

10

Q2 Q3

Q1+Q2+Q3+
Z
X=0 1 X=0 X=1
001 100
00
00
001 110
00
00
010 011
00
01
111 011
00
00
111 101
00
00
111 011
00
01
010 100
00
00
001 110
10
00

Q2 Q3

X Q1
00

01

11

10

00

01

11

10

++ Q 'Q Q +
+ '=
+
X'Q
Q21+Q=3 +
X'Q
+ 3X'Q1 Q3 + X QQ
+X
QQ
'+X
Q 'Q33' 1+'QQ2 Q
Q
Q1 += X'Q
X'Q
' 1'++= Q
Q +QQ +
X'Q
2 2
1 122+ Q
2Q31Q
1'Q
11'Q
1Q
2 3= X'Q
3 2+ X3 Q2'QQ
3+3 X=QX'Q
2Q3Q
2 13' + Q 21Q33+ Q 1 Q3 + X Q 1 Q2
3
XQ2'Q3 + XQ2Q3'
+ XQ1'Q2' + XQ1'Q3' +
XQ1Q2
XQ2'Q3' + Q1Q2Q3

Q2 Q3

X Q1
00

01

11

10

X Q1
00

01

11

10

00

01

11

10

00

01

11

10

Z1 = X'Q1'Q2 Q3' .

15.25

Q2 Q3

See FLD p. 656 for the state table.

I. (S0, S1) (S2, S3) (S4, S5, S7) (S0, S2, S3) (S1, S4)
(S5, S6, S7)
II. (S1, S3) (S1, S2) (S3, S4)2 (S2, S5) (S5, S6)2
(S6, S7)
III. (S0, S1, S3, S5, S6) (S4, S7)
S0 = 000, S1 = 001, S2 = 010, S3 = 011, S4 = 111,
S5 = 110, S6 = 100, S7 = 101

Q1Q2Q3
000
001
010
011
111
110
100
101

127

Q1+Q2+Q3+
Z
X=0 1 X=0 X=1
001 011
00
00
001 010
00
00
111 011
10
00
111 011
00
00
110 010
01
00
110 100
00
00
101 100
00
00
110 100
01
00

15.25
(contd)
Q2 Q 3

01

11

10

00

01

11

10

01

11

10

00

01

11

10

01

11

10

00

01

11

10

Q2 Q 3

Q1+

Q2 Q 3

01

11

10

01

11

10

X Q1
00

01

11

10

00

01

11

10

Q2 Q 3

Q2 Q 3

X Q1
00

X Q1
00
Q2 Q 3
00 1

01

11

10

00

01

11

10

Q2 Q3

01

11

10

01

11

10

Q+

11

10

01

11

10

Z 1 = X'Q1'Q2 Q 3'

01

11

10

00

01

11

10

X Q1
00

01

11

10

00

01

11

10

Q2 Q3

K2 = X Q1Q3'
X Q1
00

Z 2 = X'Q 1 Q 3

01

11

10

00

01

11

10

Q2 Q 3

J 3 = Q1' + X'Q2'

01

00

X Q1
00

J 2 = X'Q1Q3 + XQ1'Q2'

Q+

X Q1
00

Q2 Q3

K1 = X Q2 Q 3

J1 = X'Q 2

X Q1
00
Q2 Q 3
00 0

15.26

X Q1
00

X Q1
00

X Q1
00

K3 = Q1 + X Q 2'

Row reduction of the solution to 14.6 given on FLD p. 657 easily gives 4 states. Renaming them gives:
Present
State
S0
S1
S2
S3
Q2

Q1

Next State
00 01 11 10
S0 S1 S1 S0
S0 S1 S1 S3
S2 S3 S2 S0
S2 S3 S2 S3
1

S0

S2

S1

S3

Q1 Q 2

See p. 100 in this manual for the state

table.
I. (S0, S1)3 (S2, S3)2 (S0, S2) (S1, S3)
II. (S0, S1) (S0, S1, S3) (S0, S2, S3) (S2, S3)
III. (S0, S1) (S2, S3)
S0 = 00, S1 = 01, S2 = 10, S3 = 11

Z
0
0
1
1
X1 X2
00

Q1Q2
00
01
10
11

01

11

10

Q1 Q 2

X1 X2
00

01

11

10

Q1+Q2+
01 11
01 01
01 01
11 10

10
00
11
00

Z
0
0
1

10 11 10 11

00
00
00
10

Q2

Q1

00

00

01

01

11

11

10

10

D 2 = X1'X2 + X1 X2'Q 1' + X 2 Q 2

D1 = X1 X2 Q2 + X1'Q1 + X2'Q1

128

Z = Q1

15.27

See answers to 14.14 for the state table.

The four-state table is minimum.
I. (S0, S1)3 (S0, S3) (S1, S2) (S2, S3)3
II. (S0, S1) (S0, S1, S2) (S2, S3) (S0, S2, S3)
III. (S0, S1) (S2, S3)

Q1Q2
00
01
11
10

X1 X2
00
Q1 Q 2
00 0

01

11

10

01

11

10

W A
00

B C

01

11

10

10
00
00
10

Z
0
0
1

11 10 00 10

X1 X2
00

01

11

10

00

01

11

10

Q1 Q 2

Q2

Q2

Q1

Q1

S0

S3

S1

S2

Z = Q1

D2 = X1'X 2' + X1'Q1' + X2'Q 1Q 2

D1 = X1'Q1 + X1 X2'Q 2+ X2 Q 1

15.28

Q1+Q2+
01 11
01 00
01 11
10 11

00
01
01
11

B C

W A
00

01

11

10

B C

W A
00

01

11

10

00

00

00

01

01

01

11

11

11

10

10

10

01

11

10

TA
W A
00

B C

TB

01

11

10

B C

W A
00

TC

01

11

10

00

00

01

01

11

11

10

10

A+

ABC
000
001
010
011
100
101
110
111

A+B+C+
W =0 1
001 011
011 101
100
101
111
000
010
110

111
000
110
001
100
010

B C

0
0
0
1
0
0
0
1
0

1
0
0

Present
State
0
1

0
0
0
0
0
0

2
3
4
5
6
7

Next State
W =0 1
1 3
3 5
4
5
7
0
2
6

129

00

01

11

10

C+

B+

W A
00

7
0
6
1
4
2

0
0
0
1
0
0
0
1
0

0135
1
0
0
0
0
0
0
0
0

I. None
15.28
(contd) II. (4, 7) (6, 7) (2, 4) (2, 6)
Assignment:
S0 = 000, S2 = 100, S4 = 111, S6 = 110, S7 = 101
B C

00

Present
State
S0
S2
S4
S6
S7

S2

S0

01

S7

11

S4

10

S6

Next State
W =0 1
S0 S0
S4 S7
S7 S6
S2 S4
S6 S2

Present
State
000
100
111
110
101

Output
0 1
0 0
1 0
0 0
0 0
0 0

Next State
W =0 1
000 000
111 101
101 110
100 111
110 100

Output
0 1
0 0
1 0
0 0
0 0
0 0

T input equations derived from the transition table using Karnaugh maps:
TA = 0; TB = W'A;
TC = WB + AB';
Z = W'AB'C'
15.29

By inspecting incoming arrows, we get:

D0 = Q0+ = X'Y'Q0 + XYQ3
D1 = Q1+ = XQ0 + Y'Q1 + XY'Q3
D2 = Q2+ = X'YQ0 + X'Q2 + X'YQ3
D3 = Q3+ = YQ1 + XQ2 + X'Y'Q3
S = YQ1 + XQ2
P = X'Y'Q3

X'Y'
0

Y'

S0
0
XY

S1
XY'

0
Y

X'Y

S2
X'Y
0

S3

X'

X'Y'
P

15.30

By inspecting incoming arrows, we get:

Q0+ = D0 = X'YQ0 + Y'Q1 + X'YQ2
Q1+ = D1 = XY'Q0 + XYQ1 + Y'Q2
Q2+ = D2 = XYQ0 + X'Y'Q0 +X'YQ1 + XYQ2
Z = X'YQ1 + XYQ2 + X'YQ2 = X'YQ1 + YQ2

Unit 16 Problem Solutions

16.116.14 See Lab Solutions in this manual.
16.15

16.16

See FLD p. 662 for solution.

16.17 (a) The state meanings are given in the following table:
Name
S0
S1
S2
S3

S0
0

Meaning
No 1s have occurred
One 1 has occurred (an odd number < 2)
Two 1s or an even number of 1s > 2
have occurred
An odd number of 1s > 2 has occurred.

130

S1
0
0

S2
0
0

S3
1
1