In reply to pvpatel:
As a general rule, it is best to use multiple small assertions than one complex one. It looks like in this case you have:
- one assertion that is inside an initial statement and is initiated after a precondition.
initial begin
@(go) assert_check: assert property (…) ;
end
- other assertions that are attempted at every clock edge