State Machine Design for Repeating Sequence: 0,2,4,6,1,3,5,7 with 4 Bit Counter

AI Thread Summary
The discussion focuses on designing a state machine to repeat the sequence 0,2,4,6 three times followed by 1,3,5,7 twice, using a 4-bit counter. The user encountered issues with the state transitions, particularly when the counter returned to certain values, causing the sequences to overlap incorrectly. They explored the possibility of using a 3-bit counter that resets after reaching 5 to simplify the design. Ultimately, the user found a solution by implementing a second state machine that cycles through five states to manage the sequence effectively. The conversation highlights the challenges of state machine design and the potential for alternative approaches.
Rocket254
Messages
33
Reaction score
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
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?
 
Do you have to use a counter? It seems this would be a very easy problem with a simple microprocessor.
 
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
 
Back
Top