Vous êtes sur la page 1sur 8

Pierre-Louis CAYREL

www.cayrel.net
IUT de Saint-Etienne

Feuille n 4

d'aprs bacstielectronique.free.fr

Exercices - Architecture des systmes processeurs Architecture matrielle des systmes microprogramms
Table des matires
1 2 3 4 5 Ob jectifs Constitution d'un systme microprogramm Exemple de systme microprogramm Fonctions constituant l'architecture matrielle Bus de donnes, bus de contrle et bus d'adresses. 2 2 2 2 2

5.1 5.2 5.3


6

Le bus de donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Le bus de contrle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Le bus d'adresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rappel de dnitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Calcul de capacit mmoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2 3 3
4

Capacit mmoire d'un composant

6.1 6.2
7 8

4 4
5 7

Dcodage d'adresses Plan mmoire

Ob jectifs

   
2

Savoir Savoir Savoir Savoir

caractriser les bus d'adresses et de donnes. dterminer la taille mmoire d'un composant. dterminer les conditions de slection d'un composant. dessiner et lire un plan mmoire.

Constitution d'un systme microprogramm

Le systme microprogramm comporte deux lments complmentaires indissociables :  le programme qui dcrit la gestion du processus industriel. Le programme doit imprativement s'adapter l'architecture du circuit lectronique qu'il est cens piloter.  le(s) circuit(s) lectronique(s) qui hberge(nt) le programme et lui donne vie.
3 Exemple de systme microprogramm

Un microcontrleur peut contenir un systme microprogramm complet (ex : 68HC11 de Motorola). Il n'en est pas toujours ainsi et de nombreux systmes sont assembls de toutes pices. Exemple de systme microprogramm constitu autour d'un microprocesseur MC6809 de Motorola voir gure 2.
4 Fonctions constituant l'architecture matrielle

Dans tous les systmes microprogramms on retrouve des fonctions similaires :  Une unit de calcul appel MPU ou CPU.  Une mmoire programme. Son contenu doit tre conserv en dehors de toute alimentation. Trs souvent elle n'est accessible qu'en lecture (ROM).  Une mmoire des variables accessibles en lecture et en criture (RAM) qui doit pouvoir recevoir les donnes du programme ainsi que la pile systme.  Des circuits d'entres et de sorties, spcialiss dans la communication avec les circuits lectroniques.  Deux groupes d'quipotentielles caractristiques appels bus d'adresses et bus de donnes et un troisime groupe ddi au contrle.
5 Bus de donnes, bus de contrle et bus d'adresses.

Un bus est un ensemble de ls destin la communication entre les dirents circuits. Il est reprsent par un trait gras. Les quipotentielles qui rentrent dans un bus ne sont pas relies aux autres. Par contre, toutes les quipotentielles portant la mme rfrence sont relies entre elles. Sur la gure 2 on distingue nettement deux bus : le bus d'adresses et le bus de donnes. Les informations qui circulent sur les bus sont numriques.

5.1 Le bus de donnes


Le bus de donnes du schma ci-contre est constitu de 8 quipotentielles, c'est donc un bus 8 bits. Les bits de ce bus sont reprs de D7 D0. Colorier en rouge le bus de donnes et donn le nombre de valeurs possibles sur le bus. 2

Les valeurs transportes par le bus de donnes sont changes entre le microprocesseur et un autre composant. Les donnes peuvent transiter dans un sens ou dans l'autre, le bus est dit bidirectionnel. Lorsque les donnes vont du microprocesseur au composant cela est appel une criture (le microprocesseur crit une donne dans une case mmoire ou dans un registre).

Lorsque les donnes vont du composant au microprocesseur cela est appel une lecture (le microprocesseur lit une donne dans une case mmoire ou dans un registre).

5.2 Le bus de contrle


Le bus de contrle est souvent compos des ls suivants :  CS (Chip Select) ou CE(Chip Enable) : Permet de signaler que le composant est slectionn et que les ordres qu'il reoit sur les autres ls lui sont destins. Cette entre est gnralement active au niveau bas.  OE (Output Enable) : Permet de demander au composant de valider ses sorties, car les ls de donnes ont en gnral la particularit d'tre trois tats (niveau bas, niveau haut ou haute impdance). Cette entre est gnralement active au niveau bas.  RD/W (ReaD/Write) : Permet au microprocesseur d'informer un composant de la nature de l'change : lecture ou criture. La dnomination RD/W a pour signication :  RD : ReaD, accs en lecture lorsque ce l est l'tat 1.  /W : Write, accs en criture lorsque l'tat est 0. 1. Les composants qui sont relis au bus de donnes et qui sont relis RD/W sont accessibles en lecture et en criture. Quels sont ces composants ? 2. Les composants qui sont relis au bus de donnes et qui ne sont pas relis RD/W sont en lecture seulement. Quels sont ces composants ?

5.3 Le bus d'adresses


Le bus d'adresses du schma de la page 1 est constitu de 16 quipotentielles, c'est donc un bus 16 bits. Les bits de ce bus sont reprs de A15 A0. 1. Colorier en vert le bus d'adresse du schma. 2. Le nombre d'adresses possibles est .... = .... Il est donc possible d'adresser .... cases mmoires de .... (taille du bus de donnes). 3

3. La premire adresse s'crit : 4. La dernire adresse s'crit : Ce bus n'est pas bidirectionnel. Il est en sortie pour le microprocesseur, c'est lui qui dcide de l'adresse, il est en entre pour les autres composants.

