SV constraints distribution for different Q

Hi ,
I have 4 different port queues .

  1. port 1 Q value [0-79]
  2. port 2 Q value [80-82]
  3. Port 3 Q Value [83-87]
  4. Port 4 Q Value [88-95]
    I have constraints defined for 1,2,3,4 to be in the range as above .
    Now I want to add a distribution rate of 25% to each of the Port Q , how can I achieve that ?

You should show is the constraints you have defined so far, then we can show you the best way to get an even distribution between the 4 ports.

constraint ListA
{
  foreach ( ListA[Ia] )
   {
   ListA[Ia] <  79 ;
   ListA[Ia] >= 0;
  }
}

constraint ListB
{
  foreach ( List[Ia] )
   {
   ListB[Ia] <  83 ;
   ListB[Ia] >= 80;
  }
  }
     
constraint ListC
{
  foreach ( ListC[Ia] )
   {
   ListC[Ia] <   88 ;
   ListC[Ia] >= 83;
  }
  }
constraint ListD
{
  foreach ( ListD[Ia] )
   {
   ListD[Ia] <   88 ;
   ListD[Ia] >= 95;
  }
  }

This is even more confusing.

What do you mean by a distribution rate? How big is each list?

Or do you want one value in the range 0-95 picked so that each of the 4 ranges has a equal probability. For that you would use a dist constraint

rand int value;
constraint equal { value dist {[0:79]:/1,[80:82]:/1,[83:87]:/1,[88:95]:/1}; }