Vous êtes sur la page 1sur 10

Plan du cours

Introduction

Microprocesseurs et assembleur Un peu d’histoire

Architecture de Von Neumann

Architecture de base d’un ordinateur

Manel Abdelhedi

2 Chapitre 1 : Architectures de base d'un ordinateur IA1

Introduction Plan du cours


L’informatique est la science du traitement automatique de
l’information par des machines. Introduction

Les applications de nos jours nécessitent des machines Un peu d’histoire


performantes.
Architecture de Von Neumann
Exemples d’applications :
Traitement d’images, visioconférence, jeux 3D.
Bioinformatique : décodage du génome humain.
Modélisation et simulation en climatologie, conception de circuits
intégrés, applications militaires, etc.

Pour accroître les performances, on compte sur l’évolution des


technologies mais aussi les architectures (du modèle von
Neumann vers architectures plus parallèles).

3 Chapitre 1 : Architectures de base d'un ordinateur IA1 4 Chapitre 1 : Architectures de base d'un ordinateur IA1
Un peu d’histoire (1/8) Un peu d’histoire (2/8)
Automates et machines à calcul Automates et machines à calcul
Blaise Pascal (1642): première machine à Joseph Jacquard (1805) : cartes perforées pour métier à tisser.
calculer, la Pascaline (principe de roues Ces cartes indiquent la séquence d’opérations élémentaires à
dentées). Cette machine additionne et exécuter. C’est le premier programme.
soustrait les nombres de 6 chiffres et prenait
en compte les retenues.

Gottfried Leibniz (1673): améliore la Pascaline. Un Chariot


mobile permet d’automatiser l’exécution répétitive d’additions et
de soustraction.
Cartes perforées
Métier à tisser programmable
utilisant la vapeur

5 Chapitre 1 : Architectures de base d'un ordinateur IA1 6 Chapitre 1 : Architectures de base d'un ordinateur IA1

Un peu d’histoire (3/8) Un peu d’histoire (4/8)


Machine à programme extérieur Machine à programme extérieur
Charles Babbage (1833) : père de l’ordinateur (association George Boole (1854) : Fondement mathématiques de la logique.
entre automate et machine à calculer) Algèbre de Boole : fonctions logique (ET, OU et NON) décrivant le
fonctionnement d’un système le plus simple possible.
Réalisation de sa machine analytique avec l’aide Ada Augusta. Cette
machine programmable enchaîne des opérations arithmétiques de façon Herman Hollerith (1890) : invente la machine électrique/mécanique
autonome.
(une impulsion électrique déplace des roues dentées) à cartes
perforées pour accélérer le recensement aux USA traité en 3 ans
seulement. Il fonde la Tabulating Machine Company en 1896 qui
devient IBM en 1908.

Claude Shannon (1938) : rapprochement entre les nombres binaires


(0 et 1), algèbre de Boole et les circuits électriques. Tout calcul peut
être réalisé avec les 3 opérations logiques de base ET, OU, NON.
Machine analytique de Babbage

7 Chapitre 1 : Architectures de base d'un ordinateur IA1 8 Chapitre 1 : Architectures de base d'un ordinateur IA1
Un peu d’histoire (5/8) Un peu d’histoire (6/8)
Du programme extérieur au programme enregistré Générations
John Von Neumann (1945) : idée clé : enregistrer le programme Première génération (1938-1953)
en mémoire
Création de l’ENIAC (Electronic Numerical Integrator and Computer)

Technologie des tubes à vide (18000), 30 tonnes, 150 kw

Grosses consommatrices d’énergie, très volumineuses, peu fiables

Multiplication de 2 nombres de 10 chiffres en 3ms.


Architecture de Von Neumann

Architecture de l’ordinateur moderne : l’architecture de Von


Neumann

Tube à vide
ENIAC
9 Chapitre 1 : Architectures de base d'un ordinateur IA1 10 Chapitre 1 : Architectures de base d'un ordinateur IA1

Un peu d’histoire (7/8) Un peu d’histoire (8/8)


Générations Générations
Deuxième génération (1953-1963) Quatrième génération (1975-…)
Premier ordinateur à transistor Puces avec des millions de transistors (utilisation des circuits à grande

Apparition des systèmes d’exploitation (MULTICS puis UNIX), puis à très grande densité d’intégration « Very Large Scale Integration »)

langages FORTRAN (1957), COBOL (1959) Premier microprocesseur INTEL 4004

Troisième génération (1964-1975) Base de données

Ordinateurs à circuits intégrés, Parallélisme d’exécution

Faible consommation énergétique, fiable, encombrement réduit.

Apparition des réseaux,

11 Chapitre 1 : Architectures de base d'un ordinateur IA1 12 Chapitre 1 : Architectures de base d'un ordinateur IA1
Architecture de Von Neumann (1/25)
Plan du cours Présentation
Machine universelle contrôlée par programme.
Introduction
Instructions numériques enregistrées en mémoire.
Un peu d’histoire
Instruction exécutées normalement en séquence.
Architecture de Von Neumann
La plupart des ordinateurs actuels sont des machines de Von
Neumann, seules les technologies ont changé.

