I understand FSM, how they are constructed and implemented in verilog and the different kinds (Mealy vs Moore) but I have a problem in identifying when to actually use a FSM to solve a verilog problem ?? Are there any guidelines ?
Thank you
Complex sequential design are good candidates for FSM. Anything that can be modeled using a datapath and a controller is a work for a FSM too. This implies that almost any hardware implementation of an algorithm can be done with a FSM.
Examples of what can be normally done with a FSM includes: