Atelier ARCHITECTURE DES ORDINATEURS ET
MICROPROCESSEURS
Département Mécatronique
Support de travaux pratiques
TP N° : 2
Additionneur-complet (1-bit)
Enseignants : Mme Asma Ben Ammar
Etudiants : Bousselmi Lara
HAMMAMI Abir
Classe : MEQ-2-3
Année universitaire : 2023/2024
I- Objectifs du TP
Maîtriser la description structurelle en VHDL :
Apprendre à utiliser le langage VHDL pour décrire un additionneur en logique
combinatoire, en le construisant à partir de demi-additionneurs.
Être capable d’écrire un testbench en VHDL permettant de vérifier le bon fonctionnement
de l’additionneur complet, en simulant différents cas d’entrée.
Découvrir et utiliser ModelSim, un outil de simulation de circuits numériques, pour :
o Compiler les descriptions VHDL
o Visualiser les signaux et valider le comportement de l’additionneur
II- Additionneur complet 1-bit :
Ecrire les équations logiques de l’additionneur complet en fonction de celles d’un demi-
additionneur et déduire le logigramme de l’additionneur complet (en utilisant deux demi-
additionneurs et une porte logique OU.)
Logigramme de l’additionneur complet
Un additionneur complet permet d’additionner trois bits :
Entrées : A, B, Cin (retenue d’entrée)
Sorties : S (somme), Cout (retenue de sortie)
Formules logiques :
S = A ⊕ B ⊕ Cin
Cout = (A · B) + (Cin · (A ⊕ B))
Il peut être construit à partir de deux demi-additionneurs :
1. DA1 : A, B → S1, C1
2. DA2 : S1, Cin → S, C2
3. Cout = C1 OR C2
Description VHDL du module et simulation (Modelsim)
1- Créer dans un projet TP2, un fichier source VHDL full_add.vhd, dans lequel il faut
modéliser l’additionneur complet (Bibliothèque, Entité, Architecture structurelle).
Vous allez vous servir des modules suivants :
un demi-additionneur (demi_add.vhd)
une porte OU ([Link])
full_add
2- Créer dans le projet TP2, un fichier source VHDL full_add_tb.vhd, dans lequel il faut
décrire le fichier de simulation (Testbench).
Chronogramme
4- Créer un chronogramme des signaux (waveform) et séparer les signaux d’entrée de ceux de
sortie. Lancer la simulation, observez les chronogrammes et comparer les au résultat de
simulation du TP1.
=> Au cours du TP, nous avons modélisé, décrit et simulé cet additionneur complet en VHDL,
en utilisant deux approches : la description comportementale et la description structurelle. La
structure interne du Full-Adder repose sur l’association de deux demi-additionneurs et d’une
porte OU, démontrant ainsi le caractère modulaire et hiérarchique des circuits combinatoires.
La simulation réalisée sous ModelSim a permis de valider la justesse du modèle conçu. Les
chronogrammes obtenus confirment que pour toutes les combinaisons possibles des entrées A,
B et Cin, les valeurs de S et Cout respectent parfaitement les équations logiques théoriques :
S = A ⊕ B ⊕ Cin
Cout = (A·B) + [Cin·(A ⊕ B)]
Critère TP1 TP2 Comparaison
Le premier décrit directement
Méthode Description Description les équations, le second
VHDL comportementale structurelle construit l’additionneur avec
des sous-blocs.
Comprendre la
Comprendre VHDL Le second est plus profond sur
Objectif structure interne
de base + testbench l’architecture.
d’un Full-Adder
full_add demi_add, or,
Fichiers Le second utilise plus de
(comportemental) + full_add structurel +
utilisés modules.
testbench testbench
Niveau de Plus détaillé avec
Plus simple et direct Le second est plus académique.
détail logigramme
Structure
Compétences Écriture d’un module Le second approfondit la
hiérarchique +
acquises et testbench conception.
organisation VHDL
Vérification de la
Vérification du structure + Le second ajoute l’analyse
Simulation
comportement global comparaison avec structurelle.
TP1
La simulation confirme dans les deux cas que l’additionneur complet fonctionne
correctement et correspond aux équations théoriques de S et Cout.