Capacit mmoire d'un composant

6.1 Rappel de dnitions


 BIT : lment binaire (BInary digiT) qui peut prendre deux tats : 0 ou 1.  MOT BINAIRE : groupe d'tats binaires (ls d'adresses, de donnes, contenu. . . ) reprsentant un nombre en base 2.  OCTET : mot binaire de huit bits (se dit BYTE en anglo-saxon).  POIDS BINAIRE : valeur associe au rang d'un chire dans le nombre en base 2.  MSB (Most Signicant Bit) : bit de poids le plus fort du nombre.  LSB (Least Signicant Bit) : bit de poids le plus faible du nombre.  KILO-x : dans le jargon informatique c'est une sous unit de x qui ne vaut pas 1000 units x mais 1024 x (1024 = 210).

6.2 Calcul de capacit mmoire


La capacit mmoire est le nombre de cases mmoires de 1 bit contenu dans un composant mmoire. Soit le nombre de ls d'adresses et le nombre de ls de donnes.

1. Puisque le nombre d'adresses est 2 et qu' chaque adresse correspond la capacit d'une mmoire est .... 2. Soit en kilo-bits : 3. Soit en octets : 4. Soit en kilo-octets :

bits de donnes,

Exemple : Pour le systme microprocesseur de la page prcdente, donner la capacit mmoire des composants 2764 (ROM) : 1. En nombre d'octets : 2. En nombre de kilo-octets : 3. En nombre de bits : 4. En nombre de kilo-bits : 5. Que peut-on dire de la capacit mmoire du composant 6264 (RAM) ?
7 Dcodage d'adresses

Chaque composant d'une carte microprogramme doit tre accessible par le CPU. Par exemple, si le CPU est en train de sauvegarder une variable, il faut que le composant RAM soit slectionn et que les autres composants soient inhibs. An d'ordonner le systme, une plage d'adresses est rserve chaque composant. La fonction ayant pour tche l'attribution des adresses s'appelle dcodage d'adresses. Dans l'exemple donn en gure 2, le dcodage d'adresses est ralis par un circuit spcialis : un dcodeur-dmultiplexeur 3 vers 8 (74138). Multiplexeur ou slecteur de donnes : c'est un circuit logique ayant plusieurs entres de donnes mais une seule sortie qui communique ces donnes. L'aiguillage de l'entre de donnes qui nous intresse vers la sortie est command par une entre de slection select appele parfois entre d'adresse. Dmultiplexeur : un multiplexeur est sollicit par plusieurs entres, mais ne transmet qu'une de ces dernires la sortie. Un dmultiplexeur eectue l'opration inverse : il n'a qu'une seule entre qu'il dirige vers une sortie parmi plusieurs.

Complter la table de vrit du 74138. C 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 A 0 1 0 1 0 1 0 1 Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7

D'aprs la reprsentation normalise des composants IC2, IC3, IC4 et IC5, quels doivent tre les niveaux logiques prsents sur /ROM1, /ROM2, /RAM et /PIA pour que : 1. Seul IC2 soit slectionn : 2. Seul IC3 soit slectionn : 3. Seul IC4 soit slectionn : 4. Seul IC5 soit slectionn : Dduire de la table de vrit du 74138 et des rsultats prcdents les niveaux logiques que devra appliquer le CPU sur A13, A14 et A15 pour slectionner : 1. Le composant PIA IC5 : 2. Le composant RAM IC4 : 3. Le composant ROM2 IC3 : 4. Le composant ROM1 IC2 : On remarque que les lignes d'adresses de poids plus faibles (A12, A11. . . A0) ne participent pas la slection des composants. chaque combinaison (A15 ; A14 ; A13) correspond tout un ensemble d'adresses. Complter le tableau suivant selon l'exemple.

La taille d'une plage d'adresses de slection est tout simplement le nombre d'adresses que l'on peut crire entre sa premire et sa dernire adresse (comprise). La taille de la plage d'adresses slectionne par /ROM1 est .... La taille de la plage d'adresses slectionne par /PIA est galement 213 pourtant il n'y a que 24 adresses eectives pour le composant PIA. En eet seuls A0, A1, A2 et A3 sont relis ce composant, les ls A4 A12 sont donc indirents. On peut slectionner chaque adresse du PIA indiremment avec les 29 combinaisons de A4 A12. On dit que ce composant 29 adresses images et qu'il s'agit d'un dcodage partiel. Pour les autres composants de la carte, tout le bus d'adresses est utilis, il s'agit donc d'un dcodage complet.

Plan mmoire

C'est une reprsentation graphique, un plan mmoire (en anglais memory map), de ce que le microprocesseur est susceptible de trouver telle ou telle adresse. Le plan mmoire est la traduction graphique du dcodage d'adresses.

Figure 1  Plan mmoire d'un systme


La reprsentation ci-contre est le plan mmoire du microcontrleur 68HC11A8 (8 bits).

1. Quelles sont les adresses de dbut et de n de la zone de RAM ? La zone RAM comporte combien d'adresses ? 2. Quelles sont les adresses de dbut et de n de la zone de EEPROM ? La zone EEPROM comporte combien d'adresses ? 3. Quelles sont les adresses de dbut et de n de la zone de ROM (En dehors de la zone INTERRUPT VECTORS) ? La zone ROM comporte combien d'adresses ? 7

Figure 2  MC6809 de Motorola


8

Vous aimerez peut-être aussi