Vous êtes sur la page 1sur 56

Informatique Industrielle

Anne 2004 - 2005

Architecture des ordinateurs


Note de cours
T.Dumartin

1 GENERALITES
1.1
1.2
1.3
1.4
1.5

INTRODUCTION
QUENTEND-T-ON PAR ARCHITECTURE ?
QUEST CE QUUN MICROPROCESSEUR ?
RAPPELS
OU TROUVE-T-ON DES SYSTEMES A MICROPROCESSEUR ?

2 ARCHITECTURE DE BASE
2.1
2.2
2.3
2.4
2.5
2.6

MODELE DE VON NEUMANN


LUNITE CENTRALE
LA MEMOIRE PRINCIPALE
LES INTERFACES DENTREES/SORTIES
LES BUS
DECODAGE DADRESSES

5
5
5
6
6

7
7
7
7
8
8
8

3 LES MEMOIRES

3.1 ORGANISATION DUNE MEMOIRE


3.2 CARACTERISTIQUES DUNE MEMOIRE
3.3 DIFFERENTS TYPES DE MEMOIRE
3.3.1 LES MEMOIRES VIVES (RAM)
3.3.1.1
Les RAM statiques
3.3.1.2
Les RAM dynamiques
3.3.1.3
Conclusions
3.3.2 LES MEMOIRES MORTES (ROM)
3.3.2.1
LA ROM
3.3.2.2
La PROM
3.3.2.3
LEPROM ou UV-EPROM
3.3.2.4
LEEPROM
3.3.2.5
La FLASH EPROM
3.4 CRITERES DE CHOIX DUNE MEMOIRE
3.5 NOTION DE HIERARCHIE MEMOIRE

9
10
11
11
11
11
12
12
13
13
14
14
15
16
16

4 LE MICROPROCESSEUR

18

4.1 ARCHITECTURE DE BASE DUN MICROPROCESSEUR


4.1.1 LUNITE DE COMMANDE
4.1.2 LUNITE DE TRAITEMENT
4.1.3 SCHEMA FONCTIONNEL
4.2 CYCLE DEXECUTION DUNE INSTRUCTION
4.3 JEU DINSTRUCTIONS
4.3.1 DEFINITION
4.3.2 TYPE DINSTRUCTIONS
4.3.3 CODAGE
4.3.4 MODE DADRESSAGE
4.3.5 TEMPS DEXECUTION
4.4 LANGAGE DE PROGRAMMATION
4.5 PERFORMANCES DUN MICROPROCESSEUR
4.6 NOTION DARCHITECTURE RISC ET CISC
4.6.1 LARCHITECTURE CISC

18
18
19
19
20
22
22
22
22
22
22
23
23
24
24

4.6.1.1
Pourquoi
4.6.1.2
Comment
4.6.2 LARCHITECTURE RISC
4.6.2.1
Pourquoi
4.6.2.2
Comment
4.6.3 COMPARAISON
4.7 AMELIORATIONS DE LARCHITECTURE DE BASE
4.7.1 ARCHITECTURE PIPELINE
4.7.1.1
Principe
4.7.1.2
Gain de performance
4.7.1.3
Problmes
4.7.2 NOTION DE CACHE MEMOIRE
4.7.2.1
Problme pos
4.7.2.2
Principe
4.7.3 ARCHITECTURE SUPERSCALAIRE
4.7.4 ARCHITECTURE PIPELINE ET SUPERSCALAIRE
4.8 PROCESSEURS SPECIAUX
4.8.1 LE MICROCONTROLEUR
4.8.2 LE PROCESSEUR DE SIGNAL
4.9 EXEMPLES
4.9.1 AMD ATHLON :
4.9.2 INTEL PENTIUM III

24
24
24
24
24
25
25
25
25
26
27
27
27
28
29
29
30
30
30
30
30
31

5 LES ECHANGES DE DONNEES


5.1 LINTERFACE DENTREE/SORTIE
5.1.1 ROLE
5.1.2 CONSTITUTION
5.2 TECHNIQUES DECHANGE DE DONNEES
5.2.1 ECHANGE PROGRAMME
5.2.1.1
Scrutation
5.2.1.2
Interruption
5.2.2 ECHANGE DIRECT AVEC LA MEMOIRE
5.3 TYPES DE LIAISONS
5.3.1 LIAISON PARALLELE
5.3.2 LIAISON SERIE
5.4 NOTION DE RESEAU
5.4.1 INTRODUCTION
5.4.2 LE MODELE OSI
5.4.3 CLASSIFICATION DES RESEAUX
5.4.4 TOPOLOGIE DES RESEAUX

33
33
33
33
34
34
34
34
35
36
36
36
38
38
39
40
41

6 UN EXEMPLE - LE PC

43

6.1 LUNITE CENTRALE


6.1.1 LA CARTE MERE
6.1.2 LE MICROPROCESSEUR
6.1.3 LA MEMOIRE
6.1.4 LA CARTE VIDEO
6.1.4.1
Le GPU
6.1.4.2
La mmoire vido
6.1.4.3
Le RAMDAC
6.1.4.4
Les entres/sorties vido
6.1.5 LES PERIPHERIQUES INTERNES DE STOCKAGE
6.1.5.1
Le disque dur
6.1.5.2
Les disques optiques

43
43
46
48
49
50
50
50
51
51
51
52

Chapitre

1 Gnralits

1.1 Introduction
L'informatique, contraction d'information et automatique, est la science du traitement de
l'information. Apparue au milieu du 20me sicle, elle a connu une volution extrmement rapide. A
sa motivation initiale qui tait de faciliter et d'acclrer le calcul, se sont ajoutes de nombreuses
fonctionnalits, comme l'automatisation, le contrle et la commande de processus, la communication
ou le partage de l'information.
Le cours darchitecture des systmes microprocesseurs expose les principes de base du
traitement programm de linformation. La mise en uvre de ces systmes sappuie sur deux modes
de ralisation distincts, le matriel et le logiciel. Le matriel (hardware) correspond laspect concret
du systme : unit centrale, mmoire, organes dentres-sorties, etc Le logiciel (software)
correspond un ensemble dinstructions , appel programme, qui sont contenues dans les diffrentes
mmoires du systme et qui dfinissent les actions effectues par le matriel.

1.2 Quentend-t-on par architecture ?


L'architecture d'un systme microprocesseur reprsente lorganisation de ses diffrentes
units et de leurs interconnexions. Le choix d'une architecture est toujours le rsultat d'un compromis :
-

entre performances et cots


entre efficacit et facilit de construction
entre performances d'ensemble et facilit de programmation
etc

1.3 Quest ce quun microprocesseur ?


Un microprocesseur est un circuit intgr complexe. Il
rsulte de lintgration sur une puce de fonctions logiques
combinatoires (logiques et/ou arithmtique) et squentielles
(registres, compteur, etc). Il est capable d'interprter et
d'excuter les instructions d'un programme. Son domaine
dutilisation est donc presque illimit.
Le concept de microprocesseur a t cr par la
Socit Intel. Cette Socit, cre en 1968, tait spcialise
dans la conception et la fabrication de puces mmoire. la
demande de deux de ses clients fabricants de calculatrices
et de terminaux Intel tudia une unit de calcul
implmente sur une seule puce. Ceci donna naissance, en 1971, au premier microprocesseur, le
4004, qui tait une unit de calcul 4 bits fonctionnant 108 kHz. Il rsultait de lintgration denviron
2300 transistors.
Remarques :
La ralisation de circuits intgrs de plus en plus complexe a t rendue possible par
lapparition du transistor en 1947. Il a fallu attendre 1958 pour voir apparatre le 1ier circuit intgr
ralis par Texas Instrument.

1.4 Rappels
Les informations traites par un microprocesseur sont de diffrents types (nombres,
instructions, images, vido, etc) mais elles sont toujours reprsentes sous un format binaire. Seul
le codage changera suivant les diffrents types de donnes traiter. Elles sont reprsentes
physiquement par 2 niveaux de tensions diffrents.
En binaire, une information lmentaire est appel bit et ne peut prendre que deux valeurs
diffrentes : 0 ou 1.
Une information plus complexe sera code sur plusieurs bit. On appelle cet ensemble un mot.
Un mot de 8 bits est appel un octet.
Reprsentation dun nombre entier en binaire :
Les nombres sont exprims par des chiffres pouvant prendre deux valeurs 0 ou 1. A chaque
chiffre est affect un poids exprim en puissance de 2.
Ex : ( 101 )2 <> 1x 2 + 0x21 + 1x20 = ( 5 )10
Reprsentation dun nombre entier en hexadcimal :
Lorsquune donne est reprsente sur plus de 4 bits, on prfre souvent lexprimer en
hexadcimal. Les nombres sont exprims par des chiffres et des lettres pouvant prendre 16 valeurs :
0123456789ABCDEF
A chaque chiffre est affect un poids exprim en puissance de 16.
Ex : ( 9A )16 <> 9x161 + Ax160 = 9x161 + 10x160 = ( 154 )10
Attention !! :
1 kilobit = 210 bit = 1024 bit
1 mgabit = 210 kbit = 1024 kbit
1 gigabit = 210 Mbit = 1024 Mbit

1.5 O trouve-t-on des systmes microprocesseur ?


Les applications des systmes microprocesseurs sont multiples et varies :
- Ordinateur, PDA
- console de jeux
- calculatrice
- tlvision
- tlphone portable
- distributeur automatique dargent
- robotique
- lecteur carte puce, code barre
- automobile
- instrumentation
- etc

Chapitre

2 Architecture de base

2.1 Modle de von Neumann


Pour traiter une information, un microprocesseur seul ne suffit pas, il faut linsrer au sein dun
systme minimum de traitement programm de linformation. John Von Neumann est l'origine d'un
modle de machine universelle de traitement programm de linformation (1946). Cette architecture
sert de base la plupart des systmes microprocesseur actuel. Elle est compos des lments
suivants :
une unit centrale
une mmoire principale
des interfaces dentres/sorties
Les diffrents organes du systme sont relis par des voies de communication appeles bus.

Unit centrale

Mmoire
Principale

Interface E/S

bus

2.2 Lunit centrale


Elle est compose par le microprocesseur qui est charg dinterprter et dexcuter les
instructions dun programme, de lire ou de sauvegarder les rsultats dans la mmoire et de
communiquer avec les units dchange. Toutes les activits du microprocesseur sont cadences par
une horloge.
On caractrise le microprocesseur par :

sa frquence dhorloge : en MHz ou GHz


le nombre dinstructions par secondes quil est capable dexcuter : en MIPS
la taille des donnes quil est capable de traiter : en bits

2.3 La mmoire principale


Elle contient les instructions du ou des programmes en cours dexcution et les donnes
associes ce programme. Physiquement, elle se dcompose souvent en :

une mmoire morte ( ROM = Read Only Memory ) charge de stocker le


programme. Cest une mmoire lecture seule.

une mmoire vive ( RAM = Random Access Memory ) charge de stocker les
donnes intermdiaires ou les rsultats de calculs. On peut lire ou crire des
donnes dedans, ces donnes sont perdues la mise hors tension.

Remarque :
Les disques durs, disquettes, CDROM, etc sont des priphriques de stockage et sont considrs
comme des mmoires secondaires.

2.4 Les interfaces dentres/sorties


Elles permettent dassurer la communication entre le microprocesseur et les priphriques. (
capteur, clavier, moniteur ou afficheur, imprimante, modem, etc).

2.5 Les bus


Un bus est un ensemble de fils qui assure la transmission du mme type dinformation. On
retrouve trois types de bus vhiculant des informations en parallle dans un systme de traitement
programm de linformation :
- un bus de donnes : bidirectionnel qui assure le transfert des
informations entre le microprocesseur et son environnement, et inversement. Son nombre de lignes
est gal la capacit de traitement du microprocesseur.
- un bus d'adresses: unidirectionnel qui permet la slection des
informations traiter dans un espace mmoire (ou espace adressable) qui peut avoir 2n
emplacements, avec n = nombre de conducteurs du bus d'adresses.
- un bus de commande: constitu par quelques conducteurs qui assurent
la synchronisation des flux d'informations sur les bus des donnes et des adresses.

2.6 Dcodage dadresses


La multiplication des priphriques autour du microprocesseur oblige la prsence dun
dcodeur dadresse charg daiguiller les donnes prsentes sur le bus de donnes.
En effet, le microprocesseur peut communiquer avec les diffrentes mmoires et les diffrents
botier dinterface. Ceux-ci sont tous relis sur le mme bus de donnes et afin dviter des conflits, un
seul composant doit tre slectionn la fois.
Lorsquon ralise un systme microprogramm, on attribue donc chaque priphrique une zone
dadresse et une fonction dcodage dadresse est donc ncessaire afin de fournir les signaux de
slection de chacun des composants.
Dcodeur
dadresses

Bus dadresses
Bus de

Unit centrale

commande

Mmoire
Principale

Interface E/S

Bus de donnes

Remarque : lorsquun composant nest pas slectionn, ses sorties sont mises ltat haute
impdance afin de ne pas perturber les donnes circulant sur le bus. ( elle prsente une impdance
de sortie trs leve = circuit ouvert ).

Chapitre

3 Les mmoires

Une mmoire est un circuit semi-conducteur permettant denregistrer, de


conserver et de restituer des informations (instructions et variables). Cest cette capacit de
mmorisation qui explique la polyvalence des systmes numriques et leur adaptabilit de
nombreuses situations. Les informations peuvent tre crites ou lues. Il y a criture lorsqu'on
enregistre des informations en mmoire, lecture lorsqu'on rcupre des informations prcdemment
enregistres.

3.1 Organisation dune mmoire


Une mmoire peut tre reprsente comme une armoire de rangement constitue de diffrents
tiroirs. Chaque tiroir reprsente alors une case mmoire qui peut contenir un seul lment : des
donnes. Le nombre de cases mmoires pouvant tre trs lev, il est alors ncessaire de pouvoir
les identifier par un numro. Ce numro est appel adresse. Chaque donne devient alors
accessible grce son adresse
Adresse

Case mmoire

7 = 111
6 = 110
5 = 101
4 = 100
3 = 011
2 = 010
1 = 001
0 = 000

0001 1010

