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