Type Reg
Fait partie de la section Fondamentaux du Journey Verilog de Coddy — leçon 7 sur 90.
Reg est le deuxième type de données principal en Verilog. Contrairement à wire, un reg stocke une valeur. C'est une variable qui conserve sa valeur jusqu'à ce que quelque chose la modifie.
regpeut stocker des valeursregest utilisé dans des blocsalwaysregne signifie PAS « registre » au niveau matériel — cela signifie simplement « stockage »
Déclaration d'un reg
reg x; // reg d'un seul bit
reg y, z; // Plusieurs regs sur une seule ligneComment fonctionne reg
module reg_example;
reg x;
initial begin
x = 0; // x devient 0
$display("x = %d", x); // Affiche : x = 0
x = 1; // x devient 1
$display("x = %d", x); // Affiche : x = 1
end
endmoduleDéfi
Ce qu'il faut faire :
- Ajoutez un reg nommé
count
Aide-mémoire
reg stocke une valeur et la conserve jusqu'à ce qu'elle soit modifiée. Utilisé à l'intérieur des blocs always ou initial.
reg x; // reg à un seul bit
reg y, z; // Plusieurs regsinitial begin
x = 0; // assigner une valeur
x = 1; // mettre à jour la valeur
endEssayez vous-même
module counter(
input clk,
input reset,
output out // fil par défaut (supprimer reg)
);
// Déclarer reg count ici
endmoduleCette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
1Introduction
Qu'est-ce que VerilogHardware vs SoftwareNiveaux d'abstraction de conceptionVotre premier moduleCommentaires4Opérateurs - Partie 1
Opérateurs arithmétiquesOpérateur moduloOpérateurs de comparaisonRécapitulatif - Mathématiques simplesOpérateurs bit à bit7Assignation et portes logiques
Assignation continueAssignation avec opérateursPrimitives de portes intégréesPortes AND OR NOTPortes XOR XNORRécapitulatif - Circuit à portes logiques10Prise de décision
Instruction IfIf - ElseRécapitulatif - Comparateur simpleInstruction CaseCasex et CasezRécapitulatif - Conception d'ALU2Types de données
Type WireType RegEntiers et RéelsVecteursTableauxParamètresRécapitulatif - Déclarer des signaux5Opérateurs - Partie 2
Opérateurs logiquesOpérateurs de réductionOpérateurs de décalageOpérateur de concaténationOpérateur conditionnelRécapitulatif - Défi sur les opérateurs11Boucles
Boucle ForBoucle WhileBoucle RépéterBoucle InfinieInstruction DisableRécapitulatif - Modèles de boucles3Système de numération
Représentation binaireNombres avec tailleNombres sans tailleNombres négatifsValeurs spéciales X et ZRécapitulatif - Formats de nombres6Modules
Structure d'un modulePorts d'entrée et de sortiePorts InoutInstanciation de moduleMappage de ports par nomMappage de ports par ordreRécapitulatif - Créer un module9Blocs procéduraux
Bloc AlwaysBloc InitialListe de sensibilitéAffectation bloquanteAffectation non bloquanteRécapitulatif - Always vs Initial12Projet Multiplexeur
Conception d'un Mux 2 vers 1Conception d'un Mux 4 vers 115Contrôleur de feux de circulation
Définition des étatsLogique de la machine à états