:: Carte et connectique du disque dur ::

 

Les dispositifs du disque dur sont contrôlés par sa carte (ou logic board). C'est elle qui gère les stratégies de lecture et d'écriture, celles de de transfert de donnée, ainsi que le cache (ou mémoire cache). C'est sur ces différentes fonctions que nous allons nous pencher dans cette partie.

1) Stratégies de lecture et d'écritures

Les disques durs peuvent recevoir des dizaines de requêtes de lectures quasi-simultanées. Ce sont les algorithmes contenus dans leur carte qui leur permettent de choisir quelles seront les requêtes qui seront servies en premier. Il existe et a existé pour cela plusieurs types de stratégies:

A) FIFO (First In, First Out)

Le système, très simple, était utilisé pour les premiers disques, alors que leur taille (virtuelle) était réduite. Il consiste à aller chercher directement les informations de la première requête, puis dans l'ordre de la seconde, la troisième...
S'il fonctionnait bien au départ, sa simplicité fait qu'à l'époque actuelle, il mettrait beaucoup plus de temps que les autres systèmes, puisque le disque dur était parfois obligé de faire presque un tour complet pour aller chercher une information.
 

B) STO (Seek Time Optimization)

Le but de cette stratégie est d'optimiser le temps de recherche. Le temps de recherche est le temps que met le disque dur entre l'accomplissement de deux requêtes. Elle fonctionne sur le principe de l'ascenseur, répondant d'abord aux requêtes proches avant de répondre à celles qui sont plus éloignées. Elle fonctionne en comparant le numéro de cylindre de chaque requêtes par rapport à la position actuelle des têtes de lectures. Ce système est beaucoup plus rapide que le FIFO, mais génère néanmoins un problème: Une requête dont la position de l'information est sur un autre cylindre mais tout proche peut avoir à attendre très longtemps avant d'avoir sa réponse.
 

C) ATO (Acces Time Optimization)

Ce système est une évolution du STO, qui tient compte non seulement du numéro de cylindre mais étalement du numéro de secteur du l'information. Ainsi, deux requêtes sur des cylindres différents mais sur le même numéro de secteur peuvent être effectuées avant une autre sur le même cylindre, mais un secteur opposé (de l'autre côté du disque). Il va sans dire que les algorithmes de commandes de ce système sont beaucoup plus complexes.

 

2) Stratégies de transfert

Un disque dur ne lit pas et n'écrit pas sans requêtes. Il doit en outre renvoyer les résultats de ces requêtes. Pour cela, il utilise des systèmes de communications qui changent selon l'interface utilisée.

A) Interface ATA-IDE

