Modelsim仿真中显示状态机名称而不是状态编码

问题:仿真的时候看到状态名字,而不仅仅是状态编码?

1. 另外定义一种寄存器,存放状态变量state_name,长度根据状态名称长度而改变(状态名称字符数x8);在每个状态执行的语句中加入state_name <= "IDLE";类似的一句语句;仿真时添加state_name进行观察,使用ASCII RADIX。

(1)序列检测电路部分仿真程序

(2)自动售货机部分仿真程序

 

(2)采用编译指示语句

 1 `ifdef SIMULATION 
 2         parameter S_idle        = "idle  "; 
 3         parameter S_decode      = "decode"; 
 4         parameter S_start       = "start "; 
 5         parameter S_wait        = "wait  "; 
 6         parameter state_wid_msb = 47; 
 7 `else 
 8         parameter S_idle        = 4'b0001; 
 9         parameter S_decode      = 4'b0010; 
10         parameter S_start       = 4'b0100; 
11         parameter S_wait        = 4'b1000; 
12         parameter state_wid_msb = 3; 
13 `endif 
14 
15 reg    [state_wid_msb:0] state;

 

参考资料:
  (1)陪您一起学习FPGA-郝旭帅团队_哔哩哔哩_bilibili

  (2)(42条消息) 在Modelsim仿真中显示状态机名称_a956969071的博客-CSDN博客 三种方法供选择

  (3)FSM状态机仿真设计-如何查看状态 - 天马行空W - 博客园 (cnblogs.com)

 

posted @ 2021-07-25 15:25  豌豆茶  阅读(275)  评论(0编辑  收藏  举报