Menu
Coddy logo textTech

Compteur de bits

Fait partie de la section Fondamentaux du Journey Verilog de Coddy — leçon 87 sur 90.

challenge icon

Défi

Dans ce chapitre, vous allez construire un émetteur UART étape par étape. UART signifie Universal Asynchronous Receiver-Transmitter. Il s'agit d'un protocole matériel simple qui permet à deux appareils de communiquer en utilisant seulement un fil (pour transmettre) et un autre fil (pour recevoir).

Pensez-y comme deux personnes qui parlent au téléphone — l'une parle (transmet), l'autre écoute (reçoit). L'UART envoie les données un bit à la fois, avec des bits de début (start) et de fin (stop) pour marquer le début et la fin de chaque octet.

Un émetteur UART envoie 10 bits : un bit de start (1), des bits de données (8), un bit de stop (1). Pour suivre quel bit nous envoyons, nous avons besoin d'un compteur de bits qui compte de 0 à 10.
Comment fonctionne le compteur de bits

  • Commencer à 0
  • À chaque cycle d'horloge, ajouter 1
  • Lorsqu'il atteint 10, revenir à 0
  • Répéter indéfiniment

Dans cette tâche, nous ne allons pas encore le réinitialiser : nous allons seulement l'incrémenter.

Ce qu'il faut faire :

  1. Créez un module appelé uart_tx avec :
    • Une entrée (input) : clk
    • Une sortie (output) : cnt (4 bits, type reg)
  2. À l'intérieur (inside) du module :
    • Définissez cnt à 0 au départ à l'intérieur d'un bloc initial
    • Ajoutez un bloc always @(posedge clk)
    • Faites en sorte que cnt augmente de 1 à chaque front d'horloge

Essayez vous-même

// TODO: Créer le module uart_tx avec l'entrée clk et la sortie cnt (4 bits)

// TODO: Mettre cnt à 0 au début dans un bloc initial

// TODO: Ajouter le bloc always @(posedge clk)

// TODO: Incrémenter cnt

Toutes les leçons de Fondamentaux