Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Verilog

Verilog basique : concevoir votre première porte ET

Verilog est un langage de description matérielle (HDL) qui permet aux ingénieurs de modéliser, simuler et synthétiser de la logique numérique pour FPGA et ASIC. Aux côtés de son proche cousin VHDL, Verilog est le langage standard de l'industrie tant pour les cursus académiques que pour le développement de produits commerciaux.

Si vous êtes nouveau dans le monde de la logique programmable ou du design silicium, ce guide vous accompagne dans les bases de Verilog et vous montre comment construire une simple porte ET — un élément fondamental de tout système numérique.

Contrairement aux langages logiciels de haut niveau comme Java ou C, Verilog décrit le matériel au niveau des portes. Le résultat est un code qui peut être mappé directement sur le silicium, donnant aux concepteurs un contrôle fin sur le timing, la puissance et la surface.

Ci-dessous un diagramme d'une classique porte ET à deux entrées que nous allons modéliser en Verilog.

Verilog basique : concevoir votre première porte ET

Plongeons dans l'implémentation Verilog.

En Verilog, la brique de base est le wire. Pour cet exemple, nous traiterons un wire comme un signal binaire qui ne peut être que 0 ou 1.

 wire and_temp; assign and_temp = input_1 & input_2; 

La première ligne déclare un wire nommé and_temp. La seconde ligne lui assigne le résultat d'un ET logique entre input_1 et input_2. En Verilog, l'esperluette (&) est l'opérateur booléen ET.

Tous les signaux qu'un module expose sont listés dans son en-tête module. Le mot-clé module introduit un bloc de code auto-contenu avec entrées et sorties définies.

 module example_and_gate ( input_1, input_2, and_result ); input input_1; input input_2; output and_result; 

Enfin, nous câblons le signal interne and_temp vers la sortie externe and_result et fermons le module.

 /////////////////////////////////////////////////////////////////////////////// // File Downloaded from https://www.nandland.com /////////////////////////////////////////////////////////////////////////////// module example_and_gate ( input_1, input_2, and_result ); input input_1; input input_2; output and_result; wire and_temp; assign and_temp = input_1 & input_2; assign and_result = and_temp; endmodule // example_and_gate 

Félicitations — vous avez écrit votre tout premier module Verilog ! Bien que la syntaxe HDL puisse sembler verbeuse comparée aux logiciels conventionnels, elle offre une précision inégalée pour le design matériel. Avec de la pratique, vous pourrez implémenter tout, des portes logiques simples aux pipelines graphiques complets.

Verilog

  1. Maîtriser Verilog : Tutoriel complet pour la conception de circuits numériques
  2. Maîtriser la concaténation Verilog : Guide pratique
  3. Comprendre les affectations Verilog : Types, Syntaxe et Bonnes Pratiques
  4. Verilog Blocking vs Non-Blocking : Différences Clés Expliquées
  5. Maîtriser les Fonctions Verilog pour une Conception RTL Efficace
  6. Comprendre les Tasks Verilog : Fonctions vs Tasks, Syntaxe et Utilisation
  7. Générateur d'Horloge Verilog : Guide de Conception et d'Implémentation
  8. Maîtriser les Fonctions Mathématiques Verilog pour une Conception Matérielle Efficace
  9. Maîtriser Verilog $timeformat : Contrôle de Précision et d'Affichage