Menu
Coddy logo textTech

Integer And Real

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

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

Integer

integer est une variable à usage général destinée au comptage et aux calculs.

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

Déclarer un integer :

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

Utilisation de integer :

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

Real

real sert à représenter des nombres à virgule flottante (des 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 real :

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 d’essai : Les integer et real 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