Electroniques des composants et...

39
Electroniques des composants et systèmes Enseigné par : Mme. Iness NEDJI MILAT 1 Université Constantine 2 – Abdelhamid Mehri Faculté des NTIC Département MI Cours de L1 - TRONC COMMUN DOMAINE MATHEMATIQUES – INFORMATIQUE 2016-2017

Transcript of Electroniques des composants et...

Page 1: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Electroniques des composants et systèmes

Enseigné par :

Mme. Iness NEDJI MILAT

1

Université Constantine 2 – Abdelhamid MehriFaculté des NTICDépartement MI

Cours de L1 - TRONC COMMUN DOMAINE MATHEMATIQUES – INFORMATIQUE2016-2017

Page 2: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Chapitre 04 :

Le microprocesseur

2

Page 3: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Qu’est ce qu’un CPU?

• Un microprocesseur est un circuit intégré complexereprésentant le cerveau de l’ordinateur,

• Il résulte de l’intégration sur une puce de plusieurs circuitslogiques combinatoires ( fonctions logiques et arithmétiques)et séquentielles (registres, compteur, etc…).

• A l’heure actuelle, un microprocesseur regroupe sur quelquesmillimètre carré des fonctionnalités toujours plus complexes.

• le CPU est chargé d’interpréter et d’exécuter les instructionsd’un programme, de lire ou sauvegarder des données dans desmémoires et de communiquer avec les unités d’échange.

• Toutes les activités du microprocesseur sont cadencées parune horloge. 3

Page 4: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Architecture d’un CPU

Un CPU est construit autour des élémentsprincipaux suivants:

• Une unité de commande,

• Une unité de traitement,

• Des registres chargées de stocker lesdifférentes informations à traiter,

• Ces trois éléments sont reliés entre eux pardes bus internes permettant les échangesd’informations.

4

Page 5: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Architecture d’un CPU

5

Page 6: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Unité de commande

6

L’unité de commande permet :

• de séquencer le déroulement de l’exécution des instructions,

• d’assurer le décodage de l’instruction (qui est codée sous forme binaire)

• d’organiser l’exécution de l’instruction,

• d’effectuer la préparation de l'instruction suivante.

Page 7: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Unité de commandeL’unité de commande est composée par:• le compteur ordinal ou de programme (CO ou PC) est un

registre qui contient l’adresse de l’instruction à exécuter. Il initialisé avec l'adresse de la première instruction du programme.

• le registre d'instruction (RI): qui contient l’instruction àexécuter,

• le décodeur d'instruction : qui décode l’instruction qui estsous forme binaire en identifiant l’opération et lesopérandes,

• Le bloc logique de commande (ou séquenceur) : est unautomate (circuit) qui organise l'exécution des instructionsau rythme d’une horloge en élaborant des ordres decommandes aux différents composants internes (du cpu)ou externe (de l’extérieur du CPU : MC)

7

Page 8: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Unité de commande

8

Page 9: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Unité de traitement

9

• C’est le cœur du CPU. Elle regroupe les circuits quiassurent les traitements nécessaires à l'exécutiondes instructions

• Elle est composée essentiellement de : – l’Unité Arithmétique et Logique (UAL) qui est un circuit

complexe assurant:• les fonctions logiques (ET, OU, Comparaison, Décalage , etc…)

et,• les fonctions arithmétiques (Addition, soustraction……).

– Le registre d'états (PSW, Processor Status Word), permetde stocker des indicateurs sur l'état du système (retenue,dépassement, etc.)

– Les accumulateurs sont des registres de travail quiservent à stocker une opérande au début d'une opérationarithmétique et le résultat à la fin de l'opération.

Page 10: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Unité de traitement

10

Page 11: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Schéma fonctionnel

11

Page 12: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Cycle d’exécution d’une instruction

Le traitement d’une instruction peut être décomposé en trois phases.

• Phase 1: Recherche de l'instruction à traiter – Le PC contient l'adresse de l'instruction à exécuter.

Cette valeur est copiée dans le registre d'adresses parle séquenceur qui émet un ordre de lecture.

– Au bout d'un certain temps (temps d'accès à lamémoire), le contenu de la case mémoire sélectionnéeest disponible sur le registre de données.

– L'instruction est stockée dans le registre instruction du processeur.

12

Page 13: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Cycle d’exécution d’une instruction

• Phase 2 : Décodage de l’instruction etrecherche de l'opérande– Le registre d'instruction contient l'instruction

codée en binaire– Le décodeur décode cette instruction en

identifiant l’opération et les opérandes– Le séquenceur donne l’ordre à L’UAL de charger

le circuit réalisant l’opération en cours– Si l'instruction nécessite une donnée en

provenance de la mémoire, l'unité decommande récupère sa valeur sur le bus dedonnées.

– L’opérande est stockée dans un registre.13

Page 14: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Cycle d’exécution d’une instruction

• Phase 3 : Exécution de l’instruction

– Le circuit relatif à l’opération à réaliser, dans l’UAL,exécute l‘opération (instruction).

– Le résultat de l’opération (s’il existe) est stockédans ACC puis dans le Registre données puissauvegardé en MC

– L'unité de commande (séquenceur) positionne lePC pour l'instruction suivante.

14

Page 15: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Jeu d’instructions

• La première étape de la conception d’unmicroprocesseur est la définition de son jeud’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 dumicroprocesseur à réaliser et notamment celle duséquenceur.

• A un même jeu d’instructions peut correspondre ungrand nombre d’implémentations différentes dumicroprocesseur.

15

Page 16: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Instruction niveau machine• Une instruction est l'opération élémentaire que le

processeur peut accomplir.

• Une instruction est composée de plusieurschamps:– le code opération « instruction »: code de l'action que

le processeur doit exécuter ;

– le code opérande, c’est lesparamètres de l'action quipeuvent être une donnée ou bien une adressemémoire).

• On parle d’instruction à n adresses si elle possèden champs opérandes ( n = 0,1,2,3,4 au plus)

16

Page 17: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Instruction niveau machine

• Le nombre d'instructions du jeu d'instructions duCPU est directement lié au format du codeopération (nombre de bits).– Ainsi un code opération sur un octet permet de

distinguer au maximum 256 instructions différentesdans le jeu d’instructions.

• Chaque instruction nécessite un certain nombrede cycles d’horloges pour s’effectuer; Le nombrede cycles dépend de la complexité del’instruction.– A chaque top d'horloge le processeur exécute une

action, correspondant à une instruction ou une partied'instruction.

17

Page 18: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Les types d’instruction

Les instructions que l’on retrouve dans le jeud’instructions du microprocesseur peuvent êtreclassées en 4 groupes :

• Transfert de données pour charger ousauvegarder les données en mémoire, effectuerdes transferts de registre à registre, etc…

• Opérations arithmétiques : addition,soustraction, division, multiplication

• Opérations logiques : ET, OU, NON, NAND,comparaison, test, etc…

• Contrôle de séquence : branchement, test, etc…

18

Page 19: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Caractéristiques du CPU

• Le jeu d'instructions qu’il peut exécuter.

• La complexité de son architecture. Cettecomplexité se mesure par le nombre detransistors contenus dans le CPU. (Plus lemicroprocesseur contient de transistors, plus il pourraeffectuer des opérations complexes, et/ou traiter deschiffres de grande taille).

• La Largeur des données : le nombre de bits quele processeur peut traiter ensemble. Les CPUactuels peuvent traiter des nombres sur 64 bits.

19

Page 20: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

• La finesse de gravure (nm) : le diamètre ennanomètre du plus petit fil reliant deuxcomposantes du CPU.

– En 2014 on arrive à des finesses de gravure del’ordre de 10 nm.

• La vitesse de l’horloge. plus la vitesseaugmente, plus le processeur effectued'instructions en une seconde.

• Les Performances d’un microprocesseur :MIPS et CPI

Caractéristiques du CPU

07/01/2017 20

Page 21: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Performance d’un CPUOn peut caractériser la puissance d’un microprocesseurpar le nombre d’instructions qu’il est capable de traiterpar seconde. Pour cela, on définit :

• le CPI (Cycle Par Instruction) : qui représente lenombre moyen de cycles d’horloge nécessaire pourl’exécution d’une instruction pour unmicroprocesseur donné.

• le MIPS (Millions d'Instructions Par Seconde): quireprésente la puissance de traitement dumicroprocesseur.

21

Page 22: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Performance d’un CPU• 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é).

– soit améliorer l’architecture de base (amélioration technologique)

• Le rôle de l’horloge est de cadencer le rythme du travail duprocesseur. + la vitesse augmente, + le processeur executed'instructions en une seconde.

• Inconvénients de l'augmentation de la fréquence :

– le processeur consomme d'électricité,

– il se chauffe ce qui nécessite une solution de refroidissement duprocesseur adaptée ;

22

Page 23: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Architecture CISC vs RISC

Il existe deux catégories d’architectures pour lemicroprocesseurs :

• L’architecture CISC (Complex Instruction SetComputer) basée sur un jeu d’instructionscomplexes

• L’architecture RISC (Reduced Instruction SetComputer) basée sur un jeu d’instructionsélémentaires (simples ou réduits)

23

Page 24: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Architecture CISC

• vue que la mémoire travaillait très lentementpar rapport au processeur, il était plusintéressant de soumettre au microprocesseurdes instructions complexes (minimiser l’accèsà la mémoire)

• On a donc eu tendance à incorporer au niveauprocesseur des instructions plus proches de lastructure des langage de haut niveau

24

Page 25: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Architecture CISC

• CISC est une architecture où lemicroprocesseur exécute des tâchescomplexes par instruction unique quinécessite un plus grand nombre de cyclesd’horloge

• Le code machine de ces instructions varied’une instruction à l’autre et nécessite doncun décodeur complexe (micro-code) pour leséxecuter

25

Page 26: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Architecture RISC

• Des études statistiques ont montré que lesprogrammes se contentaient le plus souventd'affectations et opérations arithmétiquessimples.

• Ainsi, 80% des traitements des langages dehaut niveau faisaient appel à seulement 20%des instructions du microprocesseur.

• D’où l’idée de réduire le jeu d’instructions àcelles le plus couramment utilisées et d’enaméliorer la vitesse de traitement.

26

Page 27: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Architecture RISC

• RISC est une architecture dans laquelle les instructionssont en nombre réduit (chargement, branchement,appel sous-programme).

• Chacune de ces instructions s’exécutent ainsi en uncycle d’horloge.

• Les accès à la mémoire s’effectue seulement à partir dedeux instructions (Exemple: Load et Store).

• Remarque : par contre, les instructions complexesdoivent être réalisées à partir de séquences basées surles instructions élémentaires, ce qui nécessite uncompilateur très évolué dans le cas de programmationen langage de haut niveau.

27

Page 28: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Comparaison CISC vs RISC

• Si on diminue le nombre d'instructions, oncrée des instructions complexes (CISC) quinécessitent plus de cycles pour être décodées

• Si on diminue le nombre de cycles parinstruction, on crée des instructions simples(RISC) mais on augmente alors le nombred'instructions nécessaires pour réaliser lemême traitement.

28

Page 29: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Comparaison CISC vs RISC

29

Page 30: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Comparaison CISC vs RISC

• Aujourd’hui le « pur » RISC à évolué on trouvedans ces architectures des instructionscomplexes

• On trouve des architectures mixtes à noyauRISC et extension CISC

• L’évolution des technologies définira etimposera des compromis permettant d’allervers des machines plus efficaces

30

Page 31: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Le parallélisme

D’autres approches, améliorant lesperformances d’un microprocesseur, sontpossibles, elles portent sur la parallélisation desopérations (faire plusieurs choses à la fois):

• Au niveau des instructions

• Au niveau des processeurs

31

Page 32: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Le parallélisme des instructions• Un programme informatique est un ensemble d'instructions exécutées par

un processeur.

• Chaque instruction nécessite un à plusieurs cycles d'horloge,

• Le microprocesseur séquentiel exécute l'instruction suivante lorsqu'il aterminé l'instruction en cours. Donc, si l’instruction demande la lecturedes variables depuis la MC, le CPU ne fait rien dans ce temps d’attentedes variables. Pour remédier à ce problème de chômage de CPU, unesolution est de paralléliser l’exécution des instructions

• Dans le cas du parallélisme d'instructions, le microprocesseur pourratraiter plusieurs instructions dans le même cycle d'horloge, à condition dene pas utiliser simultanément une même ressource interne (variables,registres, …..).

• Autrement dit, le processeur exécute, en parallèle, des instructions qui sesuivent, et ne sont pas dépendantes l'une de l'autre.

32

Page 33: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Le parallélisme des instructions

• Principe : l’exécution d’une instruction est décomposéeen une succession d’étapes et chaque étapecorrespond à l’utilisation d’une des fonctions dumicroprocesseur.

• Le cycle d’exécution d’une instruction est composée de 4 étapes: 1. Recherche de l’instruction ( PC, R@, MC, RD, RI)2. décodage de l’instruction (décodeur d’instruction)3. Exécution (unité de traitement)4. sauvegarde des résultats

• Lorsqu’une instruction se trouve dans l’une des étapes,les composants associés aux autres étapes ne sont pasutilisés.

33

Page 34: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Exemple du modèle classique (CPU séquentiel)

34

Page 35: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Parallélisme des instruction (architecture pipeline)

• Le fonctionnement d’un microprocesseursimple (séquentiel) n’est donc pas efficace.

• L’architecture pipeline (en file) permetd’améliorer l’efficacité du microprocesseur.

• Principe: lorsque la première étape del’exécution d’une instruction est achevée,l’instruction entre dans la seconde étape deson exécution et la première ètape del’exécution de l’instruction suivante débute.

35

Page 36: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Exemple du modèle pipeliné

36

Page 37: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Parallélisme des instruction (architecture pipeline)

• Il peut donc y avoir une instruction en coursd’exécution dans chacune des étapes et chacun descomposants du microprocesseur peut être utilisé àchaque cycle d’horloge.

• L’efficacité est maximale. Le temps d’exécution d’uneinstruction n’est pas réduit mais le débit d’exécutiondes instructions est considérablement augmenté.

• Une machine pipeline se caractérise par le nombred’étapes utilisées pour l’exécution d’une instruction, onappelle aussi ce nombre d’étapes le nombre d’étagesdu pipeline

37

Page 38: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Gain en performance• Dans l’exemple précédant, la machine débute l’exécution d’une

instruction à chaque cycle et le pipeline est pleinement occupé àpartir du quatrième cycle

• Le gain obtenu dépend donc du nombre d’étages du pipeline

• Pour exécuter n instructions, chaque instruction s’exécute en kcycles d’horloge, il faut : n*k cycles d’horloge pour une exécutionséquentielle

– voir exemple: 4 étages, 1 cycle par étage, 3 instructions : tempsexécution : 4(cycles) * 3(instr)=12 cycles,

• Avec un pipeline de k étages et k cycles d’horloge pour exécuter lapremière instruction puis n-1 cycles pour les n-1 instructionssuivantes :

– voir exemple: 4 étages, 1 cycle par étage, 3 instructions : tempsexécution : 4(cycles 1er instr.) +1(cycle 2é instr.) + 1(cycle 3é instr.) =6cycles,

• Le gain obtenu est donc de : G=(n*k)/k+n-1 38

Page 39: Electroniques des composants et systèmesdbenmerzoug.e-monsite.com/medias/files/composant-chap4.pdf · 2017-01-07 · •Un microprocesseur est un circuit intégré complexe ... Schéma

Les limites

• La mise en place d’un pipeline pose plusieursproblèmes.

• plus le pipeline est long, plus le nombre de cas où iln’est pas possible d’atteindre la performance maximaleest élevé.

• Les principaux cas où la performance d’un processeurpipeliné peut être dégradé ;1. Les instructions ont besoins d’une même ressource de

processeur (conflit de dépendance),2. lorsqu’une instruction produit un résultat et que

l’instruction suivante utilise ce résultat avant qu’il n’ait puêtre écrit dans un registre,

39