Menu
Coddy logo textTech

AND OR NOT Gates

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

Cette leçon couvre les trois portes logiques les plus fondamentales : AND, OR et NOT. Ces portes constituent la base de la conception de la logique numérique.

Porte AND

La porte AND produit 1 uniquement lorsque toutes les entrées valent 1.

Table de vérité (2 entrées) :

about
000
010
100
111

Primitive de porte Verilog :

and(out, a, b);

Équivalent avec une affectation continue :

assign out = a & b;

Porte OR

La porte OR produit 1 lorsqu’au moins une entrée vaut 1.

Table de vérité (2 entrées) :

about
000
011
101
111

Primitive de porte Verilog :

or(out, a, b);

Équivalent avec une affectation continue :

assign out = a | b;

Porte NOT

La porte NOT produit l’opposé de son entrée unique. Elle est également appelée inverter.

Table de vérité :

aout
01
10

Primitive de porte Verilog :

not(out, a);

Équivalent avec une affectation continue :

assign out = ~a;

Entrées multiples

Les portes AND et OR peuvent avoir plus de 2 entrées :

and(out, a, b, c);     // AND à 3 entrées (out = a & b & c)
or(out, x, y, z, w);   // OR à 4 entrées

Les portes NOT ont toujours exactement 1 entrée.

Exemple de code

module and_or_not (
  input a, b,
  output and_out,
  output or_out,
  output not_out
);
  and(and_out, a, b);   // porte ET
  or(or_out, a, b);     // porte OU
  not(not_out, a);      // porte NON (inverseur)
endmodule
challenge icon

Défi

Ajoutez les primitives de portes manquantes conformément aux tâches.

À faire :

  1. Créez une porte AND avec la sortie and_result et les entrées p et q
  2. Créez une porte OR avec la sortie or_result et les entrées p et q
  3. Créez une porte NOT avec la sortie not_result et l’entrée p

Essayez vous-même

module gates_challenge (
  input p,
  input q,
  output and_result,
  output or_result,
  output not_result
);
  
  // TODO: Ajouter la porte AND (and_result = p & q)
  
  // TODO: Ajouter la porte OR (or_result = p | q)
  
  // TODO: Ajouter la porte NOT (not_result = ~p)

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