Avec une adresse de n bits il est possible de rfrencer au plus 2n cases mmoire. Chaque
case est remplie par un mot de donnes (sa longueur m est toujours une puissance de 2). Le nombre
de fils dadresses dun botier mmoire dfinit donc le nombre de cases mmoire que comprend le
botier. Le nombre de fils de donnes dfinit la taille des donnes que lon peut sauvegarder dans
chaque case mmoire.
En plus du bus dadresses et du bus de donnes, un botier mmoire comprend une entre de
commande qui permet de dfinir le type daction que lon effectue avec la mmoire (lecture/criture) et
une entre de slection qui permet de mettre les entres/sorties du botier en haute impdance.
On peut donc schmatiser un circuit mmoire par la figure suivante o lon peut distinguer :
Adresses
(n bits)

R/W

Mmoire

Donnes (m bits)

CS
 les entres dadresses
 les entres de donnes
 les sorties de donnes
 les entres de commandes :
-

une entre de slection de lecture ou dcriture. ( R/W )

une entre de slection du circuit. ( CS )

Une opration de lecture ou dcriture de la mmoire suit toujours le mme cycle :


1.
2.
3.
4.

slection de ladresse
choix de lopration effectuer ( R/W )
slection de la mmoire ( CS = 0 )
lecture ou criture la donne

Remarque :
Les entres et sorties de donnes sont trs souvent regroupes sur des bornes bidirectionnelles.

3.2 Caractristiques dune mmoire


La capacit : cest le nombre total de bits que contient la mmoire. Elle sexprime aussi
souvent en octet.
Le format des donnes : cest le nombre de bits que lon peut mmoriser par case mmoire.
On dit aussi que cest la largeur du mot mmorisable.
Le temps daccs : cest le temps qui s'coule entre l'instant o a t lance une opration
de lecture/criture en mmoire et l'instant o la premire information est disponible sur le bus
de donnes.
Le temps de cycle : il reprsente l'intervalle minimum qui doit sparer deux demandes
successives de lecture ou d'criture.
Le dbit : cest le nombre maximum d'informations lues ou crites par seconde.
Volatilit : elle caractrise la permanence des informations dans la mmoire. L'information
stocke est volatile si elle risque d'tre altre par un dfaut d'alimentation lectrique et non
volatile dans le cas contraire.
Exemple : Chronogramme dun cycle de lecture
BUS @

@x

R/ W

Donnes
accessibles

CS
BUS D

Dx
Taccs
Tcycle

Remarque :
Les mmoires utilises pour raliser la mmoire principale dun systme microprocesseur
sont des mmoires semi-conducteur. On a vu que dans ce type de mmoire, on accde directement
n'importe quelle information dont on connat l'adresse et que le temps mis pour obtenir cette
information ne dpend pas de l'adresse. On dira que l'accs une telle mmoire est alatoire ou
direct.
A l'inverse, pour accder une information sur bande magntique, il faut drouler la bande en
reprant tous les enregistrements jusqu' ce que l'on trouve celui que l'on dsire. On dit alors que
l'accs l'information est squentiel. Le temps d'accs est variable selon la position de l'information
recherche. L'accs peut encore tre semi-squentiel : combinaison des accs direct et squentiel.
Pour un disque magntique par exemple l'accs la piste est direct, puis l'accs au secteur est
squentiel.

10

3.3 Diffrents types de mmoire


3.3.1 Les mmoires vives (RAM)
Une mmoire vive sert au stockage temporaire de donnes. Elle doit avoir un temps de cycle
trs court pour ne pas ralentir le microprocesseur. Les mmoires vives sont en gnral volatiles : elles
perdent leurs informations en cas de coupure d'alimentation. Certaines d'entre elles, ayant une faible
consommation, peuvent tre rendues non volatiles par l'adjonction d'une batterie. Il existe deux
grandes familles de mmoires RAM (Random Acces Memory : mmoire accs alatoire) :
Les RAM statiques
Les RAM dynamiques

3.3.1.1 Les RAM statiques


Le bit mmoire d'une RAM statique (SRAM) est compos d'une bascule. Chaque bascule
contient entre 4 et 6 transistors.
@7
@6
@5
@4
@3
@2
@1
@0
D7 D5 D3 D1
D6 D4 D2 D0

3.3.1.2 Les RAM dynamiques


Dans les RAM dynamiques (DRAM), l'information est mmorise sous la forme d'une charge
lectrique stocke dans un condensateur (capacit grille substrat d'un transistor MOS).

@7
@6
@5
@4
@3
@2
@1
@0
D7 D5 D3 D1
D6 D4 D2 D0

Avantages :
Cette technique permet une plus grande densit d'intgration, car un point mmoire ncessite
environ quatre fois moins de transistors que dans une mmoire statique. Sa consommation sen
retrouve donc aussi trs rduite.
Inconvnients :
La prsence de courants de fuite dans le condensateur contribue sa dcharge. Ainsi,
linformation est perdue si on ne la rgnre pas priodiquement (charge du condensateur). Les RAM
dynamiques doivent donc tre rafrachies rgulirement pour entretenir la mmorisation : il s'agit de
lire l'information et de la recharger. Ce rafrachissement indispensable a plusieurs consquences :
- il complique la gestion des mmoires dynamiques car il faut tenir compte
des actions de rafrachissement qui sont prioritaires.
- la dure de ces actions augmente le temps d'accs aux informations.

11

Dautre part, la lecture de linformation est destructive. En effet, elle se fait par dcharge de la
capacit du point mmoire lorsque celle-ci est charge. Donc toute lecture doit tre suivie dune
rcriture.

3.3.1.3 Conclusions
En gnral les mmoires dynamiques, qui offrent une plus grande densit d'information et un
cot par bit plus faible, sont utilises pour la mmoire centrale, alors que les mmoires statiques, plus
rapides, sont utilises lorsque le facteur vitesse est critique, notamment pour des mmoires de petite
taille comme les caches et les registres.
Remarques :
Voici un historique de quelques DRAM qui ont ou sont utilises dans les PC :

La DRAM FPM (Fast Page Mode, 1987) : Elle permet


d'accder plus rapidement des donnes en
introduisant la notion de page mmoire. (33 50 Mhz)

La DRAM EDO (Extended Data Out, 1995) : Les


composants de cette mmoire permettent de conserver
plus longtemps l'information, on peut donc ainsi
espacer les cycles de rafrachissement. Elle apporte aussi la possibilit danticiper sur le
prochain cycle mmoire. (33 50 Mhz)

La DRAM BEDO (Bursted EDO) : On n'adresse plus chaque unit de mmoire


individuellement lorsqu'il faut y lire ou y crire des donnes. On se contente de transmettre
l'adresse de dpart du processus de lecture/criture et la longueur du bloc de donnes ( Burst
). Ce procd permet de gagner beaucoup de temps, notamment avec les grands paquets de
donnes tels qu'on en manipule avec les applications modernes. (66 Mhz)

La Synchronous DRAM (SDRAM, 1997) :


La
mmoire SDRAM a pour particularit de se
synchroniser sur une horloge. Les mmoires FPM,
EDO taient des mmoires asynchrones et elle
induisaient des temps d'attentes lors de la synchronisation. Elle se compose en interne de
deux bancs de mmoire et des donnes peuvent tre lues alternativement sur l'un puis sur
l'autre de ces bancs grce un procd d'entrelacement spcial. Le protocole d'attente
devient donc tout fait inutile. Cela lui permet de supporter des frquences plus leves
quavant (100 Mhz).

La DDR-I ou DDR-SDRAM (Double Data Rate


Synchronous DRAM, 2000) : La DDR-SDRAM
permet de recevoir ou d'envoyer des donnes lors
du front montant et du front descendant de lhorloge.
(133 200 MHz)

3.3.2 Les mmoires mortes (ROM)


Pour certaines applications, il est ncessaire de pouvoir conserver des informations de faon
permanente mme lorsque l'alimentation lectrique est interrompue. On utilise alors des mmoires
mortes ou mmoires lecture seule (ROM : Read Only Memory). Ces mmoires sont non volatiles.
Ces mmoires, contrairement aux RAM, ne peuvent tre que lue. Linscription en mmoire des
donnes restent possible mais est appele programmation. Suivant le type de ROM, la mthode de
programmation changera. Il existe donc plusieurs types de ROM :
ROM
PROM
EPROM
EEPROM
FLASH EPROM.

12

3.3.2.1 LA ROM
Elle est programme par le fabricant et son contenu ne peut plus tre ni modifi., ni effac par
l'utilisateur.
Structure :

+V

Cette mmoire est compose d'une matrice


dont la programmation seffectue en reliant les
lignes aux colonnes par des diodes. L'adresse
permet de slectionner une ligne de la matrice et
les donnes sont alors reues sur les colonnes (le
nombre de colonnes fixant la taille des mots
mmoire).

adresse

Programmation :
L'utilisateur doit fournir au constructeur un
masque indiquant les emplacements des diode
dans matrice.
Avantages :

f Densit leve
f Non volatile
f Mmoire rapide

donnes

Inconvnients :
f criture impossible
f Modification impossible (toute erreur est fatale).
f Dlai de fabrication (3 6 semaines)
f Obligation de grandes quantits en raison du cot lev qu'entrane la production du masque et le
processus de fabrication.

3.3.2.2 La PROM
Cest une ROM qui peut tre programme une seule fois par l'utilisateur (Programmable ROM). La
programmation est ralise partir dun programmateur spcifique.
Structure :
Les liaisons diodes de la ROM sont remplaces par des fusibles pouvant tre dtruits ou des
jonctions pouvant tre court-circuites.
Programmation :
Les PROM fusible sont livres avec toutes les lignes connectes aux colonnes (0 en chaque
point mmoire). Le processus de programmation consiste donc programmer les emplacements des
1 en gnrant des impulsions de courants par lintermdiaire du programmateur ; les fusibles situs
aux points mmoires slectionns se retrouvant donc dtruits.
Le principe est identique dans les PROM jonctions sauf que les lignes et les colonnes sont
dconnectes (1 en chaque point mmoire). Le processus de programmation consiste donc
programmer les emplacements des 0 en gnrant des impulsions de courants par lintermdiaire du
programmateur ; les jonctions situes aux points mmoires slectionns se retrouvant court-circuites
par effet davalanche.

13

Avantages :
f idem ROM
f Claquage en quelques minutes
f Cot relativement faible
Inconvnients :
f Modification impossible (toute erreur est fatale).

3.3.2.3 LEPROM ou UV-EPROM


Pour faciliter la mise au point d'un programme ou tout simplement permettre une erreur de
programmation, il est intressant de pouvoir reprogrammer une PROM. La technique de claquage
utilise dans celles-ci ne le permet videmment pas. L'EPROM (Erasable Programmable ROM) est
une PROM qui peut tre efface.
Structure

Dans une EPROM, le point mmoire est ralis partir dun


transistor FAMOS (Floating gate Avalanche injection Metal Oxyde
Silicium). Ce transistor MOS a t introduit par Intel en 1971 et a la
particularit de possder une grille flottante.
Programmation

P
Grille flottante
canal

La programmation consiste piger des charges dans la grille


flottante. Pour cela, il faut tout dabord appliquer une trs forte tension
entre Grille et Source. Si lon applique ensuite une tension entre D et
S, la canal devient conducteur. Mais comme la tension Grille-Source
est trs importante, les lectrons sont dvis du canal vers la grille
flottante et capturs par celle-ci. Cette charge se maintient une
dizaine d'annes en condition normale.
Lexposition dune vingtaine de minutes un rayonnement ultraviolet permet dannuler la charge stocke dans la grille flottante. Cet
effacement est reproductible plus dun millier de fois. Les botiers des
EPROM se caractrise donc par la prsence dune petite fentre transparente en quartz qui assure le
passage des UV. Afin dviter toute perte accidentelle de linformation, il faut obturer la fentre
deffacement lors de lutilisation.
Avantages :
f Reprogrammable et non Volatile
Inconvnients :
f Impossible de slectionner une seule cellule effacer
f Impossible deffacer la mmoire in-situ.
f lcriture est beaucoup plus lente que sur une RAM. (environ 1000x)

3.3.2.4 LEEPROM
LEEPROM (Electically EPROM) est une mmoire programmable et effaable lectriquement.
Elle rpond ainsi linconvnient principal de lEPROM et peut tre programme in situ.

14

Structure
Dans une EEPROM, le point mmoire est ralis partir dun transistor SAMOS reprenant le
mme principe que le FAMOS sauf que lpaisseur entre les deux grilles est beaucoup plus faible.
Programmation
Une forte tension lectrique applique entre grille et source conduit la programmation de la
mmoire. Une forte tension inverse provoquera la libration des lectrons et donc leffacement de la
mmoire.
Avantages :
f Comportement d'une RAM non Volatile.
f Programmation et effacement mot par mot possible.
Inconvnients :
f Trs lente pour une utilisation en RAM.
f Cot de ralisation.

3.3.2.5 La FLASH EPROM


La mmoire Flash s'apparente la technologie de lEEPROM. Elle est programmable et
effaable lectriquement comme les EEPROM.
Structure
Il existe deux technologie diffrentes qui se diffrencient par
lorganisation de leurs rseaux mmoire : larchitecture NOR et
NAND. Larchitecture NOR propose un assemblage des cellules
lmentaires de mmorisation en parallle avec les lignes de
slection comme dans une EEPROM classique. Larchitecture NAND
propose un assemblage en srie de ces mmes cellules avec les
lignes de slection. Dun point de vue pratique, la diffrence majeure
entre NOR et NAND tient leurs interfaces. Alors quune NOR
dispose de bus dadresses et de donnes ddis, la NAND est
D7 D5 D3 D1
dote dune interface dE/S indirecte. . Par contre, la structure NAND
D6 D4 D2 D0
autorise une implantation plus dense grce une taille de cellule
approximativement 40 % plus petite que la structure NOR.
Architecture NOR

@7
@6
@5
@4
@3
@2
@1
@0

Programmation

Architecture NAND

Si NOR et NAND exploitent toutes


deux le mme principe de stockage de
charges dans la grille flottante dun
Secteur 1 = @0 n
transistor, lorganisation de leur rseau
@0
@n
mmoire noffre pas la mme
souplesse dutilisation. Les Flash NOR autorise un adressage alatoire qui permet de la programmer
octet par octet alors que la Flash NAND autorise un accs squentiel aux donnes et permettra
seulement une programmation par secteur comme sur un disque dur.
Avantages
Flash NOR :
f Comportement d'une RAM non Volatile.
f Programmation et effacement mot par mot possible.
f Temps daccs faible.

15

