Analyse de L'architecture Interne de L'ordinateur
Analyse de L'architecture Interne de L'ordinateur
Analyse de L'architecture Interne de L'ordinateur
RESUME THEORIQUE
16
Analyse de l’architecture interne de l’ordinateur
17
Dans le cas général, en base b, le nombre représenté par une suite de chiffres
18
De même, chaque chiffre octal représente 3 bits.
On manipule souvent des nombres formés de 8 bits, nommés octets, qui sont donc notés sur 2
chiffres hexadécimaux.
Opérations arithmétiques
Les opérations arithmétiques s’effectuent en base quelconque b avec les mêmes méthodes
qu’en base 10. Une retenue ou un report apparaît lorsque l’on atteint ou dépasse la valeur b de la
base.
d. Codification des nombres entiers
La représentation (ou codification) des nombres est nécessaire afin de les stocker et manipuler
par un ordinateur. Le principal problème est la limitation de la taille du codage : un nombre
mathématique peut prendre des valeurs arbitrairement grandes, tandis que le codage dans
l’ordinateur doit s’effectuer sur un nombre de bits fixé.
Entiers naturels
Les entiers naturels (positifs ou nuls) sont codés sur un nombre d’octets fixé (un octet est
un groupe de 8 bits). On rencontre habituellement des codages sur 1, 2 ou 4 octets, plus rarement
sur 64 bits (8 octets, par exemple sur les processeurs DEC Alpha).
Un codage sur n bits permet de représenter tous les nombres naturels compris entre 0 et .
Par exemple sur 1 octet, on pourra coder les nombres de 0 à 255 = On représente le nombre
en base 2 et on range les bits dans les cellules binaires correspondant à leur poids binaire, de la
droite vers la gauche. Si nécessaire, on complète à gauche par des zéros (bits de poids fort).
Entiers relatifs
Il faut ici coder le signe du nombre. On utilise le codage en complément à deux, qui permet
d’effectuer ensuite les opérations arithmétiques entre nombres relatifs de la même façon qu’entre
nombres naturels.
Entiers positifs ou nuls
On représente le nombre en base 2 et on range les bits comme pour les entiers naturels.
Cependant, la cellule de poids fort est toujours à 0 : on utilise donc n - 1 bits.
Le plus grand entier positif représentable sur n bits en relatif est donc 1
Entiers négatifs
Soit x un entier positif ou nul représenté en base 2 sur n - 1 bits
19
Et soit
21
1.1 Structure de la mémoire principale:
22
laquelle tous les composants vont être testés de même que leur compatibilité. Si la séquence POST
ne passe pas, le système n'ira pas plus loin et votre OS ne sera pas lancé. Il va commencer par
contrôler le bus système et va vérifier ensuite tous les connecteurs d'extension.
Il va continuer en vérifiant la mémoire de la carte graphique et les signaux commandant
l'affichage. Ensuite, il va interroger le BIOS de la carte vidéo et ajouter son code de
reconnaissance. C'est à partir de ce moment-là que les premiers affichages arrivent à l'écran. Il va
tester la RAM, pour cela, il tente une écriture sur chaque zone mémoire et tente de lire ensuite
pour les comparer à ce qu'il a écrit. Il vérifie si le clavier et la souris sont bien connectés.
Ensuite, il envoie des signaux à tous les périphériques de stockage (disquette, cd, HDD, USB, #)
pour définir quels sont les différents lecteurs. Tous les résultats sont comparés sur le CMOS, ce
qui permet au BIOS de savoir si la configuration matérielle a changé depuis le dernier démarrage
ou pas. Ensuite, il intègre les identifiants de tous les composants ayant un BIOS.
Ensuite, les tests matériels validés, il va tenter d'amorcer en mémoire le secteur d'amorce principal
du disque dur aussi appelé MBR.
Il y a pas mal d'erreurs qui peuvent se produire durant cette phase, elles sont le plus souvent
d'ordre matériel, par exemple une barrette de mal branchée ou un composant manquant ou encore
une incompatibilité entre 2 matériels.
Ces erreurs sont indépendantes du système d'exploitation.
9 Le MBR
Le MBR (Master Boot Record) ou table de partition en français, permet de trouver la partition
active du disque.
Une fois que cette partition est identifiée, le MBR va charger le secteur de boot correspondant
et transférer ensuite l'exécution à ce dernier.
Les erreurs pouvant arriver à ce stade du démarrage sont souvent d'ordre de stockage. C'est-à-dire
qu'il peut y avoir plusieurs partitions actives, ou aucun support de stockage valable. Ou alors, il
peut arriver que la table de partition soit altérée.
9 Le secteur de boot
Une fois que le MBR lui a donné la main, le secteur de boot va charger les 15 secteurs qui le
suivent sur le disque et va ensuite transférer le contrôle à un programme présent sur ces secteurs.
Ces 15 premiers secteurs sont appelés " Boostrap Code " et s'occupent de localiser puis de
transférer l'exécution au fichier NTLDR.
Les erreurs qui peuvent arriver à ce niveau sont encore une fois surtout des problèmes hardware.
C'est-à-dire que par exemple un des secteurs qu'il doit charger est manquant. Ou alors que le
disque sur lequel on démarre n'a pas de NTLDR, donc on ne peut pas booter dessus. Ou alors, il
peut arriver qu'il y aie un problème avec le fichier NTLDR.
23
9 NTLDR
On va maintenant passer sur le NTLDR, qui marque cette fois la première partie de l'exécution
de Windows. C'est le chargeur d'amorçage de Windows. C'est lui qui va savoir quels windows
sont installés et lequel il faut lancer. Il commence par charger les pilotes du système de fichier
approprié. Ensuite, en fonction du fichier Boot.ini, il va définir quels sont les systèmes
d'exploitations qu'il peut lancer et s'il y en a plusieurs, il va les afficher à l'écran et demander à
l'utilisateur d'en choisir un. Il charge le programme NTDETECT qui va ensuite détecter le matériel
du pc. Il charge plusieurs dll qui vont permettre d'effectuer la suite du travail. Il charge la majorité
de la base de registre (le reste étant chargé plus tard par le système d'exploitation). Et enfin, il
donne le contrôle à NTOSKRNL.exe.
Les problèmes qui peuvent arriver ici sont surtout des problèmes liés aux fichiers qui doivent être
lancés, par exemple un fichier qui manque ou alors un problème d'accès à un des fichiers.
9 NTOSKRNL.exe
Nous voilà à la fin de la séquence de démarrage du PC, cette fois, le noyau NT va se lancer
définitivement et va charger le programme de logon et nous allons nous retrouver sur notre bon
vieux Windows.
1.3 Le système d’exploitation :
24
• Par la manipulation de ressources logiques au niveau usager, la correspondance
ressource logique, ressource physique étant assurée par le système .
• Eventuellement par la réalisation de systèmes standard présentant la même
machine logique quelle que soit la machine physique.
9 Gestion optimale des usagers
• Par le partage des ressources entre les usagers d’un système
• Par l’utilisation du parallélisme possible de fonctionnement au niveau matériel
• Par la récupération des erreurs
Toute machine capable de manipuler des informations binaires peut être qualifiée
d'ordinateur, toutefois le terme «ordinateur» est parfois confondu avec la notion d'ordinateur
personnel (PC, abréviation de personal computer), le type d'ordinateur le plus présent sur le
marché
2. 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, capables de faire fonctionner des programmes informatiques. On parle
ainsi de « hardware » pour désigner l'ensemble des éléments matériels de l'ordinateur et de
« software » pour désigner la partie logicielle.
Les composants matériels de l'ordinateur 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
25
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 (ou châssis), 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.
26
Architecture schématique d’un ordinateur
27
imprimé possédant notamment des connecteurs pour les cartes d'extension, les barrettes de
mémoires, le processeur, etc.
La carte mère contient un certain nombre d'éléments embarqués, c'est-à-dire intégrés sur son
circuit imprimé :
• 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,...),
• Le BIOS,
28
• carte son intégrée ;
9 Le chipset :
Certains chipsets intègrent parfois une puce graphique ou une puce audio, ce qui signifie qu'il
n'est pas nécessaire d'installer une carte graphique ou une carte son. Il est toutefois parfois
conseillé de les désactiver (lorsque cela est possible) dans le setup du BIOS et d'installer des cartes
d'extension de qualité dans les emplacements prévus à cet effet.
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 le système peut traiter
d'informations.
Lorsque l'ordinateur est mis hors tension, l'alimentation cesse de fournir du courant à la
carte mère. Or, lorsque l'ordinateur est rebranché, le système est toujours à l'heure. Un circuit
électronique, appelé CMOS (Complementary Metal-Oxyde Semiconductor, parfois appelé BIOS
CMOS), conserve en effet certaines informations sur le système, telles que l'heure, la date système
et quelques paramètres essentiels du système.
Le CMOS est continuellement alimenté par une pile (au format pile bouton) ou une batterie
située 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 employé
pour décrire ce processus de copie en mémoire vive.
29
9 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.
9 Le support de processeur :
La carte mère possède un emplacement (parfois plusieurs dans le cas de cartes mères multi-
processeurs) pour accueillir le processeur, appelé support de processeur. On distingue deux
catégories de supports :
• Slot (en français fente) : il s'agit d'un connecteur rectangulaire dans lequel on enfiche le
processeur verticalement
• Socket (en français embase) : il s'agit d'un connecteur carré possédant un grand nombre de
petits connecteurs sur lequel le processeur vient directement s'enficher
Au sein de ces deux grandes familles, il existe des versions différentes du support, selon le type de
processeur. Il est essentiel, quel que soit le support, de brancher délicatement le processeur afin de
ne tordre aucune de ses broches (il en compte plusieurs centaines). Afin de faciliter son insertion,
un support appelé ZIF (Zero Insertion Force, traduisez force d'insertion nulle) a été créé. Les
supports ZIF possèdent une petite manette, qui, lorsqu'elle est levée, permet l'insertion du
processeur sans aucune pression et, lorsqu'elle est rabaissée, maintient le processeur sur son
support.
30
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 (appelé parfois refroidisseur ou radiateur), composé d'un métal ayant
une bonne conduction thermique (cuivre ou aluminium), 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 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 telle que le disque
dur, capable de garder les informations même lorsqu'il est hors tension. On parle de « volatilité »
pour désigner ce phénomène.
Pourquoi alors utiliser de la mémoire vive alors que les disques durs reviennent moins
chers à capacité égale ? La réponse est que la mémoire vive est extrêmement rapide par
comparaison aux périphériques de stockage de masse tels que le disque dur. Elle possède en effet
un temps de réponse de l'ordre de quelques dizaines de nanosecondes (environ 70 pour la DRAM,
60 pour la RAM EDO, et 10 pour la SDRAM voire 6 ns sur les SDRam DDR) contre quelques
millisecondes pour le disque dur.
La mémoire vive se présente sous la forme de barrettes qui se branchent sur les connecteurs de la
carte mère.
31
9 Les connecteurs d'extension :
Les connecteurs d'extension (en anglais slots) sont des réceptacles dans lesquels il est
possible d'insérer 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 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
32
La plupart des cartes mères proposent les connecteurs suivants :
• Ports USB (1.1, bas débit, ou 2.0, haut débit), permettant de connecter des périphériques
plus récents
• Prises audio (entrée Line-In, sortie Line-Out et microphone), permettant de connecter des
enceintes acoustiques ou une chaîne hi fi, ainsi qu'un microphone. Ce connecteur
correspond à la carte son intégrée.
4. Le microprocesseur:
4.1 Présentation:
Le processeur (CPU, pour Central Processing Unit, soit Unité Centrale de Traitement) est
le cerveau de l'ordinateur. Il permet de manipuler des informations numériques, c'est-à-dire des
informations codées sous forme binaire, et d'exécuter les instructions stockées en mémoire.
Le premier microprocesseur (Intel 4004) a été inventé en 1971. Il s'agissait d'une unité de calcul
de 4 bits, cadencé à 108 kHz. Depuis, la puissance des microprocesseurs augmente
exponentiellement. Quels sont donc ces petits morceaux de silicium qui dirigent nos ordinateurs?
4.2 Fonctionnement
Le processeur (noté CPU, pour Central Processing Unit) est un circuit électronique
cadencé au rythme d'une horloge interne, grâce à un cristal de quartz qui, soumis à un courant
électrique, envoie des impulsions, appelées « top ». La fréquence d'horloge (appelée également
33
cycle, correspondant au nombre d'impulsions par seconde, s'exprime en Hertz (Hz). Ainsi, un
ordinateur à 200 MHz possède une horloge envoyant 200 000 000 de battements par seconde. La
fréquence d'horloge est généralement un multiple de la fréquence du système (FSB, Front-Side
Bus), c'est-à-dire un multiple de la fréquence de la carte mère
A chaque top d'horloge le processeur exécute une action, correspondant à une instruction
ou une partie d'instruction. L'indicateur appelé CPI (Cycles Par Instruction) permet de représenter
le nombre moyen de cycles d’horloge nécessaire à l’exécution d’une instruction sur un
microprocesseur. La puissance du processeur peut ainsi être caractérisée par le nombre
d'instructions qu'il est capable de traiter par seconde. L'unité utilisée est le MIPS (Millions
d'Instructions Par Seconde) correspondant à la fréquence du processeur que divise le CPI.
4.3 Instruction :
Une instruction est l'opération élémentaire que le processeur peut accomplir. Les instructions
sont stockées dans la mémoire principale, en vue d'être traitée par le processeur. Une instruction
est composée de deux champs:
Le nombre d'octets d'une instruction est variable selon le type de donnée (l'ordre de grandeur est
de 1 à 4 octets).
Les instructions peuvent être classées en catégories dont les principales sont :
34
4.4 Registres :
Lorsque le processeur exécute des instructions, les données sont temporairement stockées
dans de petites mémoires rapides de 8, 16, 32 ou 64 bits que l'on appelle registres. Suivant le type
de processeur le nombre global de registres peut varier d'une dizaine à plusieurs centaines.
• le registre d'état (PSW, Processor Status Word), permettant de stocker des indicateurs sur
l'état du système (retenue, dépassement, etc.) ;
La mémoire cache (également appelée antémémoire ou mémoire tampon) est une mémoire
rapide permettant de réduire les délais d'attente des informations stockées en mémoire vive. En
effet, la mémoire centrale de l'ordinateur possède une vitesse bien moins importante que le
processeur. Il existe néanmoins des mémoires beaucoup plus rapides, mais dont le coût est très
élevé. La solution consiste donc à inclure ce type de mémoire rapide à proximité du processeur et
d'y stocker temporairement les principales données devant être traitées par le processeur. Les
ordinateurs récents possèdent plusieurs niveaux de mémoire cache :
• La mémoire cache de premier niveau (appelée L1 Cache, pour Level 1 Cache) est
directement intégrée dans le processeur. Elle se subdivise en 2 parties :
o La seconde est le cache de données, qui contient des données issues de la mémoire
vive et les données récement utilisées lors des opérations du processeur.
Les caches du premier niveau sont très rapides d'accés. Leur délai d'accès tend à s'approcher de
celui des registres internes aux processeurs.
35
• La mémoire cache de second niveau (appelée L2 Cache, pour Level 2 Cache) est située
au niveau du boîtier contenant le processeur (dans la puce). Le cache de second niveau
vient s'intercaler entre le processeur avec son cache interne et la mémoire vive. Il est plus
rapide d'accès que cette dernière mais moins rapide que le cache de premier niveau.
• La mémoire cache de troisième niveau (appelée L3 Cache, pour Level 3 Cache) est
située au niveau de la carte mère.
Tous ces niveaux de cache permettent de réduire les temps de latence des différentes mémoires
lors du traitement et du transfert des informations. Pendant que le processeur travaille, le
contrôleur de cache de premier niveau peut s'interfacer avec celui de second niveau pour faire des
transferts d'informations sans bloquer le processeur. De même, le cache de second niveau est
interfacé avec celui de la mémoire vive (cache de troisième niveau), pour permettre des transferts
sans bloquer le fonctionnement normal du processeur.
Les signaux de commande sont des signaux électriques permettant d'orchestrer les
différentes unités du processeur participant à l'exécution d'une instruction. Les signaux de
commandes sont distribués grâce à un élément appelé séquenceur. Le signal Read / Write, en
français lecture / écriture, permet par exemple de signaler à la mémoire que le processeur désire
lire ou écrire une information.
Le processeur est constitué d'un ensemble d'unités fonctionnelles reliées entre elles.
L'architecture d'un microprocesseur est très variable d'une architecture à une autre, cependant les
principaux éléments d'un microprocesseur sont les suivants :
• Une unité d'instruction (ou unité de commande, en anglais control unit) qui lit les
données arrivant, les décode puis les envoie à l'unité d'exécution ; L'unité d'instruction est
notamment constituée des éléments suivants :
36
• Une unité d'exécution (ou unité de traitement), qui accomplit les tâches que lui a données
l'unité d'instruction. L'unité d'exécution est notamment composée des éléments suivants :
o L'unité de virgule flottante (notée FPU, pour Floating Point Unit), qui accomplit
les calculs complexes non entiers que ne peut réaliser l'unité arithmétique et
logique.
o Le registre d'état ;
o Le registre accumulateur.
• Une unité de gestion des bus (ou unité d'entrées-sorties), qui gère les flux d'informations
entrant et sortant, en interface avec la mémoire vive du système ;
37
Schéma simplifié d’un processeur.
Le processeur est relié à l’extérieur par les bus de données et d’adresses, le signal d’horloge et les
signaux de com-mandes.
Les informations circulent à l’intérieur du processeur sur deux bus internes, l’un pour les données,
l’autre pour les instructions. On distingue les registres suivants :
• ACC : Accumulateur ;
• RTUAL : Registre Tampon de l’UAL, stocke temporairement l’un des deux opérandes
d’une instruction arithmétique (la valeur 5 dans l’exemple donné plus haut) ;
• Reg. d’état : stocke les indicateurs, que nous étudierons plus tard ;
• RI : Registre Instruction, contient le code de l’instruction en cours d’exécution (lu en
mémoire via le bus de données) ;
• IP : Instruction Pointer ou Compteur de Programme, contient l’adresse de l’emplace-ment
mémoire où se situe la prochaine instruction à exécuter ;
• RTA : Registre Tampon d’Adresse, utilisé pour accéder à une donnée en mémoire.
38
Les signaux de commandes permettent au processeur de communiquer avec les autres circuits de
l’ordinateur. On trouve en particulier le signal R/W (Read/Write), qui est utilisé pour indiquer à la
mémoire principale si l’on effectue un accès en lecture ou en écriture.
Les informations échangées entre la mémoire et le processeur circulent sur des bus.
Un bus est simplement un ensemble de n fils conducteurs, utilisés pour transporter n signaux
binaires.
Le bus d’adresse est un bus unidirectionnel : seul le processeur envoie des adresses. Il est composé
de a fils ; on utilise donc des adresses de a bits.
Le bus de données est un bus bidirectionnel. Lors d’une lecture, c’est la mémoire qui envoie un
mot sur le bus (le contenu de l’emplacement demandé) ; lors d’une écriture, c’est le processeur qui
envoie la donnée.
L'architecture CISC est utilisée en particulier par les processeurs de type 80x86. Ce type
d'architecture possède un coût élevé dû aux fonctions évoluées imprimées sur le silicium.
39
D'autre part, les instructions sont de longueurs variables et peuvent parfois nécessiter plus d'un
cycle d'horloge. Or, un processeur basé sur l'architecture CISC ne peut traîter qu'une instruction à
la fois, d'où un temps d'exécution conséquent.
Les programmes doivent ainsi être traduits en instructions simples, ce qui entraîne un
développement plus difficile et/ou un compilateur plus puissant. Une telle architecture possède un
coût de fabrication réduit par rapport aux processeurs CISC. De plus, les instructions, simples par
nature, sont exécutées en un seul cycle d'horloge, ce qui rend l'exécution des programmes plus
rapide qu'avec des processeurs basés sur une architecture CISC. Enfin, de tels processeurs sont
capables de traîter plusieurs instructions simultanément en les traitant en parallèle.
Au cours des années, les constructeurs de microprocesseurs (appelés fondeurs), ont mis au
point un certain nombre d'améliorations permettant d'optimiser le fonctionnement du processeur.
4.12 Le parallélisme
Ce type de technologie nécessite toutefois une synchronisation et une communication entre les
différents processus, à la manière du découpage des tâches dans une entreprise : le travail est
divisé en petits processus distincts, traités par des services différents. Le fonctionnement d'une
telle entreprise peut être très perturbé lorsque la communication entre les services ne fonctionne
pas correctement.
4.13 Le pipeline :
Le pipeline (ou pipelining) est une technologie visant à permettre une plus grande vitesse
d'exécution des instructions en parallélisant des étapes.
40
• LI : (Lecture de l'Instruction (en anglais FETCH instruction) depuis le cache ;
Les instructions sont organisées en file d'attente dans la mémoire, et sont chargées les unes après
les autres.
Grâce au pipeline, le traitement des instructions nécessite au maximum les cinq étapes
précédentes. Dans la mesure où l'ordre de ces étapes est invariable (LI, DI, EX, MEM et ER), il
est possible de créer dans le processeur un certain nombre de circuits spécialisés pour chacune de
ces phases.
L'objectif du pipeline est d'être capable de réaliser chaque étape en parallèle avec les étape amont
et aval, c'est-à-dire de pouvoir lire une instruction (LI) lorsque la précédente est en cours de
décodage (DI), que celle d'avant est en cours d'exécution (EX), que celle située encore
précédemment accède à la mémoire (MEM) et enfin que la dernière est en cours d'écriture dans les
registres (ER).
Il faut compter en généralement 1 à 2 cycle d'horloges (rarement plus) pour chaque phase du
pipeline, soit 10 cycles d'horloges maximum par instruction. Pour deux instructions, 12 cycles
d'horloge maximum seront nécessaires (10+2=12 au lieu de 10*2=20), car la précédente
instruction était déjà dans le pipeline. Les deux instructions sont donc en traitement dans le
processeur, avec un décalage d'un ou deux cycles d'horloge). Pour 3 instructions, 14 cycles
d'horloges seront ainsi nécessaires, etc.
41
Le principe du pipeline est ainsi comparable avec une chaîne de production de voitures. La voiture
passe d'un poste de travail à un autre en traversant l'entrepôt et sort complètement monté à la sortie
du bâtiment. Pour bien comprendre le principe, il est nécessaire de regarder la chaîce dans son
ensemble, et non pas véhicule par véhicule. Il faut ainsi 3 heures pour faire une voiture, mais
pourtant une voiture est produite toute les minutes !
Il faut noter toutefois qu'il existe différents types de pipelines, de 2 à 40 étages, mais le principe
reste le même.
4.15 HyperThreading:
5. Les bus du pc :
Nous avons dans les chapitres précédents décrits de façon simplifiée les bus reliant le
processeur à la mémoire principale. Nous avons distingué le bus d’adresse, le bus dedonnées et le
bus de commandes (signaux de commandes type R/W).
En fait, la plupart des échanges d’informations dans l’ordinateur se font sur des bus : connexions
processeur/mémoire, mais aussi connexions entre le processeur et les interfaces d’entrées sorties.
Il existe une grande variété de bus ; chacun est caractérisé par sa largeur (nombre de bits) et sa
fréquence (nombre de cycles par secondes, en Méga-Hertz).
42
5.2 Bus d’extension du PC
Les bus d’extensions (ou bus d’entrés/sorties) permettent de connecter au PC des
contrôleurs d’extensions (cartes) grâce à des connecteurs spéciaux (slots sur la cartemère).
Les contrôleurs d’extensions sont utilisés pour relier le PC aux périphériques d’entrées/ sorties.
Depuis l’apparition du PC au début des annés 80, plusieurs standards de bus d’extension ont étés
proposés : ISA, MCA, EISA...
* Le bus ISA
Le bus d’extension ISA (Industry Standard Architecture) est le plus répandu sur PC. De
fréquence relativement basse et de caractéristiques peu puissantes, il est utilisé pour connecter des
cartes relativement lentes (modems, cartes sons, ...).
Les principales caractéristiques du bus ISA (PC-AT) sont : 16 bits de données, 24 bits d’adresse,
16 lignes d’interruption, fréquence 8 MHz.
5.3 Bus local PCI
Les périphériques d’entrées/sorties “modernes” demandent des transferts d’information
très importants entre la mémoire principale (MP) et le contrôleur. Par exemple, une carte
graphique SVGA récente possède une mémoire vidéo de 1 à 8 Mo, et met en oeuvre des transferts
entre cette mémoire et la MP à 60 Mo/s.
Pour permettre de tels débits, il est nécessaire de connecter le contrôleur de périphérique
directement sur le bus local. Le contrôleur bénéficie ainsi du haut débit de ce bus ; de plus, il peut
43
en prendre le contrôle pour effectuer des transferts directement avec la MP sans passer par le
processeur.
Le premier bus PC basé sur ces principes a été le bus VLB (VESA Local Bus), qui est
actuellement remplacé par le bus PCI (Peripheral Component Interface).
Le bus PCI équipe la grande majorité des PC récents. Notons qu’il n’est pas réservé au
processeurs INTEL, puisqu’il est aussi utilisé sur les Macintosh à base de processeurs PowerPC.
Le principe du bus PCI est justement de dissocier le processeur et les bus. Cette séparation permet
d’utiliser une fréquence de bus différente de celle du processeur et facilite l’évolution des
machines.
Les caractéristiques du bus PCI sont : 32 ou 64 bits de données, 32 bits d’adresse, fréquence de 33
MHz. Il permet de débits de 132 Mo/s en 32 bits, ou 264 Mo/s en 64 bits.
Le contrôleur PCI est la plupart du temps intégré sur la carte mère (il s’agit d’un circuit intégré
complexe dont les performances sont cruciales pour celles du PC).
Les connecteurs (slot) PCI sont réservés aux périphériques demandant de hauts débits : cartes
vidéo, contrôleurs SCSI, cartes réseaux haut débit.
44
5.4 Bus de périphériques :
Ces bus permettent de relier une interface (contrôleur) de l’ordinateur à un ou plusieurs
périphériques (généralement à l’extérieur de l’ordinateur).
Bus SCSI
Le bus SCSI (Small Computer System Interface) est un bus d’entrées/sorties parallèles qui
n’est pas limité aux ordinateurs PC, ni même aux micro-ordinateurs. Il permet de connecter de 1 à
7 périphériques de toutes natures (Disques durs, lecteurs CD/ROM, digitaliseurs (scanners),
lecteurs de bandes (streamers), ...).
La version SCSI 1 permet un taux de transfert de 4 Mo/s (largeur 8 bits). La version
SCSI 2 permet d’obtenir jusqu'a 40 Mo/s en 32 bits.
Le bus SCSI équipe en standard tous les ordinateurs Apple Macintosh, et la grande
majorité des stations de travail. Sur PC, il faut installer une carte d’interface, connectée soit au bus
ISA soit au bus PCI suivant les performances désirées.
Bus PCMCIA
Le bus PCMCIA (Personal Computer Memory Card International Association) est un bus
d’extension utilisé sur les ordinateurs portables. Il permet la connexion de périphériques de taille
très réduite (format carte bancaire, 3 à 10 mm d’épaisseur, connecteur 68 broches).
Généralités
Les données échangées entre un périphérique et le processeur transitent par l’interface (ou
contrôleur) associé à ce périphérique. L’interface possède de la mémoire tampon pour stocker les
données échangées (suivant le type d’interface, cette mémoire tampon fait de 1 seul octet à
quelques méga-octets).
L’interface stocke aussi des informations pour gérer la communication avec le périphérique :
– des informations de commande, pour définir le mode de fonctionnement de l’interface :
sens de transfert (entrée ou sortie), mode de transfert des données (par scrutation ou interruption),
etc. Ces informations de commandes sont communiquées à l’interface lors de la phase
d’initialisation de celle-ci, avant le début du transfert.
– des informations d’état, qui mémorisent la manière dont le transfert s’est effectué (erreur
de transmission, réception d’informations, etc). Ces informations sont destinées au processeur.
On accède aux données de chaque interface par le bias d’un espace d’adresses d’entrées/ sorties,
auquel on accède par les instructions IN et OUT du 80x86.
45
IN AL, adresse E/S lit l’octet d’adresse spécifiée dans l’espace d’entrées/sorties et le transfère
dans le registre AL.
OUT adresse E/S, AL écrit le contenu de AL à l’adresse spécifiée de l’espace d’entrées/ sorties.
Lors de l’exécution des instructions IN et OUT, le processeur met à 1 sa borne IO/M et présente
l’adresse E/S sur le bus d’adresse. Le signal IO/M indique aux circuits de décodage d’adresses
qu’il ne s’agit pas d’une adresse en mémoire principale, mais de l’adresse d’une interface
d’entrées/sorties.
46
Différents types de transmissions pour relier simplement deux PC.
Et aussi
47
Le récepteur détecte l’arrivée d’un octet par le changement de niveau correspondant au bit start. Il
échantillonne ensuite chaque intervalle de temps D au rythme de son horloge.
Comme les débits binaires de transmission série de ce type sont faibles (< 19600 bits/s) et que les
horloges de l’émetteur et du récepteurs sont suffisamment stables (horloges à quartz), il n’est pas
nécessaire de les synchroniser. C’est la raison pour laquelle ce type de transmission série est
qualifié d’asynchrone.
Bornes de l’interface
Les bornes de l’interface UART 8250 sont présentées sur la figure Seules les bornes essentielles à
la compréhension du fonctionnement de l’interface sont représentées.
Ces normes spécifient les caractéristiques mécaniques (les connecteurs), fonctionnelles (nature des
signaux) et électriques (niveaux des signaux) d’une liaison série asynchrone avec un longueur
maximale de 15m et une rapidité de modulation maximum de 20kbauds.
48
L’EIA (Electrical Industry Association) a été à l’origine aux USA de la norme RS- 232, dont la
dernière version est RS-232C. Le CCITT (Comité Consultatif International pour la Téléphonie et
la Télégraphie) a repris cette norme qu’il a baptisé V24.
Deux autres normes permettent des débits plus élevés et des distances plus importantes : RS-423
(666m, 300kbauds), et RS-422 (1333m, 10Mbauds).
La norme V24 utilise le connecteur DB25, de forme trapézoïdale à 25 broches, représenté
Figure
• Câble NULL-MODEM
On peut connecter deux PC par leur interface série. Si la distance est courte (< quelques
dizaines de mètres), il n’est pas nécessaire d’utiliser un modem. On utilise alors un cable Null-
Modem, qui croise certains signaux comme le montre la première figure.
Lorsque les signaux de dialogues ne sont pas nécessaires, il suffit de croiser les signaux SIN et
SOUT, ce qui donne le câble Null Modem simplifié (3 fils) représenté sur la deuxième figure.
49
Cable Null Modem complet.
7. Types de mémoires:
En effet, contrairement au stockage de données sur une mémoire de masse telle que le disque dur,
la mémoire vive est volatile, c'est-à-dire qu'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.
50
7.3 Mémoire flash:
La mémoire flash est un compromis entre les mémoires de type RAM et les mémoires
mortes. En effet, la mémoire Flash possède la non-volatilité des mémoires mortes tout en pouvant
facilement être accessible en lecture ou en écriture. En contrepartie les temps d'accès des
mémoires flash sont plus importants que ceux de la mémoire vive.
• Les mémoires dynamiques (DRAM, Dynamic Random Access Module), peu coûteuses.
Elles sont principalement utilisées pour la mémoire centrale de l'ordinateur ;
• Les mémoires statiques (SRAM, Static Random Access Module), rapides et onéreuses.
Les SRAM sont notamment utilisées pour les mémoires cache du processeur ;
Etant donné que les condensateurs se déchargent, il faut constamment les recharger (le terme exact
est rafraîchir, en anglais refresh) à un intervalle de temps régulier appelé cycle de
rafraîchissement. Les mémoires DRAM nécessitent par exemple des cycles de rafraîchissement
est d'environ 15 nanosecondes (ns).
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.
51
Chaque point mémoire est donc caractérisé par une adresse, correspondant à un numéro de ligne
(en anglais row) et un numéro de colonne (en anglais column). 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 25 ns 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é à 200 MHz, le
temps de cycle est de 5 ns (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é à
200 MHz 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.
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 habituellement trois types de barrettes de RAM :
52
• 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ément. Ces mémoires
équipent des PC allant du 386DX aux premiers Pentium. 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 barrettes SIMM. Il
n'est pas possible d'installer des barrettes 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.
Il peut être intéressant de noter que les connecteurs DIMM ont été améliorés afin de
faciliter leur insertion grâce à des leviers situés de part et d'autre du connecteur.
53
Il existe en outre des modules de plus petite taille, appelés SO DIMM (Small Outline
DIMM), destinés aux ordinateurs portables. Les barrettes SO DIMM comportent
uniquement 144 broches pour les mémoires 64 bits et 77 pour les mémoires 32 bits.
• les barrettes au format RIMM (Rambus Inline Memory Module, appelées également RD-
RAM ou DRD-RAM) sont des mémoires 64 bits développée par la société Rambus. Elles
possèdent 184 broches. Ces barrettes possèdent deux encoches de repérage (détrompeurs),
évitant tout risque de confusion avec les modules précédents.
Compte tenu de leur vitesse de transfert élevée, les barrettes RIMM possèdent un film
thermique chargé d'améliorer la dissipation de la chaleur.
Comme dans le cas des DIMM, il existe des modules de plus petite taille, appelés SO
RIMM (Small Outline RIMM), destinés aux ordinateurs portables. Les barrettes SO RIMM
comportent uniquement 160 broches.
• 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 256 * 2^10 *
2^10 = 256 * 1024 * 1024 = 268 435 456 octets = 268 435 456 * 8 = 2 147 483 648 bits = 2 147
483 648 transistors. Une barrette de 256 Mo possède ainsi en réalité une capacité de 268 435 456
octets, soit 268 Mo ! Ce sont des mémoires dont le temps d'accès est de 60 ns.
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 rafale, le temps
d'accès à la première donnée est égal 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
54
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ée 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 :
55
• 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.
La lecture ou l'écriture de données en mémoire est réalisé sur la base d'une horloge. Les mémoires
DRAM standard utilisent une méthode appelée SDR (Single Data Rate) consistant à lire ou à
écrire une donnée à chaque front montant.
La DDR permet de doubler la fréquence des lectures/écritures, avec une horloge cadencée à la
même fréquence, en envoyant les données à chaque front montant, ainsi qu'à chaque front
descendant.
Les mémoires DDR possèdent généralement une appellation commerciale du type PCXXXX où
«XXXX» représente le débit en Mo/s.
• DDR2-SDRAM :
La mémoire DDR2 (ou DDR-II) permet d'atteindre des débits deux fois plus élevés que la
DDR à fréquence externe égale.
56
La DDR2 possède également un plus grand nombre de connecteurs que la DDR classique (240
pour la DDR2 contre 184 pour la DDR).
Tableau récapitulatif :
57
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:
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 ROM ont petit à petit évolué de mémoires mortes figées à des mémoires
programmables, puis reprogrammables.
a. 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.
58
b. 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
(ou bien de diodes) pouvant être "grillés" grâce à un appareil appelé « programmateur de ROM »,
appliquant une forte tension (12V) aux cases mémoire devant être marquées. Les fusibles ainsi
grillés correspondent à des 0, les autres à des 1.
c. 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.
d. 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.
Il existe une variante de ces mémoires appelée mémoires flash (également ROM Flash ou Flash
EPROM). Contrairement aux EEPROM classiques, utilisant 2 à 3 transistors par bit à mémoriser,
la Flash EPROM utilise un seul transistor. D'autre part l'EEPROM peut-être écrite et lue mot par
mot, alors que la Flash ne peut être effacée que par pages (la taille des pages étant en constante
diminution).
Enfin la densité de la mémoire Flash est plus importante, ce qui permet la réalisation de puces
contenant plusieurs centaines de Mégaoctets. Des EEPROM sont ainsi préférentiellement utilisées
pour la mémorisation de données de configuration et la mémoire Flash pour du code
programmable (programmes informatiques).
• La mémoire Flach
La mémoire flash est une mémoire à semi-conducteurs, non volatile et réinscriptible, c'est-
à-dire une mémoire possédant les caractéristiques d'une mémoire vive mais dont les données ne se
volatilisent pas lors d'une mise hors tension. Ainsi la mémoire flash stocke les bits de données
59
dans des cellules de mémoire, mais les données sont conservées en mémoire lorsque l'alimentation
électrique est coupée.
Il existe un grand nombre de formats de cartes mémoires non compatibles entre-eux, portés par
presque autant de constructeurs. Parmi ces formats de cartes mémoire les plus courants sont :
Tableau comparatif
Compact Memory
MMC Secure Digital SmartMedia xD Picture
Flash Stick
Sony / Siemens / Matsushita / Toshiba / Olympus /
Contructeurs SanDisk Toshiba
SanDisk SanDisk SanDisk Fuji
Dimensions
42.8x36.4x3.3 21.5x50x2.8 24x32x1.4 24x32x2.1 37x45x0.76 20x25x1.7
(mm)
Volume (mm3) 5141 3010 1075 1612 1265 850
Poids (g) 11.4 4 2 2 2 2
Taux de
6 Mbps 15 Mbps 2.5 Mbps 10 Mbps 2 Mbps 5 Mbps
transfert
Nb connecteurs 50 10 7 7 22 18
T° max 50°C 65°C 55°C 85°C 55°C 55°C
60
7.7 Les mémoires de masse :
L’enregistrement magnétique
Le principe de l’enregistrement magnétique est utilisé pour les cassettes audio et vidéo,
ainsi pour les disquettes et disques durs informatiques. Il consiste à polariser un milieu
magnétique (couche d’oxyde de fer déposée sur la bande ou le disque) à l’aide d’un champ
électromagnétique créé par une bobine.
61
Les densités typiques sont de l’ordre de 10 000 BPI. la distance entre la tête de lecture/ écriture et
le support est alors de l’ordre de 0,2 _m, ce qui impose une très grande propreté de la surface (voir
figure suivante).
Les disques durs, qui utilisent une densité d’enregistrement très élevée, sont scellés afin éviter
toute entrée de poussière.
Les diverses particules de poussières sont très gênantes pour l’utilisation d’un support magnétique
sont ici représentés à la même échelle la tête de lecture, une particule de fumée, une trace
d’empreinte digitale, une poussière et un cheveu.
62
Les disques sont structurés en pistes et en secteurs, comme indiqué sur la figure 2 Le nombre de
pistes est fixé par la densité transversale (nombre de pistes par unité de longueur radiale). Cette
densité dépend essentiellement de la précision du positionnement de la tête sur le disque.
Chaque piste ou secteur contient le même nombre d’octets (en fait, toutes les pistes n’ont pas la
même longueur, mais la densité est plus grande sur les pistes du centre, de façon à obtenir le
même volume d’information sur chaque piste). L’unité de lecture ou d’écriture sur le disque est le
secteur.
Le système complet est constitué d’une ensemble de disques empilés, comme représenté sur la
figure 1. Le contrôleur du disque doit être capable d’écrire ou de lire
FIG. 1 – Les plateaux d’un disque dur et les têtes de lectures (à droite), qui se déplacent toutes en même temps.
63
N’importe quel secteur. Pour repérer un secteur, il faut connaitre son plateau, le numéro de sa
piste, et le numéro du secteur dans la piste. La plupart des systèmes introduisent la notion de
cylindre : un cylindre est formé par l’ensemble des pistes de même position sur tous les plateaux.
Un secteur est alors repéré par :
– numéro de cylindre (donnant la distance tête-axe de rotation) ;
– numéro de piste (en fait le numéro de tête de lecture à utiliser) ;
– numéro du secteur (lié à l’angle).
Temps d’accès
Le temps d’accès pour lire ou écrire un secteur du disque dur dépend de la vitesse de rotation du
disque, de la vitesse de déplacement des têtes et de la dimension du disque.
Chaque transfert (lecture ou écriture d’un secteur) demande les opérations suivantes :
1. si les têtes ne sont pas déjà sur le bon cylindre, déplacement des têtes. On définit le temps de
positionnement minimum (passage d’un cylindre au cylindre voisin), et le temps de
positionnement moyen (passage à un cylindre quelconque, donc parcours en moyenne de la moitié
du rayon).
2. attendre que le début du secteur visé arrive sous la tête de lecture : en moyenne, il faut que le
disque tourne d’un demi-tour. Ce temps est appelé demi délai rotationnel.
64
3. transfert des données, qui dure le temps nécessaire pour faire défiler le secteur entier sous la tête
de lecture.
Le débit d’information maximal est déterminé par la vitesse de rotation du disque, la densité
d’enregistrement longitudinale, et parfois limitée par le débit du bus d’entrées/ sorties reliant le
disque à l’ordinateur.
Les fabriquants de disques durs indiquent en général le temps d’accès moyen et le taux de transfert
maximum (débit).
65
WORM (Write Once, Read Many, écrire une fois, lire plusieurs) utilisent un second laser plus
puissant qui permet de former des “trous” sur la surface réfléchissante ; on peut ainsi écrire de
l’information une seule fois. Les disques WORM sont vendus vierges, sous l’appellation CD-R
(CD enregistrable).
Les disques magnéto-optiques sont basés sur une technologie différente. Les trous sont remplacés
par des différences de magnétisation d’un milieu spécial, ayant la propriété de modifier la polarité
de la lumière suivant le sens de magnétisation. On associe donc un champ magnétique et un
faisceau laser.
Ces disques sont ré-inscriptibles à volonté ; ils ont été présentés à la fin des années 80 comme les
successeurs des disques durs, mais leur faible vitesse d’accès en limite actuellement l’usage aux
applications d’archivage ou de sauvegarde.
• Bandes magnétiques
Les bandes magnétiques peuvent aussi être utilisées comme mémoire secondaire. La principale
différence avec les disques est que l’accès à une bande est nécessairement séquentiel : si un fichier
est enregistré à la fin d’une bande, il faut la rembobiner entièrement avant de d’y accéder. De ce
fait, le temps d’accès moyen à un disque dur est de l’ordre de
10 ms, tandis que le temps d’accès sur une bande est de quelques secondes (100 à 1000 fois plus
lent).
Les bandes sont cependant très utilisées car elle permettent un stockage à très faible coût de très
grandes quantité d’information (exemple : une cassette de 8mm contient 7 Go et vaut environ 100
F).
Il existe un très grand nombre de standards différents pour les lecteurs de bandes, de cartouches ou
de cassettes. La capacité d’une bande est déterminée par sa longueur, son nombre de pistes, et la
densité d’écriture.
Notons enfin que certains lecteurs de bandes effectue une compression automatique des données
avant écriture, ce qui permet de gagner un facteur 2 environ sur des données non préalablement
compressées.
66
8. Les périphériques
Nous étudions dans cette partie les périphériques d’entrées/sorties les plus couramment
utilisés : clavier, écran et gestion des modes graphiques, disques durs et autres mémoires
secondaires. Pour chaque type de périphérique, nous décrivons le principe de fonctionnement et
mentionnons les performances des modèles actuellement en vente.
Si les principes fondamentaux de fonctionnement restent les mêmes, il faut noter que les
performances (vitesse, capacité) de la plupart des périphériques informatiques évoluent très
rapidement ; les chiffres donnés ici sont donc à prendre comme des ordres de grandeur typiques du
matériel utilisé.
8.1 Terminaux interactifs
Les micro-ordinateurs possèdent tous, sauf exception, un clavier et un écran uniques.
Ce n’est pas le cas des ordinateurs plus gros, qui sont habituellement reliés à plusieurs terminaux
(quelques dizaines ou centaines). Un terminal interactif est un périphérique permettant à un usager
(humain) de communiquer avec un ordinateur. La communication se fait par l’intermédiaire d’un
écran (ou moniteur), d’un clavier et éventuellement d’une souris.
Le terme “interactif” indique que l’échange utilisateur/ordinateur à lieu en temps réel, de façon
interactive (l’ordinateur répond immédiatement aux commandes de l’utilisateur).
Dans le passé, on utilisait aussi des terminaux non interactifs, par exemple à base de cartes
perforées, et l’on devait attendre plusieurs minutes (ou heures) avant de prendre connaissance des
résultats d’une commande par le bias d’une imprimante.
8.2 Claviers
Le clavier est le périphérique le plus commode pour saisir du texte.
La figure suivante représente le principe de fonctionnement d’un clavier. Chaque touche est un
interrupteur, normalement en position ouverte. Lorsque qu’une touche est appuyée, un signal
électrique est envoyé vers le codeur, circuit électronique très simple qui associe à chaque signal un
code (par exemple le code ASCII de la touche). Le code est associé à chaque touche par le bias de
connexions ouvertes ou fermées dans la matrice du codeur.
67
Principe de fonctionnement d’un clavier. La pression d’un touche fait
passer à 1 le signal KeyDown, et le code ASCII correspondant est présenté sur le
bus de sortie du codeur. Seules trois touches sont représentées.
Le codeur est relié à un bus d’entrées/sorties. Il génère aussi un signal KeyDown pour indiquer
qu’une touche est appuyée. Ce signal peut être utilisé pour envoyer une interruption au processeur
afin qu’il traite l’information. Les codeurs réellement utilisés assurent des fonction
supplémentaires, comme la répétition automatique des touches appuyées longtemps, la gestion
d’une mémoire tampon de quelques dizaines de caractères, l’allumage de voyants, le verrouillage
des majuscules, etc.
68
électriques ; l’impact de ces électrons sur l’écran, constitué d’une fine couche de phosphore sur du
verre, allume un petit point.
69
CONTROLE CONTINU N° 1
Question 1 :
Dans le monde des PC, un bus d’extension fait référence à un ensemble de composants
électroniques qui détermine combien de bits d’information peuvent circuler simultanément entre
l’UCT du système et un circuit logique quelconque. Vrai ou faux ?
Question 2 :
Le contenu de ce type de mémoire ne peut pas être modifié par une simple opération d’écriture.
Cette mémoire est qualifiée de permanente parce que l’information demeure inchangée même si
on éteint l’ordinateur. Cette mémoire est représentée par quelle expression ?
• RAM
• Mémoire d’accès libre
• ROM
• HIMEM
Question 3 :
Quelle est la taille et où se situe la mémoire supérieure ?
• Taille de 384 o et contiguë à la mémoire conventionnelle
• Taille de 384 ko et contiguë à la mémoire conventionnelle
• Taille de 384 o et contiguë à la mémoire étendue
• Taille de 384 ko et contiguë à la mémoire étendue
Question 4 :
Où se situe la zone de mémoire dédiée au programme d’entrée-sortie système ou « BIOS » ?
• Dans la mémoire conventionnelle
• Dans la mémoire supérieure
• Dans la mémoire étendue
• Dans la mémoire haute
Question 5 :
La fonction de la mémoire cache est de conserver les paramètres de la configuration du
système indépendamment de l’alimentation de ce dernier. Vrai ou faux ?
70
Question 6 :
Une souris est un périphérique
• Interne et de sortie.
• Externe et de sortie.
• Interne et d’entrée.
• Externe et d’entrée.
Question 7 :
La résolution d’un moniteur indique :
• Le nombre de points que le faisceau d’électrons balaie en une seconde.
• Le nombre de pixels par unité de longueurs horizontale et verticale.
• Le nombre de répétitions de l’image par seconde.
• La durée pendant laquelle un pixel demeure visible après l’excitation de ce dernier par le
faisceau d’électrons.
71