Architecture des ordinateurs module I303 B. Miramond bmiramon@dept-info.u-cergy.fr www-etis.ensea.fr/members/bmiramond/cours/enseignement.html
3 niveaux de travail Comprendre plus loin Un métier Pour savoir faire Un diplôme Pour comprendre Pour la note Vous êtes ici 2
Objectif du module Théoriquement Comprendre les mécanismes matériels essentiels de l informatique. Comprendre l organisation de l ordinateur autour de l élément central, le processeur. Pour cela, étudier les différentes couches qui structurent la machine et la philosophie de son utilisation. En bref, du circuit numérique à l architecture processeur Pratiquement 3 Réaliser un simulateur de processeur 4 bits
Programme du module 4
Architecture des ordinateurs Introduction & Historique 3h Cours 4h TDs Représentation des nombres Couche physique, circuits logiq. Circuits séquentiels Le chemin de donnée CC Couche micro-architecture Cycle d exécution Conclusion sur l exécution 5
Parcours architecture Architectures multimédia M2 Architecture avancée M1-S2 Informatique embarquée M1-S1 La programmation en assembleur L exécution des programmes L3 L2 6
Règles du jeu 8 séances de cours 8 séances de TDs 1 Note de Contrôle continu + 1 Projet 1 examen Note finales N = (CC + 2P)/3 7
Evaluation du cours Première année du cursus LMD Evaluation des séances d une semaine à l autre Quatre critères avec des notes de 1 à 3 Organisation Rapidité Difficulté Intérêt Quelle façon de le mettre en place? 8
Note Cette semaine CM également le Vendredi! 9
Pourquoi l architecture? Support de l informatique Comprendre le mécanisme d exécution des programmes Programmes = Ordres (injonctions) = langage Qu est ce qu un langage du point de vue matériel? Couple (langage, machine) La machine traduit le langage du programme, un langage = une machine Ordinateur = machine multi-couches 10
Couche des langages d application Niveau 5 Traduction (compilateur) Couche du langage d assemblage Niveau 4 Traduction (assembleur) Couche du système d exploitation Niveau 3 Interprétation partielle (OS) Niveau 2 Couche architecture du jeu d instruction (ISA) Interprétation (microprogramme) ou exécution directe (cablé) Niveau 1 Couche microarchitecture Matériel Niveau 0 Couche logique numérique 11
12
Chapitre 1 : L histoire de l ordinateur 13
Définition : L ordinateur Le terme 'ordinateur' est d origine biblique «celui qui met en ordre» (divin) ordonnateur «entrer dans les ordres», «ordination» Il a été proposé par le professeur de philologie Jacques Perret dans une lettre datée du 16 avril 1955 en réponse à une demande d IBM France 14
I. Génération zéro: les calculateurs mécaniques (1642-1945) 15
1. Le premier calculateur a) Blaise Pascal (1623-1662) 1642 Première calculatrice mécanique (à 19 ans) Addition, soustraction en base 10 b) Leibnitz (1646-1716) 1670 Ajout de l opération de multiplication, et division 16
La pascaline 17
c) Charles Babbage (1792-1871) «Machine à différence» : un seul algorithme (méthode des différences finies) pour les tables numériques pour la navigation en mer Résultats gravés sur un plateau de cuivre Machine analytique (1840) Lecture sur des cartes perforées Différents algorithmes exécutables!!! 4 parties Le magasin(la mémoire) = 1000 mots de 50 chiffres = 1,25Mo Le moulin (l unité de calcul) L entrée (lecteur de cartes perforées) La sortie (perforation ou impression) 1843 Premier programme informatique Ada Lovelace (langage d assemblage) 18
Charles Babbage Première machine analytique 19
Ada Lovelace (Byron) `Is thy face like thy mother's, my fair child! Ada! sole daughter of my house and of my heart? When last I saw thy young blue eyes they smiled' And then we parted,-not as now we part, but with a hope.' From Childe Harold's Pilgrimage, Byron, (1816), Canto III. 20
II. La première génération les tubes à vides (1945-1955) 21
Innovation 1904 John Flemming invente le tube à vide : Interrupteur électronique (pannes fréquentes, encombrant) Alan Turing 1943 Premier calculateur numérique Resté sous silence pendant 30ans 22
1. Machine de Harvard «the beginning of the era of the modern computer» Ordinateur à relais Addition 1944 Howard Aiken Multiplicatio Mark 1 à Harvard n Entièrement automatique Division 16m x 2,5m 4500 Kg Démarré par un moteur 4 chevaux Logarithme 72 mots de 23 chiffres trigo Temps de cycle : 6 secondes Soit 0.16 Hz 1s 6s 15,3s 1min 1min 23
Mark I 24
2. ENIAC Mauchly et Eckert Projet de l US Army Premier ordinateur électronique Capable d être reprogrammée par branchements Vendue à 500 000$ à 1 unité 1 cycle = 200ms soit 5 cycles/sec Une multiplication de 2 opérandes à 10 chiffres prenait 14 cycles, soit 2800 us 25
ENIAC (1946) 30m de long 2.5m de haut 18 000 tubes à vide 1500 relais 30 Tonnes 140 KW 20 registres de 10 chiffres décimaux 6000 commutateurs pour la programmation Participant : Von Neumann
3. La machine de Von Neumann A) Von Neumann (1903,1957) Il se greffe au projet ENIAC après 1946 Idées On peut représenter le programme sous une forme numérique et le ranger en mémoire comme les données (plus de programmation des commutateurs) Introduction de l arithmétique binaire! Ancêtre à la base des architectures actuelles Résultat : l IAS (1952) 27
b) Schéma de la machine de Von Neumann 5 parties La mémoire L UAL L unité de commande Les entrées Les sorties Mémoire (4096 mots de 40 bits) Unité arithmétique et logique Unité de commande Accumulateur Entrées Sorties 28
c) L apport de Von Neumann Le premier ordinateur à programme enregistré Le programme est traduit de manière numérique et écrit en mémoire. Pour cela, création d un jeu d instructions machine, et transformation des calculs en séries d instructions La machine devient plus flexible parce que programmable 29
d) Von Neumann s Bottleneck La séparation entre le CPU et la mémoire a amené à la notion de Von Neumann s Bottleneck (goulot d étranglement qu est la communication entre processeur et mémoire). Surely there must be a less primitive way of making big changes in the store than by pushing vast numbers of words back and forth through the von Neumann bottleneck. Not only is this tube a literal bottleneck for the data traffic of a problem, but, more importantly, it is an intellectual bottleneck that has kept us tied to wordat-a-time thinking instead of encouraging us to think in terms of the larger conceptual units of the task at hand. Thus programming is basically planning and detailing the enormous traffic of words through the von Neumann bottleneck, and much of that traffic concerns not significant data itself, but where to find it." 30 John Backus in his 1977 ACM Turing award lecture
e) Machine de Von Neumann Structure des mots mémoire mots de 40 bits : Soit 2 instructions de 20 bits Soit 1 entier signé de 40 bits Instructions composées de 2 champs 8 bits codent le type d instruction 12 bits pour spécifier (adresser) un des 4096 mots Code d instruction adressage Ex : PUSH ACC $1024 $0015 31
Von Neumann et sa machine 32
III. 2ème génération les transistors (1955-1965) 33
1) Innovations A) Innovations technologiques 1948 : Invention du transistor aux Bell Labs (Bardeen, Shockley) Interrupteur commandé électroniquement Beaucoup moins encombrant que le tube B) Concepts architecturaux Programmation en langage machine Microprogrammation Représentation des nombres en virgule flottante C) Logiciel Apparition des systèmes d exploitation 34 Programmation en assembleur et FORTRAN
d) Le début des grandes firmes IBM (7090, 7094, 7030 ) Bull (PDP-1, PDP-8 ) DEC (TX-0, TX-2 ) CDC (6600, 6700, Cray-1 ) 35
IBM 7094 (uniquement les consoles ) PDP-8 36
IV. 3ème génération les circuits intégrés (1965-1980) 37
1) Innovations A) 1961 Premiers circuits intégrés (R. Noyce) Innovations technologiques Moindre encombrement Moindre consommation Gain en performances Domination : IBM 38
B) Innovations architecturales Compatibilité des machines d une même gamme (IBM: System/360) Introduction du parallélisme (multiprogrammation) Systèmes à multi-processeurs C) Logiciels Langages de programmation Basic, Pascal, C, D) Exemples d architectures IBM 360, CDC 6000, PDP 11, 39
1) L offre d IBM: System/360 Caractéristiqu es des System/3 Performance relative Temps de cycle (ns) Mémoire max. (Ko) 30 40 50 60 1 1 KHz 10 2 KHz 21 4 KHz 1000 3,5 1,6 KHz 625 500 250 64 256 256 512 40
IBM 360 41 PDP-11
2) Naissance d Intel 1968 R. Noyce, G. Moore et A. Rock fondent Intel Corporation 1970 première UC composée de 2300 transistors (LSI) : le 4004 processeur 4bits 1973 le 8008 processeur 8bits 1978 le 8086 processeurs 16 bits 42
1971 : Premier microprocesseur Intel 4004 Microprocesseur 4 bits 108 KHz 60000 Instructions par seconde 2300 transistors 43
V. 4ème génération Les VLSI (1980, maintenant) 44
1. Innovations Densité d intégration augmente : VLSI Dizaine de milliers -> millions de transistors sur une puce Passage du centre de calcul à l ordinateur personnel Innovations architecturales réseaux d ordinateurs Concepts de parallélisme développés Logiciels 45
MSI (100 100K) LSI (10-100) VLSI 2. Evolution des Circuits intégrés Matériaux de base Silicium Motif de base transistor Gravés sur des galettes de silicium (wafer) 46
3. Les nouveautés 1977 Apple puis Apple II (Steve Jobs) Plusieurs millions d exemplaires 1981 l IBM PC (personnal computer) Intel 8088 MS-DOS (microsoft) Plans diffusés gratuitement => clonage 1980 Architecture RISC dominante 1990 UC Superscalaires (cours de M1) 47
IBM PC Apple II 48
4. Evolution chez Intel 8086 (1978) 16bits, 1Mo, 80286 (1982) 16 bits, mémoire étentue 80386 (1985) 32 bits 80486 (1989) 32 bits, cache de 8K Pentium (1993) Double pipeline Pentium pro (1995) Cache mémoire à 2 niveaux 8Ko + 256Ko Pentium II + Celeron + Xeon MMX Pentium III Pentium IV (1997) Compatibilité (1999) ascendante 49 (2000)
Evolution des processeurs Intel: densité, fréquence d horloge 8000 7000 6000 5000 Année MHz Transistors 4000 3000 2000 1000 80 48 6 Pe nt iu m Pe nt iu m II 80 38 6 80 86 80 80 80 28 6 80 08 40 04 0 50
Evolution des processeurs Intel: mémoire 10000000 1000000 100000 10000 1000 mémoire Ko 100 10 II Pe nt iu m iu m 6 Pe nt 48 80 6 38 80 6 28 80 86 80 80 80 0,1 80 08 1 51
Intérieur du Pentium IV (Intel) année 2000 125 millions de transistors 2-4 GHz 52
VI. Résumé 53
Mécanisme de l arithmétique 1. L héritage Automates Falcon Pascal Leibnitz Jacquard Logique mathématique Technologie Leibnitz Mécanique Babbage Boole Turing ENIAC Electromécanique Electronique Von Neumann Wilkes Industrie Informatique 54
2. Evolution historique 1980 s Suppression de la microprogrammation => cablé 1970 s «Ajouter du matériel par logiciel» : explosion des jeux d instructions 1960 s 5 Niveaux : OS 1957 s 4 Niveaux : J. Bachus premier compilateur FORTRAN 1951 3 Niveaux : M. Wilkes, niveau microprogrammation 1940 2 Niveaux : ISA + physique 55
Couche des langages d application Niveau 5 Traduction (compilateur) Couche du langage d assemblage Niveau 4 Traduction (assembleur) Couche du système d exploitation Niveau 3 Interprétation partielle (OS) Niveau 2 Couche architecture du jeu d instruction (ISA) Interprétation (microprogramme) ou exécution directe (cablé) Niveau 1 Couche microarchitecture Matériel Niveau 0 Couche logique numérique 56
VII. L ordinateur actuel 57
Type 1. Spectre des ordinateurs actuels Ordinateur jetable Ordinateur enfoui Ordinateur de jeux Ordinateur personnel Serveur Station de travail Mainframe superordinateur Prix (euros 1) 10 100 1K 10K 100K 1M Exemple d application Carte de vœux téléphone, voitures Jeux vidéo Ordinateur portable Serveur de réseau Mini superordinateur Traitement par lot : banque 58 10M Prévision météo
2. Quelques marques de processeurs Intel, AMD, Via Ordinateur personnel Sun Stations de travail (ultrasparc) Systèmes enfouis (microjava 701) Nvidia Carte graphique Transmeta, altera, Xilinx, ARM, MIPS Systèmes enfouis (crusoe, nios, virtex, arm9, mipsrx000) 59
3. Leurs propriétés courantes 3 composants Processeur Mémoires Entrées/sorties Organisation multi-niveaux Architecture de Von Neumann (processeur) Commande, chemin de données, mémoire, entrées/sorties Architecture de Harvard (Mark1) Mémoire et mécanismes d accès séparées entre données et instructions 60
Le bus central UC Mémoire Console E/S à ruban Autres E/S Architecture du PDP-8 (1965) structurée autour d un bus central : L omnibus Le bus et la mémoire peuvent disposer de signaux séparées entre et instructions (Harvard) 61 données
4. Architecture actuelle de l ordinateur UC / CPU Unité de Contrôle Disque (HDD) Unités d entrée/sortie Registres UAL Mémoire principale Bus interne Bus externe Données Adresses 62 Commandes
VIII. Prochaines générations? Facteurs d évolution Loi de Moore Première loi de Nathan 63
Evolution technologique 1965 Modélisation par la Loi de Moore (Gordon Moore dirigeant d Intel) La densité d intégration (le nombre de transistors sur une puce) double tous les 18 mois (60% l an) Prédiction empirique devenu incroyablement exacte et même un objectif à tenir Cercle vertueux 64
Evolution technologique Loi de Moore Le nombre de transistors à l intérieur d un circuit double tous les 18 mois 65
(suite) The Continuing Evolution of Intel Microprocessors CIS105 December 2002 1600 1,400 1400 Speed (MHZ) 1200 1000 800 550 600 400 200 0 400 400 1998 1999 333 200 200 233 1993 1995 1997 100 0.74 2 8 12 33 1971 1974 1979 1982 1985 1989 Year 1998 1999 2000 66
Première loi de Nathan Nathan Myhrvold «Le logiciel se comporte comme un gaz : son expansion est telle qu il remplit tout contenant» Le logiciel crée une pression d évolution sur les Processeurs Mémoires e/s 67
Can machine think? A. M. Turing 1950 68
Objectifs du cours d architecture du L2 au M2 69
Couche des langages d application Niveau 5 Traduction (compilateur) Couche du langage d assemblage Niveau 4 Traduction (assembleur) Couche du système d exploitation Niveau 3 Interprétation partielle (OS) Niveau 2 Couche architecture du jeu d instruction (ISA) Interprétation (microprogramme) ou exécution directe (cablé) Niveau 1 Couche microarchitecture Matériel Niveau 0 Couche logique numérique 70
Parcours architecture Architectures multimédia M2 Circuits reconfigurables Architecture avancée M1-S2 Les classes d architecture Informatique embarquée La programmation en assembleur L exécution des programmes Conception des SoC Les DSP M1-S1 L3 Architectures embarquée Couche OS - RTOS Couche ISA Couche assemblage Como Systèmes E/S L2 Couche physique Couche micro-architecture 71 Couche ISA
Architecture des ordinateurs Introduction & Historique 3h Cours 4h TDs Représentation des nombres Couche physique, circuits logiq. Circuits séquentiels Le chemin de donnée CC Couche micro-architecture Cycle d exécution Conclusion sur l exécution CC72
Quelques questions à se poser Pourquoi la logique binaire a-t-elle été choisie comme base de calcul des ordinateurs? Quelle différence y a-t-il entre interprétation et traduction? Comment réalise-t-on le doublement de la densité d intégration d un circuit? Quel est le lien entre l augmentation de la densité et l augmentation des fréquences? Comment mémorise-t-on de l électricité? Une ampoule est elle une mémoire? Un processeur est-il intelligent? 73
74
Plus 75
100 90 80 70 60 50 40 30 20 10 Taille de mots (bits) Temps de cycle (micros) Fréquence (KHz) taille (Kg) Nombre de mots (K) Coût (kdollars) Exemplaires vendus (k) année génération PD P8 PD P1 70 1 70 90 IB M on N V IB M eu m an n C A EN IA C NI V U A na ly tiq ue 0 76