Mémoire

Transcription

Mémoire
Cours
Architecture des Ordinateurs
Composants d’un ordinateur
Processeur (MPU : MicroProcessor
Unit)
Mémoire RAM
Stockage (disque dur, CD, clé USB,
carte mémoire, …)
Périphériques de sortie (carte vidéo,
écran, son, …)
Périphériques d’entrée (clavier,
souris, capteur, …)
Tous ces éléments sont placés sur
une carte mère et communiquent
par des ports via des bus
2
Carte mère
La carte mère est l'un
des éléments
essentiels d'un
ordinateur. Elle assure
la connexion physique
des différents
composants
(processeur, mémoire,
cartes
d'entrées/sorties, ...)
par l’intermédiaire de
différents bus
(adresses, données et
commande)
3
Le Socket
Le Socket : C'est l'emplacement qui recevra le
processeur et servira à faire l'interface avec la
carte mère
permet de changer de processeur au
cas de compatibilité
Types de Socket :
architecture « Pin Grid Array (PGA) »
ou « matrice de broches »
architecture « Land Grid Array (LGA) »
ou « matrice de pastilles »
4
Le Socket
Sockets de type « Pin Grid Array (PGA) » : permettent d'y insérer les
broches du processeur. Utilisés par la plupart des processeur AMD et
les anciens modèles de Intel. On le trouve également dans les
nouveaux processeurs Intel mobile (Smartphone, tablettes, …).
Dessous d'un Pentium 4
Socket de type PGA
5
Le Socket
Sockets à contacts, de type « Land Grid Array (LGA) » : permettant
une plus grande densité de contacts. Utilisés pour héberger des
processeurs récents ayant un grand nombre de broches, tel que : Intel
Xeon, Intel Core, Intel Core 2 et AMD Opteron.
Dessous d'un Pentium 4 (Prescott)
Socket de type PGA
6
Les slots (emplacements)
mémoire
Destinée à recevoir les barrettes de mémoire. C'est
l'emplacement de la mémoire centrale.
toute barrette n'est pas compatible avec toute
carte mère
les principaux types utilisés sont :
Double Data Rate Synchronous Dynamic
Random Access Memory (DDR-SDRAM) :
synchrone avec l'horloge système avec
transfert des données deux fois par cycles
DDR2-SDRAM : encore assez utilisées
DDR3-SDRAM : en train de devenir les
plus utilisées ; débit de 6400 Mbits/s
jusqu'à 10664 Mbits/s
7
Ports PCI et PCIe
Port PCI (Peripheral Component
Interconnect) : permet de connecter
des cartes d'extension sur la carte
mère via un bus PCI (cartes réseau,
son, graphique). Le PCI utilise une
interface parallele et offre un débit
théorique de 133 Mo/s en 32 bits à 33
MHz.
Port PCI Express (PCIe) : C'est une
version améliorée du port PCI. Le
PCIe utilise entre 1 et 32 canaux de
type série et offre un débit théorique
de 8 Go/s.
8
Ports SATA et Ports série
Ports SATA (Serial Advanced
Technology Attachement) pour
connecter une mémoire de masse
(typiquement un disque dur ou un
lecteur de CD/DVD) à la carte mère :
6 Gbits/s pour SATA 3.
Ports série : transmettent des données
en série (bit à bit), dont notamment le
Universal Serial Bus (USB) : débit 4,8
Gbit/s pour USB 3.
9
BIOS (Basic Input Ouput Service)
Au démarrage de l'ordinateur, la mémoire vive (RAM) ne
contient aucun programme (il est à rappeler que la RAM
est une mémoire volatile qui perd ses données lorsqu'elle
n'est pas alimentée).
Ainsi, l'ordinateur exécute le programme disponible sur la
mémoire morte (ROM). Cette mémoire est non-volatile et
conserve donc ses données même en l'absence
d'alimentation.
Le programme disponible sur la ROM est le BIOS (Basic
Input Ouput Service).
10
BIOS (Basic Input Ouput Service)
Le BIOS a un rôle essentiel pour le fonctionnement de la carte mère :
il initialise tous les composants de la carte mère et de certains
périphériques
il identifie tous les périphériques internes et externes qui lui sont
connectés. Il vérifie que ces périphériques fonctionnent correctement.
Au cas de dysfonctionnement, il annule le démarrage du système
d'exploitation.
il démarre le système d'exploitation présent sur le premier
périphérique disponible (généralement le disque dure)
Il est possible de paramétrer le BIOS. Ces paramètres sont conservés
dans une mémoire modifiable et volatile appelée CMOS.
11
CMOS
Le CMOS est une mémoire de taille réduite (quelques centaines
d'octets) à faible consommation, alimentée par une pile
présente sur la carte mère.
C'est une mémoire vive de type SRAM (Static RAM) fabriquée
par des transistors CMOS (Complementary Metal Oxide
Semiconductor), d'où son nom CMOS RAM ou aussi CMOS.
Le CMOS est l'un des composants d'un circuit électronique de
la carte mère. Les autres composants sont : un compteur, une
horloge de type RTC (Real Time Clock) et une pile. Ce circuit
est responsable de la mise à jour de la date et l'heure présentes
dans le CMOS même quand l'ordinateur est débranché. La pile
alimente les composants du circuit lorsque l'ordinateur est
éteint, et se recharge lorsque l'alimentation est disponible.
12
CMOS
Ainsi, la mémoire CMOS est une mémoire SRAM de taille
réduite.
Elle conserve ses données grâce à une pille.
Lorsque la pille est débranchée, les données du CMOS sont
perdues.
Le CMOS sert au BIOS pour conserver des paramètres
utilisateurs.
Le CMOS est également utilisé pour le maintient et la mise à
jour de la date et l'heure.
13
Les Bus
Les différents composants connectés à la carte mère
communique moyennant des fils électriques : les bus
Un bus est un mécanisme qui permet le transfert de données
entre éléments dans l’ordinateur
Bus interne : connecte les composants internes de l’ordinateur
(MPU, mémoire, graphique…)
Bus externe : relie les périphériques externes
Bus série : les données sont transmises les une à la suite des
autres
Bus parallèle : plusieurs données sont transmises en parallèle
14
Les Bus
Bus internes :
Peripheral Component Interconnect (PCI) : parallèle
PCI express : série
Firewire : série
Bus externes :
Serial Advanced Technology Attachment (SATA) :
série
Small Computer System Interface (SCSI) : parallèle
Universal Serial Bus (USB) : série
15
Les Bus
Autres caractéristiques :
Largeur : C'est le nombre de bits qui peuvent être transmis
simultanément sur le bus (rappel : 8 bits = 1 octet)
Débit binaire : C'est le nombre de bits que le bus peut transmettre
par seconde. Plus celui-ci est élevé, plus le bus est rapide.
Synchrone ou asynchrone : Certains bus sont synchronisés
moyennant un signal d'horloge. Les bus asynchrone ne se
synchronisent pas en utilisant le signal d'horloge mais se
synchronisent tout de même par d’autres méthodes.
Protocole : Le protocole d'un bus définit comment celui est géré.
Ce protocole définit quand et comment les données doivent être
envoyées sur le bus.
16
Contrôle des Composants
Le processeur communique avec les différents composants
connectés à la carte mère en utilisant un ou plusieurs chipsets
Un chipset est une puce électronique soudée sur la carte mère. C'est
aussi un contrôleur, également nommé microcontrôleur (MCU :
Microcontroller Unit)
Contrairement à un processeur, le chipset est soudé dans la carte
mère et ne peut pas être retiré et/ou remplacé
Architectures principales des cartes mère utilisant un processeur
Intel :
Intel Hub Architecture (IHA) : ancienne conception
Platform Controller Hub (PCH) : solution récente
Note : Chipset = un ensemble de circuits intégrés sur une seule puce
17
Exemple de chipset
Intel Hub Architecture (IHA)
Intel Hub Architecture (IHA) est l'ancienne architecture
proposée par Intel. Elle est apparue vers 1999. IHA est
composé par les deux chipsets suivants :
Memory Controller Hub (MCH) : également appelé
« Northbridge (pont nord) »
Input/Output Controller Hub (ICH) : également
appelé « Southbridge (pont sud) »
Note : Un hub (appelé aussi concentrateur en français) est un point de
connexion central. Parmi les exemples les plus connus, on trouve le « hub
USB » qui permet de connecter plusieurs périphériques USB à un seul port d'un
ordinateur. On trouve également les multi-prises.
18
Intel Hub Architecture (IHA)
MCH (Northbridge) et ICH
(Southbridge) gèrent les flux de
données entre le processeur et les
autres composants via le Front Side
Bus (FSB)
Le Northbridge gère les relations avec
la mémoire et les ports graphiques
(AGP : Advanced Graphics Port)
il détermine le type de processeur
et de mémoire (RAM) compatible
avec la carte mère
Le Southbridge gère les flux plus lents
Architecture IHA
19
Intel Hub Architecture (IHA)
Le MCH (Northbridge) gère les
communications entre
Le Microprocesseur (MPU)
La mémoire (RAM)
Le bus AGP
Le bus PCIe
Le ICH (Southbridge) gère
Le bus PCI
Le DMA (Direct Memory Access)
IDE Parallel ATA, Serial ATA
Exemples : Intel 82810 GMCH et 82801 ICH
20
Intel Hub Architecture (IHA)
Liaison « Microprocesseur – Northbridge » :
Utilise le bus « Front Side Bus (FSB) »
La bande passante (débit théorique maximal de
transfert) de FSB, exprimée en octets par
seconde, est obtenue par l'équation suivante :
« largeur du bus » x « fréquence d'horloge
(nombre de cycles par seconde) » x
« nombre de transferts par cycle d'horloge »
Le débit du FSB peut être exprimé en transferts
par seconde ou en MT/s : « fréquence
d'horloge » x « nombre de transferts par
cycle d'horloge »
21
Intel Hub Architecture (IHA)
Liaison « Microprocesseur – Northbridge » :
Exemple : un FSB de largeur de 64 bits (8 octets),
opérant à une fréquence de 100 MHz et effectuant
4 transferts par cycle, a un débit de : 64 / 8 x 100 x
106 x 4 = 3200 Mo/s
MPU (Intel)
Fréquence Transferts
(MHz)
par cycle
Largeur du
bus
Débit de
transfert
(Mo/s)
Pentium
66
1
64 bits
528
Pentium II
100
1
64 bits
800
Pentium III
133
1
64 bits
1064
Pentium 4
133
4
64 bits
4264
Core Duo
166
4
64 bits
5312
Core 2 Duo
333
4
64 bits
10656
22
Intel Hub Architecture (IHA)
Liaison Northbridge – Southbridge :
En 1999 : utilisation d'un bus
nommé « Intel Hub Interface »
ayant un débit de 266 à 533 Mo/s
En 2004 : utilisation d'un bus de
type DMI (Direct Media Interface)
ayant un débit > 1 Go/s
23
Platform Controller Hub (PCH)
Platform Controller Hub (PCH) est un nouveau chipset d'Intel
destiné pour remplacer l'architecture IHA. Cette solution est
apparue vers 2008.
Selon l'architecture PCH, l'ancien Northbridge est totalement
supprimé et l'ensemble de ses fonctionnalités (le contrôleur
mémoire et les bus graphiques) ont été intégrés dans le
microprocesseur lui même.
L'ancien Southbridge a été renommé Platform Controller Hub
(PCH)
Le PCH est connecté au processeur via une interface DMI
(Direct Media Interface) ayant un débit d'environ 2Go/s
24
Platform Controller Hub (PCH)
Le PCH gère :
Les bus PCIe
Serial ATA
USB
Exemple de puce PCH : Intel P55
Liaison Microprocesseur – PCH :
DMI à 2 Go/s
Notes :
lane = canal
GB/s (Gbytes/s) = Go/s
Gb/s (Gbits/s) = Gbits/s
MB/s (Mbytes/s) = Mo/s
Mb/s (Mbits/s) = Mbits/s
25
IHA, PCH, et ...
Au début, il y avait le IHA qui est composé par
Northbridge et Southbridge
… Ensuite, avec le PCH, disparition du Northbridge et
intégration de ses fonctionnalités dans le
Microprocesseur
… Et après, peut on voir la disparition de tous les chipsets
(MCH, ICH, PCH, etc.) et l'intégration de toutes leurs
fonctionnalités dans un seul Microprocesseur ?
26
Mémoire
Les différentes mémoires peuvent être classées
comme indiqué sur le schéma suivant :
27
Mémoire morte
La ROM (Read Only Memory) : également
appelée mémoire morte, est une mémoire
non volatile (qui conserve ses données en
l'absence d'une alimentation) qui est vouée à
être accédée en lecture seulement. Elle
contient du code et des données qui ne sont
pas amenés à changer souvent.
28
Mémoire morte
La ROM a connue plusieurs évolutions. On distingue alors
les variantes suivantes :
ROM classique : L'information contenue dans ces
mémoires est enregistrée de manière définitive lors de
la fabrication du circuit.
PROM (Programmable ROM) : est une ROM à
enregistrement irréversible qui peut être programmée
par un utilisateur grâce à un programmateur.
EPROM (Erasable Programmable ROM) : peut être
effacée et réécrite. Pour l'effacer il faut la soumettre à
un rayonnement ultraviolets pendant 30 minutes.
29
Mémoire morte
EEPROM (Electrically EPROM) : ces mémoires
utilisent un procédé électrique pour l'effacement des
données. Elles sont plus pratiques que les EPROM.
Flash ROM : elles sont effaçables et reprogrammables
rapidement.
La mémoire de stockage du BIOS est une
mémoire de type ROM.
30
Mémoire vive
La mémoire vive ou RAM (Random Access Memory) est une
mémoire volatile, cela signifie que si l'on coupe
l'alimentation, les données qu'elle contient sont perdues.
Elle sert à stocker les programmes exécutés par le processeur
et elle est accessible en lecture et en écriture.
Il existe deux grandes familles de mémoires vives :
les RAM Statiques : SRAM (Static RAM)
les RAM Dynamiques : DRAM (Dynamic RAM)
31
Mémoire vive
SRAM (Static RAM) : L'information stockée dans une
SRAM peut être maintenue sans dégradation pendant
une centaine d'heures. L’intérêt de ce type de mémoire
est sa vitesse (environ 10ns) mais son coût est élevé.
En conséquence on utilisera la SRAM lorsque le facteur
vitesse est critique et notamment pour des mémoires de
petite taille comme la mémoire cache.
Le CMOS est un autre exemple de SRAM
32
Mémoire vive
DRAM (Dynamic RAM) : Chaque bit d'une DRAM est
constitué par un transistor et un condensateur. Le
condensateur détermine la valeur du bit (le bit vaut 1 si
le condensateur est chargé, il vaut 0 dans le cas
contraire), tandis que le transistor gère l'accès au
condensateur.
L'inconvénient des DRAM est que le condensateur
possède une tendance naturelle à se décharger. Pour
que l'information reste cohérente, on va devoir réaliser
un rafraîchissement de la mémoire toutes les quelques
millisecondes (typiquement toutes les 64 ms). Ce
rafraîchissement consiste à lire et à réécrire la donnée.
33
Mémoire vive
Les avantages de la DRAM sont :
sa grande densité d'intégration (car un bit est
représenté par un condensateur et un transistor
contre 4 à 6 transistors pour une SRAM),
son faible coût de fabrication,
sa faible consommation électrique (entre un sixième à
la moitié de celle des SRAM).
En revanche le temps d'accès de la DRAM est plus important
que celui de la SRAM (environ 50-70 ns).
34
Mémoire vive
Mémoires synchrones et asynchrones :
Mémoire asynchrone : pour ce type de mémoire,
l'intervalle de temps entre deux accès mémoire
consécutifs n'est pas régulier. Le processeur ne sait
donc pas quand l'information qu'il attend est disponible
et doit attendre que la mémoire lui transmette les
données.
Mémoire synchrone : la cadence de sortie des
informations est régulière, on évite ainsi les états
d'attente du processeur.
⇒ A ne pas confondre SRAM (Static RAM) qui est une RAM
statique, et SDRAM (Synchronous Dynamic RAM) qui est
dynamique.
35
Mémoire
La mémoire centrale est type DRAM.
Évolution des DRAM :
Année
Mémoire
Largeur du bus
1997
SDRAM
8 octets
2000
DDR-SDRAM
8 octets
2003
DDR2-SDRAM
8 octets
2007
DDR3-SDRAM
8 octets
2014
DDR4-SDRAM
8 octets
36
Exercice
Un Microprocesseur est connecté au
Northbridge à travers un bus FSB de
largeur de 64 bits (8 octets), opérant à
une fréquence de 100 MHz et
effectuant 4 transferts par cycle. Le
Northbridge est connecté à une carte
mémoire DDR SDRAM. Cette carte a
une fréquence de 250 MHz, et un bus
de 64 bits. Elle réalise 2 transferts par
cycle. Quel est le débit maximal de
donné entre le Microprocesseur et la
RAM ?
37
Exercice (solution)
Débit = « largeur du bus » x « nombre de cycles par
seconde » x « nombre de transferts par cycle»
Débit FSB = 64/8 x 100 x 106 x 4 = 3200 Mo/s = 3,2 Go/s
Débit Bus Mémoire = 64/8 x 250 x 106 x 2 = 4000 Mo/s = 4
Go/s
Débit Maximal entre le processeur et la mémoire est 3,2
Go/s
38