SlideShare une entreprise Scribd logo
Jalil Boukhobza 1
Cours 1 Microprocesseurs
Jalil Boukhobza
LC 206
boukhobza@univ-brest.fr
02 98 01 69 73
Jalil Boukhobza 2
But de ce cours
 Comprendre le fonctionnement de base
d’un microprocesseur séquentiel simple
(non pipeliné? et non superscalaire?):
 1ère partie: conception
 Eléments de base d’un microprocesseur
 Son fonctionnement
 2ème partie: programmation de
microprocesseur
 3ème partie introduction au systèmes
d’exploitation
Jalil Boukhobza 3
Plan de la première partie
1. Historique, performances et autre introduction
2. Représentation des nombres
3. Circuits logiques
1. Combinatoires (et arithmétique)
2. Séquentiels (et mémorisation)
4. Unités de traitement et unités de contrôle et
l’utilisation d’automates
1. Unité de contrôle câblée
2. Unité de contrôle microprogrammée
Cours
d’aujourd’hui
Jalil Boukhobza 4
À quoi sert ce cours ?
 Connaître la base de l’architecture d’un
microprocesseur (pour un informaticien c’est un
minimum !).
 Indispensable pour plusieurs UEs de L3 et de M1
(Architecture, Architectures parallèles, système &
réseaux, etc.)
 Indispensable pour le M2 Systèmes Embarqués.
Jalil Boukhobza 5
Les microprocesseurs hier, aujourd’hui
et …demain ?
 Au niveau technologique (commutateur):
Tubes à vide (1904) → transistor (années 20-30) semi-
conducteur/65nm → nanotechnologies (1 à 0.1nm)
 Au niveau de la mémoire:
1 Ko (en 1970) → quelques GO (230)
Une faune variée: mémoire externe, mémoire centrale,
mémoire cache (de plusieurs niveaux différents)
 Au niveau de l’architecture:
Du modèle Von Neumann → architectures plus parallèles
(pipeline?, super scalaire?, multi cœur?)
Jalil Boukhobza 6
Performances
 C’est toujours la course aux performances (MIPS, MOPS,
FLOPS): plus les machines sont performantes et plus les
applications sont gourmandes.
 Parmi ces applications:
 Traitement d’images, visioconférence, jeux 3D, multimédia;
 Bioinformatique: décodage du génome humain
 Modélisation et simulation en climatologie, conception de circuits
intégrés, etc.
 Pour accroître les performances, on compte sur l’évolution
des technologies mais aussi les architectures : parallélisme
interne (au sein d’un processeur) ou/et externe (multi
processeur)
Jalil Boukhobza 7
Loi de Moore
Source wikipedia
Moore (cofondateur d’INTEL) à prédit en 1965 que le nombre de transistor sur une
puce doublerait tout les 18 mois et a rectifié sa loi (empirique) vers 1975 à 24 mois.
Cette loi est étonnement juste !!!
Jalil Boukhobza 8
L’histoire commence en 1943 avec
l’ENIAC …
 Electronic Numerical Integrator And Computer: reprogrammable,
décimal et utilise des tubes à vide. Conçus à des buts militaires.
 30 tonnes (500m2 au sol)
 18000 tubes à vide et 70000 résistances
 140 Kwatts/h (un PC consomme 100 à 200 Watts/h)
 5000 additions/seconde/calculateur, il y en a 20 (un Pentium 4 3.2
GHz effectue 2772~6204 MFLOPS).
 À fonctionné jusqu’en 1955 (une dizaine d’année).
Tache principale: réaliser une série de calculs complexes pour tester la
faisabilité de la bombe hydrogène.
Jalil Boukhobza 9
ENIAC
développeur
débogueur
Jalil Boukhobza 10
IAS et l’architecture de Von Neumann
(1903-1957)
 Institute of Advanced Studies (Princeton) architecture
conçue entre 1946 et 1952.
 Idée: représentation du programme sous forme numérique
(binaire) ET le ranger en mémoire au même titre que les
données.
 Caractéristiques:
 Mémoire principale: données + instructions
 Une unité arithmétique et logique sur données binaires
 Une unité de contrôle (interprétation d’instruction)
 Dispositif d’E/S
 L’IAS est un modèle d’architecture encore aujourd’hui utilisé.
Jalil Boukhobza 11
IAS
… depuis, d’autres modèles ont été définis comme l’architecture
Harvard (deux mémoire: données et instructions) ainsi que d’autres
architectures parallèles
E/S
Programme
Données
RI
PC
UAL
Partie opérative
Partie contrôle
Mémoire
Jalil Boukhobza 12
CISC & RISC
 Constat: grande majorité des instructions
disponibles sont très peu utilisées
 Deux types d’architectures différentes:
 CISC (Complex instruction Set Computer): modes
d’adressage complexe + plusieurs instructions possibles +
nombre de cycles par instruction différent → Pentium
 RISC (Reduced Instruction Set Computer): peu de modes
d’adressage + peu d’instructions possibles + nombre de
cycles par instruction constant (ou presque) → PowerPC.
 Actuellement peu de frontière entre les deux …?
Jalil Boukhobza 13
Évolution dans la gamme Pentium
 Du 8080 au 80486: microprocesseur 8 bits au 32 bits multitâches
(exécution de plusieurs programmes simultanément) avec
coprocesseur mathématique.
 Pentium et Pentium Pro: utilisation d’architectures super scalaires
(plusieurs instructions en parallèle) et techniques logicielles
permettant d’accélérer le traitement:
 Prédiction de branchement
 Analyse de flot (enlever le code mort)
 Exécution spéculative (dans le désordre)
 Pentium II, III et IV: traitement spécifique pour la vidéo, 3D et
multimédia.
 Itanium: architecture 64 bits.
Jalil Boukhobza 14
Évolution dans la gamme PowerPC
 801: processeur RISC de Berkeley lancé par IBM
(1975).
 System/6000 RISC: super scalaire RISC
 PowerPC: accord entre IBM, Motorolla et Apple
 601, 603, 604: processeur 32 bits avec conceptions super
scalaires plus avancée.
 620 et G3: architecture 64 bits intégrant pour la dernière
deux niveaux de cache sur la puce.
 G4: plus de parallélisme et vitesse interne plus importante.
 G5 : processeur 64 bits
Jalil Boukhobza 15
Quelques chiffres
Pentium Pentium III Itanium
Date de
lancement
1993 1999 2001
Vitesse d’horloge 166 MHz 660 MHz 800 MHz
Nombre de
transistors
3,1 Millions 9,5/28 Millions 300 Millions
601 G4 G5
Date de
lancement
1993 1999 2003
Vitesse d’horloge 120 MHz 500 MHz 2 GHz
Nombre de
transistors
2,8 Millions 10,5 ~ 33 Millions 58 Millions
Jalil Boukhobza 16
Les performances
 La performance d’un microprocesseur pour un utilisateur
individuel correspond à la durée s’écoulant entre le début
et la terminaison d’une tâche: temps d’exécution
→ la fréquence de fonctionnement ne suffit pas pour
comparer les performances
→ le nombre de cycles par instruction dépend de la complexité
moyenne du jeu d’instructions















oge
cyclesHorl
nbSecondes
*
n
Instructio
nbCycles
*
ions
nbInstruct
tempsExec
Jalil Boukhobza 17
Exemple
 Pour un même jeu d’instructions et deux mises en
œuvre différentes avec une machine A et une
machine B. Pour un même programme, la A a un
cycle d’horloge de 10ns et un CPI (nombre moyen de
Cycles Par Instruction) de 2 tandis que la machine B
a un cycle d’horloge de 15ns et un CPI de 1,2.
Quelle est la machine la plus rapide (nombre
d’instructions par seconde)?
Jalil Boukhobza 18
De l’importance des compilateurs
et du logiciel
La programmation de la machine se fait généralement en utilisant
un langage de haut niveau (C, Pascal, Fortran,…)
A = A + B (langage C)
Add A,B (langage d’assemblage)
011010010…. (langage machine)
Compilateur
assembleur
Jalil Boukhobza 19
Jeu d’instruction d’une machine
Le jeu d’instruction est dépendant des choix architecturaux de la
machine.
une instruction = code instruction + opérande(s)
 le code de l’instruction lu en un ou plusieurs accès mémoire
 le (ou les) opérande(s) peu(ven)t être une donnée ou une adresse
On distingue quatre catégories d’instructions:
1. processeur-mémoire: transfert mémoire processeur
2. processeur-E/S: transfert données vers, ou à partir de périphériques
3. traitement des données: opération arithmétique ou logique
4. contrôle: branchement
Jalil Boukhobza 20
Jeu d’instructions (2)
Le nombre d’opérandes peut varier selon le jeu d’instructions, on parle de
jeu d’instructions à 0, 1, 2 voire jusqu’à 4 adresses. Cependant, comme
les mots représentant les données (ou adresses) sont de plus en plus
longs (32, 64 bits), sont préférés les jeux d’instructions avec peu
d’adresses.
 Instruction d’addition avec 2 adresses
add source destination
source + destination -> destination
 Dans le cas d’une instruction à une adresse, on utilise un registre
interne (accumulateur ou acc) pour stocker le premier opérande.
add source
acc + source -> acc
Jalil Boukhobza 21
Jeu d’instructions (3)
Par exemple, on peut exécuter A = B * (C − D*E) avec
LOAD E (charge dans Acc)
MPY D (multiplie le contenu de Acc)
STA T1 (range le contenu de Acc)
LOAD C
SUB T1 (soustrait le contenu de Acc)
MPY B
STA A
Jalil Boukhobza 22
Architectures et instructions
plusieurs stratégies pour l’accès aux données:
 Type registre-registre (tendance actuelle):
ADD R1, R2, R3
R3  R2 + R1
 Type registre-mémoire:
ADD R, @X
R  R + @X
 Type mémoire-mémoire:
ADD @X, @Y, @Z
@Z  @X + @Y
 Plusieurs types d’adressage … on les verra ultérieurement
Jalil Boukhobza 23
Tâches du processeur (modèle 5
phases)
Cycle de lecture et d’exécution des instructions:
1. Lecture (fetch) de l’instruction à exécuter (charger le registre
d’instructions RI avec l’instruction dont l’adresse est dans le PC)
2. Décodage de l’instruction (chargement des opérandes des registres
si besoin)
3. Lecture/écriture mémoire
4. Exécution
5. Écriture des résultats dans les registres
En plus de la sélection de l’instruction suivante (préparer PC pour
l’instruction suivante) qui se fait lors de l’opération 3, 4 ou 5.
Jalil Boukhobza 24
Illustration
Jalil Boukhobza 25
Partie opérative
Cette partie contient :
 Le registre d’instruction RI
 Le registre pour le compteur programme (PC)
 Les registres internes pour la mémorisation de données ou
d’adresses
 L’UAL (unité arithmétique et logique) avec deux sorties :
 résultat du calcul
 code de conditions arithmétiques (Z= résultat nul, N= résultat
négatif,C= retenue, V= dépassement de capacité)
La description de la partie opérative est l’objet du cours 2.
Jalil Boukhobza 26
Partie contrôle
 La partie contrôle permet l’exécution des instructions. C’est
une machine séquentielle (automate de contrôle ou
séquenceur) permettant d’envoyer des ordres à la partie
opérative.
 Les entrées de la partie contrôle sont des informations
émanant de la partie opérative (valeur d’un code opération,
valeur d’un code condition ...)
Jalil Boukhobza 27
Décodage des instructions
Le décodage sert à différencier les types d’instructions
(instruction arithmétique, logique, de transfert, de branchement .)
Décoder = générer d’après le code de l’instruction, les signaux
électriques permettant l’exécution de cette instruction
Type de décodage :
 micro programmé (utilisation d’une mémoire de microprogramme)
 câblé (non reprogrammable)
L’unité de contrôle est l’objet du cours 3&4.
Jalil Boukhobza 28
Exemple de réalisation de processeur
Extrait « Architectures logicielles et matérielles »
P.Ambard et al., Dunod 2000
On définit :
 un jeu d’instructions réduit,
 une partie opérative avec un registre de donnée,
 une unité de contrôle permettant l’exécution des
différentes instructions sur l’architecture de la partie
opérative
Jalil Boukhobza 29
Jeu d’instructions
Jalil Boukhobza 30
Taille et contenu de la mémoire
Soit le petit programme suivant que l’on désire exécuter:
ld #3
st [8]
etiq: add [8]
jmp etiq
La taille d’une instruction étant de un ou deux mots, si le
programme commence à l’adresse 0 alors le symbole etiq est
associé à la valeur 4.
Si l’on fixe la taille d’un mot à 4 bits, on fixe la taille de la
mémoire à 16 mots sachant que la taille d’une adresse est
aussi de 4 bits.
Jalil Boukhobza 31
Interprétation des instructions
PC := 0
tant que vrai
selon Mem[PC]
clr: Acc :=0; PC := PC + 1
ld: Acc := Mem[PC + 1]; PC := PC + 2
st: Mem[Mem[PC + 1]] := Acc; PC := PC + 2
jmp: PC := Mem[PC + 1]
add: Acc := Acc + Mem[Mem[PC + 1]]; PC := PC + 2
Mem[PC] correspond au code de l’instruction tandis que
Mem[PC + 1] correspond à l’opérande (donnée ou adresse).
Jalil Boukhobza 32
Représentation et précision finie
 Représentation en précision finie (quantité limitée de nombres
représentables)
 Problème de représentation: ex 1/3 n’est pas représentable
 Les propriétés sur les nombres sont différentes en précision
finie
(A+B) – C = A + (B-C) ??
Exemple:
 Loi associative: a+(b-c) ? (a+b)-c
Entiers sur 3 chiffres: a=700, b=400, c=300
 Loi distributive: a*(b-c) ? (a*b)-(a*c)
Entiers sur 3 chiffres: a=5, b=210, c=100
Les bases utilisées en informatique
 La base 10 bien sûr ! Sauf exception, les programmeurs
comptent en base 10 comme le quidam ordinaire.
 La base 2 : les opérateurs de calcul sont souvent prévus pour
calculer dans cette base, car leur réalisation en est simplifiée.
 La base 16 ou hexadécimal : elle est utilisée lorsque le
programmeur doit résonner en base 2. Les conversions de la
base hexadécimal vers la base 2 se calculent très facilement
de tête.
Jalil Boukhobza 34
Représentation binaire des nombres
 nombre positif : (conversion en base 2)
 nombre négatif :
 représentation signe-valeur absolue:
 représentation complément à 2 :




1
0
2
.
n
i
i
i
a
A













2
0
1
2
0
1
1
2
.
0
2
.
n
i
n
i
i
n
i
n
i
i
a
si
a
A
a
si
a
A








2
0
1
1
2
.
.
2
n
i
i
i
n
n
a
a
A
Conversion de la base 10 à une base B
 On divise successivement le nombre à convertir par la base B,
tant que le résultat n’est pas nul.
 Les restes de chacune des divisions forment les chiffres du
nombre converti dans la base d’arrivée, du poids faible au
poids fort.
54 2
0 27 2
1 13 2
1 6 2
0 3 2
1 1 2
1 0
(54)10=(110110)2
Jalil Boukhobza 36
Représentation binaire (2)
Représentation
décimale
Représentation
signe et valeur
absolue
Représentation
complément à 1
Représentation
complément à 2
+4 - - -
+3 011 011 011
+2 010 010 010
+1 001 001 001
+0 000 000 000
-0 100 111 000
-1 101 110 111
-2 110 101 110
-3 111 100 101
-4 - - 100
Jalil Boukhobza 37
Caractéristiques principales du
complément à 2
 Intervalle de représentation: -2n-1…2n-1-1
 Nombre de représentation de zéro: une seule
 Négation:
 Augmentation du nombre de bits: extension par le bit du signe
 Dépassement de capacité: résultat prend le signe opposé de ce
qu’il devrait prendre
 Soustraction: A-B = A + (-B)
1


 A
A

Contenu connexe

Similaire à Cours 1 Microprocesseurs.ppt

OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...
OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...
OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...
Pôle Systematic Paris-Region
 
Utilisation et programmation en c
Utilisation et programmation en cUtilisation et programmation en c
Utilisation et programmation en c
Cecilia Bevilaqua
 
Chapitre 05 architecture microprocesseur (2).pptx
Chapitre 05 architecture microprocesseur (2).pptxChapitre 05 architecture microprocesseur (2).pptx
Chapitre 05 architecture microprocesseur (2).pptx
FazaTabbana1
 
FDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
FDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDFDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
FDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
mohamedsaidi212001
 
Pic 16f877 ..
Pic 16f877 ..Pic 16f877 ..
Pic 16f877 ..
sunprass
 
Microcontrôleur PIC Microchip part1/2
Microcontrôleur PIC Microchip part1/2Microcontrôleur PIC Microchip part1/2
Microcontrôleur PIC Microchip part1/2
Mohammed Lamghari
 
Chapitre i architectures des processeurs récents
Chapitre i architectures des processeurs récentsChapitre i architectures des processeurs récents
Chapitre i architectures des processeurs récentsSana Aroussi
 
Introduction
IntroductionIntroduction
Introductionshervinv
 
Microcontrôleur
MicrocontrôleurMicrocontrôleur
Microcontrôleur
Peronnin Eric
 
Cours Benhabiles TMS320.pdf
Cours Benhabiles TMS320.pdfCours Benhabiles TMS320.pdf
Cours Benhabiles TMS320.pdf
HouBou3
 
Chapitre-3-Architectures-Haute-Performance-et-embarquées.pdf
Chapitre-3-Architectures-Haute-Performance-et-embarquées.pdfChapitre-3-Architectures-Haute-Performance-et-embarquées.pdf
Chapitre-3-Architectures-Haute-Performance-et-embarquées.pdf
SoumayaMabrouk2
 
Les Microcontrôleurs 68HCXX.ppt
Les Microcontrôleurs 68HCXX.pptLes Microcontrôleurs 68HCXX.ppt
Les Microcontrôleurs 68HCXX.ppt
wafawafa52
 
Correction des exercices du thème 6 du manuel du cours 3ème année
Correction des exercices du thème 6 du manuel du cours 3ème annéeCorrection des exercices du thème 6 du manuel du cours 3ème année
Correction des exercices du thème 6 du manuel du cours 3ème année
RimAskri
 
cours_AzabouMaha_GIINF_chap1-2020-2021.pptx
cours_AzabouMaha_GIINF_chap1-2020-2021.pptxcours_AzabouMaha_GIINF_chap1-2020-2021.pptx
cours_AzabouMaha_GIINF_chap1-2020-2021.pptx
GhorbelOmar2
 
Chap 1 Intro Microcontroleurs et Interruptions.pdf
Chap 1 Intro Microcontroleurs et Interruptions.pdfChap 1 Intro Microcontroleurs et Interruptions.pdf
Chap 1 Intro Microcontroleurs et Interruptions.pdf
DAPcreat
 
Technologies du Web - Architectures matérielles et logicielles
Technologies du Web - Architectures matérielles et logiciellesTechnologies du Web - Architectures matérielles et logicielles
Technologies du Web - Architectures matérielles et logicielles
Frédéric Simonet
 
Composants reconfigurables
Composants reconfigurablesComposants reconfigurables
Composants reconfigurables
Peronnin Eric
 
Base des systèmes à microprocesseur
Base des systèmes à microprocesseurBase des systèmes à microprocesseur
Base des systèmes à microprocesseur
Peronnin Eric
 

Similaire à Cours 1 Microprocesseurs.ppt (20)

OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...
OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...
OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...
 
Utilisation et programmation en c
Utilisation et programmation en cUtilisation et programmation en c
Utilisation et programmation en c
 
Chapitre 05 architecture microprocesseur (2).pptx
Chapitre 05 architecture microprocesseur (2).pptxChapitre 05 architecture microprocesseur (2).pptx
Chapitre 05 architecture microprocesseur (2).pptx
 
FDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
FDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDFDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
FDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
 
Pic 16f877 ..
Pic 16f877 ..Pic 16f877 ..
Pic 16f877 ..
 
Microcontrôleur PIC Microchip part1/2
Microcontrôleur PIC Microchip part1/2Microcontrôleur PIC Microchip part1/2
Microcontrôleur PIC Microchip part1/2
 
Chapitre i architectures des processeurs récents
Chapitre i architectures des processeurs récentsChapitre i architectures des processeurs récents
Chapitre i architectures des processeurs récents
 
Introduction
IntroductionIntroduction
Introduction
 
Microcontrôleur
MicrocontrôleurMicrocontrôleur
Microcontrôleur
 
Cours pics16 f877
Cours pics16 f877Cours pics16 f877
Cours pics16 f877
 
Cours Benhabiles TMS320.pdf
Cours Benhabiles TMS320.pdfCours Benhabiles TMS320.pdf
Cours Benhabiles TMS320.pdf
 
Chapitre-3-Architectures-Haute-Performance-et-embarquées.pdf
Chapitre-3-Architectures-Haute-Performance-et-embarquées.pdfChapitre-3-Architectures-Haute-Performance-et-embarquées.pdf
Chapitre-3-Architectures-Haute-Performance-et-embarquées.pdf
 
Les Microcontrôleurs 68HCXX.ppt
Les Microcontrôleurs 68HCXX.pptLes Microcontrôleurs 68HCXX.ppt
Les Microcontrôleurs 68HCXX.ppt
 
Correction des exercices du thème 6 du manuel du cours 3ème année
Correction des exercices du thème 6 du manuel du cours 3ème annéeCorrection des exercices du thème 6 du manuel du cours 3ème année
Correction des exercices du thème 6 du manuel du cours 3ème année
 
cours_AzabouMaha_GIINF_chap1-2020-2021.pptx
cours_AzabouMaha_GIINF_chap1-2020-2021.pptxcours_AzabouMaha_GIINF_chap1-2020-2021.pptx
cours_AzabouMaha_GIINF_chap1-2020-2021.pptx
 
Chap 1 Intro Microcontroleurs et Interruptions.pdf
Chap 1 Intro Microcontroleurs et Interruptions.pdfChap 1 Intro Microcontroleurs et Interruptions.pdf
Chap 1 Intro Microcontroleurs et Interruptions.pdf
 
Technologies du Web - Architectures matérielles et logicielles
Technologies du Web - Architectures matérielles et logiciellesTechnologies du Web - Architectures matérielles et logicielles
Technologies du Web - Architectures matérielles et logicielles
 
Composants reconfigurables
Composants reconfigurablesComposants reconfigurables
Composants reconfigurables
 
Base des systèmes à microprocesseur
Base des systèmes à microprocesseurBase des systèmes à microprocesseur
Base des systèmes à microprocesseur
 
Mini projet 3t2i se
Mini projet 3t2i seMini projet 3t2i se
Mini projet 3t2i se
 

Plus de wafawafa52

Model test result .pptx
Model test result                  .pptxModel test result                  .pptx
Model test result .pptx
wafawafa52
 
Recovery-XPIC-Ericsson- 2-0-MMU 4 A.pptx
Recovery-XPIC-Ericsson- 2-0-MMU 4 A.pptxRecovery-XPIC-Ericsson- 2-0-MMU 4 A.pptx
Recovery-XPIC-Ericsson- 2-0-MMU 4 A.pptx
wafawafa52
 
515878259-Node-Group-Synch-Workshop.pptx
515878259-Node-Group-Synch-Workshop.pptx515878259-Node-Group-Synch-Workshop.pptx
515878259-Node-Group-Synch-Workshop.pptx
wafawafa52
 
385288768-TD-Training-Modules-Mobilis.pptx
385288768-TD-Training-Modules-Mobilis.pptx385288768-TD-Training-Modules-Mobilis.pptx
385288768-TD-Training-Modules-Mobilis.pptx
wafawafa52
 
Ericsson Microwave Products Overview.ppt
Ericsson Microwave Products Overview.pptEricsson Microwave Products Overview.ppt
Ericsson Microwave Products Overview.ppt
wafawafa52
 
BaseBand-6630-Moshell-Commands .pdf
BaseBand-6630-Moshell-Commands      .pdfBaseBand-6630-Moshell-Commands      .pdf
BaseBand-6630-Moshell-Commands .pdf
wafawafa52
 
45555555555-4G-Training .pptx
45555555555-4G-Training            .pptx45555555555-4G-Training            .pptx
45555555555-4G-Training .pptx
wafawafa52
 
5-LTE-IP-Troubleshooting .ppt
5-LTE-IP-Troubleshooting            .ppt5-LTE-IP-Troubleshooting            .ppt
5-LTE-IP-Troubleshooting .ppt
wafawafa52
 
Sharing-Knowledge-OAM-3G-Ericsson .ppt
Sharing-Knowledge-OAM-3G-Ericsson   .pptSharing-Knowledge-OAM-3G-Ericsson   .ppt
Sharing-Knowledge-OAM-3G-Ericsson .ppt
wafawafa52
 
LTE-BASICS-ppt .ppt
LTE-BASICS-ppt                      .pptLTE-BASICS-ppt                      .ppt
LTE-BASICS-ppt .ppt
wafawafa52
 
ran-introicbasictroubleshooting3-230122164831-426c58cd.pdf
ran-introicbasictroubleshooting3-230122164831-426c58cd.pdfran-introicbasictroubleshooting3-230122164831-426c58cd.pdf
ran-introicbasictroubleshooting3-230122164831-426c58cd.pdf
wafawafa52
 
toaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdf
toaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdftoaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdf
toaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdf
wafawafa52
 
mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...
mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...
mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...
wafawafa52
 
FPGA_Logic.pdf
FPGA_Logic.pdfFPGA_Logic.pdf
FPGA_Logic.pdf
wafawafa52
 
DWDM-Presentation.pdf
DWDM-Presentation.pdfDWDM-Presentation.pdf
DWDM-Presentation.pdf
wafawafa52
 
Verilog HDL Design Examples ( PDFDrive ).pdf
Verilog HDL Design Examples ( PDFDrive ).pdfVerilog HDL Design Examples ( PDFDrive ).pdf
Verilog HDL Design Examples ( PDFDrive ).pdf
wafawafa52
 
VHDL summary.pdf
VHDL summary.pdfVHDL summary.pdf
VHDL summary.pdf
wafawafa52
 
