# 关于SignalTap中的节点查找不到的问题

    技术2022-07-17  116

    关于SignalTap中的节点查找不到的问题

    在选择需要查看的信号节点时,有一个信号节点,我翻遍了所有的模块,始终未能看到它的影子,然后上网查了一下,找到了问题所在。

    因为在使用quartus编译综合时,某些信号会被优化掉,就会导致在查找此信号节点时,会发现找不见。

    解决方法:

    1.对于 wire 型

    有两种方法: a:wire [31:0] chan_ctrl_data /* synthesis keep* / ; 在定义的时候加上 /* synthesis keep */,需要注意的是该语句必须放在分号前面。

    b:(* keep *) wire <net_name>;

    都是为了防止相关wire型变量在综合时被优化或者是被省略。

    2.对于 reg 型

    跟reg相关的synthesis attribute,共有两种,分别是/* synthesis noprune*/和 /* synthesis preserve*/,两者的差别如下: (a)reg r_name/* synthesis noprune*/; 避免 Quartus II 优化掉没output的reg。 (b)reg r_name/* synthesis preserve */;避免 Quartus II 將reg优化为常数,或者合并重复的reg。

    这是我进行修改过的: 然后我成功的找到了chan_ctrl_data这个节点,不过,添加进去后,发现是红色的(这个问题我还在学习中)

    希望大佬看到能给出指导,谢谢!

    转载于: https://blog.csdn.net/weixin_30267785/article/details/96729139 https://blog.csdn.net/yhs18200259681/article/details/98782959?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.edu_weight&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.edu_weight

    Processed: 0.010, SQL: 10