Flash NAND :
f Comportement d'une RAM non Volatile.
f Forte densit dintgration cot rduit.
f Rapidit de lcriture/lecture par paquet
f Consommation rduite.
Inconvnients
Flash NOR :
f Lenteur de lcriture/lecture par paquet.
f cot.
Flash NAND :
f Ecriture/lecture par octet impossible.
f Interface E/S indirecte
La Flash EPROM a connu un essor trs important ces dernires annes avec le boom de la
tlphonie portable et des appareils multimdia (PDA, appareil photo numrique, lecteur MP3, etc...).

3.4 Critres de choix dune mmoire


Les principaux critres retenir sont :
f capacit
f vitesse
f consommation
f cot

3.5 Notion de hirarchie mmoire


Une mmoire idale serait une mmoire de grande capacit, capable de stocker un maximum
dinformations et possdant un temps daccs trs faible afin de pouvoir travailler rapidement sur ces
informations. Mais il se trouve que les mmoires de grande capacit sont souvent trs lente et que les
mmoire rapides sont trs chres. Et pourtant, la vitesse daccs la mmoire conditionne dans une
large mesure les performances dun systme. En effet, cest l que se trouve le goulot dtranglement
entre un microprocesseur capable de traiter des informations trs rapidement et une mmoire
beaucoup plus lente (ex : processeur actuel 3Ghz et mmoire 400MHz). Or, on na jamais besoin
de toutes les informations au mme moment. Afin dobtenir le meilleur compromis cot-performance,
on dfinie donc une hirarchie mmoire. On utilise des mmoires de faible capacit mais trs rapide
pour stocker les informations dont le microprocesseur se sert le plus et on utilise des mmoires de
capacit importante mais beaucoup plus lente pour stocker les informations dont le microprocesseur
se sert le moins. Ainsi, plus on sloigne du microprocesseur et plus la capacit et le temps daccs
des mmoire vont augmenter.
+

1 ns

< 400 o
Registre

vitesse

10 ns

Mmoire cache
Mmoire principale
Mmoire dappui

5 ms

Mmoire de masse

16

8 ko 4 Mo suivant
les niveaux
Jusqu 1 Go

capacit

5 ns

2 8 Mo
200 Go

Les registres sont les lments de mmoire les plus rapides. Ils sont situs au niveau du
processeur et servent au stockage des oprandes et des rsultats intermdiaires.
La mmoire cache est une mmoire rapide de faible capacit destine acclrer laccs
la mmoire centrale en stockant les donnes les plus utilises.
La mmoire principale est lorgane principal de rangement des informations. Elle contient
les programmes (instructions et donnes) et est plus lente que les deux mmoires
prcdentes.
La mmoire dappui sert de mmoire intermdiaire entre la mmoire centrale et les
mmoires de masse. Elle joue le mme rle que la mmoire cache.
La mmoire de masse est une mmoire priphrique de grande capacit utilise pour le
stockage permanent ou la sauvegarde des informations. Elle utilise pour cela des supports
magntiques (disque dur, ZIP) ou optiques (CDROM, DVDROM).

17

Chapitre

4 Le microprocesseur

Un microprocesseur est un circuit intgr complexe caractris par une trs


grande intgration et dot des facults d'interprtation et d'excution des instructions d'un programme.
Il est charg dorganiser les tches prcises par le programme et dassurer leur excution. Il doit
aussi prendre en compte les informations extrieures au systme et assurer leur traitement. Cest le
cerveau du systme.
A lheure actuelle, un microprocesseur regroupe sur quelques millimtre carr des
fonctionnalits toujours plus complexes. Leur puissance continue de saccrotre et leur encombrement
diminue rgulirement respectant toujours, pour le moment, la fameuse loi de Moore (1).

4.1 Architecture de base dun microprocesseur


Un microprocesseur est construit autour de deux lments principaux :
Une unit de commande
Une unit de traitement
associs des registres charges de stocker les diffrentes informations traiter. Ces trois lments
sont relis entre eux par des bus interne permettant les changes dinformations.
Bus dadresses
@

Programme
Unit de
traitement

Unit de
commande
Donnes

D
Bus de donnes

Remarques :
Il existe deux types de registres :
les registres d'usage gnral permettent l'unit de traitement de manipuler des
donnes vitesse leve. Ils sont connects au bus donnes interne au
microprocesseur.
les registres d'adresses (pointeurs) connects sur le bus adresses.

4.1.1 Lunit de commande


Elle permet de squencer le droulement des instructions. Elle effectue la recherche en
mmoire de l'instruction. Comme chaque instruction est code sous forme binaire, elle en assure le
dcodage pour enfin raliser son excution puis effectue la prparation de l'instruction suivante. Pour
cela, elle est compose par :
le compteur de programme constitu par un registre dont le contenu est initialis avec
l'adresse de la premire instruction du programme. Il contient toujours ladresse de
linstruction excuter.

(1) Moore (un des co-fondateurs de la socit Intel) a mis l'hypothse que les capacits technologiques permettraient de
multiplier par 2 tous les 18 mois le nombre de transistors intgrs sur les circuits.

le registre d'instruction et le dcodeur d'instruction : chacune des instructions excuter


est range dans le registre instruction puis est dcode par le dcodeur dinstruction.
Bloc logique de commande (ou squenceur) : Il organise l'excution des instructions au
rythme dune horloge. Il labore tous les signaux de synchronisation internes ou externes (bus
de commande) du microprocesseur en fonction des divers signaux de commande provenant
du dcodeur dinstruction ou du registre dtat par exemple. Il s'agit d'un automate ralis soit
de faon cble (obsolte), soit de faon micro-programme, on parle alors de micromicroprocesseur.

4.1.2 Lunit de traitement


Cest le cur du microprocesseur. Elle regroupe les circuits qui assurent les traitements ncessaires
l'excution des instructions :
LUnit Arithmtique et Logique (UAL) est un circuit complexe qui assure les fonctions
logiques (ET, OU, Comparaison, Dcalage , etc) ou arithmtique (Addition, soustraction).
Le registre d'tat est gnralement compos de 8 bits considrer individuellement. Chacun
de ces bits est un indicateur dont l'tat dpend du rsultat de la dernire opration effectue
par lUAL. On les appelle indicateur dtat ou flag ou drapeaux. Dans un programme le
rsultat du test de leur tat conditionne souvent le droulement de la suite du programme. On
peut citer par exemple les indicateurs de :
o retenue (carry : C)
o retenue intermdiaire (Auxiliary-Carry : AC)
o signe (Sign : S)
o dbordement (overflow : OV ou V)
o zro (Z)
o parit (Parity : P)
Les accumulateurs sont des registres de travail qui servent stocker une oprande au dbut
d'une opration arithmtique et le rsultat la fin de l'opration.

4.1.3 Schma fonctionnel


Bus dadresses

Registre d@
Acc.

UAL

Registre
dtats

PC

Programme
Bus de
commande

Bloc logique de commande

Donnes
Registre
dinstruction

Dcodeur
dinstruction

Registre Donnes
H
Bus de donnes

4.2 Cycle dexcution dune instruction


Le microprocesseur ne comprend quun certain nombre dinstructions qui sont codes en
binaire. Le traitement dune instruction peut tre dcompos en trois phases.
Phase 1: Recherche de l'instruction traiter
1. Le PC contient l'adresse de l'instruction suivante du programme. Cette valeur est place 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'accs la mmoire), le contenu de la case mmoire
slectionne est disponible sur le bus des donnes.
3. L'instruction est stocke dans le registre instruction du processeur.
1

microprocesseur

PC

$2000

mmoire
@ $2000

RI

Instr. 1
3
Dcodeur
dinstruction
2

Inst. 1

$2000

Instr. 1

$2001

Opr. 1

$2002

Instr. 2

$2003

Instr. 3

$2004

$FFFF

Phase 2 : Dcodage de linstruction et recherche de l'oprande


Le registre d'instruction contient maintenant le premier mot de l'instruction qui peut tre code sur
plusieurs mots. Ce premier mot contient le code opratoire qui dfinit la nature de l'opration
effectuer (addition, rotation,...) et le nombre de mots de l'instruction.
1. L'unit de commande transforme l'instruction en une suite de commandes lmentaires
ncessaires au traitement de l'instruction.
2. Si l'instruction ncessite une donne en provenance de la mmoire, l'unit de commande
rcupre sa valeur sur le bus de donnes.
3. Loprande est stocke dans un registre.

2
microprocesseur
Bloc
logique de
commande

PC

$2000

mmoire
@ $2001

Instr. 1

RI

Dcodeur
dinstruction

$2000

Instr. 1

$2001

Opr. 1

$2002

Instr. 2

$2003

Instr. 3

$2004

UAL

3
Opr. 2

Opr. 1

Opr. 1

$FFFF

Phase 3 : Excution de l'instruction


