Architecture des ordinateurs

Page 1 sur 10Lecteur de document UniversityLib

Architecture des ordinateurs

Computer Science · notes

Architecture des ordinateurs

Licence Informatique - Universit é de Provence

Jean-Marc Talbot

[email protected]

M émoires

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

120 / 158

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

121 / 158

M émoires

M émoires (II)

m émoire : dispositif permettant d’enregistrer, de conserver et de

restituer de l’information.

unit é de base : 1 bit (0 ou 1)

octet (byte) = groupe de 8 bits

mot = regroupement d’octets (8 bits, 16 bits, 32 bits, ...)

(cid:73) unit é d’information adressable en m émoire

un KiloOctet = 210 octets = 1024 octes = 1 Ko

un MegaOctet = 210 Ko = 1 Mo

un GigaOctet = 210 Mo = 1 Go

un TeraOctet = 210 Go = 1 To

diff érentes technologies :

Electronique - Magn étique - Optique

diff érentes caract éristiques :

(cid:73) capacit é

(cid:73) temps d’acc ès

(cid:73) d ébit

(cid:73) volatilit é

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

122 / 158

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

123 / 158

Performances des m émoires

Types de m émoires (I)

temps d’acc ès : temps qui s épare une demande de

lecture/ écriture et sa r éalisation ta

vitesse

+

−

temps de cycle : temps minimum entre deux acc es a la m émoire

tc

On a ta < tc (stabilisation des signaux, synchronisation, ...)

d ébit (ou bande passante) : nombre de bits maximum transmis

par seconde

en cas d’acc ès en temps uniforme au donn ées

B =

n

tc

n est le nombre de bits transf ér és par cycle

registres

Cache

M émoire centrale

Disques durs

−

Bandes - Disques optiques

+

capacit é

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

124 / 158

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

125 / 158

Types de m émoires (II)

M émoires : localisations

registres

cache

m émoire

centrale

disque dur

vitesse (temps d’acc ès)

< 1 ns

2 - 5 ns

vitesse (d ébit)

> 50 Go/s

5 - 20 Go/s

capacit é

< 100 octets

100 Ko - 1 Mo

20 ns

1-10 ms

1 Go/s

256 Mo - 4 Go

300 Mo/s

50 Go - 500 Go

m émoire de masse

processeur

s

e

r

t

s

g

e

r

i

cache

l

e

a

r

t

n

e

c

e

r

i

o

m

Publicité

é

m

carte m ère

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

126 / 158

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

127 / 158

M éthodes d’acc ès

Acc ès s équentiel

Types de m émoire

(cid:73) pour acc éder à une information, il faut parcourir toutes les

Sur la carte m ère cohabite

informations qui la pr éc ède

(cid:73) exemple : bandes magn étiques

Acc ès direct

(cid:73) chaque information poss ede une adresse propre, a laquelle on peut

acc éder directement

(cid:73) exemple : m émoire centrale de l’ordinateur

Acc ès semi-s équentiel

(cid:73) interm édiaire entre s équentiel et direct

(cid:73) exemple : disque dur

(cid:70) acc ès direct au cylindre

(cid:70) acc ès s équentiel au secteur sur un cylindre

Acc ès associatif

(cid:73) une information est identifi ée par sa cl é

(cid:73) on acc ede a une information via sa cl é

(cid:73) exemple : m émoire cache

M émoires persistantes (m émoires mortes - ROM)

(cid:73) leur contenu est fix é (ou presque)

(cid:73) et conserv é en permanence m ême hors alimentation électrique

M émoires volatiles (m émoires vives - RAM)

(cid:73) leur contenu est modifiable

(cid:73) et perdu hors alimentation électrique

ROM = Read Only Memory

RAM = Random Access Memory

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

128 / 158

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

129 / 158

M émoires mortes (ROM)

ROM (Read Only Memory) : information stock ée au moment de la

conception du circuit.

PROM (Programmable Read Only Memory) : m émoire

programmble par un utilisateur final mais une seule fois

EPROM (Erasable Programmable Read Only Memory) : m émoire

(re)programmable et effac¸able par ultraviolet.

EEPROM (Electrically Erasable Programmable Read Only

Memory) : m émoire (re)programmable et effac¸able

électriquement.

(cid:73) exemple : Bios (“flashable”) - lecteur MP3

M émoires volatiles (RAM) (I)

2 types de RAM

DRAM : Dynamic RAM

Dynamique : l’information doit être p ériodiquement rafraˆıchie

