BP = 108 octets par seconde

publicité
Plan
„
„
„
„
„
„
„
„
„
„
Copyright © F. Muller
2004
Ch1 - Introduction
Ch2 - Structure de l’ordinateur
Ch3 - Modèle de Programmation
Ch4 - Conception des Processeurs
Ch5 - Pipeline
Ch6 - Parallélisme d’instructions
Ch7 - Systèmes Mémoire
Ch8 - Mémoires Caches
Ch9 - Mémoire Virtuelle
Ch10 - Systèmes Multiprocesseurs
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 1 -
Systèmes Mémoire
Introduction
„ Caractéristiques principales d’un bus
„ Hiérarchies mémoire
„ Technologies mémoire
„
Copyright © F. Muller
2004
Ch7 - 2 -
Introduction
„
Objectifs
„
„
„
„
„
Introduction
„
„
Copyright © F. Muller
2004
Comprendre les concepts de latence et de bande passante
Comprendre le concept de hiérarchie mémoire et calculer le
temps d’accès moyen à la mémoire
Comprendre la différence entre les technologies DRAM et
SRAM
Être capable d’expliquer comment les modes d’accès
courants affectent les temps d’accès moyens
La mémoire était vu comme une « boite noire » où le
processeur stocke des données
On supposait que les accès mémoires prenait la même
temps pour lire ou écrire des données
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 3 -
Caractéristiques principales d’un bus
Définitions
„
Latence
„
„
Débit
„
„
Temps que prend une opération individuelle
(lecture/écriture) pour se terminer entre le processeur
et le système mémoire
Vitesse à laquelle les données entre le processeur et le
système mémoire peuvent se déplacer
Bande Passante
„
Produit entre le débit et la quantité de données
référencées par chaque opération mémoire
Latence ?
bus
Débit ?
Processeur
Systèmes
Mémoire
Bande Passante ?
Copyright © F. Muller
2004
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 4 -
Caractéristiques principales d’un bus
Exemple
„
Un système mémoire possède une latence de 10ns
par opération et une largeur de données de 32 bits.
On suppose que seule une opération peut être
effectuée à la fois et qu’il existe aucun délai entre les
opérations.
„
Calcul de Débit
„
„
Calcul de la Bande Passante
„
„
Copyright © F. Muller
2004
Débit = 1 / latence = 1 / 10 ns
Débit = 100 millions d’opération par seconde
?
?
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 5 -
Roadmap : Performance
Copyright © F. Muller
2004
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 6 -
Caractéristiques principales d’un bus
Pipelining et Préchargement
„
Les systèmes mémoire pipelinés
„
„
„
Améliore le débit
Calcul de la latence et de la bande passante plus complexe
Le préchargement
„
„
„
La plupart des technologies mémoire requièrent un certain temps
d’inactivité entre les accès mémoires
Ce temps sert au préchargement qui opère une partie du travail
d’accès avant la connaissance de l’adresse
Réduction du délai entre le moment où l’adresse est transmise et
la fin de l’opération
Temps de
préchargement
Bus d’adresse
Copyright © F. Muller
2004
???
Latence
$08F500
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 7 -
Caractéristiques principales d’un bus
Pipelining et Préchargement - Exemples
„
Exemple 1
„
„
Un système mémoire possède une latence de 40ns, un transfert
d’un octet par opération et un pipeline permettant le recouvrement
d’exécution de 4 opérations.
Quelle est la bande passante ?
Solution
„
„
Exemple 2
„
„
Un système mémoire possède une latence de 20ns, un temps de
préchargement de 5ns et un transfert de 2 octets par accès.
Quelle est la bande passante ?
Solution
„
„
„
Copyright © F. Muller
2004
Débit d’une opération = 1 / (latence / nb d’op) = 108 op / s
BP = Débit x 1 octet
BP = 108 octets par seconde
.
.
.
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 8 -
Caractéristiques principales d’un bus
Parallélisme (1/2)
„
Chargement de plusieurs références mémoires en
parallèle
„
„
„
Une requête demande plusieurs cycles
Envoie de requêtes à des mémoires inactives
Augmente la vitesse à laquelle les requêtes peuvent être
gérées sans augmenter le nombre de broches E/S
requêtes
Banque
mémoire
Copyright © F. Muller
2004
Processeur
Banque
mémoire
Banque
mémoire
requêtes
Banque
mémoire
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 9 -
Caractéristiques principales d’un bus
Parallélisme (2/2)
„
Systèmes mémoires répliquée
„
„
„
Stockage de plusieurs copies de la mémoire entière
Chaque copie peut gérer n’importe quelle requête
Inconvénients
„
„
„
Augmentation la quantité de mémoire
Cohérence entre les copies mémoire
Systèmes mémoire à banques
„
„
„
„
„
Les données sont divisées ou entrelacées
Chaque mémoire contient une fraction des données
Certains bits d’adresse sélectionnent la banque mémoire
Avantage : Pas de copie donc pas d’augmentation de mémoire
Inconvénient
„
„
Conflits dû à l’accès au même banque mémoire
Réduit la bande passante théorique (crête)
Processeur
Copyright © F. Muller
2004
Banque
mémoire
Banque
mémoire
Banque
mémoire
Banque
mémoire
A1 A0 = 00
A1 A0 = 01
A1 A0 = 10
A1 A0 = 11
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 10 -
Hiérarchie mémoire
Présentation des niveaux
„
Processeur
Mémoire Cache (Niveau Supérieur)
„
„
Ko
„
Mémoire Cache
+
„
Mémoire Principale
Coût par bits
Rapidité
„
Mo
Mémoire principale
„
„
„
Go
Mémoire virtuelle
Capacité plus importante
Accès plus lent
DRAM (moins cher)
Mémoire Virtuelle (Niveau Inférieur)
„
„
„
Copyright © F. Muller
2004
Capacité mémoire & surface réduite
Temps d’accès très rapide
SRAM (cher)
Capacité très importante
Accès très lent
Disque Dur
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 11 -
Hiérarchie mémoire
Principe
„
Objectif
„
„
Conserver les données les plus fréquemment référencées
dans la mémoire des niveaux supérieures de hiérarchie
Fonctionnement
„
„
Utilisation d’un système de pagination à la demande
Avantage
„
„
demande ?
Processeur
les technologies SRAM, DRAM, Disque Dur gère le mode page
le temps de lecture/écriture d’un octet est quasi identique à la
lecture/écriture d’une page
Non, demande ?
Non, demande ?
Mémoire Cache
Blocs de 64 octets
OK
Copyright © F. Muller
2004
Mémoire principale
OK
Blocs de 4 Koctets
Architecture de l’ordinateur – Systèmes Mémoire
Mémoire virtuelle
OK
Blocs de 4Ko ou plus
Ch7 - 12 -
Terminologie (1/3)
„
Hit (succès)
„
„
„
Miss (échec)
„
„
„
Sélectionne le bloc à retirer (à évincer) de la mémoire pour
le mettre au niveau inférieur et vice-versa
Propriété d’inclusion
„
Copyright © F. Muller
2004
La référence n’est pas situé au niveau demandé
Taux de miss en %
Politique de remplacement
„
„
La référence a été trouvé au niveau demandé
Taux de hit en %
Garantit qu’une référence sera présente à tous les niveaux
mémoires
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 13 -
Terminologie (2/3)
„
Système write-back (écriture en différé)
„
„
„
„
„
„
Système write-through ou Write-thru
„
„
Les données écrites sont placées à tous les niveaux de la hiérarchie
mémoire à chaque écriture
Compromis write-through / write-back
„
„
„
Copyright © F. Muller
2004
Les données écrites sont placées uniquement au niveau supérieur de la
hiérarchie
Lorsque les données sont évincées de ce niveau, les données sont
copiées au niveau inférieur
Blocs modifiés = blocs sales (dirty)
Blocs non modifiés : blocs propres (clean)
L’implémentation des systèmes write-back est plus simple si l’on adopte
la propriété d’inclusion (pas besoin d’évincer les blocs de niveaux
inférieurs pour mettre le blocs modifiés de niveau supérieur)
Un système write-back a une bande passante plus élevé que le système
write-through
Un système write-back est plus complexe à mettre en oeuvre
Mélange des deux genres : cache en write-back et mémoire principale en
write-through
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 14 -
Terminologie (3/3)
„
Temps d’accès moyens
Tmoyen = (Thit x Phit) + (Tmiss x Pmiss)
Temps de hit pour
accomplir une requête qui
aboutit
„
Taux de hit
(Probabilité)
Temps d’accès moyen
au niveau sous-jacents
Taux de miss
(Probabilité)
Exemple
„
Un système mémoire contient un cache (Taccès de 5ns, Taux de hit de
80%), une mémoire principale (Taccès de 100ns, taux de hit de 99,5%) et
une mémoire virtuelle (Taccès de 10ms).Quel est le temps d’accès
moyen à la hiérarchie ?
Temps moyen mémoire principale :
Temps moyen mémoire cache :
Copyright © F. Muller
2004
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 15 -
Technologie Mémoire
Structure
„
Structure
„
„
Valable pour le SRAM et la DRAM
La vitesse dépend
„
„
de la longueur des lignes de mot (capacité et résistance du fil)
De la construction de la cellule binaire
W0
2M colonnes
N bits
d’adresse
(poids forts)
Décodeur
W2N-1
M bits d’adresse
(poids faibles)
Taille du bus d’adresse = N + M
Copyright © F. Muller
2004
2N lignes
Mux
Mux
Mux
Mux
Dx-1
Dx-2
D1
D0
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 16 -
Technologie Mémoire
SRAM (Static RAM)
Cellule binaire
Ligne de bits
Ligne de bits inversée
Ligne de mots
Accès
CE
Écriture
Adresse
Adresse 1
Adresse 2
Données
Data 1
lecture
Copyright © F. Muller
2004
Architecture de l’ordinateur – Systèmes Mémoire
Data 2
écriture
Ch7 - 17 -
Technologie Mémoire
DRAM (Dynamic RAM) (1/3)
„
La mémorisation = 1 condensateur
Ligne de bits
„
Plus compact
Ligne de mots
„
Signal plus faible => propagation
moins rapide
Vc
„
Rafraîchissement de la mémoire
Vc
t
Copyright © F. Muller
2004
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 18 -
Technologie Mémoire
Les principaux types de SDRAM
„
Synchronous DRAM
„
„
„
SDR-SDRAM
„
„
„
„
Double Data Rate
1 R/W sur front montant et
descendant
DDR2-SDRAM
„
„
Copyright © F. Muller
2004
Single Data Rate
1 R/W sur front montant
DDR-SDRAM
„
„
apparue en 1997
synchrone à l’horloge de la
carte mère
QDR : Quadruple Data
Rate
2 canaux
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 19 -
Technologie Mémoire
DRAM (Dynamic RAM) (2/3)
„
Exemple
„
„
Su une DRAM possède 512 rangées et que son temps de
rafraîchissement est de 10ms, avec quelle fréquence moyenne
faut-il opérer un rafraîchissement de rangée ?
Solution
„
„
„
.
.
Accès en Lecture
RAS
(Row Address Strobe)
CAS
(Column Address Strobe)
Adresse
Adresse R
Adresse C
Données
Data
Délai RAS - CAS
Copyright © F. Muller
2004
Délai CAS - Données
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 20 -
Technologie Mémoire
DRAM paginée (3/3)
Principe
W0
2N lignes
Décodeur
2M colonnes
W2N-1
Latch
Stockage de tout le contenu
de la rangée dans le latch
Multiplexeur
Dn-1
Accès
Dn-2
D1
D0
Accès Normal
Accès en mode page
RAS
CAS
Adresse
Adresse R
Données
Data 2
Délai RAS - CAS
Copyright © F. Muller
2004
Adresse C+1
Adresse C
Délai CAS - Données
Architecture de l’ordinateur – Systèmes Mémoire
Data 1
Délai CAS - Données
Ch7 - 21 -
Technologie Mémoire
Exemple : SDRAM (PC100 et PC133)
tRP - The time required to switch internal memory banks. (RAS Precharge)
tRCD - The time required between /RAS (Row Address Select) and /CAS (Column Address Select) access.
tAC - The amount of time necessary to "prepare" for the next output in burst mode.
tCAC - The Column Access Time.
tCL - (or CL) CAS Latency.
tCLK - The Length of a Clock Cycle.
RAS - Row Address Strobe or Row Address Select.
CAS - Column Address Strobe or Column Address Select.
Read Cycle Time - The time required to make data ready by the next clock cycle in burst mode.
Copyright © F. Muller
2004
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 22 -
Bilan sur les bus
„
Bus système
„
„
Bus d’extension
„
Copyright © F. Muller
2004
bus interne, internal bus ou front-side bus FSB)
permet au composants de la carte mère de communiquer
entre eux (exemple : bus PCI)
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 23 -
Synthèse
„
Propriété d’un bus
„
„
Optimisation des accès à la mémoire
„
„
„
Taux de Hit, Taux de miss …
Technologie Mémoire
„
„
Copyright © F. Muller
2004
Pipelining, préchargement, parallélisme
Hiérarchie Mémoire
Quelques Termes
„
„
Latence, débit, Bande passante …
SRAM
DRAM, SDRAM …
Architecture de l’ordinateur – Systèmes Mémoire
Ch7 - 24 -
Téléchargement