Architecture des Ordinateurs
Deuxi`eme partie
ecile Germain Daniel Etiemble
Licence d’Informatique - IUP Miage - FIIFO
Table des mati`eres
5 Microarchitecture du processeur 3
5.1 Les composants mat´eriels ´el´ementaires ............. 4
5.1.1 Combinatoires ...................... 5
5.1.2 Horloge .......................... 7
5.1.3 M´emorisation ....................... 7
5.1.4 Bus internes du processeur ............... 10
5.2 Chemin de donn´ees ........................ 11
5.2.1 L’architecture DE99 ................... 11
5.2.2 L’ex´ecution des instructions ............... 12
5.2.3 Une architecture 3 bus .................. 16
5.2.4 Performance ....................... 17
5.3 Contrˆole .............................. 17
5.3.1 Contrˆole cˆabl´e ...................... 19
5.3.2 Performance ....................... 21
5.3.3 Microprogrammation ................... 22
5.4 Conclusion ............................ 23
6 Microarchitecture pipelin´ee 25
6.1 Principe du pipeline ....................... 26
6.2 Le pipeline classique pour l’ex´ecution des instructions .... 27
6.2.1 aches ´el´ementaires ................... 27
6.2.2 Pipeline pour les instructions UAL ........... 28
6.2.3 Pipeline et acc`es m´emoire ................ 30
6.3 Les contraintes du pipeline ................... 31
6.3.1 Ressources mat´erielles .................. 31
6.3.2 Format d’instruction fixe et simple - Cache d’instruction 32
6.3.3 Architecture chargement-rangement .......... 33
6.4 CISC et RISC ........................... 33
1
2Tables des mati`eres
6.5 Les limitations du pipeline. ................... 35
6.5.1 Al´eas de donn´ees. ..................... 35
6.6 Al´eas de contrˆole ......................... 43
6.6.1 Les diff´erents types d’al´eas de contrˆole ......... 45
6.6.2 Traitement des al´eas de contrˆole ............ 46
6.7 Micro-architecture pipelin´ee ................... 48
6.8 Instructions flottantes ...................... 49
6.9 Architectures superscalaires ................... 52
6.9.1 D´ependances de ressources ............... 53
6.9.2 D´ependances de donn´ees ................. 54
6.9.3 Al´eas de contrˆole ..................... 56
6.10 Conclusion ............................ 59
7Hi´erarchie m´emoire : la m´emoire centrale 61
7.1 Introduction ............................ 61
7.1.1 Motivation ........................ 61
7.1.2 Le principe de localit´e .................. 62
7.1.3 Un exemple: le produit matrice-vecteur ........ 64
7.2 Fonctionnement du cache .................... 64
7.2.1 Succ`es et ´echec cache .................. 65
7.2.2 Traitement des ´echecs en lecture ............ 66
7.2.3 Les ´ecritures ....................... 67
7.2.4 En r´esum´e ......................... 68
7.3 Correspondance entre le cache et la m´emoire principale ... 69
7.3.1 Correspondance directe ................. 69
7.3.2 Correspondance associative ............... 71
7.3.3 Correspondance associative par ensemble ....... 72
7.3.4 Algorithmes de remplacement .............. 74
7.4 Performances ........................... 74
7.5 Performances : diminuer le taux d’´echec ............ 75
7.5.1 Origines des ´echecs .................... 75
7.5.2 Organisation du cache .................. 76
7.5.3 Optimisations logicielles ................. 78
7.6 Performance : le temps de rechargement ............ 80
7.6.1 Les circuits DRAM .................... 80
7.6.2 La liaison m´emoire principale - cache .......... 84
7.7 Conclusion ............................ 89
Table des mati`eres 3
8M´emoire virtuelle 91
8.1 Introduction ............................ 91
8.1.1 Organisation de principe ................. 92
8.2 M´ecanismes de traduction .................... 94
8.2.1 Table des pages ...................... 94
8.2.2 TLB ............................ 96
8.2.3 M´emoire virtuelle et caches ............... 98
8.3 M´ecanismes de protection .................... 99
8.3.1 Protection ......................... 101
8.3.2 Partage .......................... 102
8.4 Impl´ementations de la table des pages ............. 103
8.4.1 Organisation hi´erarchique ................ 103
8.4.2 Table des pages inverse ................. 106
8.5 Conclusion ............................ 107
9 Bus et Entr´ees-Sorties 109
9.1 Introduction ............................ 109
9.2 Les disques ............................ 110
9.2.1 Organisation ....................... 110
9.2.2 Acc`es aux disques .................... 111
9.3 Processeurs d’E/S ........................ 112
9.3.1 Un exemple tr`es simple ................. 112
9.3.2 Processeurs d’E/S .................... 113
9.4 Les bus .............................. 114
9.4.1 Fonctionnalit´es ...................... 114
9.4.2 Arbitrage ......................... 114
9.4.3 Transfert de donn´ees ................... 116
9.4.4 Bus asynchrone ...................... 117
9.4.5 Le bus PCI ........................ 119
9.4.6 Am´elioration des performances ............. 120
9.5 Traitement des Entr´ees/Sorties ................. 121
9.5.1 Typologie ......................... 121
9.5.2 M´ecanismes d’interruption ................ 122
9.6 Interruptions et exceptions ................... 123
9.6.1 Les situations exceptionnelles .............. 124
9.6.2 Gestion des situations exceptionnelles ......... 127
4Tables des mati`eres
1 / 135 100%