Vous êtes sur la page 1sur 23

Architecture des ordinateurs -

Aperçu

1
Modèle en couches
6 Programmes d'application
(Traitement de texte, PAO, Jeux, …)
5 Langages de programmation
(Fortran, Cobol, C, C++, Java, …)
4 Langage assembleur
(Langage natif symbolique de la machine)
3 Noyau du système d'exploitation
(Gestion des taches, des ressources : mémoire, I/Os,…)
2 Langage machine : jeu d’instructions
(Langage natif du processeur)
1 Langage de microprogrammation

0 Logique numérique
(Couche matérielle : circuits logiques, électroniques)

2
CPU (Central Processing Unit)

3
 Les registres :
Sont des petites mémoires, dont la capacité peut varier d’un à plusieurs octets
.On trouve trois styles de registres :
qui stockent le résultat de l’instruction traitée ;
qui pointent vers une adresse dans la mémoire ;
qui enregistrent le code instruction;

 Le décodeur: décode l’instruction (code opération + opérande)

 Le séquenceur :(Le circuit de commandes) :


A pour but de mettre en place chaque section du microprocesseur en service à
tour de rôle .

 L’unité arithmétique et logique (UAL) :


L’UAL est chargée d’exécuter les opérations arithmétiques et logiques du
programme.

4
CPU (Central Processing Unit)

5
Les Registres architecturaux
 Registres spécialisés
 Généralement non disponibles aux programmes de l’usager
 Le CPU en utilise pour contrôler ses opérations
 Le SE en utilise pour contrôler l’exécution des programmes

 Registres généraux
 Disponibles au SE et programmes de l’usager
 Visibles seulement en langage machine ou assembleur
 Contiennent données, adresses etc.
 Registre AX, BX, CX, et DX.

6
Exemples de Registres spécialisés
 Le compteur d’instruction (PC ou CO)
 Contient l’adresse de la prochaine instruction à exécuter
 Le registre d’instruction (IR)
 Contient l’instruction en cours d’exécution
 Le registre d'état (PSW) (bits de retenus, overflow,
signe,...),
 bit d’interruption activé/désactivé
 bit du mode d’exécution superviseur/usager
 bornes de mémoire du programme en exec.
 Registres de statut des périphériques

7
CPU (Central Processing Unit)

8
Catégories d’instruction d’un
CPU
 Les instructions arithmétiques
 Les instructions logiques
 Les instructions de manipulation de chaines de caractères
 Les instructions de test et de contrôle
 Les instructions de gestion de l'énergie
 Et autres: générer des nombres aléatoires, instruction
pour la cryptographie, instructions spéciaux au SE
moderne...
 Chaque CPU possède son propre Jeu d’instruction

9
Jeu
d’instruction
&
Code
Assembleur

BENHAMZA 10
Jeux d’instruction
 RISC ( Reduced instruction set comupter)
 CISC ( Complex instruction set computer)

 Classer les propositions suivantes selon le jeu


d’architecture qui correspond le mieux:
 Jeu d’instruction plus riche
 De nombreux circuits
 Les programmes sont plus long,
 Architecture simple a concevoir
 Quelques instructions sont rarement utilisées...

11
CPU (Central Processing Unit)

12
Séquenceurs
 Responsable de coordination entre les différents
composants du CPU afin d’exécuter une instruction.
 Au moins deux types de séquenceurs existent:
 Séquenceur câblé.
 Séquenceur microprogrammé.
 Commande l’exécution de plusieurs micro-
instructions afin de réaliser le comportement désiré
d’une instruction donné.
 Le nombre de micro-instruction (Cycle d’horloge)
nécessaire dépend de l’instruction elle même.
BENHAMZA 13
Le cycle d’instruction de base

• Le CPU extrait l’instruction de la mémoire.

• Ensuite le CPU décode puis exécute cette instruction

• Le compteur d’instruction (PC) contient l’adresse de la prochaine


instruction à extraire

• Le registre PC est incrémenté automatiquement après chaque


extraction 14
Bus: Adresse, Donné et
Contrôle Mémoire Centrale

Données

Adresse

Contrôle

Registre Registre
adresse données

Processeur

DMA
Requêtes DMA Contrôleur de
périphériques
Périphériques
Unité de Unité de
contrôle contrôle

DMA OK

15
CPU/Périphérique: Schéma
d’interconnexion
 Un SI est constitué d’un
CPU et d’un certain
nombre de contrôleurs
de périphériques
connectés par un bus
commun fournissant
l’accès à la mémoire.

BENHAMZA 16
CPU/Périphérique: Technique de
Communication
 Polling (E/S programmée, interrogation, scrutation):
le programme interroge périodiquement les regs statut
et détermine le statut de l ’unité E/S.

 Interruption: le CPU est interrompu quand un


événement particulier se produit (fin d ’E/S, erreur...)
 les interruptions peuvent être inhibées pendant
l ’exécution de certaines parties critiques du programme
(une instruction assembleur « cli » désactive la prise en
charge des interruptions, « sti » les réactives).

BENHAMZA 17
Les interruptions:
 Les interruptions sont des signaux, « matériel » ou
« logiciel », « demandant », ou parfois« obligeant » le
processeur de s'interrompre, pour prendre en charge
un autre évènement « interne » ou « externe ».
 On décompte généralement 256 interruptions dans la
plupart des systèmes actuels, toutes pouvant requérir
un moment d'attention de la part du système.

18
Sources des interruptions
 Deux types
d'interruption existent : Horloge

 les interruptions Processeur

matérielles, et B

 les interruptions IRQ 0


Clavier

logicielles. IRQ 8

IRQ nn
Programme
en erreur

Appel de fonction

19
Interruptions matérielles
 Il existe en standard 16 interruptions matérielles :
les IRQ, ou Interruption ReQuest.

BENHAMZA 20
Interruptions logicielles
 Une interruption logicielle peut être provoquée par
le programme qu'exécute le microprocesseur, ou bien
par une erreur dans le programme (exception)
 IRQ1 (clavier) 09h: Lecture du clavier

BENHAMZA 21
Un vecteur d'interruption est un tableau, ou toutes ces
cellules sont des adresses vers des fonctions
d'interruption.

L'emplacement de ce tableau se trouve au début de la


mémoire à l'adresse 0.

Supposons, que le processeur exécute l'interruption int


21h, ceci est équivalent à retouver le contenue de
tab_vec_interrupt[21], où ce dernier contient une
adresse d’un programme spécifique.

Si tab[21] contient l’adresse $2234:2234, alors, le


processeur exécutera un call 2234:2234.
22
Le cycle d’instruction avec interruptions

 Après chaque instruction, si les interruptions sont habilitées,


le CPU examine s’il y a eu une interruption
 S’il n’y en a pas, il extrait la prochaine instruction du
programme
 S’il y en a, il suspend le pgm en cours et branche l’exécution à
une position fixe de mémoire (déterminée par le type
d ’interruption)
 une partie de la mémoire et réservée pour ça

23

Vous aimerez peut-être aussi