Questasim-是否可以记录和重新加载新设计的信号?

问题描述 投票:-1回答:1

我正在运行包含许多组件的测试(UVM)。这是一项顶级测试,但是我正在调试内部模块,并且仅对连接到该模块的接口的信号感兴趣。因为这是一个TL,所以到我感兴趣的时间点需要很长时间。这些信号是其他模块的产物,但是我现在对那些模块不感兴趣。

目前,我正在使用Questa sim,所以我想知道是否存在一种方法来存储这些信号中的事件,以便仅重新运行这些信号。因此,我的目的是更改模块,重新编译并直接使用新版本上的输入,而不必实际运行整个测试并等待那么长时间。

verilog system-verilog uvm questasim
1个回答
1
投票

[我曾经在一家大芯片公司工作,他们称其为“保存和恢复”。不知道您的EDA供应商叫什么。在启动模拟结束时,您应该能够获取信号快照的“向量变化转储”或“ VCD”文件,并将其转换为电线上的0次put。您可能需要将导线force保持几个时钟,然后释放force

关于您与UVM测试基础结构交互的评论,我不确定一个节点上多个putforce的行为。我猜想最后一个赢。但是,力是非常非常特定于节点的。如果您在下游,则重置force将获胜并被锁定到设计中。如果您的设计看起来像这样,则重置代码中的force <path> 0将获胜,因为它位于下游:

                +--------------------------------------------+
                |  TopDesign.sv  +------------------------+  |
                |                | SubBlock.sv            |  |
                |                |                        |  |
           1    | 1              |  0 +--------------+ 0  |  |
           ----->---------------->----> register Foo >--  |  |
           ^    |                |  ^ |              |    |  |
    UVM Driver  |                |  | +--------------+    |  |
                |                +--|---------------------+  |
                +-------------------|------------------------+
                                    |0
                                   Reset force

如果接口上的UVM基础结构force,然后重置初始化force在下游节点上,它将合成为同一根导线,那么下游节点force将获胜,因为这实际上将被推翻为逻辑。

您仍然必须将UVM检查器或记分板初始化为重置后状态。

© www.soinside.com 2019 - 2024. All rights reserved.