Menu
Coddy logo textTech

Built In Gate Primitives

Fait partie de la section Fondamentaux du Journey Verilog de Coddy. Leçon 39 sur 90.

Verilog possède des gate primitives intégrées qui vous permettent de décrire des circuits logiques à l’aide de véritables symboles de portes. C’est ce qu’on appelle la modélisation structural. Vous construisez des circuits en connectant des gates, comme lorsque vous dessinez un schéma.

Gate primitives sont des mots-clés prédéfinis qui modélisent des portes logiques de base. Au lieu d’écrire une expression comme assign out = a & b, vous instanciez une porte :

and(out, a, b);   // Porte AND avec sortie out, entrées a et b

Syntaxe générale

gate_type (output, input1, input2, ...);
  • Le premier argument est toujours l’output
  • Les arguments suivants sont des inputs (1 ou plus, selon la gate)

Primitives de portes disponibles

Type de porteMot-cléNombre d’entrées
ANDand2 ou plus
ORor2 ou plus
NOTnot1
NANDnand2 ou plus
NORnor2 ou plus
XORxor2 ou plus
XNORxnor2 ou plus

Fonctionnement des primitives gate

Lorsque vous écrivez and(out, a, b), Verilog crée une gate AND qui pilote continuellement out avec le result de a & b. Chaque fois que a ou b change, out est immédiatement mis à jour, exactement comme une gate réelle.

Primitives de portes vs affectation continue

Les deux méthodes produisent le même matériel :

// Primitive de porte
and(out, a, b);

// Affectation continue (même résultat)
assign out = a & b;

Les primitives gate sont utiles lorsque vous voulez décrire un circuit comme une collection of gates (style structural). L'affectation continuous est préférable pour le style behavioral (expressions).

challenge icon

Défi

Que faire :

  1. Add la primitive de gate correcte pour faire fonctionner ce circuit. Le module devrait produire l’AND des inputs a et b. Le port de output est déjà nommé c.

Essayez vous-même

module gate_challenge (
  input a,
  input b,
  output c
);
  
  // TODO: Ajoutez la primitive de porte correcte
  // La sortie c doit être a AND b

endmodule
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux

Entraînez-vous par vous-même : Compilateur Verilog en ligne