Stumped on a state machine design

In summary, the conversation discusses designing a state machine that goes through a specific sequence repeatedly. The student considers using a 4-bit counter as input and sets up truth tables, but encounters a problem in the sequence after the first complete 3-2 sequence. They then consider using a 3-bit counter that stops at 5 and starts back at 1, and someone suggests using a simple microprocessor instead. The student later solves the problem by using a second state machine for the input.
  • #1
33
0

Homework Statement



Design a state machine that repeatedly goes through the following sequence: three repeats of 0,2,4,6 followed by 2 repeats of 1,3,5,7. An observer watching the machine should see the states over and over: 0,2,4,6,0,2,4,6,0,2,4,6,1,3,5,7,1,3,5,7...


The Attempt at a Solution




I've decided to use a 4 bit counter as the input to the machine. I have set up the following truth tables:


EDIT: it is chewing my formatting to pieces. The values on a line by themselves are the counter values.


Counter current state next state

00
000 010
001 011
010 100
011 101
100 110
101 111
110 000
111 000
01
000 010
001
010 100
011
100 110
101
110 000
111
10
000 010
001
010 100
011
100 110
101
110 001
111
11
000
001 011
010
011 101
100
101 111
110
111 001



I seem to run into a problem after the first complete 3-2 sequence.(Thus why the truth table isn't completed.) When the counter is at 00, 01, and 10, the sequence is at 0246. It then swaps to the 1357 sequence at counter values 11 and 00. After that, instead of counting three more 0246 sequences, it swaps back to 1357 at the end of counter value 10. This problem would be simple if the sequences alternated every 4 times but, my machine seems to overlap itself when the counter runs back through the values. Any ideas how to correct the problem?
 
Physics news on Phys.org
  • #2
I may have found an alternate way to solve this. Does anyone know if there is a way to make a 3 bit counter stop at 5 and start back over at 1?
 
  • #3
Do you have to use a counter? It seems this would be a very easy problem with a simple microprocessor.
 
  • #4
Didn't see the reply in time but I solved it anyway. I decided to use a second state machine for the input that rotated through 5 states of 0,0,0,1,1


Thanks for the help.


JH
 

Suggested for: Stumped on a state machine design

Replies
1
Views
498
Replies
8
Views
696
Replies
10
Views
945
Replies
1
Views
846
Replies
10
Views
1K
Replies
1
Views
490
Replies
2
Views
1K
Replies
2
Views
1K
Back
Top