ROM PAL PLA.ppt
ROM PAL PLA.pptROM PAL PLA.ppt
ROM PAL PLA.ppt
wafawafa52
 
Lecture 16 RC Architecture Types & FPGA Interns Lecturer.pptx
Lecture 16 RC Architecture Types & FPGA Interns Lecturer.pptxLecture 16 RC Architecture Types & FPGA Interns Lecturer.pptx
Lecture 16 RC Architecture Types & FPGA Interns Lecturer.pptx
wafawafa52
 
exam.ppt
exam.pptexam.ppt
exam.ppt
wafawafa52
 

Plus de wafawafa52 (20)

Model test result .pptx
Model test result                  .pptxModel test result                  .pptx
Model test result .pptx
 
Recovery-XPIC-Ericsson- 2-0-MMU 4 A.pptx
Recovery-XPIC-Ericsson- 2-0-MMU 4 A.pptxRecovery-XPIC-Ericsson- 2-0-MMU 4 A.pptx
Recovery-XPIC-Ericsson- 2-0-MMU 4 A.pptx
 
515878259-Node-Group-Synch-Workshop.pptx
515878259-Node-Group-Synch-Workshop.pptx515878259-Node-Group-Synch-Workshop.pptx
515878259-Node-Group-Synch-Workshop.pptx
 
385288768-TD-Training-Modules-Mobilis.pptx
385288768-TD-Training-Modules-Mobilis.pptx385288768-TD-Training-Modules-Mobilis.pptx
385288768-TD-Training-Modules-Mobilis.pptx
 
Ericsson Microwave Products Overview.ppt
Ericsson Microwave Products Overview.pptEricsson Microwave Products Overview.ppt
Ericsson Microwave Products Overview.ppt
 
BaseBand-6630-Moshell-Commands .pdf
BaseBand-6630-Moshell-Commands      .pdfBaseBand-6630-Moshell-Commands      .pdf
BaseBand-6630-Moshell-Commands .pdf
 
45555555555-4G-Training .pptx
45555555555-4G-Training            .pptx45555555555-4G-Training            .pptx
45555555555-4G-Training .pptx
 
5-LTE-IP-Troubleshooting .ppt
5-LTE-IP-Troubleshooting            .ppt5-LTE-IP-Troubleshooting            .ppt
5-LTE-IP-Troubleshooting .ppt
 
Sharing-Knowledge-OAM-3G-Ericsson .ppt
Sharing-Knowledge-OAM-3G-Ericsson   .pptSharing-Knowledge-OAM-3G-Ericsson   .ppt
Sharing-Knowledge-OAM-3G-Ericsson .ppt
 
LTE-BASICS-ppt .ppt
LTE-BASICS-ppt                      .pptLTE-BASICS-ppt                      .ppt
LTE-BASICS-ppt .ppt
 
ran-introicbasictroubleshooting3-230122164831-426c58cd.pdf
ran-introicbasictroubleshooting3-230122164831-426c58cd.pdfran-introicbasictroubleshooting3-230122164831-426c58cd.pdf
ran-introicbasictroubleshooting3-230122164831-426c58cd.pdf
 
toaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdf
toaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdftoaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdf
toaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdf
 
mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...
mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...
mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...
 
FPGA_Logic.pdf
FPGA_Logic.pdfFPGA_Logic.pdf
FPGA_Logic.pdf
 
DWDM-Presentation.pdf
DWDM-Presentation.pdfDWDM-Presentation.pdf
DWDM-Presentation.pdf
 
Verilog HDL Design Examples ( PDFDrive ).pdf
Verilog HDL Design Examples ( PDFDrive ).pdfVerilog HDL Design Examples ( PDFDrive ).pdf
Verilog HDL Design Examples ( PDFDrive ).pdf
 
VHDL summary.pdf
VHDL summary.pdfVHDL summary.pdf
VHDL summary.pdf
 
ROM PAL PLA.ppt
ROM PAL PLA.pptROM PAL PLA.ppt
ROM PAL PLA.ppt
 
Lecture 16 RC Architecture Types & FPGA Interns Lecturer.pptx
Lecture 16 RC Architecture Types & FPGA Interns Lecturer.pptxLecture 16 RC Architecture Types & FPGA Interns Lecturer.pptx
Lecture 16 RC Architecture Types & FPGA Interns Lecturer.pptx
 
exam.ppt
exam.pptexam.ppt
exam.ppt
 

Dernier

Presentation d'esquisse route juin 2023.pptx
Presentation d'esquisse route juin 2023.pptxPresentation d'esquisse route juin 2023.pptx
Presentation d'esquisse route juin 2023.pptx
imed53
 
Accompagner les porteurs de projets en transformation fermière
Accompagner les porteurs de projets en transformation fermièreAccompagner les porteurs de projets en transformation fermière
Accompagner les porteurs de projets en transformation fermière
Institut de l'Elevage - Idele
 
COURS ANALYSE FINANCIERE-NOGLO Méthodes d’analyses financières.pdf
COURS ANALYSE FINANCIERE-NOGLO Méthodes d’analyses financières.pdfCOURS ANALYSE FINANCIERE-NOGLO Méthodes d’analyses financières.pdf
COURS ANALYSE FINANCIERE-NOGLO Méthodes d’analyses financières.pdf
sieousse95
 
Quelles rotations dans les systèmes caprins de Nouvelle-Aquitaine et Pays de ...
Quelles rotations dans les systèmes caprins de Nouvelle-Aquitaine et Pays de ...Quelles rotations dans les systèmes caprins de Nouvelle-Aquitaine et Pays de ...
Quelles rotations dans les systèmes caprins de Nouvelle-Aquitaine et Pays de ...
Institut de l'Elevage - Idele
 
Accompagner les éleveurs dans l'analyse de leurs coûts de production
Accompagner les éleveurs dans l'analyse de leurs coûts de productionAccompagner les éleveurs dans l'analyse de leurs coûts de production
Accompagner les éleveurs dans l'analyse de leurs coûts de production
Institut de l'Elevage - Idele
 
Comment aborder le changement climatique dans son métier, volet adaptation
Comment aborder le changement climatique dans son métier, volet adaptationComment aborder le changement climatique dans son métier, volet adaptation
Comment aborder le changement climatique dans son métier, volet adaptation
Institut de l'Elevage - Idele
 
Leviers d’adaptation au changement climatique, qualité du lait et des produit...
Leviers d’adaptation au changement climatique, qualité du lait et des produit...Leviers d’adaptation au changement climatique, qualité du lait et des produit...
Leviers d’adaptation au changement climatique, qualité du lait et des produit...
Institut de l'Elevage - Idele
 