Le système ATA (Advanced Technology Attachment) permet de connecter directement deux disques durs à la carte mère. L'un des deux doit être alors déclaré maître et l'autre esclave. Les requêtes adressées au disque dur maître et les réponses de celui-ci seront toujours analysées préférentiellement. C'est pour cette raison que l'OS (Operating system -  Système d'exploitation) doit être installé sur le maître.
La norme ATA, mise au point par l'ANSI en 1994, relie les disques durs à la carte mère par le biais d'une nappe IDE, constituée de 4 fils parallèles, d'un connecteur vers la carte mère et de deux connecteurs vers les disques.
Le système ATA est dit asynchrone, c'est-à-dire que les données ne sont envoyées que sur un front ascendant de l'horloge.
Le standard ATA est originalement prévu pour connecter des disques durs, toutefois une extension nommée ATAPI (ATA Packet Interface) a été développée afin de pouvoir interfacer d'autres périphériques de stockage, tels les lecteurs de disques, sur une interface ATA.
Une nouvelle norme, le SATA ( Serial ATA ), datant de février 2003, utilise le même système que l'ATA, mais par le biais d'une connexion en série. Elle à l'avantage de fonctionner à des fréquences plus élevées que l'ATA (que l'on appelle également PATA - Parallel ATA ).

La transmission des données se fait par le biais de deux protocoles nommés PIO et DMA.

- Le protocole PIO (Progammed Input/Output) permet les transferts de données entre le disque dur et la RAM, sous la supervision du processeur. Malheureusement, un très grand nombre d'accès au disque peut rapidement surcharger le processeur. Il existe 5 modes PIO définissant le taux de transfert maximal comme le montre le tableau suivant :

Mode PIO

Débit (Mo/s)

Mode 0

3.3

Mode 1

5.2

Mode 2

8.3

Mode 3

11.1

Mode 4

16.7

 

- Le protocole DMA (Direct Memory Access) permet à des périphériques d'accéder directement à la mémoire, sans passer par le processeur, entraînant ainsi un désengorgement de celui-ci. Il existe 3 modes DMA et deux types de modes, nommés "single word" et "multi-word". Le type "single word" permet d'envoyer un "mot" par session de transfert ( 1 mot = 2octets = 16 bits ). Le type "mutli-word", quand à lui, permet d'en envoyer plusieurs. On obtient ainsi les débits suivants:

Mode DMA

Débit (Mo/s)

Single word

Multiword

0

2.1

4.2

1

4.2

13.3

2

8.3

16.7

 

L'Ultra-DMA est un système récent permettant d'optimiser l'ATA. Il ne fonctionne plus sur front ascendant uniquement, mais sur les deux fronts (ascendant et descendant), doublant ainsi le débit. Il existe au total 7 modes UDMA définissant la fréquence de transfert.

Mode UDMA

Débit (Mo/s)

1

16.7

2

25.0

3

33.3

4

44.4

5

66.7

6

100

7

133

 

Il y eu plusieurs normes ATA au cours du temps. En voici le récapitulatif, avec les modes et les débits supportés.

Nom

Date

Mode (PIO/DMA)

Débit (Mo/s)

ATA-1

1994

PIO mode 0

3,3

PIO mode 1

5,2

PIO mode 2

8,3

DMA mode 0

8,3

ATA-2

1996

PIO mode 3

11,1

PIO mode 4

16,7

DMA mode 1

13,3

DMA mode 2

16,7

ATA-3

1997

PIO mode 3

11,1

PIO mode 4

16,7

DMA mode 1

13,3

DMA mode 2

16,7

ATA-4/ATAPI-4

1998

UDMA mode 0

16,7

UDMA mode 1

25

UDMA mode 2

33,3

ATA-5/ATAPI-5

2000

UDMA mode 3

44,4

UDMA mode 4

66,7

ATA-6/ATAPI-6

2001

UDMA mode 5

100

ATA-7/ATAPI-7

2002

UDMA mode 6

133

SATA 1

2003

_

187,5

 

 

B) Interface SCSI

 Le système SCSI est moins courant que l'IDE dans le domaine public. Il permet la connexion de plusieurs périphériques par le biais d'une carte nommé contrôleur SCSI. C'est cette carte qui gère l'ensemble des périphériques grâce à un protocole du même nom.
Il existe 2 tailles de bus SCSI qui permettent de connecter 8 ou 16 périphériques. Comme la carte elle-même tiens lieu de périphérique, le nombre réel de disques possibles est de 7 ou 15.

Il existe deux types de bus SCSI :

- le bus asymétrique, noté SE (pour Single Ended), basé sur une architecture parallèle dans laquelle chaque canal circule sur un fil, ce qui le rend sensible aux interférences. Les nappes SCSI en mode SE possèdent donc 8 fils dans le cas de transmission 8 bits ou 16 fils pour un câble 16 bits. Il s'agit du type de bus SCSI le plus répandu

- le bus différentiel permet le transport des signaux sur une paire de fils. L’information est codée par différence entre les deux fils. On distingue généralement le mode LVD (Low Voltage Differential, en français différentiel basse tension), basé sur des signaux 3.3V, et le mode HVD (High Voltage differential, en français différentiel haute tension), utilisant des signaux 5V.

 

Norme

Largeur du bus

Bande passante

Connectique

SCSI-1 (Fast-5 SCSI)

8 bits

5 Mo/sec

50 broches (bus asymétrique ou différentiel)

SCSI-2 - Fast-10 SCSI

8 bits

10 Mo/sec

50 broches (bus asymétrique ou différentiel)

SCSI-2 - Wide

16 bits

20 Mo/sec

50 broches (bus asymétrique ou différentiel)

SCSI-2 - Fast Wide 32 bits

32 bits

40 Mo/sec

68 broches (bus asymétrique ou différentiel)

SCSI-2 - Ultra SCSI-2 (Fast-20 SCSI)

8 bits

20 Mo/sec

50 broches (bus asymétrique ou différentiel)

SCSI-2 - Ultra Wide SCSI-2

16 bits

40 Mo/sec

50 broches (bus asymétrique ou différentiel)

SCSI-3 - Ultra-2 SCSI (Fast-40 SCSI)

8 bits

40 Mo/sec

50 broches (bus asymétrique ou différentiel)

SCSI-3 - Ultra-2 Wide SCSI

16 bits

80 Mo/sec

68 broches (bus différentiel)

SCSI-3 - Ultra-160 (Ultra-3 SCSI ou Fast-80 SCSI)

16 bits

160 Mo/sec

68 broches (bus différentiel)

SCSI-3 - Ultra-320 (Ultra-4 SCSI ou Fast-160 SCSI)

16 bits

320 Mo/sec

68 broches (bus différentiel)

SCSI-3 - Ultra-640 (Ultra-5 SCSI)

16 bits

640 Mo/sec

68 broches (bus différentiel)

 

 

 

 

 

 

 

 

 

 

 

 

3) La mémoire cache

La mémoire cache est une zone de mémoire vive intégrée au disque dur, qui permet de faire office d'amortisseur. Son utilité est de servir de lien entre un système rapide (le processeur) et un autre plus lent (le disque dur). Pour cela, elle garde temporairement en mémoire les données issues du dispositif rapide, pour les renvoyer à cadence plus modérée vers le système lent, et à l'inverse conserver les informations issues du composant lent pour les renvoyer en bloc vers le rapide.
Depuis quelques années, la taille du cache tend à augmenter énormément, puisque le standard était de 256Ko en 1990, et que certains disques ont maintenant un cache de 16 Mo. Cet effet à 2 causes: la baisse du prix de la mémoire vive (actuellement moins de 1€ / Mo), et le Marketing. Augmenter sensiblement la taille du cache fait croire au consommateur que celui-ci à une grande importance sur le bon fonctionnement de l'ordinateur, chose totalement fausse! Un test récent utilisant des Benchmarks a prouvé qu'il y avait très peu de différences entre un cache de 512Ko et un cache de 1Mo.