universite grenoble alpes´

109
Introduction Contr ˆ oleur d’entr ´ ees-sorties ecodage d’adresses emoire cache emoire virtuelle Organisation Interne d’un ordinateur Denis Bouhineau Fabienne Carrier St´ ephane Devismes Universit ´ e Grenoble Alpes 13 avril 2020 Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 1 / 32

Upload: others

Post on 04-Oct-2021

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Organisation Interne d’un ordinateur

Denis Bouhineau Fabienne Carrier Stephane Devismes

Universite Grenoble Alpes

13 avril 2020

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 1 / 32

Page 2: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Plan

1 Introduction

2 Controleur d’entrees-sorties

3 Decodage d’adresses

4 Memoire cache

5 Memoire virtuelle

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 2 / 32

Page 3: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Plan

1 Introduction

2 Controleur d’entrees-sorties

3 Decodage d’adresses

4 Memoire cache

5 Memoire virtuelle

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 3 / 32

Page 4: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Organisation de l’ordinateur

Il existe differentes sortes d’ordinateurs :

Les PCLes ordinateurs portablesLes serveursLes super-calculateursLes telephones portablesDans l’electro-menager, . . .

On parle souvent de systemes embarques pour designer unordinateur qui ne ressemble pas a un ordinateur ! C’est-a-dire, pasde clavier, pas de souris, pas de disque, pas d’ecran, mais unprocesseur avec un programme

Exemple : Le controleur de distribution d’essence d’une stationservice.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 4 / 32

Page 5: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Organisation de l’ordinateur

Il existe differentes sortes d’ordinateurs :

Les PCLes ordinateurs portables

Les serveursLes super-calculateursLes telephones portablesDans l’electro-menager, . . .

On parle souvent de systemes embarques pour designer unordinateur qui ne ressemble pas a un ordinateur ! C’est-a-dire, pasde clavier, pas de souris, pas de disque, pas d’ecran, mais unprocesseur avec un programme

Exemple : Le controleur de distribution d’essence d’une stationservice.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 4 / 32

Page 6: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Organisation de l’ordinateur

Il existe differentes sortes d’ordinateurs :

Les PCLes ordinateurs portablesLes serveursLes super-calculateurs

Les telephones portablesDans l’electro-menager, . . .

On parle souvent de systemes embarques pour designer unordinateur qui ne ressemble pas a un ordinateur ! C’est-a-dire, pasde clavier, pas de souris, pas de disque, pas d’ecran, mais unprocesseur avec un programme

Exemple : Le controleur de distribution d’essence d’une stationservice.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 4 / 32

Page 7: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Organisation de l’ordinateur

Il existe differentes sortes d’ordinateurs :

Les PCLes ordinateurs portablesLes serveursLes super-calculateursLes telephones portablesDans l’electro-menager, . . .

On parle souvent de systemes embarques pour designer unordinateur qui ne ressemble pas a un ordinateur ! C’est-a-dire, pasde clavier, pas de souris, pas de disque, pas d’ecran, mais unprocesseur avec un programme

Exemple : Le controleur de distribution d’essence d’une stationservice.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 4 / 32

Page 8: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Organisation de l’ordinateur

Il existe differentes sortes d’ordinateurs :

Les PCLes ordinateurs portablesLes serveursLes super-calculateursLes telephones portablesDans l’electro-menager, . . .

On parle souvent de systemes embarques pour designer unordinateur qui ne ressemble pas a un ordinateur ! C’est-a-dire, pasde clavier, pas de souris, pas de disque, pas d’ecran, mais unprocesseur avec un programme

Exemple : Le controleur de distribution d’essence d’une stationservice.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 4 / 32

Page 9: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Organisation de l’ordinateur

Il existe differentes sortes d’ordinateurs :

Les PCLes ordinateurs portablesLes serveursLes super-calculateursLes telephones portablesDans l’electro-menager, . . .

On parle souvent de systemes embarques pour designer unordinateur qui ne ressemble pas a un ordinateur ! C’est-a-dire, pasde clavier, pas de souris, pas de disque, pas d’ecran, mais unprocesseur avec un programme

Exemple : Le controleur de distribution d’essence d’une stationservice.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 4 / 32

Page 10: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Criteres de classification

Peut-on ajouter des programmes et les lancer? (cartouche dejeu, par exemple ...)

Peut-on ajouter des programmes en langage machine ecrits,compiles et assembles soi-meme?

Y-a-t-il des memoires secondaires? (disque dur, cle USB,CD-Rom, . . .)

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 5 / 32

Page 11: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Criteres de classification

Peut-on ajouter des programmes et les lancer? (cartouche dejeu, par exemple ...)

Peut-on ajouter des programmes en langage machine ecrits,compiles et assembles soi-meme?

Y-a-t-il des memoires secondaires? (disque dur, cle USB,CD-Rom, . . .)

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 5 / 32

Page 12: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Criteres de classification

Peut-on ajouter des programmes et les lancer? (cartouche dejeu, par exemple ...)

Peut-on ajouter des programmes en langage machine ecrits,compiles et assembles soi-meme?

Y-a-t-il des memoires secondaires? (disque dur, cle USB,CD-Rom, . . .)

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 5 / 32

Page 13: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Criteres de classification

Peut-on ajouter des programmes et les lancer? (cartouche dejeu, par exemple ...)

Peut-on ajouter des programmes en langage machine ecrits,compiles et assembles soi-meme?

Y-a-t-il des memoires secondaires? (disque dur, cle USB,CD-Rom, . . .)

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 5 / 32

Page 14: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Points communs

Il y a des points communs :

Processeur

Memoire

Bus adresses, donnees

Signaux de controle (Read/Write, autres),

. . .

Controleurs d’entrees-sorties

Decodeur

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 6 / 32

Page 15: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Points communs

Il y a des points communs :

Processeur

Memoire

Bus adresses, donnees

Signaux de controle (Read/Write, autres),

. . .

Controleurs d’entrees-sorties

Decodeur

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 6 / 32

Page 16: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Points communs

Il y a des points communs :

Processeur

Memoire

Bus adresses, donnees

Signaux de controle (Read/Write, autres),

. . .

Controleurs d’entrees-sorties

Decodeur

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 6 / 32

Page 17: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Points communs

Il y a des points communs :

Processeur

Memoire

Bus adresses, donnees

Signaux de controle (Read/Write, autres),

. . .

Controleurs d’entrees-sorties

Decodeur

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 6 / 32

Page 18: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Points communs

Il y a des points communs :

Processeur

Memoire

Bus adresses, donnees

Signaux de controle (Read/Write, autres),

. . .

Controleurs d’entrees-sorties

Decodeur

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 6 / 32

Page 19: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Points communs

Il y a des points communs :

Processeur

Memoire

Bus adresses, donnees

Signaux de controle (Read/Write, autres),

. . .

Controleurs d’entrees-sorties

Decodeur

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 6 / 32

Page 20: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Plan

1 Introduction

2 Controleur d’entrees-sorties

3 Decodage d’adresses

4 Memoire cache

5 Memoire virtuelle

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 7 / 32

Page 21: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Vision externe (exemple)

Un simple circuit avec 4 registres qui fait l’interface entre leperipherique et la machine (niveau OS)Le circuit est vu par le processeur (espace d’adressage) comme4 mots :

Mcommande (un mot de commande)Metat (un mot d’etat)Mdonneessort (donnees sortantes)Mdonneesentr (donnees entrantes)

Gere par un logiciel : le pilote

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 8 / 32

Page 22: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Lectures/ecriture par le processeur (via le pilote)

Ecriture Lors d’une ecriture (instruction STORE) dans un des trois registresMcommande, Metat, Mdonneessort, le processeur envoie ladonnee a ecrire dans le bus de donnee puis la donnee esttransferee du bus de donnee au registre du circuit controleurd’Entrees-Sorties.

Lecture Lors d’une lecture (instruction LOAD) dans le registreMdonneesentr ou dans le registre Metat, le processeurrecupere le contenu du registre Mdonneesentr (resp. Metat) viale bus de donnee.

Les 4 mots (Mcommande, Metat, Mdonneessort, Mdonneesentr)seront supposes aux adresses CNTRL, CNTRL+1, +2, +3.

Attention : CNTRL est une adresse constante, pas determinee parl’assembleur. Elle a un sens physique qu’on va voir maintenant. . .

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 9 / 32

Page 23: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Lectures/ecriture par le processeur (via le pilote)

Ecriture Lors d’une ecriture (instruction STORE) dans un des trois registresMcommande, Metat, Mdonneessort, le processeur envoie ladonnee a ecrire dans le bus de donnee puis la donnee esttransferee du bus de donnee au registre du circuit controleurd’Entrees-Sorties.

Lecture Lors d’une lecture (instruction LOAD) dans le registreMdonneesentr ou dans le registre Metat, le processeurrecupere le contenu du registre Mdonneesentr (resp. Metat) viale bus de donnee.

Les 4 mots (Mcommande, Metat, Mdonneessort, Mdonneesentr)seront supposes aux adresses CNTRL, CNTRL+1, +2, +3.

Attention : CNTRL est une adresse constante, pas determinee parl’assembleur. Elle a un sens physique qu’on va voir maintenant. . .

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 9 / 32

Page 24: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Lectures/ecriture par le processeur (via le pilote)

Ecriture Lors d’une ecriture (instruction STORE) dans un des trois registresMcommande, Metat, Mdonneessort, le processeur envoie ladonnee a ecrire dans le bus de donnee puis la donnee esttransferee du bus de donnee au registre du circuit controleurd’Entrees-Sorties.

Lecture Lors d’une lecture (instruction LOAD) dans le registreMdonneesentr ou dans le registre Metat, le processeurrecupere le contenu du registre Mdonneesentr (resp. Metat) viale bus de donnee.

Les 4 mots (Mcommande, Metat, Mdonneessort, Mdonneesentr)seront supposes aux adresses CNTRL, CNTRL+1, +2, +3.

Attention : CNTRL est une adresse constante, pas determinee parl’assembleur. Elle a un sens physique qu’on va voir maintenant. . .

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 9 / 32

Page 25: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Notations

Commande Signification

LOAD reg, Metat METTRE l’adresse CNTRLdans un registre regadpuis LOAD reg, [regad+1]

STORE reg, Mdonneessort METTRE l’adresse CNTRLdans un registre regadpuis STORE reg, [regad+2]

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 10 / 32

Page 26: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Utilisation du controleur d’entrees-sorties : exemple

Dans la documentation technique d’un controleur, certaines valeurssont predefinies.

Considerons ici l’exemple (simpliste) d’un controleur graphique avecles valeurs predefinies suivantes :

libre : cette valeur dans le mot d’etat signifie que le controleurest pret a accepter une commande. Le controleur tient a jour sonetat de disponibilite pour que le processeur puisse savoir si il estoccupe ou non.

fond ecran : cette valeur, envoyee vers le mot de commande,affiche un fond d’ecran de la couleur contenue dans le registre dedonnees sortantes.

rouge : code de la couleur rouge, peut etre contenu dans leregistre de donnees sortantes.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 11 / 32

Page 27: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Utilisation du controleur d’entrees-sorties : exemple

Dans la documentation technique d’un controleur, certaines valeurssont predefinies.

Considerons ici l’exemple (simpliste) d’un controleur graphique avecles valeurs predefinies suivantes :

libre : cette valeur dans le mot d’etat signifie que le controleurest pret a accepter une commande. Le controleur tient a jour sonetat de disponibilite pour que le processeur puisse savoir si il estoccupe ou non.

fond ecran : cette valeur, envoyee vers le mot de commande,affiche un fond d’ecran de la couleur contenue dans le registre dedonnees sortantes.

rouge : code de la couleur rouge, peut etre contenu dans leregistre de donnees sortantes.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 11 / 32

Page 28: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Exercice

Ecrire un programme qui change la couleur de fond d’ecran en rouge via lecontroleur graphique.

recom : LOAD reg, MetatCMP reg, libreBNE recomSTORE rouge, MdonneessortSTORE fond ecran, Mcommande

Remarque : On aurait de meme des actions d’envoi :

d’un caractere a l’ecran,

de positionnement de la tete de lecture d’un disque dur,

. . .

Les controleurs reels sont parfois tres simples, parfois tres complexes(simple affichage comme ci-dessus, controleur reseau. . .) parfois pour uneseule commande, plusieurs donnees. . .

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 12 / 32

Page 29: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Exercice

Ecrire un programme qui change la couleur de fond d’ecran en rouge via lecontroleur graphique.

recom : LOAD reg, MetatCMP reg, libreBNE recomSTORE rouge, MdonneessortSTORE fond ecran, Mcommande

Remarque : On aurait de meme des actions d’envoi :

d’un caractere a l’ecran,

de positionnement de la tete de lecture d’un disque dur,

. . .

Les controleurs reels sont parfois tres simples, parfois tres complexes(simple affichage comme ci-dessus, controleur reseau. . .) parfois pour uneseule commande, plusieurs donnees. . .

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 12 / 32

Page 30: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Exercice

Ecrire un programme qui change la couleur de fond d’ecran en rouge via lecontroleur graphique.

recom : LOAD reg, MetatCMP reg, libreBNE recomSTORE rouge, MdonneessortSTORE fond ecran, Mcommande

Remarque : On aurait de meme des actions d’envoi :

d’un caractere a l’ecran,

de positionnement de la tete de lecture d’un disque dur,

. . .

Les controleurs reels sont parfois tres simples, parfois tres complexes(simple affichage comme ci-dessus, controleur reseau. . .) parfois pour uneseule commande, plusieurs donnees. . .

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 12 / 32

Page 31: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Etude du materiel d’entrees-sorties : les entrees

clock, reset,..

acquittement

ensemble des signaux de contrôle

envoi

ext

ext

connexion des adresses

4 bits faibles contrôleur

autre

ad dans [toto, toto+15]

bus adresses2 bits faibles

selection

connexion du contrôle

lire/ecrirebar

connexion des données

bus données

état

commande

sortantes

entrantes

procétat

commande

sortantes

entrantes

proc

dans [CNTRL, CNTRL+3]

L’adresse est

procétat

commande

sortantes

entrantes

Fig. 1 – Connexions entre processeur, controleur d’entrees sorties et monde exterieur ; le dessin est en troisparties pour mettre en evidence les trois types d’informations vehiculees par les fils, mais bien sur les filssont tous presents dans l’assemblage.

hexadecimaux. On note val x une valeur representee en hexa. On dira, pour simplifier, que l’entree A”vaut” 67 x pour dire que les 8 fils sont dans les etats 0110 0111.

