You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vivado波形显示异常求助:输入信号为Z态、输出为X态

Vivado仿真输入Z态、输出X态的问题解决

你的仿真中输入信号a、b呈Z态,输出w、x、y、z呈X态,核心原因是被测模块DCP_21的输入端口未被有效驱动,大概率是仿真时未将测试台DCP_2_tb设为顶层模块,导致测试台的激励信号完全没起作用。

1. 修正仿真顶层设置

  • 打开Vivado的Simulation界面,在Sources窗口的Simulation标签下,右键点击DCP_2_tb,选择Set as Top。
  • 重新运行行为仿真(Run Simulation -> Run Behavioral Simulation),测试台的激励信号会正常驱动被测模块的输入端口。

2. 优化测试台代码(可选)

原测试台的多个initial块可以合并,让逻辑更清晰,避免不必要的执行顺序歧义:

module DCP_2_tb;
reg A; 
reg B;

wire W;
wire X;
wire Y;
wire Z;

DCP_21 inst0(
        .a(A),  
        .b(B),  
        .w(W),  
        .x(X),  
        .y(Y),  
        .z(Z)   
    );

initial begin
    // 初始化激励信号
    A = 0;
    B = 0; 
    // 200ns后结束仿真
    #200 $finish;       
end 

// 生成翻转激励
always #50 B = ~B;
always #100 A = ~A;

endmodule

3. 验证结果

重新仿真后,你会看到:

  • 输入A、B按设定周期翻转(A每100ns翻转一次,B每50ns翻转一次)
  • 输出W、X、Y、Z会根据DCP_21的逻辑正确变化,不再是X态

内容的提问来源于stack exchange,提问作者Anushka Nair

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 21:07:34