SI1-C02.T CPU

publicité
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
Téléchargement