HDL et vérification

Quel circuit représente l'instruction assign Verilog ci-dessus ?

assign y = (a & b) | c;
  1. AUn circuit combinatoire réalisant le OU entre le ET de a et b et c, y changeant dès que les entrées changent
  2. BUne bascule mettant à jour y à chaque front d'horloge
  3. CUn circuit calculant une seule fois puis dont la valeur ne change plus
Afficher la réponse et l'explication

Réponse : A. Un circuit combinatoire réalisant le OU entre le ET de a et b et c, y changeant dès que les entrées changent

L'instruction assign, dite affectation continue, représente une connexion où la valeur de l'expression de droite est en permanence reflétée sur le signal de gauche. Dès qu'une entrée de droite change, la sortie y change aussi immédiatement (après le délai des portes). Cet exemple donne un circuit combinatoire de portes ET et OU. Il n'a aucune fonction de mémorisation ; pour conserver une valeur, on utilise un bloc always mis à jour par l'horloge.

S'entraîner sur ce thème Retour au thème

Autres questions sur HDL et vérification

  1. Quel circuit la synthèse logique produit-elle à partir de la description Verilog ci-dessus ?
  2. Quel est le comportement de l'affectation non bloquante (<=) en Verilog ?
  3. Dans la description ci-dessus, juste avant le front montant d'horloge, a=0 et b=1. Quelles sont les valeurs de a et b après le front montant ?
  4. Voulant un registre à décalage à deux étages, on a écrit le code ci-dessus avec des affectations bloquantes (=). Quel problème survient ?
  5. Quelle est la règle générale d'usage des types d'affectation en Verilog ?

Comparatifs sur ce thème