Altera_Forum
Honored Contributor
10 years agoQuartus filters out essential parts of state machine?
Hi,
Recently faced very strange issue in my design. I have state machine, which goes through multiple steps, and at the end there is kind of "Delay" state and "SetReady" state... Problem is that these states are optimized away for some reasons... I can understand that from analyzer point of view they probably do not have any value, but as a result all timings are screwed. After days of debugging I found that if SignalTap is enabled, everything works perfectly (Heisenbug?) - that leads me to solution, which if really crappy, but worked - I introduced external signal "ExternalPullUp" and make it as conditions for all transitions between states. Ideally I don't want to ask customers to have additional signal on their PCBs for that purposes. Next thing I tried is I create internal counter and after 100 clocks I set ExternalPullUp to '1' instead of external pin, kind of enabling device. That worked for a while but now I got this issue back again. I am not really expert in optimization, maybe you can suggest something (which works for Xilinx as well) "ExternalPullUp" pin solution is last resort, will go live if I could not fix it properly. P.S. I can attach code, but it is useless as it came from VHDL generator and not really human readable. Thank you. Regards, Evgeny.