如何在序列块中使用$ display语句,在System Verilog Assertions(SVAs)中显示一些信息?

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

我希望序列块在执行时显示一些信息。

e.f.:

sequence A;
 a;
 $display ("Signal A asserted here");
endsequence

我试过这段代码,但遇到以下错误:

在需要函数的地方调用Task $ display。请更正任务调用并重新编译。

我该如何克服这个问题?

system-verilog vlsi asic system-verilog-assertions
2个回答
2
投票

您可以使用语法$display在序列表达式中调用(sequence_expr, sequence_match_item),其中sequence_match_item可以是operator_assignment,inc_or_dec_expression或subroutine_call。

sequence A;
 (a, $display("Signal A asserted here"));
endsequence

请参阅IEEE Std 1800-2012§16.11调用序列匹配的子程序,该序列具有在序列中调用$display的直接示例。


0
投票

您可以对$ display语句使用“always”块。

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