Unformatted text preview: You're designing a baseball scoreboard. A sub-problem involves keeping track of strikes and fouls. A strike occurs when the batter swings at the ball and misses, or when the batter does not swing at a \good" pitch. If a batter earns three strikes during his/her turn at bat, he/she is \out". A foul occurs when the batter hits the ball, but the ball does not land in \fair" territory. Fouls are counted as strikes until the batter earns two strikes. Then fouls are ignored. The state diagram below captures these rules. The null input indicates neither a strike nor a foul occurred during that clock cycle. The strike and foul input cannot occur simultaneously, so the output for this case is don't care.
null / 0 strikes strike / foul / null / Strike State Machine 1 strike null / strike / strike / out 2 strikes foul / foul / Part A Using the state diagram above, complete the state table for this diagram. The inputs are strike,
foul, and state bits S1 and S0 . The outputs are next state bits NS1 and NS0 , and out. S1 S0 strike foul NS1 NS0 out
0 0 0 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 Part B Determine the simpli ed logical expression for NS , NS , and out using your state table in part
A. Complete the Karnaugh maps below, identify the prime implicants, and express the result.
NS1 S1 S0 strike S0 strike foul foul foul foul foul foul S0 strike foul foul foul S1 strike S0 strike S0 strike S1 NS0 S1 strike S0 strike S1 out S1 strike
1 0 NS1 = NS0 = out = Part C Implement this state machine using your expression from part B, plus two register cells. Use an icon for a one bit register cell. You do not have to show the implementation of a register here. Your logic should be simpli ed. ...
View Full Document
- Spring '07
- foul S1 strike, strike foul NS1