13 Chapitre 1 : Architectures de base d'un ordinateur IA1 14 Chapitre 1 : Architectures de base d'un ordinateur IA1

Architecture de Von Neumann (2/25) Architecture de Von Neumann (3/25)


Caractéristiques Caractéristiques
L’architecture de Von Neumann se compose de :
Unité centrale CPU ( Central Processing Unit) : Processeur Unité centrale
Unité de commande (automate) : pilote le déroulement de toutes les Unité
opérations arithmétique
Unité arithmétique et logique (UAL) : unité de traitement et logique

mémoire
Unité
Mémoire centrale (principale) d’entrée/
sortie
Programme
Unité de
Données. commande
Unité d’entrée/sortie : échange d’information avec les
périphériques (clavier, écran, souris…)

15 Chapitre 1 : Architectures de base d'un ordinateur IA1 16 Chapitre 1 : Architectures de base d'un ordinateur IA1
Architecture de Von Neumann (4/25) Architecture de Von Neumann (5/25)
Communication entre modules Communication entre modules
Les différentes unités sont reliées par des voies de Bus de données est un bus bidirectionnel qui assure le transfert
communication appelées bus des informations entre le processeur et son environnement, et
inversement.
Un bus est un ensemble de fils qui assure la transmission du
même type d’information. On trouve trois types de bus Exemple : lors d’une lecture, c’est la mémoire qui envoie un mot sur le
bus (le contenu de l’adresse demandée), lors d’une écriture, c’est le
véhiculant des informations en parallèle dans un système de processeur qui envoie la donnée.
traitement programmé de l’information :
Bus de commande constitué par quelques fils qui assurent le
Bus d’adresse est un bus unidirectionnel : seul le processeur transport des signaux de contrôle des bus d’adresses et de
envoie des adresses. données :
Il est composé de k fils, on utilise donc des adresses de k bits. Sens de l’échange sur le bus de données (lecture ou écriture?)
La mémoire peut posséder au maximum 2k emplacements (adresses 0 à Type d’adresse transitant sur le bus d’adresses : E/S ou mémoire ?
2k-1).

17 Chapitre 1 : Architectures de base d'un ordinateur IA1 18 Chapitre 1 : Architectures de base d'un ordinateur IA1

Architecture de Von Neumann (6/25) Architecture de Von Neumann (7/25)


Communication entre modules Principes de fonctionnement
Les deux principaux constituants d’un ordinateur sont la
mémoire centrale et le processeur.
La mémoire centrale permet de stocker l’information
(programmes et données), tandis que le processeur exécute pas
à pas les instructions composant les programmes.
Un programme est une suite d’instructions élémentaires
exécutées dans l’ordre par le processeur.
Ces instructions correspondent à des actions très simples,
comme additionner deux nombres, lire ou écrire une case
mémoire, etc.

19 Chapitre 1 : Architectures de base d'un ordinateur IA1 20 Chapitre 1 : Architectures de base d'un ordinateur IA1
Architecture de Von Neumann (8/25) Architecture de Von Neumann (9/25)
Principes de fonctionnement Principes de fonctionnement
Le processeur est un circuit électronique complexe qui exécute Pour chaque instruction, le processeur effectue les opérations
chaque instruction très rapidement, en quelques cycles suivantes :
d’horloges.
(1) Charger une instruction depuis la mémoire
Toute l’activité de l’ordinateur est cadencée par une horloge (2) Charger les opérandes (les données) depuis la mémoire
unique, de façon à ce que tous les circuits électroniques
travaillent ensemble. (3) Effectuer les calculs

(4) Stocker le résultat en mémoire

21 Chapitre 1 : Architectures de base d'un ordinateur IA1 22 Chapitre 1 : Architectures de base d'un ordinateur IA1

Architecture de Von Neumann (10/25) Architecture de Von Neumann (11/25)


Mémoire centrale Mémoire
La mémoire centrale est l’organe principal de rangement des La capacité ( taille ) d’une
informations utilisées par le processeur mémoire est le nombre (quantité)
Adresses Cases mémoire
d’informations qu’on peut
La mémoire peut être vue comme un vecteur (tableau) de mots enregistrer.
ou octets.
Elle peut s’exprimer en :
Chaque mot mémoire stocke une information sur m bits. Bit
Octet : 1 Octet = 8 bits
Chaque mot possède sa propre adresse. kilo-octet : 1 KO =1024 octets = 210 octets
Méga-octet : 1 MO = 1024 KO = 220 octets Mémoire
La mémoire centrale contient les données et les programmes Giga-octet : 1 GO =1024 MO = 230 octets
(les séquences d’instructions) . Téra-octet : 1To = 1024 Go =240 octets

