Qu'est-ce que Affectation non bloquante ?

Affectation « <= » de Verilog. Tous les membres de droite d'un même instant sont d'abord évalués, puis les membres de gauche sont mis à jour ensemble. Correspondant au comportement des bascules, elle s'utilise pour les circuits séquentiels.

Nom japonais: ノンブロッキング代入

« Affectation non bloquante » apparaît dans 4 questions d'entraînement réparties sur 1 thèmes, dont HDL et vérification.

Domaine: HDL et vérification

S'entraîner : questions sur Affectation non bloquante

Quel est le comportement de l'affectation non bloquante (<=) en Verilog ?

  1. ALe membre de gauche est mis à jour à l'instant de l'affectation et la nouvelle valeur est utilisée à la ligne suivante
  2. BTous les membres de droite d'un même instant sont d'abord évalués, puis les membres de gauche sont mis à jour ensemble
  3. CLe résultat de l'affectation est ignoré et rien n'est modifié
Afficher la réponse et l'explication

Réponse : B. Tous les membres de droite d'un même instant sont d'abord évalués, puis les membres de gauche sont mis à jour ensemble

Avec l'affectation non bloquante, au front d'horloge, tous les membres de droite des <= sont d'abord évalués avec les anciennes valeurs, puis les membres de gauche sont réécrits simultanément. C'est le même comportement que dans un circuit réel où de nombreuses bascules cadencées par la même horloge capturent simultanément les valeurs juste avant le front. En principe, on utilise donc l'affectation non bloquante pour décrire les circuits séquentiels cadencés.

« Affectation non bloquante » dans les explications

Questions mentionnant « Affectation non bloquante » (4)

  1. Quel est le comportement de l'affectation non bloquante (<=) en Verilog ?
  2. 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 ?
  3. Quelle est la règle générale d'usage des types d'affectation en Verilog ?
  4. Dans un banc de test, modifier les entrées du circuit par affectation bloquante au même instant que le front montant d'horloge peut poser problème. Quelle combinaison de raison principale et de remède est correcte ?

Termes associés

Affectation bloquante Verilog Banc de test (testbench) SystemVerilog Boucle combinatoire Codage one-hot Instruction generate Langage de description matérielle Latch involontaire Lint

Retour au glossaire