ARCHITECTURE DES ORDINATEURS

INTRODUCTION
CODAGE DE L’INFORMATION
L’UNITE CENTRALE
ARCHITECTURE DES MICROPROCESSEURS
LA MEMOIRE CENTRALE
UNITES D’ENTREE-SORTIE
LES INTERFACES

UNITES PERIPHERIQUES
LES DISQUES DURS
LES MODEMS

[Précédent][Home Page]
Introduction

En première approche, un ordinateur est constitué d'un processeur qui effectue les traitements, d'une mémoire centrale où ce processeur range les données et les résultats de ces traitements et de périphériques permettant l'échange d'informations avec l'extérieur. Tous ces constituants sont reliés entre eux par l'intermédiaire d'un bus, qui est l'artère centrale et leur permet de s'échanger des données. Pratiquement, tous les ordinateurs actuels ont cette architecture, que ce soient les micro-ordinateurs personnels ou les gros ordinateurs des entreprises. Les différences résident essentiellement dans les performances des constituants.
L'ensemble des communications à l'intérieur de l'ordinateur s'effectue en langage binaire.

La plupart des systèmes supportent les mêmes types de périphériques ; leur nombre dépend de la taille et des performances de l’unité centrale.
Les matériels à vocation scientifique ou industrielle sont également dotés de périphériques particuliers spécifiques des fonctions qui leur sont demandées.

Retour au menu

Codage de l’information : QU'EST CE QUE LE SYSTEME BINAIRE ?

Le microprocesseur et tous les composants qui l'entourent doivent traiter les nombres usuels (0, 1, 2...8, 9) dont la représentation au moyen d'états électriques est très complexe. C'est la raison pour laquelle les ordinateurs travaillent sur des nombres "binaires", et n'utilisent que les chiffres 1 ("allumé") et 0 (« éteint »). Chaque 0 ou 1 d'un nombre binaire constitue un bit. C'est la plus petite unité envisageable (un périphérique qui ne serait capable que de stocker des zéros ne pourrait pas être utilisé comme mémoire, il faut pouvoir distinguer au moins deux valeurs).
Il faut, par exemple, 4 bits pour représenter un chiffre ordinaire tel que "8" (qui s'écrit 1000 en représentation binaire).

Une lettre majuscule telle que "A" est codée 01000001. Un groupe de huit bits est appelé octet, chaque octet correspondant ainsi à un caractère. Les PC disposent de microprocesseurs très puissants qui peuvent manipuler des nombres de 32 bits (4 octets à la fois). Pour toutes les opérations portant sur des nombres plus importants, le microprocesseur doit travailler sur des portions réduites, puis reconstituer le résultat sous forme d'un nombre unique.

Un code Universel : Si mystérieux que paraissent les ordinateurs, ils ne font qu'allumer et éteindre des milliers de minuscules interrupteurs. En combinant un grand nombre de ces interrupteurs, on peut créer une grande variété d'instructions pour diriger l'ordinateur.

On dit toujours qu'on utilise en informatique l'arithmétique binaire parce que c'est la plus efficace. Cela veut dire qu'une information numérique peut être stockée en distinguant plusieurs valeurs d'un phénomène physique continu comme une tension ou une intensité. Plus on distinguera de valeurs, plus l'espace entre les valeurs sera petit et moins le dispositif de mémorisation sera fiable. Avec la numération binaire, il suffit de savoir distinguer deux états, c'est en ce sens que c'est la méthode la plus fiable pour coder l'information numérique.

 Deux autres systemes, l'octal (base 8)  et le l'hexadecimal (base 16) sont très souvent employés, car ils facilitent le dialogue entre informaticiens. Difficile en effet d'exprimer oralement une adresse mémoire avec les seuls 0 et 1 du binaire !
 
DECIMAL
BINAIRE
OCTAL
HEXADECIMAL
0
0
0
0
1
01
1
1
2
10
2
2
3
11
3
3
4
100
4
4
5
101
5
5
6
110
6
6
7
111
7
7
8
1000
10
8
9
1001
11
9
10
1010
12
A
11
1011
13
B
12
1100
14
C
13
1101
15
D
14
1110
16
E
15
1111
17
F
16
10000
20
10
17
10001
21
11

Comment coder le nombre 1944 avec seulement nos deux digits, 0 et 1 ?
 On peut coder chacun de ses chiffres séparément (minimum 4 bits par chiffre)

 0001 1001 0100 0100

On peut coder la valeur 1944 entièrement en binaire :
 0000011110011000

Avec 16 bits, on peut représenter les nombres de 0 à 9999 en format décimal, ce qui nous donne 10000 combinaisons, alors qu'avec 16 bits en binaire pur, on peut représenter 65536 nombres différents. C'est pour cela aussi qu'on dit que le binaire est plus efficace.

Ainsi un groupement de p éléments binaires successifs assure la représentation de 2p caractères distincts. Réciproquement, pour représenter 2p caractères distincts il faut p éléments binaires successifs choisis parmi deux signes (0,1).

Quelques exemples de conversions
 
Binaire
Hexadécimal
Décimal
1001
9
9
101101
2D
45
11110111
F7
247

Les unités de mesure
Devant l'augmentation croissante des volumes de données mis en jeu, de nouvelles unités apparaissent pour caractériser les nouveaux supports de stockage. Aujourd'hui, un disque dur fait couramment une taille de 120 Go, la mémoire centrale 256 Mo, une clé USB 128 Mo et une disquette 1,44 Mo.
Notez que depuis la normalisation de 1998 par la Commission électrotechnique internationale, les préfixes kilo, méga, giga, téra, etc, correspondent aux mêmes multiplicateurs que dans tous les autres domaines, soit des puissances de 10. L'ancienne règle qui prévalait (à savoir 1 ko=2 puissance10 octet=1024 octets), n'est plus de mise, même si encore couramment employée.
 
1 octet = 8 bits
1000 octets
= 1 Ko (Kilo-octets)
1 000 000 octets = 1000 Ko = 1 Mo (méga-octets)
1 000 000 000 octets = 1000 Mo = 1 Go (Giga-octets)
1 000 000 000 000 octets = 1000 Go = 1 To (Téra-octets)
1 000 000 000 000 000 octets = 1000 To = 1 Po (Péta-octets)

Données non numériques
Pour permettre la manipulation, l’échange et le stockage de fichier texte, il faut les coder sous un format universel qui peut être reconnu par tous les ordinateurs. Le codage des caractères alphanumériques se fait par une table de correspondance propre à chaque code utilisé :

- BCD (Binary Coded Decimal) : le caractère est codé sur 6 bits

- ASCII (American Standard Code for Information Interchange) : le caractère est codé sur 7 bits

- EBCDIC (Extended Binary Coded Decimal Internal Code) : le caractère est codé sur 8 bits

- UNICODE : Le caractère est codé sur 16 bits (soit 65536 combinaisons possible); il permet de traiter des textes écrits aussi bien en hiéroglyphes qu’en français.

Entier positif

Conversion d’une base à l’autre:

décimal à binaire
La conversion se fait par divisions entières successives par 2. L’arrêt se fait à un quotient nul. Le nombre binaire est obtenu en lisant le reste, du dernier au premier.

Ex : 25

25 / 2 = 12 reste 1

12 / 2 = 6 reste 0

6 / 2 = 3 reste 0

3 / 2 = 1 reste 1

1 / 2 = 0 reste 1

donc 25(10) = 11001 (2)  (NB : 25 en base 10 équivaut a 11001 en base 2)

octal à décimal
La conversion se réduit à une addition de puissance de 8 (ou 16).

décimal à octal
La conversion se fait par divisions entières successives par 8 (ou 16). L’arrêt se fait à un quotient nul. Le nombre binaire est obtenu en lisant le reste, du dernier au premier.

octal (ou hexadécimal) à binaire
La conversion correspond à un éclatement de chaque chiffre octal (ou hexa) en son équivalent binaire sur 3 (ou 4) bits. Ex :

7(8) = 111(2) car 1(8) = 001(2) et 7(8) = 111(2)

A(16) = 1010(2) car 2(16) = 10(2) et A(16) = 1010(2)

binaire à octal (ou hexadécimal)

On effectue un remplacement de droite à gauche de 3(ou 4) bits par le chiffre octal (hexa) correspondant. Si le nombre de bits n’est pas multiple de 3(ou 4), il faut compléter à gauche avec des 0.

Ex :

01101(2) = 55(8) = 2D(16)

Entier négatif
Il existe quatre façons de représenter les nombres négatifs en machine. La première, la valeur signée, consiste à réserver tout simplement un bit pour le signe (le bit le plus à gauche avec 0 pour + et 1 pour -), les autres bits servant à représenter la valeur absolue du nombre. Dans la deuxième méthode, le complément à 1 (ou complément restreint), on a également un bit de signe qui vaut 0 pour + et 1 pour -. Pour effectuer la négation d'un nombre, on remplace tous les bits (y compris le bit de signe) qui sont à 0 par 1 et tous les bits qui sont à 1 par 0. La troisième méthode, le complément à 2 (ou complément vrai), a elle aussi un bit de signe avec 0 pour + et 1 pour -. On effectue la négation d'un nombre en deux étapes: on remplace d'abord tous les 1 par 0 et tous les 0 par 1, comme dans le complément à 1. Puis on additionne 1 au résultat ainsi obtenu. L'addition binaire ressemble fort à l'addition décimale à ceci près qu'on engendre une retenue si la somme et supérieure à 1 au lieu de 9.

Essayons de convertir 6 en complément à deux; il faut deux étapes:

00000110 (+6)

11111001 (-6 en complément à 1)

                1 (on additionne 1)

11111010 (-6 en complément à 2)

Si une retenue est engendrée au niveau du bit le plus à gauche, elle est ignorée. La quatrième méthode, le codage par excédent, consiste, pour les nombres de m bits, à stocker la somme du nombre et de 2,n-1. Par exemple, pour les nombres sur 8 bits, on stocke la valeur du nombre plus 128. C'est ainsi que -3 devient -3 + 128 = 125, soit en binaire 0 1 1 1 1 1 0 1. On mappe ainsi sur l'intervalle O..255, les nombres de l'intervalle -128,..., +127. On peut remarquer que cette méthode donne un résultat identique à celle du complément à 2, au bit de signe près qui est inversé.  Les deux premières méthodes (valeur signée et complément à 1) autorisent deux représentations distinctes de la valeur 0: un «zéro positif» (+O) et un «zéro négatif» (-O). C'est un inconvénient important. La méthode du complément à 2 n'engendre pas de problème de ce côté-là car le complément à 2 de +0, c'est encore +0. En revanche, on doit noter qu'une configuration binaire formée d'un 1 suivi de 0 est son propre complément à 2; l'intervalle dans lequel les nombres négatifs prennent leur valeur n'est pas le symétrique de celui des nombres positifs: il y a un nombre négatif qui n'a pas de contrepartie positive. Le même problème survient avec la quatrième méthode.


Nombre fractionnaire
Changement de base :

binaire à décimal

On additionne les puissances de 2.

x : 0,01 (2) = 0 * 2e - 1 + 1 * 2e - 2 = 0,25(10)

décimal à binaire

La conversion s’effectue par des multiplications successives par 2, de nombres purement fractionnaires. On s’arrête dès que l’on obtient une partie fractionnaire nulle. Le résultat est obtenu en lisant les parties entières de la première vers la dernière.

Ex : 0,125 * 2 = 0,250 = 0 + 0,250

0,25 * 2 = 0,50 = 0 + 0,50

0,5 * 2 = 1,0 = 1 + 0,0

on lit donc de haut en bas 0,125(10) = 0,001(2)

Nombres fractionnaires à virgule fixe
Les nombres sont traités comme des entiers avec une virgule virtuelle gérée par le programmeur ; le problème est la gestion de la place de la virgule au cours des opérations ce qui rend son traitement très difficile et le résultat peu précis.

Protection contre les erreurs
Avec l'augmentation constante des vitesses et des taux de transfert, il a fallut sans cesse perfectionner les algorithmes de vérification de l'intégrité des données transmises. On recense plusieurs type de codes vérificateurs mais les principaux sont les suivants :

Codes autovérificateurs : Le contrôle de parité est le plus simple; le mot se compose de m+1 bits ; la valeur est telle que le nombre total de bit à 1 (calculé sur m+1) est pair ou impair. Si la parité n’est plus respectée, l’erreur est détectée, mais s’il y a double erreur, la parité est aussi respectée et alors l’erreur n’est plus détectée.

Codes autocorrecteurs : La double parité est un contrôle double du code mais seul un nombre impair d’erreur est possible à détecter.

Le code de Hamming est basé sur les tests de parité et ne permet de corriger qu’un bit en erreur. On peut aussi l’utiliser dans le cas d’erreurs multiples sur une séquence de bits en arrangeant le message de façon matricielle.

Détection d’erreurs groupées : CRC (Cyclique Redondancy Check) ou méthode des codes polynomiaux qui consiste avant la transmission à ajouter des bits de contrôle. Une information de n bits peut être considérée comme la liste des coefficients binaires d’un polynôme de n termes et donc de degré n-1.
101101 = 1+x2+x3+x5

Ce sont ces types de détection d’erreur que l’on utilise aujourd’hui car ce sont de loin les plus performants.

Retour au menu

ELEMENTS DE LOGIQUE

Certaines des fonctions accomplies par l'ordinateur peuvent être obtenues avec d'autres circuits. Cette technique s'appelle "logique cablee"

Les opérateurs :
Le micro-ordinateur, ou plus exeactement l'un de ses composants, l'UC (unité centrale) peut accomplir aussi bien des opérations arithmétiques que des opérations logiques.

Les opérations sont surtout utilisées pour comparer des données entre elles et déclencher, à partir du résultat, une transaction particulière.

Par exemple, on peut insérer dans un programme calculant la feuille de paie, un système de contrôle du nom qui se présente; Si ce nom est FIN, la machine doit en aviser l'opérateur et mettre fin au programme.

Dans l'éxécution d'un calcul arithmétique normal, nous pouvons distinguer trois entités fondamentales :

1- Les opérandes : nombres sur lesquels on effectue l'opération.

2- L'opérateur : symbole indiquant l'opération à accomplir

3- Le résultat : nombre associé par l'opérateur aux opérandes.

On connaît les opérateurs correspondant aux opérations arithmétiques ordinaires mais il existe aussi une série d'operateurs appelée : les opérateurs logiques. Ces opérateurs obéissent à des règles spécifiques, parfois très complexes.

Les opérateurs logiques :
Prenons l'exemple des feux de circulation.

Il y a quatre situations possibles :

1- feux éteints

2- feu rouge

3- feu orange

4- feu vert

A la question : "Quel est l'état des feux de circulation ?", la réponse est nécessairement l'une des quatre situations énumérées plus haut.
Soit : éteint OU rouge OU orange OU vert

Le mot OU est un opérateur logique. Le symbole est OU.

On peut donc exprimer les quatre situations possibles de la façon suivante :

état des feux de circulation : 1 OU 2 OU 3 OU 4

Question : "Quand une voiture a-t-elle le droit de passer ?"
Réponse :  "Feux éteints OU feu vert."

On peut traduire symboliquement la réponse par :

PASSEZ = 1 OU 4

En réalité, l'expression 1 OU 4 n'est pas suffisante puisque si les feux sont éteints, il faut encore s'assurer que la voie est libre. La réponse complète est donc :

PASSEZ = feu vert OU feux éteints ET voie libre

Considérons cette dernière condition.

Le mot ET signifie qu'on doit avoir simultanément les deux situations :

feux éteints et voie libre

C'est un  nouvel opérateur logique que l'on symbolise par ET.
En attribuant le chiffre 5 à la condition voie libre, on aura :

PASSEZ = 4 OU 1 ET 5

Mais cette expression est susceptible de deux interprétations :

a) PASSEZ = (4 OU 1) ET 5

b) PASSEZ = 4 OU (1 ET 5)

L'expression a) signifie que le passage est autorisé si l'on a (4 OU 1) et en même temps 5. C'est une interprétation erronée contrairement à l'expression b) qui est correcte.
Il est donc indispensable d'utiliser correctement les parenthèses, exactement comme dans les formules algébriques.

Les opérateurs ET / OU s'appliquent à deux éléments d'un ensemble quelconque.

Considérons un exemple à deux chiffres binaires A et B. Ces deux éléments peuvent prendre la valeur 0 ou 1. Il s'ensuit que les diverses combinaisons entre les valeurs A et B sont les suivantes :

A    B
1    1

1    0

0    1

0    0
En faisant appel aux opérateurs ET/OU, nous obtenons :
     A    B            A ET B            A OU B
1    1                1                        1

1    0                0                        1

0    1                0                        1

0    0                0                        0

Introduisons maintenant un nouvel opérateur : OU exclusif, OUX (XOR en anglais). cet opérateur est équivalent à OU sauf dans le cas où A=1 et B=1 où il donne 0 comme résultat.
En d'autres termes, OUX n'équivaut à 1 que si l'un seulement de A ou de B a pour valeur 1. La table de vérité de cet opérateur est par conséquent :

      A    B            A OUX B
1    1                    0

1    0                    1

0    1                    1

0    0                    0

Le dernier des opérateurs est le NON (NOT en anglais). Il s'applique à un seul opérateur avec un sens complémentaire. Il remplace donc le symbole 1 par 0 et réciproquement.

      A            NON A
1                0

0                1

On peut également appliquer les opérateurs logiques à des nombres binaires à plusieurs chiffres.
Si nous prenons :

A = 01101

B = 10011

on a :
NON A = 10010

NON B = 01100

A ET B = 00001

A OU B = 11111

A OUX B = 11110

La logique cablée
Les opérateurs logiques peuvent s'appliquer aux signaux électriques de la même manière qu'ils s'appliquent aux symboles 0 et 1 (signaux électriques numériques).

L'opération qui permet d'obtenir le signal A ET B est effectué par des circuits numériques spécialisés que l'on appelle les circuits logiques.

Chacun de ces circuits a une fonction qui lui est propre. A chaque opérateur logique correspond un circuit spécifique.

Il faut donc construire un appareil particulier renfermant un circuit pour chacune des fonctions logiques dont on a besoin.

Concevoir un circuit, c'est relier électriquement entre eux un certain nombre de composants. On obtient ainsi un circuit intégré.

Cette opération de connexion s'appelle un câblage et le circuit prend alors le nom de logique cablée.

Les opérateurs logiques peuvent s'appliquer sur des nombres quelque soit la base concernée.

L’unité centrale

L'unité centrale (UC) est le "cerveau" de l'ordinateur. Son rôle est d'exécuter les programmes stockés en mémoire centrale en chargeant les instructions, en les décodant et en les exécutant l'une après l'autre. L'UC est composée d'une unité de commande qui charge les instructions et les décode, et d'une unité arithmétique et logique (UAL) qui exécute des opérations et de la mémoire centrale.

Unité de commande
L’unité de commande est constituée de plusieurs organes qui permettent la recherche en mémoire et le décodage d’une instruction. On trouve :

L'Unité de commande comprend une mémoire très rapide qui lui permet de stocker des résultats temporaires ou des informations de commande. Cette mémoire est formée de quelques registres, chaque registre ayant une fonction particulière. Le registre le plus important est le compteur ordinal (CO) qui pointe sur la prochaine instruction à exécuter. On trouve aussi le registre instruction (RI) qui contient l'instruction en cours d'exécution. La plupart des ordinateurs contiennent également d'autres registres qui permettent aux programmeurs de stocker des résultats intermédiaires.

L'exécution d'une instruction par l'UC passe par les étapes suivantes :
1. Chargement de la prochaine instruction à exécuter depuis la mémoire jusque dans le registre instruction.

2. Modification du compteur ordinal pour qu'il pointe sur l'instruction suivante.

3. Décodage de l'instruction que l'on vient de charger.

4. Localisation dans la mémoire des éventuelles données utilisées par l'instruction.

5. Chargement des données, si nécessaire, dans les registres internes de l'unité centrale.

6. Exécution de l'instruction.

7. Stockage des résultats à leurs destinations respectives.

8. Retour à l'étape 1 pour exécuter l'instruction suivante.

L'unité arithmétique et logique
L’UAL réalise les opérations mathématiques et logiques nécessaires au fonctionnement de l’ordinateur et permet tout particulièrement le mode de calcul en virgule flottante.

Elle possède les registres suivants :

C'est l'UAL qui exécute les additions, les soustractions et toutes les opérations simples sur ses entrées, et qui produit un résultat placé dans le registre de sortie. Le contenu du registre de sortie peut alors être placé dans un autre registre avant de rejoindre, si nécessaire, la mémoire.

On peut regrouper les instructions en trois catégories :

- Registre-mémoire (2 à 3 cycles)
les instructions registre-mémoire permettent de charger des mots dans des registres qui pourront, par exemple, être utilisés par d'autres instructions comme entrées de l'UAL.

- Registre-registre (1 cycle)
les instructions registre-registre typiques chargent deux opérandes pris dans les registres, les placent dans les registres d'entrée de l'UAL, exécutent sur eux une certaine opération et remettent le résultat dans un registre.

- Mémoire-mémoire (plusieurs cycles)
Une instruction mémoire-mémoire prend ses opérandes dans la mémoire et les place dans les registres entrées de l'UAL, exécute ensuite une opération, et place le résultat en mémoire.

Retour au menu

Architecture des microprocesseurs

Généralités
Il existe deux types de microprocesseurs :

Microprocesseurs CISC (Complexe Instruction Set Computer) de conception plus ancienne et moins performant puisqu’ils disposent d’un jeu d’instructions important (env. 500 instructions) ce qui ralentit la recherche de l’instruction désirée d’autant.
Ex : i80486, Pentium, MC68000, MC68040,...

Microprocesseurs RISC (Reduced Instruction Set Computer) de conception récente et plus performant qui eux disposent d’un petit jeu d’instructions polyvalent (de 160 à 200 instructions), ce qui les rend plus rapide. Ex : i960, RS6000, DecAlpha,..
Il intègre au matériel les instructions les plus utilisées et permet d'exécuter plusieurs instructions en un seul cycle.

Ex :  PowerPc

