|
La compréhension du vocabulaire
informatique représente généralement
la principale difficulté à laquelle se heurtent
les acheteurs potentiels d'ordinateurs personnels. En effet,
contrairement à un téléviseur, pour lequel
les critères de choix sont assez limités, le
choix d'un ordinateur revient à choisir chaque élément
qui le compose et à en connaître les caractéristiques.
Ce dossier n'a pas pour but de donner un sens à toutes
les abréviations informatiques (dans la mesure où
de nombreux constructeurs ont leurs propres terminologies)
mais il cherche à mieux faire comprendre les principaux
composants d'un ordinateur, d'en expliquer le fonctionnement
et d'en donner les principales caractéristiques.
Présentation de l'ordinateur
Un ordinateur est un ensemble de circuits électroniques
permettant de manipuler des données sous forme
binaire, c'est-à-dire sous forme de bits. Le
mot "ordinateur" provient de la firme IBM.
Celle-ci demanda en 1954 à un professeur de lettres
à Paris de trouver un mot pour désigner
ce que l'on appelait vulgairement un "calculateur"
(traduction littérale de computer en anglais).
Ainsi Jaques Perret, agrégé de lettres,
proposa le 16 avril 1955 le mot "Ordinateur"
en présisant que le mot "Ordinateur"
était un adjectif provenant du Littré
signifiant "Dieux mettant de l'ordre dans le monde".
Ainsi il expliqua que le concept de "mise en ordre"
etait tout à fait adapté.
|
 |
