Hi I am trying to write a functional coverage for different fsm states
Consider this scenario, There are four FSM states S0,S1,S2,S3.
States will change in order like this S0 -> S2 ->S1 -> S3 -> S0.
if i try to write the bins for the entire transition , bins are not getting covered but if I write individually its getting covered.
STATE_TRANSITIONS : coverpoint curr_state
{
bins S0_S2_S1_S3_S0 = (S0 => S2 => S1 => S3 => S0); // not working
}
STATE_TRANSITIONS : coverpoint curr_state // WORKING
{
bins S0_S2 = (S0 => S2);
bins S2_S1 = (S2 => S1);
bins S1_S3 = (S1 => S3);
bins S3_S0 = (S3 => S0);
}
Is there anything I am missing in the first coverpoint which is not causing the transition coverage? How exactly I have to do to make the first coverpoint to work ?