system-verilog-assertions相关内容

Systemverilog 断言信号在仿真过程中至少出现 1 次为真

我在尝试编写此断言时遇到了问题.我试图断言信号 B 必须在信号 A 为真后至少出现 1 次为真的情况. 我写的断言如下: 示例:断言属性(@(posedge clk) 禁用 iff(reset)|->##[0:$] B[->1]) else `uvm_error(....) 问题是,如果在模拟信号B在A为真后永远不会为真,则不会执行uvm_error.我期望它被执行,并且模拟报告消息: ..
发布时间:2021-09-04 18:49:20 其他开发

在断言中使用“sequence.triggered"时重置意识

我有一些使用序列的 triggered 属性的断言.这对于检查“当 X 发生时,Y 一定在过去某个时间发生过"形式的属性很有用. 举个简单的例子: 给定三个信号,a、b 和 c,c 只允许在 a 在 3 个周期前为高电平,b 在 2 个周期前为高电平.这是满足此属性的跟踪: 为了能够检查这一点,我们需要一个辅助(时钟)序列,它应该在 c 合法的地方匹配: 序列 two_cyc ..
发布时间:2021-09-04 18:49:02 其他开发

使用 System-Verilog 进行串行测试和断言

我有一个 verilog 模块的串行输出,我想使用 system-verilog 进行测试. 给定正确的串行输入“SI",值为 8'h9A,名为“SO"的输出将输出类似 8'hC6 的内容. 是否有一种简单的方法来编码/解码串行 IO,而无需明确描述每个信号? 例如: assert property @(posedge clk) $rose(EN) |->##[1:3] SI ..