r éalisation :

(cid:73) 1 bit = 1 transistor + 1 condensateur

(cid:73) le condensateur stocke l’information

(cid:73) Doit être rafraˆıchit r éguli èrement (pour conserver la valeur stock ée

dans le condensateur)

(cid:70) ralentit la vitesse d’acc es a la m émoire

peu co ûteuse

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

130 / 158

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

131 / 158

M émoires volatiles (RAM) (II)

D écodeurs - multiplexeurs : rappels (I)

2 types de RAM

SRAM : Static RAM

Statique : l’information n’a pas besoin d’ être rafraˆıchie

r éalisation :

(cid:73) 1 bit = 4 transistors = 2 portes NOR

(cid:73) Bascule RS (ou D) qui stocke l’information

(cid:70) beaucoup plus rapide que la DRAM

beaucoup plus cher que la DRAM

Un d écodeur permet de d écoder un mot binaire : il comprend n

entr ées et 2n sorties.

la i ème sortie de d écodeur vaut 1 si les n entr ées forment l’entier

binaire i.

e0e1

en−1

en

D écodeur

s0s1s2

s2n−2

s2n−1

s2n

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

132 / 158

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

133 / 158

d écodeur 3 vers 8

D écodeurs - multiplexeurs : rappels (II)

Registres (I)

Un multiplexeur comporte 2n entr ées, 1 sortie et n lignes de

s élection (entr ées).

la sortie du multiplexeur vaut la valeur de la i ème entr ée si l’entier

i est cod é sur les lignes de s élection.

m émoire de type SRAM

int égr és au cœur du processeur

e0e1e2

e2n−2

e2n−1

e2n

Multiplexeur

(MUX)

Publicité

s

l0

l1

ln−1

ln

multiplexeur 4 vers 1

un registre stocke les informations relatives à une instruction

(cid:73) op érandes n écessaires à l’instruction

(cid:73) r ésultats produits par l’instruction

tr ès peu nombreux (< 20)

tr es rapides (cadenc és a la vitesse du processeur)

Nous en reparlerons lors de l’ étude du processeur

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

134 / 158

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

135 / 158

Registres (II)

R éalisation :

registre 1-bit = 1 bascule RS (ou D)

registre n-bits = n bascules RS (ou D) en parall èle

registre 4 bits

Bancs de registres (I)

Un banc de registres de hauteur n et de largeur k est

un ensemble de n registres de k bits

une m émoire de n adresses

Exemple :

Une banc de n registres de 3 bits avec

un port d’ écriture

deux ports de lecture (lors d’une lecture le contenu de deux

registres est lu m ême temps.)

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

136 / 158

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

137 / 158

Bancs de registres (II)

Exemple d’utilisation :

Bancs de registres (III)

Fonctionnement en lecture : (2 registres en parall èle)

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

138 / 158

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

139 / 158

Bancs de registres (IV)

Fontionnement en écriture :

Bancs de registres (V)

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

140 / 158

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

141 / 158

Organisation de la M émoire centrale

M émoire unidimensionnelle

M émoire centrale

Rappels :

M émoire de type DRAM

l’information y est stock ée comme des mots (m émoire) d’un

certain nombre de bits (8, 16, 32, 64 bits) : la longueur des mots

est le format de la m émoire.

vitesse relativement lente (compar ée à celle du processeur)

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

142 / 158

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

143 / 158

Nombre de portes dans le d écodeur trop important

Organisation de la M émoire centrale (II)

M émoire bidimensionnelle utilisation d’un d écodeur pour les lignes et un pour

les colonnes

Organisation de la M émoire centrale (III)

M émoire matricielle (organis ée comme une matrice carr ée)

Utilisation des m êmes lignes d’adresses utilis ées pour les lignes et les

colonnes.

Chargement de l’adresse en deux temps et stock é dans deux registres

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

144 / 158

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

145 / 158

CAS : Column Address Strobe

RAS : Row Address Strobe

Fonctionnement de la m émoire (I)

Cycle de lecture

établissement de l’adresse

signal de lecture (R/W=0 par exemple)

s élection du boitier (CS=0)

Apr ès un certain temps, l’information apparaˆıt sur la sortie et reste

pr ésente jusqu’ à la fin du cycle.

Fonctionnement de la m émoire (II)

Cycle d’ écriture

établissement de l’adresse

s élection du boitier (CS=0)

établissement de la donn ée sur l’entr ée

signal d’ écriture (R/W=0 ci-dessous)

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

146 / 158

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

