Mémoire centrale Mémoire centrale Plan du cours Rappel : Constituants principaux d’un ordinateur • Rappels des différents constituants de l’ordinateur Horloge Processeur Mémoire Centrale Unités d’Echanges • Introduction : mémoire centrale et mémoire de masse Bus • Principe des mémoires • Unité centrale de Traitement (Processeur) cadencé par l’horloge avec : • Caractérisation d’une mémoire – UAL : Unité arithmétique et logique qui réalise les opérations élémentaires – Unité de commande : lit les instructions en mémoire, les décode et les exécute • Accès à une mémoire – – – – Clavier Imprimante Disque(s) dur(s) E/S Processus Industriels Réseaux ....... Signaux pour accéder à la mémoire Cycle d’écriture Cycle de lecture Association de boitiers • Mémoire centrale – Stocke les programmes et les données – Enregistre les résultats intermédiaires et/ou finaux Ecran • Unités d’Echange avec l’extérieur : Périphériques d’Entrées/Sorties – Permet au processeur de communiquer avec l’extérieur en entrée ( clavier, souris, disque dur, réseau) ou sortie ( écran , disque dur, réseau, processus industriel …) • Problèmes liés à la mémoire • Bus : Permet aux constituants ci-dessus de communiquer entre eux 1 L1 SPI / UEc263 / 2012-2013 2 L1 SPI / UEc263 / 2012-2013 Mémoire centrale Mémoire centrale Introduction 1. Principe • Mémoire = dispositif capable d’enregistrer des informations, de les conserver puis de les restituer à la demande • On distingue : – mémoire centrale : • très rapide et peu encombrante mais couteuse • c’est la mémoire de travail de l’ordinateur – mémoire de masse ou mémoire auxiliaire • plus lente , assez encombrante mais moins couteuse • c’est la mémoire de sauvegarde des informations • disque dur, clé USB … • Les informations nécessaires à l’unité centrale (données et programmes) sont stockées dans la mémoire. • Chaque élément en mémoire est rangé dans une case repérée par un numéro appelé adresse. • Cette adresse est présentée par le processeur sur le bus d’adresses et les transferts entre mémoire et processeur transitent par le bus de données. Bus d’Adresses Processeur Mémoire Bus de Données L1 SPI / UEc263 / 2012-2013 3 L1 SPI / UEc263 / 2012-2013 4 1 Mémoire centrale Mémoire centrale 2. Caractérisation 2. Caractérisation • taille ou capacité de la mémoire • temps d’accès et temps de cycle • volatilité : type et temps de conservation de l’information • consommation • taille ou capacité de la mémoire – le nombre de cases est limitée par le nombre de lignes du bus d’adresses du processeur Exemples : bus adresses 16 bits => 216 cases = 64 Kmots mémoire bus adresses 32 bits => 232 cases = 4 Gmots mémoire – la taille de la case est définie par le nombre de lignes du bus de données Exemples : bus données 16 bits => mot sur 16 bits = 2 octets Bus Adresses k bits Processeur Bus de Données n bits Mémoire 2k mots de n bits Bus de Contrôle 5 L1 SPI / UEc263 / 2012-2013 6 L1 SPI / UEc263 / 2012-2013 Mémoire centrale Mémoire centrale 2. Caractérisation 2. Caractérisation • temps d’accès et temps de cycle • type et temps de conservation de l’information – le temps d’accès est l’intervalle de temps entre le moment où le processeur accède à la mémoire (demande de lecture) et celui où l’information est disponible ( accusé de réception). Ce temps est lié à la technologie de réalisation de la mémoire – le temps de cycle est le temps minimum entre 2 opérations successives – mémoire vive ou volatile ( RAM : Random Access Memory) • l’information est perdue si l’alimentation est coupée. • 2 types : statiques (SRAM) ou dynamiques.(DRAM) • RAM statiques : mémorisation d’un bit = une bascule. ~ 4 transistors – intérêt : stabilité de l’information – pbs : consommation, cout, intégration • RAM dynamiques : mémorisation d’un bit = charge d’un condensateur ( capacité parasite grille / source d’un transistor MOS) . – temps de cycle > temps d’accès – courants de fuite déchargent la capacité => rafraichissement périodique nécessaire rafraichie( lecture et réécriture du bit) – pbs : instabilité de l’information – intérêt : consommation, cout, intégration L1 SPI / UEc263 / 2012-2013 7 L1 SPI / UEc263 / 2012-2013 8 2 Mémoire centrale Mémoire centrale 2. Caractérisation 3. Accès – mémoire morte ( ROM : Read Only Memory ) • On stocke les données figées et les microprogrammes • On distingue – – – – – • signaux pour accéder à une case mémoire : – A0-An : les lignes d’adresses – D0-Dp : les lignes de données – /CS : signal de sélection du boitier physique (valide les décodeurs d’adresses du boitier) – R/W : le signal de lecture/écriture – /OE : le signal de validation de sortie des données ( sinon sorties en haute impédance) les ROM (programmées à la fabrication), PROM ( Programmable 1 seule fois) , EPROM (Erasable PROM par UV) , EEPROM ( EPROM effaçable électriquement), les Flash EPROM ( effaçable sur place). • consommation : liée au type de mémoire utilisé 9 L1 SPI / UEc263 / 2012-2013 D0-Dp /CS R/W /OE Validation boitier Sélection lecture / écriture Validation de sortie données 10 3. Accès • Cycle d’écriture en mémoire : • Cycle de lecture en mémoire : L’UC dépose l’adresse sur le bus d’adresses L’UC dépose l’adresse sur le bus d’adresses Bus Adresses Bus Adresses /CS Décodeur interne de la mémoire actif Décodeur interne de la mémoire actif R/W Ecriture /OE /OE Bus Données Buffers de sortie en basse impédance Bus Données L’UC présente les données sur le bus L1 SPI / UEc263 / 2012-2013 A0-An Mémoire centrale 3. Accès R/W Données Mémoire L1 SPI / UEc263 / 2012-2013 Mémoire centrale /CS Adresses La mémoire dépose les données sur le bus 11 L1 SPI / UEc263 / 2012-2013 12 3 Mémoire centrale Mémoire centrale 3. Accès : association de boitiers 3. Accès : association de boitiers • capacité mémoire d’un système informatique est très souvent nettement supérieure à la capacité d’un seul boitier mémoire. • Augmentation de la taille des cases mémoires : Ex : réaliser une mémoire de 1kmots de 16 bits à partir de 2 boitiers de 1ko => scinder le bus de données en 2 parties : les poids faibles sur un boitier et les poids forts sur un autre boitier. Ces 2 boitiers seront sélectionnés simultanément. A0-A9 1024 x 8 10 10 D0 D7 D0-D7 /CS 16 1024 x 8 10 D0-D15 8 /CS D0 8 D7 D8-D15 /CS 13 L1 SPI / UEc263 / 2012-2013 • Augmentation du nombre de cases mémoires : Ex : on veut réaliser une mémoire de 3k octets à partir de boitiers de 1ko => rajouter un décodeur d’adresse qui, en fonction de l’adresse présentée sur le bus d’adresses sélectionnera le boitier dans lequel se trouvera la case recherchée. Les différents boitiers ne devront absolument pas être sélectionnés simultanément. L1 SPI / UEc263 / 2012-2013 A0-A9 1024 x 8 10 10 D0 D7 D0-D7 8 D0-D7 8 /CS /CS1 1024 x 8 décodeur A10 A11 /CS D0 8 D7 D0-D7 /CS2 1024 x 8 /CS D0 8 D7 D0-D7 /CS3 14 Mémoire centrale 4. Problèmes liés à la mémoire • Toujours + gros, toujours + vite => idéal : mémoire de taille illimitée avec temps d’accès compatible avec la vitesse du processeur ( pas d’attente). – problèmes de temps d’accès => hiérarchie de la mémoire, mémoire cache – problèmes de capacité mémoire et de coût => mémoire virtuelle – problème d’organisation lié aux problèmes précédents => pagination / segmentation Unité Centrale On constate qu’un programme passe 80% de son temps à exécuter 20% des instructions. => hiérarchie de la mémoire : Taille et Temps d’accès Mémoire Cache Mémoire Principale Mémoire Secondaire L1 SPI / UEc263 / 2012-2013 15 4