Architecture des ordinateurs
Protopoly
Florent de Dinechin
avec des figures de
R. Bergasse, N. Bonifas, N. Brunie, P. Boutillier,
A. Derouet-Jourdan, J. Detrey, A. Friggeri, B. Grenet, F. Givors,
T. Jolivet, C. Keller, E. Lassalle, P.E. Meunier,
P. Robert, O. Schwander, T. Risset, P. Vannier
ENS DE LYON
2
Table des matières
1 Introduction 9
1.1 Historique du calcul mécanique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2 Objectifsducours...................................... 10
1.3 La conception d’ASR est hiérarchique . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4 Quelques ordres de grandeur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4.1 L’univers est notre terrain de jeu . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4.2 Latechnologieen2014............................... 12
1.4.3 Calcul contre stockage et déplacement de données . . . . . . . . . . . . . . . 14
1.4.4 Ya pas que les PC dans la vie . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
I L’information et comment on la traite 17
2 Coder l’information 19
2.1 Informationetmedium................................... 19
2.2 Informationanalogique .................................. 19
2.3 Informationnumérique................................... 20
2.4 Coderdesnombresentiers................................. 20
2.4.1 Dénition ...................................... 20
2.4.2 Changementdebase................................ 21
2.4.3 Complémentàdeux ................................ 21
2.5 Coderdutexte........................................ 21
2.6 Coder les images et les sons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.7 Codesdétecteursderreur ................................. 23
2.8 Codes correcteurs d’erreur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.9 Compression d’information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.10Coderletemps ....................................... 23
3 Transformer l’information : circuits combinatoires 25
3.1 Algèbrebooléenne ..................................... 25
3.1.1 Définitions et notations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.1.2 Expressionbooléenne ............................... 26
3.1.3 Dualité........................................ 26
3.1.4 Quelquespropriétés ................................ 26
3.1.5 Universalité..................................... 26
3.1.6 Fonctionsbooléennes ............................... 27
3.2 Circuits logiques et circuits combinatoires . . . . . . . . . . . . . . . . . . . . . . . 27
3.2.1 Signauxlogique................................... 27
3.2.2 Circuitslogiques .................................. 27
3.2.3 Portesdebase.................................... 27
3.2.4 Circuits combinatoires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.2.5 Circuits combinatoires bien formés . . . . . . . . . . . . . . . . . . . . . . . . 28
3
4TABLE DES MATIÈRES
3.2.6 Surface et délai d’un circuit combinatoire . . . . . . . . . . . . . . . . . . . . 29
3.3 Audelàdesportesdebase................................. 30
3.3.1 Àdeuxentrées ................................... 30
3.3.2 Àtroisentrées.................................... 30
3.3.3 Pour le calcul sur les entiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.3.4 Conclusion ..................................... 33
3.4 D’une fonction booléenne à un circuit combinatoire . . . . . . . . . . . . . . . . . . 33
3.4.1 Par les formes canoniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.4.2 Arbres de décision binaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.5 Application : construction des circuits arithmétiques de base . . . . . . . . . . . . . 35
3.5.1 Addition/soustraction binaire . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.5.2 Multiplication binaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.5.3 Divisionbinaire................................... 35
3.6 Conclusion.......................................... 35
3.7 Annexe technologique contingente : les circuits CMOS . . . . . . . . . . . . . . . . 35
3.7.1 Transistors et processus de fabrication . . . . . . . . . . . . . . . . . . . . . . 35
3.7.2 Portesdebase.................................... 36
3.7.3 Vitesse, surface et consommation . . . . . . . . . . . . . . . . . . . . . . . . . 36
4 Memoriser l’information 39
4.1 Vue abstraite des organes de mémorisation . . . . . . . . . . . . . . . . . . . . . . . 39
4.1.1 Le registre ou mémoire ponctuelle . . . . . . . . . . . . . . . . . . . . . . . . 39
4.1.2 Mémoiresadressables ............................... 39
4.1.3 Mémoires à accès séquentiel : piles et files . . . . . . . . . . . . . . . . . . . . 40
4.1.4 Mémoires adressables par le contenu . . . . . . . . . . . . . . . . . . . . . . 40
4.2 Construction des mémoires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.2.1 Le verrou (latch) et le registre (Flip-Flop) . . . . . . . . . . . . . . . . . . . . 41
4.2.2 Autres technologies de point mémoire . . . . . . . . . . . . . . . . . . . . . . 42
4.2.3 Mémoire adressable, première solution . . . . . . . . . . . . . . . . . . . . . 42
4.2.4 Mémoire adressable, seconde solution . . . . . . . . . . . . . . . . . . . . . . 43
4.2.5 Piles,les,etc.................................... 45
4.2.6 Disques(*)...................................... 45
4.3 Une loi fondamentale de conservation des emmerdements . . . . . . . . . . . . . . 45
5 Circuits séquentiels synchrones 47
5.1 Quelques exemples de circuits séquentiels . . . . . . . . . . . . . . . . . . . . . . . . 47
5.2 Restriction aux circuits séquentiels synchrones . . . . . . . . . . . . . . . . . . . . . 48
5.3 Correctionetperformance................................. 48
6 Automates 51
6.1 Unexemple ......................................... 51
6.2 Définition formelle d’un automate synchrone . . . . . . . . . . . . . . . . . . . . . . 52
6.2.1 États,transitions .................................. 52
6.2.2 Définition en extension des fonctions de transition et de sortie . . . . . . . . 53
6.2.3 Correction et complétude d’un automate synchrone . . . . . . . . . . . . . . 54
6.3 Synthèse d’un automate synchrone . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
6.3.1 L’approximation temporelle réalisée par l’automate synchrone . . . . . . . 55
6.3.2 Optimisation d’un automate synchrone . . . . . . . . . . . . . . . . . . . . . 55
6.4 Comprendre les circuits séquentiels comme des automates . . . . . . . . . . . . . . 56
6.5 Conclusion : l’ingéniérie des automates . . . . . . . . . . . . . . . . . . . . . . . . . 57
TABLE DES MATIÈRES 5
7 Transmettre 59
7.1 Medium ........................................... 59
7.2 Liaisonpointapoint .................................... 59
7.2.1 Sérieouparallèle.................................. 59
7.2.2 Protocoles ...................................... 59
7.3 Bustroisétats ........................................ 61
7.4 Réseauxengraphes(*)................................... 61
7.4.1 Les topologies et leurs métriques . . . . . . . . . . . . . . . . . . . . . . . . . 62
7.4.2 Routage ....................................... 63
7.4.3 Types de communication : point à point, diffusion, multicast . . . . . . . . . 65
7.5 Exemples de topologies de réseau (*) . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
7.5.1 LetéléphoneàPapa ................................ 65
7.5.2 Linternet ...................................... 65
7.5.3 FPGAs........................................ 65
7.5.4 Lebushypertransport............................... 65
7.5.5 Machinesparallèles................................. 65
II Machines universelles 67
8 Jeux d’instruction 69
8.1 Rappels............................................ 69
8.2 Vocabulaire.......................................... 70
8.3 Travauxpratiques...................................... 70
8.3.1 Le jeu d’instruction de votre PC . . . . . . . . . . . . . . . . . . . . . . . . . 70
8.3.2 Le jeu d’instruction de votre téléphone portable . . . . . . . . . . . . . . . . 71
8.4 Instruction set architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
8.5 QuedénitlISA ...................................... 72
8.5.1 Types de données natifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
8.5.2 Instructionsdecalcul................................ 73
8.5.3 Instructions d’accès mémoire . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
8.5.4 Instructions de contrôle de flot . . . . . . . . . . . . . . . . . . . . . . . . . . 75
8.5.5 Les interruptions et l’atomicité . . . . . . . . . . . . . . . . . . . . . . . . . . 76
8.5.6 Autresinstructions................................. 77
8.5.7 QuelquesISA.................................... 77
8.6 Codagedesinstructions .................................. 78
8.7 Adéquation ISA-architecture physique . . . . . . . . . . . . . . . . . . . . . . . . . . 78
8.8 Unpeudepoésie ...................................... 79
9 Architecture d’un processeur RISC 81
9.1 Un jeu d’instruction RISC facile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
9.2 Plandemasse ........................................ 82
9.3 Construction de l’automate de commande . . . . . . . . . . . . . . . . . . . . . . . . 83
9.4 Pipelinedexécution .................................... 84
9.5 Exploitation du parallélisme d’instruction : superscalaire . . . . . . . . . . . . . . . 87
9.5.1 Architecture superscalaire (*) . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
9.5.2 VLIW ou superscalaire (*) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
9.6 Deux jeux d’instructions récents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
9.6.1 IA64 ......................................... 90
9.6.2 KalrayK1 ...................................... 91
9.7 Exploitation du parallélisme de processus . . . . . . . . . . . . . . . . . . . . . . . . 91
9.7.1 Multifilature (multithreading) ........................... 91
9.7.2 Processeurs multicoeurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
1 / 131 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !