文章目录
x态带来的问题
仿真代码时,如果模块输出信号或内部某些关键寄存器出现x态需要及时检测。
我个人常用的对比dut和ref输出信号的语句为:
wire Error;
reg [31:0] Error_Cnt;
//--------------------------
assign Error = !(dut.data_o==ref.data_o);
always@(posedge clk) begin
if(Error) Error_Cnt <= Error_Cnt+1'b1;
end
initial begin
wait(tb_case.complete); // 代码中没有体现tb_case的内容,该信号指示仿真结束。
if(Error_Cnt>0) $display("/n === Failed === /n");
else $display

文章讲述了在Verilog编程中,x态信号的产生、特性以及如何在仿真过程中检测和处理dut数据输出中的x态。作者介绍了比较运算符和位运算对x态的处理方式,并给出了两种不同的错误检测方法:使用ref数据对比和利用逻辑运算判断x态输出。
最低0.47元/天 解锁文章
3561

被折叠的 条评论
为什么被折叠?



