I need to write an assertion to catch error scenario.
Condition : on clk edge any one of the pc0/1/2/3/ trigger to high for one clock cycle. After few cycles(currently,spec didn’t mention how many clocks) pop should be high for one clock cycle.
Suppose,if PC0 is high , In between PC0 high ----> pop high PC1/2/3 signals should go high.
if PC1 is high , In between PC1 high ----> pop high PC0/2/3 signals should go high.
This pc0/1/2/3 are triggered based on the read data match from ahb.
can someone help me how do I make it.
Please let me know if any info is still required.
In reply to sraja:
That is better. Originally you wrote that pop should go hight for one cycle. You did not specify what should happen if more than one of PC0…PC3 goes high at the same time. And you did not specify if PC0 could go high again before pop goes high. Here’s an assertion that should work for what you wrote: