Vous êtes sur la page 1sur 16

1

Chapitre 2

Les processeurs embarqués


2
Microprocesseur

 Un microprocesseur est un circuit intégré complexe qui permet de


manipuler des informations numériques (codées sous forme
binaire) et d’exécuter les instructions stockées en mémoire.
 Il doit aussi prendre en compte les informations extérieures au
système et assurer leur traitement.
 Le premier microprocesseur (Intel 4004) a été inventé en 1971. Il
s'agissait d'une unité de calcul de 4 bits, cadencé à 108 kHz.
 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 .
3
Processeur embarqué

 Les microprocesseurs et microcontrôleurs


spéciaux sont souvent appelés des processeurs
embarqués.
 Ils sont intégrés dans un système pour contrôler
des fonctions électriques et mécaniques
 Les processeurs embarqués ont une conception
simple, limités en puissance de calcul et en
capacités d'E/S, et ont des exigences
d'alimentation minimales.
4
Fonctionnement

 Le processeur est un circuit électronique cadencé au rythme d'une


horloge interne.
 La vitesse d'un processeur dépend de la durée de son cycle d'horloge.
+ période courte + processeur est rapide
 Fréquence d'horloge: nombre de cycles d’horloge par seconde
f = 1 / τ (Hz)
 + fréquence ↑ + processeur cher et rapide
5

 Fréquence : f
 Cycle d’horloge par second, T = 1 / f
 Le CPI (Cycle Par Instruction) : Nombre moyen de cycles
d’horloge nécessaire pour l’exécution d’une instruction
 Le MIPS (Millions d’Instructions Par Seconde): Puissance de
traitement du processeur
6
Performance d’un processeur

 La puissance d’un processeur se caractérise par le nombre d’instructions qu’il est capable de
traiter par seconde.

 On définit alors:

 Le CPI (Cycle Par Instruction) : Nombre moyen de cycles d’horloge nécessaire pour
l’exécution d’une instruction

 Le MIPS (Millions d’Instructions Par Seconde): Puissance de traitement du processeur


7
Performance d’un processeur

 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é).
8
Exercice 1

 Un processeur à 40 GHz exécute un programme qui utilise un mélange de 4 types d'instruction:

Type instruction Nombre d'instruction Nombre de cycle

Integer 45000 1

Transfert de données 32000 2

Floating point 15000 2

Contrôle 8000 2

1. Combien de cycles ce programme prendra-t-il pour s’exécuter ?


2. Quelle sera la durée d’exécution ?
3. Calculez le CPI (cycle per instruction) et le MIPS (Millions d'Instructions Par Seconde) de ce
programme.
9
Correction

 F=40 GHz
 Le cycle d’horloge du processeur : T=1/f = 1/(40*109) = 0,025 ns
1)- Le nombre de cycle dans le programme est :
45000*1+32000*2+ 15000*2+8000*2= 155000 cycle d’horloge
2)- la durée d’exécution : Durée= Nombre de cycle *Cycle d’horloge = 155*103* 0,025*10-9 = 3,875 10-6S
= 3,875ms
3)- CPI : Cycle par instruction = Nombre de cycle / Nombre d’instruction = 155000/100000 =1,55 Cycle
par instruction
MIPS = 40*103/ 1,55 = 25,8*103
Mémoire Cache

 Les microprocesseurs ont toujours été plus rapides que les mémoires.
 Les performances des processeurs doublent tous les 1 an et demi (loi de Moore)
alors que celles des mémoires doublent tous les 10 ans.
 L'accès mémoire représente donc un goulet d'étranglement puisque le CPU
passe du temps à attendre les informations provenant de la mémoire
 La résolution du problème n'est cependant pas technologique mais plutôt
d'ordre économique. Il est techniquement possible de réaliser des mémoires
presque aussi rapides que des CPU mais leur coût de production est
relativement onéreux. On préfère donc utiliser des mémoires centrales plus
lentes mais de coût raisonnable.
 Pour pallier la lenteur relative des mémoires centrales on a recours à une
solution matérielle et logicielle nommée mémoire cache .
Mémoire Cache

 Le principe de la mémoire cache est simple : il consiste à stocker dans une mémoire
rapide et de faible capacité les données les plus souvent utilisées.
 La mémoire cache repose sur le principe de :
 Localité : on a une forte probabilité d'accéder à la donnée à l'adresse P+1 si on a
accédé à la donnée à l'adresse P
 Temporalité : on a une forte probabilité d'accéder à la donnée à l'adresse P au
temps T+1 si on a accédé à la donnée à l'adresse P au temps T.
Mémoire cache

 La mémoire cache est une variété de mémoire plus rapide que la mémoire centrale (un peu
moins rapide que les registres
 La caractéristique fonctionnelle du cache est de servir à stocker des instructions et des
données provenant de la mémoire centrale et qui ont déjà été utilisées les plus récemment
par le processeur central.
 Actuellement le cache des micro-processeurs récents du marché est composé de deux
niveaux de mémoires de type SRAM la plus rapide : le cache de niveau un est noté L1, le
cache de niveau deux est noté L2.
 Le principe est le suivant : Le cache L1 est formé de deux blocs séparés, l'un servant au
stockage des données, l'autre servant au stockage des instructions.
Mémoire cache
Les types de mémoires cache

 Le cache L1 ou cache primaire est le plus rapide parmi les 3 catégories précédentes. En effet,
ce type de mémoire cache est directement localisé dans le processeur. Par ailleurs, le cache L1
renferme à la fois des données et des instructions destinées au processeur ;
 Le cache L2 ou cache secondaire est également interne au processeur. Son rôle est de soutenir
le cache L1 en stockant les informations qui ne peuvent y être emmagasinées. En effet, la cache
L2 possède une taille plus importante que la cache L1, de l'ordre de 8Mo, bien qu'il soit moins
rapide.
 Le cache L3 est une mémoire externe au processeur et on la retrouve surtout sur les processeurs
haut de gamme ou encore ceux qui équipent les serveurs. Généralement, la gestion de cette
mémoire est assurée par un circuit annexe au processeur.
La recherche de données

 Si un étage du processeur cherche une donnée, elle va être d'abord recherchée dans le
cache de donnée L1 et rapatriée dans un registre adéquat, si la donnée n'est pas présente
dans le cache L1, elle sera recherchée dans le cache L2.
 Si la donnée est présente dans L2, elle est alors rapatriée dans un registre adéquat et recopiée
dans le bloc de donnée du cache L1. Il en va de même lorsque la donnée n'est pas présente
dans le cache L2, elle est alors rapatriée depuis la mémoire centrale dans le registre adéquat
et recopiée dans le cache L2.
 Généralement la mémoire cache de niveau L1 et celle de niveau L2 sont regroupées dans la
même puce que le processeur (cache interne).
16
Exercice 2

 Un CPU exécute un programme composé de N instructions. Chaque instruction


nécessite en moyenne 8 cycles pour s’exécuter. De plus, chaque instruction fait en
moyenne 3 accès mémoire.
 Dans le cas où l’information est dans le cache (un cache hit ), il n’y a pas d’attente, par
contre, aller la chercher en mémoire nécessite 6 cycles.
a)- On considère que le cache est inefficace et que toutes les données sont ramenées de
la mémoire. Combien de cycles se programme prend-il pour s’exécuter ?
b)- Si maintenant le cache a un taux de succès de 100%, quel est le nombre de cycles ?
c)- En pratique, notre cache a un taux de réussite de 11%. Quel est le nombre de cycles
nécessaires pour exécuter ce programme. Comparez le au nombre sans cache.

Vous aimerez peut-être aussi