Compteur 4 bits
Fait partie de la section Fondamentaux du Journey Verilog de Coddy — leçon 84 sur 90.
Défi
Construisez un compteur 4 bits qui compte de 0 à 15 et revient à 0.
Interface du module
| Port | Direction | Largeur | Description |
|---|---|---|---|
clk | input | 1 bit | Signal d'horloge |
reset | input | 1 bit | Réinitialiser le compteur à 0 |
count | output | 4 bits | Valeur actuelle du compteur |
Table de vérité
| Cycle d'horloge | count |
|---|---|
| Après réinitialisation | 0 |
| 1 | 1 |
| 2 | 2 |
| ... | ... |
| 15 | 15 |
| 16 | 0 (revient au début) |
Votre tâche consiste à compléter le module ci-dessous.
Ce qu'il faut faire :
- Lors d'un
reset, réglezcountà 0 - À chaque front montant d'horloge, incrémentez
countde 1 - Lorsque
countatteint 15, l'incrément suivant doit revenir à 0
Essayez vous-même
module counter (
input clk,
input reset,
output reg [3:0] count
);
// À FAIRE : Ajouter un bloc always avec posedge clk et posedge reset
// Lors de la réinitialisation : count <= 0
// Sinon : count <= count + 1
endmoduleToutes 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