COUPROD Une méthode nationale commune à l’ensemble des filières herbivores
COUPROD Une méthode nationale commune à l’ensemble des filières herbivoresCOUPROD Une méthode nationale commune à l’ensemble des filières herbivores
COUPROD Une méthode nationale commune à l’ensemble des filières herbivores
Institut de l'Elevage - Idele
 
Alternative au Tramway de la ville de Quebec Rev 1 sml.pdf
Alternative au Tramway de la ville de Quebec Rev 1 sml.pdfAlternative au Tramway de la ville de Quebec Rev 1 sml.pdf
Alternative au Tramway de la ville de Quebec Rev 1 sml.pdf
Daniel Bedard
 
Reconquête de l’engraissement du chevreau à la ferme
Reconquête de l’engraissement du chevreau à la fermeReconquête de l’engraissement du chevreau à la ferme
Reconquête de l’engraissement du chevreau à la ferme
Institut de l'Elevage - Idele
 
1er webinaire INOSYS Réseaux d’élevage Ovins Viande
1er webinaire INOSYS Réseaux d’élevage Ovins Viande1er webinaire INOSYS Réseaux d’élevage Ovins Viande
1er webinaire INOSYS Réseaux d’élevage Ovins Viande
Institut de l'Elevage - Idele
 

Dernier (11)

Presentation d'esquisse route juin 2023.pptx
Presentation d'esquisse route juin 2023.pptxPresentation d'esquisse route juin 2023.pptx
Presentation d'esquisse route juin 2023.pptx
 
Accompagner les porteurs de projets en transformation fermière
Accompagner les porteurs de projets en transformation fermièreAccompagner les porteurs de projets en transformation fermière
Accompagner les porteurs de projets en transformation fermière
 
COURS ANALYSE FINANCIERE-NOGLO Méthodes d’analyses financières.pdf
COURS ANALYSE FINANCIERE-NOGLO Méthodes d’analyses financières.pdfCOURS ANALYSE FINANCIERE-NOGLO Méthodes d’analyses financières.pdf
COURS ANALYSE FINANCIERE-NOGLO Méthodes d’analyses financières.pdf
 
Quelles rotations dans les systèmes caprins de Nouvelle-Aquitaine et Pays de ...
Quelles rotations dans les systèmes caprins de Nouvelle-Aquitaine et Pays de ...Quelles rotations dans les systèmes caprins de Nouvelle-Aquitaine et Pays de ...
Quelles rotations dans les systèmes caprins de Nouvelle-Aquitaine et Pays de ...
 
Accompagner les éleveurs dans l'analyse de leurs coûts de production
Accompagner les éleveurs dans l'analyse de leurs coûts de productionAccompagner les éleveurs dans l'analyse de leurs coûts de production
Accompagner les éleveurs dans l'analyse de leurs coûts de production
 
Comment aborder le changement climatique dans son métier, volet adaptation
Comment aborder le changement climatique dans son métier, volet adaptationComment aborder le changement climatique dans son métier, volet adaptation
Comment aborder le changement climatique dans son métier, volet adaptation
 
Leviers d’adaptation au changement climatique, qualité du lait et des produit...
Leviers d’adaptation au changement climatique, qualité du lait et des produit...Leviers d’adaptation au changement climatique, qualité du lait et des produit...
Leviers d’adaptation au changement climatique, qualité du lait et des produit...
 
COUPROD Une méthode nationale commune à l’ensemble des filières herbivores
COUPROD Une méthode nationale commune à l’ensemble des filières herbivoresCOUPROD Une méthode nationale commune à l’ensemble des filières herbivores
COUPROD Une méthode nationale commune à l’ensemble des filières herbivores
 
Alternative au Tramway de la ville de Quebec Rev 1 sml.pdf
Alternative au Tramway de la ville de Quebec Rev 1 sml.pdfAlternative au Tramway de la ville de Quebec Rev 1 sml.pdf
Alternative au Tramway de la ville de Quebec Rev 1 sml.pdf
 
Reconquête de l’engraissement du chevreau à la ferme
Reconquête de l’engraissement du chevreau à la fermeReconquête de l’engraissement du chevreau à la ferme
Reconquête de l’engraissement du chevreau à la ferme
 
1er webinaire INOSYS Réseaux d’élevage Ovins Viande
1er webinaire INOSYS Réseaux d’élevage Ovins Viande1er webinaire INOSYS Réseaux d’élevage Ovins Viande
1er webinaire INOSYS Réseaux d’élevage Ovins Viande
 

