Les contraintes pour les tableaux dans system verilog

Est-il valide pour utiliser initialement générés de manière aléatoire des éléments de contrainte consécutives éléments d'une étude randomisée de tableau.
Par exemple: je veux générer un ensemble de 10 addr, paires de taille pour imiter typique de l'allocation de la mémoire de routine et avoir une classe comme suit:

class abc;
  rand bit[5:0] size[8];
  rand bit[5:0] addr[8];

  constraint mem_unique{
  foreach(size[i]) begin
    solve size[i] before addr[i];
    size[i] inside {[6'h2:6'h10]};
    if(i>0)
      addr[i] > addr[i-1]+size[i-1];
  end
  }
endclass:abc

OriginalL'auteur venkstart | 2014-02-24