1. Le micro-programme ralisant l'instruction est excut.
2. Les drapeaux sont positionns (registre d'tat).
3. L'unit de commande positionne le PC pour l'instruction suivante.

microprocesseur
Bloc
logique de
commande

PC

$2002

3
RI

Instr. 1

Dcodeur
dinstruction

mmoire
$2000

Instr. 1

$2001

Opr. 1

$2002

Instr. 2

$2003

Instr. 3

$2004

UAL

Z=1 C=0

1
Result.

2
Opr. 1

$FFFF

4.3 Jeu dinstructions


4.3.1 Dfinition
La premire tape de la conception dun microprocesseur est la dfinition de son jeu
dinstructions. Le jeu dinstructions dcrit lensemble des oprations lmentaires que le
microprocesseur pourra excuter. Il va donc en partie dterminer larchitecture du microprocesseur
raliser et notamment celle du squenceur. A un mme jeu dinstructions peut correspondre un grand
nombre dimplmentations diffrentes du microprocesseur.

4.3.2 Type dinstructions


Les instructions que lon retrouve dans chaque microprocesseur peuvent tre classes en 4
groupes :
Transfert de donnes pour charger ou sauver en mmoire, effectuer des
transferts de registre registre, etc
Oprations arithmtiques : addition, soustraction, division, multiplication
Oprations logiques : ET, OU, NON, NAND, comparaison, test, etc
Contrle de squence : branchement, test, etc

4.3.3 Codage
Les instructions et leurs oprandes (paramtres) sont stocks en mmoire principale. La taille
totale dune instruction (nombre de bits ncessaires pour la reprsenter en mmoire) dpend du type
dinstruction et aussi du type doprande. Chaque instruction est toujours code sur un nombre entier
doctets afin de faciliter son dcodage par le processeur. Une instruction est compose de deux
champs :
le code instruction, qui indique au processeur quelle instruction raliser
le champ oprande qui contient la donne, ou la rfrence une donne en
mmoire (son adresse).
Exemple :
Code
instruction

Code
oprande

1001 0011

0011 1110

Le nombre d'instructions du jeu d'instructions est directement li au format du code instruction.


Ainsi un octet permet de distinguer au maximum 256 instructions diffrentes.

4.3.4 Mode dadressage


Un mode d'adressage dfinit la manire dont le microprocesseur va accder loprande. Les
diffrents modes d'adressage dpendent des microprocesseurs mais on retrouve en gnral :
l'adressage de registre o lon traite la donnes contenue dans un registre
l'adressage immdiat o lon dfinit immdiatement la valeur de la donne
l'adressage direct o lon traite une donnes en mmoire
Selon le mode dadressage de la donne, une instruction sera code par 1 ou plusieurs octets.

4.3.5 Temps dexcution


Chaque instruction ncessite un certain nombre de cycles dhorloges pour seffectuer. Le
nombre de cycles dpend de la complexit de linstruction et aussi du mode dadressage. Il est plus
long daccder la mmoire principale qu un registre du processeur. La dure dun cycle dpend de
la frquence dhorloge du squenceur.

4.4 Langage de programmation


Le langage machine est le langage
compris par le microprocesseur. Ce langage
Langage haut niveau
est difficile matriser puisque chaque
(for, ifthen, write, etc)
instruction est code par une squence
propre de bits. Afin de faciliter la tche du
compilation
programmeur, on a cr diffrents langages
Langage assembleur
plus ou moins volus.
(sta, lda, cmp, mov, bra, etc)
Le langage assembleur est le langage
le plus proche du langage machine. Il est
assemblage
compos par des instructions en gnral
assez rudimentaires que lon appelle des
Langage machine
mnmoniques. Ce sont essentiellement des
(0001
1101, 1111 0110, etc)
oprations de transfert de donnes entre les
registres et l'extrieur du microprocesseur
(mmoire ou priphrique), ou des oprations arithmtiques ou logiques. Chaque instruction
reprsente un code machine diffrent. Chaque microprocesseur peut possder un assembleur
diffrent.
La difficult de mise en uvre de ce type de langage, et leur forte dpendance avec la machine
a ncessit la conception de langages de haut niveau, plus adapts l'homme, et aux applications
qu'il cherchait dvelopper. Faisant abstraction de toute architecture de machine, ces langages
permettent l'expression d'algorithmes sous une forme plus facile apprendre, et dominer (C, Pascal,
Java, etc). Chaque instruction en langage de haut niveau correspondra une succession
dinstructions en langage assembleur. Une fois dvelopp, le programme en langage de haut niveau
nest donc pas comprhensible par le microprocesseur. Il faut le compiler pour le traduire en
assembleur puis lassembler pour le convertir en code machine comprhensible par le
microprocesseur. Ces oprations sont ralises partir de logiciels spcialiss appels compilateur et
assembleur.
Exemple de programme :
Code machine ( 68HC11 )
@00
@01
@03
@04
@05

C6 64
B6 00
1B
5A
26 03

Assembleur ( 68HC11 )

Langage C

LDAB #100
LDAA #0
ABA
DECB
BNE ret

A=0 ;
for ( i=1 ; i<101 ; i++) A=A+i ;

ret

4.5 Performances dun microprocesseur


On peut caractriser la puissance dun microprocesseur par le nombre dinstructions quil est
capable de traiter par seconde. Pour cela, on dfinit :
le CPI (Cycle Par Instruction) qui reprsente le nombre moyen de cycles dhorloge
ncessaire pour lexcution dune instruction pour un microprocesseur donn.
le MIPS (Millions d'Instructions Par Seconde) qui reprsente la puissance de
traitement du microprocesseur.

MIPS=

FH
CPI

avec FH en MHz

Pour augmenter les performances dun microprocesseur, on peut donc soit augmenter la frquence
d'horloge (limitation matrielle), soit diminuer le CPI (choix d'un jeu d'instruction adapt).

4.6 Notion darchitecture RISC et CISC


Actuellement larchitecture des microprocesseurs se composent de deux grandes familles :
L architecture CISC (Complex Instruction Set Computer)
Larchitecture RISC (Reduced Instruction Set Computer)

4.6.1 Larchitecture CISC


4.6.1.1 Pourquoi
Par le pass la conception de machines CISC tait la seule envisageable. En effet, vue que la
mmoire travaillait trs lentement par rapport au processeur, on pensait quil tait plus intressant de
soumettre au microprocesseur des instructions complexes. Ainsi, plutt que de coder une opration
complexe par plusieurs instructions plus petites (qui demanderaient autant daccs mmoire trs lent),
il semblait prfrable dajouter au jeu dinstructions du microprocesseur une instruction complexe qui
se chargerait de raliser cette opration. De plus, le dveloppement des langages de haut niveau
posa de nombreux problmes quant la conception de compilateurs. On a donc eu tendance
incorporer au niveau processeur des instructions plus proches de la structure de ces langages.

4.6.1.2 Comment
Cest donc une architecture avec un grand nombre dinstructions o le microprocesseur doit
excuter des tches complexes par instruction unique. Pour une tche donne, une machine CISC
excute ainsi un petit nombre dinstructions mais chacune ncessite un plus grand nombre de cycles
dhorloge. Le code machine de ces instructions varie dune instruction lautre et ncessite donc un
dcodeur complexe (micro-code)

4.6.2 Larchitecture RISC


4.6.2.1 Pourquoi
Des tudes statistiques menes au cours des annes 70 ont clairement montr que les
programmes gnrs par les compilateurs se contentaient le plus souvent d'affectations, d'additions et
de multiplications par des constantes. Ainsi, 80% des traitements des langages de haut niveau
faisaient appel seulement 20% des instructions du microprocesseur. Do lide de rduire le jeu
dinstructions celles le plus couramment utilises et den amliorer la vitesse de traitement.

4.6.2.2 Comment
Cest donc une architecture dans laquelle les instructions sont en nombre rduit (chargement,
branchement, appel sous-programme). Les architectures RISC peuvent donc tre ralises partir de
squenceur cbl. Leur ralisation libre de la surface permettant daugmenter le nombres de
registres ou dunits de traitement par exemple. Chacune de ces instructions sexcutent ainsi en un
cycle dhorloge. Bien souvent, ces instructions ne disposent que dun seul mode dadressage. Les
accs la mmoire seffectue seulement partir de deux instructions (Load et Store). Par contre, les
instructions complexes doivent tre ralises partir de squences bases sur les instructions
lmentaires, ce qui ncessite un compilateur trs volu dans le cas de programmation en langage
de haut niveau.

4.6.3 Comparaison
Le choix dpendra des applications vises. En effet, si on diminue le nombre d'instructions, on
cre des instructions complexes (CISC) qui ncessitent plus de cycles pour tre dcodes et si on
diminue le nombre de cycles par instruction, on cre des instructions simples (RISC) mais on
augmente alors le nombre d'instructions ncessaires pour raliser le mme traitement.

Architecture RISC
instructions simples ne prenant quun
seul cycle
instructions au format fixe
dcodeur simple (cbl)
beaucoup de registres
seules les instructions LOAD et STORE
ont accs la mmoire
peu de modes dadressage
compilateur complexe

Architecture CISC
instructions complexes prenant plusieurs
cycles
instructions au format variable
dcodeur complexe (microcode)
peu de registres
toutes les instructions sont susceptibles
daccder la mmoire
beaucoup de modes dadressage
compilateur simple

4.7 Amliorations de larchitecture de base


L'ensemble des amliorations des microprocesseurs visent diminuer le temps d'excution du
programme.
La premire ide qui vient lesprit est daugmenter tout simplement la frquence de lhorloge
du microprocesseur. Mais lacclration des frquences provoque un surcrot de consommation ce qui
entrane une lvation de temprature. On est alors amen quiper les processeurs de systmes de
refroidissement ou diminuer la tension dalimentation.
Une autre possibilit daugmenter la puissance de traitement dun microprocesseur est de
diminuer le nombre moyen de cycles dhorloge ncessaire lexcution dune instruction. Dans le cas
dune programmation en langage de haut niveau, cette amlioration peut se faire en optimisant le
compilateur. Il faut quil soit capable de slectionner les squences dinstructions minimisant le
nombre moyen de cycles par instructions. Une autre solution est dutiliser une architecture de
microprocesseur qui rduise le nombre de cycles par instruction.

4.7.1 Architecture pipeline

4.7.1.1 Principe
Lexcution dune instruction est dcompose en une succession dtapes et chaque tape
correspond lutilisation dune des fonctions du microprocesseur. Lorsquune instruction se trouve
dans lune des tapes, les composants associs aux autres tapes ne sont pas utiliss. Le
fonctionnement dun microprocesseur simple nest donc pas efficace.
Larchitecture pipeline permet damliorer lefficacit du microprocesseur. En effet, lorsque la
premire tape de lexcution dune instruction est acheve, linstruction entre dans la seconde tape
de son excution et la premire phase de lexcution de linstruction suivante dbute. Il peut donc y
avoir une instruction en cours dexcution dans chacune des tapes et chacun des composants du
microprocesseur peut tre utilis chaque cycle dhorloge. Lefficacit est maximale. Le temps
dexcution dune instruction nest pas rduit mais le dbit dexcution des instructions est
considrablement augment. Une machine pipeline se caractrise par le nombre dtapes utilises
pour lexcution dune instruction, on appelle aussi ce nombre dtapes le nombre dtages du
pipeline.

Exemple de lexcution en 4 phases dune instruction :


Recherche

Dcodage

Excution

Sauv. rsultat

Modle classique :
R1

R2
D1

R3
D2

E1

D3
E2

S1
1

E3

S2

S3

10

11

R2

R3

R4

R5

R6

R7

R8

R9

D1

D2

D3

D4

D5

D6

D7

D8

D9

E1

E2

E3

E4

E5

E6

E7

E8

E9

S1

S2

S3

S4

S5

S6

S7

S8

12

Nbre de
Cycles

Modle pipelin :
R1

10

11

S9
12

Nbre de
Cycles

4.7.1.2 Gain de performance


Dans cette structure, la machine dbute lexcution dune instruction chaque cycle et le
pipeline est pleinement occup partir du quatrime cycle. Le gain obtenu dpend donc du nombre
dtages du pipeline. En effet, pour excuter n instructions, en supposant que chaque instruction
sexcute en k cycles dhorloge, il faut :
n.k cycles dhorloge pour une excution squentielle.
k cycles dhorloge pour excuter la premire instruction puis n-1 cycles pour les n-1
instructions suivantes si on utilise un pipeline de k tages
Le gain obtenu est donc de :

G=

n ik
k+n-1

Donc lorsque le nombre n dinstructions excuter est grand par rapport k, on peut admettre quon
divise le temps dexcution par k.
Remarques :
Le temps de traitement dans chaque unit doit tre peu prs gal sinon les units rapides doivent
attendre les units lentes.
Exemples :
LAthlon dAMD comprend un pipeline de 11 tages.
Les Pentium 2, 3 et 4 dIntel comprennent respectivement un pipeline de 12, 10 et 20 tages.

4.7.1.3 Problmes
La mise en place dun pipeline pose plusieurs problmes. En fait, plus le pipeline est long,
plus le nombre de cas o il nest pas possible datteindre la performance maximale est lev. Il existe
3 principaux cas o la performance dun processeur pipelin peut tre dgrad ; ces cas de
dgradations de performances sont appels des alas :
ala structurel qui correspond au cas o deux instructions ont besoin dutiliser la
mme ressource du processeur (conflit de dpendance),
ala de donnes qui intervient lorsquune instruction produit un rsultat et que
linstruction suivante utilise ce rsultat avant quil nait pu tre crit dans un
registre,
ala de contrle qui se produit chaque fois quune instruction de branchement
est excute. Lorsquune instruction de branchement est charge, il faut
normalement attendre de connatre ladresse de destination du branchement pour
pouvoir charger linstruction suivante. Les instructions qui suivent le saut et qui
sont en train dtre traites dans les tages infrieurs le sont en gnral pour rien,
il faudra alors vider le pipeline. Pour attnuer leffet des branchements, on peut
spcifier aprs le branchement des instructions qui seront toujours excutes. On
fait aussi appel la prdiction de branchement qui a pour but de recenser lors
de branchements le comportement le plus probable. Les mcanismes de
prdiction de branchement permettent d'atteindre une fiabilit de prdiction de
l'ordre de 90 95 %.
R1

R3

R4

R4

R4

R4

R5

R6

D1

D2

D3

D3

D3

D3

D4

D5

D6

E1

E2

E3

E4

E5

E6

S3

S4

S5

S1
1

Bulles (NOP)

R2

S2
5

10

11

S6
12

Nbre de
Cycles

Lorsquun ala se produit, cela signifie quune instruction ne peut continuer progresse dans
le pipeline. Pendant un ou plusieurs cycles, linstruction va rester bloque dans un tage du pipeline,
mais les instructions situes plus en avant pourront continuer sexcuter jusqu ce que lala ait
disparu. Plus le pipeline possde dtages, plus la pnalit est grande. Les compilateurs sefforcent
dengendrer des squences dinstructions permettant de maximiser le remplissage du pipeline. Les
tages vacants du pipeline sont appels des bulles de pipeline, en pratique une bulle correspond
en fait une instruction NOP (No OPeration) mise la place de linstruction bloque.

4.7.2 Notion de cache mmoire


4.7.2.1 Problme pos
Lcart de performance entre le microprocesseur et la mmoire ne cesse de saccrotre. En
effet, les composants mmoire bnficient des mmes progrs technologique que les
microprocesseurs mais le dcodage des adresses et la lecture/criture dune donnes sont des
tapes difficiles acclrer. Ainsi, le temps de cycle processeur dcrot plus vite que le temps daccs
mmoire entranant un goulot dtranglement. La mmoire n'est plus en mesure de dlivrer des
informations aussi rapidement que le processeur est capable de les traiter. Il existe donc une latence
daccs entre ces deux organes.

4.7.2.2 Principe
Depuis le dbut des annes 80, une des solutions utilises pour masquer cette latence est de
disposer une mmoire trs rapide entre le microprocesseur et la mmoire. Elle est appele cache
mmoire. On compense ainsi la faible vitesse relative de la mmoire en permettant au
microprocesseur dacqurir les donnes sa vitesse propre. On la ralise partir de cellule SRAM de
taille rduite ( cause du cot). Sa capacit mmoire est donc trs infrieure celle de la mmoire
principale et sa fonction est de stocker les informations les plus rcentes ou les plus souvent utilises
par le microprocesseur. Au dpart cette mmoire tait intgre en dehors du microprocesseur mais
elle fait maintenant partie intgrante du microprocesseur et se dcline mme sur plusieurs niveaux.
Le principe de cache est trs simple : le microprocesseur na pas conscience de sa prsence
et lui envoie toutes ses requtes comme sil agissait de la mmoire principale :
Soit la donne ou linstruction requise est prsente dans le cache et elle est alors envoye
directement au microprocesseur. On parle de succs de cache. (a)
soit la donne ou linstruction nest pas dans le cache, et le contrleur de cache envoie
alors une requte la mmoire principale. Une fois linformation rcupre, il la renvoie
au microprocesseur tout en la stockant dans le cache. On parle de dfaut de cache. (b)

a)

up
Unit de
traitement

mmoire
Cache

Unit de
commande
2

b)

up
Unit de
traitement

mmoire

Cache

Unit de
commande
4

Bien entendu, le cache mmoire napporte un gain de performance que dans le premier cas. Sa
performance est donc entirement lie son taux de succs. Il est courant de rencontrer des taux de
succs moyen de lordre de 80 90%.
Remarques :
Un cache utilisera une carte pour savoir quels sont les mots de la mmoire principale dont il
possde une copie. Cette carte devra avoir une structure simple.
Il existe dans le systme deux copies de la mme information : loriginale dans la mmoire
principale et la copie dans le cache. Si le microprocesseur modifie la donne prsente dans le cache,
il faudra prvoir une mise jour de la mmoire principale.
Lorsque le cache doit stocker une donne, il est amen en effacer une autre. Il existe donc un
contrleur permettant de savoir quand les donnes ont t utilises pour la dernire fois. La plus
ancienne non utilise est alors remplace par la nouvelle.
A noter que lon peut reprendre le mme principe pour les disques durs et CD/DVD.

4.7.3 Architecture superscalaire


Une autre faon de gagner en performance est dexcuter plusieurs instructions en mme
temps. L'approche superscalaire consiste doter le microprocesseur de plusieurs units de traitement
travaillant en parallle. Les instructions sont alors rparties entre les diffrentes units d'excution. Il
faut donc pouvoir soutenir un flot important dinstructions et pour cela disposer dun cache performant.
Architecture scalaire :
I1

I2

I3

I4

I5

I6

I7

I8

Unit de
traitement

N cycles

Architecture superscalaire :
I1

I3

I5

I2

I6

I4

Unit de
traitement 1

I8

Unit de
traitement 2

I7

N/2 cycles

Remarque :
C'est le type d'architecture mise en oeuvre dans les premiers Pentium d'Intel apparus en 1993.

4.7.4 Architecture pipeline et superscalaire


Le principe est de dexcuter les instructions de faon pipeline dans chacune des units de
traitement travaillant en parallle.
UT1

Recherche

Dcodage

Excution

Sauv. rsultat

UT2

Recherche

Dcodage

Excution

Sauv. rsultat

9 10 11

Nbre de
Cycles

4.8 Processeurs spciaux


4.8.1 Le microcontrleur
Ce sont des systmes minimum sur une seule puce. Ils contiennent un CPU, de la RAM, de la
ROM et des ports dEntre/Sorties (parallles, sries, I2C, etc..). Ils comportent aussi des fonctions
spcifiques comme des compteurs programmables pour effectuer des mesures de dures, des CAN
voir des CNA pour sinsrer au sein de chanes dacquisition, des interfaces pour rseaux de terrain,
etc ...
Il est adapt pour rpondre au mieux aux besoin des applications embarques (appareil
lectromnagers, chane dacquisition, lecteur carte puce, etc...). Il est par contre gnralement
moins puissant en terme de rapidit, de taille de donnes traitables ou de taille de mmoire
adressable quun microprocesseur.

4.8.2 Le processeur de signal


