Vous êtes sur la page 1sur 3

UNIVERSITE HASSAN II DE CASABLANCA – ENSET DE MOHAMMEDIA SYSTEME A MICROPROCESSEUR

Etude de cas :
Conception d’une carte à microprocesseur

On souhaite réaliser une carte mère monoprocesseur. Le processeur utilisé dispose des différents signaux pour
assurer le dialogue avec son environnement (le sens des signaux est donné par rapport processeur) :

• ADDR : Bus d’adresse sur 32 bits nommés de A0 à A31, A0 étant le LSB et A31 le MSB d’une adresse
;
• RW : Bus sur 3 bits (WR0, 1, 2) définissant le type d’accès (mot, demi-mot ou octet) et le sens du
transfert ;
WR2 WR1 WR0 Type d’accès
0 0 0 NO OPERATION
0 0 1 WRITE WORD
0 1 0 WRITE HALF WORD
0 1 1 WRITE BYTE
1 x x READ WORD

• DATA : Bus de donnée sur 32 bits (D0 à D31) avec D0 : LSB et D31 : MSB
• FRZ : un signal d’entrée pour inhiber le processeur (i.e. interdisant la modification, de son état interne).
Dans la suite, on fait l’hypothèse que ce bit est toujours à zéro ;
• BERR : un signal d’entrée indiquant la présence d’une adresse erronée. Par ailleurs, on suppose que les
instructions de ce processeur sont d’une taille fixe de 32bits.
Dans la suite, on fait l’hypothèse que les aspects temporels du protocole de communication entre les différents
composants sont résolus. Ainsi, la chronologie des questions a pour but de vous aider à élaborer
progressivement le schéma logique complet de ladite carte à microprocesseur. Pour cela, il est important de
respecter les indications de placement des composants fournies (figure 1).
I. Le Processeur
1. Quel est l’espace total adressable par le processeur décrit ci-dessus ? Représenter la MAP (ou plan
mémoire) du microprocesseur, en y faisant apparaitre l’adresse (Hexa) de la première case et l’adresse
de la dernière case.
2. Quelle est la taille d’une case mémoire adressable par le processeur étudié ?
3. Dessiner la représentation graphique du processeur avec ses connecteurs (figure 1). Préciser la direction
de ceux-ci et la taille des bus.
II. Les ROM
On souhaite connecter à ce processeur trois mémoires de type ROM, contenant respectivement le code exécuté
par le processeur lors d’un RESET (ROMreset), le code exécuté par le processeur lors d’une exception
(ROMexcep), et le code du programme principal (ROMprg) telles que :
Mémoire Capacité Adresse début (hexa) Format (bits) Output Enable
ROMreset 4KΦ BFC00000 32
Active sur niveau
ROMexcep 4KΦ 80000000 32
bas
ROMprg 64 KΦ 00400000 32

GECSI & GEER 1 (2022-2023) A. RAIHANI 1


UNIVERSITE HASSAN II DE CASABLANCA – ENSET DE MOHAMMEDIA SYSTEME A MICROPROCESSEUR

1. Déterminer le nombre de bits nécessaires à l’adressage de chacune des ROM.


2. Compléter le schéma en plaçant les trois composants ROM (reset, exception, code de gauche à droite).
Préciser la taille des bus, la direction de ceux-ci et comment le bus d’adresse (resp.de données) du
processeur est relié au bus d’adresse (resp. de données) des ROM.

III. Décodage d’adresse des ROM instructions


En fonction de l’adresse émise par le processeur, un des trois boîtiers doit être sélectionné si le CPU cherche à
accéder à la prochaine instruction. Suivant la valeur de l’adresse, il faut donc sélectionner un boîtier : c’est le
rôle de la logique de décodage.
1. Quels sont les signaux qui doivent intervenir comme entrées du bloc logique de décodage ?
2. Quels sont les signaux qui doivent intervenir comme sortie du bloc logique de décodage ?
3. Proposer un schéma du bloc logique de décodage des ROMs.
4. Rajouter un montage qui permet d’activer l’entrée BERR du processeur en cas d’erreur d’adressage.

IV. Les RAM


On souhaite connecter à la carte précédente deux boîtiers mémoire de type RAM, contenant respectivement les
données utilisateur et les données superviseur. Les RAM utilisateur et superviseur ont une taille de 64 KΦ. Elles
sont directement accessibles sur 32 bits mais, contrairement aux instructions qui sont exclusivement sur 32 bits,
on peut y faire des accès sous forme de mot, de demi-mot et d’octet. Elles doivent être situées respectivement
à partir des adresses 10000000h (utilisateur) et C0000000h (superviseur). En plus des bus d’adresse et de
données, chaque RAM dispose de trois entrées supplémentaires : ̅̅̅̅ 𝑂𝐸 (Output Enable), permettant de faire
passer la sortie de données de la RAM de l’état « HZ » à l’état « mémoire connectée sur le bus de données» et
donc de connecter la RAM en sortie sur le bus DATA, 𝑊𝐸 ̅̅̅̅̅ (Write Enable) qui permet de recopier la valeur
proposée sur le bus DATA à l’adresse considérée dans la RAM et SIZE (entrée de la mémoire sur 2 bits) définit
le type de transfert:
SIZE
00 WORD
01 HALFWORD
1X BYTE

1. Dessiner les deux composants RAM (utilisateur et superviseur de gauche à droite) (figure 1). Préciser
la taille des bus, la direction de ceux-ci et comment le bus d’adresse (resp. de données) du
microprocesseur est relié au bus d’adresse (resp. de données) des RAM.
2. Quels sont les signaux qui doivent intervenir comme entrées du bloc logique de décodage des RAM de
données ?
3. Quels sont les signaux qui doivent intervenir comme sortie du bloc logique de décodage des RAM de
données ?
4. Proposer un schéma du bloc logique de décodage, en supposant que l’on fait un décodage complet (un
boîtier RAM n’est vu qu’à une seule adresse du point de vue du processeur).
5. Question 16 Proposer une solution pour la génération du signal BERR à connecter sur le processeur.

GECSI & GEER 1 (2022-2023) A. RAIHANI 2


UNIVERSITE HASSAN II DE CASABLANCA – ENSET DE MOHAMMEDIA SYSTEME A MICROPROCESSEUR

Décodage

RAMs
RAMs
Processeur

Décodage

ROMs
ROMs

GECSI & GEER 1 (2022-2023) A. RAIHANI 3

Vous aimerez peut-être aussi