Hello ,
I am using signals named sop and eop for indicating the start of a packet and ending of a packet.
It should enable only for one clock cycle.If not error should occur.
How can i implement this error condition using concurrent assertion…
I am new to System verilog ang UVM…Please help me to get the answer.
Just look at this assertion, this checks for valid signal at every posedge of clock and also makes sure , sop comes to low/zero on second posedge of clock
if ur design requires sop must follow valid signal, then u must write another assertion to verify that sop doesn’t become true until valid signal is true
I believe these assertions work fine. Its good to know how assertions work, sometimes intended result can’t be obtained unless we have a thorough knowledge about assertions and their working behaviour.
@ram In your answer, dont you think antecedent should be $rose(valid), since if valid is high for more clocks and sop comes for only a clock then your assertion will fail