Le processeur de signal est beaucoup plus spcialis. Alors qu'un microprocesseur n'est pas
conu pour une application spcifique, le processeur DSP (Digital Signal Processor) est optimis pour
effectuer du traitement numrique du signal (calcul de FFT, convolution, filtrage numrique, etc...).
Les domaines dapplication des D.S.P taient lorigine les tlcommunications et le secteur
militaire. Aujourdhui, les applications se sont diversifies vers le multimdia (lecteur CD, MP3, etc..)
llectronique grand public (tlvision numrique, tlphone portable, etc), lautomatique,
linstrumentation, llectronique automobile, etc

4.9 Exemples
Voici deux exemples darchitecture de deux processeurs qui tenaient le haut du pav lors de
leur sortie en 1999 : lAthlon dAMD et le Pentium III dIntel. (f 500MHz)

4.9.1 AMD Athlon :

AGU : Adress Generation Unit


IEU : Integer Execution Unit

BTB : Branch Target Buffer


BHB : Branch History Buffer

Caractristiques:
9 unit de traitement se composant de :
o

1 ALU (traitement entier) comprenant 6 units de traitement :


3 units pour le traitement des donnes (IEU)
3 units pour ladressage des donnes (AGU)

1 FPU (traitement rel) comprenant 3 units :


1 FPU store
1 Fadd / MMX / 3Dnow !
1 Fmul /MMX / 3Dnow !

Pipeline entier : 10 tages, pipeline flottant : 15 tages.


Prdiction dynamique et excution du traitement "dans le dsordre" (out-of-order)
6 units de dcodage parallles (3 micro-programmes, 3 cbles) mais seules 3 peuvent
fonctionner en mme temps.
Cache mmoire de niveau 1 (L1) : 128 Ko
o 64 Ko pour les donnes
o 64 Ko pour les instructions
Contrleur de cache L2 supportant de 512Ko 8Mo avec vitesse programmable (1/2 ou 1/3
de la vitesse CPU)
22 millions de transistors

4.9.2 Intel Pentium III

31

Caractristiques :
Plusieurs units de traitement mais au 5 instructions excutes en
mme temps sur 5 ports :
o
o
o
o
o

Port 0 : ALU, FPU, AGU MMX et SSE


Port 1 : ALU, SSE, MMX
Port 2 : AGU (load)
Port 3 : AGU (store)
Port 4 : Store Data Unit

Pipeline entier : 12 17 tages, pipeline flottant : environ 25 tages


Prdiction dynamique et excution du traitement "dans le dsordre" (out-of-order)
3 units de dcodage parallles : 1 micro-programme, 2 cbles.
5 pipelines de 10 tages
Cache mmoire de niveau 1 (L1) : 32 Ko
o 16 Ko pour les donnes
o 16 Ko pour les instructions
Contrleur de cache L2 supportant jusqu 512 Ko de la vitesse CPU
9.5 millions de transistors

32

Chapitre

5 Les changes de donnes

La fonction dun systme microprocesseurs, quel quil soit, est le traitement


de linformation. Il est donc vident quil doit acqurir linformation fournie par son environnement et
restituer les rsultats de ses traitements. Chaque systme est donc quip dune ou plusieurs
interfaces dentres/sorties permettant dassurer la communication entre le microprocesseur et le
monde extrieur.
Les techniques dentres/sorties sont trs importantes pour les performances du systme.
Rien ne sert davoir un microprocesseur calculant trs rapidement sil doit souvent perdre son temps
pour lire des donnes ou crire ses rsultats. Durant une opration dentre/sortie, linformation est
change entre la mmoire principale et un priphrique reli au systme. Cet change ncessite une
interface (ou contrleur) pour grer la connexion. Plusieurs techniques sont employes pour effectuer
ces changes.
Dcodeur
dadresses

Bus dadresses
Bus de

Unit centrale

commande

Mmoire
Principale

Interface E/S

Bus de donnes

5.1 Linterface dentre/sortie


5.1.1 Rle
Chaque priphrique sera reli au systme par lintermdiaire dune interface (ou contrleur)
dont le rle est de :
Connecter le priphrique au bus de donnes
Grer les changes entre le microprocesseur et le priphrique

5.1.2 Constitution
Pour cela, linterface est constitue par :
Un registre de commande dans lequel le processeur dcrit le travail effectuer (sens de
transfert, mode de transfert).
Un ou plusieurs registres de donnes qui contiennent les mots changer entre le
priphrique et la mmoire
Un registre dtat qui indique si lunit dchange est prte, si lchange sest bien
droul, etc
On accde aux donnes de linterface par le biais dun espace dadresses dentres/sorties.

33

5.2 Techniques dchange de donnes


Avant denvoyer ou de recevoir des informations, le microprocesseur doit connatre ltat du
priphrique. En effet, le microprocesseur doit savoir si un priphrique est prt recevoir ou
transmettre une information pour que la transmission se fasse correctement. Il existe 2 modes
dchange dinformation :
Le mode programm par scrutation ou interruption o le microprocesseur sert
dintermdiaire entre la mmoire et le priphrique
Le mode en accs direct la mmoire (DMA) o le microprocesseur ne se charge
pas de lchange de donnes.

5.2.1 Echange programm


5.2.1.1 Scrutation
Dans la version la plus rudimentaire, le microprocesseur interroge linterface pour savoir si des
transferts sont prts. Tant que des transferts ne sont pas prts, le microprocesseur attend.
Linconvnient majeur est que le microprocesseur se retrouve souvent en phase dattente. Il
est compltement occup par linterface dentre/sortie. De plus, linitiative de lchange de donnes
est dpendante du programme excut par le microprocesseur. Il peut donc arriver que des requtes
dchange ne soient pas traites immdiatement car le microprocesseur ne se trouve pas encore dans
la boucle de scrutation.
Ce type dchange est trs lent.

5.2.1.2 Interruption
Une interruption est un signal, gnralement asynchrone au programme en cours, pouvant
tre mis par tout dispositif externe au microprocesseur. Le microprocesseur possde une ou
plusieurs entres rserves cet effet. Sous rserve de certaines conditions, elle peut interrompre le
travail courant du microprocesseur pour forcer lexcution dun programme traitant la cause de
linterruption.
Dans un change de donnes par interruption, le microprocesseur excute donc son
programme principal jusqu ce quil reoive un signal sur sa ligne de requte dinterruption. Il se
charge alors deffectuer le transfert de donnes entre linterface et la mmoire.
Principe de fonctionnement dune interruption :
Avant chaque excution dinstructions, le microprocesseur examine si il y a eu une requte
sur sa ligne dinterruption. Si cest le cas, il interrompt toutes ces activits et sauvegarde ltat prsent
(registres, PC, accumulateurs, registre dtat) dans un registre particulier appel pile. Les donnes y
sont entasses comme on empile des livres (la premire donne sauvegarde sera donc la dernire
tre restitue). Ensuite, il excute le programme dinterruption puis restitue ltat sauvegard avant
de reprendre le programme principale.
Remarques :
Certaine source dinterruption possde leur propre autorisation de fonctionnement sous la
forme dun bit positionner, on lappelle le masque dinterruption.
On peut donc interdire ou autoriser certaines sources dinterruptions, on les appelle les
interruptions masquables.
Chaque source dinterruption possde un vecteur dinterruption o est sauvegard
ladresse de dpart du programme excuter.
Les interruptions sont classes par ordre de priorit. Dans le cas o plusieurs interruptions
se prsentent en mme temps, le microprocesseur traite dabord celle avec la priorit la plus leve.

34

Niveau de priorit

Niveau 3

Niveau 2

Niveau 1

Programme Principale
Niveau 0
Excution
Requte
niveau 2

Requte
niveau 3

Requte
niveau 1

5.2.2 Echange direct avec la mmoire


Ce mode permet le transfert de blocs de donnes entre la mmoire et un priphrique sans
passer par le microprocesseur. Pour cela, un circuit appel contrleur de DMA (Direct Memory
Access) prend en charge les diffrentes oprations.
Le DMA se charge entirement du transfert dun bloc de donnes. Le microprocesseur doit
tout de mme :
initialiser lchange en donnant au DMA lidentification du priphrique concern
donner le sens du transfert
fournir ladresse du premier et du dernier mot concerns par le transfert
Un contrleur de DMA est dot dun registre dadresse, dun registre de donne, dun
compteur et dun dispositif de commande (logique cble). Pour chaque mot change, le DMA
demande au microprocesseur le contrle du bus, effectue la lecture ou l'criture mmoire l'adresse
contenue dans son registre et libre le bus. Il incrmente ensuite cette adresse et dcrmente son
compteur. Lorsque le compteur atteint zro, le dispositif informe le processeur de la fin du transfert par
une ligne d'interruption.
Le principal avantage est que pendant toute la dure du transfert, le processeur est libre
d'effectuer un traitement quelconque. La seule contrainte est une limitation de ses propres accs
mmoire pendant toute la dure de l'opration, puisqu'il doit parfois retarder certains de ses accs
pour permettre au dispositif d'accs direct la mmoire d'effectuer les siens : il y a apparition de vols
de cycle.
H

t
Accs
mmoire
CPU

CPU

DMA

DMA

DMA

CPU

CPU

CPU

CPU

t
Requte
DMA

Vol de
cycle

IT DMA

35

5.3 Types de liaisons


Les systmes microprocesseur utilisent deux types de liaison diffrentes pour se connecter
des priphriques :
liaison parallle
liaison srie
On caractrise un type de liaison par sa vitesse de transmission ou dbit (en bit/s).

5.3.1 Liaison parallle


Dans ce type de liaison, tous les bits dun mot sont transmis simultanment. Ce type de
transmission permet des transferts rapides mais reste limite de faibles distances de transmission
cause du nombre important de lignes ncessaires (cot et encombrement) et des problmes
dinterfrence lectromagntique entre chaque ligne (fiabilit). La transmission est cadence par une
horloge
priphrique

Interface

Exemple :
Bus PCI, AGP dans un PC.

5.3.2 Liaison srie


Dans ce type de liaison, les bits constitutifs dun mot sont transmis les uns aprs les autres
sur un seul fil. Les distances de transmission peuvent donc tre plus beaucoup plus importantes mais
la vitesse de transmission est plus faible. Sur des distance suprieures quelques dizaines de
mtres, on utilisera des modems aux extrmits de la liaison.

Interface

priphrique

La transmission de donnes en srie peut se concevoir de deux faons diffrentes :


en mode synchrone, lmetteur et le rcepteur possde une horloge synchronise qui
cadence la transmission. Le flot de donnes peut tre ininterrompu.
en mode asynchrone, la transmission seffectue au rythme de la prsence des donnes.
Les caractres envoys sont encadrs par un signal start et un signal stop.
Principe de base dune liaison srie asynchrone :
Afin que les lments communicants puissent se comprendre, il est ncessaire dtablir un
protocole de transmission. Ce protocole devra tre le mme pour chaque lment.

36

Paramtres rentrant en jeu :


 longueur des mots transmis : 7 bits ( code ASCII ) ou 8 bits
 vitesse de transmission : les vitesses varient de 110 bit/s 128000 bit/s et dtermine les
frquences dhorloge de lmetteur et du rcepteur.
 parit : le mot transmis peut tre suivis ou non dun bit de parit qui sert dtecter les
erreurs ventuelles de transmission. Il existe deux types de parit : paire ou impaire. Si on fixe une
parit paire, le nombre total de bits 1 transmis (bit de parit inclus) doit tre paire. Cest linverse
pour une parit impaire.
 bit de start : la ligne au repos est ltat 1 (permet de tester une coupure de la ligne). Le
passage ltat bas de la ligne va indiquer quun transfert va commencer. Cela permet de
synchroniser lhorloge de rception.
 bit de stop : aprs la transmission, la ligne est positionne un niveau 1 pendant un
certains nombre de bit afin de spcifier la fin du transfert. En principe, on transmet un, un et demi ou
2 bits de stop.
Droulement dune transmission :
Les paramtres du protocole de transmission doivent toujours tre fixs avant la transmission.
En labsence de transmission, la liaison est au repos au niveau haut pour dtecter une ventuelle
coupure sur le support de transmission. Une transmission seffectue de la manire suivante :
Lmetteur positionne la ligne ltat bas : cest le bit de start.
Les bits sont transmis les un aprs les autres, en commenant par le bit de poids fort.
Le bit de parit est ventuellement transmis.
Lmetteur positionne la ligne ltat haut : cest le bit de stop.
Exemple : transmission dun mot de 7 bits (0110100)2 Parit impaire 1 bit de Stop
Niveau ligne

MSB

0
repos

LSB

start

1
Hz

Vitesse de transmission = v=

0
parit stop

donnes

Horloge = F=

1
bits/s

37

repos

Contrle de flux :
Le contrle de flux permet denvoyer des informations seulement si le rcepteur est prt (
modem ayant pris la ligne, tampon dune imprimante vide, etc). Il peut tre ralis de manire
logiciel ou matriel.
Pour contrler le flux de donnes matriellement, il faudra utiliser des lignes de contrle
supplmentaire permettant lmetteur et au rcepteur de sinformer mutuellement de leur tat
respectif (prt ou non).
Dans un contrle de type logiciel, l'metteur envoie des donnes et lorsque le rcepteur ne
peut plus les recevoir (registre plein), il envoie une information lmetteur pour le prvenir, via la
liaison srie. Lmetteur doit donc toujours tre lcoute du rcepteur avant denvoyer une donne
sur la ligne.

5.4 Notion de rseau


