问题标签 [system-verilog-assertions]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
system-verilog - 是否可以在 VPI 回调中调用导出函数
我有以下情况:我有一个在触发断言时触发的 vpi 回调。在这个回调中,我想调用一个导出系统verilog函数,我试图在导出之前设置SvScope,但模拟器给了我一些错误。
simulation - 如何获取 RTL 中的属性状态
在某些情况下,注入错误会触发断言失败。所以,我通过开关通过 $testplusargs 关闭这个断言。有没有办法在测试用例结束时获取属性状态(空真,真真或失败),例如通过 PLI 或模拟器提供的其他方式(我正在使用 vcs)。有人对此有什么想法吗?非常感谢。
system-verilog - 系统verilog期望行为
我尝试将期望与以下属性一起使用
预期会阻塞直到在 100ns 从 0 变为 1 吗?
system-verilog-assertions - n*8 循环性能稳定
我正在学习 SVA 并试图解决这个问题:数据只能每 8 个周期更改一次。
我知道我可以通过添加一个计算时钟周期的计数器并以这种方式对其进行检查来进行检查:
但是,我对仅使用 SVA 的方法很感兴趣。到目前为止,我正在考虑类似的事情(无法编译)
我觉得有一种优雅的方式使用类似的方法;或使用递归属性。但是,我找不到它。
system-verilog-assertions - 系统 Verilog 断言,SVA
我正在为握手协议编写断言,其中可以有背靠背的请求和确认。Acks 可以在 req 之后的 1 到 5 个周期之间出现。我如何使用断言来确保每个 req 有 1 个 ack,同时还要考虑 req 或 ack 上的故障?
属性 p1: @(posedge clk) req ##[1:5] ack ; 最终属性
属性 p2: @(posedge clk) $rose(ack) |-> $past(req,5);
我不确定这是否保持 req 与 ack 的一对一映射。
verilog - 在verilog中输入0.0047等十进制值
我有一个十进制值数组,如 0.0047、-45.34 等。有没有办法可以在 verilog 中添加它并自动查看它的 16 位转换值?
verilog - SVA 语法:##1 a |-> b 与 a |-> $past(b) 之间的区别
这两个表达式有什么区别:
相对
在第一个中,将b
使用当前周期的值还是下一个周期的值?
system-verilog - SVA 语法:将 $past 与向量/数组选择一起使用,即 $past(a[a_select])
假设我有以下内容:
假设在当前周期a_select
中为“2”,而在前一个周期中为“1”。a[2]
以上是从上一个周期评估还是从上一个周期评估a[1]
?
如果它将a[1]
来自上一个周期,如果我需要它来自上一个周期怎么办a[2]
- 即我希望选择来自当前周期,但它应该从上一个周期的向量值中选择位。如何才能做到这一点?
uvm - [SVA]:有没有办法跳过 SVA 的第一次评估?
我有以下财产:
我的问题是,在硬件 RST 之后,signal_b 上升(正常行为)但断言失败,我希望仅在以后评估此检查。
我想与first_match()一起工作,如下所示:
这样我就跳过了该属性的第一个匹配项,但编译器会生成语法错误。
有没有办法在特定次数的迭代后跳过 SVA 的评估?
谢谢
system-verilog-assertions - 这两个断言有什么区别?
假设我有两个属性;
现在,如果我这样断言:
a1 和 a2 有什么区别吗?