Upload
doankhanh
View
213
Download
0
Embed Size (px)
Citation preview
1) Architecture de base d’un ordinateur
Les travaux réalisés autour du mathématicien américain, d’origine allemande (ou hongroise) VON NEUMANN constituent le fondement des ordinateurs actuels.
Les principes de VON NEUMANN sont encore en œuvre dans la quasi-totalité des ordinateurs contemporains avec naturellement de nombreuses améliorations.
NB :
Les machines parallèles ( à plusieurs processeurs ) ne sont pas considérées comme des machines de type VON NEUMANN.
2) Définition de l’ architecture d’un
ordinateur
C’est l’étude et la description du fonctionnement des composants internes d’un ordinateur ( plus leur interconnexion ).
Elle traite :
- Du type des informations
manipulés et de leur codage.
- Du « dialogue » entre composants.
. . .
3) Structure générale d’un ordinateur
L’architecture schématique suivante illustre
bien un ordinateur classique ( de type VON
NEUMANN ) :
3.1) Vue fonctionnelle d’un ordinateur
Structure de traitement
des données
Dispositif de transfert Mécanisme de
des données de contrôle
Structure de mémorisation
des données
3.2) Modèle de VON NEUMANN
DISPOSITIF
D ’ E / S
UNITE
MEMOIRE ARITHMETIQUE
CENTRALE ET LOGIQUE
UNITE DE CONTROLE
CARTE MERE
L’élément principal de l’ordinateur est la carte mère
(en anglais : mainboard ou motherboard).
La carte mère est une carte maîtresse qui prend la
forme d’un grand circuit imprimé possédant des
connecteurs pour les cartes d’extension, les barrettes de
mémoires, le processeur, etc.
C'est elle qui accueille l'ensemble des composants
internes de votre ordinateur (processeur, mémoire,
…) et gère les différentes interfaces avec vos
périphériques prise pour les éléments internes et ports
USB pour les périphériques externes.
Processeur :
Souvent qualifié de cerveau de l'ordinateur, le
processeur permet de manipuler et de traiter les
données qui lui sont fournies.
Sa puissance a une influence sur la vitesse
d'exécution de vos logiciels et des opérations que
vous effectuez.
Mémoire vive
Partenaire de travail du processeur, la mémoire
vive (appelée aussi RAM) stocke temporairement
les données à traiter par le processeur. Ainsi, plus il y
a de mémoire de disponible , plus il est possible d'y
conserver des données temporairement (ce qui évite
d'accéder au disque dur qui est plus lent).
La mémoire vive est vidée à chaque arrêt ou
redémarrage de votre ordinateur.
Disque dur
Contrairement à la mémoire vive, les données
stockées sur un disque dur sont permanentes et ne sont
pas effacées à l'arrêt de votre ordinateur.
C'est donc sur un disque dur que votre système
d'exploitation (Linux, MacOs ou Windows), vos
logiciels et vos documents sont conservés. C'est donc
un espace de stockage permanent, où vous pouvez
copier et supprimer des données à volonté.
L'alimentation
L'alimentation a pour rôle d'assurer la
fourniture en électricité à tous les composants de
votre ordinateur.
Carte graphique
La carte graphique permet de traiter et
d'afficher sur un écran les données provenant de
votre ordinateur. Les cartes graphiques récentes
disposent de processeurs spécialisés dans la
manipulation de données en 3D. (Jeux vidéos)
Lecteur / graveur
Un lecteur de DVD vous permet de lire les
données qui se trouvent sur les CD et DVD (jeux,
logiciels, photos). Dans sa fonction graveur, en plus
de la lecture des données, il permet de stocker des
fichiers sur des CD et des DVD ( musique, films,
photos, sauvegardes), afin de libérer de l'espace sur
votre disque dur.
Carte son
La carte son permet de gérer les entrées
( microphone, ligne) et les sorties (vers les hauts
parleurs ) de votre ordinateur.
Elle comporte un processeur chargé de tous
les traitements numériques du son.
Résumé
Différents composants d’un ordinateur :
- La carte mère
- Le processeur
- La mémoire vive
- Les unités d’E/S :
- Le disque dur
- Le lecteur et/ou graveur de CD et/ou DVD
. . .
Composants optionnels :
- La carte graphique
- Le lecteur de disquettes
- Modem interne
- Carte réseau
- Carte son
3.4) Définition d’un ordinateur :
Un ORDINATEUR est un ensemble très
complexe de MATERIEL et de LOGICIEL :
a) PARTIE MATERIELLE :
L’ordinateur est composé essentiellement des
éléments suivants :
-- Un élément permettant d’exécuter les instructions
d’un programme : C’est le PROCESSEUR CENTRAL.
-- Des éléments permettant de stocker les données : Ce
sont les MEMOIRES.
-- Des éléments permettant la communication entre
l’ordinateur et l’être humain : Ce sont les
PERIPHERIQUES.
-- Des éléments permettant aux différents composants
( CPU, mémoires et périphériques ) de l’ordinateur de
communiquer : Ce sont les BUS.
b) PARTIE LOGICIELLE :
Les logiciels se répartissent en 2 catégories :
-- Logiciel de base : ( Système d’exploitation)
Un logiciel de base est constitué d’un ensemble de programmes qui assure le BON fonctionnement de l’ordinateur et gère les différents périphériques.
( WINDOWS, UNIX, … )
-- Logiciel d’application :
Un logiciel d’application est un ensemble de programmes coopérant pour exécuter une tâche particulière.
( WORD, ACROBAT READER, … )
c) Rôle d’un ordinateur de type VON NEUMANN :
C’est une machine de traitement de l’information capable
- D’acquérir de l’information
- De stocker de l’information
- De transformer de l’information
( En effectuant des opérations quelconques )
- De restituer de l’information sous une autre
forme ( Résultat ).
NB: Nos ordinateurs basés sur l’architecture de V. N
signifie que les instructions et les données (les opérateurs
et les opérandes) sont stockés dans la même mémoire.
Ainsi, le microprocesseur doit accéder deux fois à la
mémoire, une pour l’instruction une pour de la donnée.
4) Processeur central
( Microprocesseur )
( CPU : Central Processing Unit )
C’est un circuit électronique complexe qui
exécute chaque instruction très rapidement, en
quelques cycles d’horloge.
( ex : Intel )
NB:
Machines CISC et RISC :
Les processeurs généraux actuels se répartissent en
deux grandes catégories appelées CISC ( Complex
Instruction Set Computer ) et RISC ( Reduced
Instruction Set Computer ).
Les processeurs de ces deux catégories se distinguent
par la conception de leurs jeux d'instructions. Les
processeurs CISC possèdent un jeu étendu d'instructions
complexes. (Chacune de ces instructions peut effectuer
plusieurs opérations élémentaires comme charger une
valeur en mémoire, faire une opération arithmétique et
ranger le résultat en mémoire).
Au contraire, les processeurs RISC possèdent
un jeu d'instructions réduit où chaque instruction
effectue une seule opération élémentaire.
Le jeu d'instructions d'un processeur RISC
est plus uniforme. Toutes les instructions sont codées
sur la même taille et toutes s'exécutent dans le même
temps ( Un cycle d'horloge en général ).
La répartition des principaux processeurs dans les
deux catégories est la suivante :
CISC RISC
S/360 (IBM) Alpha (DEC)
VAX (DEC) PowerPC (Motorola)
68xx, 680x0 (Motorola) MIPS
x86, Pentium (Intel) PA-RISC (HP)
SPARC
Famille de processeurs :
La classification des processeurs par familles se
fait selon :
-- L’exécution d’un même ensemble
d'instructions de base.
-- La taille des données qu’ils peuvent
manipuler 4 bits, 8, 16, 32, 64…
NB :
Chaque famille comporte énormément de
modèles différents.
Fréquence du processeur :
Un processeur fonctionne à une certaine fréquence
- Guidée par une horloge extérieure.
- Exprimée en MHz ou en GHz.
A chaque tic d’horloge, le CPU peut effectuer du travail :
- Chaque instruction du CPU nécessite un certain nombre de cycles.
- Dépend de la complexité de l’instruction.
4.1) Composition interne du processeur
-- Composition physique : « vulgaire » morceau de
silicium de quelques mm2.
-- Composition électrique : Il est constitué
électriquement d’interrupteurs commandées par des
tensions. Les interrupteurs sont appelés TRANSISTORS
et leur agencement forme un ensemble de fonctions
logiques élémentaires comme OU, ET, ADD, SUB, …
-- Composition logique du processeur :
Le processeur de base est constitué de 2 unités
fonctionnellement séparées : L’ UC et L’UAL.
UC ( Unité de contrôle ou unité de commande )
Elle dirige le fonctionnement du processeur.
Ses circuits génèrent les signaux nécessaires à l’exécution
de chaque instruction d’un programme.
Elle est constituée du
. Séquenceur qui génère des signaux de
commandes pour piloter les autres entités du processeur et
synchroniser ce dernier avec la mémoire centrale.
. Décodeur qui détermine quelle opération
doit être effectuée.
UAL ( Unité arithmétique et logique )
Elle effectue les opérations logiques telles que les fonctions OU, ET et le DECALAGE.
-- Rôle du processeur :
Il doit exécuter les instructions d’un programme.
4.2) Registres du processeur
NB:
-- Les registres sont des mémoires internes au processeur.
-- Leur temps d’accès est rapide.
-- Leur nombre et leur type varient d’une architecture à une autre.
Les registres sont classés en plusieurs catégories :
-- Les registres généraux :
Ils contiennent les données et les résultats des
opérations réalisées par le processeur.
-- CO ( Compteur ordinal )
Il contient l’adresse de la case mémoire où est
rangée l’instruction suivante à chercher.
-- RI ( Registre instruction )
Il contient le code opération de la prochaine
instruction à exécuter.
-- Registre d’état : ( registre condition )
Il contient différents bits appelés drapeaux (
Flags ) indiquant l’état d’une condition particulière
dans le processeur.
-- Registre pointeur de pile:
Il permet de gérer une pile dans la mémoire
centrale.
-- Registre de base:
Ils sont conçus pour contenir des adresses de
référence.
-- Registre d’index ou d’indice:
Ils permettent de manipuler des tableaux de
données.
-- Registres spécialisés:
Dans certains ordinateurs, on peut trouver des
registres spécialisés pour réaliser des opérations
particulières ( Registres à décalage ).
5) « Fonctionnement » d’un ordinateur Le processeur unique d’ordinateur classique exécute
le programme d’un utilisateur. Il dispose d’une mémoire
dans laquelle il peut aller LIRE / ECRIRE des données.
D’où le principe d’exécution d’un programme :
a) Le programme ( Instructions + données ) est chargé
en mémoire centrale (MC).
b) Les instructions sont ramenées, une par une,
séquentiellement à l’unité de contrôle (UC) qui les analyse
et déclenche le traitement approprié en envoyant des
signaux à l’unité arithmétique et logique (UAL).
c) Le traitement peut nécessiter de faire appel aux unités
d’E /S ou bien à la MC.
Les étapes du cycle recherche sont :
1) Transfert de l’adresse de la nouvelle instruction
du registre CO vers le registre RA.
2) Une impulsion de lecture générée par l’unité de
commande provoque le transfert de l’instruction
cherchée vers le registre RM .
3) Transfert de l’instruction vers le registre RI.
4) Pendant que l’adresse de l’opérande est envoyée
vers RA, le code opération est transmis au décodeur
qui détermine le type d’opération demandée et le
transmet au séquenceur en envoyant un signal sur la
ligne de sortie correspondante.
5) Le registre CO est incrémenté en vue du cycle de
recherche suivant.
Les différentes étapes du cycle d’exécution sont :
1) Le séquenceur commence à envoyer les signaux de
commande vers MC pour lire l’opérande ( à
l’adresse déjà stockée dans RA ) et le fait parvenir
dans le registre RM.
2) Transfert du contenu du registre RM vers l’UAL (
et plus précisément vers l’Accumulateur ou vers tout
autre registre affecté à l’opération spécifiée ).
3) L’opération est effectuée sous le contrôle du
séquenceur.
NB :
-- Le cycle recherche est associé à l’UC.
-- Le cycle exécute est associé à l’UAL.
-- Le cycle de recherche et le cycle d’exécution
composent le cycle instruction.
-- Le cycle recherche est suivi par le cycle exécute.
-- Une fois le cycle d’exécution terminé, l’UC passe
immédiatement au cycle de recherche suivant et
prend en compte la nouvelle instruction indiquée par
l’adresse contenue dans le registre CO.
Les processeurs multi coeurs :
Ils possèdent plusieurs unités de calcul qui travaillent en parallèle. Ce qui permet
-- D'augmenter la puissance de calcul sans augmenter la fréquence d'horloge (et donc de réduire la chaleur dissipée) en traitant en parallèle plusieurs tâches.
-- De profiter de ce « parallélisme » : Les
programmes doivent être adaptés ( et notamment
les systèmes d'exploitation).
NB:
La tendance est vers des coeurs spécialisés.
Exemple: Processeur Double Cœur
( Processor Core Duo )
Un processeur double cœur ou multi coeur réunit plusieurs instances de calcul sur un même composant.
Cette technique de conception des puces permet de traiter simultanément deux programmes lancés par l'utilisateur, comme par exemple le téléchargement de fichiers et l'écriture de texte.
Techniquement, un processeur à double cœur ressemble de près à deux processeurs que l'ont aurait rassemblés sur une même carte de taille quasi-similaire au processeur actuel.
En pratique, cela nécessite de créer une unité
supplémentaire de traitement capable de traiter la
répartition des traitements entre les deux cœurs, bien
qu'une partie de ce travail soit assurée par les
concepteurs de programme.
Chez Intel, chaque cœur dispose d'un
contrôleur mémoire et d'une mémoire cache séparée.
Chez AMD, cette partie est commune aux deux
cœurs afin de faciliter le transfert d'informations et
l'utilisation des ressources machines.
6) Taille des principaux registres :
• Taille des registres associés au CPU
• Taille des registres associés à MC
6) Synchronisation des opérations
-- Les circuits qui synchronisent et contrôlent toutes
les opérations sont situés dans l’unité de commande.
-- Les signaux périodiques générés par l’horloge
définissent le cycle de base ( Cycle machine ou cycle
horloge ), c-à-d la durée élémentaire régissant le
fonctionnement de la machine.
-- Le temps d’exécution d’une instruction dépend du
type d’opération à effectuer.
-- Le cycle CPU indique le temps d’exécution de
l’instruction la plus courte ou la durée d’une action
élémentaire provoquant un changement d’état.
-- Un cycle instruction peut s’étendre sur plusieurs cycles
machines :
CLK
Cycle Cycle
Recherche Exécute
Cycle Instruction
7) Performances
NB:
Tous les ordinateurs sont construits avec une horloge de fréquence constante qui détermine à quels moments les événements se produisent dans la machine.
7.1) Motivations -- Comment décrire les performances ?
-- Quels sont les principaux facteurs qui déterminent les performances ?
-- Pour différents types d’applications, on utilise des métriques ( ensemble de mesures ) de performances différentes.
7.2) Notion de performance Que veut dire
« UN ORDINATEUR A DE MEILLEURES
PERFORMANCES QU’UN AUTRE » ?
7.3) Performance
Pour MAXIMISER les performances, il faut
MINIMISER le temps de réponse.
PERF = 1 / Temps d’exécution
Soient X et Y deux machines.
Si PERF(X) > PERF(Y) alors
1 1 TEX(Y) > TEX(X)
TEX(X) TEX(Y)
Machine X est plus rapide que la machine Y.
Aussi, on dit que la machine X est N fois plus rapide
que la machine Y, si on a :
PERF(X) TEX(Y)
= = N
PERF(Y) TEX(X)
8) CONCLUSION Le développement des architectures se poursuit
toujours, mais spécialement dans deux directions
principales:
- L’ACCROISSEMENT des PERFORMANCES
grâce à la construction d’autres machines appelées
SUPERORDINATEURS ( Architectures parallèles ).
- LA MINIATURISATION des composants
( on construit en quantité importante et à bas prix ).
COMPREHENSION DU CHAPITRE 2
intitulé
Architecture de VON NEUMANN
Q1)
1) Quels sont les principaux composants d’une machine de type VON NEUMANN ?
Quel est le rôle de chacun ?
2) Donner le schéma fonctionnel simplifié d’un ordinateur.
3) Quel est son principe de fonctionnement ? Justifier votre réponse.
4) Dans une architecture de Von Neumann :
- Où sont rangées les données ?
- Où sont rangés les programmes ?
Q2) Parmi les assertions suivantes, quelle est celle qui est
vraie :
Le cycle RECHERCHE n’est pas le même pour
toutes les instructions.
Le temps d’exécution d’une instruction dépend du
type d’opération à effectuer.
Le programmeur a accès au registre CO et RI
directement.
La taille du registre CO dépend du nombre de
positions de mémoire adressables.
Le programmeur ne peut pas accéder à l’ACC.
La taille du registre RI ne correspond pas à la taille
du mot mémoire.
Q3)
Comparer les architectures RISC et CISC ?
Q4)
Soit une machine de type VON NEUMANN ayant
une MC de capacité égale à 4K emplacements de 32
BITS chacun et un jeu d’instructions égal à 256.
Quelle est la taille
De RI, ACC et CO ?
Du champ code opération ( COP ) dans le format d’une instruction ?
Q5)
Quels sont les principaux facteurs qui déterminent la
puissance de traitement de l’information par un
ordinateur ?