HDL et vérification
Quelle est la définition de la vérification aléatoire contrainte de SystemVerilog ?
- AGénérer aléatoirement les valeurs d'entrée dans les plages et combinaisons (contraintes) admises par la spécification, pour couvrir largement les cas, y compris ceux auxquels personne ne pense
- BGénérer des valeurs d'entrée totalement arbitraires, en appliquant de nombreuses valeurs hors spécification
- CÉcrire toutes les valeurs d'entrée à la main
Afficher la réponse et l'explication
Réponse : A. Générer aléatoirement les valeurs d'entrée dans les plages et combinaisons (contraintes) admises par la spécification, pour couvrir largement les cas, y compris ceux auxquels personne ne pense
Les seuls tests imaginés par des humains (tests dirigés) tendent à laisser passer les défauts liés à des combinaisons non anticipées par le concepteur. En vérification aléatoire contrainte, on écrit des contraintes comme « l'adresse est un multiple de 4 » ou « la longueur va de 1 à 256 », et les entrées sont générées aléatoirement dans ce cadre ; on teste ainsi de nombreux cas avec des entrées pertinentes uniquement. Les cas couverts sont mesurés par la couverture, et les lacunes comblées en modifiant les contraintes ou par des tests dirigés.