Menu
Coddy logo textTech

Entiers et réels

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

En plus de wire et reg, Verilog possède d’autres types de données pour les nombres, avec des objectifs différents.

Entier

integer est une variable polyvalente utilisée pour le comptage et les calculs.

  • La taille par défaut est de 32 bits
  • Signé (peut stocker des nombres négatifs)
  • Utilisé principalement dans les bancs de test et les boucles for

Déclarer un entier :

integer i;        // variable signée 32 bits
integer count;    // Peut stocker des nombres négatifs

Utilisation d’un entier :

integer i;

initial begin
  i = 0;           // Commence à 0
  i = i + 1;       // Compte vers le haut
  i = -5;          // Peut stocker des négatifs
  $display("i = %d", i);  // Affiche : i = -5
end

Réel

real sert à représenter les nombres à virgule flottante (les nombres avec des décimales).

  • Stocke des valeurs fractionnaires
  • Utilisé dans les bancs de test pour les calculs
  • Ne peut pas être synthétisé en matériel

Déclarer un réel :

real pi;           // Variable à virgule flottante
real voltage;

Utilisation de real :

real pi;

initial begin
  pi = 3.14159;               // Valeur décimale
  pi = 22.0 / 7.0;            // Résultat de la division
  $display("pi = %f", pi);    // Affiche : pi = 3.142857
end

Où les utiliser

Dans les bancs de test : Les entiers et les nombres réels sont couramment utilisés pour les compteurs de boucles, les calculs et la vérification des valeurs attendues. Ils rendent le code de test plus facile à écrire et à comprendre.

Dans le matériel : Ces types ne sont généralement pas synthétisables, ce qui signifie qu’ils ne peuvent pas être transformés en circuits réels. Pour le matériel destiné à un FPGA ou à une puce, utilisez plutôt reg et wire.

challenge icon

Défi

Complétez le code pour faire fonctionner le banc de test.

À faire :

  1. Déclarez un entier appelé i (pour le compteur de boucle)
  2. Déclarez un réel appelé value (pour le calcul)

Essayez vous-même

module test;
  
  // Déclare un entier appelé i

  
  // Déclare un réel appelé value

  
  initial begin
    i = 7;
    value = i * 0.5;
    $display("i = %0d, value = %f", i, value);
    
    $finish;
  end
  
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