TP4
Unité Arithmétique et Logique
Objectif :
L'UAL (Unité Arithmétique Logique) est l'élément de base d'un microprocesseur, son rôle est la
réalisation des :
•opérations arithmétiques : addition, soustraction, changement de signe, etc.
•opérations logiques : compléments à un, à deux, et, ou, ou-exclusif, non, non-et, etc.
•comparaisons : test d'égalité, supérieur, inférieur, et leur équivalents « ou égal ».
•éventuellement des décalages et rotations (mais parfois ces opérations sont externalisées).
Architecture Simplifié :
L'unité arithmétique et logique, dispose de :
• Deux entrées A et B sur lesquelles on présente les données à traiter, "les opérandes".
• Une sortie F donnant le résultat de l'opération effectuée.
• Une entrée Commande (de sélection) permettant le choix de l'opération a effectué.
• Une sortie Etat (Indicateur- Drapeau) donnant l'état de l'UAL après exécution de
l'opération.
1
Travail Demandé :
1- Fonctionnement de l’UAL :
L’objectif du TP est de concevoir une Unité Arithmétique et Logique (ALU) de 4 bits selon les
spécifications données. On vous donne le schéma fonctionnel et le tableau de fonctionnement.
N= Negative Result
La plupart des UAL possèdent des drapeaux (Flags : Registre d’état) qui définissent une erreur
dans le résultat (division par zéro, dépassement de mémoire...), ou des conditions sur le résultat
d’opération (supérieur, inférieur, égal à zéro...).
• Report (Carry-out : C), transporte le report résultant d'une addition, la retenue résultant
d'une opération de soustraction, ou le bit de dépassement résultant d'une opération de
décalage binaire.
• Zéro (Z) indique que tous les bits de R sont égaux à zéro.
• Négatif (N) indique que le résultat de l'opération arithmétique est négatif.
• Débordement (Overflow : O), indique que le résultat d'une opération arithmétique a
excédé la capacité numérique de F.
Dans un projet UAL-Fonct :
1) Modéliser en VHDL l’UAL-4bits en décrivant son fonctionnement dans un fichier
([Link]).
2) Modéliser en VHDL le test bench de l’UAL-4bits et donner des cas de tests pour simuler
le fonctionnement du circuit dans un fichier (UAL_TB.vhd).
2
2- Structure Interne de l’UAL :
La structure interne de l’UAL-4bits est composé des circuits suivants :
• Circuit AND (4-bit AND)
• Circuit OR (4-bit OR)
• Circuit XOR (4-bit XOR) :
• Circuit ADDER (Additionneur 4 bits) :
• Multiplexeur (MUX) :
• Circuit de drapeaux (Flag circuit) : Ce composant est constitué de circuits logiques qui
génèrent des signaux indicateurs en fonction du résultat des opérations effectuées.
Ces composants internes permettent à l'UAL de réaliser les opérations logiques et
arithmétiques nécessaires pour traiter les données en fonction de la commande ALU_op.
Dans un deuxième projet UAL-Struct :
1) Modéliser en VHDL l’UAL-4bits en décrivant sa structure interne dans un fichier
([Link]).
N.B : Il faut modéliser le fonctionnement de chacun des circuits qui constituent l’UAL
2) Modéliser en VHDL le test bench de l’UAL-4bits et donner des cas de tests pour simuler
le fonctionnement du circuit dans un fichier (UAL_TB.vhd).