我希望序列块在执行时显示一些信息。
例如:
sequence A;
a;
$display ("Signal A asserted here");
endsequence
我尝试了这段代码,但遇到了以下错误:
任务 $display 在需要函数的地方调用。请更正任务调用并重新编译。
我该如何克服呢?
我希望序列块在执行时显示一些信息。
例如:
sequence A;
a;
$display ("Signal A asserted here");
endsequence
我尝试了这段代码,但遇到了以下错误:
任务 $display 在需要函数的地方调用。请更正任务调用并重新编译。
我该如何克服呢?
您可以使用以下语法调用$display
序列内表达式,其中 sequence_match_item 可以是 operator_assignment、inc_or_dec_expression 或 subroutine_call。(sequence_expr, sequence_match_item)
sequence A;
(a, $display("Signal A asserted here"));
endsequence
请参阅IEEE Std 1800-2012 § 16.11 Calling subroutines on match of a sequence$display
,其中有一个在序列内调用的直接示例。
您可以为 $display 语句使用“always”块。