Vous êtes sur la page 1sur 107

Université Hassan II Aïn Chock

Ecole Nationale Supérieure d'Electricité et de


Mécanique Casablanca

Département Génie Électrique


deuxième année Filière GESET

Support du cours
Enseignant Intervenant :
Pr Ahmed ERRAMI
Architecture
des ordinateurs Cours :
Architecture des ordinateurs

Semestre S4

Année scolaire : 2023/2024


1
Plan du cours

• 1- Concepts de base

• 2- Architecture interne et principe de fonctionnement des microprocesseurs

• 3- Les mécanismes qui influent sur les performances des microprocesseurs

• 4- Les BUS d’ordinateurs

• 5- Structure et gestion de la mémoire des ordinateurs

• 6 – Mécanismes de Gestion des périphériques

2
1- Concepts de base

3
Concepts de base sur les ordinateurs et leur architecture

Qu’entend-t-on par architecture d’un ordinateur ?


L'architecture d’un ordinateur représente l’organisation de ses différentes unités et de
leurs interconnexions.
Le choix d'une architecture est toujours le résultat d'un compromis :
➢ entre performances et coûts
➢ entre efficacité et facilité de construction
➢ entre performances d'ensemble et facilité de programmation

4
Classification des différents types d’ordinateurs

Ordinateurs embarqués Ordinateurs personnels

Les moyens systèmes : midrange

5
Classification des différents types d’ordinateurs

Les stations de travail

6
Classification des différents types d’ordinateurs

Les mainframes, ou serveurs centraux les superordinateurs

7
Interaction entre le matériel et le logiciel

8
Classification des types d’information

9
Les types de données fondamentaux en C

10
Représentation des nombres entiers naturels

11
Table de
correspondence

12
Codage des nombres signés
Pour représenter les nombres signés, on utilise le codage du signe et la technique du complément à
deux.

• Le complément à deux d’un nombre est obtenu en rajoutant une unité au complément à un.
(Le complément à un est obtenu par substitution des ‘0’ par des ‘1’ et des ‘1’ par des ‘0’.)
▪ La valeur du signe est indiquée par le bit de poids fort ( le bits MSB)
o MSB = 0 : signe positif
o MSB = 1 : signe négatif
→ Si le nombre est positif, son MSB = 0 et les autres bits donnent la valeur en binaire du nombre
→ Si le nombre est négatif, son MSB = 1 et les autres bits donnent la valeur en complément à deux du nombre.

Attention au choix du type lors


des calculs sur les nombres
entiers

13
14
Représentation des nombres réels :
Technique de la virgule fixe

15
Représentation des nombres réels :
Technique de la virgule Flottante

16
17
18
Représentation des caractères

Les caractères sont des données non numériques : il n’y a pas de sens à additionner ou multiplier
deux caractères. Par contre, il est souvent utile de comparer deux caractères, par exemple pour les
trier dans l’ordre alphabétique.

Les caractères, appelés symboles alphanumériques, incluent les lettres majuscules et minuscules, les
symboles de ponctuation (& ~ , . ; # " - etc...), et les chiffres.

Un texte, ou chaîne de caractères, sera représenté comme une suite de caractères.

Le codage des caractères est fait par une table de correspondance indiquant la configuration binaire
représentant chaque caractère.

Le code ASCII ( American Standard Code for Information Interchange) étant le système de codage le
plus utilisé à cet effet par les systèmes de traitement de l ’information.

19
Le Code ASCII

20
2- Architecture interne et
principe de fonctionnement des
microprocesseurs

21
Modèle des Architectures de base des ordinateurs:

Modèle de Von Neumann

22
Modèle des Architectures de base des ordinateurs:

Modèle de Harvard

23
Modèles des Architectures évoluées des ordinateurs

microprocesseur

Chipset
24
Etude du microprocesseur

Un microprocesseur est un circuit intégré numérique, programmable, capable d’exécuter


automatiquement un programme comportant un ensemble d’opérations élémentaires qu’on appelle
des instructions.

Un microprocesseur doit assurer, au minimum, les fonctions suivantes:

• opérations arithmétiques et logiques


• décodage et séquencement des instructions
• transfert de données
• possibilité de tests logiques et branchements
25
Structure interne d’un microprocesseur
Le microprocesseur est constitué :
➢ d’une unité de commande ( UC ) qui gère les codes
➢ d’une unité de traitement qui exécute les instructions.
➢ Ces deux unités communiquent avec le mémoire via des bus
Structure d'une instruction

Une instruction comporte toujours un code opératoire (opcode) qui définit la nature de l'opération à
effectuer et très souvent des données qui portent le nom d'opérandes ( operands, data).

Exemples d’instructions Instruction

Opérande de l’instruction mov ax


Opcode de l’instruction mov ax

Instruction

Opcode de l’instruction inc ax


Exemple de programme en langage machine

28
Principe d’exécution d’une instruction
sur un modèle simplifié de microprocesseur

Les trois phases d’exécution d’une instruction:

Phase 1: Recherche de l'instruction à traiter

Phase 2 : Décodage de l’instruction et recherche de l'opérande


29
Phase 3 : Exécution de l'instruction
Les trois phases d’exécution d’une instruction
Phase 1: Recherche de l'instruction à traiter

1. Le PC contient l'adresse de l'instruction suivante du programme. Cette valeur est placée sur le bus
d'adresses par l'unité de commande qui émet un ordre de lecture.
2. Au bout d'un certain temps (temps d'accès à la mémoire), le contenu de la case mémoire
sélectionnée est disponible sur le bus des données.
3. L'instruction est stockée dans le registre instruction du processeur.

30
Les trois phases d’exécution d’une instruction
Phase 2 : Décodage de l’instruction et recherche de l'opérande
Le registre d'instruction contient maintenant le premier mot de l'instruction qui peut être codée sur
plusieurs mots. Ce premier mot contient le code opératoire qui définit la nature de l'opération à
effectuer (addition, rotation,...) et le nombre de mots de l'instruction.
1. L'unité de commande transforme l'instruction en une suite de commandes élémentaires
nécessaires au traitement de l'instruction.
2. Si l'instruction nécessite une donnée en provenance de la mémoire, l'unité de commande
récupère sa valeur sur le bus de données.
3. L’opérande est stocké dans un registre.

31
Les trois phases d’exécution d’une instruction

Phase 3 : Exécution de l'instruction


1. L’UAL réalisant l'instruction.
2. Les drapeaux sont positionnés (registre d'état Z,C,…).
3. L'unité de commande positionne le PC pour l'instruction suivante.

32
Principe d’un microprocesseur

Un microprocesseur est une micromachine dotée de ressources nécessaires


lui permettant d’exécuter un programme.

Cette micromachine se compose de deux parties :

❑un chemin de données


❑un bloc de commande

33
Principe d’un microprocesseur
chemin de données

Bloc de commande

34
Principe d’un microprocesseur
CHEMIN DE DONNEES :

Le chemin de données correspond à l’ensemble des composants et moyens de communication


empruntées par l’information au cours de son traitement : registres, accumulateurs, unité de
traitement arithmétique et logique, BUS, .....

BLOC DE COMMANDE :

Le bloc de commande comprend l’ensemble des unités qui permettant l’exécution de


l’instruction :

– une mémoire de commande qui contient l’ensemble des micro-instructions

– un registre d’adresse MCO qui représente le micro-compteur ordinal

– un registre de commande RMI qui représente le registre micro-instruction

– un générateur d’horloges

– Un micro-séquenceur qui définit l’adresse de la prochaine micro-instruction à exécuter


35
Format d’une micro-instruction :
La figure ci-dessous représente la structure de cette micro-instruction. Chaque micro-
instruction comprend plusieurs parties appelées champs. Chaque champ de la micro-
instruction est associé à une fonction :

• lecture de registre
• écriture de registre
• branchement conditionnel
• adresse de branchement

36
EXEMPLE DE MICROMACHINE SIMPLE
( architecture RISC)
A[31:0]

Le processeur ARM7TDMI Address Register Address


Incrementer
(Acorn RISC Machine)

PC bus
PC

REGISTER
BANK

ALU bus

Control Lines
INSTRUCCTION
DECODER
Multiplier

A bus

B bus
SHIFT

A.L.U.
Instruction Reg.

Thumb to
ARM
Write Data Reg. Read Data Reg.
translator

D[31:0] 37
3- Les mécanismes qui influent sur les
performances des microprocesseurs

38
Exemples de paramètres d’un processeur

39
Evolution de la technologie des
microprocesseurs

40
Loi de Moore (1965)
Nombre de transistors (des microprocesseurs) sur une puce de silicium double
tous les deux ans.

41
Evolution de la technologie des
microprocesseurs

Le microprocesseur est l’un des éléments les plus déterminants dans


le fonctionnement d’une machine. Du choix du microprocesseur va
dépendre le niveau de performance de l’ensemble de la machine.

Ce choix dépend de plusieurs critères

42
Notion d’architecture RISC et CISC

Actuellement l’architecture des microprocesseurs se composent de deux grandes


familles :

➢ Architecture CISC (Complex Instruction Set Computer)


➢ Architecture RISC (Reduced Instruction Set Computer )

43
Mécanisme du pipeline

Exemple : Fonctionnement d’un pipeline à 5 étages.

Sans
Pipeline

temps

Avec
Pipeline

temps

44
Mécanisme du pipeline

Exemple : Le pipeline à 5 étages des processeurs RISC ARM9


Performance du pipeline
Gain de performance

Le gain obtenu dépend du nombre d’étages du pipeline.


En effet, pour exécuter n instructions, en supposant que chaque instruction s’exécute en k cycles d’horloge ( k étages) , il faut :
▪ nk cycles d’horloge pour une exécution séquentielle.
▪ k cycles d’horloge pour exécuter la première instruction puis n-1 cycles pour les n-1 instructions suivantes si on utilise un pipeline de k
étages Le gain obtenu est donc de :

46
RUPTURE DE SEQUENCE DANS UN PIPELINE

N° instruction 1 2 3 4 5 6 7 8 9 10 11 12 13
Recherche des instructions 1 2 B 4 5 6 7 8 9

Décodage des instructions 1 2 B 4 5 6 7 8

Calcul des adresses 1 2 B 4 5 6 7

Recherche des opérandes 1 2 B 4 5 6

Exécution de l’instruction 1 2 B 4 5

L’instruction B correspond à un branchement conditionnel.

47
Technologie Super scalaire
• Cette technologie consiste à faire travailler plusieurs unités d’exécution en parallèle dans le
processeur.

48
Calcul en mode scalaire vs calcul en mode vectoriel

49
Mécanisme du cache mémoire

• La mémoire cache est une mémoire ultra rapide destinée à éviter les états d'attente (de 6 à
15 ns de temps d'accès contre 60 pour la mémoire vive). Contrairement à la mémoire vive,
la mémoire cache (SRAM pour Static RAM) conserve les données qui y sont inscrites. Elle
n'a donc pas besoin de rafraîchissement, ce qui évite les états d'attente du processeur.

• Les données qui transitent entre la mémoire vive et le processeur sont stockées dans la
mémoire cache qui fait en quelque sorte office de tampon. Si le processeur a de nouveau
besoin de ces données et cela arrive souvent qu'il fasse deux fois appel aux mêmes, il les
obtiendra beaucoup plus rapidement.

50
Fonctionnement du cache
• Le cache est un mécanisme purement matériel (HARDWARE) qui sera donc totalement
transparent pour le logiciel.

• Le principe du cache consiste à faire associer à chaque emplacement dans le cache une
adresse dans la mémoire centrale. Il existe trois types d’associations possibles.

➢ Association directe (cache direct):


A toute adresse physique peut être associée une entrée unique dans le cache.

51
Fonctionnement du cache

➢ Association totale (cache associatif) :

Elle consiste à permettre à n’importe quelle adresse physique d’occuper n’importe


quelle entrée dans le cache.

52
Fonctionnement du cache

➢ Association partielle (cache associatif à N voies )


Elle consiste à diviser le cache en plusieurs groupes opérant chacun de façon
directe en parallèle. A chaque adresse physique, pourront correspondre plusieurs
entrées dans le cache.

53
Les trois niveaux de la mémoire cache
La mémoire cache du microprocesseur i7 intel
Structure du cache des microprocesseurs ARM

56
Mécanisme du DMA
• Avec un contrôleur d’entrée sortie qui peut accéder directement à la mémoire
principale, le passage des données par le processeur est supprimé.

• On parle alors de la technique d’accès direct à la mémoire :


( DMA : Direct Memory Access )
• La gestion de ce processus est assurée par un contrôleur spécialisé :
Contrôleur DMA.
• Architecture interne d’un contrôleur DMA : un contrôleur DMA offre aux circuits
d’entrées sorties plusieurs canaux de communication ( canaux DMA ).

57
Mécanismes de gestion du DMA

58
Les architectures parallèles

Plusieurs Niveaux de parallélisme :

➢ Parallélisme au niveau du circuit


➢ Coprocesseur
➢ Multiprocesseur
➢ Multi-ordinateur
➢ Grille

59
Parallélisme au niveau circuit : technologie multi cœur

• Mettre plusieurs cœurs de processeurs sur la même puce


• Utilité : faire du multiprocesseur mais avec un seul circuit
• Possibilité de multiprocesseur sur des cartes mères ayant un seul support physique de
processeur
• Au niveau logiciel, permet l’exécution de threads en parallèle
• Plusieurs applications en parallèle

60
4- Les BUS d’ordinateurs

61
Les BUS d’ordinateurs

Définitions

• Un bus est une structure d’interconnexion raccordant plusieurs circuits ou unités d’un
ordinateur.

• Dans une machine, on trouve plusieurs niveaux de bus :

o Bus interne ( Bus processor )

o Bus local

o Bus global ou Bus système

o Bus spécialisés ( Bus d’entrée sortie )

o Bus inter-ordinateur ( ou réseau )

62
Architecture autour des BUS d’une carte mère d’ordinateur

63
BUS PCI

64
USB : Universal Serial Bus

Le USB a été conçu afin de remplacer le port série


Il existe trois normes USB principales: USB1.0 (1998) , USB2.0 (2000) et USB3.0 (

L’USB1 supporte 2 vitesses de communication:

➢ Basse vitesse à 1.5 Mb/s pour les appareils comme les claviers, souris, joystick
➢ Pleine vitesse 12 Mb/s pour des appareils à gros débits comme les modems et téléphones.

L’USB2 supporte la vitesses une communication de 480 Mb/s pour des appareils multimédia à très
haut débit comme les caméscope (une caméra numérique).

L’USB3 supporte la vitesses une communication de 4 Gb/s

65
Bus USB : description matérielle

66
5- La mémoire des ordinateurs

67
Hiérarchie de la mémoire

68
Classification des boîtiers mémoire

69
Organisation interne d’un circuit mémoire

La mémoire est organisée en blocs de un ou plusieurs tableaux de bits de L lignes


et C colonnes dont l’accès est piloté par un contrôleur qui sert d’interface entre le
microprocesseur et la mémoire

70
71
Problème du temps d’accès à la mémoire

72
Exemples de barrettes mémoire DRAM :

73
Utilisation de la mémoire morte

Ce type de mémoire permet notamment de conserver les données nécessaires au démarrage


de l'ordinateur En effet, ces informations ne peuvent être stockées sur le disque dur étant
donné que les paramètres du disque (essentiels à son initialisation) font partie de ces données
vitales à l'amorçage.

74
Les mémoires mortes dans un ordinateur
Différentes mémoires de type ROM contiennent des données essentielles au
démarrage, c'est-à-dire:

➢ Le BIOS est un programme permettant de piloter les interfaces d'entrée-sortie principales du système,
d'où le nom de BIOS ROM donné parfois à la puce de mémoire morte de la carte-mère qui l'héberge.

➢ Le chargeur d'amorce: un programme permettant de charger le système d'exploitation en mémoire


(vive) et de le lancer. Celui-ci cherche généralement le système d'exploitation sur le lecteur de
disquette, puis sur le disque dur, ce qui permet de pouvoir lancer le système d'exploitation à partir
d'une disquette système en cas de dysfonctionnement du système installé sur le disque dur

➢ Le Setup CMOS, c'est l'écran disponible à l'allumage de l'ordinateur permettant de modifier les
paramètres du système (souvent appelé BIOS à tort...)

➢ Le Power-On Self Test (POST), programme exécuté automatiquement à l’amorçage du système


permettant de faire un test du système (c'est pour cela par exemple que vous voyez le système
"compter" la RAM au démarrage)

Etant donné que les ROM sont beaucoup plus lentes que les mémoires de types RAM (une ROM a un temps
d'accès de l'ordre de 150 ns tandis qu'une mémoire de type SDRAM a un temps d'accès d'environ 10 ns), les
instructions contenues dans la ROM sont parfois copiées en RAM au démarrage, on parle alors de shadowing (en
français cela pourrait se traduire par ombrage, mais on parle généralement de mémoire fantôme). 75
Mécanisme de Gestion de la mémoire centrale
( concept de la mémoire virtuelle)

Objectifs de la gestion mémoire:

• support de la mémoire virtuelle


• allocation dynamique de la mémoire
• traduction des adresses logiques en adresses physiques
• implantation de mécanismes de sécurité et de protection

Mémoire Virtuelle

76
Méthodes de l’Allocation mémoire

Allocation statique

Allocation dynamique

77
Adresse logique et adresse physique

Un emplacement de l’espace adressable du microprocesseur est repéré par


une adresse logique ( ou adresse virtuelle ), alors qu’on accède à un
emplacement de la mémoire physique en le désignant par une adresse
physique ou adresse réelle

78
Mécanismes de traduction des adresses

Le mécanisme de traduction des adresses logiques en adresses physiques peut


faire appel soit :

➢ à la technique de pagination ( cas d’un espace adressable linéaire )

➢ à la technique de segmentation ( cas d’un espace adressable segmenté )

79
Mécanismes de pagination

80
Mécanismes de pagination

81
Mécanismes de segmentation

82
Mécanismes de segmentation paginée

83
Indicateurs d’état et de protection des pages mémoire

Les indicateurs d’état fournissent les informations suivantes :

• la validité ou la présence du segment en mémoire physique


• la modification qui signale si l’on a écrit dans le segment
• l’utilisation qui indique si l’on a accédé au segment

Les indicateurs de protection définissent les droits suivants :

• tout accès est interdit


• seule l’exécution du code est autorisée
• seule la lecture est admise
• l’exécution et l’écriture sont possibles
• l’exécution, la lecture et l’écriture sont admises

84
Utilisation de la notion de mémoire virtuelle

85
Utilisation de la notion de mémoire virtuelle

86
Utilisation de la notion de mémoire virtuelle

87
Paramétrage de la mémoire virtuelle
( fichier d’échange)

88
6- Mécanisme de Gestion des
périphériques

89
Les systèmes d’entrées sorties

• Les entrées sorties d’un ordinateur sont considérées comme


des périphériques qui permettent la communication avec ‘ le
monde extérieur ‘ : ( écran, clavier, souris, mémoire de masse,
imprimante, etc ….)

• Ces périphériques sont commandés par le microprocesseur via


des circuits appelés contrôleurs de périphériques.

• Cette commande est réalisée en programmant un ensemble de


registres internes au contrôleur de périphériques.

90
Classification des entrées sorties

On peut classer les registres internes au contrôleur de périphériques en


trois familles :

➢ les registres de données par lesquels transitent les données qui

circulent entre le microprocesseur et le périphérique.

➢ les registres de commande qui permettent au microprocesseur de

configurer le mode de fonctionnement du contrôleur

➢ les registres d’état à travers lesquels le microprocesseur dispose de

l’état actuel du périphérique ( libre, occupée, en attente d’information,

disposant d’une information, etc …. ) 91


Exemple de contrôleur de périphériques

92
Classification des périphériques
en fonction de la vitesse de transmission de données

On peut classer les périphériques en trois familles :

➢ les périphériques lents : moins d’un changement d’état par seconde


▪ affichage lumineux
▪ commutateurs
▪ relais

➢ les périphériques moyenne vitesse : de 1 à 10.000 bits de données par seconde


▪ clavier
▪ souris
▪ imprimante

➢ les périphériques rapides : plus de 10.000 bits de données par seconde


▪ mémoire de masse
▪ écran vidéo
▪ audio
93
Classification des périphériques
en fonction du format des données échangées
On peut aussi classer les périphériques en fonction du format des données

échangées entre le périphérique et le contrôleur associé à ce périphérique.

Il existe deux types type de format de données :

➢ format de données sous forme série : la communication est réalisée bit par

bit ( communication avec un réseau local, avec une souris, avec un

périphérique USB, etc …. )

➢ format de données sous forme parallèle : la communication est réalisée en

transmettant plusieurs bits simultanément

( communication avec un disque dur, un lecteur de CDROM, etc…. ).


94
Choix du circuit d’entrée sortie
en fonction du périphérique

Les contrôleurs de périphériques utilisent des types d’interfaces qui dépendent à la fois de la

vitesse de communication avec le périphérique et le format des données.

➢ interface des périphériques lents :

• les données d’entrée provenant du périphérique n’ont


pas besoin d’être ‘latchées’
• les données de sortie émises vers le périphérique
doivent être ‘latchées’
• un unique port peut gérer plusieurs périphériques par
utilisation des techniques de multiplexage

95
Choix du circuit d’entrée sortie en fonction
du périphérique

➢ interface des périphériques moyenne ou haute vitesse :


l’échange de données avec ce type de périphériques
nécessite une synchronisation. On peut utiliser une des
deux techniques suivantes de synchronisation :

• une synchronisation sans signal d’horloge basée sur la


technique appelée poignée de main ‘ handshake ‘

• une technique de synchronisation avec un signal


d’horloge

96
Interaction processeur-périphériques

Un périphérique permet à l’utilisateur d’intéragir avec l’ordinateur. – clavier, souris….


• Les actions faites sur un périphérique donnent lieu à des événements. – appuyer sur
une touche du clavier
• Un événement doit déclencher une réaction de l’ordinateur (du processeur) – visualiser
sur l’écran le caractère correspondant à la touche appuyée.
• Le processeur ne sait pas quand un périphérique génère un événement.

Première solution : attente active (polling) :


o Le processeur contrôle périodiquement si le périphérique a généré un événement.
o Problème : le processeur perd son temps à attendre.

97
Deuxième solution : Utilisation des interruptions
Une interruption permet d'arrêter un programme, en cours d'exécution sur le
processeur, pour que celui-ci traite une tâche considérée comme plus urgente. Quand
cette tâche est terminée, le processus interrompu doit alors être repris en l'état où il
avait été laissé.

Les interruptions permettent donc à des événements, en général externes au


microprocesseur, tels que coupures d'alimentation, alarmes, périphériques prêts à
réémettre ou à recevoir des données..., d'attirer immédiatement l'attention de l'unité
centrale.

Dans la mesure où elle est acceptée par le processeur, l'interruption permet ainsi au
circuit périphérique ou au logiciel de suspendre le fonctionnement de ce
microprocesseur d'une manière rationnelle et de lui demander l'exécution d'un sous-
programme de service, dit également sous-programme d'interruption.

98
Types d’interruptions

Une interruption peut être provoquée de diverses manières

• par un périphérique, l’interruption est alors dite externe et matérielle,

• par un programme, l’interruption est alors externe et logicielle,

• par le processeur lui-même lors de certains événements exceptionnels,

l'interruption est alors dite interne et appelée exception ( Trap ).

99
Mécanisme de scrutation des périphériques ( sans interruption)

Programme principal

Sous programme de gestion du


controleur d’E/S

100
Mécanisme de scrutation des périphériques ( avec interruption)

101
Méthodes de Reconnaissance des interruptions

Il existe divers moyens physiques pour déterminer la source d'une


interruption - aussi notée IRQ (Interruption ReQuest) - et donc y répondre de
manière appropriée:
➢ Interruption multiniveau

➢ Interruption ligne unique

➢ Interruption vectorisée

102
Traitement des interruptions
Actions réalisées par des circuits logiques

1. Le contrôleur de gestion du terminal active un signal de demande d'interruption sur le bus du système afin
d'entreprendre une séquence d'interruption.

2. Dès que l'UC est prête à répondre à la demande, elle active à son tour un signal du bus signifiant
l'acquittement de la demande d'interruption.

3. Lorsque le contrôleur du terminal reçoit l'acquittement de sa demande d'interruption, il place sur le bus données
un nombre particulier destiné à permettre son identification. Ce nombre est appelé vecteur d'interruption.

4. L’UC enregistre le vecteur d'interruption dans un tampon interne.

5. L’UC range dans la pile le compteur ordinal et le registre d'état courant.

6. L'UC charge une nouvelle valeur dans le compteur ordinal à partir du vecteur d'interruption fourni par le terminal
(en mode d'adressage indexé). Le vecteur d'interruption agit comme un index dans une table située en mémoire à
une adresse fixe et connue. Supposons que le compteur ordinal contienne par exemple quatre octets, alors le
vecteur d'interruption n correspond à l'adresse 4n. Cette fois le compteur ordinal pointe vers la routine de
traitement de l'interruption associée au terminal ayant généré la demande.

103
Traitement des interruptions
Actions réalisées par programme

7. La première phase de la routine d'interruption consiste à sauvegarder l'état courant des registres de l'UC
dans la pile pour les restituer à la fin de la routine d'interruption.

8. Chaque vecteur d'interruption étant la plupart du temps partagé par un ensemble de terminaux de même
type, le processeur ne connaît toujours pas le terminal qui a causé la demande. Pour le savoir il doit lire les
registres d'état des terminaux partageant le même vecteur.

9. Des informations complémentaires relatives à la demande d'interruption sont obtenues en examinant les
bits du registre d'état du terminal.

10. S'il s'agit d'une erreur ou d'une anomalie de fonctionnement dans la phase de transfert de données, par
exemple, elle peut être traitée à cet endroit.

11. Si nécessaire, une information particulière est fournie au contrôleur ou au terminal pour lui signifier que la
routine d'interruption est terminée. C'est le cas par exemple avec le circuit d'E/S 8259A.

104
Principe d’un contrôleur d’interruptions

105
Exemple de déroulement d’une suite d’interruptions à
plusieurs niveaux de priorité :

106

Vous aimerez peut-être aussi