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 selfstarting, 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
Kmap. 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 selfcorrecting. Since we are told we can add only a single literal to T1, we
know that our modified T1 Kmap 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 selfcorrecting, but we added an extra term (with 2 literals).
This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
This is the end of the preview.
Sign up
to
access the rest of the document.
 Spring '08
 Staff
 Mallard ECE

Click to edit the document details