5.4.1 Introduction
Pour des raisons defficacit, on essaie de plus en plus de connecter des systmes
indpendants
entre
eux
par
Machine A
Machine B
lintermdiaire dun rseau. On permet
ainsi
aux
utilisateurs
ou
aux
Rseau
applications de partager et dchanger
mettre
recevoir
les mmes informations.
Pour
faire
circuler
une
information sur un rseau, on peut utiliser principalement deux stratgies. Soit linformation est
envoye de faon complte, soit elle dcomposes en petits morceaux (paquets). Les paquets sont
alors envoys sparment sur le rseau puis rassembls par la machine destinataire. On parle
souvent de rseaux commutations de paquets La premire stratgie nest que trs rarement
utiliss en informatique car les risques derreurs sont trop importants.
Les rgles et les moyens mis en uvre dans linterconnexion et le dialogue des machines
dfinissent le protocole et larchitecture du rseau. Toutes ces rgles sont dfinies par des normes
pour que des machines darchitecture diffrente puissent communiquer entre elles. Par exemple, pour
lenvoie dun fichier entre deux ordinateurs relis par un rseau, il faut rsoudre plusieurs problmes :
Avant lenvoi des premiers octets du fichier, la machine source doit :
1) accder au rseau,
2) sassurer quelle peut atteindre la machine destination en donnant une adresse,
3) sassurer que la machine destination est prte recevoir des donnes,
4) contacter la bonne application sur la machine destination,
5) sassurer que lapplication est prte accepter le fichier et le stocker dans son systme
de fichier
Pendant lenvoi, les 2 machines doivent :
6) envoyer les donnes dans un format compris par les 2 machines,
7) grer lenvoi des commandes et des donnes et le rangement des donnes sur disque,
8) sassurer que les commandes et les donnes sont changes correctement et que
l application destinataire reoit toutes les donnes sans erreur et dans le bon ordre.
Au dbut des annes 70, chaque constructeur a dvelopp sa propre solution rseau autour
darchitecture et de protocoles privs. Mais ils se sont vite rendu compte quil serait impossible
dinterconnecter ces diffrents rseaux Ils ont donc dcid de dfinir une norme commune. Ce
modle s'appelle OSI (Open System Interconnection) et comporte 7 couches qui ont toutes une
fonctionnalit particulire. Il a t propos par l'ISO, et il est aujourd'hui universellement adopt et
utilis.

38

5.4.2 Le modle OSI


Le modle OSI dfinit un modle darchitecture dcompos en couche dont la numrotation
commence par le bas. Il donne une description globale de la fonction de chaque couche. Chacune
des couches de ce modle reprsente une catgorie de problme que lon peut rencontrer dans la
conception dun rseau. Ainsi, la mise en place dun rseau revient trouver une solution
technologique pour chacune des couches composants le rseau. Lutilisation de couches permet
galement de changer une solution technique pour une seule couche sans pour autant tre oblig de
repenser toute larchitecture du rseau. De plus, chaque couche garantit la couche suprieure
quelle a ralis son travail sans erreur.
Systme A

Systme B

Couche

Fonction

Fonction

Couche

Application

Application

Prsentation

Prsentation

Session

Session

Transport

Transport

Rseau

Rseau

Liaison

Liaison

Physique

Physique

Protocole de couche N

Canal de transmission

Chaque couche est identifie par son niveau N et ralise un sous-ensemble de fonctions
ncessaire la communication avec un autre systme. Pour raliser ces fonctions de communication,
la couche N s appuie uniquement sur la couche immdiatement infrieure par l intermdiaire dune
interface. Le dialogue entre les deux systmes stablie forcment entre deux couches de niveau N
identique mais lchange physique de donnes seffectue uniquement entre les couches de niveau
1. Les rgles et conventions utilises pour ce dialogue sont appeles protocole de couche N.
On appelle les couches 1, 2, 3 et 4 les couches basses et les couches 5, 6 et 7 les couches
hautes. Les couches basses sont concernes par la ralisation dune communication fiable de
bout en bout alors que les couches hautes offrent des services orientes vers les utilisateurs.
Couche 1 : Physique
La couche physique se proccupe de rsoudre les problmes matriels. Elle normalise les
moyens mcaniques (nature et caractristique du support : cble, voie hertzienne, fibre optique,
etc), lectrique (transmission en bande de base, modulation, puissance, etc) et fonctionnels
(transmission synchrone/asynchrone, simplex, half/full duplex, etc..) ncessaires lactivation, au
maintient et la dsactivation des connexions physiques destines la transmission de bits entre deux
entits de liaison de donnes.
Couche 2 : Liaison
La couche liaison de donnes dtecte et corrige si possible les erreurs dues au support physique
et signal la couche rseau les erreurs irrcuprable. Elle supervise le fonctionnement de la
transmission et dfinit la structure syntaxique des messages, la manire denchaner les changes
selon un protocole normalise ou non.
Cette couche reoit les donnes brutes de la couche physique, les organise en trames, gre les
erreurs, retransmet les trames errones, gre les acquittements qui indiquent si les donnes ont bien
t transmises puis transmet les donnes formates la couche rseau suprieure.

39

Couche 3 : Rseau
La couche rseau est charge de lacheminement des informations vers le destinataire. Elle gre
ladressage, le routage, le contrle de flux et la correction derreurs non rgles par la couche 2. A ce
niveau l, il sagit de faire transiter une information complte (ex : un fichier) dune machine une
autre travers un rseau de plusieurs ordinateurs. Elle permet donc de transmettre les trames reues
de la couche 2 en trouvant un chemin vers le destinataire.
La couche 4 : Transport
Elle remplit le rle de charnire entre les couches basses du modle OSI et le monde des
traitements supports par les couches 5,6 et 7. Elle assure un transport de bout en bout entre les
deux systmes en assurant la segmentation des messages en paquets et en dlivrant les informations
dans lordre sans perte ni duplication. Elle doit acheminer les donnes du systme source au systme
destination quelle que soit la topologie du rseau de communication entre les deux systmes. Elle
permet ainsi aux deux systmes de dialoguer directement comme si le rseau nexistait pas. Elle
remplit ventuellement le rle de correction derreurs. Les critres de ralisation de la couche
transport peuvent tre le dlai dtablissement de la connexion, sa probabilit dchec, le dbit
souhait, le temps de travers, etc
La couche 5 : Session
Elle gre le dialogue entre 2 applications distantes (dialogue unidirectionnel/bidirectionnel, gestion
du tour de parole, synchronisation, etc...).
La couche 6 : Prsentation
Cette couche s'occupe de la partie syntaxique et smantique de la transmission de l'information
afin daffranchir la couche suprieure des contraintes syntaxiques. Elle effectue ainsi le codage des
caractres pour permettre deux systmes htrognes de communiquer. Cest ce niveau que
peuvent tre implantes des techniques de compression et de chiffrement de donnes.
La couche 7 : Application
Elle gre les programmes utilisateurs et dfinit des standards pour les diffrents logiciels
commercialiss adoptent les mmes principes (fichier virtuel, messagerie, base de donnes, etc).

5.4.3 Classification des rseaux


On peut tablir une classification des rseaux laide de leur taille. Les rseaux sont diviss en
quatre grandes familles : les PAN, LAN, MAN et WAN.
PAN : Personal Area Network ou rseau personnel
Ce type de rseau interconnecte des quipements personnels comme un ordinateur portable,
un ordinateur fixe, une imprimante, etc Il stend sur quelques dizaine de mtres. Les dbits sont
importants (qq Mb/s).
LAN : Local Area Network ou rseau local.
Ce type de rseau couvre une rgion gographique limite (rseau intra-entreprise) et peut
stendre sur plusieurs kilomtres. Les machines adjacentes sont directement et physiquement relies
entre elles. Les dbits sont trs importants (de qq Mb/s qq Gb/s).
MAN : Metropolitan Area Network ou rseau mtropolitain.
Ce type de rseau possde une couverture qui peut s'tendre sur toute une ville et relie des
composants appartenant des organisations proches gographiquement( qq dizaines de kilomtres).
Ils permettent ainsi la connexion de plusieurs LAN. Le dbit courant varie jusqu 100 Mb/s.
WAN : Wide Area Network ou tendu.
Ce type de rseau couvre une trs vaste rgion gographique et permet de relier des systmes
disperss lchelle plantaire (plusieurs milliers de km). Toutefois, tant donn la distance
parcourir, le dbit est plus faible (de 50 b/s qq Mb/s).

40

LAN

PAN

1m

10m

100m

MAN

1km

10km

WAN

100km

distance

5.4.4 Topologie des rseaux


La topologie physique dun rseau dfinie larchitecture du rseau. Elle peut tre diffrente
suivant le mode de transmission des informations.
En mode de diffusion, chaque systme partage le mme support de transmission. Toute
information envoye par un systme sur le rseau est reue par tous les autres. A la rception,
chaque systme compare son adresse avec celle transmise dans le message pour savoir si il lui est
destin ou non. Il ne peut donc y avoir quun seul metteur en mme temps. Avec une telle
architecture, la rupture du support provoque larrt du rseau alors que la panne dun des lments ne
provoque pas de panne globale du rseau.
Dans le mode point point, le support physique relie les systmes deux deux seulement.
Lorsque deux lments non directement connects entre eux veulent communiquer, ils doivent le faire
par lintermdiaire dautres lments. Les protocoles de routage sont alors trs importants.
Topologie en bus
f Facile mettre en uvre.
f A tout moment un seule station a le droit
d'envoyer un message.
f La rupture de la ligne provoque l'arrt du rseau.
f La panne d'une station ne provoque pas de
panne du rseau.
f mode de diffusion.

serveur

terminaison
raccordement

serveur

Hub /Switch

Topologie en toile
f Le nud central reoit et renvoie tous les messages.
f Fonctionnement simple.
f Moins vulnrable sur rupture de ligne.
f La panne du nud central paralyse tout le rseau.
f Mode point point (avec switch) ou diffusion (avec hub).

Topologie en boucle
f Chaque station a tour tour la possibilit de prendre la parole.
f Chaque station reoit le message de son voisin en amont et le
rexpdie son voisin en aval.
f La station mettrice retire le message lorsqu'il lui revient.
f Si une station tombe en panne, il y a mise en place dun
systme de contournement de la station.
f Si il y a rupture de ligne apparat, tout s'arrte (sauf si on a prvu
une 2ime boucle).
f mode point point.

41

serveur

Topologie en arbre
f Peut tre considr comme une topologie en toile
dans la quelle chaque station peut tre une station
centrale dun sous ensemble de stations formant une
structure en toile.
f Complexe
f Mode point point.

Topologie en rseau maill


fTous les ordinateurs du
rseau sont relis les uns aux
autres par des cbles spars.
f On a une meilleure fiabilit.
f Si une station tombe en
panne, le rseau continue de
fonctionner.
f Si il y a rupture de ligne
apparat, le rseau continue
de fonctionner.
Maillage rgulier
f Il est trs coteux.
f Il est possible de diminuer
les cots en utilisant un maillage partielle (irrgulier).
f Mode point point.

Maillage irrgulier

Remarques :
Il existe deux modes de fonctionnement pour un rseau, quelque soit son architecture :
avec connexion : lmetteur demande un connexion au rcepteur avant
denvoyer son message. La connexion seffectue si et seulement si ce dernier
accepte, cest le principe du tlphone.
sans connexion : lmetteur envoie le message sur le rseau en spcifiant
ladresse du destinataire. La transmission seffectue sans savoir si le
destinataire est prsent ou non, cest le principe du courrier.

42

Chapitre

6 Un exemple - le PC

Le terme PC (Personal Computer) a


t introduit en 1981 lorsque la firme IBM (Internal Business
Machines) a commercialis pour la premire fois un
ordinateur personnel destin une utilisation familiale.
Depuis, les domaines dapplication du PC ont normment
volu. De la gestion de production la gestion de
systmes dacquisition, en passant par la reconnaissance de
forme ou le traitement de limage, ses domaines dutilisation
sont extrmement riches et varis. Pour cela, le PC est dfini
par une architecture minimale laissant la libert chacun de
rajouter les priphriques dentre/sorties ncessaires
lutilisation vise, quelle soit familiale ou professionnelle. Un
PC est compos par une unit centrale associe des priphriques (clavier, moniteur, carte
dacquisition, etc)

6.1 Lunit centrale


Elle est compose par :
La carte mre
Le microprocesseur
La mmoire
La carte vido
Les priphriques internes de stockage

6.1.1 La carte mre


