instruction

publicité
Université Constantine 2 – Abdelhamid Mehri
Faculté des NTIC
Département MI
Electronique des Composants & Systèmes
Les Microprocesseurs partie1
Cours de L1 - TRONC COMMUN DOMAINE
MATHEMATIQUES – INFORMATIQUE
2015-2016
Dr. Kitouni I.
Introduction
Architecture d’un microprocesseur
1.
2.
Unité de commande
Unité de traitement
1.
2.
Les registres
Les mémoires cache
3.
4.
Les niveaux de mémoires cache
1.
5.
6.
7.
Niveaux de programmation
Les principales caractéristiques d’un
microprocesseur
Amélioration des performances d’un
microprocesseur
27/11/2015
2




Un microprocesseur est un circuit intégré complexe
caractérisé par une très grande intégration capable
d’interpréter et d'exécuter des instructions d'un
programme.
Il doit aussi prendre en compte les informations
extérieures au système et assurer leur traitement.
A l’heure actuelle, un microprocesseur regroupe sur
quelques millimètre carré des fonctionnalités
toujours plus complexes.
Leur puissance continue de s’accroître et leur
encombrement diminue régulièrement respectant
toujours, pour le moment, la fameuse loi de Moore.
27/11/2015
3



Jusqu’au début des années 1970, les différents
composants électroniques formant un processeur ne
pouvaient pas tenir sur un seul circuit intégré
nécessité d'interconnecter de nombreux composant
dont plusieurs circuits intégrés
En 1971, la société américaine Intel réussit, pour la
première fois, à placer tous les composants qui
constituent un processeur sur un seul circuit intégré
donnant ainsi naissance au microprocesseur.
27/11/2015
4
Cette miniaturisation a permis :
 d'augmenter les vitesses de fonctionnement des
processeurs, grâce à la réduction des distances entre les
composants
 de réduire les coûts, grâce au remplacement de
plusieurs circuits par un seul
 d'augmenter la fiabilité en supprimant les connexions
entre les composants du processeur, l'un des
principaux vecteurs de panne
 de créer des ordinateurs plus petits : les microordinateurs
 de réduire la consommation en énergie
27/11/2015
5

Un microprocesseur est construit autour des éléments
principaux suivants:
Une unité de commande
 Une unité de traitement
 Des registres chargées de stocker les différentes informations à
traiter.


Ces trois éléments sont reliés entre eux par des bus
internes permettant les échanges d’informations.
27/11/2015
6


Séquenceur


27/11/2015
L’unité de commande Elle
permet de séquencer le
déroulement des
instructions.
Elle en assure le décodage de
l’instruction
Organise son exécution
Effectue la préparation de
l'instruction suivante.
7
C’est le cœur du microprocesseur. Elle
regroupe les circuits qui assurent les
traitements nécessaires à l'exécution des
instructions , elle est composée
essentiellement de :
L’Unité Arithmétique et Logique (UAL) est
un circuit complexe qui assure les
fonctions logiques (ET, OU,
Comparaison, Décalage , etc…) ou
arithmétique (Addition,
soustraction……).
27/11/2015
8
Séquenceur
27/11/2015
9
Lorsque le processeur exécute des instructions, les
données sont temporairement stockées dans de petites
mémoires rapides de 8, 16, 32 ou 64 bits que l'on appelle
registres.
 Suivant le type de processeur le nombre global de
registres peut varier d'une dizaine à plusieurs
centaines.
27/11/2015
10
Les registres principaux sont :





le registre accumulateur (ACC), stockant les résultats
des opérations arithmétiques et logiques
le registre d'état (PSW, Processor Status Word),
permettant de stocker des indicateurs sur l'état du
système (retenue, dépassement, etc.)
le registre instruction (RI), contenant l'instruction en
cours de traitement
le compteur ordinal (CO ou PC pour Program Counter),
contenant l'adresse de la prochaine instruction à traiter
le ou les registres tampon, stockant temporairement les
donnée provenant de la mémoire
27/11/2015
11




la mémoire centrale de l'ordinateur a une vitesse
moins importante que le processeur.
Il existe néanmoins des mémoires beaucoup plus
rapides, mais dont le coût est très élevé.
La mémoire cache (également appelée antémémoire
ou mémoire tampon) est une mémoire rapide
permettant de réduire les délais d'attente des
informations stockées en mémoire vive.
La solution consiste donc à inclure ce type de
mémoire rapide au voisinage du processeur et d'y
stocker temporairement les principales données
devant être traitées par le processeur.
27/11/2015
12
Les ordinateurs récents possèdent plusieurs niveaux de
mémoire cache :
 La mémoire cache de premier niveau (Level 1 Cache) est
directement intégrée dans le processeur. Elle se subdivise en
2 parties :


La première est le cache d'instructions, qui contient les instructions
issues de la mémoire vive et déjà décodées.
La seconde est le cache de données, qui contient des données
issues de la mémoire vive et les données récemment utilisées lors
des opérations du processeur.
Les caches du premier niveau sont très rapides d‘accès. Leur
délai d'accès tend à s'approcher de celui des registres internes
aux processeurs.


La mémoire cache de second niveau ( L2 Cache) est située
au niveau du boîtier contenant le processeur (dans la puce).
La mémoire cache de troisième niveau ( L3 Cache) située
au niveau de la carte mère.
27/11/2015
13




On peut distinguer plusieurs niveaux de langage de
programmation
Le plus haut, c’est les langages de haut niveau, évolués
(C,C++, ADA, Java….)
Le plus bas est dit : le langage machine, celui-ci
s’adapte aux caractéristiques de la machine
La figure représente l’état actuelle des langages:
Niveau des commandes
électroniques
Micro-instructions
Langages machine
Langage assembleur
Langages évolués
27/11/2015
14




La première étape de la conception d’un
microprocesseur est la définition de son jeu
d’instructions.
Le jeu d’instructions décrit l’ensemble des
opérations élémentaires que le microprocesseur
pourra exécuter.
Il va donc en partie déterminer l’architecture du
microprocesseur à réaliser et notamment celle du
séquenceur.
A un même jeu d’instructions peut correspondre
un grand nombre d’implémentations différentes
du microprocesseur.
27/11/2015
15


Une instruction est l'opération élémentaire que le
processeur peut accomplir.
Une instruction est composée de plusieurs champs :
le code opération « instruction », code de l'action que le
processeur doit exécuter ;
 le code opérande, sont les paramètres de l'action.
 (Le code opérande peut être une donnée ou bien une adresse
mémoire).
 On parle d’instruction à n adresses si elle possède n champs
opérandes ( n=0,1,2,3,4 au plus)

27/11/2015
16





Les instructions sont principalement :
Accès à la mémoire : des accès à la mémoire ou
transferts de données entre registres.
Opérations arithmétiques : opérations telles
que les additions, soustractions ou
multiplication….
Opérations logiques : opérations ET, OU,
NON, etc….
Contrôle de sequence : contrôles de séquence,
branchements conditionnels, etc….
27/11/2015
17



Le nombre d'instructions du jeu d'instructions
est directement lié au format du code
instruction.
Ainsi un octet permet de distinguer au
maximum 256 instructions différentes.???
Chaque instruction nécessite un certain nombre
de cycles d’horloges pour s’effectuer.

27/11/2015
A chaque top d'horloge le processeur exécute une
action, correspondant à une instruction ou une partie
d'instruction.
18
1. Le jeu d'instructions qu’il peut exécuter.
 Un processeur peut exécuter plusieurs dizaines,
voire centaines, d’instructions différentes.
2. La complexité de son architecture. Cette
complexité se mesure par le nombre de
transistors contenus dans le microprocesseur.

27/11/2015
Plus le microprocesseur contient de transistors, plus
il pourra effectuer des opérations complexes, et/ou
traiter des chiffres de grande taille.
19
3. Largeur des données : le nombre de bits que le processeur peut traiter
ensemble.


Les microprocesseurs actuels peuvent traiter des nombres sur 64 bits.
Le nombre de bits est en rapport direct avec : la capacité à traiter de
grands nombres rapidement et des nombres d'une grande précision
(nombres de décimales significatives).
4. Finesse de gravure (nm) : le diamètre (en nm) du plus petit fil reliant
deux composantes du microprocesseur.
En comparaison, l'épaisseur d'un cheveu humain est de 100 microns =
100 000 nm.
 En 2014 on arrive à des finesses de gravure de l’ordre de 10 nm.
 En augmentant la finesse de gravure, on se rapproche des limites en deçà
desquelles le comportement électrique des matériaux relève de moins en
moins de la physique classique (mécanique quantique).

27/11/2015
C’est
quoi????
20
5. La vitesse de l’horloge.

Le rôle de l’horloge est de cadencer le rythme du travail du
processeur. + la vitesse augmente, + le processeur effectue
d'instructions en une seconde.

Inconvénients de l'augmentation de la fréquence :
 le processeur consomme d'électricité,
 il chauffe ce qui nécessite une solution de refroidissement du
processeur adaptée ;

la fréquence est limitée par les temps de commutation des portes
logiques

Entre deux « coups d'horloge », les signaux numériques doivent avoir le temps de
parcourir tout le trajet nécessaire à l'exécution de l'instruction attendue ;
27/11/2015
21
6. Performances d’un microprocesseur
On peut caractériser la puissance d’un microprocesseur
par le nombre d’instructions qu’il est capable de traiter
par seconde. Pour cela, on définit:
A. le CPI (Cycle Par Instruction) qui représente le
nombre moyen de cycles d’horloge nécessaire pour
l’exécution d’une instruction pour un
microprocesseur donné. ƒ
B. le MIPS (Millions d'Instructions Par Seconde) qui
représente la puissance de traitement du
microprocesseur.
27/11/2015
22
Pour augmenter les performances d’un
microprocesseur, on peut donc soit :
 augmenter la fréquence d'horloge (limitation
matérielle)
 soit diminuer le CPI (choix d'un jeu
d'instruction adapté).
 Améliorer l’architecture de base (amélioration
technologique)
27/11/2015
23
Téléchargement