微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 状态机编码仿真出问题?

状态机编码仿真出问题?

时间:10-02 整理:3721RD 点击:
在用verilog写状态机的时候,为了程序的可读性,一般使用parameter来定义状态。例如,parameter  Initial=3'b000, Detecting=3'b0001;我在用modelsim仿真时发现,状态总是不读,状态变化没有规律。后来发现不使用parameter来编码状态(直接写一堆数字表示状态),状态就正确了。想请问一下有经验的前辈,这是什么原因?是modelsim软件的原因还是程序的原因?

呃,不知道!不过为什么你要用Initial关键字做参数名呢,参数之类的我都喜欢用大写,还有后面的3'b0001真不爽,去掉一个零。

要不要試試system verilog的enum



   我是这样定义的:parameter Initial=4‘b0000, Detecting=4'b0001; 是应该避免用Initial这个关键字,没注意。直接用数字表示状态是没错的,不管了,就用数字表示吧。


不会system verilog额,好高级。

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

网站地图

Top