L’ordinateur est organise ainsi : (Voir figure 2

1. Le mot (lu ou ecrit) est pris dans une memoire morte (ROM) ssi l’entree A est telle que 0 x<= A <= 3F xc’est a dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 0 0 0 0 0 0 0 et0 0 1 1 1 1 1 1Ceci couvre les 64 monomes canoniques pour lesquels A7=0 et A6=0.Le boıtier physique de ROM, qui contient 64 mots recoit deux types d’information– les 6 fils A5 A4 A3 A2 A1 A0 qui permettent d’adresser un des 64 mots– UN FIL de selection selrom qui vaut 1 ssi A7=0 et A6=0. On voit que selrom=A7’.A6’.

2. Le mot (lu ou ecrit) est pris dans le controleur d’entrees sorties (vu precedemment) ssi l’entreeA est telle que 58 x <= A <= 5B x(On a choisi que CNTRL = 58 x)c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 1 0 1 1 0 0 0 et0 1 0 1 1 0 1 1Ceci couvre les 4 monomes canoniques pour lesquels A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.Le boıtier physique de controleur, qui contient 4 mots, recoit deux types d’information- les 2 fils A1 A0 qui permettent d’adresser un des 4 mots– UN FIL de selection selcntr qui vaut 1 ssi A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.On voit que selcntr=A7’.A6.A5’.A4.A3.A2’

3. Le mot (lu ou ecrit) est pris dans le boıtier de memoire vive ssi l’entree A est telle que 80 x<= A <= FF x c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre1 0 0 0 0 0 0 0 et

3

acquittement

bus donnees (lie au processeur)

deux bits de bus adresses (pour selectionnerl’un des 4 mots CNTRL +0, +1, +2 ou +3)

un signal de selection provenant du decodeurd’adresses

le signal Read/Write du processeur

un paquet de donnees (8 fils) venant du mondeexterieur. Disons pour simplifier 8 interrupteurs

le signal d’horloge (par exemple le meme que leprocesseur). On peut raisonner comme si, achaque front de l’horloge la valeur venant desinterrupteurs etait echantillonnee dans leregistre Mdonneesentr.

une entree ACQUITTEMENT si c’est uncontroleur de sortie.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 13 / 32

Page 32: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Etude du materiel d’entrees-sorties : les entrees

clock, reset,..

acquittement

ensemble des signaux de contrôle

envoi

ext

ext

connexion des adresses

4 bits faibles contrôleur

autre

ad dans [toto, toto+15]

bus adresses2 bits faibles

selection

connexion du contrôle

lire/ecrirebar

connexion des données

bus données

état

commande

sortantes

entrantes

procétat

commande

sortantes

entrantes

proc

dans [CNTRL, CNTRL+3]

L’adresse est

procétat

commande

sortantes

entrantes

Fig. 1 – Connexions entre processeur, controleur d’entrees sorties et monde exterieur ; le dessin est en troisparties pour mettre en evidence les trois types d’informations vehiculees par les fils, mais bien sur les filssont tous presents dans l’assemblage.

hexadecimaux. On note val x une valeur representee en hexa. On dira, pour simplifier, que l’entree A”vaut” 67 x pour dire que les 8 fils sont dans les etats 0110 0111.

L’ordinateur est organise ainsi : (Voir figure 2

1. Le mot (lu ou ecrit) est pris dans une memoire morte (ROM) ssi l’entree A est telle que 0 x<= A <= 3F xc’est a dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 0 0 0 0 0 0 0 et0 0 1 1 1 1 1 1Ceci couvre les 64 monomes canoniques pour lesquels A7=0 et A6=0.Le boıtier physique de ROM, qui contient 64 mots recoit deux types d’information– les 6 fils A5 A4 A3 A2 A1 A0 qui permettent d’adresser un des 64 mots– UN FIL de selection selrom qui vaut 1 ssi A7=0 et A6=0. On voit que selrom=A7’.A6’.

2. Le mot (lu ou ecrit) est pris dans le controleur d’entrees sorties (vu precedemment) ssi l’entreeA est telle que 58 x <= A <= 5B x(On a choisi que CNTRL = 58 x)c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 1 0 1 1 0 0 0 et0 1 0 1 1 0 1 1Ceci couvre les 4 monomes canoniques pour lesquels A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.Le boıtier physique de controleur, qui contient 4 mots, recoit deux types d’information- les 2 fils A1 A0 qui permettent d’adresser un des 4 mots– UN FIL de selection selcntr qui vaut 1 ssi A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.On voit que selcntr=A7’.A6.A5’.A4.A3.A2’

3. Le mot (lu ou ecrit) est pris dans le boıtier de memoire vive ssi l’entree A est telle que 80 x<= A <= FF x c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre1 0 0 0 0 0 0 0 et

3

acquittement

bus donnees (lie au processeur)

deux bits de bus adresses (pour selectionnerl’un des 4 mots CNTRL +0, +1, +2 ou +3)

un signal de selection provenant du decodeurd’adresses

le signal Read/Write du processeur

un paquet de donnees (8 fils) venant du mondeexterieur. Disons pour simplifier 8 interrupteurs

le signal d’horloge (par exemple le meme que leprocesseur). On peut raisonner comme si, achaque front de l’horloge la valeur venant desinterrupteurs etait echantillonnee dans leregistre Mdonneesentr.

une entree ACQUITTEMENT si c’est uncontroleur de sortie.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 13 / 32

Page 33: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Etude du materiel d’entrees-sorties : les entrees

clock, reset,..

acquittement

ensemble des signaux de contrôle

envoi

ext

ext

connexion des adresses

4 bits faibles contrôleur

autre

ad dans [toto, toto+15]

bus adresses2 bits faibles

selection

connexion du contrôle

lire/ecrirebar

connexion des données

bus données

état

commande

sortantes

entrantes

procétat

commande

sortantes

entrantes

proc

dans [CNTRL, CNTRL+3]

L’adresse est

procétat

commande

sortantes

entrantes

Fig. 1 – Connexions entre processeur, controleur d’entrees sorties et monde exterieur ; le dessin est en troisparties pour mettre en evidence les trois types d’informations vehiculees par les fils, mais bien sur les filssont tous presents dans l’assemblage.

hexadecimaux. On note val x une valeur representee en hexa. On dira, pour simplifier, que l’entree A”vaut” 67 x pour dire que les 8 fils sont dans les etats 0110 0111.

L’ordinateur est organise ainsi : (Voir figure 2

1. Le mot (lu ou ecrit) est pris dans une memoire morte (ROM) ssi l’entree A est telle que 0 x<= A <= 3F xc’est a dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 0 0 0 0 0 0 0 et0 0 1 1 1 1 1 1Ceci couvre les 64 monomes canoniques pour lesquels A7=0 et A6=0.Le boıtier physique de ROM, qui contient 64 mots recoit deux types d’information– les 6 fils A5 A4 A3 A2 A1 A0 qui permettent d’adresser un des 64 mots– UN FIL de selection selrom qui vaut 1 ssi A7=0 et A6=0. On voit que selrom=A7’.A6’.

2. Le mot (lu ou ecrit) est pris dans le controleur d’entrees sorties (vu precedemment) ssi l’entreeA est telle que 58 x <= A <= 5B x(On a choisi que CNTRL = 58 x)c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 1 0 1 1 0 0 0 et0 1 0 1 1 0 1 1Ceci couvre les 4 monomes canoniques pour lesquels A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.Le boıtier physique de controleur, qui contient 4 mots, recoit deux types d’information- les 2 fils A1 A0 qui permettent d’adresser un des 4 mots– UN FIL de selection selcntr qui vaut 1 ssi A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.On voit que selcntr=A7’.A6.A5’.A4.A3.A2’

3. Le mot (lu ou ecrit) est pris dans le boıtier de memoire vive ssi l’entree A est telle que 80 x<= A <= FF x c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre1 0 0 0 0 0 0 0 et

3

acquittement

bus donnees (lie au processeur)

deux bits de bus adresses (pour selectionnerl’un des 4 mots CNTRL +0, +1, +2 ou +3)

un signal de selection provenant du decodeurd’adresses

le signal Read/Write du processeur

un paquet de donnees (8 fils) venant du mondeexterieur. Disons pour simplifier 8 interrupteurs

le signal d’horloge (par exemple le meme que leprocesseur). On peut raisonner comme si, achaque front de l’horloge la valeur venant desinterrupteurs etait echantillonnee dans leregistre Mdonneesentr.

une entree ACQUITTEMENT si c’est uncontroleur de sortie.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 13 / 32

Page 34: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Etude du materiel d’entrees-sorties : les entrees

clock, reset,..

acquittement

ensemble des signaux de contrôle

envoi

ext

ext

connexion des adresses

4 bits faibles contrôleur

autre

ad dans [toto, toto+15]

bus adresses2 bits faibles

selection

connexion du contrôle

lire/ecrirebar

connexion des données

bus données

état

commande

sortantes

entrantes

procétat

commande

sortantes

entrantes

proc

dans [CNTRL, CNTRL+3]

L’adresse est

procétat

commande

sortantes

entrantes

Fig. 1 – Connexions entre processeur, controleur d’entrees sorties et monde exterieur ; le dessin est en troisparties pour mettre en evidence les trois types d’informations vehiculees par les fils, mais bien sur les filssont tous presents dans l’assemblage.

hexadecimaux. On note val x une valeur representee en hexa. On dira, pour simplifier, que l’entree A”vaut” 67 x pour dire que les 8 fils sont dans les etats 0110 0111.

L’ordinateur est organise ainsi : (Voir figure 2

1. Le mot (lu ou ecrit) est pris dans une memoire morte (ROM) ssi l’entree A est telle que 0 x<= A <= 3F xc’est a dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 0 0 0 0 0 0 0 et0 0 1 1 1 1 1 1Ceci couvre les 64 monomes canoniques pour lesquels A7=0 et A6=0.Le boıtier physique de ROM, qui contient 64 mots recoit deux types d’information– les 6 fils A5 A4 A3 A2 A1 A0 qui permettent d’adresser un des 64 mots– UN FIL de selection selrom qui vaut 1 ssi A7=0 et A6=0. On voit que selrom=A7’.A6’.

2. Le mot (lu ou ecrit) est pris dans le controleur d’entrees sorties (vu precedemment) ssi l’entreeA est telle que 58 x <= A <= 5B x(On a choisi que CNTRL = 58 x)c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 1 0 1 1 0 0 0 et0 1 0 1 1 0 1 1Ceci couvre les 4 monomes canoniques pour lesquels A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.Le boıtier physique de controleur, qui contient 4 mots, recoit deux types d’information- les 2 fils A1 A0 qui permettent d’adresser un des 4 mots– UN FIL de selection selcntr qui vaut 1 ssi A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.On voit que selcntr=A7’.A6.A5’.A4.A3.A2’

3. Le mot (lu ou ecrit) est pris dans le boıtier de memoire vive ssi l’entree A est telle que 80 x<= A <= FF x c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre1 0 0 0 0 0 0 0 et

3

acquittement

bus donnees (lie au processeur)

deux bits de bus adresses (pour selectionnerl’un des 4 mots CNTRL +0, +1, +2 ou +3)

un signal de selection provenant du decodeurd’adresses

le signal Read/Write du processeur

un paquet de donnees (8 fils) venant du mondeexterieur. Disons pour simplifier 8 interrupteurs

le signal d’horloge (par exemple le meme que leprocesseur). On peut raisonner comme si, achaque front de l’horloge la valeur venant desinterrupteurs etait echantillonnee dans leregistre Mdonneesentr.

une entree ACQUITTEMENT si c’est uncontroleur de sortie.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 13 / 32

Page 35: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Etude du materiel d’entrees-sorties : les entrees

clock, reset,..

acquittement

ensemble des signaux de contrôle

envoi

ext

ext

connexion des adresses

4 bits faibles contrôleur

autre

ad dans [toto, toto+15]

bus adresses2 bits faibles

selection

connexion du contrôle

lire/ecrirebar

connexion des données

bus données

état

commande

sortantes

entrantes

procétat

commande

sortantes

entrantes

proc

dans [CNTRL, CNTRL+3]

L’adresse est

procétat

commande

sortantes

entrantes

Fig. 1 – Connexions entre processeur, controleur d’entrees sorties et monde exterieur ; le dessin est en troisparties pour mettre en evidence les trois types d’informations vehiculees par les fils, mais bien sur les filssont tous presents dans l’assemblage.

hexadecimaux. On note val x une valeur representee en hexa. On dira, pour simplifier, que l’entree A”vaut” 67 x pour dire que les 8 fils sont dans les etats 0110 0111.

L’ordinateur est organise ainsi : (Voir figure 2

1. Le mot (lu ou ecrit) est pris dans une memoire morte (ROM) ssi l’entree A est telle que 0 x<= A <= 3F xc’est a dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 0 0 0 0 0 0 0 et0 0 1 1 1 1 1 1Ceci couvre les 64 monomes canoniques pour lesquels A7=0 et A6=0.Le boıtier physique de ROM, qui contient 64 mots recoit deux types d’information– les 6 fils A5 A4 A3 A2 A1 A0 qui permettent d’adresser un des 64 mots– UN FIL de selection selrom qui vaut 1 ssi A7=0 et A6=0. On voit que selrom=A7’.A6’.

2. Le mot (lu ou ecrit) est pris dans le controleur d’entrees sorties (vu precedemment) ssi l’entreeA est telle que 58 x <= A <= 5B x(On a choisi que CNTRL = 58 x)c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 1 0 1 1 0 0 0 et0 1 0 1 1 0 1 1Ceci couvre les 4 monomes canoniques pour lesquels A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.Le boıtier physique de controleur, qui contient 4 mots, recoit deux types d’information- les 2 fils A1 A0 qui permettent d’adresser un des 4 mots– UN FIL de selection selcntr qui vaut 1 ssi A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.On voit que selcntr=A7’.A6.A5’.A4.A3.A2’

3. Le mot (lu ou ecrit) est pris dans le boıtier de memoire vive ssi l’entree A est telle que 80 x<= A <= FF x c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre1 0 0 0 0 0 0 0 et

3

acquittement

bus donnees (lie au processeur)

deux bits de bus adresses (pour selectionnerl’un des 4 mots CNTRL +0, +1, +2 ou +3)

un signal de selection provenant du decodeurd’adresses

le signal Read/Write du processeur

un paquet de donnees (8 fils) venant du mondeexterieur. Disons pour simplifier 8 interrupteurs

le signal d’horloge (par exemple le meme que leprocesseur). On peut raisonner comme si, achaque front de l’horloge la valeur venant desinterrupteurs etait echantillonnee dans leregistre Mdonneesentr.

une entree ACQUITTEMENT si c’est uncontroleur de sortie.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 13 / 32

Page 36: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Etude du materiel d’entrees-sorties : les entrees

clock, reset,..

acquittement

ensemble des signaux de contrôle

envoi

ext

ext

connexion des adresses

4 bits faibles contrôleur

autre

ad dans [toto, toto+15]

bus adresses2 bits faibles

selection

connexion du contrôle

lire/ecrirebar

connexion des données

bus données

état

commande

sortantes

entrantes

procétat

commande

sortantes

entrantes

proc

dans [CNTRL, CNTRL+3]

L’adresse est

procétat

commande

sortantes

entrantes

Fig. 1 – Connexions entre processeur, controleur d’entrees sorties et monde exterieur ; le dessin est en troisparties pour mettre en evidence les trois types d’informations vehiculees par les fils, mais bien sur les filssont tous presents dans l’assemblage.

hexadecimaux. On note val x une valeur representee en hexa. On dira, pour simplifier, que l’entree A”vaut” 67 x pour dire que les 8 fils sont dans les etats 0110 0111.

L’ordinateur est organise ainsi : (Voir figure 2

1. Le mot (lu ou ecrit) est pris dans une memoire morte (ROM) ssi l’entree A est telle que 0 x<= A <= 3F xc’est a dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 0 0 0 0 0 0 0 et0 0 1 1 1 1 1 1Ceci couvre les 64 monomes canoniques pour lesquels A7=0 et A6=0.Le boıtier physique de ROM, qui contient 64 mots recoit deux types d’information– les 6 fils A5 A4 A3 A2 A1 A0 qui permettent d’adresser un des 64 mots– UN FIL de selection selrom qui vaut 1 ssi A7=0 et A6=0. On voit que selrom=A7’.A6’.

2. Le mot (lu ou ecrit) est pris dans le controleur d’entrees sorties (vu precedemment) ssi l’entreeA est telle que 58 x <= A <= 5B x(On a choisi que CNTRL = 58 x)c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 1 0 1 1 0 0 0 et0 1 0 1 1 0 1 1Ceci couvre les 4 monomes canoniques pour lesquels A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.Le boıtier physique de controleur, qui contient 4 mots, recoit deux types d’information- les 2 fils A1 A0 qui permettent d’adresser un des 4 mots– UN FIL de selection selcntr qui vaut 1 ssi A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.On voit que selcntr=A7’.A6.A5’.A4.A3.A2’

3. Le mot (lu ou ecrit) est pris dans le boıtier de memoire vive ssi l’entree A est telle que 80 x<= A <= FF x c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre1 0 0 0 0 0 0 0 et

3

acquittement

bus donnees (lie au processeur)

deux bits de bus adresses (pour selectionnerl’un des 4 mots CNTRL +0, +1, +2 ou +3)

un signal de selection provenant du decodeurd’adresses

le signal Read/Write du processeur

un paquet de donnees (8 fils) venant du mondeexterieur. Disons pour simplifier 8 interrupteurs

le signal d’horloge (par exemple le meme que leprocesseur). On peut raisonner comme si, achaque front de l’horloge la valeur venant desinterrupteurs etait echantillonnee dans leregistre Mdonneesentr.

une entree ACQUITTEMENT si c’est uncontroleur de sortie.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 13 / 32

Page 37: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Etude du materiel d’entrees-sorties : les entrees

clock, reset,..

acquittement

ensemble des signaux de contrôle

envoi

ext

ext

connexion des adresses

4 bits faibles contrôleur

autre

ad dans [toto, toto+15]

bus adresses2 bits faibles

selection

connexion du contrôle

lire/ecrirebar

connexion des données

bus données

état

commande

sortantes

entrantes

procétat

commande

sortantes

entrantes

proc

dans [CNTRL, CNTRL+3]

L’adresse est

procétat

commande

sortantes

entrantes

Fig. 1 – Connexions entre processeur, controleur d’entrees sorties et monde exterieur ; le dessin est en troisparties pour mettre en evidence les trois types d’informations vehiculees par les fils, mais bien sur les filssont tous presents dans l’assemblage.

hexadecimaux. On note val x une valeur representee en hexa. On dira, pour simplifier, que l’entree A”vaut” 67 x pour dire que les 8 fils sont dans les etats 0110 0111.

L’ordinateur est organise ainsi : (Voir figure 2

1. Le mot (lu ou ecrit) est pris dans une memoire morte (ROM) ssi l’entree A est telle que 0 x<= A <= 3F xc’est a dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 0 0 0 0 0 0 0 et0 0 1 1 1 1 1 1Ceci couvre les 64 monomes canoniques pour lesquels A7=0 et A6=0.Le boıtier physique de ROM, qui contient 64 mots recoit deux types d’information– les 6 fils A5 A4 A3 A2 A1 A0 qui permettent d’adresser un des 64 mots– UN FIL de selection selrom qui vaut 1 ssi A7=0 et A6=0. On voit que selrom=A7’.A6’.

2. Le mot (lu ou ecrit) est pris dans le controleur d’entrees sorties (vu precedemment) ssi l’entreeA est telle que 58 x <= A <= 5B x(On a choisi que CNTRL = 58 x)c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 1 0 1 1 0 0 0 et0 1 0 1 1 0 1 1Ceci couvre les 4 monomes canoniques pour lesquels A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.Le boıtier physique de controleur, qui contient 4 mots, recoit deux types d’information- les 2 fils A1 A0 qui permettent d’adresser un des 4 mots– UN FIL de selection selcntr qui vaut 1 ssi A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.On voit que selcntr=A7’.A6.A5’.A4.A3.A2’

3. Le mot (lu ou ecrit) est pris dans le boıtier de memoire vive ssi l’entree A est telle que 80 x<= A <= FF x c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre1 0 0 0 0 0 0 0 et

3

acquittement

bus donnees (lie au processeur)

deux bits de bus adresses (pour selectionnerl’un des 4 mots CNTRL +0, +1, +2 ou +3)

un signal de selection provenant du decodeurd’adresses

le signal Read/Write du processeur

un paquet de donnees (8 fils) venant du mondeexterieur. Disons pour simplifier 8 interrupteurs

le signal d’horloge (par exemple le meme que leprocesseur). On peut raisonner comme si, achaque front de l’horloge la valeur venant desinterrupteurs etait echantillonnee dans leregistre Mdonneesentr.

une entree ACQUITTEMENT si c’est uncontroleur de sortie.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 13 / 32

Page 38: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Etude du materiel d’entrees-sorties : les entrees

clock, reset,..

acquittement

ensemble des signaux de contrôle

envoi

ext

ext

connexion des adresses

4 bits faibles contrôleur

autre

ad dans [toto, toto+15]

bus adresses2 bits faibles

selection

connexion du contrôle

lire/ecrirebar

connexion des données

bus données

état

commande

sortantes

entrantes

procétat

commande

sortantes

entrantes

proc

dans [CNTRL, CNTRL+3]

L’adresse est

procétat

commande

sortantes

entrantes

Fig. 1 – Connexions entre processeur, controleur d’entrees sorties et monde exterieur ; le dessin est en troisparties pour mettre en evidence les trois types d’informations vehiculees par les fils, mais bien sur les filssont tous presents dans l’assemblage.

hexadecimaux. On note val x une valeur representee en hexa. On dira, pour simplifier, que l’entree A”vaut” 67 x pour dire que les 8 fils sont dans les etats 0110 0111.

L’ordinateur est organise ainsi : (Voir figure 2

1. Le mot (lu ou ecrit) est pris dans une memoire morte (ROM) ssi l’entree A est telle que 0 x<= A <= 3F xc’est a dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 0 0 0 0 0 0 0 et0 0 1 1 1 1 1 1Ceci couvre les 64 monomes canoniques pour lesquels A7=0 et A6=0.Le boıtier physique de ROM, qui contient 64 mots recoit deux types d’information– les 6 fils A5 A4 A3 A2 A1 A0 qui permettent d’adresser un des 64 mots– UN FIL de selection selrom qui vaut 1 ssi A7=0 et A6=0. On voit que selrom=A7’.A6’.

2. Le mot (lu ou ecrit) est pris dans le controleur d’entrees sorties (vu precedemment) ssi l’entreeA est telle que 58 x <= A <= 5B x(On a choisi que CNTRL = 58 x)c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 1 0 1 1 0 0 0 et0 1 0 1 1 0 1 1Ceci couvre les 4 monomes canoniques pour lesquels A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.Le boıtier physique de controleur, qui contient 4 mots, recoit deux types d’information- les 2 fils A1 A0 qui permettent d’adresser un des 4 mots– UN FIL de selection selcntr qui vaut 1 ssi A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.On voit que selcntr=A7’.A6.A5’.A4.A3.A2’

3. Le mot (lu ou ecrit) est pris dans le boıtier de memoire vive ssi l’entree A est telle que 80 x<= A <= FF x c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre1 0 0 0 0 0 0 0 et

3

acquittement

bus donnees (lie au processeur)

deux bits de bus adresses (pour selectionnerl’un des 4 mots CNTRL +0, +1, +2 ou +3)

un signal de selection provenant du decodeurd’adresses

le signal Read/Write du processeur

un paquet de donnees (8 fils) venant du mondeexterieur. Disons pour simplifier 8 interrupteurs

le signal d’horloge (par exemple le meme que leprocesseur). On peut raisonner comme si, achaque front de l’horloge la valeur venant desinterrupteurs etait echantillonnee dans leregistre Mdonneesentr.

une entree ACQUITTEMENT si c’est uncontroleur de sortie.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 13 / 32

Page 39: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Etude du materiel d’entrees-sorties : les sorties

clock, reset,..

acquittement

ensemble des signaux de contrôle

envoi

ext

ext

connexion des adresses

4 bits faibles contrôleur

autre

ad dans [toto, toto+15]

bus adresses2 bits faibles

selection

connexion du contrôle

lire/ecrirebar

connexion des données

bus données

état

commande

sortantes

entrantes

procétat

commande

sortantes

entrantes

proc

dans [CNTRL, CNTRL+3]

L’adresse est

procétat

commande

sortantes

entrantes

Fig. 1 – Connexions entre processeur, controleur d’entrees sorties et monde exterieur ; le dessin est en troisparties pour mettre en evidence les trois types d’informations vehiculees par les fils, mais bien sur les filssont tous presents dans l’assemblage.

hexadecimaux. On note val x une valeur representee en hexa. On dira, pour simplifier, que l’entree A”vaut” 67 x pour dire que les 8 fils sont dans les etats 0110 0111.

L’ordinateur est organise ainsi : (Voir figure 2

1. Le mot (lu ou ecrit) est pris dans une memoire morte (ROM) ssi l’entree A est telle que 0 x<= A <= 3F xc’est a dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 0 0 0 0 0 0 0 et0 0 1 1 1 1 1 1Ceci couvre les 64 monomes canoniques pour lesquels A7=0 et A6=0.Le boıtier physique de ROM, qui contient 64 mots recoit deux types d’information– les 6 fils A5 A4 A3 A2 A1 A0 qui permettent d’adresser un des 64 mots– UN FIL de selection selrom qui vaut 1 ssi A7=0 et A6=0. On voit que selrom=A7’.A6’.

2. Le mot (lu ou ecrit) est pris dans le controleur d’entrees sorties (vu precedemment) ssi l’entreeA est telle que 58 x <= A <= 5B x(On a choisi que CNTRL = 58 x)c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 1 0 1 1 0 0 0 et0 1 0 1 1 0 1 1Ceci couvre les 4 monomes canoniques pour lesquels A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.Le boıtier physique de controleur, qui contient 4 mots, recoit deux types d’information- les 2 fils A1 A0 qui permettent d’adresser un des 4 mots– UN FIL de selection selcntr qui vaut 1 ssi A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.On voit que selcntr=A7’.A6.A5’.A4.A3.A2’

3. Le mot (lu ou ecrit) est pris dans le boıtier de memoire vive ssi l’entree A est telle que 80 x<= A <= FF x c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre1 0 0 0 0 0 0 0 et

3

acquittement

Il delivre sur le bus donnees du processeur lecontenu du registre Mdonneesentr si il y aselection, lecture et adressage deMdonneesentr, c’est-a-dire si le processeurexecute une instruction LOAD a l’adresse CNTRL+3

Il delivre sur le bus donnees du processeur lecontenu du registre Metat si il y a selection,lecture et adressage de Metat, c’est-a-dire si leprocesseur execute une instruction LOAD al’adresse CNTRL +1.

On peut raisonner comme si le contenu duregistre Mdonneessort etait affiche enpermanence sur 8 pattes de sorties versl’exterieur (8 diodes, par exemple).

Une sortie ENVOI si c’est un controleur desortie.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 14 / 32

Page 40: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Etude du materiel d’entrees-sorties : les sorties

clock, reset,..

acquittement

ensemble des signaux de contrôle

envoi

ext

ext

connexion des adresses

4 bits faibles contrôleur

autre

ad dans [toto, toto+15]

bus adresses2 bits faibles

selection

connexion du contrôle

lire/ecrirebar

connexion des données

bus données

état

commande

sortantes

entrantes

procétat

commande

sortantes

entrantes

proc

dans [CNTRL, CNTRL+3]

L’adresse est

procétat

commande

sortantes

entrantes

Fig. 1 – Connexions entre processeur, controleur d’entrees sorties et monde exterieur ; le dessin est en troisparties pour mettre en evidence les trois types d’informations vehiculees par les fils, mais bien sur les filssont tous presents dans l’assemblage.

hexadecimaux. On note val x une valeur representee en hexa. On dira, pour simplifier, que l’entree A”vaut” 67 x pour dire que les 8 fils sont dans les etats 0110 0111.

L’ordinateur est organise ainsi : (Voir figure 2

1. Le mot (lu ou ecrit) est pris dans une memoire morte (ROM) ssi l’entree A est telle que 0 x<= A <= 3F xc’est a dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 0 0 0 0 0 0 0 et0 0 1 1 1 1 1 1Ceci couvre les 64 monomes canoniques pour lesquels A7=0 et A6=0.Le boıtier physique de ROM, qui contient 64 mots recoit deux types d’information– les 6 fils A5 A4 A3 A2 A1 A0 qui permettent d’adresser un des 64 mots– UN FIL de selection selrom qui vaut 1 ssi A7=0 et A6=0. On voit que selrom=A7’.A6’.

2. Le mot (lu ou ecrit) est pris dans le controleur d’entrees sorties (vu precedemment) ssi l’entreeA est telle que 58 x <= A <= 5B x(On a choisi que CNTRL = 58 x)c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 1 0 1 1 0 0 0 et0 1 0 1 1 0 1 1Ceci couvre les 4 monomes canoniques pour lesquels A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.Le boıtier physique de controleur, qui contient 4 mots, recoit deux types d’information- les 2 fils A1 A0 qui permettent d’adresser un des 4 mots– UN FIL de selection selcntr qui vaut 1 ssi A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.On voit que selcntr=A7’.A6.A5’.A4.A3.A2’

3. Le mot (lu ou ecrit) est pris dans le boıtier de memoire vive ssi l’entree A est telle que 80 x<= A <= FF x c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre1 0 0 0 0 0 0 0 et

3

acquittement

Il delivre sur le bus donnees du processeur lecontenu du registre Mdonneesentr si il y aselection, lecture et adressage deMdonneesentr, c’est-a-dire si le processeurexecute une instruction LOAD a l’adresse CNTRL+3

Il delivre sur le bus donnees du processeur lecontenu du registre Metat si il y a selection,lecture et adressage de Metat, c’est-a-dire si leprocesseur execute une instruction LOAD al’adresse CNTRL +1.

On peut raisonner comme si le contenu duregistre Mdonneessort etait affiche enpermanence sur 8 pattes de sorties versl’exterieur (8 diodes, par exemple).

Une sortie ENVOI si c’est un controleur desortie.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 14 / 32

Page 41: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Etude du materiel d’entrees-sorties : les sorties

clock, reset,..

acquittement

ensemble des signaux de contrôle

envoi

ext

ext

connexion des adresses

4 bits faibles contrôleur

autre

ad dans [toto, toto+15]

bus adresses2 bits faibles

selection

connexion du contrôle

lire/ecrirebar

connexion des données

bus données

état

commande

sortantes

entrantes

procétat

commande

sortantes

entrantes

proc

dans [CNTRL, CNTRL+3]

L’adresse est

procétat

commande

sortantes

entrantes

Fig. 1 – Connexions entre processeur, controleur d’entrees sorties et monde exterieur ; le dessin est en troisparties pour mettre en evidence les trois types d’informations vehiculees par les fils, mais bien sur les filssont tous presents dans l’assemblage.

hexadecimaux. On note val x une valeur representee en hexa. On dira, pour simplifier, que l’entree A”vaut” 67 x pour dire que les 8 fils sont dans les etats 0110 0111.

L’ordinateur est organise ainsi : (Voir figure 2

1. Le mot (lu ou ecrit) est pris dans une memoire morte (ROM) ssi l’entree A est telle que 0 x<= A <= 3F xc’est a dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 0 0 0 0 0 0 0 et0 0 1 1 1 1 1 1Ceci couvre les 64 monomes canoniques pour lesquels A7=0 et A6=0.Le boıtier physique de ROM, qui contient 64 mots recoit deux types d’information– les 6 fils A5 A4 A3 A2 A1 A0 qui permettent d’adresser un des 64 mots– UN FIL de selection selrom qui vaut 1 ssi A7=0 et A6=0. On voit que selrom=A7’.A6’.

2. Le mot (lu ou ecrit) est pris dans le controleur d’entrees sorties (vu precedemment) ssi l’entreeA est telle que 58 x <= A <= 5B x(On a choisi que CNTRL = 58 x)c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 1 0 1 1 0 0 0 et0 1 0 1 1 0 1 1Ceci couvre les 4 monomes canoniques pour lesquels A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.Le boıtier physique de controleur, qui contient 4 mots, recoit deux types d’information- les 2 fils A1 A0 qui permettent d’adresser un des 4 mots– UN FIL de selection selcntr qui vaut 1 ssi A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.On voit que selcntr=A7’.A6.A5’.A4.A3.A2’

3. Le mot (lu ou ecrit) est pris dans le boıtier de memoire vive ssi l’entree A est telle que 80 x<= A <= FF x c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre1 0 0 0 0 0 0 0 et

3

acquittement

Il delivre sur le bus donnees du processeur lecontenu du registre Mdonneesentr si il y aselection, lecture et adressage deMdonneesentr, c’est-a-dire si le processeurexecute une instruction LOAD a l’adresse CNTRL+3

Il delivre sur le bus donnees du processeur lecontenu du registre Metat si il y a selection,lecture et adressage de Metat, c’est-a-dire si leprocesseur execute une instruction LOAD al’adresse CNTRL +1.

On peut raisonner comme si le contenu duregistre Mdonneessort etait affiche enpermanence sur 8 pattes de sorties versl’exterieur (8 diodes, par exemple).

Une sortie ENVOI si c’est un controleur desortie.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 14 / 32

Page 42: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Etude du materiel d’entrees-sorties : les sorties

clock, reset,..

acquittement

ensemble des signaux de contrôle

envoi

ext

ext

connexion des adresses

4 bits faibles contrôleur

autre

ad dans [toto, toto+15]

bus adresses2 bits faibles

selection

connexion du contrôle

lire/ecrirebar

connexion des données

bus données

état

commande

sortantes

entrantes

procétat

commande

sortantes

entrantes

proc

dans [CNTRL, CNTRL+3]

L’adresse est

procétat

commande

sortantes

entrantes

Fig. 1 – Connexions entre processeur, controleur d’entrees sorties et monde exterieur ; le dessin est en troisparties pour mettre en evidence les trois types d’informations vehiculees par les fils, mais bien sur les filssont tous presents dans l’assemblage.

hexadecimaux. On note val x une valeur representee en hexa. On dira, pour simplifier, que l’entree A”vaut” 67 x pour dire que les 8 fils sont dans les etats 0110 0111.

L’ordinateur est organise ainsi : (Voir figure 2

1. Le mot (lu ou ecrit) est pris dans une memoire morte (ROM) ssi l’entree A est telle que 0 x<= A <= 3F xc’est a dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 0 0 0 0 0 0 0 et0 0 1 1 1 1 1 1Ceci couvre les 64 monomes canoniques pour lesquels A7=0 et A6=0.Le boıtier physique de ROM, qui contient 64 mots recoit deux types d’information– les 6 fils A5 A4 A3 A2 A1 A0 qui permettent d’adresser un des 64 mots– UN FIL de selection selrom qui vaut 1 ssi A7=0 et A6=0. On voit que selrom=A7’.A6’.

2. Le mot (lu ou ecrit) est pris dans le controleur d’entrees sorties (vu precedemment) ssi l’entreeA est telle que 58 x <= A <= 5B x(On a choisi que CNTRL = 58 x)c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 1 0 1 1 0 0 0 et0 1 0 1 1 0 1 1Ceci couvre les 4 monomes canoniques pour lesquels A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.Le boıtier physique de controleur, qui contient 4 mots, recoit deux types d’information- les 2 fils A1 A0 qui permettent d’adresser un des 4 mots– UN FIL de selection selcntr qui vaut 1 ssi A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.On voit que selcntr=A7’.A6.A5’.A4.A3.A2’

3. Le mot (lu ou ecrit) est pris dans le boıtier de memoire vive ssi l’entree A est telle que 80 x<= A <= FF x c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre1 0 0 0 0 0 0 0 et

3

acquittement

Il delivre sur le bus donnees du processeur lecontenu du registre Mdonneesentr si il y aselection, lecture et adressage deMdonneesentr, c’est-a-dire si le processeurexecute une instruction LOAD a l’adresse CNTRL+3

Il delivre sur le bus donnees du processeur lecontenu du registre Metat si il y a selection,lecture et adressage de Metat, c’est-a-dire si leprocesseur execute une instruction LOAD al’adresse CNTRL +1.

On peut raisonner comme si le contenu duregistre Mdonneessort etait affiche enpermanence sur 8 pattes de sorties versl’exterieur (8 diodes, par exemple).

Une sortie ENVOI si c’est un controleur desortie.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 14 / 32

Page 43: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Etude du materiel d’entrees-sorties : les sorties

clock, reset,..

acquittement

ensemble des signaux de contrôle

envoi

ext

ext

connexion des adresses

4 bits faibles contrôleur

autre

ad dans [toto, toto+15]

bus adresses2 bits faibles

selection

connexion du contrôle

lire/ecrirebar

connexion des données

bus données

état

commande

sortantes

entrantes

procétat

commande

sortantes

entrantes

proc

dans [CNTRL, CNTRL+3]

L’adresse est

procétat

commande

sortantes

entrantes

Fig. 1 – Connexions entre processeur, controleur d’entrees sorties et monde exterieur ; le dessin est en troisparties pour mettre en evidence les trois types d’informations vehiculees par les fils, mais bien sur les filssont tous presents dans l’assemblage.

hexadecimaux. On note val x une valeur representee en hexa. On dira, pour simplifier, que l’entree A”vaut” 67 x pour dire que les 8 fils sont dans les etats 0110 0111.

L’ordinateur est organise ainsi : (Voir figure 2

1. Le mot (lu ou ecrit) est pris dans une memoire morte (ROM) ssi l’entree A est telle que 0 x<= A <= 3F xc’est a dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 0 0 0 0 0 0 0 et0 0 1 1 1 1 1 1Ceci couvre les 64 monomes canoniques pour lesquels A7=0 et A6=0.Le boıtier physique de ROM, qui contient 64 mots recoit deux types d’information– les 6 fils A5 A4 A3 A2 A1 A0 qui permettent d’adresser un des 64 mots– UN FIL de selection selrom qui vaut 1 ssi A7=0 et A6=0. On voit que selrom=A7’.A6’.

2. Le mot (lu ou ecrit) est pris dans le controleur d’entrees sorties (vu precedemment) ssi l’entreeA est telle que 58 x <= A <= 5B x(On a choisi que CNTRL = 58 x)c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre0 1 0 1 1 0 0 0 et0 1 0 1 1 0 1 1Ceci couvre les 4 monomes canoniques pour lesquels A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.Le boıtier physique de controleur, qui contient 4 mots, recoit deux types d’information- les 2 fils A1 A0 qui permettent d’adresser un des 4 mots– UN FIL de selection selcntr qui vaut 1 ssi A7=0, A6=1, A5=0, A4=1, A3=1, A2=0.On voit que selcntr=A7’.A6.A5’.A4.A3.A2’

3. Le mot (lu ou ecrit) est pris dans le boıtier de memoire vive ssi l’entree A est telle que 80 x<= A <= FF x c’est a dire ssi A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre1 0 0 0 0 0 0 0 et

3

acquittement

Il delivre sur le bus donnees du processeur lecontenu du registre Mdonneesentr si il y aselection, lecture et adressage deMdonneesentr, c’est-a-dire si le processeurexecute une instruction LOAD a l’adresse CNTRL+3

Il delivre sur le bus donnees du processeur lecontenu du registre Metat si il y a selection,lecture et adressage de Metat, c’est-a-dire si leprocesseur execute une instruction LOAD al’adresse CNTRL +1.

On peut raisonner comme si le contenu duregistre Mdonneessort etait affiche enpermanence sur 8 pattes de sorties versl’exterieur (8 diodes, par exemple).

Une sortie ENVOI si c’est un controleur desortie.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 14 / 32

Page 44: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Plan

1 Introduction

2 Controleur d’entrees-sorties

3 Decodage d’adresses

4 Memoire cache

5 Memoire virtuelle

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 15 / 32

Page 45: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Exemple

00 selrom01 selrom02 selrom. . .3E selrom3F selrom40 /////. . .57 /////58 selcntr59 selcntr5A selcntr5B selcntr

5C /////. . .5F /////60 /////. . .7E /////7F /////80 selram81 selram. . .FE selramFF selram

On raisonne avec des adresses sur 8 bits.

L’adresse A est code sur 8 bits A7,. . .,A0.

On represente les valeurs portees par ces 8fils par deux chiffres hexadecimaux.

On note valx une valeur representee en hexa.

On dira que l’entree A � vaut � 67x pour direque les 8 fils sont dans les etats 0110 0111.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 16 / 32

Page 46: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Exemple

00 selrom01 selrom02 selrom. . .3E selrom3F selrom40 /////. . .57 /////58 selcntr59 selcntr5A selcntr5B selcntr

5C /////. . .5F /////60 /////. . .7E /////7F /////80 selram81 selram. . .FE selramFF selram

On raisonne avec des adresses sur 8 bits.

L’adresse A est code sur 8 bits A7,. . .,A0.

On represente les valeurs portees par ces 8fils par deux chiffres hexadecimaux.

On note valx une valeur representee en hexa.

On dira que l’entree A � vaut � 67x pour direque les 8 fils sont dans les etats 0110 0111.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 16 / 32

Page 47: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Exemple

00 selrom01 selrom02 selrom. . .3E selrom3F selrom40 /////. . .57 /////58 selcntr59 selcntr5A selcntr5B selcntr

5C /////. . .5F /////60 /////. . .7E /////7F /////80 selram81 selram. . .FE selramFF selram

On raisonne avec des adresses sur 8 bits.

L’adresse A est code sur 8 bits A7,. . .,A0.

On represente les valeurs portees par ces 8fils par deux chiffres hexadecimaux.

On note valx une valeur representee en hexa.

On dira que l’entree A � vaut � 67x pour direque les 8 fils sont dans les etats 0110 0111.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 16 / 32

Page 48: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Exemple

00 selrom01 selrom02 selrom. . .3E selrom3F selrom40 /////. . .57 /////58 selcntr59 selcntr5A selcntr5B selcntr

5C /////. . .5F /////60 /////. . .7E /////7F /////80 selram81 selram. . .FE selramFF selram

On raisonne avec des adresses sur 8 bits.

L’adresse A est code sur 8 bits A7,. . .,A0.

On represente les valeurs portees par ces 8fils par deux chiffres hexadecimaux.

On note valx une valeur representee en hexa.

On dira que l’entree A � vaut � 67x pour direque les 8 fils sont dans les etats 0110 0111.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 16 / 32

Page 49: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Exemple

00 selrom01 selrom02 selrom. . .3E selrom3F selrom40 /////. . .57 /////58 selcntr59 selcntr5A selcntr5B selcntr

5C /////. . .5F /////60 /////. . .7E /////7F /////80 selram81 selram. . .FE selramFF selram

On raisonne avec des adresses sur 8 bits.

L’adresse A est code sur 8 bits A7,. . .,A0.

On represente les valeurs portees par ces 8fils par deux chiffres hexadecimaux.

On note valx une valeur representee en hexa.

On dira que l’entree A � vaut � 67x pour direque les 8 fils sont dans les etats 0110 0111.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 16 / 32

Page 50: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Exemple

00 selrom01 selrom02 selrom. . .3E selrom3F selrom40 /////. . .57 /////58 selcntr59 selcntr5A selcntr5B selcntr

5C /////. . .5F /////60 /////. . .7E /////7F /////80 selram81 selram. . .FE selramFF selram

On raisonne avec des adresses sur 8 bits.

L’adresse A est code sur 8 bits A7,. . .,A0.

On represente les valeurs portees par ces 8fils par deux chiffres hexadecimaux.

On note valx une valeur representee en hexa.

On dira que l’entree A � vaut � 67x pour direque les 8 fils sont dans les etats 0110 0111.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 16 / 32

Page 51: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Selecteur pour la ROM

Un mot (lu ou ecrit) est pris dans la memoire morte (ROM) si et seulementsi :

l’entree A est telle que 0x ≤ A ≤ 3Fx

c’est-a-dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre 0 0 0 0 0 0 00 et 0 0 1 1 1 1 1 1

Ceci couvre les 64 monomes canoniques pour lesquels A7 = 0 et A6 = 0.

Le boıtier physique de ROM, qui contient 64 mots recoit deux typesd’information :

les 6 fils A5 A4 A3 A2 A1 A0 qui permettent d’adresser un des 64 mots

Un fil de selection selrom qui vaut 1 si et seulement si A7 = 0 etA6 = 0. Donc selrom = A7.A6.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 17 / 32

Page 52: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Selecteur pour la ROM

Un mot (lu ou ecrit) est pris dans la memoire morte (ROM) si et seulementsi :

l’entree A est telle que 0x ≤ A ≤ 3Fx

c’est-a-dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre 0 0 0 0 0 0 00 et 0 0 1 1 1 1 1 1

Ceci couvre les 64 monomes canoniques pour lesquels A7 = 0 et A6 = 0.

Le boıtier physique de ROM, qui contient 64 mots recoit deux typesd’information :

les 6 fils A5 A4 A3 A2 A1 A0 qui permettent d’adresser un des 64 mots

Un fil de selection selrom qui vaut 1 si et seulement si A7 = 0 etA6 = 0. Donc selrom = A7.A6.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 17 / 32

Page 53: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Selecteur pour la ROM

Un mot (lu ou ecrit) est pris dans la memoire morte (ROM) si et seulementsi :

l’entree A est telle que 0x ≤ A ≤ 3Fx

c’est-a-dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre 0 0 0 0 0 0 00 et 0 0 1 1 1 1 1 1

Ceci couvre les 64 monomes canoniques pour lesquels A7 = 0 et A6 = 0.

Le boıtier physique de ROM, qui contient 64 mots recoit deux typesd’information :

les 6 fils A5 A4 A3 A2 A1 A0 qui permettent d’adresser un des 64 mots

Un fil de selection selrom qui vaut 1 si et seulement si A7 = 0 etA6 = 0. Donc selrom = A7.A6.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 17 / 32

Page 54: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Selecteur pour le controleur d’entrees-sorties

Le mot (lu ou ecrit) est pris dans le controleur d’entrees-sorties (vuprecedemment) si et seulement si :

l’entree A est telle que 58x ≤ A ≤ 5Bx (On a choisi que CNTRL = 58x )

c’est-a-dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre 0 1 0 1 1 0 00 et 0 1 0 1 1 0 1 1

Ceci couvre les 4 monomes canoniques pour lesquels A7 = 0, A6 = 1,A5 = 0, A4 = 1, A3 = 1, A2 = 0.

Le boıtier physique de controleur, qui contient 4 mots, recoit deux typesd’information :

les 2 fils A1 A0 qui permettent d’adresser un des 4 mots

Un fil de selection selcntr qui vaut 1 si et seulement si A7 = 0,A6 = 1, A5 = 0, A4 = 1, A3 = 1, A2 = 0. Donc, selcntr= A7.A6.A5.A4.A3.A2.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 18 / 32

Page 55: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Selecteur pour le controleur d’entrees-sorties

Le mot (lu ou ecrit) est pris dans le controleur d’entrees-sorties (vuprecedemment) si et seulement si :

l’entree A est telle que 58x ≤ A ≤ 5Bx (On a choisi que CNTRL = 58x )

c’est-a-dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre 0 1 0 1 1 0 00 et 0 1 0 1 1 0 1 1

Ceci couvre les 4 monomes canoniques pour lesquels A7 = 0, A6 = 1,A5 = 0, A4 = 1, A3 = 1, A2 = 0.

Le boıtier physique de controleur, qui contient 4 mots, recoit deux typesd’information :

les 2 fils A1 A0 qui permettent d’adresser un des 4 mots

Un fil de selection selcntr qui vaut 1 si et seulement si A7 = 0,A6 = 1, A5 = 0, A4 = 1, A3 = 1, A2 = 0. Donc, selcntr= A7.A6.A5.A4.A3.A2.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 18 / 32

Page 56: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Selecteur pour le controleur d’entrees-sorties

Le mot (lu ou ecrit) est pris dans le controleur d’entrees-sorties (vuprecedemment) si et seulement si :

l’entree A est telle que 58x ≤ A ≤ 5Bx (On a choisi que CNTRL = 58x )

c’est-a-dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre 0 1 0 1 1 0 00 et 0 1 0 1 1 0 1 1

Ceci couvre les 4 monomes canoniques pour lesquels A7 = 0, A6 = 1,A5 = 0, A4 = 1, A3 = 1, A2 = 0.

Le boıtier physique de controleur, qui contient 4 mots, recoit deux typesd’information :

les 2 fils A1 A0 qui permettent d’adresser un des 4 mots

Un fil de selection selcntr qui vaut 1 si et seulement si A7 = 0,A6 = 1, A5 = 0, A4 = 1, A3 = 1, A2 = 0. Donc, selcntr= A7.A6.A5.A4.A3.A2.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 18 / 32

Page 57: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Selecteur pour la RAM

Le mot (lu ou ecrit) est pris dans la memoire vive (RAM) si et seulement si :

l’entree A est telle que 80x ≤ A ≤ FFx

c’est-a-dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre 1 0 0 0 0 0 00 et 1 1 1 1 1 1 1 1

Ceci couvre les 128 monomes canoniques pour lesquels A7 = 1.

Le boıtier physique de RAM, qui contient 128 mots, recoit deux typesd’information :

les 7 fils A6 A5 A4 A3 A2 A1 A0 qui permettent d’adresser un des 128mots

Un fil de selection selram qui vaut 1 si et seulement si A7 = 1. Donc,selram = A7.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 19 / 32

Page 58: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Selecteur pour la RAM

Le mot (lu ou ecrit) est pris dans la memoire vive (RAM) si et seulement si :

l’entree A est telle que 80x ≤ A ≤ FFx

c’est-a-dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre 1 0 0 0 0 0 00 et 1 1 1 1 1 1 1 1

Ceci couvre les 128 monomes canoniques pour lesquels A7 = 1.

Le boıtier physique de RAM, qui contient 128 mots, recoit deux typesd’information :

les 7 fils A6 A5 A4 A3 A2 A1 A0 qui permettent d’adresser un des 128mots

Un fil de selection selram qui vaut 1 si et seulement si A7 = 1. Donc,selram = A7.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 19 / 32

Page 59: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Selecteur pour la RAM

Le mot (lu ou ecrit) est pris dans la memoire vive (RAM) si et seulement si :

l’entree A est telle que 80x ≤ A ≤ FFx

c’est-a-dire A7 A6 A5 A4 A3 A2 A1 A0 sont compris entre 1 0 0 0 0 0 00 et 1 1 1 1 1 1 1 1

Ceci couvre les 128 monomes canoniques pour lesquels A7 = 1.

Le boıtier physique de RAM, qui contient 128 mots, recoit deux typesd’information :

les 7 fils A6 A5 A4 A3 A2 A1 A0 qui permettent d’adresser un des 128mots

Un fil de selection selram qui vaut 1 si et seulement si A7 = 1. Donc,selram = A7.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 19 / 32

Page 60: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Connexions processeur/controleur/memoires/decodeur

A0

A1

A2

A3

A4

A5

A6

A7

A0 A1 A2 A3 A4 A5 A6 A7

ROM E/S RAM

A0 A1 A2 A3 A4 A5 A0 A1 A0 A1 A2 A3 A4 A5 A6

Processeur

selcntr

selrom

selram

adresseinvalide

R/-W

00

3F

58

5B

80

FF

Bus

de d

onné

es

Bus

d'ad

ress

es

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 20 / 32

Page 61: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Plan

1 Introduction

2 Controleur d’entrees-sorties

3 Decodage d’adresses

4 Memoire cache

5 Memoire virtuelle

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 21 / 32

Page 62: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Pour aller plus vite ...

La memoire est lente, chere et prend de la place !

Mais, principes de localite :

Principe de localite spatiale :

l’acces a une donnee X va probablement etre suivi d’acces ad’autres donnees Y , Z proches de X .exemple : instructions, elements de tableau.

Principe de localite temporelle :

l’acces a une donnee X a un instant donne va probablement etresuivi d’autres acces a cette meme donnee.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 22 / 32

Page 63: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Pour aller plus vite ...

La memoire est lente, chere et prend de la place !

Mais, principes de localite :Principe de localite spatiale :

l’acces a une donnee X va probablement etre suivi d’acces ad’autres donnees Y , Z proches de X .exemple : instructions, elements de tableau.

Principe de localite temporelle :

l’acces a une donnee X a un instant donne va probablement etresuivi d’autres acces a cette meme donnee.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 22 / 32

Page 64: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Pour aller plus vite ...

La memoire est lente, chere et prend de la place !

Mais, principes de localite :Principe de localite spatiale :

l’acces a une donnee X va probablement etre suivi d’acces ad’autres donnees Y , Z proches de X .

exemple : instructions, elements de tableau.

Principe de localite temporelle :

l’acces a une donnee X a un instant donne va probablement etresuivi d’autres acces a cette meme donnee.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 22 / 32

Page 65: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Pour aller plus vite ...

La memoire est lente, chere et prend de la place !

Mais, principes de localite :Principe de localite spatiale :

l’acces a une donnee X va probablement etre suivi d’acces ad’autres donnees Y , Z proches de X .exemple : instructions, elements de tableau.

Principe de localite temporelle :

l’acces a une donnee X a un instant donne va probablement etresuivi d’autres acces a cette meme donnee.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 22 / 32

Page 66: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Pour aller plus vite ...

La memoire est lente, chere et prend de la place !

Mais, principes de localite :Principe de localite spatiale :

l’acces a une donnee X va probablement etre suivi d’acces ad’autres donnees Y , Z proches de X .exemple : instructions, elements de tableau.

Principe de localite temporelle :

l’acces a une donnee X a un instant donne va probablement etresuivi d’autres acces a cette meme donnee.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 22 / 32

Page 67: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Pour aller plus vite ...

La memoire est lente, chere et prend de la place !

Mais, principes de localite :Principe de localite spatiale :

l’acces a une donnee X va probablement etre suivi d’acces ad’autres donnees Y , Z proches de X .exemple : instructions, elements de tableau.

Principe de localite temporelle :l’acces a une donnee X a un instant donne va probablement etresuivi d’autres acces a cette meme donnee.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 22 / 32

Page 68: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Organisation memoire

Structuration en caches de plusieurs niveaux

source wikipedia.

Pour le processeur, il n’y a qu’une memoire : la Memoire.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 23 / 32

Page 69: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Vie du cache

Le cache repond aux demandes du processeur, en lecture :

si la donnee est disponible : oksi la donnee n’est pas disponible

il faut aller la chercher en memoirefaire de la place dans le cache (quelle autre donnee enlever ?)

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 24 / 32

Page 70: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Vie du cache

Le cache repond aux demandes du processeur, en lecture :

si la donnee est disponible : ok

si la donnee n’est pas disponible

il faut aller la chercher en memoirefaire de la place dans le cache (quelle autre donnee enlever ?)

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 24 / 32

Page 71: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Vie du cache

Le cache repond aux demandes du processeur, en lecture :

si la donnee est disponible : oksi la donnee n’est pas disponible

il faut aller la chercher en memoirefaire de la place dans le cache (quelle autre donnee enlever?)

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 24 / 32

Page 72: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Vie du cache

Le cache repond aux demandes du processeur, en lecture :

si la donnee est disponible : oksi la donnee n’est pas disponible

il faut aller la chercher en memoire

faire de la place dans le cache (quelle autre donnee enlever?)

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 24 / 32

Page 73: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Vie du cache

Le cache repond aux demandes du processeur, en lecture :

si la donnee est disponible : oksi la donnee n’est pas disponible

il faut aller la chercher en memoirefaire de la place dans le cache (quelle autre donnee enlever?)

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 24 / 32

Page 74: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Vie du cache

Le cache repond aux demandes du processeur, en ecriture :

si la donnee est disponible : oksi la donnee n’est pas disponible

il faut aller la chercher en memoirefaire de la place dans le cache (quelle autre donnee enlever ?)

puis faire les modifications

Ecriture immediate en memoire?

Ecriture differee?

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 25 / 32

Page 75: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Vie du cache

Le cache repond aux demandes du processeur, en ecriture :

si la donnee est disponible : ok

si la donnee n’est pas disponible

il faut aller la chercher en memoirefaire de la place dans le cache (quelle autre donnee enlever ?)

puis faire les modifications

Ecriture immediate en memoire?

Ecriture differee?

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 25 / 32

Page 76: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Vie du cache

Le cache repond aux demandes du processeur, en ecriture :

si la donnee est disponible : oksi la donnee n’est pas disponible

il faut aller la chercher en memoirefaire de la place dans le cache (quelle autre donnee enlever?)

puis faire les modifications

Ecriture immediate en memoire?

Ecriture differee?

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 25 / 32

Page 77: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Vie du cache

Le cache repond aux demandes du processeur, en ecriture :

si la donnee est disponible : oksi la donnee n’est pas disponible

il faut aller la chercher en memoire

faire de la place dans le cache (quelle autre donnee enlever?)

puis faire les modifications

Ecriture immediate en memoire?

Ecriture differee?

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 25 / 32

Page 78: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Vie du cache

Le cache repond aux demandes du processeur, en ecriture :

si la donnee est disponible : oksi la donnee n’est pas disponible

il faut aller la chercher en memoirefaire de la place dans le cache (quelle autre donnee enlever?)

puis faire les modifications

Ecriture immediate en memoire?

Ecriture differee?

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 25 / 32

Page 79: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Vie du cache

Le cache repond aux demandes du processeur, en ecriture :

si la donnee est disponible : oksi la donnee n’est pas disponible

il faut aller la chercher en memoirefaire de la place dans le cache (quelle autre donnee enlever?)

puis faire les modifications

Ecriture immediate en memoire?

Ecriture differee?

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 25 / 32

Page 80: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Vie du cache

Le cache repond aux demandes du processeur, en ecriture :

si la donnee est disponible : oksi la donnee n’est pas disponible

il faut aller la chercher en memoirefaire de la place dans le cache (quelle autre donnee enlever?)

puis faire les modifications

Ecriture immediate en memoire?

Ecriture differee?

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 25 / 32

Page 81: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Vie du cache

Le cache repond aux demandes du processeur, en ecriture :

si la donnee est disponible : oksi la donnee n’est pas disponible

il faut aller la chercher en memoirefaire de la place dans le cache (quelle autre donnee enlever?)

puis faire les modifications

Ecriture immediate en memoire?

Ecriture differee?

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 25 / 32

Page 82: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Cas particuliers : Donnees vs Programme

Donnees :

modifiableprincipe de localite respecte pour toutes les variables dans la pile(meme lors des appels de fonction)

Programme :

non modifiable (en general)principe de localite rompu lors des appels de fonction

Conclusion : separation des caches Donnees - Programme

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 26 / 32

Page 83: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Cas particuliers : Donnees vs Programme

Donnees :

modifiableprincipe de localite respecte pour toutes les variables dans la pile(meme lors des appels de fonction)

Programme :

non modifiable (en general)principe de localite rompu lors des appels de fonction

Conclusion : separation des caches Donnees - Programme

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 26 / 32

Page 84: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Cas particuliers : Donnees vs Programme

Donnees :modifiable

principe de localite respecte pour toutes les variables dans la pile(meme lors des appels de fonction)

Programme :

non modifiable (en general)principe de localite rompu lors des appels de fonction

Conclusion : separation des caches Donnees - Programme

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 26 / 32

Page 85: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Cas particuliers : Donnees vs Programme

Donnees :modifiableprincipe de localite respecte pour toutes les variables dans la pile(meme lors des appels de fonction)

Programme :

non modifiable (en general)principe de localite rompu lors des appels de fonction

Conclusion : separation des caches Donnees - Programme

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 26 / 32

Page 86: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Cas particuliers : Donnees vs Programme

Donnees :modifiableprincipe de localite respecte pour toutes les variables dans la pile(meme lors des appels de fonction)

Programme :

non modifiable (en general)principe de localite rompu lors des appels de fonction

Conclusion : separation des caches Donnees - Programme

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 26 / 32

Page 87: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Cas particuliers : Donnees vs Programme

Donnees :modifiableprincipe de localite respecte pour toutes les variables dans la pile(meme lors des appels de fonction)

Programme :non modifiable (en general)

principe de localite rompu lors des appels de fonction

Conclusion : separation des caches Donnees - Programme

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 26 / 32

Page 88: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Cas particuliers : Donnees vs Programme

Donnees :modifiableprincipe de localite respecte pour toutes les variables dans la pile(meme lors des appels de fonction)

Programme :non modifiable (en general)principe de localite rompu lors des appels de fonction

Conclusion : separation des caches Donnees - Programme

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 26 / 32

Page 89: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Cas particuliers : Donnees vs Programme

Donnees :modifiableprincipe de localite respecte pour toutes les variables dans la pile(meme lors des appels de fonction)

Programme :non modifiable (en general)principe de localite rompu lors des appels de fonction

Conclusion : separation des caches Donnees - Programme

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 26 / 32

Page 90: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Plan

1 Introduction

2 Controleur d’entrees-sorties

3 Decodage d’adresses

4 Memoire cache

5 Memoire virtuelle

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 27 / 32

Page 91: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Pour aller plus loin ...

Pour le processeur, la memoire n’est pas ideale ...

La memoire physique reelle (RAM) est trop petite

alors que la memoire secondaire (HD) est immense

Chaque processus voudrait avoir la memoire a lui tout seul,identique d’une fois sur l’autre

Il faudrait pouvoir partager certaines zones de la memoire

Il faudrait pouvoir proteger certaines zones de la memoire

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 28 / 32

Page 92: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Pour aller plus loin ...

Pour le processeur, la memoire n’est pas ideale ...

La memoire physique reelle (RAM) est trop petite

alors que la memoire secondaire (HD) est immense

Chaque processus voudrait avoir la memoire a lui tout seul,identique d’une fois sur l’autre

Il faudrait pouvoir partager certaines zones de la memoire

Il faudrait pouvoir proteger certaines zones de la memoire

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 28 / 32

Page 93: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Pour aller plus loin ...

Pour le processeur, la memoire n’est pas ideale ...

La memoire physique reelle (RAM) est trop petitealors que la memoire secondaire (HD) est immense

Chaque processus voudrait avoir la memoire a lui tout seul,identique d’une fois sur l’autre

Il faudrait pouvoir partager certaines zones de la memoire

Il faudrait pouvoir proteger certaines zones de la memoire

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 28 / 32

Page 94: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Pour aller plus loin ...

Pour le processeur, la memoire n’est pas ideale ...

La memoire physique reelle (RAM) est trop petitealors que la memoire secondaire (HD) est immense

Chaque processus voudrait avoir la memoire a lui tout seul,identique d’une fois sur l’autre

Il faudrait pouvoir partager certaines zones de la memoire

Il faudrait pouvoir proteger certaines zones de la memoire

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 28 / 32

Page 95: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Pour aller plus loin ...

Pour le processeur, la memoire n’est pas ideale ...

La memoire physique reelle (RAM) est trop petitealors que la memoire secondaire (HD) est immense

Chaque processus voudrait avoir la memoire a lui tout seul,identique d’une fois sur l’autre

Il faudrait pouvoir partager certaines zones de la memoire

Il faudrait pouvoir proteger certaines zones de la memoire

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 28 / 32

Page 96: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Pour aller plus loin ...

Pour le processeur, la memoire n’est pas ideale ...

La memoire physique reelle (RAM) est trop petitealors que la memoire secondaire (HD) est immense

Chaque processus voudrait avoir la memoire a lui tout seul,identique d’une fois sur l’autre

Il faudrait pouvoir partager certaines zones de la memoire

Il faudrait pouvoir proteger certaines zones de la memoire

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 28 / 32

Page 97: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Extension de la memoire physique

La memoire vue du processeuret en vrai ... (source wikipedia)

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 29 / 32

Page 98: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Partage de la memoire et protection

Mecanisme de pagination

La memoire reelle est organisee en pages

Une adresse memoire virtuelle (ideale) est associe a un couple[numero de page, adresse dans la page]

Les pages peuvent etre protegees

Les pages peuvent etre partagees

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 30 / 32

Page 99: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Partage de la memoire et protection

Mecanisme de pagination

La memoire reelle est organisee en pages

Une adresse memoire virtuelle (ideale) est associe a un couple[numero de page, adresse dans la page]

Les pages peuvent etre protegees

Les pages peuvent etre partagees

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 30 / 32

Page 100: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Partage de la memoire et protection

Mecanisme de pagination

La memoire reelle est organisee en pages

Une adresse memoire virtuelle (ideale) est associe a un couple[numero de page, adresse dans la page]

Les pages peuvent etre protegees

Les pages peuvent etre partagees

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 30 / 32

Page 101: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Partage de la memoire et protection

Mecanisme de pagination

La memoire reelle est organisee en pages

Une adresse memoire virtuelle (ideale) est associe a un couple[numero de page, adresse dans la page]

Les pages peuvent etre protegees

Les pages peuvent etre partagees

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 30 / 32

Page 102: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Partage de la memoire et protection

Mecanisme de pagination

La memoire reelle est organisee en pages

Une adresse memoire virtuelle (ideale) est associe a un couple[numero de page, adresse dans la page]

Les pages peuvent etre protegees

Les pages peuvent etre partagees

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 30 / 32

Page 103: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Illustration

Partage du code entre trois processus executant le meme programme,chacun sur des donnees particulieres.

Le programme est constitue de 3 pages de codeLe programme comporte 2 pages de donnees

source wikipedia.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 31 / 32

Page 104: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Illustration

Partage du code entre trois processus executant le meme programme,chacun sur des donnees particulieres.

Le programme est constitue de 3 pages de code

Le programme comporte 2 pages de donnees

source wikipedia.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 31 / 32

Page 105: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Illustration

Partage du code entre trois processus executant le meme programme,chacun sur des donnees particulieres.

Le programme est constitue de 3 pages de codeLe programme comporte 2 pages de donnees

source wikipedia.

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 31 / 32

Page 106: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Illustration

Partage du code entre trois processus executant le meme programme,chacun sur des donnees particulieres.

Le programme est constitue de 3 pages de codeLe programme comporte 2 pages de donnees

source wikipedia.Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 31 / 32

Page 107: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Remarque finale

Une partie de ce cours etait a la frontiere entre Architecture etSysteme.

Architecture : parce qu’il y a des circuits impliques

Systeme : pour certains algorithmes (allocation) et concepts(processus)

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 32 / 32

Page 108: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Remarque finale

Une partie de ce cours etait a la frontiere entre Architecture etSysteme.

Architecture : parce qu’il y a des circuits impliques

Systeme : pour certains algorithmes (allocation) et concepts(processus)

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 32 / 32

Page 109: Universite Grenoble Alpes´

Introduction Controleur d’entrees-sorties Decodage d’adresses Memoire cache Memoire virtuelle

Remarque finale

Une partie de ce cours etait a la frontiere entre Architecture etSysteme.

Architecture : parce qu’il y a des circuits impliques

Systeme : pour certains algorithmes (allocation) et concepts(processus)

Bouhineau, Carrier, Devismes (UGA) Organisation Interne d’un ordinateur 13 avril 2020 32 / 32