SI1-C02.T CPU.doc 9 N2 - SIO-03 Sources et références Ouvrages papier : Technologies des ordinateurs et des réseaux, PA Goupille ; Dunod Composition des ordinateurs, A Tannenbaum ; Dunod Revues informatiques : octobre à novembre 2008 PCAssemblage et Hardware, Compétences micro, PC Expert Sites web : Constructeurs http://www.intel.fr/content/www/fr/fr/processors/core/CoreTechnicalResources.html http://ark.intel.com/ http://www.amd.com/us/products/desktop/processors/pages/desktop-processors.aspx http://www.research.ibm.com/journal/rd/475/brooks.html Ecoles http://www.mines.inpl-nancy.fr/~tisseran/cours/architectures/ Journaux http://techreport.com/ http://www.xbitlabs.com/articles/cpu/display/core2duo-preview_6.html http://www.hexus.net/content/item.php?item=256&redirect=yes http://www.hardware.fr/html/cat/2/ http://www.hardware.fr/articles/863-1/intel-core-i7-3770k-i5-3570k-ivy-bridge-22nm-test.html http://www.presence-pc.com/actualite/AMD-Phenom-28343/ http://www.hardware.fr/articles/833-1/architecture-amd-bulldozer.html http://www.hardware.fr/news/12122/amd-detaille-roadmap-2012-2013.html Autres http://www.computerhistory.org/microprocessors/index.shtml http://www.commencamarche.net http://chip-architect.com/ http://arstechnica.com/hardware/news/2006/04/core.ars/ http://www.ginjfo.com/actualites/composants/processeurs/ivy-bridge-et-haswell-des-puces-core-aux-tdp-de-10watts-maximum-des-2013-20120912 Francois Kieffer 18/09/2015 page 12/12 SI1-C02.T CPU.doc 8 N2 - SIO-03 Synthèse des architectures modernes Marques Celeron = entrée de gamme ; Xeon = serveurs ; Atom : matéreil mobile sauf Core M pour ultrabooks Architectures multicœur Intel Année Nom Archi Sous architectures Nom Core nbCore/ Gravure Caches Bande Passante (Go/s) socket 6,4 LGA775 12,8 LGA775 25 LGA1366 thread 2006 Merom Core 1 65nm L4=4Mo 2007 Penryn Core2 1 45nm L2=6 12Mo 2008 Nehalem Bloomfield, Lynnfield, Clarsfield Core i, I7 2/1 45nm L3, 8Mo (4*2Mo) Gulftown, Clarckdale, Arrandale I7, i5, i3 2/2 32nm Atom 2009 2010/12 Westmere Sandy bridge 2013/2014 Haswell 2015/16 Skylake Ivy Bridge à Nc LGA2011, LGA1155 2-4-6-8/2 32->22nm 2-8/2 22->16nm L2=512Ko, L3=16Mo Nc LGA1155 ? 16->14nm Taille i7 : 13*18,9 mm ; Sources : PC Expert n°191 Novembre 2008 ; *www.wikipedia.fr Architectures AMD, AMD64 Core Année Nom , architecture Cœur Gravure Cache (Mo) Intérêts Socket (support) contrôleur DDR2, bus externe "Hyper transport". Code 2006 K8, Brisbane, Windsor, SledgeHammer 2 65 L1=64Ko/c, L2=512Ko/c, L3=2Mo 2007 K10, Barcelona (opteron) 2-4 65 L1=64Ko/c, L2=512Ko/c, L3=6Mo (2*3Mo) 4 32-40nm Phenom quad-core, triple-core, Athlon (anc. Dual-core) Sempron 2008 K10, Shanghaï F+, AM2+, AM3 Phenom / correctif B3 (TLB) Phenom xx50 Athlon, Sempron 2011 2012 Bobcat L1=32Ko, L2=512Ko FX Bulldozer, Trinity, Brazos, Hondo 4à8 28nm L3=8Mo AM2+, AM3 Vishera (Core Piledriver) 2013 FX, Kaveri, Kabini, Temash 2à4 contrôleur DDR3 Dual channel, bus externe I/O "Hyper transport" *4 canaux StreamRoller, Jaguar cores AM3+ Sources : www.presence-pc.com, www.chip-architect.com ; la visiblité des générations est moins bonnes chez AMD Francois Kieffer 18/09/2015 page 11/12 SI1-C02.T CPU.doc N2 - SIO-03 Path interconnect, AMD possède l'équivalent), 7 - L3 intégré, L4 parfois soudé sur la CM, la capacité des caches augmente régulièrement - Hyperthreading : chaque cœur est capable de traiter 2 instructions élémentaires (processus (linux)=thread (Intel/microsoft)) - Modes turbo : extinction plus ou moins profonde des cœurs non utilisés, Noter que certains journaux info font état d'un gain non significatif dans le mode turbo, voire des pertes de perf (PC Expert), - partage des unités de calcul entre le cœurs = trubo intelligent (=? Overclocking automatique) (AMD Cluster Multi-threading), - Bus interne entre les cœurs, - Intégration de contrôleurs graphiques sur le Die : 1 ou 2 lignes PCI-Xpress *16 Conclusion : critères de choix Francois Kieffer 18/09/2015 page 10/12 SI1-C02.T CPU.doc 5 N2 - SIO-03 Améliorations logiques Réordonnancement des instructions (ooo) Exemple de réordonnancement des types d'instruction. Soit le cœur de processeur suivant: Port 0 Port 1 Port 2 Port 3 ALU FPU SSE Store Les traitements (ALU), instructions (SSE) et calcule (FPU) qui peuvent de dérouler simultanément sont de même couleur : Original 6 Donnera ooo ALU1 ALU1 ALU2 FPU1 FPU1 SSE1 SSE1 ALU2 ALU3 SSE2 SSE2 FPU2 SSE3 ALU3 FPU2 SSE3 FPU3 FPU3 5 cycles 3 cycles Architecture multicœur, la multiplication des traitements parallèles 6.1.1 Historique Etapes importantes de la guerre Intel/AMD 2005 Intel Pentium D : 2 caches L2, partage via FSB, AMD Stagne avec le K6 2006 Les premiers multi cœur, RAM DDR1. Intel Core2 (monocore) puis Core2 duo, L2 partagée sans passer par le FSB AMD K8 est meilleur 2007 RAM DDR2 Intel core2 Quad, 2caches L2, pas de L3 (erreur du Pent.D) AMD K10 Dual Core, Phenom quadri cœur natif, L3 partagé par couple de cœur 2008++ Novembre : Intel contre-attaque : ajout d'unités d'échange supplémentaires : architectures Nehalem, Lynnfield ou ClarsField, Westmere (Gulftown, Clarckdale et Arrandale) puis Sandy Bridge (Ivy Bridge) Le FSB disparaît, le processeur intègre différents dispositifs de communication : - Francois Kieffer Contrôleur mémoire, DMA (le retour) avec mémoire DDR2 puis DDR3 multi canal (intel : Quick 18/09/2015 page 9/12 SI1-C02.T CPU.doc 4 N2 - SIO-03 Les améliorations matérielles réelles CISC, RISC et SSE : jeux d'instructions câblées CISC (angl. Complex instruction set computer) RISC (angl. Reduced instruction set computer) En 2008, il existe les jeux : - MMX (multimédia, 08/01/1997, 57 instr.), Versions Intel, AMD et Cyrix - 3DNow! (1997, 21 instr.), v1 puis 2 - SSE (1999, P3, 70 instr.) apparition d'instructions spécifiques pour FPU, - SSE2 (2000, P4), - SSE3 (2004/2005, 13 instr.), - SSE4 (27/09/06, 54 instr., sous versions 1, 2, a), disparition des instructions MMX. - SSE5 (10/2011, 170 instr.), différentes versions selon marque (AMD/Intel) Exemple d'instructions ADD X86 Addition Move X86 Déplacement d'une "donnée" d'un "registre" à un autre. ADDSS SSE Addition de nombres scalaires MONITOR SSE2 Contrôle et optimisation du Multi-threading ROUNDPS SSE4 Arrondi sur nombre en virgule flottante COMPD SSE5 Compare Vector Double-Precision Floating-Point Pipeline (à remplir) ICI, découpage exemple d'une instruction en plusieurs instructions plus petites : - instruction fetch, chargement de l'instruction dans le processeur (3 cycles pour l'exécution de la lecture de la mémoire), - instruction decode, décodage et conversion de l'instruction, - execute, éxecution, - memory access, lecture en mémoire, - write back, écriture des résultats en mémoire (trois cycles pour l'exécution de l'écriture). Rappel : on utilise 3 cycles pour l'exécution de l'échange en mémoire : N° Instr Cycles 1 Francois Kieffer 1 R1=mem[R0] 2 R3=R1+R2 3 R4=R4+1 4 R6=R5-6 2 3 18/09/2015 4 5 6 7 8 9 10 11 12 page 8/12 SI1-C02.T CPU.doc N2 - SIO-03 A l'appel d'une interruption, tous les registres sont automatiquement sauvegardés dans la pile courante puis restaurés en fin d'interruption. Les 16 IRQ involontaires sont classiquement les suivantes : Fixe et imposé 0 Horloge 1 Clavier 2 Ecran EGA, VGA, contôleur d'interruptions, scanner, carte son, … 3 Port série com2, 4, modem-fax, CD-ROM 4 Port série com1, 3, modem-fax, souris-bus, cd-rom 5 Port // lpt2, souris-bus, carte réseau, cd-rom, carte son, scanner à main 6 Contrôleur disquette 7 Port lpt1 8 Horloge temps réel Carte réseau, son 9 IRQ2 redirigée, cd, carte son, graphique 10 Carte réseau, cd, scanner à main, carte son, contrôleur scsi 11 Carte réseau, cd, scanner à main, carte son, contrôleur scsi 12 Carte réseau, cd, port souris 13 Coprocesseur 14 1er contrôleur HD 15 Francois Kieffer Assignation habituelle Carte réseau, cd, 2ème contrôleur HD 18/09/2015 page 7/12 SI1-C02.T CPU.doc N2 - SIO-03 Lecture de la donnée pointée et copie vers le bus de donnée Chargement du bus de données dans le registre d'instruction Incrément du compteur ordinal, le bus de données est en attente. 3.4.2 Phase 2 : decode : décodage de l'instruction L'instruction est découpée en plusieurs morceaux et copiés vers différents registres (CS, DI, SI et DS). L'opCode (code opération, dans CS) est analysé par le séquenceur, le contenu des autres morceaux sont alors transmis (ou ignorés) aux registres pour être utilisés lors de l'exécution de la microcommande électronique correspondante. 3.4.3 Phase 3 : Execute : Exécution de la commande Selon l'instruction, le séquenceur lance différentes microcommandes. Par exemple – incomplet – : incrémenter une cellule mémoire Charger l'adresse 1 de l'instruction sur le bus de données, Lire la donnée de la mémoire et la copier sur le bus de données, Charger la donnée du bus de données dans le registre AX, Écrire 1 dans le registre BX, Ajouter BX à AX, Envoyer AX sur le bus de données. 3.4.4 Phase 4 : WriteBack : écriture du résultat en mémoire : Selon l'instruction, le contenu des registre est transféré sur le bus d'adresse ou de données puis dans la mémoire vive (le cache L1) 3.5 Interruptions (angl. : Interruption ReQuest : IRQ) Le travail des processeurs peut être interrompu soit involontairement, par des événements extérieurs au programme en cours de traitement, soit volontairement, afin de lancer des routines externes mais utiles au programme. Les événements involontaires peuvent être : Alertes physiques : coupure de courant, alarmes, signaux en provenance de périphériques (/ex. touche de clavier enfoncée, imprimante au bout du rouleau, disque crashé, etc. …) Signaux logiciels (processus terminé ou touche pressée, erreur du système de fichier, … Ils proviennent soit : • du matériel (clavier, contrôleur du disque), le programme de traitement est câblé, • du BIOS (accès au disque), le programme de traitement est écrit dans le BIOS, • du SE (accès au système de fichier), le traitement est logiciel. Il y 16 interruptions involontaires, hiérarchisées dont certaines peuvent être refusées. Celles qui ne peuvent pas être ignorées arrivent sur une ligne d'interruptions non masquables. Dans les processeurs modernes, il y a plusieurs bus d'interruptions et un contrôleur dédié. Les interruptions volontaires sont 256 et servent à déclencher des traitements externes au programme en faisant appel aux routines du système d'exploitation, du bios ou du matériel. Exemple : Int 3h = arrêt du programme Int 21h = affichage d'un caractère Pour savoir où est stockée la routine de service d'une interruption (ISR : le programme à exécuter lors de l'interruption ou angl. Interrupt Service Routine), il faut utiliser une table qui est placée dans le segment 0000: de la RAM (au tout début de la RAM, chargée par le BIOS) Exemple : int 3h renvoie à l'adresse 0000:000C (3*4= 1210=C16) et int 21h à l'adresse 0000:0084 (21h*4=84h). Francois Kieffer 18/09/2015 page 6/12 SI1-C02.T CPU.doc N2 - SIO-03 Les registres d'offset (décalage) IP (pointeur d'instruction local), SI (index de source), DI (index de destination). Les index servent (conventionnellement) aux adressages indirects. Les registres (AX, BX, CX, DX) : registres généraux. AX=Accumulateur, BX=Base, CX=compteur, DX=données : données de travail. Le registre d'état (FLAGS) qui contient des indicateurs d'état (oveflow, divide by zero, …) et d'autres encore. Registre Flag (indicateurs) ces indicateurs sont modifiées selon le résultat d'opérations ou par les interruptions. Les registres de pile : SS (Stack Segment, espace alloué à la pile), SP (pointeur de pile, sommet de la pile), BP (pointeur de base). La pile est une partie de la mémoire destinée à stocker temporairement le contenu des registres lorsqu'ils doivent servir à autre chose, avant d'être restaurés en dépilant les données de la pile. Exemple de drapeaux (Flags) : CF (Carry Flag) est l’indicateur de retenue. Il est positionné à 1 si et seulement si l’opération précédemment effectuée a produit une retenue. De nombreuses fonctions du DOS l’utilisent comme indicateur d’erreur : CF passe alors à 1 en cas de problème. PF (Parity Flag) renseigne sur la parité du résultat. Il vaut 1 ssi ce dernier est pair. AF (Auxiliary Carry Flag) est peu utilisé. ZF (Zero Flag) passe à 1 ssi le résultat d’une opération est égal à zéro. SF (Sign Flag) passe à 1 ssi le résultat d’une opération sur des nombres signés est négatif. TF (Trap Flag) est utilisé pour le «débuggage» d’un programme. S’il vaut 1, une routine spéciale du débuggeur est appelée après l’exécution de chaque instruction par le processeur. IF (Interrupt Flag) sert à empêcher les appels d’interruptions lorsqu’il est positionné à 1. Cependant, toutes les interruptions ne sont pas «masquables». DF (Direction Flag) est utilisé pour les opérations sur les chaînes de caractères. S’il vaut 1, celles-ci seront parcourues dans le sens des adresses décroissantes, sinon les adresses seront croissantes. OF (Overflow Flag) indique qu’un débordement s’est produit, c’est-à-dire que la capacité de stockage a été dépassée. Il est utile en arithmétique signée. Avec des nombres non signés, il faut utiliser ZF et SF. 3.3 Horloge L'horloge est basée sur la fréquence d'oscillation d'un cristal de quartz (comme dans une montre). Les impulsions rythment le fonctionnement de l'ordinateur et définissent la fréquence d'oscillation du processeur, du bus de la carte mère, etc. … A chaque top horloge, le processeur effectue une opération interne (addition, mise d'une adresse sur un bus, lecture d'une cellule mémoire, etc. …). Ceci ne correspond pas au nombre de calculs par seconde !!! 3.4 Cycle d'exécution (très simplifié) d'une instruction Exécuter une instruction de programme se fait en plusieurs phases de travail du CPU. Ces phases sont toutes rythmées par les cycles d'horloge. 3.4.1 Phase 1 : Fetch, recheche de l'instruction en mémoire Les microcommandes effectuées durant le fetch sont les suivantes : Copie du compteur ordinal -> bus d'adresses Pointage sur le registre mémoire indiqué par le bus d'adresse Francois Kieffer 18/09/2015 page 5/12 SI1-C02.T CPU.doc 3 N2 - SIO-03 Composition du CPU (rapido) Comment fonctionne un processeur ? 3.1 - l'unité de contrôle, - les registres - l'horloge - le cycle d'exécution - les interruptions L'Unité de contrôle L'unité de contrôle exécute une instruction (qui lui a été fournie). Elle décode l'instruction puis lance des ordres aux autres composants pour exécuter l'instruction sous forme de microcommandes (électroniques). Exemples : (les abréviations ont été francisées) LCO : Lecture du Compteur Ordinal. Transfère le contenu du compteur ordinal sur le bus d’adresses. ICO : Incrémentation (+1) du Compteur Ordinal. CCO : Chargement du Compteur Ordinal. Transfère le contenu du bus d’adresses dans le compteur ordinal. PSR : Pointage Sur Registre. Transfère le contenu du bus d’adresses dans le registre adresse mémoire. LEC : LECture. Transfère le contenu de l’emplacement mémoire, dont l’adresse est dans le registre adresse mémoire, dans le registre mot mémoire. ECR : ECRiture. Transfère le contenu du registre mot mémoire dans l’emplacement mémoire répéré par l’adresse stockée dans le registre adresse mémoire. LMM : Lecture Mot Mémoire. Transfère le contenu du registre mot mémoire sur le bus de données. EMM : Ecriture Mot Mémoire. Transfère le contenu du bus de données dans le registre mot mémoire. CRI : Chargement Registre Instruction. Transfère le contenu du bus de données dans le registre instruction. CAD : Chargement Adresse. Transfère la partie adresse (opérande) de l’instruction sur le bus d’adresse. CRA : Chargement Registre Accumulateur. Le résultat d’une opération dans l’UAL est transféré dans l’accumulateur. CEA : Chargement Entrée A. Transfère le contenu du bus de données sur l’entrée A de l’UAL. CEB : Chargement Entrée B. Transfère le contenu de l’accumulateur sur l’entrée B de l’ UAL. EDA : Envoi de Données Accumulateur. Transfère le contenu de l’accumulateur sur le bus de données. NOP : No Opération. Transfert de la donnée B sur la sortie sans opération. ADD : Addition, SUB : Soustraction, NON, ET, OU logique, etc... Sa vitesse est augmentée, le nombre d'instructions élémentaires est enrichi Elle s'appuie sur les registres 3.2 Registres Un registre est un élément de mémoire interne du microprocesseur, de capacité très réduite (1 ou 2 mots mémoire : 32, 64 ou 128b). Il ne sert pas à stocker des données, mais des adresses, des opérandes, des résultats intermédiaires de calculs. On y trouve : La mémoire ordinale qui contient : Le pointeur d'instructions ou compteur ordinal (IP), le registre de segment de code ou registre d'instruction (CS) et le registre de segment de données (DS), Registre de segment CS, DS, ES, SS respectivement segment de code, données, extra et pile (stack). Définissent l'espace mémoire (le segment) alloué au programme dans la RAM. Francois Kieffer 18/09/2015 page 4/12 SI1-C02.T CPU.doc 2 N2 - SIO-03 Couches d'abstraction Modèle à 7 couches (de 0 à 6). VM=virtual machine ; LM=langage machine ; OS=Operating system N° abstractions Exemples 6 Applications L4G Les logiciels utilisateur (tableur, SGBD, texteur, ...) 5 Langages de développement L3G Langage informatique de "haut niveau" : C, C++, Java, Cobol, FORTRAN, Basic, VB, etc. 4 Langages intermédiaires où chaque instruction symbolique correspond à une instruction de la VM sous jacente : ByteCode pour Java, langage d'assemblage = représentation 'humaine' du LM 3 OS kernel Noyau de l'OS, ajout par logiciel d'opérations élémentaires au LM. Gère la mémoire, les fichiers, la mémoire virtuelle, le multi tâches, etc. … 2 LM LM = opérations élémentaires : le seul langage "compris" par la machine, il rend les processeurs incompatibles entre eux. 1 microprogrammes langage de programmation qui correspond exactement à l'architecture matérielle, où chaque bit d'instruction correspond à un dispositif matériel (porte logique, …). Chaque instruction machine est exécutée comme une suite d'instructions microprogrammées. firmware 0 logique numérique le "hard", l'électronique, lieu de rencontre de l'informatique et de l'électronique numérique. Intel, AMD, Motorola – VIA, Texas instruments, Azustech , etc. … hardware software Equivalent logique : N° 6 5 4 3 2 1 0 abstractions Exemples applications L4G - assistance à l'utilisateur : agents intelligents - interface utilisateur : vocale, métaphore du bureau, icônes, souris, etc. - logiciel d'application : tableur, texteur, ludiciel, butineur, bases de données, etc. Langages de développement L3G - environnement de développement : AGL, débogueur, etc. - logiciel de développement : compilateurs, éditeurs, SGBD, etc. Langages intermédiaires - logiciel système utilisateur : TS, spool, etc. - langage de commande du système et du réseau : shell, JCL, etc. - langage de requêtes au système : SVC, macros gestionnaire de ressources, comptabilité, etc. - gestionnaire de mémoire virtuelle : pagination, segmentation - gestionnaire des fichiers (SGF, FMS) OS kernel LM microprogrammes logique numérique - gestionnaire des entrées sorties (IOCS, BIOS) - ordonnanceur des tâches (scheduler) - synchonisation des tâches (primitives P et V sur sémaphores, etc.) - langage machine - entrées sorties physiques - interruptions (matérielles et logicielles) - microcode : langage lié au matériel (registres, portes, etc.) - architecture logique de l'ordinateur (bus, ram, rom, puces, etc.) - architecture logique des puces (portes, bus, etc.) - architecture physique des puces : VLSI... - support physique des puces : couches MOS - matériaux des circuits : silicium, etc. Note : certaines couches sont définies arbitrairement et sont floues, certaines applications recouvrent plusieurs couches. Francois Kieffer 18/09/2015 page 3/12 SI1-C02.T CPU.doc N2 - SIO-03 2005 Pentium D 2 cœurs pentium, 2 caches L2 (pas bon) 8 2006 Core 2, Core2 Duo 2,4GHz (*2) 7' 2007 Atom Processeur mono cœur : petite taille et faible consommation, pour les ultra portables. 9 2008 Core i7 Nehalem Multi Cœur (4 maxi), 1 cache de +, intégration du contrôleur mémoire, bus système inter processeur, contrôleur graphique et PCI express intégrés, instruction SSE4.2 2009 Core i7/i5 nehalemLynnfield Augmentation du cache jusqu'à 6Mo, diminution de la gravure, augmentation de la vitesse : 2.66 (i5 750), 2.93 (i7 870) GHz selon le modèle 2010 Core i7 WestmereGulftown Core i7 980X : Gravure 32 nm, 3.33GHz, bus 64b ; i7 870, 4 coeurs, de 3.2 à 3.6GHz 2010 Core ix ??? 2011 Sandy bridge Pas d'avancée architecturale notable hors registres à 256b et accélération 2012 Ivy bridge Gravure 22nm 667Mhz qp 1 ou 2 coeurs nouvelle génération, FSB Quad Pumped (fsb*4), L1 64Kio, En 2009, sortie de l'évolution core i7 extension edition 975 à 3.33 GHz MMX=multimedia instructions ooo (Out of order), pipeline, Hyper-threading, multi cœur, contrôleurs, PCI express, SSE sont des termes développés plus loin. Francois Kieffer 18/09/2015 page 2/12 SI1-C02.T CPU.doc N2 - SIO-03 Composition des ordinateurs B. Central Process Unit Note : à part indication explicite, les chiffres donnés sont ceux en cours en 2008. 1 Historique rapide La naissance de l'informatique remonte aux années 1700 avec les premiers métiers à tisser programmables de Jacquard. Mais c'est durant la guerre de 39-45 que les machines automatiques ont fait leurs premiers pas pour décoder les messages cryptés des ennemis qu'il fallait re-câbler pour changer de programmation. Avec l'apparition du transistor, en 1955, l'effort technologique s'est lancé dans une course à la miniaturisation et à la rapidité des processeurs. Quelques marques : - IBM (Industrial Business Machines) : électronique et services, cloud et autre solution - Intel : CPU, GPU, CM - Samsung : CPU mobiles, composants divers - Toshiba : idem - AMD (Advanced Micro Devices) : CPU, GPU, - Gigabyte : Cartes mères - Acer, MSI : Cartes mères et PC complets - NVIDIA : GPU, cartes graphiques, - Motorola : CPU pour Atari et Comodore, pour Apple jusqu'en 2004 - Zilog (cpu Z80) électronique et CPU pour Sinclair (ZX80'), Nintendo Game boy, Sharp Pocket PC, Texas Instruments (calculatrices TI-83) - Radio Shak (TRS80) : pionnier de l'informatique personnelle - Texas Instruments : composants électroniques divers, peu de CPU ; calculatrices - Hewlett Packard : idem TI, mais plus orienté ordinateurs et services - zilog (cpu Z80 dans le sinclair ZX80, game boy, pocket PC, TI-83), Motorola 68030 (Atari, Commodore) - CITRIX, EVERGREEN : CPU La loi de Moore résume l'évolution accélérée : le nombre de transistors, donc la puissance, double tous les 18 mois à prix constant. Quelques étapes importantes des petits processeurs : Générat° Année Nom Bus Interne Bus externe Evolution (FSB) 1 1945 Relais 1947 Transistor discret 1956 Circuit intégré (TI) 1969 4004 4bits 10bits Adressage de 640octets 1976 8088 8bits, 1Mhz 1Mhz, 8bits Adressage de 64Kio 1978 8086 (XT) 16bits, 1Mhz 1Mhz, 8bits Bus interne * 2 2 1982 i80286 (AT) 16bits, 6 à 20 MHz 16bits Bus externe *2 : Adressage de 16Mio de ram 3 1986 i80386 32bits 16/32bits 4Gibioctet de ram paginée, coprocesseur 80385 4 1989 i486, AMD K6 (ATX) 32b, 25 à 50MHz 32b, 50Mhz 5 1993 Pentium, K7 Athlon 64b, 50 à 300 Mhz 60 à 66Mhz Cache L1 32Kio, MMX. 6 1995 Ppro, PII, PIII 64B, maxi 1,4Ghz 66 et 133MHz Technologie ooo, pipeline, L1 32Kio, L2 512Kio 7 2000 P4, PM, AMD64 Maxi 3,8GHz 800Mhz Hyperthreading, L1 16Kio, L2 2Mio Francois Kieffer 18/09/2015 page 1/12