147 / 158

Fonctionnement de la m émoire (III)

Fonctionnement de la m émoire (IV)

Protocoles échanges processeur-m émoire

Synchrone : au bout de k unit és de temps, le processeur

suppose que l’op ération sur la m émoire a ét é r éalis ée (mot écrit

en m émoire, mot lu disponible sur la sortie)

Publicité

Asynchrone (handshaking) : processeur et m émoire

s’ échangent des informations de contr ôle (request/

acknowledgment)

Optimisations

m émoire synchrone (synchronis ée avec le bus) : SDRAM

Pour les m émoires matriciels, acc ès en mode page : on charge

ligne et colonne, puis on ne change que les colonnes pour les

acc ès suivants (localit é des donn ées) : DRAM FPM

Pour les m émoires matriciels, acc ès en rafale (burst) : on charge

ligne et colonne ainsi que le nombre de donn ées à lire ;

incr émentation dans la m émoire des colonnes pour les acc ès

suivants (localit é des donn ées). DDR-SDRAM

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

148 / 158

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

149 / 158

Assemblage de boitiers m émoire (I)

Assemblage de boitiers m émoire (II)

Augmentation de la taille des mots

2 boitiers de 2k mots de n bits =⇒ un bloc de 2k mots de 2n bits

Les m émoires sont regroup és dans des boitiers m émoire.

Du aux limites technologiques d’int égration, pour obtenir des

m émoires de grandes tailles, on associe plusieurs boitiers m émoires.

Ces blocs sont assembl és :

pour augmenter la taille des mots de la m émoire

pour augmenter le nombre de mots dans la m émoire

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

150 / 158

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

151 / 158

Assemblage de boitiers m émoire (III)

Augmentation du nombres de mots

4 boitiers m émoires de 2k mots de n bits =⇒ un bloc de 4 ∗ 2k mots de

n bits

adresse pour le nouveau bloc sur k + 2 bits

M émoire et erreurs

Du fait de sa nature “physique”, les informations en m émoire peuvent

comporter une ou des erreurs.

Pour d étecter et corriger, on ajoute des bits de contr ôle.

bit de parit é : 1 bit suppl émentaire (en plus des bits de donn ées)

tel que le nombre de bits à 1 est pair

m émoire ECC (Error Correction Coding) poss ède des bits

suppl émentaires pour d étecter et corriger le(s) bit(s) erron é(s).

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

152 / 158

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

153 / 158

M émoire Logique (I)

M émoire Logique (II)

La m émoire logique est la fac¸on dont le processeur (ou le

programmeur) voit la m émoire (physique).

La m émoire est d éfinie comme un ensemble de N octets cons écutifs

dont

la premi ère adresse est 0

la derni ère adresse est N − 1

Adressage de la m émoire par des mots de : 8 (octet), 16, 32, 64, .. bits.

Pour un mot m émoire de 32 bits, il existe 2 fac¸ons de ranger les octets

qui le compose :

Le mot de poids fort est stock é en premier : big-endian

i

i+1

i+2

i+3

Octet 3 Octet 2 Octet 1 Octet 0

Le mot de poids fort est stock é en dernier : little-endian

i

i+1

i+2

i+3

Octet 0 Octet 1 Octet 2 Octet 3

Un mot de 32 bits est constitu é de 4 octets cons écutifs

Un mot m émoire ne peut commencer n’importe o ù

les mots de 16 bits commencent sur des adresses paires

les mots de 32 bits commencent sur des adresses multiples de 4

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

154 / 158

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

155 / 158

M émoire Logique (III)

M émoire Logique (IV)

On a donc 2B blocs ayant chacun 2N−B cases.

Segmentation de la m émoire : d écoupage logique de la m émoire en

un certain certains nombres de blocs (ou segments)

Une adresse est cod ée comme

un num éro de blocs

un d éplacement dans le bloc (offset)

N bits d’adresses =⇒ 2N cases m émoire.

Les N bits sont s épar és en deux :

B bits (de poids fort) pour le num éro de bloc

N − B bits (de poids faible) pour le d éplacement dans le bloc

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

156 / 158

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

157 / 158

M émoire Virtuelle

La m émoire physique n’est qu’une partie de la m émoire disponible : le

syst ème permet l’utilisation de la m émoire de masse (disque durs)

comme de la m émoire virtuelle.

Pagination de la m émoire virtuelle

M écanisme de swap

L3 Informatique - Universit é de Provence ()

Architecture des ordinateurs

158 / 158