在仿真中,我们有时候会对信号进行force的操作,从而实现某些特定的仿真场景建立,亦或者,有时候进行临时的一个workround,先行验证通过之后,通知Designer 进行RTL 的更新。
但是在仿真波形中,不能直接从波形上看出,何时何地这些信号被驱动过,是因为前级电路的驱动,还是因为force的原因的驱动。从而使debug起来非常的不友好。
其实在verdi中,是可以直接看到force信号的信息的。这样的话,就会方便我们去debug force的信号。这里特别提出,在基于UVM的验证平台中,UVM提供了后门访问方式的force机制,通过这种机制添加的force , 除了深挖log 文件打印信息之外,几乎很难发现一些被force后的信号。
要想要verdi中,查看force信号,就需要vcs在仿真时候,生成fsdb波形时,加入force信号的波形信息。只需要在仿真参数中,加入 +fsdb+force 参数即可。当fsdb波形生成后,直接verdi 加载波形,就可以直截了当的在verdi中查看到信号的force信息。
如以下代码: