Mallard ECE 290: Computer Engineering I - Spring 2007 - HWK #9 Sol.
..
https://mallard.cites.uiuc.edu/ECE290/material.cgi?SessionID=mding3_.
..
1 of 5
4/29/2007 4:27 PM
HWK #9 Solutions
Problem 9.1 (a)
State diagram:
From the T
2
, T
1
, and T
0
equations we get the table shown below:
Q2 Q1 Q0
T2 T1 T0
Q2
+
Q1
+
Q0
+
0
0
0
0
1
0
0
1
0
0
0
1
1
1
0
1
1
1
0
1
0
1
0
0
1
1
0
0
1
1
1
0
0
1
1
1
1
0
0
0
0
1
1
0
1
1
0
1
1
0
1
0
0
0
1
1
0
0
1
0
1
0
0
1
1
1
1
1
0
0
0
1
The counter counts in the Q
2
Q
1
Q
0
sequence 000, 010, 110, 100, 101, 000, .
.. .
(b)
This implementation would not be self-starting, because if it starts in any of 001, 011, 111, it will be stuck "forever" in these don't care states.
Specifically, notice that from 011 we go to state 111 and from 111 we would cycle back and forth between 001 and 111.
(c)
We need to examine T
1
. From the above truth table, we can write out the T
1
K-map. Note that 001, 011, and 111 are don't cares.
Q1Q0
00
01
11
10
Q2
0
1
x
x
0
0
0
x
1
1
T1 with don't cares
Q1Q0
00
01
11
10
Q2
0
1
1
0
0
0
0
1
1
1
T1 as implemented
We want to modify our T1 expression in order to make the counter self-correcting. Since we are told we can add only a single literal to T1, we
know that our modified T1 K-map will have two loops: one of size 1 and one of size 2.
From state 111: Our counter goes to state 001. If we change T1 to 0, then from state 111 we would go to state 011. Since 011 is also an
unused state, we would still be stuck in the unused states (001, 011, 111).
From state 011: Our counter goes to state 111. If we change T1 to 1, then from state 011 we would go to state 101. This would indeed
make our counter self-correcting, but we added an extra term (with 2 literals).
From state 001: Our counter goes to state 111. If we change T1 to 0, then from state 001 we would go to state 101 and thus have a