La carte mre est l'un des lments essentiels d'un ordinateur. Elle assure la connexion
physique des diffrents composants (processeur, mmoire, carte d'entres/sorties, ...) par
lintermdiaire de diffrents bus (adresses, donnes et commande). Plusieurs technologies de bus
peuvent se ctoyer sur une mme carte mre. La qualit de la carte mre est vitale puisque la
performance de lordinateur dpend normment delle. On retrouve toujours sur une carte mre :
le chipset : cest une interface dentre/sortie. Elle est constitue par un jeu
de plusieurs composants charg de grer la communication entre le
microprocesseur et les priphriques. Cest le lien entre les diffrents bus de
la carte mre.
le BIOS (Basic Input Ouput Service) : cest un programme responsable de la
gestion du matriel : clavier, cran, disques durs, liaisons sries et parallles,
etc... Il est sauvegard dans une mmoire morte (EEPROM) et agit comme
une interface entre le systme dexploitation et le matriel.
lhorloge : elle permet de cadencer le traitement des instructions par le
microprocesseur ou la transmission des informations sur les diffrents bus.
les ports de connexion : ils permettent de connecter des priphriques sur
les diffrents bus de la carte mre. Il existe des ports internes pour
connecter des cartes dextension (PCI, ISA, AGP) ou des priphriques de
stockage (SCSI, IDE, Serial ATA) et des ports externes pour connecter
dautres priphriques (srie, parallle, USB, firewire, etc )
Le socket : cest le nom du connecteur destiner au microprocesseur. Il
dtermine le type de microprocesseur que lon peut connecter.

43

Architecture dune carte mre


CPU

Cache
L2

Backside bus

Cache L1
Bus processeur
66 200 MHz

AGP

Bus AGP

Pont Nord

66 MHz
x1 x2 x4 x8

Bus mmoire

RAM

66 200 MHz
Liaison pont
nord/pont sud

2 canaux

Bus IDE

Pont
SCSI

100/133 Mo/s

127 priphriques
maximum

Pont Sud

33/66/133 MHz

Pont
ISA

Firewire

Vido

40/80 MHz

7 15
priphriques
maximum

Bus PCI

Bus USB
60 Mo/s

Bus SCSI

Bus ISA
8 MHz

100/400 Mo/s

Audio

AC97

Port srie
Port parallle
Interface floppy

LAN
100 Mo/s

Carte
rseau

Ici le chipset est compos par deux composants baptis Pont Nord et Pont Sud. Le pont Nord
soccupe dinterfacer le microprocesseur avec les priphriques rapides (mmoire et carte graphique)
ncessitant une bande passante leve alors que le pont sud soccupe dinterfacer le
microprocesseur avec les priphriques plus lents (disque dur, CDROM, lecteur de disquette, rseau,
etc).
On voit apparatre diffrents bus chargs de transporter les informations entre le
microprocesseur et la mmoire ou les priphriques :
Bus processeur : on lappelle aussi bus systme ou FSB (Front Side Bus). Il relie le
microprocesseur au pont nord puis la mmoire. Cest un bus 64 bits.
Bus IDE : il permet de relier au maximum 2 priphriques de stockage interne par
canal (disque dur ou lecteur DVDROM/CDROM). Son dbit est de 133 Mo/s. Lorsque
2 priphriques sont relis sur le mme canal, un doit tre le matre (prioritaire sur la
prise du bus) et lautre lesclave.
Bus PCI (Peripheral Component Interconnect) : Il a t cr en 1991 par Intel. Il
permet de connecter des priphriques internes. Cest le premier bus avoir unifier
linterconnexion des systmes dentre/sortie sur un PC et introduire le systme
plug-and-play. Il autorise aussi le DMA. Cest un bus de 32 bits. On retrouve une
rvision du bus PCI sur les cartes mres de serveur ayant une largeur de bus de 64
bits et une frquence de 133 MHz.
Bus AGP (Accelered Graphic Port) :. Il a t cr en 1997 lors de lexplosion de
lutilisation des cartes 3D qui ncessitent toujours plus de bandes passantes pour

44

obtenir des rendus trs ralistes. Cest une amlioration du bus PCI. Il autorise en
plus le DIME (DIrect Memory Execution) qui permet au processeur graphique de
travailler directement avec les donnes contenues dans la RAM sans passer par le
microprocesseur linstar dun DMA. Cest un bus 32 bits et son dbit maximum est
de 2 Go/s (en x8).
Bus ISA (Industry Standard Architecture) : Cest lanctre du bus PCI. On ne le
retrouve plus sur les nouvelles gnrations de cartes mres.
Bus SCSI (Small Computer System Interface) : cest un bus dentre/sortie parallle
permettant de relier un maximum de 7 ou 15 priphriques par contrleur suivant la
rvision du protocole utilise. Cest une interface concurrente lIDE qui prsente
lavantage de pouvoir connecter plus de priphriques pour des dbits suprieurs. En
outre, ces priphriques peuvent partager le bus lors dun dialogue contrairement
lIDE. Mais son cot reste trs lev elle est utilise pour les serveurs.
Bus USB (Universal Serial Bus ) : cest un bus dentre/sortie plug-and-play srie.
Dans sa deuxime rvision (USB 2.0), il atteint un dbit de 60 Mo/s. Un de ces
avantages est de pouvoir connecter thoriquement 127 priphriques. Il supporte de
plus le hot plug-and-play (connexion ou dconnexion de priphriques alors que le
PC fonctionne).
Bus firewire : cest un bus SCSI srie. Il permet de connecter jusqu 63
priphriques des dbits trs levs (100 400 Mo/s). Ces applications sont
tournes vers la transmission de vidos numriques.
Liaison pont nord/pont sud : ses caractristiques dpendent du chipset utilis.
Chaque fabricant a en effet dvelopp une solution propritaire pour connecter les
deux composants de leur chipset. Pour Intel, cest Intel Hub Architecture (IHA) dont
les dbits atteignent 533 Mo/s. Pour Nvidia (en collaboration avec AMD), cest
lHyperTransport qui atteint des dbits de 800 Mo/s.

Remarques :
Tous les bus internes (PCI, IDE, AGP) vont tre amens disparatre trs rapidement
et seront remplacs par des bus srie :
Le Serial Ata, remplaant du bus IDE, prsente des dbits de 150 Mo/s qui passeront
bientt 300 Mo/s dans la prochaine rvision du bus. Il permet de connecter des
disques durs ou des lecteurs optiques.
Le PCI Express, remplaant des bus PCI et AGP, permet datteindre des dbits de
250 Mo/s dans sa version de base qui peuvent monter jusqu 8Go/s dans sa version
x16 destine des priphriques ncessitant des bandes passantes trs leves
(application graphique).
Les bus de connexions filaires tendent tre remplacs par des systmes de
communications sans fils. A lheure actuelle, il existe :
le Bluetooth qui offre actuellement un dbit de 1 Mb/s pour une porte dune dizaine
de mtre et qui va servir connecter des priphriques ncessitant des bandes
passantes faibles (clavier, souris, etc).
le WIFI (WIreless FIdelity Network) qui permet de connecter des ordinateurs en
rseau. La dernire rvision permet des dbits de 54 Mb/s.

45

Exemple : Carte mre ASUS A7N8X

Connecteur PCI

Connecteur IDE

Connecteur AGP

Chipset

Connecteurs Externes
(port srie, parallle,
firewire, USB, etc)

Connecteur RAM

Socket

Connecteur floppy

6.1.2 Le microprocesseur
Le microprocesseur est bien entendu llment essentiel du PC. Nous avons vu que les
performances dun microprocesseur taient lies son architecture et sa frquence de
fonctionnement. A lheure actuelle, le march des microprocesseurs pour PC est domin par deux
principaux constructeurs : Intel et AMD. Ceux-ci ont adopt deux stratgies diffrentes pour raliser
des microprocesseurs toujours plus performants. Intel, fort de son savoir faire, a choisi de fabriquer
des microprocesseurs toujours plus rapide en terme de frquence de fonctionnement alors quAMD
essaie plutt doptimiser ses architectures afin quelles soient capables dexcuter toujours plus
dinstructions par cycle dhorloge. Ces deux optiques se retrouvent dans les rfrences des
microprocesseurs de chaque marque. LorsquIntel dsigne chaque nouveau microprocesseur par sa
frquence, AMD prfre utiliser un P-Rating se rfrant aux performances des microprocesseurs Intel.
Chaque fondeur utilise des sockets et des chipsets diffrents pour leurs microprocesseurs. Ainsi, le
choix dun microprocesseur impose forcment un choix sur un type de carte mre. Pour connatre les
performances dun microprocesseur, il ne faut donc pas se fier la seule valeur de sa frquence de
fonctionnement. Il faut prendre en compte toutes les caractristiques lies son architecture et ne pas
oublier de lentourer dun chipset et dune mmoire performants. La dernire chose ne pas omettre
lorsquon choisit un microprocesseur est son systme de refroidissement. En effet, plus la frquence
augmente et plus la dissipation thermique sera importante. Un microprocesseur mal refroidit peut
entraner des dysfonctionnements au sein du PC voir mme la destruction du microprocesseur lui
mme. Il faut prvoir un systme dair cooling (ventilateur + radiateur ou heat pipe) ou de water
cooling (circuit de refroidissement eau).

46

Exemple : Microprocesseur haut de gamme Dcembre 2004

Athlon 64 4000 +

Pentium 4 3.4GHz
Extreme Edition

Pentium M 2GHz

Support

Socket 939

Socket 478

Socket 478 (portable)

Frquence

2400 MHz

3400 MHz

2000 MHz

Bus processeur

200 MHz

200 MHz quad pumped

100 MHz quad pumped

Finesse gravure

0.13 m

0.13 m

0.09 m

Cache L1

128 ko

8 ko

32 ko

Cache L2

1024 ko

512 ko

2048 ko

2400 MHz

3400 MHz

2000 MHz

AMD K8

Intel NetBurst

Intel Dothan

Rfrence

Frquence
cache L2
Architecture

Exemple : Systme de refroidissement

Heat Pipe

Ventirad

Kit Watercooling

Exemple : Performance en MIPS (traitement entier) et MFLOPS (traitement rel) de diffrents


microprocesseurs.
Pentium IV - 3.6 GHz
Athlon XP 3200+
Pentium M - 2 GHz
Pentium - 66 MHz

47

6.1.3 La mmoire
La qualit et la quantit de mmoire dun PC vont permettre, au mme titre que le
microprocesseur, daccrotre les performances de celui-ci. Si on dispose dun microprocesseur
performant, encore faut-il que la mmoire puisse restituer ou sauvegarder des informations aussi
rapidement quil le dsire. La frquence de fonctionnement de la mmoire est donc un paramtre
essentiel. De mme, si on veut rduire le nombre daccs aux priphriques de stockage secondaire
qui sont trs lents (disque dur, CDROM, etc), il faudra prvoir une quantit mmoire principale
suffisante.
Aujourdhui, toutes les mmoires que lon
retrouve sur les PC sont des RAM dynamiques
(DRAM). Elles sont toutes synchronises sur lhorloge
du bus processeur (FSB). Un botier mmoire est
constitu de 3 lments fondamentaux qui sont :
La matrice de cellules mmoires
Les buffers dentre/sortie
Le bus de donnes
Dans les premires SDRAM, tous les
ensembles fonctionnaient 100 MHz. C'est dire que
la cellule mmoire fournissait une information
mmoire toutes les 10 ns au buffer dentr/sortie qui
lui mme la renvoyait sur le bus une frquence de
100 MHz. Comme les DRAM fonctionnent sur 64 bits,
on avait une bande passante de 800 Mo/s. Les
diffrentes volutions de la SDRAM permirent
datteindre une frquence de 166 MHz.
Actuellement, les technologies de DRAM
permettent deffectuer des accs la mmoire sur le
front montant et descendant de lhorloge (DDR-I
SDRAM) et ainsi de doubler la bande passante
mmoire sans en modifier la frquence de
fonctionnement. Pour cela, il faut bien entendu que la
matrice mmoire puisse dlivrer 2 informations par
cycle dhorloge. Les DDR les plus rapides permettent
datteindre des frquences de 200 MHz pour laccs la matrice de cellules. Nanmoins, on
commence approcher les limites de fonctionnement du cur de la mmoire.
La prochaine technologie reviendra donc une frquence de 100 MHz pour la matrice de
cellules mais doublera la frquence du buffer dentr/sortie pour compenser (DDR II SDRAM). Il faut
donc que le cur de la mmoire puisse dlivrer 4 informations par cycle dhorloge. Tout ceci est
rendu possible en divisant le nombre de matrices mmoire. Dans le cas de la SDRAM, la matrice de
cellules mmoire est constitue dun seul bloc physique contre deux pour la DDR-I puis quatre pour la
DDR-II.

Matrice
Mmoire
Buffer

SDR

DDR-I

DDR-II

De plus, de nombreux chipsets permettent de grer deux canaux daccs la mmoire et


donc daccder simultanment deux modules de mmoire diffrents. Le PC sera donc plus
performant si il utilise, par exemple, deux barrette de 256 Mo plutt quune seule de 512 Mo. (bus
quad pumped dIntel)

48

Exemple : Dnomination des mmoires SDRAM

Dsignation

Type

FSB

Vitesse

B.P.

PC 100

SDR

100 MHz

100 MHz

0,8 Go/s

PC-1600

DDR-I

100 MHz

200 MHz

1,6 Go/s

PC-2100

DDR-I

133 MHz

266 MHz

2.13 Go/s

PC-2700

DDR-I

166 MHz

333 MHz

2.66 Go/s

PC-3200

DDR-I

200 MHz

400 MHz

3,2 Go/s

PC-3500

DDR-I

216 MHz

432 MHz

3.5 Go/s

PC-3700

DDR-I

233 MHz

466 MHz

3.7 Go/s

PC-4000

DDR-I

250 MHz

500 MHz

4.0 Go/s

PC2-3200

DDR-II

100 MHz

400 MHz

3,2 Go/s

PC2-4300

DDR-II

133 MHz

533 MHz

4,3 Go/s

PC2-5300

DDR-II

166 MHz

667 MHz

5,3 Go/s

La bande passante est thoriquement double si les barrettes sont utilises en dual channel.

6.1.4 La carte vido


Le rle de la carte graphique est de convertir les donnes numriques afficher en un signal
comprhensible par un cran . Alors qu' ses dbuts, la carte vido se chargeait uniquement d'afficher
une simple image forme de points colores (pixel), les derniers modles apparus se chargent
d'afficher des images en 3D d'une grande complexit. Cest donc un systme microprocesseur elle
seule qui est compose par :
Un GPU (Graphics
Processor Unit)
De la mmoire vido
Dun dispositif de
conversion analogique
numrique : RAMDAC.
Dentres/sorties vido

BUS
GPU

Mmoire
vido

DVI

RAMDAC

CRT

La carte vido communique avec la mmoire centrale et le microprocesseur par lintermdiaire


dun bus. Actuellement, cest le bus AGP qui est le plus utilis mais il va progressivement tre
remplac par le PCI Express qui prsente des dbits beaucoup plus levs (8 Go/s contre 2 Go/s).

49

6.1.4.1 Le GPU
Le GPU est le processeur central de la carte graphique.
Il se charge du traitement des donnes vido, permettant ainsi
de soulager le microprocesseur. Son rle est de traiter les objets
envoys par le microprocesseur puis den dduire les pixels
afficher. En effet, dans le cas de laffichage du scne 3D, le
microprocesseur communique au GPU les donnes afficher
sous forme vectorielle. Les objets sont donc dfinis par une
masse de points reprsentant leurs coordonnes dans lespace.
Pour afficher un objet lcran, le GPU procde en plusieurs
tapes :
1. placer les objets dans le repre et leur appliquer
des transformations (translation, rotation, etc)
2. appliquer les effets de lumires sur chaque objet
3. dcomposer les objets en petits triangles puis en fragments
4. appliquer des textures et des effets sur les fragments
5. afficher les pixel rsultants de lassociation des fragments
Pour cela, il est constitu dun immense pipeline principal. Celui-ci comprend au moins un vertex
shader (tape 1 et 2), un setup engine (tape 3) et un pixel shader (tape 4 et 5).
Remarques :
toutes ces oprations doivent tre effectues pour tous les pixels de la scne afficher.
Pour une image en 1600x1200, cela fait 1 920 000 pixels calculer, soit prs de 6 millions de
fragments !!!! Dautant plus que pour bien faire, le GPU doit tre capable dafficher 50 images/s soit
calculer 300 millions de fragments par seconde Ceci explique pourquoi les GPU des cartes 3D
rcentes sont plus complexes que les derniers microprocesseurs.
Pour utiliser au mieux les capacits des cartes graphiques ont dispose d'API (Application
Program Interface) qui sont des langages de description et de manipulation des objets :
Direct3D de Microsoft
OpenGL

6.1.4.2 La mmoire vido


Elle sert stocker les images et les textures afficher. Elle doit prsenter des dbits trs
important. Actuellement, la plupart des cartes graphiques sont dotes de DDR SDRAM.

6.1.4.3 Le RAMDAC
Le Ramdac (Random Access Memory Digital Analog Converter) convertit les signaux dlivrs
par la carte en signaux analogiques compatibles avec la norme VGA des moniteurs. Plus la frquence
du RAMDAC d'une carte graphique sera leve, plus le rafrachissement et la rsolution de l'image
pourront tre levs. Le confort visuel apparat partir dun rafrachissement de 72 Hz (frquence
laquelle sont rafrachies les lignes afficher). En principe, la frquence du RAMDAC est donc de
lordre de :
Largeur cran x Hauteur cran x frquence rafrachissement x 1.32
On rajoute un coefficient de 1.32 cause du temps perdu par le canon lectron lors de ces
dplacements.
Exemple :
Pour une rsolution de 1600x1200 une frquence de 85Hz, il faudra un RAMDAC de
1600x1200x85x1.32= 215 Mhz !!!

