Vous êtes sur la page 1sur 18

UNIVERSITE HASSAN1 er

FACULTE DES SCIENCES ET TECHNIQUES DE SETTAT

DÉPARTEMENT DE PHYSIQUE APPLIQUÉE


Master : ATSII
Professeur : M. LAMHAMDI

MODULE : Implémentation sur DSP et FPGA

TP N°3 :
Description en VHDL d’un compteur
décimal

Réalisé par :
GHEOUANY SAAD
INTRODUCTION :

Dans le domaine de l’électronique numérique, un compteur est un dispositif


permettant le stockage et l’affichage du nombre de fois un événement ou un
processus particulier a eu lieu. Ce nombre d’occurrences est souvent lié à un
signal d'horloge. L’architecture la plus commune d’un compteur binaire est
constituée d’un circuit logique numérique séquentiel disposant d’une ligne
d'entrée appelée « horloge » et de plusieurs lignes de sortie. Les valeurs
présentes sur les lignes de sortie représentent sous un format binaire le nombre
d’occurrences. Chaque impulsion (front montant ou descendant) appliquée à
l’entrée d'horloge permet d’incrémenter ou de décrémenter la valeur de sortie
du compteur (ou du décompteur).

L’objectif de ce travail a pour objectif de réaliser un compteur décimal qui


effectue un comptage de 0 à 9 , et son simulation sur logiciel Xilinx ISE :

 La réalisation de la description VHDL .


 Simulation du compteur sur Xilinx ISE .

2020/2021 2
Description VHDL d’un compteur décimal et simulation sur XILINX ISE GHEOUANY SAAD
 Partie 1: Description VHDL du Compteur décimal 0 à 9

L’objectif de cette manipulation consiste à réaliser à travers une


description VHDL, un simple compteur binaire permettant une
incrémentation ou une décrémentation de 0 à 9. Ce circuit matériel est
piloté par plusieurs entrées représentées sommairement comme suit

 clk (STD_LOGIC): Représente l’horloge du compteur décimal. A


chaque front montant de ce signal, l’incrémentation ou la
décrémentation de la valeur de sortie est exécutée.
 reset (STD_LOGIC): C’est le signal de remise à zéro. Cette entrée
permet de remettre à zéro la valeur de sortie du compteur.
 pause (STD_LOGIC): Cette entrée permet de garder l’état du
compteur sur la valeur de sortie actuelle.
 count_up (STD_LOGIC): Cette entrée permet d’activer l’option de
comptage (incrémentation de la valeur de sortie).
 count_down (STD_LOGIC): Cette entrée permet l’inverse de
l’entrée count_up (décrémentation de la valeur de sortie).
 Count (STD_LOGIC_VECTOR): est la sortie du compteur sur 4 bits.

1. Création du projet :

1. Démarrer Xilinx ISE Navigator.

2. Créer un nouveau projet qu’on va


appler :« comp_deci_GHEOUANY_SAAD. »
3. Définir les propriétés de la carte cible.
4. Ouvrir une nouvelle fenêtre d’édition. Cliquer par le bouton droit de la
sourie sur le volet Hierarchy et sélectionner New source.
5. Sélectionner VHDL Module. Dans le champ File name taper :
«GHEOUANY_SAAD_COMPTEUR »
puis cliquer sur Next et finalement sur Finish.

2020/2021 3
Description VHDL d’un compteur décimal et simulation sur XILINX ISE GHEOUANY SAAD
2020/2021 4
Description VHDL d’un compteur décimal et simulation sur XILINX ISE GHEOUANY SAAD
2. Description VHDL :

Dans un premier temps nous avons créé l’entité :


«GHEOUANY_SAAD _COMPTEUR» dans laquelle on a déclaré les
entrées et sorties de notre circuit de type.
 La liste de sensibilité contient toutes les entrées et le signal
« temp_count » .
 Le signal de sortie va s’incrémenter lors un front active de l’horloge et
si count_up=1 et count_down=0 et vérifiant la condition que
temp_count est inférieure strictement à 9.
 Et il va se décrémenter lors un front active de l’horloge et si
