Professional Documents
Culture Documents
I.
Chapitre 0
Linformatique telle que nous la connaissons aujourdhui est apparue au milieu du 20 sicle.
Les blocs gnraux de lordinateur sont sur la page 4 et 128.
1. Les types darchitectures dordinateurs :
Modle de Von Neumann : Cette architecture repose sur lide que la mmoire
de lordinateur ne devrait pas servir qu stocker uniquement des donnes, mais
elle devrait galement stocker les programmes. On a un seul bus pour les
donnes et les instructions. Les ordinateurs actuels reposent sur ce type
darchitecture. Lorganisation dun ordinateur qui suit ce type darchitecture est :
Une mmoire
Une unit de calculs CA (Central Arithmetical part) que nous
appelons aujourdhui ALU
Une unit de contrle CC (Central Control device)
Modle de Harvard : Les donnes et les instructions sont stockes dans des
mmoires diffrentes et utilisent des bus diffrents. Cela rend les ordinateurs de
type Harvard plus rapides car ils sont capables de lire en mme temps une
instruction et une donne, alors quavec une architecture de type Von Neumann,
on peut soit lire une instruction, soit lire/crire une donne.
2. Les gnrations technologiques :
On doit organiser en gros la communication entre trois lments principaux qui sont :
Le processeur
La mmoire
Les entres / sorties (priphriques)
Dfinitions gnrales concernant une architecture dune machine multiniveaux : (voir page 14)
Un langage machine : lensemble des instructions directement excutable par un ordinateur
Soit un langage L2 plus simple manipuler que L1
Un traducteur : Remplace chaque instruction de L2 par L1 qui est quivalente. On obtient un
nouveau programme crit en L1
Un interprteur : excuter chaque squence dinstruction L1 quivalente une instruction de
L2.
Machine virtuelle : Ordinateur dont le langage machine est L2.
Couches et Niveaux : Srie de langages chacun est plus pratique que son prdcesseur. Chaque
langage sappuie sur son prdcesseur.
Une machine n niveaux peut tre vue comme n machines virtuelles.
Toute machine dfinit un langage, tout langage dfinit une machine. Ce qui donne
LANGAGEMACHINE
Les niveaux des machines actuelles (voir page 15).
II.
Chapitre 1
1. Excution dune instruction
2. Les mmoires
Nous appelons mmoire tout dispositif capable de stocker des informations (instructions et
donnes) de telle sorte que lorgane qui les utilise puisse nimporte quel moment accder
linformation quil demande. Les informations peuvent tre crites ou lues. Il y a criture
lorsquon enregistre des donnes en mmoire, lecture lorsquon sort des informations
prcdemment enregistres. La lecture peut tre destructive (linformation lue nest plus en
mmoire) ou non.
Le processeur est en gros :
UAL : effectue les oprations
Les registres : Stocke les valeurs des oprandes
Dcodeur, squenceur, compteur ordinal
Le temps de latence : Pour un disque dur, le temps de latence est le temps moyen
dattente une fois sur la bonne piste
o
o
Asynchrone : FPM,EDO,
Synchrone : SDRAM,DDR-SDRAM,RDRAM,
Mmoire asynchrone : Pour ce type de mmoire, lintervalle de temps entre deux accs
mmoire conscutive nest pas rgulier. Le processeur ne sait donc pas quand linformation
quil attend est disponible et doit attendre (wait-state) que la mmoire lui transmette les
donnes.
Mmoire synchrone : La cadence de sortie des informations est rgulire, on vite ainsi les
tats dattente (wait state) du processeur.
6. Comparaison SRAM/DRAM
Les mmoires mortes ou ROM (Read Only Memory) sont des mmoires non volatiles qui sont
voues tre accdes en lecture en fonctionnement normal. Elles contiennent du code et des
donnes qui ne sont pas amens changer souvent. Les ROM contiennent gnralement les
routines daccs de base aux priphriques. Les types de ROM sont : EPROM,PROM,Flash ,
8. Frquence et dbit mmoire
Debit=Frequence*Largeur*Coef
9. La mmoire cache
La mmoire cache est une mmoire rapide qui enregistre temporairement des donnes
provenant dautres sources de donnes, et ceci afin de diminuer le temps daccs (en lecture ou
en criture) dun matriel informatique ces donnes. Elles sont souvent fabriques avec de la
mmoire SRAM. Le cache contient une copie des donnes originelles lorsqu'elles sont
coteuses (en termes de temps d'accs) rcuprer ou calculer par rapport au temps d'accs
au cache. Une fois les donnes stockes dans le cache, l'utilisation future de ces donnes peut
tre ralise en accdant la copie en cache plutt qu'en rcuprant ou recalculant les
donnes, ce qui abaisse le temps d'accs moyen.
Notre mmoire cache est, comme toutes les autres mmoires, divises en cases mmoires,
qu'on peut modifier individuellement. Dans un cache, ces cases mmoires sont regroupes en
blocs de taille fixe qu'on appelle des lignes de cache. Les lignes de caches sont forms dun
ensemble de mots (chaque mot=un octet).
On distingue les caches en fonction de leur taille et de leur localit :
La mmoire cache de premier niveau (L1) situe lintrieur du processeur et
dont la taille est de 2 fois 8ko ou 2 fois 16ko (Pentium Pro)
La mmoire cache de second niveau (L2) situe dans le botier du processeur
et dont la taille varie de 256 512 KO
La mmoire cache de troisime niveau (L3) situe prsent au niveau du
processeur et dont la taille varie de 6 24 Mo.
La mmoire cach est en fait un dispositif de stockage des donnes et de reprage de leur
emplacement en mmoire. On peut reprsenter ce dispositif sous forme dune table
comportant au minimum trois champs :
Un bit indiquant si la ligne de la table est valide ou non
La donne stocker
Un champ permettant didentifier ladresse qui est soit ladresse entire soit
une tiquette qui identifie ladresse relle laquelle la donne se trouve.
Le mapping
La mmoire cache ne pouvant contenir toute la mmoire principale, il faut dfinir une mthode
indiquant quelle adresse de la mmoire cache doit tre crite une ligne de la mmoire
principale. Cette mthode s'appelle le mapping. Il existe trois types de mapping rpandus dans
les caches aujourd'hui :
Une ligne de cache est partage par de nombreuses adresses de la mmoire de niveau suprieur. Il nous faut donc
un moyen de savoir quelle donne est actuellement dans le cache. Cette information est donne par le tag, qui
est une partie de ladresse mmoire dorigine de la donne stocke dans le cache. L'index correspond la
ligne o est enregistre la donne. En outre, le contrleur de la mmoire cache doit savoir si une adresse
donne contient une donne ou non. Un bit additionnel (appel bit de validit) est charg de cette information.
Prenons l'exemple d'une adresse de 32 bits donnant accs une mmoire adressable par octet, d'une taille de
ligne de 256 bits et d'une mmoire cache de kibioctets. La mmoire cache contient donc
bits (1 Kio =
octets et 1 octet =
bits). Sachant qu'une ligne est de 256 bits soit bits, nous dduisons qu'il y a
lignes stockables en mmoire cache. Par consquent, l'index est de s+5 bits.
L'adresse de 32 bits permet d'accder une mmoire de
octets, soit
bits. L'index tant de s+5 bits, il faut
distinguer
lments de la mmoire principale par ligne de cache. Le tag est donc de 22-s bits.
De plus, une ligne a une taille de 256 bits soit 32 octets. La mmoire tant adressable par octet, cela implique un
offset de 5 bits. L'offset est le dcalage l'intrieur d'une ligne pour accder un octet particulier.
Ces calculs donnent le dcoupage de l'adresse suivant(schma ci-dessous) pour une mmoire cache mappe
directement :
Le mapping direct est une stratgie simple mais peu efficace car elle cre de nombreux dfauts de cache
conflictuels. Une solution est de permettre une adresse de la mmoire principale d'tre enregistre un nombre
limit d'adresses de la mmoire cache. Cette solution est prsente dans la section suivante.
10.
Le disque dur est lun des composants (ou priphrique) de lordinateur servant conserver les
donnes de manire persistante, contrairement la mmoire vive qui est volatile.
Organisation interne
Le disque dur est constitu dun ou plusieurs plateaux entre lesquels passent des ttes de
lecture/criture solidaires dun bras qui autorise le dplacement des ttes sur toute la surface
du disque. Plus la vitesse de rotation est importante, plus le disque est performant.
Le formatage
Durant le formatage, on divise le disque en plusieurs parties. Chaque secteur contient 512
octets. Le FAT est compos de cluster. Les clusters sont des listes chaines. Chaque cluster
contient ladresse du cluster suivant.
FATX : X est le nombre de bits du cluster. Lors du formatage, on divise le disque dur en
partitions. Les clusters contiennent les adresses des donnes.
1Mo=2^20
1Go=2^30
XMo=2^20+X
Voir la page 35 pour le calcul des tailles des clusters.
11.
Notion de bus
On appelle bus les diffrents composants qui dialoguent (ou changent de linformation) au
travers de canaux de communications.
Un bus se dcompose en 3 parties :
Le bus dadresse qui permet de spcifier quelle adresse mmoire on dsire accder.
Le bus de donnes qui permet de spcifier denvoyer ou de recevoir une donne.
Le bus de commandes qui permet de spcifier si on effectue une lecture ou une criture.
Un bus est caractris par :
Son type : parallle ou srie
Sa largeur : exprime en nombre de bits ou doctets : il sagit du nombre de bits qui sont
transfrs en mme temps
Sa frquence : exprime en Hz. Elle indique la vitesse de transfert de linformation.
On peut dterminer la bande passante partir de ces lments partir de la relation :
Bande passante=frquence*largeur
Plus la bande passante est importante, plus le bus est performant.
Bus synchrone : Toute opration sur le bus est effectue en un nombre entier de priode
dhorloge : cycle de bus.
Caractristique : Il dispose dune ligne spcifique dhorloge pilote par un oscillateur quartz
signal de frquence de 5 50 Mhz.
Bus asynchrone : Pas dhorloge pour piloter le bus. Un cycle de bus est aussi long quil le faut.
III.
TDS
TD 1
Norme IEEE 754 32 bits : Cest une norme pour la reprsentation des nombres virgule
flottante en binaire.
TD 2
A retenir
Pour un accs direct : Taille de lindex = taille du cache/taille du bloc
Ladresse du bloc est trouv par la taille des blocs
Pour un accs n groupes : ladresse dans le bloc est trouve par la mme
manire
La taille de lindex=taille du cache/(nombre de groupe*taille du bloc)
Les adresses envoyes par le C sont de la forme :
Ctl Etiquette Instructions ou donnes
Ctl : bit qui permet de vrifier la validit de la ligne (Tjs 1 bit)
Etiquette : si Ctl=1 on compare le Tag avec le Tag donn par le C. Si cest le bon on
a trouv le bloc recherch (Cache hit)
TD 4
Notation polonaise :
Oprateur : cest les oprations normales +,*,/
Oprandes : ce sont les chiffres habituels 1,2,3,
La notation polonaise inverse est invente dans les annes 50 pour but dliminer
les parenthses dune expression mathmatique.
Le principe gnrale est assez simple : Il faut lire lexpression de gauche droite en
extrayant un un chacun de ses lments. En jargon informatique anglais, un
lment dune expression est appel token. Lorsque le token est un oprande, on
le place en sortie dans lexpression postfixe. Lorsque le token est un oprateur, on
le met de ct. Et lorsquil nya plus de token en entre, on va rechercher
loprateur que lon concatne lexpression postfixe.
La division et la multiplication sont prioritaires sur laddition et la soustraction
Lalgorithme de ralisation est le suivant :