ModleSim仿真的时候有一个信号不能被赋值

2019-07-15 21:58发布

各位大神,

我的一个ModleSim代码如下,其中的rst信号初始化拉低,几个延时后不能拉高,搞不懂为什么,还望各位提供点儿思路!谢谢!仿真波形在代码下边,rst一直不能拉高。
  1. `timescale 1ns/1ps

  2. module uart_tb();

  3.   reg clk_50M;
  4.   reg rst;
  5.   reg rs232_rx;
  6.    
  7.   initial begin

  8.     clk_50M = 0;
  9.     forever #10 clk_50M = ~clk_50M;
  10.   end
  11.   
  12.   initial begin
  13.     rst = 0;
  14.     #500 rst = 1;
  15.     #1000 $stop;
  16.   end
  17.   
  18.   initial begin
  19.     rs232_rx = 0;
  20.     forever #15 rs232_rx = ~rs232_rx;
  21.   end
  22.   
  23.   my_uart_top my_uart_top0(
  24.     .clk(clk_50M),
  25.     .rst_n(rst),
  26.     .rs232_rx(rs232_rx)
  27.     );
  28.   
  29. endmodule
  30.   
  31.    
复制代码
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
阴阳家少司命
1楼-- · 2019-07-16 00:52
代码似乎没什么问题,一个可能的原因是你仿真的时间不够长,你其它信号的变化频率远远高于rst,你看到了其它信号的变化,但是500延时还没到,所以没看见高电平。你加长仿真时间,拉小时间轴把波形缩小,看看情况。
阴阳家少司命
2楼-- · 2019-07-16 05:51
事实证明没有问题,应该就是你仿真时间不够长。
2017-03-06_102816.jpg
阴阳家少司命
3楼-- · 2019-07-16 05:57
还有一种可能,就是你的另外一个文件设计有问题,你的rst_n设计上出现接地了,所以永远拉不高。。。。。。。
carolus1
4楼-- · 2019-07-16 08:59
 精彩回答 2  元偷偷看……
牛哥哥要炸天
5楼-- · 2019-07-16 13:31
这个没问题 问题应该是你的do文件或fdo文件里设置的仿真时间小于rst拉高的时间
海的潜力
6楼-- · 2019-07-16 16:59
有仿真图的话就比较好分析了

一周热门 更多>