首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >modelSim VHDL某些输入信号未出现在目标窗口中

modelSim VHDL某些输入信号未出现在目标窗口中
EN

Stack Overflow用户
提问于 2015-07-29 15:09:16
回答 3查看 6.7K关注 0票数 3

我正在做一个用vhdl实现的turbo解码系统。系统没有输出预期的结果,所以我需要对其进行调试。在我的解码器系统架构中,我实例化了块组件,如下所示:

代码语言:javascript
复制
inst_decoder : for i in 0 to MAX_BSIZE -1 generate

  signal llrs_valid_upper: std_logic ;
  signal llrs_in_upper : llrs_rec;
  signal llrs_valid_lower: std_logic;
  signal llrs_in_lower: llrs_rec;


begin


  -- get the corresponding llrs from the input_llr buffer, and set the llrs_valid to 1
  llrs_in_upper.system_llr <= input_llr(i); 
  llrs_in_upper.parity_llr <= input_llr(MAX_BSIZE+NUM_ENC_REGS+i);
  llrs_in_upper.extr_llr <= extr_upper_int(i);
  llrs_valid_upper <= input_llr_valid;

  inst_upper_algorithmic_block: component tcdec_algorithmic_block
    port map (
      clk => clk,
        rst => rst,
          en  => en_int,

          alpha_in => alpha_upper_int(i),
          beta_in => beta_upper_int(i+1),

          llrs_valid => llrs_valid_upper,
          llrs_in  => llrs_in_upper,

          init    => init,
          alpha_init => ALL_ZEROS,
          beta_init => ALL_ZEROS,

          extr_out  => extr_lower_int(de_il_table(i)),
          alpha_out => alpha_upper_int(i+1),
          beta_out => beta_upper_int(i)

    );

  llrs_in_lower.system_llr <= input_llr(il_table(i));
  llrs_in_lower.parity_llr <= input_llr(2*(MAX_BSIZE+NUM_ENC_REGS) + NUM_ENC_REGS + i);
  llrs_in_lower.extr_llr <= extr_lower_int(i);
  llrs_valid_lower <= input_llr_valid;

  inst_lower_algorithmic_block: component tcdec_algorithmic_block
    port map(
      clk => clk,
      rst => rst,
      en => en_int,

      alpha_in => alpha_lower_int(i),
      beta_in => beta_lower_int(i+1),

      llrs_valid => llrs_valid_lower,
      llrs_in => llrs_in_lower,

      init => init,
      alpha_init => ALL_ZEROS,
      beta_init => ALL_ZEROS,

      extr_out => extr_upper_int(il_table(i)),
      alpha_out => alpha_lower_int(i+1),
      beta_out => beta_lower_int(i)

    );  
end generate inst_decoder;

当尝试调试设计时,每个模块的一些输入信号没有出现,即rst信号、llrs_in、llrs_valid…

让它更奇怪的是,第一个块(对于i=0,inst_upper_algorithmic_block)有所有的输入,其余的没有。

我试着重新启动计算机,重新启动modelSim,关闭和打开项目,但都没有用。

我还试着在优化和不优化的情况下运行设计,得到了相同的结果。

如有任何帮助,我们将非常感谢:)

EN

回答 3

Stack Overflow用户

发布于 2015-12-07 22:06:34

尝试使用-novopt -O0编译您的设计。此外,我相信您可以通过Tcl命令将信号手动添加到波形中(据我所知,需要测试对象列表中缺少的信号。):

代码语言:javascript
复制
add wave "sim:/<testbench_name>/inst_upper_algorithmic_block/clk"

ModelSim会添加信号或者告诉你为什么它不能被添加。

但是自从事情“开始工作”以来,我相信你已经“修复”了你的设计(有时ModelSim并不能帮助我们理解哪里出了问题)。

票数 0
EN

Stack Overflow用户

发布于 2016-11-09 19:36:43

删除'simulation‘目录,关闭modelsim ->,重新打开并模拟。

它为我显示了丢失的信号。

票数 0
EN

Stack Overflow用户

发布于 2021-09-02 13:13:39

开始模拟时,取消选中弹出对话框中的复选框(如黑色箭头所示)。这对我很管用。enter image description here

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31693541

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档