Hi all ,
Scenario :: What if the pass / fail action block is blocking ? .
I understand that this isn’t recommended but I just wanted to try and understand the O/P .
Have coded the following :: EDA_LINK
I wanted to understand how the code works ( I know task within a module is static by default )
Should the task be called each time the assertion FAILS or if a previous invocation is still running should the task not be called again ( for 2nd failure ) .
In reply to hisingh:
As its name implies, a concurrent assertion creates concurrent threads of execution. A failure in any thread activates the action block concurrently.
In reply to dave_59:
Dave ,
If I call a task for PASS / FAIL action block should I ensure that the task is automatic ? .
Could there issues similar to older versions of Verilog where ’ automatic ’ wasn’t added ? .
In reply to hisingh:
As a general rule, any concurrent task calls should be declared with an automatic lifetime, or in a scope have a default automatic lifetime.