如何在 Riviera-Pro 中中断 VHDL 严重错误或警告的模拟

How to break simulation on VHDL severity ERROR or WARNING in Riviera-Pro

默认情况下,riviera 模拟器会在严重级别 FAILURE 上停止。根据测试台,我想在错误或警告时中断。 Aldec 自己声明这可以使用 breakassertlevel TCL 变量来完成: https://www.aldec.com/en/support/resources/documentation/faq/1070

不幸的是我无法让它工作。我已经尝试在使用 vsim 加载顶层之前和使用 run 进行 运行 模拟之前设置此变量。将变量设置为 2 绝对没有效果,并且模拟会继续通过严重级别为 ERROR 的断言。

也有人希望这个变量存在并默认设置为 3(失败),但事实并非如此。

因此,我想知道我是否做错了什么,或者我是否只是找到了一个无效功能的文档。其他人有使用 breakassertlevel TCL 变量或使用其他机制获得相同结果的经验吗?

我对涉及在 GUI 中手动更改某些设置的解决方案不感兴趣,因为我需要在批处理流程中控制它。此外,不同的测试平台需要在警告时停止,而其他测试平台需要在错误时停止,因此设置它 "once and for all" 不是一个选项。

来自 Aldec 支持团队:

对于 Riviera-PRO,请改用 vhdlassert 命令,即:

vhdlassert.break错误