Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
le microprocesseur
Laurent JEANPIERRE <jeanpl@iutc3.unicaen.fr>
Département Informatique
Contenu du cours
Introduction
Constitution
Fonctionnement
Langage
Architectures à Pipeline
Processeurs RISC
Département Informatique 2
Le microprocesseur
Circuit intégré complexe
Intègre toutes les fonctions
d’un processeur
Inventé par Ted Hoff
Commercialisé par Intel le 15/11/1971
« 4004 »
2300 transistors
60000 opérations
par seconde
Département Informatique 3
Introduction (2)
Aujourd’hui
Plusieurs types de processeurs
Plusieurs fabricants
Caractéristiques nombreuses
Fréquence, consommation, transistors, …
Mips (Million of Instructions Per Second)
Introduction
Constitution
Fonctionnement
Langage
Architectures à Pipeline
Processeurs RISC
Département Informatique 5
Physiquement…
Vulgaire bout de silicium dopé
Wafer : Galette de plusieurs processeurs
1 processeur : quelques millimètres carrés
Plus finement :
Millions de transistors
1 transistor
= interrupteur commandé en tension
Plusieurs transistors portes logiques
Département Informatique 6
Logiquement…
2 unités fonctionnelles séparées
Unité de Commande
Dirige le processeur
Génère les signaux
Département Informatique 7
Unité de Commande
Constituée de :
Compteur Ordinal : Registre contenant
l’adresse de la prochaine instruction
Program Counter
Registre d’Instruction : contient le code de
l’instruction en cours
Décodeur : Décode l’instruction
(sélection de la bonne fonction)
Séquenceur : Ordonne et Synchronise les
blocs-opération pour l’instruction décodée
Département Informatique 8
Les registres
Mémoires internes au processeur
Nombre dépend du processeur
Entre 10 et 100… voire plus !
Processeur performant
Beaucoup de registres
Taille dépend du processeur
Exprimée en bits.
Caractérise le processeur
Processeur 32 bits.
Département Informatique 9
Les registres (2)
Plusieurs types de registres
Généraux (accumulateurs)
registres à tout faire…
Registres spécifiques
RI : instruction en cours
PC : @ prochaine instruction
SP : @ sommet de pile
Département Informatique 10
Les registres (3)
Registres de débogage
Registres MMX, SSE, FPU, …
Autres…
C = Retenue à propager
Département Informatique 11
Contenu du cours
Introduction
Constitution
Fonctionnement
Langage
Architectures à Pipeline
Processeurs RISC
Département Informatique 12
Fonctionnement
Lit instruction suivante
Bus Adresse PC
Bus Commande « Lire instruction »
RI Bus Donnée
Département Informatique 13
Fonctionnement (2)
Lit données (facultatif)
Bus A 123
Bus C « lire donnée »
tmp Bus D
UAL.RI « addition »
Département Informatique 14
Fonctionnement (3)
UAL calcule opération
Activation de l’additionneur intégral
tmp
UC range résultat
A tmp
Recommence
Lit & Exécute instruction suivante
Département Informatique 15
Résumé
1. Lit instruction suivante (UC)
2. Avance compteur Ordinal (UC)
3. Décode Instruction (UC)
4. Lit données (facultatif) (UC)
5. Fournit Données UAL (UC)
6. Exécute Instruction (UAL)
7. Range résultat (UC)
Et recommence…
Département Informatique 16
Contenu du cours
Introduction
Constitution
Fonctionnement
Langage
Architectures à Pipeline
Processeurs RISC
Département Informatique 17
Jeu d’instructions
Ensemble d’opérations élémentaires
réalisables par le P
De 50 (RISC) à + de 1000 (CISC)
Transfert de données
Arithmétique
Logique
Entrées/Sorties
Sauts / Branchements
Département Informatique 18
Langage machine
Code binaire stockant des instructions
Ex :
A = A + 12
ADD.L $12, %eax
Département Informatique 19
Contenu du cours
Introduction
Constitution
Fonctionnement
Langage
Architectures à Pipeline
Processeurs RISC
Département Informatique 20
Notion de pipeline
1 instruction 5 étapes (5 ticks)
IF : Instruction Fetch
DEC : Decodage
Ex : Execution
WB : Write Back
Département Informatique 22
Problèmes…
Résultat de I1 nécessaire pour faire I2
Diffère I2 tant que résultat pas disponible
Même ressource utilisée par I1 et I2
Diffère I2 tant que ressource pas libre
Aléa de branchement
Si test alors … sinon …
Pari sur le résultat du test
Ok : exécution optimale
Faux : annule toutes opérations commencées
depuis le pari (très coûteux)
Département Informatique 23
Architecture SuperPipeline
Subdivision des opérations élémentaires
Pipeline plus long, fréquence plus élevée
Problème : prédiction de branchement
incorrecte vidage pipeline obligatoire
Ex:
Pentium : longueur = 5
Pentium 3 : longueur = 10
Pentium 4Northwood : longueur = 20
Pentium 4Prescott : longueur = 31
Pentium 4Conroe : longueur = 14 (futur)
Athlon 64 : longueur = 12
Département Informatique 24
Architecture Super-Scalaire
Plusieurs pipelines par P
Traitements parallèles
Parrallélisation
Gains de performances
Diminution fréquence
Département Informatique 25
Contenu du cours
Introduction
Constitution
Fonctionnement
Langage
Architectures à Pipeline
Processeurs RISC
Département Informatique 26
Pourquoi ?
1975, chercheurs IBM remarquent que
<20% instructions utilisées
>80% du temps
simplifier processeurs
Instructions courantes seulement
Plus simples, mieux optimisées, plus efficaces
Puce moins grosse
Deux classes de processeurs
Reduced Instruction Set Computer
Complex Instruction Set Computer
Département Informatique 27
Mais…
Instructions complexes ???
Simulées par le compilateur
Utilise plusieurs instructions simples
Pas de micro-code
Instructions directement exécutables
Instructions de taille fixe
Pipelines plus efficaces
Cache d’instructions plus simple/petit/optimisé
Compilateur plus compliqué
Impossible à programmer « à la main »
Département Informatique 28
Risc Vs Cisc
<100 instructions >200 instructions
Format fixe Format variable
Instructions câblées Instructions
simples câblées
complexes par
micro-code
Accès mémoire pour Accès mémoire pour
instr. de chargement. toutes instructions
Vitesse typique : Vitesse typique :
1 instruction dure 1 instruction dure
1 cycle 3-10 cycles
Département Informatique 29
Risc Vs Cisc
Avantages Avantages
Puce + petite Développement
Fréquence + élevée + simple
Exécution + rapide Très répandu
Inconvénients Inconvénients
Compilateur complexe Puce + grosse
Puce + compliquée
(à développer) Évolutions limitées
Programmes longs Plusieurs cycles
(+ de mémoire) par instruction
Département Informatique 30
Un processeur moderne (P4E)
Département Informatique 31