??? 05/30/08 21:02 Read: times |
#155308 - not synthesizing correctly Responding to: ???'s previous message |
Jez Smith said:
I don't want to post the code as its proprietary but basically a Mealy state machine coded with two case statements fails to synthesise correctly. I've forgotten the differences between Mealy and Moore and whatever state machines, because those differences are really academic. I always write my state machines as a single clocked process. The dual- (and triple-!) process versions are unmaintainable recipes for disaster. They're used only in examples, never in real-world apps. Anyways, sometimes state machine failures occur when its inputs are not synchronized to the state machine's clock. Also make sure that your state machine has a proper reset and proper reset state. If using Verilog, enforce the "full-parallel" option. I always tell the synthesizer to build "safe" machines. -a |