In reply to srvm:
rand
Variables declared with the rand keyword are standard random variables. Their values are uniformly distributed over their range.
randc
Variables declared with the randc keyword are random-cyclic variables that cycle through all the values in a random permutation of their declared range. Random-cyclic variables can only be reg or enumerated types, and are limited to a maximum size of 16 bits, so the maximum range for any randc variable is 0 to 65535.
The basic idea is that randc randomly iterates over all the values in the range and that no value is repeated within an iteration. When the iteration is finished, a new iteration is automatically started.
As you see from the defination of RANDC,constaints are not possible for randc variable,like the way you have applied.Please refer LRM for confirmation.