Types d'ordinateurs
Toute machine capable de manipuler des informations binaires
peut être qualifiée d'ordinateur. Toutefois,
la plupart des personnes pensent à un ordinateur personnel
(PC, abréviation de personal computer), le type d'ordinateur
le plus présent sur le marché, mais il existe
beaucoup d'autres types d'ordinateurs (la liste suivante est
non exhaustive) :
Amiga
Atari
Apple Macintosh
stations Alpha
stations SUN
stations Silicon Graphics
Nous ne nous intéresserons par la suite qu'aux ordinateurs
de type PC, appelés aussi ordinateurs compatible IBM,
car IBM est la firme qui a créé les premiers
ordinateurs de ce type et a longtemps (jusqu'en 1987) été
le leader dans ce domaine, à un tel point qu'elle contrôlait
les standards, copiés par les autres fabricants.
Constitution de l'ordinateur
Un ordinateur est un ensemble de composants électroniques
modulaires, c'est-à-dire des composants pouvant être
remplacés par d'autres composants ayant éventuellement
des caractéristiques différentes. Ces composants
sont architecturés autour d'une carte principale comportant
quelques circuits intégrés et beaucoup de composants
électroniques tels que condensateurs, résistances,
etc. Tous ces composants sont soudés sur la carte et
sont reliés par les connexions du circuit imprimé
et par un grand nombre de connecteurs : cette carte est appelée
carte-mère.
La carte-mère est logée dans un boîtier,
comportant des emplacements pour les périphériques
de stockage sur la face avant, ainsi que des boutons permettant
de contrôler la mise sous tension de l'ordinateur et
un certain nombre de voyants permettant de vérifier
l'état de marche de l'appareil et l'activité
des disques durs. Sur la face arrière le boîtier
présente des ouvertures en vis-à-vis des cartes
d'extension et des interfaces d'entrée-sortie connectées
sur la carte-mère.
Enfin le boîtier héberge un bloc d'alimentation
électrique (appelé communément alimentation),
chargé de fournir un courant électrique stable
et continu à l'ensemble des éléments
constitutifs de l'ordinateur. L'alimentation sert donc à
convertir le courant alternatif du réseau électrique
(220 ou 110 Volts) en un courant continu de 5 volts pour les
composants de l'ordinateur et de 12 volts pour certains périphériques
internes (disques, lecteurs de CD-ROM, ...). Le bloc d'alimentation
est caractérisé par sa puissance, qui conditionne
le nombre de périphériques que l'ordinateur
est capable d'alimenter. La puissance du bloc d'alimentation
est généralement comprise entre 200 et 350 Watts.
On appelle unité centrale l'ensemble composé
du boîtier et des éléments qu'il contient.
L'unité centrale doit être connectée à
un ensemble de périphériques externes. Un ordinateur
est généralement composé au minimum d'une
unité centrale, d'un écran (moniteur), d'un
clavier et d'une souris, mais il est possible de connecter
une grande diversité de périphériques
externes sur les interfaces d'entrée-sortie (ports
séries, port parallèle, port USB, port firewire,
...) :
imprimante,
scanner,
périphérique de stockage externe,
appareil photo ou caméra numérique,
assistant personnel (PDA),
...
Présentation de la carte-mère
L'élément constitutif principal de l'ordinateur
est la carte mère, c'est sur cette carte que sont connectés
ou soudés l'ensemble des éléments essentiels
de l'ordinateur.
La carte-mère contient des éléments
embarqués (intégrés à la carte)
:
Le chipset, circuit qui contrôle la majorité
des ressources (interface de bus du processeur, mémoire
cache et mémoire vive, slots d'extension,...)
L'horloge et la pile du CMOS,
Le BIOS
Le bus système et les bus d'extension.
Il existe plusieurs façons de caractériser une
carte-mère:
son facteur d'encombrement
son chipset
son type de support de processeur
Facteur d'encombrement d'une carte-mère
On entend généralement par facteur d'encombrement,
la géométrie et les dimensions de la carte-mère.
Afin de fournir des cartes-mères pouvant s'adapter
dans différents boîtiers de marques différentes,
des standards ont été mis au point:
AT baby
AT full format
ATX
LPX
NLX
Le chipset
Le chipset (traduisez jeu de composants) est un circuit électronique
chargé de coordonner les échanges de données
entre les divers composants de l'ordinateur (processeur, mémoire;
...). Dans la mesure où le chipset est intégré
à la carte-mère, il est important de choisir
une carte-mère embarquant un chipset récent
afin de garantir à votre PC un maximum de chance de
pouvoir évoluer.
Certains chipsets intègrent parfois une puce graphique
ou une puce audio (généralement sur les PC bas
de gamme), ce qui signifie qu'il n'est pas nécessaire
d'installer une carte graphique ou une carte son. Toutefois,
étant donné la piètre qualité
de ces composants intégrés, il est généralement
conseillé de les désactiver (lorsque cela est
possible) dans le setup du BIOS et d'installer des cartes
d'extension dans les emplacements prévus à cet
effet !
L'horloge et la pile du CMOS
L'horloge temps réel (notée RTC, pour Real Time
Clock) est un circuit chargé de la synchronisation
des signaux du système. Elle est constituée
d'un cristal qui, en vibrant, donne des impulsions (appelés
tops d'horloge) afin de cadencer le système. On appelle
fréquence de l'horloge (exprimée en Mhz) le
nombre de vibrations du cristal par seconde, c'est-à-dire
le nombre de tops d'horloge émis par seconde. Plus
la fréquence est élevée, plus il y a
de tops d'horloge et donc plus le système pourra traiter
d'informations.
Lorsque vous mettez votre ordinateur hors tension, l'alimentation
cesse de fournir du courant à la carte-mère.
Or, lorsque vous le rebranchez, votre système d'exploitation
est toujours à l'heure bien que l'unité centrale
n'était plus alimentée pendant un certain temps.
En réalité même lorsque votre PC est débranché
ou qu'une panne d'électricité intervient, un
circuit électronique appelé CMOS (Complementary
Metal-Oxyde Semiconductor, parfois appelé BIOS CMOS)
conserve certaines informations sur le système, y compris
l'heure et la date système. Le CMOS est continuellement
alimenté par une pile (au format pile bouton) située
également sur la carte-mère. Ainsi, les informations
sur le matériel installé dans l'ordinateur (comme
par exemple le nombre de pistes, de secteurs de chaque disque
dur) sont conservées dans le CMOS. Dans la mesure où
le CMOS est une mémoire lente, certains systèmes
recopient parfois le contenu du CMOS dans la RAM (mémoire
rapide), le terme de memory shadow est utilisé pour
décrire ce processus de copie en mémoire vive.
Le "complémentary metal-oxyde semiconductor",
est une technologie de fabrication de transistors, précédée
de bien d'autres, comme la TTL ("Transistor-transistor-logique"),
ou la TTLS (TTL Schottky) (plus rapide), ...
Avant le CMOS, il y avait également le NMOS (canal
négatif) et le PMOS (canal positif). Le CMOS, qui a
permis de mettre des canaux complémentaires sur une
même puce, a ainsi été une grande avancée.
Par rapport à la TTL ou TTLS, le CMOS est beaucoup
moins rapide, mais a le grand avantage de consommer infiniment
moins d'énergie, d'où son emploi dans les horloges
d'ordinateurs, qui sont alimentées par des piles. Ainsi
le terme de CMOS est parfois utilisé abusivement pour
désigner l'horloge des ordinateurs
Ainsi, si vous constatez que votre PC a tendance à
oublier l'heure, ou que l'horloge prend du retard, pensez
à en changer la pile !
Le BIOS
Le BIOS (Basic Input/Output System) est le programme basique
servant d'interface entre le système d'exploitation
et la carte-mère. Le BIOS est stocké dans une
ROM (mémoire morte, c'est-à-dire une mémoire
en lecture seule), ainsi il utilise les données contenues
dans le CMOS pour connaître la configuration matérielle
du système.
Il est possible de "configurer" le BIOS grâce
à une interface (nommée BIOS setup, traduisez
configuration du BIOS) accessible au démarrage de l'ordinateur
par simple pression d'une touche (généralement
la touche Suppr. En réalité le setup du BIOS
sert uniquement d'interface pour la configuration et les données
sont stockées dans le CMOS. Pour plus d'informations
n'hésitez pas à vous reporter au manuel de votre
carte-mère).
Le processeur
Le processeur (aussi appelé microprocesseur) est le
cerveau de l'ordinateur, car il exécute les instructions
des programmes grâce à un jeu d'instructions.
Le processeur est caractérisé par sa fréquence,
c'est-à-dire la cadence à laquelle il exécute
les instructions. Ainsi, de manière grossière,
un processeur cadencé à 600 Mhz effectuera 600
millions d'opérations par seconde.
La carte-mère possède un emplacement (parfois
plusieurs dans le cas de cartes-mères multi-processeurs)
pour accueillir le processeur. On distingue deux catégories
de supports :
slot : il s'agit d'un connecteur rectangulaire dans lequel
on enfiche le processeur verticalement
socket : il s'agit d'un connecteur carré possédant
un grand nombre de petits connecteurs sur lequel le processeur
vient directement s'enficher
Dans la mesure où le processeur rayonne thermiquement,
il est nécessaire d'en dissiper la chaleur pour éviter
que ses circuits ne fondent. C'est la raison pour laquelle
il est généralement surmonté d'un dissipateur
thermique, un matériau ayant une bonne conduction thermique,
chargé d'augmenter la surface d'échange thermique
du microprocesseur. Le dissipateur thermique comporte une
base en contact avec le processeur et des ailettes afin d'augmenter
la surface d'échange thermique. Un ventilateur accompagne
généralement le dissipateur pour améliorer
la circulation de l'air autour du dissipateur et améliorer
l'échange de chaleur. Le terme "ventirad"
est ainsi parfois utilisé pour désigner l'ensemble
Ventilateur + Radiateur. C'est le ventilateur du boîtier
qui est chargé d'extraire l'air chaud du boîtier
et permettre à l'air frais provenant de l'extérieur
d'y entrer.
La mémoire-cache
La mémoire-cache permet au processeur de se "rappeler"
les opérations déjà effectuées
auparavant. En effet, elle stocke les opérations effectuées
par le processeur, pour qu'il ne perde pas de temps à
recalculer des choses qu'il a déjà faites précédemment.
La taille de la mémoire-cache est généralement
de l'ordre de 512 Ko. Sur les ordinateurs récents on
distingue généralement deux types de mémoire
cache :
la mémoire cache de niveau 1 (appelée L1 Cache,
pour Level 1 Cache) directement intégrée dans
le processeur,
la mémoire cache de niveau 2 (appelée L2 Cache,
pour Level 2 Cache) située au niveau du bus processeur.
La mémoire vive
La mémoire vive (RAM pour Random Access Memory) permet
de stocker des informations pendant tout le temps de fonctionnement
de l'ordinateur, son contenu est par contre détruit
dès lors que l'ordinateur est éteint ou redémarré,
contrairement à une mémoire de masse comme le
disque-dur qui garde les informations même lorsqu'il
est hors-tension.
Pourquoi alors se servir de mémoire alors que les
disques durs sont moins chers?
Car elle est extrêmement rapide comparé aux périphériques
de stockage de type disque dur (de l'ordre de quelques dizaines
de nanosecondes: environ 70 pour la DRAM, 60 pour la RAM EDO,
et 10 pour la SDRAM voire même 6ns sur les SDRam DDR).
La mémoire vive se présente sous la forme de
barettes qui se branchent sur les connecteurs DIMM (pour les
plus anciennes SIMM)
Les connecteurs d'extension
Les connecteurs d'extension (en anglais slots) sont des receptacles
dans lesquels il est possible d'enficher des cartes d'extension,
c'est-à-dire des cartes offrant de nouvelles fonctionnalités
ou de meilleures performances à l'ordinateur. Il existe
plusieurs sortes de connecteurs :
connecteur ISA (Industry Standard Architecture) : permettant
de connecter des cartes ISA, les plus lentes fonctionnant
en 16-bit
connecteur VLB (Vesa Local Bus): Bus servant autrefois à
connecter des cartes graphiques
connecteur PCI (Peripheral Component InterConnect) : permettant
de connecter des cartes PCI, beaucoup plus rapides que les
cartes ISA et fonctionnant en 32-bit
connecteur AGP (Accelerated Graphic Port): un connecteur rapide
pour carte graphique.
connecteur AMR (Audio Modem Riser): ce type de connecteur
permet de brancher des mini-cartes sur les PC en étant
équipés
Qu'est-ce qu'un processeur?
le processeur
Le processeur (CPU: Central Processing Unit) est un circuit
électronique cadencée au rythme d'une horloge
interne, c'est-à-dire un élément qui
envoie des impulsions (que l'on appelle top). A chaque top
d'horloge les éléments de l'ordinateur accomplissent
une action. La vitesse de cette horloge (le nombre de battements
par secondes) s'exprime en Mégahertz, ainsi un ordinateur
à 200Mhz a donc une horloge envoyant 200,000,000 de
battements par seconde (un cristal de quartz soumis à
un courant électrique permet d'envoyer des impulsions
à une fréquence précise).
A chaque top d'horloge (pour les instructions simples) le
processeur :
lit l'instruction à exécuter en mémoire
effectue l'instruction
passe à l'instruction suivante
Le processeur est en fait constitué:
d'une unité de commande qui lit les instructions et
les décode
d'une unité de traitement (UAL - unité arithmétique
et logique) qui exécute les instructions.
Lorsque tous les éléments d'un processeur sont
regroupés sur une même puce, on parle alors de
microprocesseur.
A quoi ressemble une instruction?
Les instructions (opération que le processeur doit
accomplir) sont stockées dans la mémoire principale.
Une instruction est composée de deux champs:
le code opération: c'est l'action que le processeur
doit accomplir
le code opérande: ce sont les paramètres de
l'action. Le code opérande dépend de l'opération,
cela peut être une donnée ou bien une adresse
d'un emplacement mémoire
code opération champ opérande
Une instruction peut être codée sur un nombre
d'octets variant de 1 à 4 suivant le type de données.
les registres
Lorsque le processeur traite des données (lorsqu'il
exécute des instructions) le processeur stocke temporairement
les données dans de petites mémoires de 8, 16
ou 32Ko (qui ont l'avantage d'être très rapides)
que l'on appelle registres. Suivant le type de processeur
le nombre de registres peut varier entre une dizaine et plusieurs
centaines.
Les registres les plus importants sont:
le registre accumulateur: il permet de stocker les résultats
des opérations arithmétiques et logiques
le registre d'état: il permet de stocker les indicateurs
le registre instruction: il contient l'instruction en cours
de traitement
le compteur ordinal: il contient l'adresse de la prochaine
instruction à traiter
le registre tampon: il permet de stocker temporairement une
donnée provenant de la mémoire
les signaux de commande
Les signaux de commande sont des signaux électriques
qui permettent au processeur de communiquer avec le reste
du système (le signal Read/Write - lecture/écriture
- permet notamment de signaler à la mémoire
qu'il désire lire ou écrire une information
--------------------------------------------------------------------------------
Qu'est-ce qu'un microprocesseur ?
Le premier microprocesseur (Intel 4004) a été
inventé en 1971. Depuis, la puissance des microprocesseurs
augmente exponentiellement. Quels sont donc ces petits morceaux
de silicium qui dirigent nos ordinateurs?
Le processeur (CPU, pour Computer Processing Unit) est le
cerveau de l'ordinateur, c'est lui effectue les calculs et
exécute les instructions qui ont été
programmées. Toutes ces opérations permettent
de manipuler des informations numériques, c'est-à-dire
des informations codées sous forme binaire. Pour réaliser
ces traitements, les microprocesseurs utilisent de "petits
interrupteurs" utilisant l'effet transistor découvert
en 1947 par John Barden et Walter Brittan qui reçurent
le prix Nobel l'année suivante pour cette découverte.
Il existe plusieurs millions de ces transistors sur un seul
processeur !
Les éléments principaux d'un microprocesseur
sont:
Une horloge qui rythme le processeur. Entre deux tops d'horloge
le processeur effectue une action. Une instruction nécessite
une ou plusieurs actions du processeur. Ainsi plus l'horloge
a une fréquence élevée, plus le processeur
effectue d'instructions par seconde (l'unité retenue
pour caractériser le nombre d'instructions traitées
par unité de temps est généralement le
MIPS, Millions d'instructions par seconde).
Par exemple un ordinateur ayant une fréquence de 100
Mhz effectue 100 000 000 d'instructions par seconde
Une unité de gestion des bus qui gère les flux
d'informations entrant et sortant
Une unité d'instruction qui lit les données
arrivant, les décode puis les envoie à l'unité
d'exécution.
Une unité d'exécution qui accomplit les tâches
que lui a données l'unité d'instruction.
Le processeur travaille en fait grâce à un nombre
très limité de fonctions (ET logique, Ou logique,
addition ...), celles-ci sont directement câblées
sur les circuits électroniques. Il est impossible de
mettre toutes les instructions sur un processeur car celui-ci
est limité par la taille de la gravure, ainsi pour
mettre plus d'instructions il faudrait un processeur ayant
une très grande surface, or le processeur est constitué
de silicium et le silicium coûte cher, d'autre part
il chauffe beaucoup. Le processeur traite donc les informations
compliquées à l'aide d'instructions simples.
Le parallelisme
Le parallèlisme consiste à exécuter simultanément
sur des processeurs différents des instructions relatives
à un même programme. Cela se traduit par le découpage
d'un programme en plusieurs processus qui seront traités
par des processeurs différents dans le but de gagner
en temps d'exécution. Cela nécessite toutefois
une communication entre les différents processus. C'est
le même principe de fonctionnement que dans une entreprise:
le travail est divisé en petits processus traités
par des services différents et qui ne servent à
rien si la communication entre les services ne fonctionne
pas (ce qui est généralement le cas dans les
entreprises...).
Le pipelining
Le pipelining est un principe simple à comprendre.
Il permet de mettre à disposition du microprocesseur
les instructions qu'il va devoir effectuer. Les instructions
font la "file" (d'où le nom de "pipeline")
dans la mémoire cache. Ainsi, pendant que le microprocesseur
exécute une instruction, la suivante est mise à
sa disposition.
Le pipelining permet donc en quelque sorte d'empiéter
sur la fin d'une instruction sur le début de la suivante.
En effet, une instruction se déroule selon trois phases
:
Récupération de la donnée (notée
F pour Fetch) : recherche en mémoire de l'instruction,
mise à jour du compteur ordinal ;
Décodage (noté D pour Decode) : obtention des
calculs à faire, des éléments de données
concernés ;
Exécution (notée E pour Execute) : calcul à
proprement parler.
Dans une structure non pipelinée, il faut 9 temps pour
faire 3 instructions :
F1-D1-E1-F2-D2-E2-F3-D3-E3 (dans l'ordre chronologique)
Dans une structure pipelinée idéale, on réalise
plusieurs phases en même temps, ceci étant possible
en mettant les résultats des différentes phases
dans des registres tampon :
F1 - D1+F2 - E1+D2+F3 - E2+D3 - E3 (dans l'ordre chronologique)
Il suffit ainsi de 5 temps uniquement. Ceci n'est cependant
pas toujours possible, pour des questions de dépendance
d'une instruction vis-à-vis du résultat de la
précédente...
l'architecture CISC
L'architecture CISC (Complex Instruction Set Computer, ce
qui signifie "ordinateur avec jeu d'instructions complexes")
est utilisée par tous les processeurs de type x86,
c'est-à-dire les processeurs fabriqués par Intel,
AMD, Cyrix, ...
Les processeurs basés sur l'architecture CISC peuvent
traiter des instructions complexes, qui sont directement câblées
sur leurs circuits électroniques, c'est-à-dire
que certaines instructions difficiles à créer
à partir des instructions de base sont directement
imprimées sur le silicium de la puce afin de gagner
en rapidité d'exécution sur ces commandes.
L'inconvénient de ce type d'architecture provient justement
du fait que des fonctions supplémentaires sont imprimées
sur le silicium, d'où un coût élevé.
D'autre part, les instructions sont de longueurs variables
et peuvent parfois prendre plus d'un cycle d'horloge ce qui
les rend lentes à l'exécution étant donné
qu'un processeur basé sur l'architecture CISC ne peut
traîter qu'une instruction à la fois!
l'architecture RISC
Contrairement à l'architecture CISC, un processeur
utilisant la technologie RISC (Reduced Instruction Set Computer,
dont la traduction est "ordinateur à jeu d'instructions
réduit") n'a pas de fonctions supplémentaires
câblées. Cela exige donc des programmes ayant
des instructions simples à faire interpréter
par le processeur, c'est-à-dire un développement
plus difficile et un compilateur plus puissant. Cependant
vous vous dites qu'il peut exister des instructions qui ne
peuvent pas être effectuées à partir des
instructions simples...
En fait ces instructions sont tellement peu nombreuses qu'il
est possible de les câbler directement sur le circuit
imprimé sans alourdir de manière dramatique
leur fabrication.
L'avantage d'une telle architecture est bien évidemment
le coût réduit au niveau de la fabrication des
processeurs l'utilisant. De plus, les instructions, étant
simples, sont exécutées en un cycle d'horloge,
ce qui rend l'exécution des programmes plus rapide
qu'avec des processeurs basés sur une architecture
CISC.
De plus, de tels processeurs sont capables de traîter
plusieurs instructions simultanément en les traitant
en parallèle.
CISC ou RISC
A comparer les spécificités des deux types d'architecture
on pourrait conclure que les processeurs basé sur une
architecture de type RISC sont les plus utilisés...
Cela n'est malheureusement pas le cas... En effet les ordinateurs
construits autour d'une architecture RISC nécessitent
une quantité de mémoire plus importante que
les ordinateurs de type CISC
Rôle de la mémoire vive (RAM)
La mémoire vive, généralement appelée
RAM (Random Access Memory, traduisez mémoire à
accès aléatoire), est la mémoire principale
du système, c'est-à-dire qu'il s'agit d'un espace
permettant de stocker de manière temporaire des données
lors de l'exécution d'un programme.
En effet le stockage de données dans la mémoire
vive est temporaire, contrairement au stockage de données
sur une mémoire de masse telle que le disque dur (mémoire
avec laquelle les novices la confondent généralement),
car elle permet uniquement de stocker des données tant
qu'elle est alimentée électriquement. Ainsi,
à chaque fois que l'ordinateur est éteint, toutes
les données présentes en mémoire sont
irrémédiablement effacées.
La mémoire morte, appelée ROM pour Read Only
Memory (traduisez mémoire en lecture seule) est un
type de mémoire permettant de conserver les informations
qui y sont contenues même lorsque la mémoire
n'est plus alimentée électriquement. A la base
ce type de mémoire ne peut être accédée
qu'en lecture. Toutefois il est désormais possible
d'enregistrer des informations dans certaines mémoires
de type ROM.
Fonctionnement de la mémoire vive
La mémoire vive est constituée de centaines
de milliers de petits condensateurs emmagasinant des charges.
Lorsqu'il est chargé, l'état logique du condensateur
est égal à 1, dans le cas contraire il est à
0, ce qui signifie que chaque condensateur représente
un bit de la mémoire.
Etant donné que les condensateurs se déchargent,
il faut constamment les recharger (le terme exact est rafraîchir)
à un intervalle de temps régulier appelé
cycle de rafraîchissement (d'une durée d'environ
15 nanosecondes (ns) pour une mémoire DRAM).
Chaque condensateur est couplé à un transistor
(de type MOS) permettant de "récupérer"
ou de modifier l'état du condensateur. Ces transistors
sont rangés sous forme de tableau (matrice), c'est-à-dire
que l'on accède à une "case mémoire"
(aussi appelée point mémoire) par une ligne
et une colonne.
Chaque point mémoire est donc caractérisé
par une adresse, correspondant à un numéro de
ligne et un numéro de colonne. Or cet accès
n'est pas instantané et s'effectue pendant un délai
appelé temps de latence. Par conséquent l'accès
à une donnée en mémoire dure un temps
égal au temps de cycle auquel il faut ajouter le temps
de latence.
Ainsi, pour une mémoire de type DRAM, le temps d'accès
est de 60 nanosecondes (35ns de délai de cycle et 25ns
de temps de latence). Sur un ordinateur, le temps de cycle
correspond à l'inverse de la fréquence de l'horloge,
par exemple pour un ordinateur cadencé à 200Mhz,
le temps de cycle est de 5ns (1/(200.106)).
Par conséquent un ordinateur ayant une fréquence
élevée et utilisant des mémoires dont
le temps d'accès est beaucoup plus long que le temps
de cycle du processeur doit effectuer des cycles d'attente
(en anglais wait state) pour accèder à la mémoire.
Dans le cas d'un ordinateur cadencé à 200Mhz
utilisant des mémoires de types DRAM (dont le temps
d'accès est de 60ns), il y a 11 cycles d'attente pour
un cycle de transfert. Les performances de l'ordinateur sont
d'autant diminuées qu'il y a de cycles d'attentes,
il est donc conseillé d'utiliser des mémoires
plus rapides.
La correction d'erreurs
Certaines mémoires possèdent des mécanismes
permettant de pallier les erreurs afin de garantir l'intégrité
des données qu'elles contiennent. Ce type de mémoire
est généralement utilisé sur des systèmes
travaillant sur des données critiques, c'est la raison
pour laquelle on trouve ce type de mémoire dans les
serveurs.
Bit de parité
Les barrettes avec bit de parité permettent de s'assurer
que les données contenues dans la mémoire sont
bien celles que l'on désire. Pour ce faire, un des
bits de chaque octet stocké en mémoire sert
à conserver la somme des bits de données.
Le bit de parité vaut 0 lorsque la somme des bits de
données est impaire et 1 dans le cas contraire.
De cette façon les barrettes avec bit de parité
permettent de vérifier l'intégrité des
données mais ne permettent pas de corriger les erreurs.
De plus pour 8 Mo de mémoire, seulement 7 serviront
à stocker des données, dans la mesure où
le dernier mégaoctet conservera les bits de parité.
Barrettes ECC
Les barrettes de mémoire ECC (Error Correction Coding)
sont des mémoires possédant plusieurs bits dédiés
à la correction d'erreur (on les appelle ainsi bits
de contrôle). Ces barrettes, utilisées principalement
dans les serveurs, permettent de détecter les erreurs
et de les corriger.
Types de barrettes de mémoire vive
Il existe de nombreux types de mémoires vives. Celles-ci
se présentent toutes sous la forme de barrettes de
mémoire enfichables sur la carte-mère.
Les premières mémoires se présentaient
sous la forme de puces appelées DIP (Dual Inline Package).
Désormais les mémoires se trouvent généralement
sous la forme de barrettes, c'est-à-dire des cartes
enfichables dans des connecteurs prévus à cet
effet. On distingue deux types de barrettes de RAM :
les barrettes au format SIMM (Single Inline Memory Module)
: il s'agit de circuits imprimés dont une des faces
possède des puces de mémoire. Il existe deux
types de barrettes SIMM, selon le nombre de connecteurs :
Les barrettes SIMM à 30 connecteurs (dont les dimensions
sont 89x13mm) sont des mémoires 8 bits qui équipaient
les premières générations de PC (286,
386).
Les barrettes SIMM à 72 connecteurs (dont les dimensions
sont 108x25mm) sont des mémoires capables de gérer
32 bits de données simultanés. Ces mémoires
équipent des PC allant du 386DX aux premiers pentiums.
Sur ces derniers le processeur travaille avec un bus de données
d'une largeur de 64 bits, c'est la raison pour laquelle il
faut absolument équiper ces ordinateurs de deux barettes
SIMM. Il n'est pas possible d'installer des barettes 30 broches
sur des emplacements à 72 connecteurs dans la mesure
où un détrompeur (encoche au centre des connecteurs)
en empêche l'enfichage.
les barrettes au format DIMM (Dual Inline Memory Module)
sont des mémoires 64 bits, ce qui explique pourquoi
il n'est pas nécessaire de les apparier. Les barrettes
DIMM possèdent des puces de mémoire de part
et d'autre du circuit imprimé et ont également
84 connecteurs de chaque côté, ce qui les dote
d'un total de 168 broches. En plus de leurs dimensions plus
grandes que les barrettes SIMM (130x25mm) ces barrettes possèdent
un second détrompeur pour éviter la confusion.
A noter que les connecteurs DIMM ont été améliorés
afin de permettre une insertion facile des barettes grâce
à des leviers situés de part et d'autre du connecteur.
DRAM PM
La DRAM (Dynamic RAM, RAM dynamique) est le type de mémoire
le plus répandu au début du millénaire.
Il s'agit d'une mémoire dont les transistors sont rangés
dans une matrice selon des lignes et des colonnes. Un transistor,
couplé à un condensateur donne l'information
d'un bit. 1 octet comprenant 8 bits, une barrette de mémoire
DRAM de 256 Mo contiendra donc 256000000*8 bits soit 2 048
000 000 (256000000*8) transistors. Ce sont des mémoires
dont le temps d'accès est de 60ns.
D'autre part, les accès mémoire se font généralement
sur des données rangées consécutivement
en mémoire. Ainsi le mode d'accès en rafale
(burst mode) permet d'accèder aux trois données
consécutives à la première sans temps
de latence supplémentaire. Dans ce mode en rafales,
le temps d'accès à la première donnée
est égale au temps de cycle auquel il faut ajouter
le temps de latence, et le temps d'accès aux trois
autres données est uniquement égal aux temps
de cycle, on note donc sous la forme X-Y-Y-Y les quatre temps
d'accès, par exemple la notation 5-3-3-3 indique une
mémoire pour laquelle 5 cycles d'horloge sont nécessaires
pour accéder à la première donnée
et 3 pour les suivantes.
DRAM FPM
Pour accélérer les accès à la
DRAM, il existe une technique, appelée pagination consistant
à accèder à des données situées
sur une même colonne en modifiant uniquement l'adresse
de la ligne, ce qui permet d'éviter la répétition
du numéro de colonne entre la lecture de chacune des
lignes. On parle alors de DRAM FPM (Fast Page Mode). La FPM
permet d'obtenir des temps d'accès de l'ordre de 70
à 80 nanosecondes pour une fréquence de fonctionnement
pouvant aller de 25 à 33 Mhz.
DRAM EDO
La DRAM EDO (Extended Data Out, soit Sortie des données
amélioré parfois également appelé
"hyper-page") est apparue en 1995. La technique
utilisée avec ce type de mémoire consiste à
adresser la colonne suivante pendant la lecture des données
d'une colonne. Cela crée un chevauchement des accès
permettant de gagner du temps sur chaque cycle. Le temps d'accès
à la mémoire EDO est donc d'environ 50 à
60 nanosecondes pour une fréquence de fonctionnement
allant de 33 à 66 Mhz.
Ainsi, la RAM EDO, lorsqu'elle est utilisée en mode
rafale permet d'obtenir des cycles de la forme 5-2-2-2, soit
un gain de 4 cycles sur l'accès à 4 données.
Dans la mesure où la mémoire EDO n'acceptait
pas des fréquences supérieures à 66 Mhz,
elle a disparu au bénéfice de la SDRAM.
SDRAM
La SDRAM (Synchronous DRAM, traduisez RAM synchrone), apparue
en 1997, permet une lecture des données synchronisée
avec le bus de la carte-mère, contrairement aux mémoires
EDO et FPM (qualifiées d'asynchrones) possèdant
leur propre horloge. La SDRAM permet donc de s'affranchir
des temps d'attente dûs à la synchronisation
avec la carte-mère. Celle-ci permet d'obtenir un cycle
en mode rafale de la forme 5-1-1-1, c'est-à-dire un
gain de 3 cycles par rapport à la RAM EDO. De cette
façon la SDRAM est capable de fonctionner avec une
cadence allant jusqu'à 150Mhz, lui permettant d'obtenir
des temps d'accès d'environ 10ns.
DDR-SDRAM
La DDR-SDRAM (Double Data Rate SDRAM) est une mémoire
basée sur la technologie SDRAM, permettant de doubler
le taux de transfert de la SDRAM à fréquence
égale.
DR-SDRAM (Rambus DRAM)
La DR-SDRAM (Direct Rambus DRAM ou encore RDRAM) est un type
de mémoire permettant de transférer les données
sur un bus de 16 bits de largeur à une cadence de 800Mhz,
ce qui lui confère une bande passante de 1,6 Go/s.
Comme la SDRAM, ce type de mémoire est synchronisé
avec l'horloge du bus pour améliorer les échanges
de données. En contrepartie, la mémoire RAMBUS
est une technologie propriétaire, ce qui signifie que
toute entreprise désirant construire des barrettes
de RAM selon cette technologie doit reverser des droits (royalties)
aux sociétés RAMBUS et Intel
La mémoire morte (ROM)
Il existe un type de mémoire permettant de stocker
des données en l'absence de courant électrique,
il s'agit de la ROM (Read Only Memory, dont la traduction
littérale est mémoire en lecture seule) appelée
mémoire morte, parfois mémoire non volatile
car elle ne s'efface pas lors de la mise hors tension du système.
Ce type de mémoire permet notamment de conserver les
données nécessaires au démarrage de l'ordinateur.
En effet, ces informations ne peuvent être stockées
sur le disque dur étant donné que les paramètres
du disque (essentiels à son initialisation) font partie
de ces données vitales à l'amorçage.
Différentes mémoires de type ROM contiennent
des données indispensables au démarrage, c'est-à-dire:
Le BIOS est un programme permettant de piloter les interfaces
d'entrée-sortie principales du système, d'où
le nom de BIOS ROM donné parfois à la puce de
mémoire morte de la carte-mère qui l'héberge.
Le chargeur d'amorce: un programme permettant de charger le
système d'exploitation en mémoire (vive) et
de le lancer. Celui-ci cherche généralement
le système d'exploitation sur le lecteur de disquette,
puis sur le disque dur, ce qui permet de pouvoir lancer le
système d'exploitation à partir d'une disquette
système en cas de dysfonctionnement du système
installé sur le disque dur.
Le Setup CMOS, c'est l'écran disponible à l'allumage
de l'ordinateur permettant de modifier les paramètres
du système (souvent appelé BIOS à tort...).
Le Power-On Self Test (POST), programme exécuté
automatiquement à l'amorçage du système
permettant de faire un test du système (c'est pour
cela par exemple que vous voyez le système "compter"
la RAM au démarrage).
Etant donné que les ROM sont beaucoup plus lentes que
les mémoires de types RAM (une ROM a un temps d'accès
de l'ordre de 150 ns tandis qu'une mémoire de type
SDRAM a un temps d'accès d'environ 10 ns), les instructions
contenues dans la ROM sont parfois copiées en RAM au
démarrage, on parle alors de shadowing (en français
cela pourrait se traduire par ombrage, mais on parle généralement
de mémoire fantôme).
Les types de ROM
Les ROM ont petit à petit évolué de mémoires
mortes figées à des mémoires programmables,
puis reprogrammables.
ROM
Les premières ROM étaient fabriquées
à l'aide d'un procédé inscrivant directement
les données binaires dans une plaque de silicium grâce
à un masque. Ce procédé est maintenant
obsolète.
PROM
Les PROM (Programmable Read Only Memory) ont été
mises au point à la fin des années 70 par la
firme Texas Instruments. Ces mémoires sont des puces
constituées de milliers de fusibles pouvant être
"grillés" grâce à un appareil
appelé programmateur de ROM, envoyant une forte tension
(12V) dans certains fusibles. Ainsi, les fusibles grillées
correspondent à des 0, les autres à des 1.
EPROM
Les EPROM (Erasable Programmable Read Only Memory) sont des
PROM pouvant être effacées. Ces puces possèdent
une vitre permettant de laisser passer des rayons ultra-violets.
Lorsque la puce est en présence de rayons ultra-violets
d'une certaine longueur d'onde, les fusibles sont reconstitués,
c'est-à-dire que tous les bits de la mémoire
sont à nouveau à 1. C'est pour cette raison
que l'on qualifie ce type de PROM d'effaçable.
EEPROM
Les EEPROM (Electrically Erasable read Only Memory) sont aussi
des PROM effaçables, mais contrairement aux EPROM,
celles-ci peuvent être effacées par un simple
courant électrique, c'est-à-dire qu'elles peuvent
être effacées même lorsqu'elles sont en
position dans l'ordinateur. Ces mémoires sont aussi
appelées mémoires flash (ou ROM flash), et l'on
qualifie de flashage l'action consistant à reprogrammer
une EEPROM
plus d'infos sur www.commentcamarche.net
|