Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
BOUKRI AHMED
aboukri@gmail.om
Contenu du cours
Première partie
La structure d'un ordinateur
Le processeur
Une unité de commande
Unité de traitement
Les mémoires
Mémoire centrale
Mémoires mortes
Mémoire Cache
Mémoires de masse
Les entrées - sorties
1
17/10/2018
Monde extérieur
Unité de traitement
Architecture de Base
2
17/10/2018
3
17/10/2018
Architecture de Harvard
■ Le nom de cette structure vient du nom de l’université Harvard où
une telle architecture a été mise en pratique pour la première fois
avec le Mark I en 1944.
■ Dans cette architecture on sépare physiquement la
mémoire des instructions (MI) et la mémoire de données(MD).
Chacune de ces mémoires est accessible par un bus différent. Il
est alors possible d'accéder simultanément aux instructions et aux
données, ce qui permet d'augmenter le flux des informations.
Opérations en parallèle
Pour permettre aux interfaces d'E/S de lire ou d'écrire des
données en mémoire pendant que le processeur effectue des
calculs sur les données précédentes, il est intéressant d'utiliser
une mémoire de données accessible depuis deux ports différents.
Phase 2
Phase2
4
17/10/2018
Unité centrale
■ Les principaux constituants d’un ordinateur sont le processeur et la
mémoire principale ce qui constitue l’unité centrale
15
Le processeur
L'unité centrale de traitement UCT(ou CPU, pour « Centtrrall Prrocessiing Uniitt)
est le cœur de l'ordinateur, il est chargé:
d’interpréter et d’exécuter les instructions d’un programme
de lire ou de sauvegarder les résultats dans la mémoire
de communiquer avec les unités d’échange(E/S).
Le processeur est un Circuit électronique(morceau de silicium) complexe composé de
millions voir des milliard de transistors placés dans un boîtier comportant des
connecteurs d'entrée-sortie. On appelle ce boitier circuit intégré ou puce.
La réalisation de circuits intégrés de plus en plus complexe a été rendue possible par
l’apparition du transistor en 1947.
1958 Texas Instrument réalise le premier circuit intégré
5
17/10/2018
Le processeur
Le processeur est un circuit électronique cadencé au rythme d'une horloge
interne qui envoie des impulsions, appelées « top ». La fréquence d'horloge,
correspond nombre d'impulsions par seconde. Elle s'exprime en Hertz (Hz).
Cette fréquence définit le nombre maximal de changements d'état qu'un
transistor peut subir en une seconde
Ordinateur à 3 GHz l’horloge envoie 3 000 000 000( 3 milliard) de battements
par seconde
A chaque top d'horloge le processeur exécute une action, correspondant à
une instruction ou une partie d'instruction
Le processeur
Une instruction est l'opération élémentaire que le processeur peut accomplir. Les
instructions sont stockées dans la mémoire principale, en vue d'être traitée par le
processeur. Une instruction est composée de deux champs :
Le code opération : représentant l'action que le processeur doit accomplir.
Le code opérande : définissant les paramètres de l'action. Le code opérande
dépend de l'opération. Il peut s'agir d'une donnée ou bien d'une adresse
mémoire.
Pour chaque instruction, le processeur effectue schématiquement les
opérations suivantes:
1. lire en mémoire (MP) l’instruction à exécuter ;
2. Lire en mémoire (MP) les paramètres nécessaires;
3. effectuer le traitement correspondant ;
4. Stocke en mémoire (MP) le résultat;
5. passer à l’instruction suivante.
6
17/10/2018
Le microprocesseur
Un microprocesseur est un processeur dont les composants ont été
suffisamment miniaturisés pour que l’ensemble du processeur puisse
tenir sur un seul circuit intégré
Le concept de microprocesseur a été créé par la Société Intel.
En 1971 le premier microprocesseur 4004 a été crée par Intel, qui était une
unité de calcul 4 bits fonctionnant à 108 Khz et qui contient 2300 transistors,
Finesse de gravure(feature size) représente la finesse du dessin des circuits
intégrés sur les plaquettes de silicium. C’est la mesure de référence utilisée
pour caractériser la densité d’un circuit intégré(taille d’un transistor)
On parle aussi de procédé de gravure. Les plus utilisés sont le 14 nm (chez
Intel notamment), le 12 nm (chez AMD notamment) et le 10 nm (largement
répandu dans le marché des puces pour mobiles)
18
Le microprocesseur
De 1971 à 2010, de nombreux microprocesseurs sont sortis.
A chaque nouvelle sortie la taille s'est réduite, mais la capacité du
microprocesseur a fortement augmenté.
Intel 4004 18
Intel Core i7
7
17/10/2018
Processeur
Le processeur est construit autour de deux éléments principaux :
Une unité de commande
Une unité de traitement
L'unité de commande
■ Dirige le fonctionnement de l’UAL, de la mémoire et des E/S,
■ Elle permet de séquencer le déroulement des instructions. Elle effectue la
recherche en mémoire de l'instruction, le décodage de l’instruction codée
sous forme binaire et elle pilote l’exécution de l’instruction
20
8
17/10/2018
L'unité de commande
UC est composé de:
Le compteur de programme (PC : Programme Counter) appelé aussi
Compteur Ordinal (CO) est constitué par un registre dont le contenu est
initialisé avec l'adresse de la première instruction du programme. Il
contient toujours l’adresse de la prochaine instruction à exécuter.
Le registre d'instruction et le décodeur d'instruction : Chacune des
instructions à exécuter est transféré depuis la mémoire dans le registre
instruction puis est décodée par le décodeur d’instruction.
Bloc logique de commande (ou séquenceur) : Il organise l'exécution des
instructions au rythme d’une horloge. Il élabore tous les signaux de
synchronisation internes ou externes (bus de commande) du
microprocesseur en fonction de l’instruction qu’il a à exécuter. Il s'agit
d'un automate réalisé de façon microprogrammée.
20
L’unité de traitement
Elle regroupe les circuits qui assurent les traitements nécessaires à l'exécution
des instructions
UT est composé de:
Les accumulateurs sont des registres de travail qui servent à stocker
une opérande au début d'une opération arithmétique et le résultat à la
fin de l'opération.
20
9
17/10/2018
L’unité de traitement
L’unité arithmétique et logique, abrégée UAL(en anglais ALU pour Arithmetical
and Logical Unit), est l’organe de l’ordinateur chargé d’effectuer les calculs. Elle
est incluse dans le microprocesseur. Il est chargé des:
20
L’unité de traitement
Le registre d'état(indicateur d’état ou flag ou drapeaux) est
• Composé de 8 bits à considérer individuellement.
• Chacun de ces bits est un indicateur dont l'état dépend du résultat de la
dernière opération effectuée par l’UAL.
• Dans un programme le résultat du test de leur état conditionne souvent
le déroulement de la suite du programme.
20
10
17/10/2018
REGISTRES DU TRAVAIL
Le microprocesseur peut contenir d’autres registres autre que RI, ACC, RAM, PC
et RE.
Ces registres, appelés registres de travail, sont considérés comme une mémoire
interne du microprocesseur.
Les registres de travail sont plus rapide que la mémoire centrale , mais leur
nombre est limité.
Généralement, ces registres sont utilisés pour sauvegarder les données avant
d’exécuter une opération.
Généralement, la taille d’un registre de travail est égale à la taille d’un mot
mémoire
REGISTRES DU TRAVAIL
Pointeur de pile ou Stack Pointeur: C'est un registre qui contient l'adresse du
sommet de la pile. La pile est externe au microprocesseur. C'est une certaine
partie de la mémoire RAM. Elle est utilisée pour sauvegarder les contenus des
différents registres, lors de l'appel à un sous-programme ou lors de la gestion
d'une interruption, par exemple.
Registre de données: Ce registre est un registre tampon qui assure l'interfaçage
entre le microprocesseur et son environnement ou inversement. Il conditionne
le bus externe ou le bus interne des données.
Registre d’adresses: Ce registre est un registre tampon qui assure l'interfaçage
entre le microprocesseur et son environnement. Il conditionne le bus externe
des adresses.
Registre d’index :Le contenu de ce registre est une adresse. Il est utilisé dans le
mode d'adressage indexé
Registres auxiliaires : Ils permettent de stocker le résultat des instructions
exécuter par l’ALU
11
17/10/2018
Architecture compléte
Les Bus
Ils relient électriquement le microprocesseur et les périphériques (mémoires et
interfaces E/S).
Le bus de données est bidirectionnel. Il
assure le transfert des informations entre le
microprocesseur et son environnement, et
inversement. Son nombre de lignes est égal
au format des mots de données du
microprocesseur.
Le bus d’adresses est unidirectionnel. Il
permet la sélection des informations à traiter
dans un espace mémoire (ou espace
adressable) qui peut avoir 2n emplacements,
avec n = nombre de conducteurs du bus
d'adresses.
Le bus de commande (ou bus de contrôle) est
constitué par quelques conducteurs qui
assurent la synchronisation des flux
d'informations sur les bus de données et d’
adresses.
12
17/10/2018
Le décodage d’adresses
Tous les périphériques (mémoires,
interfaces E/S, etc.) sont reliés en
permanence sur le bus de données.
Afin d’éviter les "conflits de bus", il
faut donc sélectionner un seul
périphérique à la fois. Les autres sont
mis en état "haute impédance".
Le décodage d’adresses réalise cette
sélection en allouant à chaque
périphérique une zone de l’espace
adressable.
Jeu d’instructions
Chaque processeur possède un certain nombre limité d’instructions qu’il peut
exécuter. Ces instructions s’appelles jeu d’instructions.
Le jeu d’instructions décrit l’ensemble des opérations élémentaires que le
processeur peut exécuter.
Les instructions peuvent être classifiées en 4 catégories :
Instruction d’affectation
Instructions arithmétiques et logiques ( ET , OU , ADD,….)
Instructions de branchement ( conditionnelle et inconditionnelle )
Instructions d’entrées sorties.
13
17/10/2018
N bits K bits
14
17/10/2018
N bits K bits
Les modes d’adressage les plus utilisés sont : immédiat, direct, indirect, indexé et
relatif.
15
17/10/2018
16
17/10/2018
17
17/10/2018
chargement de l’opérande
Si l'instruction nécessite
une donnée qui se trouve
en mémoire, le
séquenceur émet les
commandes pour
récupérer sa valeur sur le
bus de données.
L’opérande est stockée
dans un registre
Exécution de l’instruction
Le micro-programme
réalisant l'instruction est
exécuté.
Les drapeaux sont
positionnés (registre d'état).
18
17/10/2018
19
17/10/2018
20
17/10/2018
21
17/10/2018
Les mémoires
C’est quoi une mémoire ?
Une mémoire est un dispositif capable :
D'enregistrer une information,
De la conserver ( mémoriser )
et de la restituer ( possible de la lire ou la récupérer par la suite).
Exemple de mémoire :
La mémoire centrale
Un disque dure
DVD-ROM
Clé USB
…………..
La mémoire peut être dans le processeur ( des registres) , interne
(Mémoire centrale ou principale) ou externe (Mémoire secondaire ).
22
17/10/2018
Les mémoires
Caractéristiques des mémoires
1. La capacité d’une mémoire
La capacité ( taille ) d’une mémoire est le nombre (quantité)
d’informations qu’on peut enregistrer ( mémoriser ) dans cette
mémoire.
La capacité peut s’exprimer en :
Les mémoires
Caractéristiques des mémoires
Volatilité
23
17/10/2018
Les mémoires
Caractéristiques des mémoires
3. Mode d’accès à l’information ( lecture /écriture )
Sur une mémoire on peut effectuer l’opération de :
lecture : récupérer / restituer une information à partir de la
mémoire.
écriture : enregistrer une nouvelle information ou modifier une
information déjà existante dans la mémoire .
Il existe des mémoires qui offrent les deux modes
lecteur/écriture , ces mémoire s’appelles mémoires vives.
Il existent des mémoires qui offrent uniquement la possibilité de
la lecture ( c’est pas possible de modifier le contenu ). Ces
mémoires s’appelles mémoires mortes.
Les mémoires
Caractéristiques des mémoires
4. Temps d’accès
C’est le temps nécessaire pour effectuer une opération de lecture ou
d’écriture.
Par exemple pour l’opération de lecture , le temps d’accès est le temps qui
sépare la demande de la lecture de la disponibilité de l’information.
Demande de
la lecture
Disponibilité de
l’information
Temps d’accès
Le temps d’accès est un critère important pour déterminer les performances d’une mémoire ainsi
que les performances d’une machine.
24
17/10/2018
Les mémoires
Classification des mémoires
Les mémoires
Mémoire à semi-conducteur
Mémoire à
semi-conducteurs
vives Mortes
25
17/10/2018
La mémoire centrale
La mémoire centrale
Caractéristiques de la mémoire centrale
26
17/10/2018
La mémoire centrale
Types des mémoires centrales
Il existent deux grandes familles des mémoires centrales : les mémoires statiques (Static Random
Access Memory :SRAM) et les mémoires dynamiques (Dynamic Random Access Memory:DRAM).
Les RAM statiques
Le bit mémoire d'une RAM statique est composé
d'une bascule(4 et 6 transistors)
faible taux d’intégration
temps d’accès rapide
pas besoin de rafraîchissement
Cher
Les RAM dynamiques
Le bit est réalisé à partir d’un transistor relié à un
petit condensateur
grand taux d’intégration
temps d’accès plus long
plus simples que les mémoires statiques
rafraîchissement (entretenir la mémorisation)
rafraîchissement augmente le temps d'accès aux
informations.
la lecture de l’information est destructive. Donc
toute lecture doit être suivie d’une réécriture DRAM est utilisée pour la mémoire principale
Bon marché SRAM est utilisée pour les caches
la mémoire centrale
Vue logique
Une adresse
vue comme un ensemble de cellules ou cases
contenant chacune une information (une
instruction ou une donnée) sous forme de mots 0001100 0000
ou octets.
Une case ou mot mémoire contient plusieurs 0011100 0001
cellules mémoire. 0111100 0002
Une cellule mémoire stock 1 seul bit . 0001100 …….
Une case ou mot mémoire stocke une
information sur n bits.
0001100 …….
Chaque case ou mot mémoire est repérée par ……..
un numéro d’ordre unique : son adresse.
Contenu d’une case
Une adresse est un numéro unique qui permet (un mot)mémoire
d’accéder à une case ou mot mémoire.
Les adresses sont séquentielles ( consécutives )
La taille de l’adresse ( le nombre de bits )
dépend de la capacité de la mémoire. FFFF
27
17/10/2018
la mémoire centrale
Structure physique
RAM (Registre d’Adresse Mémoire ) : ce R /W
registre stock l’adresse du mot à lire ou
a écrire .
RIM ( Registre d’information mémoire ) :
D
E
la mémoire centrale
Comment calculer la capacité d’une MC ?
Soit k la taille du bus d’adresses ( taille du registre RAM)
Soit n la taille du bus de données ( taille du registre RIM ou la taille d’un
mot mémoire )
On peut exprimer la capacité de la mémoire centrale soit en nombre de
mots mémoire ou en bits ( octets, kilo-octets,….)
La capacité = 2k Mots mémoire
La capacité = 2k * n Bits
Exemple :
Dans une mémoire la taille du bus d’adresses K=14 et la taille du bus de
données n=4. Calculer la capacité de cette mémoire ?
C=214 (16384) Mots de 4 bits
C= 214 * 4 = 65536 Bits = 8192 Octets = 8 Ko
28
17/10/2018
la mémoire centrale
Comment sélectionner un mot mémoire ?
Lorsque une adresse est chargée dans le registre RAM , le décodeur va recevoir
la même information que celle du RAM.
A la sortie du décodeur nous allons avoir une seule sortie qui est active Cette
sortie va nous permettre de sélectionner un seule mot mémoire.
Un mot
mémoire
57 n bits
la mémoire centrale
Comment lire une information ?
Pour lire une information en mémoire centrale il faut effectuer les opérations
suivantes:
Charger dans le registre RAM l’adresse du mot à lire.
Lancer la commande de lecture ( R/W=1)
L’information est disponible dans le registre RIM au bout d’un certain
temps ( temps d’accès)
29
17/10/2018
R/W CS
CS (Chip Select ) : c’est une commande en
logique négative qui permet de sélectionner
( activer ) un boîtier . D
E
CS=0 le boîtier est sélectionné R C
O
CS=1 le boîtier n’est pas sélectionné A D Un Boîtier
M E
U
R
E
RIM
30
17/10/2018
Pour sélectionner les boîtiers on utilise les bits de poids forts d’adresses. Si P est le
facteur d’extension lignes alors on prend k bits tel que P=2k.
Les autres bits d’adresses restants sont utilisés pour sélectionner un mot dans un boîtier.
Solution :
(m,n)=(1024,8) taille du bus d’adresses est de 10 bits (A9…A0), taille
du bus de données est de 8 bits (D7….D0)
(m’,n’)=(256,4) taille du bus d’adresses est de 8 bits (A7…A0), taille du
bus de données est de 4 bits (D3….D0)
31
17/10/2018
R/W
CS CS
D 70
D 74 D 30 8 bits
CS CS
A98
D 74 D 30
CS CS
D 74 D 30
CS CS
A70
8 bits
D 74 D 30
32
17/10/2018
MC
M1 M2 M3 M4
P1 P2 P3 P4
Remarques :
•Les adresses à l’intérieur d’un module sont séquentiels ( successives )
•C’est possible qu’un module soit réaliser avec des boîtiers de taille inférieur ( il faut calculer
les facteur d’extension lignes et colonnes )
33
17/10/2018
Solution :
Capacité = 4 Ko = 4* 210 = 212 la taille du bus d’adresses est de 12 bits ( A110).
4 modules 2 bits du poids forts pour la sélection des modules ( A1110)
Les autres bits pour la sélection d’un mot dans un module ( A90)
R/W
Module 0
CS
D 70
D 70 8 bits
CS
Module 1
A1110
D 70
CS Module 2
D 70
CS
Module 3
A90
10 bits
D 70
68
34
17/10/2018
35
17/10/2018
R/W
Bloc 0
CS
D 30
D 30
4 bits
CS
Bloc 1
A10
D 30
CS Bloc 2
D 30
CS
Bloc 3
A32
2 bits
D 30
36
17/10/2018
37
17/10/2018
Module 0
CS Bloc 0
D 70
D 70
8 bits
M0
Bloc 1
CS
A5 M1
D 70
Module 1
B0 CS
A0 Bloc 0
B1
D 70
CS Bloc 1
A41
4 bits
D 70
38
17/10/2018
39
17/10/2018
La Mémoire Cache
Organisation hiérarchique de la mémoire d’un ordinateur
Registres du processeur (au plus près du processeur)
Mémoire
Interne du
Cache (niveaux L1, L2, …)
Système
Cache: mémoire très rapide placée entre une unité rapide et une mémoire lente afin d’accélérer
les accès mémoire.
La taille d’une cache est plus petite que la mémoire lente à laquelle est est branchée
La cache contient des blocs de données plutôt que des données individuelles.
40
17/10/2018
La Mémoire Cache
Pour améliorer les performances :
• Garder au plus près du processeur (en cache), les accès récents
• De manière à accéder le moins possible à la mémoire externe
mots blocs
Processeur Cache Mémoire principale (RAM)
La Mémoire Cache
hiérarchie de caches
Le cache doit être suffisamment grand pour stocker toutes les données nécessaires
Le cache doit être suffisamment réduit pour permettre d’accéder aux informations rapidement
Chaque cœur a :
• Un cache interne L1 pour les instructions
• Un cache interne L1 pour les données
• Un cache interne L2 instructions et données
Un cache interne L3 commun pour les 4 cœurs
41
17/10/2018
La Mémoire Cache
Remplacement des blocs dans le cache
Il existe différents algorithmes
Du plus efficace au moins efficace :
• Moins récemment utilisé(LRU : Least Recently Used)
• Premier entré premier sorti(FIFO : First In First Out)
• Moins fréquemment utilisé(LFU : Least Frequently Used)
• Remplacement aléatoire
42
17/10/2018
43
17/10/2018
Disque dur
Le disque dur ou Hard Disk Drive est une mémoire de masse magnétique.
Disque dur
Différents éléments d’un disque dur
Carte
44
17/10/2018
Disque dur
Structure et fonctionnement d’un disque dur
Un disque dur est composé de plusieurs plateaux superposés, tournant autour
d’un même axe
Disque dur
Composition
1. Plateau (“platter”): c'est le support de l'information. Il conserve
physiquement les données. Sur les disques durs de grande capacité, on trouve,
en général, plusieurs plateaux.
2. Tête de lecture (“head”): lit et écrit les données au fur et à mesure que le
disque tourne. Chaque plateau possède deux têtes de lecture.
3. et 4. Blocs de données (“block”): les données d’un disque dur sont contenues
par blocs de bits. Représentent la quantité minimale de données pouvant être
lues ou écrites.
5. Piste (“track”): zone concentrique sur laquelle figurent les données d'un
fichier. Chaque piste est divisée en secteurs.
6. Secteur (“sector”): division logique d'une piste. On stocke un bloc par piste
par secteur.
• Un cylindre (“cylinder”) est formé de l’ensemble des pistes pour un rayon donné
de tous les plateaux
45
17/10/2018
Disque dur
Composition
46
17/10/2018
47
17/10/2018
48
17/10/2018
Entrées-Sorties
49
17/10/2018
50
17/10/2018
51
17/10/2018
Chaque contrôleur qui pilotent les périphériques et gèrent les accès au bus
Si un contrôleur lit ou écrit directement en mémoire il fait un Direct Acces Memory (DMA)
52