微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 关于三段式状态机综合问题

关于三段式状态机综合问题

时间:10-02 整理:3721RD 点击:
请教一个状态机的问题,我是用三段式方法写的状态机,每个状态我定义为parameter型(例如parameterREAD_DATA= 4‘h3),在Quartusii12.0环境中综合的时候,会报出警告,Warning (13012): Latch cfg_5338_if:cfg_5338_if_inst|nxt_state.READ_DATA_6656 has unsafe behavior
Warning (13013): Ports D and ENA on the latch are fed by the same signal cfg_5338_if:cfg_5338_if_inst|clk_counter[8]
我上网搜说是出现锁存现象,我在case的时候也使用了default,应该不会出现锁存吧,那为什么还会这样呢?这样的警报能否有什么好的方法消除呢?如果我的状态很多,就会出现N多警告。希望各位高手能给出好的方法帮助我消除这些警告。谢谢!

所谓安全的状态机, 状态会出现呆滞。 根本还是状态转换表的问题。  
某个状态不应为任何信号发生改变,视为状态呆滞现象。

quartus工具综合设置里,有一个安全状态及的选项,你要勾上。

一段写完就好了,保证无任何Warning而且Quartus跑得很欢。



   不好用,还是会出这些警告

比较喜欢写一段式的状态机

也有疑问


状态机是三段式好还是一段式好?



   一般情况下是三段

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top