23 Chapitre 1 : Architectures de base d'un ordinateur IA1 24 Chapitre 1 : Architectures de base d'un ordinateur IA1
Architecture de Von Neumann (12/25) Architecture de Von Neumann (13/25)
Unité de commande Unité de commande
Le rôle de l’unité de commande (ou unité de contrôle ) est de : L’unité de commande comporte:
Coordonner le travail de toutes les autres unités ( UAL , mémoire,…. ) Compteur de programme (PC : Programme Counter) appelé aussi
Compteur Ordinal (CO) c’est un registre dont le contenu est initialisé à
D’assurer la synchronisation de l’ensemble.
l’adresse de la première instruction du programme à exécuter. Il contient
l’adresse de la prochaine instruction à exécuter.
Elle assure :
Registre d’instruction : contient l’instruction à exécuter.
La recherche ( fetch ) de l’instruction et des données à partir de la
mémoire. Décodeur d’instruction : décode les instructions, il indique au séquenceur
la séquence d’opérations de base (micro-commandes) à réaliser pour
Le décodage de l’instruction et pilote l’exécution de l’instruction en
exécuter l’instruction.
cours.
Bloc logique de commande (ou séquenceur) : Il produit la suite des
Et prépare l’instruction suivante.
micro-commandes, de chargements, de traitements pour l’UAL, etc.
nécessaire au déroulement de l’instruction. Il synchronise l’exécution selon
le rythme de l’horloge.

25 Chapitre 1 : Architectures de base d'un ordinateur IA1 26 Chapitre 1 : Architectures de base d'un ordinateur IA1

Architecture de Von Neumann (14/25) Architecture de Von Neumann (15/25)


Unité de commande UAL
L’Unité Arithmétique et Logique assure l’exécution des opérations
élémentaires désignées par l’unité de commande.

L’UAL regroupe les circuits qui assurent les fonctions logiques (OU,
ET, NON, comparaison) et arithmétiques ( ADD, SUB, DIV,…).

Registres accumulateurs ( ACC ) : ce sont des registres de travail


qui servent à stocker une opérande (données) au début d’une
opération et le résultat à sa fin.

27 Chapitre 1 : Architectures de base d'un ordinateur IA1 28 Chapitre 1 : Architectures de base d'un ordinateur IA1
Architecture de Von Neumann (16/25) Architecture de Von Neumann (17/25)
UAL UAL
Registre d’état : ce registre nous indique l’état du déroulement On peut citer par exemple les indicateurs de :
de l’opération. Retenue (C): ce bit est mis à 1 si l’opération génère une retenue.
Parité (P): ce bit est mis à 1 si le nombre de bits à 1 dans le résultat est
Ce registre est composé d’un ensemble de bits. Ces bits impaire.
s’appellent indicateurs d’état ou flags ou drapeaux. Signe (S):ce bit est mis à 1 si l’opération génère un résultat négative.
Zéro (Z): ce bit est mis à 1 si le résultat de l’opération est nul.
Ces indicateurs sont mis à jour après la fin de l’exécution d’une
opération dans l’UAL.

29 Chapitre 1 : Architectures de base d'un ordinateur IA1 30 Chapitre 1 : Architectures de base d'un ordinateur IA1

Architecture de Von Neumann (18/25) Architecture de Von Neumann (19/25)


Schéma détaillé d’une machine Remarque
Un microprocesseur est composé d’une unité de commande et
d’une unité de traitement associés à des registres.
Ces registres sont considérés comme une mémoire interne
(registre de travail) du microprocesseur.
Ces registres sont plus rapide que la mémoire centrale mais le
nombre de ces registres est limité.
Généralement ces registres sont utilisés pour sauvegarder les
données avant d’exécuter une opération .
La taille d’un registre de travail est généralement égale à la
taille d’un mot mémoire.

31 Chapitre 1 : Architectures de base d'un ordinateur IA1 32 Chapitre 1 : Architectures de base d'un ordinateur IA1
Architecture de Von Neumann (20/25) Architecture de Von Neumann (21/25)
Cycle d’exécution d’une instruction Cycle d’exécution d’une instruction
Phase 1: Recherche de l’instruction à traiter
1. Le registre 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.

33 Chapitre 1 : Architectures de base d'un ordinateur IA1 34 Chapitre 1 : Architectures de base d'un ordinateur IA1

Architecture de Von Neumann (22/25) Architecture de Von Neumann (23/25)


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

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

35 Chapitre 1 : Architectures de base d'un ordinateur IA1 36 Chapitre 1 : Architectures de base d'un ordinateur IA1
Architecture de Von Neumann (24/25) Architecture de Von Neumann (24/25)
Cycle d’exécution d’une instruction Cycle d’exécution d’une instruction
Phase 3 : Exécution de l’instruction

1. Le micro-programme réalisant l’instruction est exécuté.

2. Les drapeaux sont positionnés (registre d’état).

3. L’unité de commande positionne le PC pour l’instruction


suivante.

37 Chapitre 1 : Architectures de base d'un ordinateur IA1 38 Chapitre 1 : Architectures de base d'un ordinateur IA1

Architecture de Von Neumann (25/25)


Cycle d’exécution d’une instruction

39 Chapitre 1 : Architectures de base d'un ordinateur IA1

Vous aimerez peut-être aussi