50

6.1.4.4 Les entres/sorties vido


La sortie vers le moniteur se fait par lintermdiaire dune sortie au format VGA. Maintenant, la
plupart des cartes disposent dune sortie TV au format S-vido. Depuis lexplosion des crans LCD,
elles disposent aussi souvent dun port DVI en plus du port VGA. Le port DVI est numrique et ne
ncessite pas la traduction des donnes par le RAMDAC.

6.1.5 Les priphriques internes de stockage


Ce sont les priphriques de type mmoire de masse. On les appelle ainsi pour leur grande
capacit de stockage permanent. Ces priphriques sont dots dun contrleur permettant de les faire
dialoguer avec le microprocesseur. Actuellement, les plus rpandus sont lIDE et le SCSI. Le SCSI
prsente des dbits plus importants que lIDE (160Mo/s contre 133Mo/s) et permet de connecter plus
de priphriques sur le mme contrleur (7 contre 4). Nanmoins, cette technologie tant plus
onreuse, on la retrouve surtout sur des serveurs alors que lIDE est prsent dans tous les PC. A
lheure actuelle, ces deux types de contrleur sont en fin de vie et sont progressivement remplacs
par des contrleur de type Serial ATA. Ce sont des contrleurs srie drivs de linterface IDE qui
vont permettent datteindre des dbits de 600 Mo/s.
Les priphriques internes de stockage sont principalement des priphriques utilisant des
supports magntiques (disque dur) ou optiques (CDROM, DVDROM).

6.1.5.1 Le disque dur


Les disques durs sont capables de
stocker des quantits impressionnantes
d'informations, et surtout de les ordonner et
de les retrouver rapidement.
Principe :
Le disque dur est constitu de
plusieurs plateaux empils, entre lesquels se
dplace un bras comptant plusieurs ttes de
lecture. Chaque plateau est recouvert d'une
piste
surface magntique sur ses deux faces et
tourne une vitesse comprise entre 4000 et
15000 tr/min. La tte de lecture/criture est
secteur
compose par un aimant autour duquel est
enroule une bobine.
Pour crire, on fait passer un courant
lectrique dans la bobine ce qui cre un
champ magntique. Les lignes de champ magntique traversent la couche d'oxyde et orientent celuici en crant de petits aimants dont le sens est donn par le sens du courant dans la bobine.
Pour lire, on fait passer la tte de lecture/criture sur le support magntis qui cre un courant
induit dans la bobine dont le sens indique s'il s'agit d'un 0 ou d'un 1.
Le formatage :
Le formatage de bas niveau permet d'organiser la
surface du disque en lments simples (pistes et
secteurs) qui permettront de localiser l'information. Le
nombre total de pistes dpend du type de disque. Il est
effectu en usine lors de la fabrication du disque.
Chaque piste est dcoupe en secteurs. Toutefois l'unit
d'occupation d'un disque n'est pas le secteur, trop petit
pour que le systme puisse en tenir compte. On utilise
alors un groupe d'un certain nombre de secteurs (de 1
16) comme unit de base. Ce groupe est appel Bloc ou
Cluster. C'est la taille minimale que peut occuper un fichier sur le disque. Pour accder un secteur

51

donn, il faudra donc dplacer l'ensemble des bras et attendre ensuite que ce secteur se positionne
sous les ttes. Laccs un bloc est alatoire alors que laccs un secteur est squentiel.
Une autre unit de lecture/criture est le cylindre. Un cylindre est constitu par toutes les
pistes superposes verticalement qui se prsentent simultanment sous les ttes de lecture/criture.
En effet, il est plus simple d'crire sur les mmes pistes des plateaux superposs que de dplacer
nouveau l'ensemble des bras.
Le formatage de haut niveau permet de crer un systme de fichiers grable par un systme
d'exploitation (DOS, Windows, Linux, OS/2, etc ...).
La dfragmentation :
A mesure que l'on stocke et supprime des fichiers, la rpartition des fichiers sur les diffrents
clusters est modifie. L'idal, pour accder rapidement un fichier, serait de pouvoir stocker un fichier
sur des clusters contigus sur le mme cylindre. La dfragmentation permet de rorganiser le stockage
des fichiers dans les clusters pour optimiser la lecture.
Les caractristiques :
capacit en Go
vitesse de rotation en tours minutes
temps d'accs exprim en millisecondes
interface (IDE, SCSI, SATA)
taux de transfert moyen exprim en Mo par seconde
A noter que les disques durs actuels sont quips de cache mmoire afin de diminuer les temps
daccs.

6.1.5.2 Les disques optiques


Le disque optique numrique rsulte du travail men par de nombreux constructeurs depuis
1970. La terminologie employe varie selon les technologies employes et lon retrouve ainsi les
abrviations de CD (Compact Disk), CDROM (CD Read Only Memory), CDR, (CD Recordable), DVD
(Digital Video Disk), DVDROM (DVD Read Only Memory), etc Le Compact Disc a t invent par
Sony et Philips en 1981 dans le but de fournir un support audio et vido de haute qualit. Les
spcifications du Compact Disc ont t tendues en 1984 afin de permettre au CD de stocker des
donnes numriques. En 1990 Kodak met au point le CD-R. Un CD est capable de stocker 650 ou
700 Mo de donnes et 74 ou 80 min de musique. Le taux de transfert d'un CD-ROM est de 150 ko/s,
ce qui correspond au taux de transfert dun lecteur de CD audio. On peut monter jusqu' 7200 ko/s
(48X) avec un lecteur de CDROM.
Principe CD-ROM:
Un CD-ROM est un disque de 12 cm de diamtre
compos de plusieurs couches superposes :
une couche principale en polycarbonate, un
plastique rsistant et laissant passer la
lumire
une couche mtallique rflchissante
compose de plats et de creux
une couche de vernis protecteur qui vient
protger le mtal de l'agression des UV

couche protection
couche sensible
polycarbonate

Plusieurs technologies diffrentes existent en fonction du type de CD :


CD-ROM, CD-R, CD-RW. Le principe de lecture/criture utilise un rayon
infrarouge d'une longueur d'onde de 780 nm.
Lors de la lecture d'un CD, le faisceau laser traverse la couche de
polycarbonate puis rencontre ou non un creux. Lors dun passage devant un
creux, la lumire du laser est fortement rfracte, de telle sorte que la quantit
de lumire renvoye par la couche rflchissante est minime. Alors que pour
un passage devant un plat, la lumire est pratiquement entirement rflchie.
Lorsque le signal rflchi change, la valeur binaire est 1. Lorsque la rflexion
est constante, la valeur est 0. A noter que contrairement aux disques durs, un CD n'a qu'une seule
piste organise en spirale.

52

Cette piste nest pas rgulire mais oscille autour de sa courbe moyenne.
La frquence de ces oscillations est de 22,05 kHz. Cette oscillation permet
la tte de lecture de suivre la courbe et de rguler la vitesse de rotation
du CD.
Pour lcriture, il faut utiliser un graveur avec des supports
adquates (CD-R ou CD-RW). Les techniques sont assez similaires qu'il
s'agisse d'un CD-R ou d'un CD-RW. Dans le cas d'un CR-R, on ajoute une
couche de colorant organique pouvant tre brl par un laser 10 fois plus
puissant que le laser requit pour lire un CD. Cette couche de colorant est
photosensible. Lorsqu'elle est soumise une forte lumire, elle l'absorbe et sa temprature augmente
plus de 250, ce qui fait qu'elle brle localement, et cre des plages brles et non brles. Les
creux et bosses du CD classique sont donc ici remplacs par le passage d'une zone brle une
zone non brle qui rflchisse plus ou moins de lumire. Pour les CD-RW, on utilise un alliage
mtallique qui possde la particularit de pouvoir retrouver son tat dorigine en utilisant un laser
200 degrs (effacement).
Les mthodes dcriture :
Monosession : Cette mthode cre une seule session sur le disque et ne donne pas
la possibilit de rajouter des donnes sur le CD.
Multisession : Cette mthode permet de graver un CD en plusieurs fois, en crant une
table des matires (TOC pour table of contents) de 14Mo pour chacune des sessions.
Track At Once : Cette mthode permet de dsactiver le laser entre deux pistes, afin
de crer une pause de 2 secondes entre chaque pistes d'un CD audio.
Disc At Once : Contrairement la mthode prcdente, le Disc At Once crit sur le
CD en une seule traite. Les musiques sont donc enchanes.
Les techniques de gravures :
Burn Proof ou Just Link : Le problme des graveurs tait l'envoi des donnes un
rythme suffisant. Lorsque les donnes ntaient plus prsentes dans le buffer du
graveur, il y avait une rupture de flux. Ceci entranait larrt de la gravure par manque
de donnes et le CDR tait inutilisable. Pour corriger ce type d'erreurs, les fabricants
utilisent maintenant des techniques qui suspendent la gravure lorsque les donnes ne
sont pas prsentes, et la reprend ds que les donnes sont de nouveau prsentes
dans le buffer. Cette technique est appele JUST LINK chez la majorit des
fabricants, Burn-Proof chez Plextor.
L'overburning : cette technique permet de dpasser lgrement la capacit du support
vierge afin de stocker un peu de donnes supplmentaires. Pour ce faire, il faut que le
logiciel de gravure, ainsi que le graveur, supportent cette technique.
Caractristiques dun lecteur/graveur :
la vitesse maximum de gravage des CD-R
la vitesse maximum de gravage des CD-RW
la vitesse maximum de lecture des CD
interface (IDE, SCSI, SATA)
Principe DVDROM :
Le DVD-ROM (Digital Versatile Disc - Read Only
Memory) est apparu en 1997 et est principalement ddi
la vido. Cest en fait un CD-ROM dont la capacit est bien
plus grande. En effet, la lecture/criture est effectue
partir dun laser rouge (650 et 635 nm) et permet dobtenir
des creux beaucoup plus petits et donc de stocker plus
dinformatons. Les deux longueurs dondes utilises
permettent de lire/crire sur des DVD "double couche". Ces
disques sont constitus d'une couche transparente et d'une
couche rflexive et permettent donc de stocker encore plus
dinformations sur un seul CD.

53

Il existe 3 types de DVD rinscriptibles et incompatibles :


DVD-RAM : le disque simple face permet de stocker 2.6 Go. Il nest pas compatible
avec les lecteurs de salon.
DVD-RW de Sony, Philips et HP permet de stocker 4.7Go par face. Il est entirement
compatible avec les platines de salon.
DVD+RW est le nouveau standard concurrent au DVD-RW. Il est entirement
compatible avec les platines de salon. Plusieurs marques ont form une alliance et
dveloppent des graveurs DVD prsentant des temps daccs plus faible et des
vitesses de gravure plus importante.

Type de support

Capacit

Nombre de CD

CD

800 Mo

DVD-RAM

2.6 Go

DVD-RW/+RW
simple face
simple couche

4.7 Go

DVD-RW/+RW
double face
simple couche

9.4 Go

12

DVD-RW/+RW
simple face
double couche

8.5 Go

11

DVD-RW/+RW
double face
double couche

17 Go

22

54

Bibliographie
Cours Web :
A brief history of Intel and AMD microprocessors (cours DEUG Universit Angers) Jean-Michel Richer
Architecture Avance des ordinateurs (cours Supelec Rennes) Jacques Weiss
Architecture des ordinateurs (cours IUT GTR Montbliard) Eric Garcia
Architecture des ordinateurs (cours IUT SRC Marne la Valle) Dominique Prsent
Architecture des ordinateurs (cours Universit Franche Compt) Didier Teifreto
Architecture des ordinateurs (cours IUP STRI Toulouse)
Architecture des ordinateurs (cours Universit de Sherbrooke) Frdric Mailhot
Architecture des ordinateurs (cours Polytechnique) Olivier Temam
Architecture des ordinateurs (cours IUT GTR Villetaneuse) Emmanuel Viennet
Architecture des ordinateurs (cours DEUG MIAS) Frdric Vivien
Architecture des Ordinateurs (cours Licence Informatique USTL) David Simplot
Architecture des machines et systmes Informatiques Jolle Delacroix
Architectures des processeurs (cours DEUST Nancy) Yannick Chevalier
Architecture des systmes microprocesseurs Maryam Siadat et Camille Diou
Architecture des systmes microprocesseurs (cours IUT Mesures Physiques) Sbastien Pillement
Architecture Systmes et Rseaux (cours DEUG 2ime anne) Fabrice Bouquet
Carte graphique (ENIC) Julien Lenoir
Cours de rseau (cours EISTI) Bruno Pant
Cours de rseaux (cours Matrise Informatique Universit Angers) Pascal Nicolas
Du processeur au systme dexploitation (cours DEUST Nancy) Yannick Chevalier
Introduction to computer architecture (cours DEUG Universit Angers) Jean-Michel Richer
Les rseaux : introduction (DESS DCISS) Emmanuel .Cecchet
Les systmes informatiques (cours CNAM) Christian Carrez

Sites web :
Fonctionnement des composants du PC
http://www.vulgarisation-informatique.com/composants.php
Cours dinitiation aux microprocesseurs et aux microcontrleurs
http://www.polytech-lille.fr/~rlitwak/Cours_MuP/sc00a.htm
Architecture des ordinateurs Universit Angers
http://www.info.univ-angers.fr/pub/richer/ens/deug2/ud44/
Les docs de Heissler Frdric
http://worldserver.oleane.com/heissler/
X-86 secret
http://www.x86-secret.com/
Le cours hardware dYBET informatique
http://www.ybet.be/hardware/hardware1.htm
Informa Tech
http://informatech.online.fr/articles/index.php

Articles presse :
Mmoire Flash article Electronique Juillet 98
Les processeurs numriques de signal article Electronique Janvier 2004
Fonctionnement dun processeur et dune carte graphique article Hardware magazine Novembre
2003

55

Livres :
Architecture et technologie des ordinateurs (Dunod) Paolo Zanella et Yves Ligier
Technologie des ordinateurs et des rseaux (Dunod) Pierre-Alain Goupille
Les microprocesseurs, comment a marche ? (Dunod) T. Hammerstrom et G. Wyant

56

Vous aimerez peut-être aussi