21/12/2012 1. Histoire de l’électronique et de l’informatique Les systèmes à microprocesseur Quelques dates clés Prof :Zakaria INFOMATHS La réplique du premier transistor «Tout ce qui peut être inventé a été inventé.» Charles H. Duell, Délégué auxProf Zakaria InfoMaths brevets Américains, 1899 Le processeur, ou CPU (de l'anglais Central Processing Unit, « Unité centrale de traitement »), est le composant de l'ordinateur qui exécute les programmes informatiques. mémoire notamment, c'est l'un des Avec la composants qui existent depuis les premiers ordinateurs et qui sont présents dans tous les ordinateurs. Fonctionnellement, le processeur est la partie d’un ordinateur qui exécute les instructions et traite les données des programmes Un microprocesseur est un processeur dont les composants ont été suffisamment miniaturisés pour être regroupés dans un unique circuit intégré.. Prof Zakaria InfoMaths 2 1. Histoire de l’électronique 1904 ‐ la diode par John FLEMING : Premier tube à vide. 1907 ‐ la triode par L. DE FOREST : Mise au point à partir de la diode de J. FLEMMING, sur laquelle il rajoute une feuille métallique, "l'audion" qui s'appellera ensuite "triode" est un amplificateur d'intensité électrique. La première "lampe" réellement utilisable a été mise au point en France par H. ABRAHAM 1919 ‐ Basculeur (flip‐flop) de W. H. ECCLES et F. W. JORDAN C'est un circuit électronique bistable, composé de deux triodes. Il faudra encore une quinzaine d'années avant que l'on s'aperçoive que ce circuit pouvait servir de base à l'utilisation électronique de l'algèbre de BOOLE. 3 Prof Zakaria InfoMaths 4 1 21/12/2012 1. Histoire de l’électronique 1. Histoire de l’électronique 1940 ‐ Circuit Imprimé Les composants devenant de plus en plus petits, on les fixe sur des petites plaquettes isolantes sur lesquelles ces composants sont reliés électriquement par des pistes métalliques très fines. 1959 ‐ Transistor à effet de champ Plus proche de la triode que ne l'est le transistor bipolaire, celui‐ci est composé d'une électrode appelée grille qui module la conductance entre une zone dite source et une autre dite drain. 1959 ‐ Circuit intégré par Jack KILBY Le principe consiste à fabriquer dans un même bloc de semi‐ conducteur (une puce ) plusieurs composants (résistances, condensateurs, transistors). Cette idée sera reprise quelques mois plus tard par Robert NOYCE qui intégrant la technologie planar mettra au point des procédés toujours utilisés aujourd'hui. 1947 ‐ Le transistor bipolaire à jonction Le commencement de l’électronique « moderne » 1954 ‐ Transistor au silicium Beaucoup moins cher, plus facile à produire et à utiliser (mais hélas ayant une vitesse de conduction moins élevée) que le germanium, le silicium va devenir le symbole d'une nouvelle ère. Prof Zakaria InfoMaths 1960‐ Diodes Électroluminescentes Fabriquées à l'aide de semi‐ conducteurs (sous forme d'alliage binaire de Phosphure de Gallium et d' Arséniure de Gallium), ces diodes ont la propriété d'émettre de la lumière dans le spectre infrarouge ou visible. Leurs principales qualités sont une très faible consommation, une grande rapidité et une durée de vie quasi‐illimitée. 5 Prof Zakaria InfoMaths 6 1. Histoire de l’électronique 1970 ‐ Technologie M.O.S (Metal Oxyde Semiconductor) Cette technologie permet de fabriquer des transistors plus petits et plus rapides. Une course à la densité, à la vitesse et à la consommation commence... On parle alors de SSI (Small Scale Integration) : 30 à 80 transistors, MSI (Medium Scale Integration) , LSI (Large Scale Integration) , VLSI (Very Large Scale Integration) ... 2. Les microprocesseurs Historique 1971 ‐ Le premier microprocesseur: le 4004 d'Intel Il comporte 2300 transistors et exécute 60 000 opérations par seconde à une fréquence de 108 Khz. Sa puissance était égale à celle de l'ENIAC 1974‐ Un français Roland Moreno dépose les brevets de la carte à puce, objet fait d’une lame de plastique standardisée sur laquelle est déposée une puce. Cette dernière dispose d’un microprocesseur lui permettant de faire des calculs, d'une mémoire permettant de les traiter et d’un port pour communiquer avec les ordinateurs. Dès 1981, la carte à puce est utilisée dans les cartes bancaires françaises, mais elle aura aussi des applications dans la téléphonie grâce aux cartes téléphoniques puis aux cartes SIM. Prof Zakaria InfoMaths Intel® 4004 microprocessor 7 «J'ai parcouru le pays de long en large et parlé avec les meilleurs personnes, et je peux vous assurer que l'informatique est une lubie qui ne durera pas plus d'un an.» Prof Zakaria InfoMaths 8 2 21/12/2012 2. Les µprocesseurs 2. Les µprocesseurs et µcontroleurs Parti de 2300 transistors intégrés dans une puce en 1971 cadencé à 108 kHz (<0.5 mips) (Intel 4004), les µproc actuels sont composé de 2 x 410 000 000 transistors cadencé à 3200 Mhz pour une puissance de calcul de 2 x 24 200 MiPS Prof Zakaria InfoMaths 9 Prof Zakaria InfoMaths 10 Cette miniaturisation a permis : ¾d'augmenter les vitesses de fonctionnement des processeurs, grâce à la réduction des distances entre les composants, entre autres ¾de réduire les coûts, grâce au remplacement de plusieurs circuits par un seul, entre autres ; plusieurs circuits par un seul, entre autres ¾d'augmenter la fiabilité : en supprimant les connexions entre les composants du processeur, on supprime l'un des principaux vecteurs de panne ; ¾de créer des ordinateurs bien plus petits : les micro‐ ordinateurs ; ¾de réduire la consommation énergétique Jusqu’au début des années 1970, les différents composants électroniques formant un processeur ne pouvaient pas tenir sur un seul circuit intégré. On devait donc les placer sur plusieurs circuits donc les placer sur plusieurs circuits intégrés. En 1971, la société américaine Intel réussit, pour la première fois, à placer tous les transistors qui constituent un processeur sur un seul circuit intégré donnant ainsi naissance au microprocesseur. Prof Zakaria InfoMaths La finesse de gravure permettant des motifs de plus en plus petits, on arrive a intégrer de plus en plus de transistor par unité de surface : L’intérêt principal est la réduction de l’encombrement de la carte électronique avec toujours plus de puissance de calcul à cout constant. 11 Prof Zakaria InfoMaths 12 3 21/12/2012 •Nombre de transistors : le nombre de transistors contenus dans le microprocesseur. •Finesse de gravure (nm) : le diamètre (en nanomètres) du plus petit fil reliant deux composantes du microprocesseur. En comparaison, l'épaisseur d'un cheveu humain est de 100 microns = 100 000 nm. •Fréquence de l’horloge : la fréquence du signal d'horloge d horloge interne qui cadence le microprocesseur. MHz = million(s) de cycles par seconde. GHz = milliard(s) de cycles par seconde. •Largeur des données : le premier nombre indique le nombre de bits sur lequel une opération est faite. Le second nombre indique le nombre de bits transférés à la fois entre la mémoire et le microprocesseur. •MIPS : le nombre de millions d’instructions effectuées par le microprocesseur en une seconde. Prof Zakaria InfoMaths 13 Prof Zakaria InfoMaths 14 3. La logique programmée contre la logique câblée ‘ Unité de commande Mémoire de donnée (RAM) Mémoire é i de d programme (ROM) microprocesseur Unité Arithmétique et Logique Horloge Coupleurs d’E/S Etc.. Structure simplifiée d’une carte µprogrammée «Je pense qu'il y a un marché mondial pour environ 5 ordinateurs.» Prof Zakaria InfoMaths 15 Thomas WATSON, président d'IBM, 1943. Prof Zakaria InfoMaths 16 4 21/12/2012 • En logique câblée, les informations sont En logique câblée traitées en parallèle par autant d’opérateurs logiques qu’il est nécessaires. => Complexité de traitement limitée. • En logique programmée, un opérateur unique En logique programmée capable de réaliser plusieurs opérations (OU, ET, +, ‐ , x, etc.) traite séquentiellement les informations en fonction des ordres élémentaires appelés des instructions. Prof Zakaria InfoMaths Utilisation de composants ayant une grande densité d’intégration ‐> Carte électronique de faible encombrement. 17 • Processus à base de µprocesseur = – Liste des instructions, rangée en mémoire – Élément capable d’effectuer ces instructions le processeur – Moyens de recevoir/émettre des données les interfaces ou périphériques – Des liaisons électriques entre ces organes les bus Prof Zakaria InfoMaths – Une horloge (cadence l’exécution) • AVANTAGES DE LA LOGIQUE PROGRAMMEE Les composants utilisés sont programmables : L’application peut être mise au point ou totalement modifiée. Prof Zakaria InfoMaths 18 • Architecture de base Mémoire de programme (ROM) Mémoire de donnée (RAM) Unité de commande microprocesseur Unité Arithmétique et Logique Horloge Coupleurs d’E/S Etc.. Périphériques 19 Prof Zakaria InfoMaths 20 5 21/12/2012 BUS • Un bus informatique est un système de communication entre les composants d'un ordinateur. Ce terme regroupe donc indifféremment les systèmes matériels indifféremment les systèmes matériels constituant le support de communication (câble, fibre optique, etc.), mais aussi le logiciel et le protocole associé Prof Zakaria InfoMaths • le front side bus relie le microprocesseur à la mémoire vive sur de nombreux ordinateurs, et le bus PCI relie soit le microprocesseur ou bien un autre composant appelé chipset d'un un autre composant appelé chipset d un ordinateur aux connecteurs d’extension du même nom, et à la carte qui y est insérée. 21 Prof Zakaria InfoMaths 22 • Le Décodage d’adresse Pour éviter les conflits de bus, on met en place un décodeur d’adresse qui valide LE CIRCUIT avec lequel le µP veut communiquer (un seul à la fois). Au préalable on défini un PLAN MEMOIRE de l’espace adressable par le µP. Prof Zakaria InfoMaths 23 Prof Zakaria InfoMaths 24 6 21/12/2012 Constitution d ’un µProcesseur (CPU) • Exemple de plan mémoire L'unité de gestion de bus Une unité d'instruction L'unité d'instruction L'unité d’exécution est constituée est constituée (ou unité de commande, des éléments suivants : (ou unité d'entrées‐sorties), en anglais control unit) gère les flux d'informations Elle lit les données arrivant, 1 ‐ 2.Compteur Ordinal 3. Registre d’instruction 1. Unité Arithmétique et Logique 2. Unité a Virgule Flotante 3. Le Registre d’état 4. Le Registre Accumulateur entrant et sortant, Le séquenceur (ou bloc logique (ou compteur les décode puis les envoie à (notée UAL ou en anglais ALU) de commande) chargé de (notée FPU, pour Il contient des informations sur (W chez microchip, A et B chez en interface avec la mémoire vive De programme PC) : contient l’instruction à exécuter l'unité d'exécution. l’opération exécutée : L’ALU du système ou des Floating Synchroniser l'exécution des Motorola) Il contient l'adresse assure les fonctions basiques Point Unit) :de de calcul arithmétique et les (C’est Exemple : Résultat null, Retenue Elle accomplit les calculs autres périphériques; instructions au rythme de horloge. C’est un registre privilégié associé à La prochaine instruction à exécuter ; elle qui assure la gestion de etc… opérations logiques l’ensemble au rythme complexes non entiers que ne peut Il est ainsi chargé de l'envoi des C’est un compteur de m bits (m=16 L’UAL. Toutes les données traitées de l’horloge) (ET, OU, Ou exclusif, etc.) ; réaliser l'unité arithmétique et pour un pic) qui est incrémenté signaux de commande ; par le µP passent par lui. logique. automatiquement à chaque nouvelle instruction. $0003 $0000 Périphérique 1 Espace Libre RAM ROM Espace adressable du µP (65536@) $2000 Espace Libre $4FFF Prof Zakaria InfoMaths 25 4. Les langages de programmation 26 • Un µP ne sait exécuter que des opérations arithmétiques et logiques élémentaires définies par son jeux d’instruction. • Le rôle du programmeur est donc d’analyser la tâche à accomplir pour la décomposer en une suite d’instruction à exécuter dans un ordre ordonné. . ordonné Cet ensemble d’instructions constitue le Cet ensemble d’instructions constitue le programme. Exemple de langage évolué «L'époque des PC est terminée..» Lou Gerstner, Directeur d'IBM, 1998. Prof Zakaria InfoMaths Prof Zakaria InfoMaths 27 Prof Zakaria InfoMaths 28 7 21/12/2012 • Il existe plusieurs niveau de langage. Niveau 1 : Le langage machine : Langage de plus bas niveau. C’est le seul langage que comprend la machine car toutes les instructions et données sont codées en binaire. C’est le rôle des compilateurs de générer ce code. C’est ce code là qui est transférer dans la machine. Niveau 2 : Langage assembleur : Les instructions ne sont pas représentés par des nombres mais par des mnémoniques. Un mnémonique est une abréviation du langage parlé afin de décrire une exécution exécutable par le µP (ex : movlw 7 veut dire mettre la valeur litéralle « 7 » dans le registre W) Ce langage est propre à chaque µProcesseur. Niveau 3 : Langage évolué : Afin de facilité la programmation on a mis au point des langages de haut niveau proche de celui de l’homme : FORTRAN, PASCAL, C, BASIC, COBOL dont la principale caractéristique est d’être indépendant du microprocesseur utilisé. Prof Zakaria InfoMaths 29 8