ModelSim Altera 10.1d - verilog我无法获得波形

时间:2017-05-22 10:12:23

标签: compiler-errors verilog modelsim waveform intel-fpga

我有一个基本的双稳态代码,我编译它没有任何错误,但是当我在运行(f9)后想要添加波形时,我的altera程序没有做任何事情...... 这是我的代码:

module bistable(input a, 
            input rst, 
            input ck,
            output reg out);
always@(posedge ck) 
if(!rst) out<=0; 
   else out<=a;         
endmodule

测试模块:

module test();
reg a; 
reg ck; 
reg rst; 
wire out; 
bistable bis(.a(a),.ck(ck),.rst(rst),.out(out));

initial begin
ck=0;
forever ck=~ck;
end
initial begin
a=1;
rst=0;
#14 rst=1;
#20 rst=0;
#10;
$stop;
end
endmodule

我没有时钟的程序,我的波形看起来非常好,但这不是我认为是我的问题的原因。

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

forever ck=~ck;是零时无限循环。模拟将不会移动到下一个时间步,直到当前时间步的所有操作都完成为止(当零时无限循环时这是不可能的。)

为您的时钟添加时间延迟会有所帮助。例如:forever #5 ck=~ck;

检查您的日志文件。某些模拟器在遇到无限循环时会报告错误或警告。