0

在我的环境中,我看到太多来自 vr_ad 的消息。典型的“令人不安”的例子:

三个连续的消息,都通知一次访问——从地址 0x5 读取

[14] C_BUS: (info - Fetch) Fetch EX_CBUS_MAP vr_ad_map-@1, address: 0x00000005
[14] C_BUS: (info - Fetch) Fetch XCORE vr_ad_reg_file-@2, address: 0x00000005
[14] C_BUS: (info - Fetch)在 XCORE vr_ad_reg_file-@2 中获取 EX_PROXY_REG vr_ad_reg-@7,地址 0x00000005,数据 0x00000008

为什么会有这么多消息?我怎样才能删除这些消息?

4

1 回答 1

1

似乎您使用的详细程度为 MEDIUM 甚至更高。为了减少消息的数量,您可以将详细程度更改为 LOW(然后您将只看到最后一条消息 - 来自 vr_ad_reg 的消息,而不是来自其容器的消息),甚至更改为 NONE - 然后您将只看到关键消息。

要更改详细程度 - 您可以使用 set message 命令或 message_manager api。(消息配置是每个实例的 - 因此您可以为每个子环境设置不同的 vr_ad 消息详细程度)

例如 -

specman>set message sys.env.sub_env1 -tag=VR_AD_MSG HIGH

或者

extend my_env {
    post_generate() is also {
        message_manager.set_screen_messages(me,
                                            VR_AD_MSG,
                                            FULL);
    };
};

您可能想要做的另一件事是根据“方向”过滤消息——更新、获取和比较和更新的不同设置。例如 - 避免收到写入后的消息 (vr_ad update() ),但查看来自 compare_and_update() 的消息 -

vr_ad remove update messages
vr_ad add compare messages
于 2015-07-15T13:34:24.460 回答