Guest
As I have worked on several hobbyist fpga projects I have often run
into the situation of whether I should use one large state machine or
break things up into several smaller state machines.
On the one hand if I go with one large SM then common things like data
output lines or status bits could be shared. If I go with several
smaller SM's in different processes then data output would need to be
or'ed together since registers can not be shared.
Beyond maybe maintainability issues, is there any reason to choose one
over the other.
I have tended towards the one big state machine, but maybe I should not
be.
into the situation of whether I should use one large state machine or
break things up into several smaller state machines.
On the one hand if I go with one large SM then common things like data
output lines or status bits could be shared. If I go with several
smaller SM's in different processes then data output would need to be
or'ed together since registers can not be shared.
Beyond maybe maintainability issues, is there any reason to choose one
over the other.
I have tended towards the one big state machine, but maybe I should not
be.