count_up=0 et count_down=1 et vérifiant la condition que temp_count
est inférieure strictement à 10 et supérieure à 0 .

2020/2021 5
Description VHDL d’un compteur décimal et simulation sur XILINX ISE GHEOUANY SAAD
3. Fichier test-bench pour la simulation :

1. Pour créer un fichier de simulation de votre description, on va cliquer


par le
bouton droit de la sourie sur le volet Hierarchy et sélectionner New
source.
2. Sélectionner VHDL Test Bench. Dans le champ File name taper
« Tb_GHEOUANY_SAAD »

3. Remplacer le processus stim_proc par les processus suivant :

2020/2021 6
Description VHDL d’un compteur décimal et simulation sur XILINX ISE GHEOUANY SAAD
2020/2021 7
Description VHDL d’un compteur décimal et simulation sur XILINX ISE GHEOUANY SAAD
4. simulation :

Pour la simulation dans l’implémentation on doit vérifier la synthèse et


l’implémentation du design, puis la vérification de la syntaxe du
programme test-bench :

2020/2021 8
Description VHDL d’un compteur décimal et simulation sur XILINX ISE GHEOUANY SAAD
2020/2021 9
Description VHDL d’un compteur décimal et simulation sur XILINX ISE GHEOUANY SAAD
 Dans un premier temps on remarque que count_up est mis à 1 et
count_down est mis à 0 , le compteur commence le comptage
jusqu’à la valeur 9 :

2020/2021 10
Description VHDL d’un compteur décimal et simulation sur XILINX ISE GHEOUANY SAAD
 Dans un second temps on remarque que count_up est mis à 0
et count_down est mis à 1, donc le compteur commence le
décomptage jusqu’à la valeur 0 :

2020/2021 11
Description VHDL d’un compteur décimal et simulation sur XILINX ISE GHEOUANY SAAD
EXERCICE :

 Travail demandé : Réaliser un nouveau projet pour un compteur/décompteur de


0 à 99.

1. Création du projet :

1. Démarrer Xilinx ISE Navigator.

2. Créer un nouveau projet qu’on va


appler :« GHEOUANY_SAAD_COMPTEUR_2»
3. Définir les propriétés de la carte cible.
4. Ouvrir une nouvelle fenêtre d’édition. Cliquer par le bouton droit de la
sourie sur le volet Hierarchy et sélectionner New source.
5. Sélectionner VHDL Module. Dans le champ File name taper :
«GHEOUANY_SAAD_COMPTEUR_99 »
puis cliquer sur Next et finalement sur Finish.

2020/2021 12
Description VHDL d’un compteur décimal et simulation sur XILINX ISE GHEOUANY SAAD
2. Description VHDL :

 la sortie count_1 prend la valeur de signal temp_count_1


 la sortie count_2 prend la valeur de signal temp_count_2
 lorsque clk est à 1 : la sortie count_1 s’incrémente si count_up = 1
jusqu’à 9 et se décrémente si count_down = 0 .
 si count_1 dépasse 9 elle prend la valeur 0 (clk_10 reçoit 1) , et
count_2 de sa part s’incrément de 1 .
 de même pour la décrémentation comme le programme l’indique :
si count_1 atteint 0 et si count_2 est supérieur à 1 celui-ci se
décrémente et count_1 prend la valeur 9.

2020/2021 13
Description VHDL d’un compteur décimal et simulation sur XILINX ISE GHEOUANY SAAD
2020/2021 14
Description VHDL d’un compteur décimal et simulation sur XILINX ISE GHEOUANY SAAD
3. Fichier test-bench pour la simulation :

2020/2021 15
Description VHDL d’un compteur décimal et simulation sur XILINX ISE GHEOUANY SAAD
4. simulation :

a) incrémentation :

2020/2021 16
Description VHDL d’un compteur décimal et simulation sur XILINX ISE GHEOUANY SAAD
b) décrémentation :

c) Reset :

2020/2021 17
Description VHDL d’un compteur décimal et simulation sur XILINX ISE GHEOUANY SAAD
2020/2021 18
Description VHDL d’un compteur décimal et simulation sur XILINX ISE GHEOUANY SAAD

Vous aimerez peut-être aussi