La tendance actuelle semble montrer que les processeurs de type RISC sont plus performants que les CISC bien que ces derniers ne soient plus des CISC à proprement parler, mais plutôt des hybrides regroupant différentes technologies comme le pipelining et le mode super-scalaire ou carrément CISC et RISC à la fois comme le pentium pro (c'est un processeur RISC qui traduit les instructions CISC).

Synchronisation des opérations
La synchronisation des différentes opérations est réalisée par une horloge qui définit le cycle de base et qui est en général la fréquence d’horloge du processeur. Le temps d’exécution d’une instruction dépend du type d’opération à effectuer et du type de processeur utilisé, ce qui peut prendre un ou plusieurs cycles d’horloge.

Séquenceur

Le séquenceur est un automate générant les signaux de commandes nécessaires pour actionner et contrôler les unités participant à l’exécution d’une instruction. Il existe deux types de séquenceurs :

- le séquenceur câblé qui est un circuit séquentiel complexe mais d’exécution très rapide.

- le séquenceur microprogrammé contenu dans une ROM qui est plus simple à utiliser et à concevoir, mais moins rapide.

Structure des instructions niveau machine
Une instruction machine doit fournir au processeur toutes les informations pour déclencher une opération élémentaire. Elle doit contenir un code opération (type d’action demandée) et une ou plusieurs adresses (ces adresses peuvent être : l’adresse de l’opérande, l’adresse où envoyer le résultat, l’adresse où chercher l’instruction suivante,...). Par conséquent, une instruction machine comportera un champ code opération et jusqu'à 4 champs adresse.

Jeu d’instructions
L'ensemble de toutes les instructions dont dispose le programmeur à un niveau donné est appelé jeu d'instructions. Le nombre d'instructions d'un jeu est variable suivant les machines et les niveaux; Pour un niveau machine traditionnel, par exemple, la taille du jeu d'instructions varie couramment de 20 à 300. Un grand jeu d'instructions n'est pas forcément meilleur qu'un petit, c'est même souvent le contraire, puisque l'existence d'un jeu d'instructions très grand sous-entend que les instructions elles-mêmes ne sont pas générales. Les compilateurs de langages de haut niveau (Ada, Pascal) fonctionnent généralement mieux sur des machines dont le jeu d'instructions est petit mais bien adapté, que sur celles qui ont un jeu d'instructions très lourd. Les machines à jeu d'instructions très réduit (machine RISC) sont extrêmement rapides et n'ont pas de microprogrammes.

Chaque machine possède donc son jeu d’instructions. Il existe 6 groupes d’instructions que l’on retrouve sur toutes les machines, quelles qu’elles soient :
Les transferts de données (load, move, store,...).

Les opérations arithmétiques (+, -, /, *).

Les opérations logiques (ou, and,...).

Les contrôles de séquence.

Les entrées/sorties.

Les manipulations diverses (décalages, incrémentations,...).

Registres du CPU

Le CPU possède ses propres registres qui lui permettent d’exécuter ses instructions :

Les instructions les plus répandues permettant de les manipuler sont :
- le chargement d’un registre à partir de la mémoire,

- l’enregistrement en mémoire d’un registre,

- le transfert d’un registre dans l’Accumulateur,

- l’incrémentation ou la décrémentation d’un registre.

Cette suite d'étapes s'appelle cycle de chargement-décodage-exécution, cycle qui est au coeur du fonctionnement de tous les ordinateurs.
Il n'est pas obligatoire qu'un programme soit exécuté directement par une UC matérielle, c'est-à-dire composée de circuits électroniques; Un programme qui charge, décode et exécute les instructions d'un autre programme est appelé un interpréteur.

Cette équivalence entre processeurs matériels et interpréteurs a d’importantes conséquences du point de vue de l'architecture des ordinateurs. Lorsqu'on spécifie le langage machine L  d'un nouvel ordinateur, il convient de décider si ce langage L sera directement exécuté par le matériel ou s'il sera interprété. Si l'on décide d'écrire un interpréteur, il faudra alors faire une machine sur laquelle tournera cet interpréteur. Puisqu'un interpréteur traite les instructions de sa machine cible par petites étapes, la machine sur laquelle tourne l'interpréteur est souvent plus simple et donc moins chère, que ne le serait le mécanisme cible réalisé en matériel. C'est pour cela que les programmes du niveau machine traditionnel sont sur la plupart des ordinateur modernes traités par un interpréteur qui tourne sur une machine beaucoup plus simple que nous avons appelée niveau microprogramme.
 

Adressage des opérandes
Afin d’accéder aux instructions ou aux données, il existe de nombreux types d’adressages. Parmi les différents modes d’adressage, les principaux sont :

L’adressage direct : c'est le champ d’adresse qui contient l’adresse effective.

L’adressage indirect : le champ d’adresse contient l’adresse où se trouve l’adresse effective.

L’adressage immédiat : le champ d’adresse contient l’opérande.

L’adressage implicite : le code opérande indique où se trouve l’opérande.

L’adressage indexé : adresse effective = contenu champ adresse + contenu registre indexé.

L’adressage de base : adresse effective = contenu registre base + contenu champ adresse.

L’adressage relatif : c'est comme l’adressage de base mais il utilise le contenu du compteur ordinal comme adresse de base.

Performances des microprocesseurs
Les performances des microprocesseurs se mesurent au nombre d'instructions qu'ils peuvent traiter en une seconde. Exemple : 80 MiPs = 80 millions d'instructions par seconde. Cette valeur devrait être identique à la valeur de la fréquence de base du microprocesseur, mais celui-ci n'exécute pas toujours une instruction par cycle. Pour certaines instructions, il peut avoir besoin de 2 à 6 cycles, c'est pourquoi le nombre de Mips est souvent inférieur au nombre de MHz. En utilisant des techniques de traitement parallèle (ou pipe-line, en anglais) et des architectures de type multi-bus, certains microprocesseurs peuvent offrir des performances en Mips égales ou supérieures à leur fréquence d'horloge. Le flop est une unité de performance appliquée aux ordinateurs scientifiques dédiés au calcul numérique. Ceux-ci indiquent leur puissance de travail en Pops (Floating Point Operations per Second ou nombre d'opérations en virgule flottante par seconde).

On parle plus exactement de Mflops (mégaflops) ou Gflops (Gigaflops). Enfin, il existe également le lips (Logical Inferences per second) ou nombre d'inférences logiques par seconde.

La mesure des performances des processeurs n'est cependant pas si simple. Elle pose deux problèmes : quelle unité de mesure, et sur quoi mesurer la performance. Il est généralement admis que la seule manière correcte d'apprécier les performances est la mesure du temps d'exécution sur des programmes réels pour des entrées déteminées. Les programmes spécifiques d'évaluation de performance ou benchmark et les unités de mesure comme le MIPS ou le Mflop ne peuvent que donner des ordres de grandeur de la performance réelle. Souvent, ces unités serviront à donner les performances maximales ou crête, que la machine ne peut dépasser. Même si on utilise le temps comme unité de mesure, il faut encore distinguer entre le temps passé par l'unité centrale pour l'exécution du programmme de l'utilisateur et le temps écoulé entre l'ordre de début d'exécution d'un programme et l'obtention des résultats, qui comprend en plus le temps utilisé par le système d'exploitation pour ses différentes tâches dont les entrées/sorties.

 

Retour au menu

Architecture parallèle
Le développement des besoins en informatique a conduit à faire évoluer les ordinateurs vers des puissances de plus en plus grandes. L'un des points essentiels de ces développements porte sur l'architecture des machines, c'est à dire la manière dont sont agencés les différents composants : processeurs, mémoires, connexions, canaux d'entrées-sorties…

Le mode de fonctionnement classique consiste à faire effectuer, séquentiellement, un programme par la machine suivant la procédure décrite par John Von Neumann, le pionnier de l'informatique telle que nous la connaissons aujourd'hui.

A tout instant du programme, une seule instruction, portant sur une seule variable ou un couple de variables , est exécutée. Si le traitement comporte plusieurs opérations, celles-ci doivent être effectuées séquentiellement, une opération ne pouvant commencer que lorsque la précédente est terminée.

Une telle machine nécessite un seul processeur, un compteur d'instructions et une mémoire contenant, à la fois, les données et les instructions, abstraction faite des entrées/sorties. Selon la classification de Flynn, on donne à ce type d'architecture le nom de SISD : Single Instruction Single Data stream (une seule instruction, une seule donnée).

Pour accélérer le traitement, une solution consiste à le répartir sur plusieurs processeurs. Il y différentes façons de procéder. La plus simple, équivalent du travail à la chaîne dans les usines, consiste à répartir, sur différents processeurs, le traitement portant sur une donnée :

Une telle structure, dite MISD, Multiple Instruction Single Data stream, est plus connue sous le nom de "pipe-line", par analogie avec les canalisations où le carburant liquide entre, s'écoule et ressort à la sortie. Ce type d'architecture permet de multiplier la capacité de traitement par le nombre de processeurs mis bout ) bout, une fois la chaîne amorcée. L'avantage de cette structure par rapport à la SISD est qu'elle ne nécessite que peu d'accès à la mémoire, sachant que cette phase du traitement représente de 80 à 90 % du temps d'occupation du processeur.

A l'inverse, il est souvent avantageux de faire effectuer simultanément la même instruction sur des données différents : on peut alors parler d'architecture parallèle. Dans ce cas de figure, les données sont intrinsèquement structurées en ensemble ordonnées et homogènes appelés "vecteurs", destinés à subir le même traitement. Toutes ces données arrivent simultanément dans un ensemble de processeurs élémentaires, dit "processeur vectoriel", où elles sont traitées en même temps selon une instruction unique. L'ensemble des processeurs élémentaires est coordonné par un superviseur. Ce parallélisme vectoriel est également appelé SIMD : Single Instruction Multiple Data stream (une instruction, plusieurs données).

Le quatrième grand type d'architecture, dit parallélisme concurrent ou asynchrone, encore désigné par MIMD - Multiple Instruction Data stream (instruction multiples, données multiples) - se rencontre dans les problèmes décomposables en fonctions, pouvant travailler simultanément sur des ensembles distinct de données, tels que les méthodes de résolutions de systèmes d'équations par éléments finis. Plusieurs instructions différentes, portant chacune sur une donnée ou un groupe de données, sont exécutées indépendamment l'une de l'autre.
 

La mémoire centrale

 La mémoire est la partie de l'ordinateur dans laquelle programmes et données sont rangés. Sans mémoire, dans laquelle le processeur lit et écrit de l'information, il n'y aurait pas d'ordinateurs tels que nous les connaissons.
Une mémoire est formée d'un certain nombre de cellules (ou cases), chacune de ces cellules contenant une certaine quantité d'informations. Chaque cellule a un numéro, que nous appellerons son adresse, qui permet à un programme de la référencer. Si une mémoire a n cellules, les adresses iront de 0 à n-1. Toutes les cases de la mémoire contiennent le même nombre de bits, par exemple k bits, ce qui permet de représenter 2k combinaisons différentes.

 Elle est organisée de façon matricielle par des transistors où chacun d'eux se trouve à l’intersection d’une ligne et d’une colonne. Elle ne peut contenir que deux types d’information, les instructions et les données.

La mémoire centrale est divisée physiquement en cellules, qui elles-mêmes contiennent un mot-mémoire (word), et chacune possède une adresse propre. A chaque mot est associé une adresse et un contenu (soit une instruction, soit une donnée).

La mémoire est organisée de façon à respecter une certaine hiérarchie dictée essentiellement par la rapidité de ses composants. On peut donc les classer de la manière suivante :

Organisation
La mémoire est constituée dans l’ordre croissant : du bit, de l’octet, du caractère, du mot, de l’enregistrement (bloc de données) et du fichier.

Ses principales caractéristiques sont : l’adresse, la capacité, le temps d’accès, le cycle mémoire (temps entre deux accès successifs), le débit et la volatilité.

Il existe différents types d’accès suivant les fonctions mémoire désirées:


Mémoires à semi-conducteurs
Le principe de base est d’utiliser des bistables (bascules RS) comme point de mémoire. Ce sont des mémoires à accès direct qui peuvent être lues et écrites. Il en existe plusieurs type qui sont de conception et de nature différente et qui correspondent à des besoins bien particuliers en informatique:

La RAM (Random Accès Memory) est à accès direct et on distingue plusieurs technologies :

    - SRAM (Static RAM) : de technologie bipolaire (2 portes NOR et chaque porte NOR est formée de deux transistors); C’est un type de mémoire qui est très rapide et on s’en sert essentiellement pour constituer la mémoire centrale de l’ordinateur.

    - DRAM (Dynamic RAM) : de technologie MOS (transistor + condensateur); Elle demande à être rafraîchie périodiquement et est donc plus lente. Elle sert beaucoup en vidéo, en particulier sur les cartes graphiques, et permet pour une résolution d’écran donnée d’afficher davantage de couleurs.

    - SDRAM (Synchronous DRAM) : qui est une DRAM dont l'accès est synchrone; c'est a dire que chaque requête mémoire se fait en un seul cycle d'horloge.

    - EDO (Extended data Output) : Elle est structurée comme la DRAM, à une petite différence près : un petit circuit a été ajouté , qui agit comme une minuscule zone de stockage ou tampon servant à sauvegarder les adresses. Ce tampon reçoit l’adresse de la prochaine donnée à lire ou à écrire avant même que la donnée précédemment lue ou écrite ait été traitée.

La ROM (Read Only Memory) est une mémoire morte où l’on peut lire uniquement. Ce sont des mémoires non volatiles et de technologie MOS et bipolaire (programmation par masque).Elles sont fréquemment utilisées pour y implanter le BIOS (Basic Input Output System) de l’ordinateur.
La PROM (Programmable ROM) est une mémoire morte programmable une seule fois par l’utilisateur. Elle est  non volatile et de technologie MOS-bipolaire (programmation courante par stockage de charge), MOS (unipolaire à grille flottante qui décide si il y a canal ou pas) ou par claquage de jonctions (réseau de diodes en matrice). Elle est très peu utilisée en informatique.

L’EPROM (Erasable PROM) est sur le même principe que la PROM mais peut être reprogrammée plusieurs fois après effacement aux Ultra-Violet.

Les EEPROM, EAROM, EEROM sont des ROM programmables et effaçables électriquement.

Mémoire cache
Le principe de la mémoire cache est de trouver une solution à la grande différence de vitesse entre le processeur et la mémoire centrale, car il existe une grande disparité de vitesse entre ces deux modules ( celle-ci peut atteindre un rapport 10). Les ordinateurs ont différents types de cache, chacune a son propre usage, mais elles possèdent toutes, à peu de chose près, la même définition.

Les fonctions d'une cache

La cache réalise quelques tâches spécifiques. Certaines caches sont dédiées à ne faire qu'une seule tâche, mais la plupart réalisent les tâches suivantes : Cache en écriture - utilisée lorsqu'un périphérique rapide envoi de l'information à un périphérique lent. Normalement le périphérique rapide devrait attendre que le périphérique lent lui indique qu'il est prêt à recevoir d'autres données. C'est comme essayer de tenir une conversation pendant que quelqu'un traduit chaque mot que l'on dit avec un dictionnaire. Ainsi la cache en écriture possède une logique et les logiciels lui permettant de transmettre (écrire) sont contenu dans le périphérique lent à la vitesse de celui-ci automatiquement, de manière à ce que les périphériques soient libérés et prêts à une autre utilisation.

Imaginez par exemple l'évier de votre cuisine. Lorsque vous désirez y déverser un litre d'eau, vous pouvez verser le litre entier d'un seul trait, et cela même si le drain de l'évier n'est pas aussi rapide que le déversement que vous effectuez. L'évier peut être vu ainsi comme une cache - c'est un tampon (buffer) entre vous et le drain. Vous versez l'eau dans l'évier et il se rempli aussi rapidement que vous déversez l'eau, le drain pendant ce temps videra l'évier à sa propre vitesse (qui est plus lente). Si vous remplissez complètement l'évier d'eau, vous devrez alors attendre que le niveau d'eau soit assez bas pour y déverser un autre litre; cependant vous avez la possibilité de faire autre chose pendant ce temps.

Le rapport entre les vitesses des périphériques décidera de la grosseur de la cache à utiliser (plus la différence de vitesse est grande, plus grande devra être la cache). Cache en lecture - utilisée lorsqu'un périphérique rapide obtient de l'information d'un périphérique lent. Les caches en lecture possèdent la plupart du temps une logique leur permettant de lire d'avance (prefetch) ce que vous pourriez avoir besoin par la suite. Ainsi ils font une lecture lente de toutes les informations dont vous pourriez avoir besoin. Lorsque vous demandez quelque chose qui est déjà dans la cache, vous l'obtiendrez rapidement. Lorsque la cache est vide, elle peut se remplir d'elle même pendant que vous faites autre chose. Imaginez encore votre évier de cuisine, plus particulièrement du point de vue de son drain. Vous laissez quelqu'un d'autre remplir l'évier d'eau, un verre plein d'eau à la fois. Lorsque vous désirez avoir de l'eau en bas, vous ouvrez le drain et l'eau en sort (jusqu'à ce que l'évier soit vide). Tampons de cache - ce sont des zones qui renferment des choses que vous avez demandées auparavant. Ils se rappellent des dernières données ou informations, ainsi si vous les désirez à nouveau, elles vous attendent déjà. Si vous répétez souvent la même chose, grande sont les chances d'avoir accès à l'information directement dans le tampon. Les programmes d'ordinateur effectuent souvent un travail répétitif, et cela survient beaucoup plus souvent que vous ne pouvez l'imaginer. Combinaisons - la plupart des caches sont des combinaisons des fonctions énumérées précédemment ou renferment toutes ces fonctions.

Types de cache :

Cache L1

Le processeur de votre ordinateur est très rapide, il peut tourner à des vitesses dépassant 2 Ghz. La mémoire RAM standard est plus rapide que la plupart des autres composantes de votre ordinateur, mais elle ne tient pas le coup face à des vitesses approchant celle du processeur. Ainsi les concepteurs de processeur (CPU) ont réservé un espace mémoire très rapide à l'intérieur même de la puce du processeur. C'est la cache L1, elle fonctionne à la même vitesse que le processeur. L'espace sur la puce du processeur coûte très chère, il n'est alors pas possible de réserver une grande quantité de mémoire pour la cache L1 (approximativement 1/1000 de la taille totale de la mémoire RAM de votre ordinateur). Puisque les programmes d'ordinateur effectuent beaucoup de boucles autour du même code, les instructions et données de la cache L1 sont exécutées souvent. Même une petite cache L1 peut donner un gain très appréciable en vitesse. Plus la vitesse du processeur est rapide par rapport à la mémoire principale RAM et plus la quantité de données sur laquelle vous travaillez est importante, plus grande devra être la cache L1.

Cache L2

La mémoire rapide situé dans le processeur (cache L1) est de petite taille, et la cache L1 ainsi que le processeur sont encore beaucoup plus rapides que la mémoire RAM (jusqu'à 50 fois plus rapide). Lorsque que les données ne sont pas dans la cache L1, le processeur doit aller les chercher dans la mémoire RAM, il y a alors un ralentissement notable. Le processeur doit alors attendre un long moment (par rapport à sa vitesse) pour que la mémoire RAM lui rende l'information, le processeur ne peut alors rien faire d'autre qu'attendre. Ainsi entre la cache rapide L1 (et le processeur) et la mémoire lente RAM, est insérée une deuxième cache, la cache niveau 2 ou L2. Cette cache est fabriquée à partir de mémoire rapide, mais relativement peu dispendieuse, appelée mémoire statique ou SRAM et est approximativement 10 fois plus rapide que la mémoire RAM standard. On peut ainsi se permettre 256k et même 1 ou 2 megabytes de SRAM. Le processeur travaille presque toujours sans arrêt, il fera probablement quelque chose qu'il a fait récemment (une boucle) et les données seront dans la cache L1; ou il possédera la logique qui lui aura permit de lire d'avance (prefetch) l'information située dans la cache L1; cependant les ordinateurs exécutent des centaines de millions d'instructions à la seconde! 1% de ratés dans la cache L1 signifie que pendant un million de fois par seconde le processeur devra lire dans la mémoire RAM. Les ratés dans la cache L1 peuvent atteindre 10 à 20%, ainsi la cache L2 apporte un aide précieux. Lorsque le processeur ne trouve pas ce dont il a besoin dans la cache L1, il le trouvera la plupart du temps dans la cache L2. Le fait que la mémoire RAM soit plus lente que le processeur devient alors beaucoup moins significatif. Lorsqu'on entend parler de cache, il s'agit la plupart du temps de la cache L2. La majorité des ordinateurs personnels d'aujourd'hui possède les deux niveaux de cache (L1 et L2).

Cache L3 et L4

Certains systèmes sont tellement rapides qu'ils ont besoin de plusieurs niveaux de cache entre le processeur et la mémoire RAM. Chacun de ces niveaux possède le numéro suivant dans la séquence de numérotation des caches (L1, L2, L3, etc.).

Cache de disque dur

De la même manière que le processeur est plus rapide que la mémoire RAM, celle-ci est beaucoup plus rapide que les disques durs. Une cache est utilisée entre le disque dur et la mémoire, lorsque l'ordinateur écrit sur le disque, les données sont placées dans la cache, elles sont alors écrites lentement (à la vitesse maximale du disque dur) alors que l'ordinateur peut s'occuper à faire autre chose. Lorsque l'ordinateur désire lire sur le disque, la cache peut avoir lu d'avance (prefetch) ou posséder des données lues auparavant, celles-ci sont alors tirées directement de la cache sans avoir à passer par le disque dur. Non seulement l'ordinateur peut-il lui même utiliser une partie de sa mémoire RAM comme cache entre lui et le disque dur (cache logicielle), les concepteurs de disques durs ont également ajouté une petite quantité de mémoire directement sur les contrôleurs de disques durs comme cache (cache matérielle) et c'est la norme actuellement dans la fabrication des disques durs. Cependant les gens ont de la difficulté à différencier entre la cache logicielle et la cache matérielle du disque dur, soyez donc prudent lorsque vous utiliserez cette terminologie; les caches font la même chose, mais différemment.

Cache de CD-ROM

Les disques durs sont rapides comme l'éclair comparativement à la majorité des lecteurs CD-ROM. Des ingénieurs astucieux ont décidé d'utiliser le disque dur ou la mémoire RAM ou les deux à la fois pour accélérer les accès au CD-ROM. Ils fonctionnement comme les caches de disques durs et conservent les données temporairement sur le disque dur ou dans la mémoire RAM, jusqu'à ce que l'ordinateur ait besoin de lire. Rappelez-vous que les CD-ROM ne peuvent être que lus, il n'y donc pas de cache en écriture pour ceux-ci. (On peut écrire sur certains lecteurs CD, mais ils ne sont pas appelés CD-ROM, plutôt CD-R). Il y a également des caches de lecture d'avance (prefetch) directement sur les lecteurs CD-ROM.

En conclusion, une cache est placée entre deux composantes possédant des vitesses différentes. Quelquefois la cache est matérielle, mais plus souvent elle est logicielle. Les caches ne sont parfois utilisées que pour emmagasiner de l'information, elles peuvent posséder également leur propre logique leur permettant de se vider et lire d'avance (prefetch) ce que vous risquez d'avoir besoin plus tard. Merci aux caches, nos ordinateurs et leurs composantes fonctionnent beaucoup plus rapidement grâce à elles.

 

Hiérarchie des mémoires

Memoire
Taille moyenne
Temps d'accès
Registre des mémoires  < 100 octets  1 cycle (qq nano-secondes)
Mémoire cache  Quelques kilo-octets  1 à 10 cycles
Mémoire centrale  Plusieurs méga-octets  5 à 20 cycles
Mémoire de masse  Plusieurs dizaine de Giga-octets  10 à 50 ms

 

Retour au menu

Unités d’entrée-sortie

Elles permettent de transférer des informations entre l’unité centrale et les périphériques qui composent l’ordinateur. Les plus courantes sont :

Le bus
Le bus n'est rien d'autre au fond qu'un simple câble de n lignes qui permet de faire passer des données du processeur à la mémoire et vice-versa. Il constitue une sorte d'autoroute qui traverse le PC, réglementée par le processeur. C'est une voie d'interconnexion et d'échanges permettant le transfert de données entre les éléments internes d'un ordinateur, le processeur et la mémoire centrale.

Le bus permet de véhiculer tous les signaux entre l’Unité Centrale et les périphériques. On peut le décomposer en trois grands groupes principaux qui sont :

Le bus de données qui sert a transporter l’information proprement dite et qui est constitué, pour les processeurs les plus récents, de 32 voir 64 lignes parallèles.

Le bus d’adresse qui permet d’identifier la case mémoire concernée par l’opération en cours (lecture ou écriture) qui est lui aussi de 32 voir 64 lignes parallèles.

Le bus de commande qui détermine le type d’opération a effectuer (lecture, écriture, sélection du composant, etc.).

En regard des vitesses de fonctionnement des processeurs actuels, celle des périphériques est bien inférieure. C’est pourquoi le bus est divisé au moins en trois sections ; l’une rapide dessert l’intérieur de l’Unité Centrale (mémoire cache,...), la seconde ,appelée bus local interface les périphériques du voisinage immédiat (vidéo, disque dur, ..) et la dernière connecte les périphériques les plus lents (carte son, clavier, ...). Le bus est donc divisé en cycles, généralement un multiple de la fréquence d’horloge du processeur, ce qui exige une synchronisation précise et parfaite.

Chaque périphérique doit être relié à un bus ou un canal par un contrôleur spécialisé et en plus il existe plusieurs types de contrôleurs de bus :

Bus ISA (Industry Standard Architecture) : C'est le bus originel du PC qui se décline en version 8 bits ou 16 bits. Il permet au maximum un transfert de 8 Mégabits par seconde soit 1Mo/s ce qui est parfois suffisant pour certains périphériques comme les cartes réseaux. C'est l'architecture du bus du PC/AT.
Bus LOCAL : Pour améliorer la vitesse des échanges entre le processeur et la mémoire, la solution adoptée consiste à installer un bus local entre ces deux éléments. Ce bus fonctionne à la vitesse du microprocesseur sans nécessiter une électronique coûteuse, en raison de sa faible longueur et du fait qu’aucun autre périphérique n’y est relié. La grande majorité des PC vendus aujourd’hui possèdent un bus local de ce type.

Bus VESA (VL-BUS) : La présence d’un bus local donna rapidement aux constructeurs l’envie de l’utiliser pour les périphériques demandant une grande vitesse de transfert. Il s’agit en premier lieu de l’affichage, dont les besoins croissent dans des proportions énormes avec l’adoption des interfaces graphiques telles que Windows et, dans une moindre mesure, des disques durs et des cartes réseau. Dans le cas d’un disque dur par exemple, il ne sert à rien de communiquer à une vitesse supérieure à celle du disque. Cependant, le problème peut être contourné en installant sur la carte d’interface du disque une quantité de mémoire servant de tampon. L’échange de données peut ainsi se faire à une vitesse maximale entre le processeur et le tampon, l’électronique de la carte se chargeant ensuite d’envoyer le contenu du tampon sur le disque pendant que le processeur fait autre chose. Un certain nombre de constructeurs ont développé leur propre bus local, incompatible avec les produits de marque différente. En revanche, certains se sont associés pour créer le standard VLSA (Video Electronic Association) qui avait pour objet initial de permettre l’installation d’une carte d’affichage sur le bus local.

Bus EISA (Extended Industry Standard Architecture) : C'est une évolution du bus ISA qui permet la reconnaissance automatique des périphériques connectés à ce bus.

Bus VLB (VL-Bus) : C'est un bus 32 bits qui permet la technique du "bus mastering".Il nécessite 2 cycles d'horloge pour transférer un mot de 32 bits à 33 Mhz dont le débit peut varier de 66Mo/s à 105 Mo/s en mode rafale.Le VL-Bus 2 quant à lui est un bus 64 bits fonctionnant à 50 Mhz et autorisant un taux de tranfert de 320 Mo/s.

Bus PCI : C'est un bus 32 bits indépendant, séparé du CPU et qui est contrôlé par ce que l'on appelle le "chipset" qui est en fait un véritable processeur. Il permet des taux de tranferts de 132 Mo/s et 264 Mo/s avec la norme 2.1.Il fonctionne à des fréquences de 33 voir 66 Mhz. Il permet lui aussi la technique du "bus mastering" et représente une partie de la norme plug and play. Conçu par Intel, ce bus connaît un beau succès.

Bus PCMCIA : C’est un bus développé principalement pour les portables. Ses performances sont relativement limitées. Sa largeur n’est que de 16 bits et sa vitesse ne dépasse pas 33 Mhz. Il ne possède que 26 lignes d’adresses, ce qui limite l’espace mémoire à 64 mégaoctets. Il n’autorise pas la prise de contrôle du bus par les périphériques. En revanche, il présente un certain nombre d’avantages, particulièrement intéressants dans le cas des ordinateurs portables. Le principal est la très petite taille des connecteurs et des cartes d’extension (format carte de crédit). De plus, c’est le seul qui autorise la connexion et la déconnexion des cartes d’extension sans couper l’alimentation de l’ordinateur.
 
 
Type de bus
Date d'introduction
Longueur des données
Fréquence d'horloge
Débit théorique
PC/XT 1981 8 bits 4,77 MHz 4,77 Mo/s
PC/AT 1985 16 bits 8,33 MHz 16,66 Mo/s
Nu Bus 1987/1993 32/32 bits 10/20 MHz 40/80 Mo/s
MCA 1987/1991/1994 32/64/64 bits 10/10/20 MHz 40/80/160 Mo/s
EISA 1988 32 bits 8,33 MHz 33 Mo/s
VL Bus 1991/1994/1994+ 32/32/64 bits 33/66/66 MHz 132/264/528 Mo/s
PCI Bus 1993/1994 32/64 bits 33/33 MHz 132/264 Mo/s
PCI Bus v2.1 1995 64 bits 66 MHz 528 Mo/s
PCI-X ou NGI/O 1999 64 bits 133 MHz 1 Go/s

Accès direct à la mémoire (DMA)
Le DMA permet à un périphérique d’accéder directement à la mémoire sans passer par le CPU , il est prioritaire sur celui-ci pour l’accès à la mémoire. Il est doté d’un registre d’adresses, d’un compteur, d’un registre de données et d’un dispositif de commande capable d’assurer le transfert. Il ne vérifie pas l’intégrité des informations qui est assurée par le contrôleur du périphérique concerné. Le fait d’utiliser un DMA pour gérer un périphérique améliore notablement les performances de celui-ci. La carte son utilise ce procédé.

Canaux d’entrées-sorties
Ils sont plus performants que les DMA et permettent à plusieurs périphériques de travailler simultanément; ce sont de véritables processeurs spécialisés. Ils sont programmables, enchaînent les opérations d’entrées-sorties et ont un accès prioritaire à la mémoire par la technique du "vol-de-cycle" et en plus, ils vérifient l’intégrité des informations échangées, ce que ne fait pas le DMA. Il existe deux types de canaux :

Le canal sélecteur totalement réservé au périphérique concerné. Il est particulièrement adapté aux échanges avec des unités rapides.

Le canal multiplexé partagé en plusieurs unités et appelé sous-canal. On peut ainsi travailler en parallèle et donc obtenir plusieurs accès simultanés sur un même périphérique; par contre, il est adapté aux périphériques à faible débit du fait de son parallélisme.

Système d’interruption
Pour mener à bien les échanges, les unités d’entrées-sorties doivent pouvoir signaler au CPU qu’elles sont connectées et prêtes à transférer des données ou bien que l’échange de celles-ci s’est bien déroulé. Le traitement d’une interruption se déroule en plusieurs étapes et il consiste à :

  • 1. arrêter le programme en cours.
  • 2. sauvegarder l’état de la machine.
  • 3. exécuter le programme de service de l’interruption.
  • 4. rétablir l’état de la machine.
  • 5. reprendre l’exécution du programme interrompu.
  • Il peut arriver que plusieurs interruptions arrivent simultanément Pour parer à cette éventualité, il existe des systèmes d’interruptions hiérarchisées à niveaux de priorités qui les gèrent non pas dans l’ordre chronologique d’arrivée mais dans l’ordre de priorité définit par le dispatcheur.

    Les interfaces d'entrées/sorties

    La spirale des données riches et multimédia que tout utilisateur de PC souhaite manipuler sur son système, s'accélère depuis plus de deux décennies. L'émergence des appareils numériques et de l'Internet a conforté cette accélération de la quantité de données utilisées sur le PC. Cette tendance a justifié l'utilisation de microprocesseurs de plus en plus rapides, de disques durs de plus en plus gros, d'écrans de plus en plus large, de connexions Internet de plus en plus haut débit. Les interfaces ont suivi la même tendance. Elles ont su s'adapter à la même Loi de Moore qui a imposé le doublement de la puissance tous les 18 mois. Peut-être d'une façon plus discrète, les interfaces ont toujours su assurer les échanges de données de plus en plus importants qui ont lieu dans la chaîne multimédia. C'est pour cette raison que le classement des interfaces suivant leur débit tel que décrit ci-après ne peut être qu'éphémère, car telle interface qui était à débit moyen à un instant donné aura tendance à devenir "d'entrée de gamme" quelques années plus tard pour assurer l'augmentation des performances que l'utilisateur souhaite.

    Les standards d'interface à faible débit

    Interface PS/2 : vitesse jusqu'à 25 kbits/s, utilisé pour connecter le clavier et la souris au PC, en cours de remplacement par l'interface USB pour cette fonction.

    Interface Infrarouge : vitesse jusqu'à 4 Mbits/s, utilisée pour connecter un agenda personnel, un téléphone GSM, toujours disponible sur les ordinateurs portables, rarement sur les PC de bureau, appelée à être remplacée par les interfaces utilisant la norme Bluetooth.

    Interface Série (UART en mode normal, EPP, ECP) : vitesse jusqu'à 115 kbits/s, utilisée pour connecter modem, agenda personnel, téléphone GSM, liaison de PC à PC, quasiment remplacée par l'interface USB dans toutes ses fonctions.

    Interface Port Jeux : vitesse jusqu'à 31 kbits/s, utilisé pour connecter manettes de jeux, volants et instruments de musique MIDI, en cours de remplacement par l'interface USB pour toutes ses applications

    Interface Parallèle : vitesse jusqu'à 1,2 Mbits/s, utilisée pour connecter une imprimante, pour une liaison PC à PC, en cours de remplacement par l'interface USB pour toutes ces fonctions.

    Les standards d'interface à débit moyen

    Interface USB 1.1 : provenant de l'acronyme Universal Serial Bus, il possède deux vitesses de transfert, 1,5 Mbits/s et 12 Mbits/s, utilisé pour connecter clavier, souris, manette de jeux, liaison PC à PC, appareil photo et caméra vidéo à faible résolution, lecteur MP3, agenda mais aussi lecteur de disquette standard ou ZIP, disque externe de sauvegarde, graveur de CD-RW, enceintes audio, un certain nombre d'interfaces émulant des interfaces de générations antérieures telles interfaces séries, parallèles, réseau, liaison PC à PC, SCSI, interface réseau sans fil à la norme 802.11b. Après un démarrage laborieux, l'interface USB est devenue l'interface de choix par défaut dans tous les cas où son débit limité n'est pas rédhibitoire. La généralisation de son utilisation provient en grande partie de la simplicité à ajouter ou retirer tout élément périphérique qui peut se faire "à chaud", c'est-à-dire sans arrêter le PC. La version 1.1 qui représente 99 % de la base installée est appelée à être progressivement remplacée par la nouvelle version 2.0, qui autorise un débit 40 fois supérieur.

    Les standards d'interface à haut débit

    Interface USB 2.0 : vitesse jusqu'à 480 Mbits/s, utilisable pour connecter clavier, souris, manette de jeux, liaison PC à PC, appareil photo et caméra vidéo à haute résolution, lecteur MP3, agenda, lecteur de disquette standard ou ZIP, disque dur externe, graveur de CD-RW.

    Interface SCSI : provenant de l'acronyme Small Computer System Interface, elle a été déclinée en plusieurs versions depuis son apparition : SCSI-1 à 32 Mbits/s, SCSI-2, 3 et Wide SCSI jusqu'à 160 Mbits/s, Ultra 2 Wide SCSI à 640 Mbits/s. Elle a toujours été utilisée pour connecter des disques durs de hautes performances mais également les CD-R, CD-RW, DVD, scanners, imprimantes. Elle permet la connexion d'un grand nombre de périphériques, 7 en général et même 31 pour le Fast 40 et Ultra 2. Outre sa rapidité, elle fait peu appel au processeur central du système grâce à la sophistication du contrôleur. Elle assure ainsi d'excellentes performances de débits, indépendantes de la charge du système. Mais de ce fait, l'interface n'est pas bon marché. Son plus gros inconvénient, la limitation de la longueur des connexions qui est inversement proportionnelle à la fréquence utilisée. Cet handicap a été levé par l'emploi de signaux différentiels sur l'Ultra 2 qui lui permet de passer de 1,5 m à 12 m, bien que le débit soit doublé par rapport à la version Ultra.

    Interface FireWire ou iLink : A été normalisée sous la référence IEEE 1394. Elle est aussi appelée SCSI Série du fait de son mode de transmission. Elle présente de grandes similitudes avec l'interface USB telles que le Plug & Play ou l'utilisation de trames. Des considérations totalement non techniques ne lui ont pas permis de figurer sur la carte mère ce qui a freiné sa dissémination. Elle est très utilisée dans les périphériques d'imagerie, en particulier dans les caméscopes au standard DV. Malgré des performances très bonnes, elle risque d'être fortement concurrencée par la version 2.0 de l'interface USB.

    Il est clair que la performance et le coût des bus séries tels que USB 2.0 et IEEE 1394 les rendent particulièrement attractifs pour les évolutions futures des architectures du PC. La connexion des disques, des graveurs et autres sauvegardes sera réalisée à l'avenir grâce à des bus série rapides au détriment des interfaces Ultra-DMA moins rapides et plus coûteuses.

    Les standards d'interface à très haut débit

    Interface AGP : Ce bus Accelerated Graphics Port a été introduit par Intel en 1998 pour relier directement la mémoire du système au processeur de la carte graphique. Avec un bus de 32 bits, il offre un débit maximum de 4,2 Gbits/s en version de base. Il a été décliné en versions AGP 2X, 4X et bientôt 8X, qui lui permettent d'atteindre la vitesse respectable de 33,6 Gbits/s. Le connecteur AGP ressemble énormément à un connecteur PCI, si ce n'est qu'il est de couleur brune. Par contre, il est placé plus en recul du bord de la carte-mère que les slots PCI.


    Interface Fiber Channel : Le dépassement de ce niveau de performances est tributaire de la résolution des problèmes de sensibilité aux parasites à des fréquences de plus en plus élevées. Ces problèmes sont plus facilement résolus en utilisant la lumière en lieu et place des signaux électromagnétiques. Cette direction a été empruntée par le Fiber Channel. Son implémentation existe en mode Canal et en mode Réseau. Bien que les performances de débits soient en forte augmentation, du fait de son coût encore élevé, cette interface ne trouve d'applications que dans les domaines de commutations extrêmement rapides (dans les équipements liés aux réseaux à très hauts débits) . Son utilisation dans un PC n'est pas encore à l'ordre du jour alors qu'on commence à la trouver sur les serveurs connectés à un réseau de stockage (SAN).

     

    Les composants principaux sur la carte mère


    Retour au menu
     

    Démarrage d'un ordinateur PC

    BIOS Basic Input Output System.

    Le matériel de tout ordinateur doit pouvoir coopérer avec les logiciels par une interface (moyen de communication). Le BIOS est un petit système de lancement permettant à votre ordinateur de lancer les autres logiciels à partir d'un lecteur de disquettes ou d'un disque rigide. Le BIOS est responsable du démarrage de l'ordinateur en fournissant un jeu d'instructions de base. Il effectue toutes les tâches nécessaires lors du démarrage: l'auto-test de démarrage et le lancement d'un système d'exploitation à partir d'une disquette ou du disque rigide. De plus, il fournit une interface avec le matériel de l'ordinateur au système d'exploitation sous la forme d'une librairie d'interruptions. Par exemple, chaque fois qu'une touche du clavier est enfoncée, le processeur utilise une interruption du BIOS pour lire la touche. C'est le même principe pour les autres composantes d'entrées/sorties (ports séries et parallèles, cartes vidéo, cartes de son, contrôleurs de disque, etc.). Certains vieux PC ne sont pas capables de communiquer avec les nouvelles composantes matérielles parce que leur BIOS ne les supporte pas; le système d'exploitation ne peut alors utiliser une interruption du BIOS pour communiquer avec ce matériel; ce problème peut être résolu en remplaçant le BIOS par un plus récent, qui supporte le nouveau matériel ou en installant un pilote (driver) pour ce matériel.

    CMOS Complementary Metal Oxide Semiconductor.

    Pour effectuer ses tâches, le BIOS a besoin de connaître plusieurs paramètres, soit la configuration du matériel de votre ordinateur. Ces informations sont conservées dans un petit espace mémoire (64 octets), appelé mémoire CMOS, ou simplement CMOS. L'alimentation du CMOS est assurée par une petite pile, ainsi son contenu est préservé même si on coupe l'alimentation du PC. Donc, on retrouve une pile et une petite quantité de mémoire sur la carte mère, qui ne perd jamais (ou presque...) ses informations. Cette mémoire faisait partie autrefois de l'horloge du processeur, maintenant elle fait partie d'un circuit intégré. CMOS est le nom d'une technologie qui a la caractéristique de consommer très peu d'énergie, ainsi la pile de l'ordinateur peut durer très longtemps. De nos jours il n'y a plus de piles sur les cartes mères des ordinateurs, mais un accumulateur (NiCad dans la plupart des cas). L'accumulateur est rechargé chaque fois que l'ordinateur est en marche. Si votre CMOS est alimenté par une pile, assurez-vous qu'elle est en bonne condition et qu'elle ne coule pas, car cela pourrait endommager la carte mère. Si la pile est défectueuse, votre CMOS perdra ses informations et donc la configuration du matériel et cela pourrait affecter le fonctionnement de votre ordinateur. Dans les vieux PC et PC/XT monolithiques, l'information sur la configuration du matériel est fournie par de micro-interrupteurs (DIP switch) sur la carte mère ou les cartes de périphériques. Certaines cartes mères possèdent une technologie appelée Dallas Nov-Ram, cela élimine le besoin d'avoir une pile : une cellule de lithium ayant une espérance de vie de 10 ans est collée dans la puce.

    CHIPSET

    Un PC est constitué de plusieurs composantes installées sur la carte mère: cartes d'expansion, mémoire, mémoire cache, raccord de clavier, etc. Le CHIPSET fourni un ensemble d'instructions permettant au processeur de communiquer avec les composantes de la carte mère. De nos jours la plupart des puces spécialisées : PIC (Programmable Interrupt Controller, contrôleur d'interruptions programmable), DMA (Direct Memory Access, accès direct à la mémoire), MMU (Memory Management Unit, unité de gestion de la mémoire), la cache, etc. sont tous rassemblés ensemble sur une, deux ou trois puces : le CHIPSET. Puisque les CHIPSET de marques différentes sont conçus différemment, pour chacun d'eux il existe une version spécifique de BIOS. Certains CHIPSET possèdent beaucoup de fonctionnalités, d'autres moins. OPTi est un CHIPSET couramment utilisé. Les cartes mères à haute intégration n'ont que quelques composantes : le processeur (CPU), le BIOS, un CHIPSET, une mémoire cache, la mémoire standard et une puce horloge.

    SETUP

    Setup est un ensemble de procédures permettant de configurer l'ordinateur selon ses caractéristiques matérielles. Cela vous permet de changer la configuration que le BIOS utilise pour configurer votre CHIPSET. Le PC d'origine d'IBM était configuré au moyen de micro-interrupteurs cachés sur la carte mère. L'utilisation des micro-interrupteurs sur ces PC et XT était extrêmement difficile. Les micro-interrupteurs sont encore utilisés pour la configuration de la mémoire et pour la sélection de la vitesse d'horloge. Lors de l'introduction du PC-AT, ce dernier renfermait une pile alimentant une mémoire CMOS pour conserver les informations de configuration. Le CMOS était configuré originellement par un programme situé sur une disquette de diagnostique, plus tard certains clones avaient des fonctions du BIOS permettant de configurer le CMOS lors de l'utilisation de certaines touches magiques. Malheureusement les CHIPSET contrôlant les processeurs modernes sont devenus de plus en plus complexes, ainsi la variété des paramètres du SETUP a augmenté également. De plus, il y a eu peu de standardisation dans la terminologie utilisée par la demi-douzaine de fabricants de BIOS, les trois douzaines de fabricants de CHIPSET et le très grands nombres de fabricants de cartes mères. Les plaintes concernant la documentation souvent très pauvre du SETUP des cartes mères sont très fréquentes. Pour en rajouter, certains paramètres sont définis par les fabricants de BIOS, d'autres par les fabricants de CHIPSET, d'autres encore par les fabricants de cartes mères.

    Unités périphériques

    Elles permettent la saisie, la visualisation , l’impression ,... des données par l’utilisateur. Ce sont les écrans, claviers, disques durs, imprimantes,... Dans cette rubrique, nous étudierons les disques durs, les systèmes d'affichage et le modem.

    Les disques durs
    Un disque magnétique est constitué par une plaque métallique (aluminium) circulaire, recouverte d’une mince couche d’oxyde de fer. L’information est enregistrée sur la surface de ce disque, le long de pistes concentriques de quelques microns de largeur. La capacité d’une piste varie d’un modèle à l’autre, cependant sur un même disque elle est constante pour toutes les pistes concentriques, ce qui implique une densité d’enregistrement variable. Chaque piste est divisée en secteurs.

    Dans certains systèmes il y a plusieurs disques superposés et regroupés autour d’un axe. Dans ce cas les disques sont séparés par un espace de quelques millimètres qui permet le passage du mécanisme pour effectuer le lecture et l’écriture.

    Caractéristiques d’un disque :

    - Format (pouces) : 3,5  5,25...

    - Capacité formatée (Go) : 9 Go,  36 Go, 120 Go...

    - Nombre de plateaux : 2, 3, 4...

    - Nombre de cylindres : plusieurs milliers

    - Nombre de tête : 4, 6,..

    - Taille de la mémoire tampon (ko) : 96ko 512ko...

    - Temps d’accès moyen (ms) : 10-15ms

    - Vitesse de rotation (rpm) : 7000 - 10000 rpm

    - Technique d’enregistrement : RLL, PRML

    - Densité d’enregistrement (bpi) :  env 100000 bpi

    - Densité de pistes (tpi) : 4000 à 7000 tpi

    - Type d’interface : EIDE, SCSI, ...

    Le système RAID
    Le système RAID est un système à tolérance de pannes. Il permet de regrouper plusieurs disques pour n’en former qu’un seul. Ceci améliore la fiabilité car il faudrait que plusieurs disques tombent en panne en même temps pour que des données soit perdues.

    Il existe plusieurs niveaux de RAID mais les plus souvent retenus sont le RAID 0, le RAID 1 et le RAID 5.

    Lorsqu’un des disques tombe en panne, on peut le remplacer facilement (c’est une armoire contenant plusieurs disques sous forme de tiroir) sans perturber le système car tous contiennent les mêmes informations et se comportent tous comme un seul et même disque.

    RAID 0  ( RAID 0 n’est pas un système à tolérance de pannes, il améliore seulement le taux de transfert !)
    Les informations sont réparties sur plusieurs disques sans aucun contrôle de parité. Il faut au minimum 2 disques

    Avantage : très bonnes performances puisque l’information est découpée sur plusieurs disques. Les disques vont traiter indépendamment et pratiquement en parallèle leur morceau de donnée avant de le transmettre au bus.

    Inconvénient : si un des disques tombe en panne, il est impossible de récupérer les données inscrites. De ce fait toutes les données sont perdues.

    RAID 1
    Il existe deux techniques du RAID 1 : le mirroring et le duplexing. Dans le premier cas, on utilise un contrôleur et dans le second on utilise deux contrôleurs. Mais le principe de base de ces deux techniques est de faire la copie exacte du premier disque sur le second. De ce fait, on se retrouve avec deux disques parfaitement identiques. Il faut un nombre de disques pair, deux au minimum.

    Avantage: gain en sécurité. Si un disque lâche, on a toujours le second qui prend la main jusqu'à réparation du premier. Il est possible de recopier les informations du second disque sur le premier, même en cours de fonctionnement du serveur. Bien entendu les performances du serveur seront plus faibles pendant la recopie du disque.

    Inconvénient: puisqu’il faut absolument une paire de disque, la solution est chère. Puisqu’avec deux  disques de 2Gbytes, on n’aura que 2Gbytes de capacité disque utilisable.

    Raid 5
    C’est une technique qui ressemble au RAID 0 mais la grande différence est que cette fois, il y a un contrôle de parité. Les données sont donc toujours réparties sur tous les disques. Il y a en plus un calcul de parité qui ce fait à l’écriture et la lecture des donnés. Cette parité est aussi répartie sur tous les disques. Il faut au minimum 3 disques.

    Avantage : Si un disque tombe en panne, grâce au contrôle de parité on peu le remplacer et reconstruire les données plus ou moins rapidement selon la qualité du contrôleur. C’est aussi une solution moins chère que le RAID 1 car la capacité de stockage est de N disques - 1, soit au minimum  66%. C’est une solution très intéressante lorsqu’on a beaucoup de disques.

    Inconvénient : Le temps de reconstruction des données peut être assez lent. Il faut à chaque fois recalculer la parité des données.

    Pour tous ces niveaux de RAID, on peut utiliser un contrôleur standard ou un contrôleur RAID.

    Contrôleur standard : La gestion RAID se fait par logiciel (avec Windows NT™ par exemple). C’est une solution peu onéreuse mais lente.

    Contrôleur RAID : La gestion est effectuée par le matériel: il y a un processeur dédié et de la mémoire sur le contrôleur pour gérer le RAID.
    Cette solution est totalement indépendante du système d’exploitation. Elle est très rapide mais malheureusement son prix est encore élevé.

     
    HD1
    HD2
    HD3
    HD4
    RAID 0
     
     
     
    Information 1
    Information 2
    Information 3
    Information 4
    Information 5
    Information 6
    Information 7
    Information 8
    RAID 1
     
     
     
    Information 1
    Information 1
    Information 2
    Information 2
    Information 3
    Information 3
    Information 4
    Information 4
    RAID 5
     
     
     
    Information 1
    Information 2
    Information 3
    Parité (ECC 1, 2, 3)
    Parité (ECC 4, 5, 6)
    Information 4
    Information 5
    Information 6
    Information 7
    Parité (ECC 7, 8, 9)
    Information 8
    Information 9

    Retour au menu
     

    Le système d'affichage

    Le système d'affichage est composé d'une carte vidéo (ou contrôleur de graphiques) et un certain type d'affichage vidéo. Les performances d'un système d'affichage sont mesurées selon deux catégories de base: vitesse et résolution.

    La vitesse, en termes de rapidité de mise à jour de la vidéo, est mesurée en termes de taux de rafraîchissement. Avec un taux de rafraîchissement de 72 Hz (Hz = Hertz; ou 72 fois par seconde) ou mieux, les objets en mouvement apparaissent fluides et réalistes. En utilisant un taux de rafraîchissement de moins de 72 Hz, les graphiques «sautillent» avec des pauses notables dans les images en mouvement. Les taux de rafraîchissement sous les 72 Hz peuvent également causer un scintillement irritant de l'ensemble de l'image vidéo.

    La résolution (qualité de l'image) concerne la quantité de détails rendue par une image vidéo. La résolution est définie par le nombre de pixels (éléments d'image) que peut supporter un affichage vidéo. Ainsi, plus le nombre de pixels est grand et plus la résolution sera grande. Un bon système d'affichage devrait offrir au moins 1,024 pixels horizontaux par 768 pixels verticaux. Dans un système d'affichage idéal, une palette de 65,000 couleurs devrait être supportée pour chaque pixel. Ces paramètres (nombre de pixels et taux de rafraîchissement) sont associés pour établir le taux de la performance globale mesuré en termes de bande passante (bandwith). Plus grande est la bande passante et meilleure sera la performance du système d'affichage.

    La carte vidéo

    La fonction première de la carte vidéo est de convertir les informations de textes et de graphiques emmagasinées dans l'ordinateur en informations vidéo haute-résolution qui peuvent être affichées.

    Accélérateur de graphiques

    Cette puce est utilisée pour contrôler les fonctions vidéo. Plutôt que d'utiliser le microprocesseur du système pour faire la maintenance de la vidéo, c'est cette puce qui effectue ces fonctions, libérant le microprocesseur pour d'autres tâches, ce qui en retour augmente les performances du système. D'où le terme «accélérateur de graphiques».

    VRAM Video Random Access Memory (Mémoire vive vidéo),

    C'est une mémoire qui est dédiée au traitement de la vidéo uniquement, augmentant ainsi les performances du système. La mémoire centrale du système peut traiter d'autres informations sans se préoccuper de l'information vidéo.

    DAC

    C'est le convertisseur numérique-analogique qui prend l'information vidéo numérique emmagasinée dans la VRAM et la convertie en signal analogique vidéo qui est envoyé directement à l'affichage vidéo.

    Affichages vidéo

    Il y a deux groupes de base d'affichages vidéo qui peuvent être utilisés avec une carte vidéo : Tubes à cathodes (CRT) et les dispositifs électroniques. Premièrement, examinons le plus ancien et, dans la majorité des cas, le type d'affichage offrant la meilleure qualité :

    CRT : Le tube à cathodes fut introduit il y a environ 50 ans et il s'améliore d'années en années. Une image est reproduite sur le devant du CRT par la stimulation d'un matériel à base de phosphore, en utilisant un faisceau d'électrons, le phosphore émettant en retour une lumière. Lorsque le faisceau d'électrons frappe le phosphore avec une grande quantité d'énergie, l'image reproduite sur l'écran est brillante. Un faisceau d'électrons avec une quantité d'énergie plus basse produira une image plus pâle à l'écran. La dimension de l'écran est toujours mesurée diagonalement sur la surface en verre de l'écran. La carte vidéo contrôle les bobines de déviation qui balaient le faisceau d'électrons sur l'écran, elle contrôle également son intensité. Le haut voltage appliqué sur l'écran est utilisé pour attirer les électrons sur la surface du CRT. Voilà pourquoi vous pouvez sentir l'électricité statique présente sur la surface en verre de la plupart des CRT. C'est la raison pour laquelle, également, vous ne devriez jamais avoir accès à l'intérieur d'un moniteur vidéo à moins que vous ne vouliez être traversé par un voltage potentiellement mortel. La hauteur du point (dot pitch) fait référence à la proximité des blocs de phosphore entre eux. Lorsque les blocs de phosphore sont rapprochés, l'image apparaît nette et détaillée. Finalement, plus ils sont rapprochés et meilleure sera l'image. Cette distance est mesurée en millimètres. Une hauteur de point de 0.28 mm (ou moins) est attendue d'un bon moniteur. Sur les moniteurs couleurs, trois faisceaux d'électrons indépendants sont utilisés pour contrôler séparément les phosphores rouge, vert et bleu. Lorsque les trois phosphores sont illuminés également, la couleur blanche apparaît même s'il n'y a pas de phosphore blanc dans le moniteur (une autre illusion). En variant l'intensité de ces trois faisceaux indépendants, plusieurs couleurs peuvent être obtenues par pixel (au moins 65,000). Si vous examinez attentivement votre moniteur sur les bords d'un objet blanc, vous pourrez voir les phosphores rouge, vert et bleu séparément. S'ils sont faciles à voir, vous pouvez avoir un problème de convergence sur votre moniteur. Un moniteur correctement aligné aura les faisceaux d'électrons rouge, vert et bleu qui convergent sur les phosphores correctement, produisant un objet apparemment blanc. Si la convergence ne se fait pas, les phosphores rouge, vert et bleu seront très faciles à voir, plus particulièrement sur les bords de l'écran.

    LCD : Un écran à cristaux liquides (LCD) est un dispositif entièrement électronique, cela signifie qu'il n'a pas besoin d'être sous vide, et n'a pas beasoin d'un haut voltage et des bobines de déviation comme un CRT. Un LCD est ainsi beaucoup plus mince et peut être alimenté facilement par piles, le rendant idéal pour les ordinateurs portatifs. L'assemblage du LCD est éclairé par l'arrière avec une lampe fluorescente. Cette lumière est placée derrière une matrice composée d'un film mince à transistors (TFT) qui est situé derrière le film à cristaux liquides. Les TFT et les cristaux liquides se comportent comme des interrupteurs lumineux, laissant passer ou bloquant la lumière de la lampe fluorescente aux travers de filtres de couleurs. Ces petits TFT permettent aux cristaux liquides de laisser passer la lumière lorsqu'ils sont on ou de bloquer la lumière lorsqu'ils sont off. L'allumage de la lampe fluorescente derrière les filtres rouge, vert et bleu produit une image sur le devant de l'écran du LCD. Tout comme le CRT, plusieurs combinaisons de couleurs peuvent être reproduites avec les écrans LCD.

    Les Modems
     Il est très fréquent, de nos jours, qu’un ordinateur entre en relation avec un ordinateur ou un terminal distant. La simple utilisation du Minitel pour accéder à l’annuaire électronique en est un exemple type. Les applications informatiques à distance utilisent par exemple le réseau téléphonique comme moyen de communication.

    Dans le cas du réseau téléphonique, il y a inadéquation entre le fait qu’il soit adapté à la transmission de la voix humaine et qu’on veuille l’utiliser à la transmission de signaux codés sous forme de bits à 0 ou à 1 et correspondant à des tensions électriques V1 et V2, par exemple +5 volts et 0 volt respectivement.

    Ces signaux à deux niveaux, transmis tels quels sur une ligne téléphonique par exemple, subiraient d’importantes distorsions et modification qui entraîneraient des erreurs de transmissions inévitables. En revanche, un signal sinusoïdale d’une fréquence comprise entre 1000 et 2000 Hz est transmis dans de bonnes conditions sur le réseau téléphonique pratiquement sans subir de distorsion; C’est cette façon de procéder qui est mise en oeuvre dans la plupart des systèmes de communication analogique.

    Les paramètres d’un signal sinusoïdal sont :
    - l’amplitude.

    - la fréquence.

    - la phase.

     Ils sont fixes et constants. En faisant varier l’un des paramètres du signal sinusoïdal au rythme d’apparition des bits (0 ou 1), il est possible de transmettre des signaux binaires. Cette action sur le signal est appelée la modulation. Le signal de base qui subit la modulation est appelé courant porteur ou porteuse.

    La rapidité de modulation exprimée en baud correspond au nombre d’états de modulation par seconde (on peut dire aussi, le nombre d’intervalles de temps élémentaire de modulation). Lorsque l’on transmet deux ou plusieurs bits par état de modulation, le débit en bit/s sur la ligne est supérieur à la rapidité de modulation (en baud).

    Si l’on doit transmettre des caractères codés sur 8 bits, il est préférable de disposer d’une structure d’interconnexion permettant la transmission simultanée (en parallèle) des 8 bits d’un caractère. La ligne téléphonique ne comporte qu’une paire de fils ou canal de transmission. Il est donc nécessaire de transmettre les bits en série, les uns à la suite des autres, sur le réseau téléphonique. Le caractère analogique du réseau téléphonique impose de moduler les signaux numériques issus des équipements informatiques. Il est nécessaire d’insérer un équipement qui réalise cette modulation; c’est le modem qui joue le double rôle d’émetteur et de récepteur des signaux modulés. C’est ainsi que le modem transmet les bits d’un caractère en modulant une porteuse au rythme d’arrivée des bits dans l’intervalle élémentaire de modulation. Par exemple, un modem à 1200 bauds signifie que l’intervalle du temps de modulation est de 833 µs. A l’une des extrémités de la ligne c’est le modem qui réalise la modulation de signal au rythme des bits de données, à l’autre extrémité c’est le modem qui reconstitue les bits de données à partir du signal modulé reçu. Les bits sont transmis à intervalles réguliers; dès que le modem récepteur détermine le début d’une transmission, son horloge interne est synchronisée avec celle du modem émetteur. Le prélèvement des caractères peut alors se faire au même rythme.

    Retour au menu   Home Page