Forum Discussion
Altera_Forum
Honored Contributor
16 years agoClock everything with a single clock. Again, clock all state machines with the same clock.
You should pass control signals (be they state variables or triggers or whatever) between state machines to synchronize their logic. For instance, one state machine can pass a "start" signal to another state machine. The "start" signal would obviously be derived from the state and possibly other conditions of the first state machine. The second state machine could then pass a "done" signal back to the first state machine to allow it to continue. Ripple clocks have their place but in all cases they are deliberate and by design. If you have a ripple clock show up in your design and you didn't mean to put it there, it shouldn't be there. Jake