assert property @(posedge(clk)) !rstN |-> n==0 && full==0 && empty==1;
assert property @(posedge clk) disable iff(!rstN) ( full |=>(wr_en && $stable (n) ) );
assert property @(posedge clk) disable iff(!rstN) (empty |=>(rd_en && $stable (n)) );
The errors shows near @
and full
, empty
.
Shows syntax error near "(" which is near to full and empty, syntax error near all @
.
Where am I going wrong?
You need to add parentheses for the
property
code. Refer to IEEE Std 1800-2017, section 16.12 Declaring properties for code examples.This is a complete code example that compiles without syntax errors: