Vous êtes sur la page 1sur 22

10/23/2022

Architecture des
Ordinateurs
Chapitre 2:
Vue générale de l’ordinateur
Les Composants.

 Pr. Zine El Abidine ALAOUI ISMAILI


Ecole Nationale Supérieure d’Informatique et d’analyse des Systèmes.
Université Mohammed V, Rabat, Maroc

Plan & Références


 Introduction
 La hiérarchie au niveau de l’ordinateur
 Les modèles de Von Neumann
 Les composants d’un ordinateur
 Structures d'interconnexion
 Schéma synoptique d’un ordinateur
 Conclusion

1
10/23/2022

Introduction
 Au niveau supérieur, un ordinateur se compose:
— unité centrale de traitement,
— de mémoire,
— et de composants d'E / S.
 Ces composants sont interconnectés d'une certaine façon pour
réaliser la fonction de base de l'ordinateur, qui est d'exécuter des
programmes.
 On peut caractériser un système informatique en décrivant
— (1) le comportement externe de chaque composant, c'est-à-dire les
données et signaux de contrôle qu'il échange avec d'autres composants
— (2) la structure d'interconnexion et les commandes nécessaires pour gérer
l'utilisation de la structure d'interconnexion.

La hiérarchie au niveau de l’ordinateur


 La figure montre les couches communément acceptées
représentant les machines virtuelles abstraites.

2
10/23/2022

La hiérarchie au niveau de l’ordinateur


 On peut imaginer la machine à construire à partir d'une hiérarchie
de niveaux, dans laquelle chaque niveau a une fonction spécifique.
 Chaque niveau exécute son propre ensemble d'instructions
particulier, faisant appel aux machines de niveaux inférieurs pour
effectuer les tâches lorsque cela est nécessaire.
 En étudiant l'organisation informatique, nous verront la raison
d'être du partitionnement de la hiérarchie, ainsi que la manière
dont ces couches sont implémentées et s'interfacent les unes avec
les autres.

La hiérarchie au niveau de l’ordinateur


 La figure montre les couches communément acceptées
représentant les machines virtuelles abstraites.

3
10/23/2022

La hiérarchie au niveau de l’ordinateur


 Le niveau 6, le niveau utilisateur, est composé d'applications et est
le niveau avec lequel tout le monde est le plus familier.
— À ce niveau, nous exécutons des programmes tels que des traitements de
texte, des packages graphiques ou des jeux. Les niveaux inférieurs sont
presque invisibles depuis le niveau utilisateur.
 Le niveau 5, le niveau de langage de haut niveau, est composé de
langages tels que C, C ++, FORTRAN, Lisp, Pascal et Prolog.
— Ces langages doivent être traduits (à l'aide d'un compilateur ou d'un
interprète) dans un langage que la machine peut comprendre.
— Les langages compilés sont traduits en langage d'assemblage, puis
assemblés en code machine.
— L'utilisateur à ce niveau voit très peu des niveaux inférieurs.
– Même si un programmeur doit connaître les types de données et les instructions
disponibles pour ces types, il n'a pas besoin de savoir comment ces types sont
7 réellement implémentés.

La hiérarchie au niveau de l’ordinateur


 Le niveau 4, le niveau de langage d'assemblage, englobe un
certain type de langage d'assemblage.
 Le niveau 3, le niveau système logiciel, traite des instructions du
système d'exploitation.
— Ce niveau est responsable de la multiprogrammation, de la protection de la
mémoire, de la synchronisation des processus et de diverses autres
fonctions importantes.
 Le niveau 2, l'Instruction Set Architecture (ISA), ou niveau
machine, est constitué du langage machine reconnu par
l'architecture particulière du système informatique.

4
10/23/2022

La hiérarchie au niveau de l’ordinateur


 Le niveau 1, le niveau de contrôle, est l'endroit où une unité de
contrôle s'assure que les instructions sont décodées et exécutées
correctement et que les données sont déplacées où et quand elles
devraient être.
— L'unité de contrôle interprète les instructions machine qui lui sont
transmises, une à la fois, à partir du niveau supérieur, provoquant la
réalisation des actions requises.
— Les unités de contrôle peuvent être conçues de deux manières: elles
peuvent être câblées ou être microprogrammées.

La hiérarchie au niveau de l’ordinateur


 Le niveau 0, le niveau logique numérique, est l'endroit où nous
trouvons les composants physiques du système informatique: les
portes et les fils.
— Ce sont les blocs de construction fondamentaux, les implémentations de la
logique mathématique, qui sont communs à tous les systèmes
informatiques. Le cours sur les circuits logiques.

10

5
10/23/2022

Principe de fonctionnement d’un ordinateur


 Comment les signaux de commande doivent-ils être fournis?
— L'ensemble du programme est en fait une séquence d'étapes. A chaque
étape, une opération arithmétique ou logique est effectuée sur certaines
données.
— Pour chaque étape, un nouvel ensemble de signaux de commande est
nécessaire. Fournissons un code unique pour chaque ensemble possible de
signaux de commande, et ajoutons au matériel universel un segment qui
peut accepter un code et générer des signaux de commande (figure).
 La programmation est désormais beaucoup plus simple.
— Au lieu de recâbler le matériel pour chaque nouveau programme, tout ce
que nous avons à faire est de fournir une nouvelle séquence de codes.
— Chaque code est, en fait, une instruction, et une partie du matériel
interprète chaque instruction et génère des signaux de commande.

11

Principe de fonctionnement d’un ordinateur


 Module CPU
— La figure indique deux composants
principaux du système:
– Un interpréteur d'instructions
– et un module de fonctions arithmétiques et
logiques à usage général. Ces deux constituent le
CPU.

 Module mémoire:
— Ce module est appelé mémoire, ou
mémoire principale, pour le distinguer du
stockage externe ou des périphériques.
— Von Neumann a souligné que la même
mémoire pouvait être utilisée pour stocker
à la fois des instructions et des données.
12

6
10/23/2022

Principe de fonctionnement d’un ordinateur


 Module E/S
— Plusieurs autres composants sont nécessaires pour obtenir un ordinateur
fonctionnel.

13

Le modèle VON NEUMANN


 Pratiquement toutes les conceptions informatiques sont basées sur
des concepts développés par John Von Neumann.
 Une telle conception est appelée architecture Von Neumann et
repose sur trois concepts clés.
— Les données et les instructions sont stockées dans une seule mémoire en
lecture-écriture.
— Le contenu de cette mémoire est adressable par emplacement, quel que
soit le type de données qu'il contient.
— L'exécution se produit de manière séquentielle (sauf modification explicite)
d'une instruction à la suivante.

14

7
10/23/2022

Le modèle VON NEUMANN


 La version actuelle de
(Architecture von newmman)
— Composé de trois systèmes
matériels:
– une unité centrale de traitement (CPU)
avec une unité de contrôle,
– une unité arithmétique et logique (ALU),
– des registres (petites zones de stockage)
– et un compteur de programmes;
— Un système de mémoire principale,
qui contient des programmes qui
contrôlent le fonctionnement de
l’ordinateur;
— et un système d'E / S.

15

Le modèle VON NEUMANN


 Particularité d’une machine Von
Neumman
— Capacité à effectuer le traitement
séquentiel des instructions
— Contient un seul chemin, physique ou
logique, entre le système de mémoire
principale et l'unité de contrôle de la
CPU, forçant l'alternance des cycles
d'instructions et d'exécution.

 Cette architecture exécute des programmes dans ce que l'on


appelle le cycle d'exécution de von Neumann (fetch-decode-
execute cycle), qui décrit le fonctionnement de la machine.
16

8
10/23/2022

Le modèle VON NEUMANN


 Une itération du cycle est la suivante: (détaillée au chapitre
suivant)
— 1. L'unité de contrôle récupère l'instruction de programme suivante dans la
mémoire, en utilisant le compteur de programme pour déterminer où se
trouve l'instruction.
— 2. L'instruction est décodée dans une langue que l'ALU peut comprendre.
— 3. Tous les opérandes de données requis pour exécuter l'instruction sont
extraits de la mémoire et placés dans des registres de la CPU.
— 4. L'ALU exécute l'instruction et place les résultats dans des registres ou en
mémoire.

17

Le modèle VON NEUMANN


 Les idées présentes dans l'architecture Von Neumann ont été
étendues de sorte que les programmes et les données stockés sur
un support de stockage à accès lent, tel qu'un disque dur, puissent
être copiés sur un support de stockage volatile à accès rapide tel
que la RAM avant exécution.
 Cette architecture a également été rationalisée dans ce que l'on
appelle actuellement le modèle de bus système, qui est illustré à la
figure suivante.

18

9
10/23/2022

Le modèle VON NEUMANN


 Architecture Von Neumman modifiée

19

Le modèle VON NEUMANN


 Le bus de données déplace les données de la mémoire principale
vers les registres de la CPU (et vice versa).
 Le bus d'adresses contient l'adresse des données auxquelles le bus
de données accède actuellement.
 Le bus de commande transporte les signaux de commande
nécessaires qui spécifient comment le transfert d'informations doit
avoir lieu.

20

10
10/23/2022

Principes de base et organisation du processeur


 nous savons qu'un ordinateur doit manipuler des données codées
en binaire.
 Nous savons également que la mémoire est utilisée pour stocker à
la fois les données et les instructions de programme (également en
binaire).
 D'une manière ou d'une autre, le programme doit être exécuté et
les données doivent être traitées correctement.

21

L'unité centrale de traitement (CPU)


 L'unité centrale de traitement (CPU)
est responsable:
— de la récupération des instructions de
programme,
— du décodage de chaque instruction qui
est extraite,
— et de l'exécution de la séquence
d'opérations indiquée sur les données
correctes.

22

11
10/23/2022

L'unité centrale de traitement (CPU)


 Pour présenter l'architecture simple, nous examinons d'abord, la
microarchitecture qui existe au niveau de contrôle des ordinateurs
modernes.
 Tous les ordinateurs ont une unité centrale de traitement (CPU),
Cette unité peut être divisée en deux pièces:
— Le premier est:
– le chemin de données, qui est un réseau d'unités de stockage (registres),
– et d'unités arithmétiques et logiques (pour effectuer diverses opérations sur les
données),
– connectées par des bus (capables de déplacer des données d'un endroit à l'autre) où la
synchronisation est contrôlée par des horloges.
— Le deuxième est:
– l'unité de contrôle, un module chargé de séquencer les opérations et de s'assurer que
les données correctes sont là où elles doivent être au bon moment.
23

Les registres
 Les registres:
— Les registres sont des mémoires situés sur le processeur afin que les
informations soient accessibles très rapidement.
— Utiliser pour stocker une grande variété de données, telles que des
adresses, des compteurs de programme ou des données nécessaires à
l'exécution du programme.
— Nous avons vu: Une bascule D équivaut à un registre à 1 bit, donc une
collection de bascules D est nécessaire pour stocker des valeurs multi-bits.
Par exemple, pour construire un registre 16 bits, nous devons connecter
des bascules 16 D ensemble.
— Le traitement des données sur un ordinateur est généralement effectué sur
des mots binaires de taille fixe qui sont stockés dans des registres. Par
conséquent, la plupart des ordinateurs ont des registres d'une certaine
taille. Les tailles courantes incluent 16, 32 et 64 bits.
24

12
10/23/2022

L'unité arithmétique et logique (ALU)


 L'unité arithmétique et logique (ALU)
– Exécute les opérations logiques (telles que les
comparaisons)
– Les opérations arithmétiques (telles que
l'ajout ou la multiplication) nécessaires
pendant l'exécution du programme.
– En général, une ALU a deux entrées de
données et une sortie de données.
– Les opérations effectuées dans l'ALU affectent
souvent les bits du registre d'état (les bits
sont définis pour indiquer des actions telles
que si un débordement s'est produit).
– L'ALU sait quelles opérations effectuer car elle
est contrôlée par des signaux provenant de
l'unité de contrôle.

25

L'unité de contrôle
 L'unité de contrôle
– Est le «gestionnaire de trafic» du CPU. Il
surveille l'exécution de toutes les instructions et
le transfert de toutes les informations.
– Elle extrait les instructions de la mémoire,
décode ces instructions, s'assurant que les
données sont au bon endroit au bon moment,
– Indique à l'ALU quels registres utiliser,
interrompt les services et active le bon circuit
dans l'ALU pour l'exécution du opération
souhaitée.
– L'unité de contrôle utilise un registre « compteur
de programme » pour trouver l'instruction
suivante à exécuter et un registre d'état pour
garder une trace des débordements, des
reportages, des emprunts, etc.
– Par la suite, on couvre l'unité de contrôle plus
26 en détail.

13
10/23/2022

Les bus
— La CPU communique avec les autres composants via un bus.
— Un bus est un ensemble de fils qui agit comme un chemin de données
partagé mais commun pour connecter plusieurs sous-systèmes au sein du
système.
— Il se compose de plusieurs lignes, permettant le mouvement parallèle des
bits.
— Les bus sont peu coûteux mais très polyvalents, et ils facilitent la
connexion de nouveaux appareils entre eux et au système.
— La vitesse du bus dépend de sa longueur ainsi que du nombre d'appareils
qui le partagent.
— Très souvent, les appareils sont divisés en catégories maître et esclave, où
un appareil maître est celui qui lance les actions et un esclave est celui qui
répond aux demandes d'un maître.

27

Les bus
 Point-to-Point Buses
— Un bus peut être point à point,
connectant deux composants
spécifiques (comme le montre la
figure)

28

14
10/23/2022

Les bus
 A Multipoint Bus
— Il peut s'agir d'un chemin
commun qui connecte un certain
nombre de périphériques, ce qui
oblige ces périphériques à
partager le bus (appelé bus
multipoint et illustré à la figure)

29

Les bus
 En raison de ce partage, le
protocole de bus (ensemble de
règles d'utilisation) est très
important.
— Bus de données:
– Souvent, les lignes d'un bus dédiées
au déplacement de données sont
appelées bus de données.
– Ces lignes de données contiennent
les informations réelles qui doivent
être déplacées d'un emplacement à
un autre.

30

15
10/23/2022

Les bus
— Bus de contrôle:
– Les lignes de contrôle indiquent quel
appareil est autorisé à utiliser le bus et
dans quel but (lecture ou écriture à
partir de la mémoire ou à partir d'un
périphérique d'E / S, par exemple).
– Les lignes de contrôle transfèrent
également des accusés de réception
pour les demandes de bus, les
interruptions et les signaux de
synchronisation d'horloge.
— Bus d’adresses
– Les lignes d'adresse indiquent
l'emplacement (en mémoire, par
exemple) où les données doivent être
lues ou écrites.

31

Les bus
— Les ligne d’alimentations:
– Fournissent l'énergie électrique
nécessaire.
— Les transactions de bus typiques
incluent l'envoi d'une adresse (pour
une lecture ou une écriture), le
transfert de données de la mémoire
vers un registre (une lecture de la
mémoire) et le transfert de
données vers la mémoire à partir
d'un registre (une écriture de
mémoire).
— De plus, les bus sont utilisés pour
les lectures et écritures d'E / S à
partir de périphériques.
32

16
10/23/2022

Les bus
 les bus eux-mêmes ont été divisés en différents types.
— Les bus processeur-mémoire sont des bus courts et rapides qui sont
étroitement adaptés au système de mémoire de la machine afin de
maximiser la bande passante (transfert de données) et sont
généralement très spécifiques à la conception.
— Les bus d'E/S sont généralement plus longs que les bus de
processeur-mémoire et permettent de nombreux types de
périphériques avec des largeurs de bande variables. Ces bus sont
compatibles avec de nombreuses architectures différentes.
— Les systèmes hautes performances utilisent souvent les trois types
de bus (bus processeur-mémoire ), (bus d'E/S ), (Bus spécifiques)..

33

Les bus
 Les ordinateurs personnels ont leur propre terminologie en matière
de bus.
— Les PC disposent d'un bus interne (appelé bus système) qui relie le CPU, la
mémoire et tous les autres composants internes.
— Les bus externes (parfois appelés bus d'extension) connectent des
périphériques externes, des périphériques, des connecteurs d'extension et
des ports d'E/S au reste de l'ordinateur.
— La plupart des PC ont également des bus locaux, des bus de données qui
connectent un périphérique directement au CPU. Ce sont des bus à très
grande vitesse et ne peuvent être utilisés que pour connecter un nombre
limité d'appareils similaires.
— Les bus d'extension sont plus lents mais permettent une connectivité plus
générique.

34

17
10/23/2022

Les horloges
 Chaque ordinateur contient une horloge interne:
— Qui règle la rapidité avec laquelle les instructions peuvent être exécutées.
— L'horloge synchronise également tous les composants du système.
— Le CPU utilise cette horloge pour réguler sa progression, en vérifiant la
vitesse autrement imprévisible des portes logiques numériques.
— L'UC nécessite un nombre fixe de tics d'horloge pour exécuter chaque
instruction.
— Par conséquent, les performances des instructions sont souvent mesurées
en cycles d'horloge.

35

Les horloges (Overclocking)


 On peut repousser les limites de certains composants du système
pour tenter d'améliorer les performances du système.
— L'overclocking est une méthode que les gens utilisent pour atteindre cet
objectif.
— Bien que de nombreux composants soient des candidats potentiels, l'un
des composants les plus populaires pour l'overclocking est le processeur.
— L'idée de base est d'exécuter le CPU à des vitesses d'horloge et / ou de bus
supérieures à la limite supérieure spécifiée par le fabricant.
 Bien que cela puisse augmenter les performances du système, il
faut faire attention à ne pas créer de défauts de synchronisation du
système, ou pire encore, de surchauffer le CPU.

36

18
10/23/2022

Les horloges (Overclocking)


 Le bus système peut également être overclocké, ce qui entraîne un
overclocking des différents composants qui communiquent via le
bus.
 L'overclocking du bus système peut améliorer considérablement les
performances, mais peut également endommager les composants
qui utilisent le bus ou les amener à fonctionner de manière peu
fiable.

37

Le sous-système d'entrée / sortie


— Les périphériques d'entrée et de sortie (E/S) nous permettent de
communiquer avec le système informatique.
— Les périphériques d'entrée tels que les claviers, les souris, les lecteurs de
cartes, les scanners, les systèmes de reconnaissance vocale et les écrans
tactiles nous permettent de saisir des données dans l'ordinateur.
— Les périphériques de sortie tels que les moniteurs, les imprimantes, les
traceurs et les haut-parleurs nous permettent d'obtenir des informations de
l'ordinateur.
— Ces appareils ne sont pas connectés directement au CPU. Au lieu de cela, il
existe une interface qui gère les transferts de données.
– Cette interface convertit les signaux du bus système vers et depuis un format
acceptable pour l'appareil spécifique.

38

19
10/23/2022

Le sous-système d'entrée/sortie
— Le CPU communique avec ces périphériques externes via des registres
d'entrée / sortie. Cet échange de données se fait de deux manières.
– Dans les E / S mappées en mémoire, les registres de l'interface apparaissent dans la
carte mémoire de l'ordinateur et il n'y a pas de réelle différence entre l'accès à la
mémoire et l'accès à un périphérique d'E / S.
– De toute évidence, cela est avantageux du point de vue de la vitesse, mais cela utilise de
l'espace mémoire dans le système.
– le CPU dispose d'instructions spécialisées qui exécutent l'entrée et la sortie.
– Bien que cela n'utilise pas d'espace mémoire, il nécessite des instructions d'E/S spécifiques, ce
qui implique qu'il ne peut être utilisé que par des CPU capables d'exécuter ces instructions
spécifiques.
— Les interruptions jouent un rôle très important dans les E/S, car elles
constituent un moyen efficace de notifier à l'UC que l'entrée ou la sortie est
disponible.

39

Organisation et adressage de la mémoire


 Les concepts de mémoire que nous avons couverts sont très
importants et apparaissent à divers endroits dans les chapitres
restants, en particulier dans le chapitre (Mémoires), qui traite de la
mémoire en détail.
 Les concepts clés sur lesquels se concentrer sont:
— (1) Les adresses mémoire sont des valeurs binaires non signées
(bien que nous les considérions souvent comme des valeurs hexadécimales car c'est
plus facile)
— (2) Le nombre d'éléments à adresser détermine le nombre de bits qui se
produisent dans l'adresse.
Bien que nous puissions toujours utiliser plus de bits pour l'adresse que nécessaire, cela
est rarement fait car la minimisation est un concept important dans la conception
informatique.

40

20
10/23/2022

Schéma synoptique d’un ordinateur


— La CPU échange des
données avec la mémoire. À
cette fin, il utilise
généralement deux registres
internes (à la CPU):
– un registre d'adresse mémoire
(MAR), qui spécifie l'adresse en
mémoire pour la prochaine
lecture ou écriture,
– et un registre de tampon
mémoire (MBR), qui contient
les données à écrire en
mémoire ou reçoit les données
lues en mémoire.

41

Schéma synoptique d’un ordinateur


— Echange entre un module
d'E/S et la CPU.
– Un registre d'adresses d'E/S
(I/O AR) spécifie un
périphérique d'E/S particulier.
– Un registre tampon d'E/S (I/O
BR) est utilisé pour l'échange de
données entre un module d'E/S
et la CPU.

42

21
10/23/2022

Conclusion
 La machine à construire est à partir d'une hiérarchie de niveaux:
— Chaque couche de cette hiérarchie sert un objectif spécifique, et tous les
niveaux aident à minimiser l'écart sémantique entre un langage de
programmation ou une application de haut niveau et les portes et les fils
qui composent le matériel physique.
 Peut-être le développement le plus important en informatique qui
nous affecte en tant que programmeurs est l'introduction du
concept de programme stocké de la machine von Neumann.
 Bien qu’il existe d’autres modèles architecturaux, l’architecture von
Neumann est prédominante dans les ordinateurs à usage général
d’aujourd’hui.

43

22

Vous aimerez peut-être aussi