Cours 1 Microprocesseurs.ppt

  • 1. Jalil Boukhobza 1 Cours 1 Microprocesseurs Jalil Boukhobza LC 206 boukhobza@univ-brest.fr 02 98 01 69 73
  • 2. Jalil Boukhobza 2 But de ce cours  Comprendre le fonctionnement de base d’un microprocesseur séquentiel simple (non pipeliné? et non superscalaire?):  1ère partie: conception  Eléments de base d’un microprocesseur  Son fonctionnement  2ème partie: programmation de microprocesseur  3ème partie introduction au systèmes d’exploitation
  • 3. Jalil Boukhobza 3 Plan de la première partie 1. Historique, performances et autre introduction 2. Représentation des nombres 3. Circuits logiques 1. Combinatoires (et arithmétique) 2. Séquentiels (et mémorisation) 4. Unités de traitement et unités de contrôle et l’utilisation d’automates 1. Unité de contrôle câblée 2. Unité de contrôle microprogrammée Cours d’aujourd’hui
  • 4. Jalil Boukhobza 4 À quoi sert ce cours ?  Connaître la base de l’architecture d’un microprocesseur (pour un informaticien c’est un minimum !).  Indispensable pour plusieurs UEs de L3 et de M1 (Architecture, Architectures parallèles, système & réseaux, etc.)  Indispensable pour le M2 Systèmes Embarqués.
  • 5. Jalil Boukhobza 5 Les microprocesseurs hier, aujourd’hui et …demain ?  Au niveau technologique (commutateur): Tubes à vide (1904) → transistor (années 20-30) semi- conducteur/65nm → nanotechnologies (1 à 0.1nm)  Au niveau de la mémoire: 1 Ko (en 1970) → quelques GO (230) Une faune variée: mémoire externe, mémoire centrale, mémoire cache (de plusieurs niveaux différents)  Au niveau de l’architecture: Du modèle Von Neumann → architectures plus parallèles (pipeline?, super scalaire?, multi cœur?)
  • 6. Jalil Boukhobza 6 Performances  C’est toujours la course aux performances (MIPS, MOPS, FLOPS): plus les machines sont performantes et plus les applications sont gourmandes.  Parmi ces applications:  Traitement d’images, visioconférence, jeux 3D, multimédia;  Bioinformatique: décodage du génome humain  Modélisation et simulation en climatologie, conception de circuits intégrés, etc.  Pour accroître les performances, on compte sur l’évolution des technologies mais aussi les architectures : parallélisme interne (au sein d’un processeur) ou/et externe (multi processeur)
  • 7. Jalil Boukhobza 7 Loi de Moore Source wikipedia Moore (cofondateur d’INTEL) à prédit en 1965 que le nombre de transistor sur une puce doublerait tout les 18 mois et a rectifié sa loi (empirique) vers 1975 à 24 mois. Cette loi est étonnement juste !!!
  • 8. Jalil Boukhobza 8 L’histoire commence en 1943 avec l’ENIAC …  Electronic Numerical Integrator And Computer: reprogrammable, décimal et utilise des tubes à vide. Conçus à des buts militaires.  30 tonnes (500m2 au sol)  18000 tubes à vide et 70000 résistances  140 Kwatts/h (un PC consomme 100 à 200 Watts/h)  5000 additions/seconde/calculateur, il y en a 20 (un Pentium 4 3.2 GHz effectue 2772~6204 MFLOPS).  À fonctionné jusqu’en 1955 (une dizaine d’année). Tache principale: réaliser une série de calculs complexes pour tester la faisabilité de la bombe hydrogène.
  • 10. Jalil Boukhobza 10 IAS et l’architecture de Von Neumann (1903-1957)  Institute of Advanced Studies (Princeton) architecture conçue entre 1946 et 1952.  Idée: représentation du programme sous forme numérique (binaire) ET le ranger en mémoire au même titre que les données.  Caractéristiques:  Mémoire principale: données + instructions  Une unité arithmétique et logique sur données binaires  Une unité de contrôle (interprétation d’instruction)  Dispositif d’E/S  L’IAS est un modèle d’architecture encore aujourd’hui utilisé.
  • 11. Jalil Boukhobza 11 IAS … depuis, d’autres modèles ont été définis comme l’architecture Harvard (deux mémoire: données et instructions) ainsi que d’autres architectures parallèles E/S Programme Données RI PC UAL Partie opérative Partie contrôle Mémoire
  • 12. Jalil Boukhobza 12 CISC & RISC  Constat: grande majorité des instructions disponibles sont très peu utilisées  Deux types d’architectures différentes:  CISC (Complex instruction Set Computer): modes d’adressage complexe + plusieurs instructions possibles + nombre de cycles par instruction différent → Pentium  RISC (Reduced Instruction Set Computer): peu de modes d’adressage + peu d’instructions possibles + nombre de cycles par instruction constant (ou presque) → PowerPC.  Actuellement peu de frontière entre les deux …?
  • 13. Jalil Boukhobza 13 Évolution dans la gamme Pentium  Du 8080 au 80486: microprocesseur 8 bits au 32 bits multitâches (exécution de plusieurs programmes simultanément) avec coprocesseur mathématique.  Pentium et Pentium Pro: utilisation d’architectures super scalaires (plusieurs instructions en parallèle) et techniques logicielles permettant d’accélérer le traitement:  Prédiction de branchement  Analyse de flot (enlever le code mort)  Exécution spéculative (dans le désordre)  Pentium II, III et IV: traitement spécifique pour la vidéo, 3D et multimédia.  Itanium: architecture 64 bits.
  • 14. Jalil Boukhobza 14 Évolution dans la gamme PowerPC  801: processeur RISC de Berkeley lancé par IBM (1975).  System/6000 RISC: super scalaire RISC  PowerPC: accord entre IBM, Motorolla et Apple  601, 603, 604: processeur 32 bits avec conceptions super scalaires plus avancée.  620 et G3: architecture 64 bits intégrant pour la dernière deux niveaux de cache sur la puce.  G4: plus de parallélisme et vitesse interne plus importante.  G5 : processeur 64 bits
  • 15. Jalil Boukhobza 15 Quelques chiffres Pentium Pentium III Itanium Date de lancement 1993 1999 2001 Vitesse d’horloge 166 MHz 660 MHz 800 MHz Nombre de transistors 3,1 Millions 9,5/28 Millions 300 Millions 601 G4 G5 Date de lancement 1993 1999 2003 Vitesse d’horloge 120 MHz 500 MHz 2 GHz Nombre de transistors 2,8 Millions 10,5 ~ 33 Millions 58 Millions
  • 16. Jalil Boukhobza 16 Les performances  La performance d’un microprocesseur pour un utilisateur individuel correspond à la durée s’écoulant entre le début et la terminaison d’une tâche: temps d’exécution → la fréquence de fonctionnement ne suffit pas pour comparer les performances → le nombre de cycles par instruction dépend de la complexité moyenne du jeu d’instructions                oge cyclesHorl nbSecondes * n Instructio nbCycles * ions nbInstruct tempsExec
  • 17. Jalil Boukhobza 17 Exemple  Pour un même jeu d’instructions et deux mises en œuvre différentes avec une machine A et une machine B. Pour un même programme, la A a un cycle d’horloge de 10ns et un CPI (nombre moyen de Cycles Par Instruction) de 2 tandis que la machine B a un cycle d’horloge de 15ns et un CPI de 1,2. Quelle est la machine la plus rapide (nombre d’instructions par seconde)?
  • 18. Jalil Boukhobza 18 De l’importance des compilateurs et du logiciel La programmation de la machine se fait généralement en utilisant un langage de haut niveau (C, Pascal, Fortran,…) A = A + B (langage C) Add A,B (langage d’assemblage) 011010010…. (langage machine) Compilateur assembleur
  • 19. Jalil Boukhobza 19 Jeu d’instruction d’une machine Le jeu d’instruction est dépendant des choix architecturaux de la machine. une instruction = code instruction + opérande(s)  le code de l’instruction lu en un ou plusieurs accès mémoire  le (ou les) opérande(s) peu(ven)t être une donnée ou une adresse On distingue quatre catégories d’instructions: 1. processeur-mémoire: transfert mémoire processeur 2. processeur-E/S: transfert données vers, ou à partir de périphériques 3. traitement des données: opération arithmétique ou logique 4. contrôle: branchement
  • 20. Jalil Boukhobza 20 Jeu d’instructions (2) Le nombre d’opérandes peut varier selon le jeu d’instructions, on parle de jeu d’instructions à 0, 1, 2 voire jusqu’à 4 adresses. Cependant, comme les mots représentant les données (ou adresses) sont de plus en plus longs (32, 64 bits), sont préférés les jeux d’instructions avec peu d’adresses.  Instruction d’addition avec 2 adresses add source destination source + destination -> destination  Dans le cas d’une instruction à une adresse, on utilise un registre interne (accumulateur ou acc) pour stocker le premier opérande. add source acc + source -> acc
  • 21. Jalil Boukhobza 21 Jeu d’instructions (3) Par exemple, on peut exécuter A = B * (C − D*E) avec LOAD E (charge dans Acc) MPY D (multiplie le contenu de Acc) STA T1 (range le contenu de Acc) LOAD C SUB T1 (soustrait le contenu de Acc) MPY B STA A
  • 22. Jalil Boukhobza 22 Architectures et instructions plusieurs stratégies pour l’accès aux données:  Type registre-registre (tendance actuelle): ADD R1, R2, R3 R3  R2 + R1  Type registre-mémoire: ADD R, @X R  R + @X  Type mémoire-mémoire: ADD @X, @Y, @Z @Z  @X + @Y  Plusieurs types d’adressage … on les verra ultérieurement
  • 23. Jalil Boukhobza 23 Tâches du processeur (modèle 5 phases) Cycle de lecture et d’exécution des instructions: 1. Lecture (fetch) de l’instruction à exécuter (charger le registre d’instructions RI avec l’instruction dont l’adresse est dans le PC) 2. Décodage de l’instruction (chargement des opérandes des registres si besoin) 3. Lecture/écriture mémoire 4. Exécution 5. Écriture des résultats dans les registres En plus de la sélection de l’instruction suivante (préparer PC pour l’instruction suivante) qui se fait lors de l’opération 3, 4 ou 5.
  • 25. Jalil Boukhobza 25 Partie opérative Cette partie contient :  Le registre d’instruction RI  Le registre pour le compteur programme (PC)  Les registres internes pour la mémorisation de données ou d’adresses  L’UAL (unité arithmétique et logique) avec deux sorties :  résultat du calcul  code de conditions arithmétiques (Z= résultat nul, N= résultat négatif,C= retenue, V= dépassement de capacité) La description de la partie opérative est l’objet du cours 2.
  • 26. Jalil Boukhobza 26 Partie contrôle  La partie contrôle permet l’exécution des instructions. C’est une machine séquentielle (automate de contrôle ou séquenceur) permettant d’envoyer des ordres à la partie opérative.  Les entrées de la partie contrôle sont des informations émanant de la partie opérative (valeur d’un code opération, valeur d’un code condition ...)
  • 27. Jalil Boukhobza 27 Décodage des instructions Le décodage sert à différencier les types d’instructions (instruction arithmétique, logique, de transfert, de branchement .) Décoder = générer d’après le code de l’instruction, les signaux électriques permettant l’exécution de cette instruction Type de décodage :  micro programmé (utilisation d’une mémoire de microprogramme)  câblé (non reprogrammable) L’unité de contrôle est l’objet du cours 3&4.
  • 28. Jalil Boukhobza 28 Exemple de réalisation de processeur Extrait « Architectures logicielles et matérielles » P.Ambard et al., Dunod 2000 On définit :  un jeu d’instructions réduit,  une partie opérative avec un registre de donnée,  une unité de contrôle permettant l’exécution des différentes instructions sur l’architecture de la partie opérative
  • 29. Jalil Boukhobza 29 Jeu d’instructions
  • 30. Jalil Boukhobza 30 Taille et contenu de la mémoire Soit le petit programme suivant que l’on désire exécuter: ld #3 st [8] etiq: add [8] jmp etiq La taille d’une instruction étant de un ou deux mots, si le programme commence à l’adresse 0 alors le symbole etiq est associé à la valeur 4. Si l’on fixe la taille d’un mot à 4 bits, on fixe la taille de la mémoire à 16 mots sachant que la taille d’une adresse est aussi de 4 bits.
  • 31. Jalil Boukhobza 31 Interprétation des instructions PC := 0 tant que vrai selon Mem[PC] clr: Acc :=0; PC := PC + 1 ld: Acc := Mem[PC + 1]; PC := PC + 2 st: Mem[Mem[PC + 1]] := Acc; PC := PC + 2 jmp: PC := Mem[PC + 1] add: Acc := Acc + Mem[Mem[PC + 1]]; PC := PC + 2 Mem[PC] correspond au code de l’instruction tandis que Mem[PC + 1] correspond à l’opérande (donnée ou adresse).
  • 32. Jalil Boukhobza 32 Représentation et précision finie  Représentation en précision finie (quantité limitée de nombres représentables)  Problème de représentation: ex 1/3 n’est pas représentable  Les propriétés sur les nombres sont différentes en précision finie (A+B) – C = A + (B-C) ?? Exemple:  Loi associative: a+(b-c) ? (a+b)-c Entiers sur 3 chiffres: a=700, b=400, c=300  Loi distributive: a*(b-c) ? (a*b)-(a*c) Entiers sur 3 chiffres: a=5, b=210, c=100
  • 33. Les bases utilisées en informatique  La base 10 bien sûr ! Sauf exception, les programmeurs comptent en base 10 comme le quidam ordinaire.  La base 2 : les opérateurs de calcul sont souvent prévus pour calculer dans cette base, car leur réalisation en est simplifiée.  La base 16 ou hexadécimal : elle est utilisée lorsque le programmeur doit résonner en base 2. Les conversions de la base hexadécimal vers la base 2 se calculent très facilement de tête.
  • 34. Jalil Boukhobza 34 Représentation binaire des nombres  nombre positif : (conversion en base 2)  nombre négatif :  représentation signe-valeur absolue:  représentation complément à 2 :     1 0 2 . n i i i a A              2 0 1 2 0 1 1 2 . 0 2 . n i n i i n i n i i a si a A a si a A         2 0 1 1 2 . . 2 n i i i n n a a A
  • 35. Conversion de la base 10 à une base B  On divise successivement le nombre à convertir par la base B, tant que le résultat n’est pas nul.  Les restes de chacune des divisions forment les chiffres du nombre converti dans la base d’arrivée, du poids faible au poids fort. 54 2 0 27 2 1 13 2 1 6 2 0 3 2 1 1 2 1 0 (54)10=(110110)2
  • 36. Jalil Boukhobza 36 Représentation binaire (2) Représentation décimale Représentation signe et valeur absolue Représentation complément à 1 Représentation complément à 2 +4 - - - +3 011 011 011 +2 010 010 010 +1 001 001 001 +0 000 000 000 -0 100 111 000 -1 101 110 111 -2 110 101 110 -3 111 100 101 -4 - - 100
  • 37. Jalil Boukhobza 37 Caractéristiques principales du complément à 2  Intervalle de représentation: -2n-1…2n-1-1  Nombre de représentation de zéro: une seule  Négation:  Augmentation du nombre de bits: extension par le bit du signe  Dépassement de capacité: résultat prend le signe opposé de ce qu’il devrait prendre  Soustraction: A-B = A + (-B) 1    A A