Le stockage magnétique est essentiellement un milieu analogue. Les données que un PC stocke là-dessus, cependant, est l'informationthat numérique est, 1s et 0s. Quand la commande envoie l'information numérique à une tête d'enregistrement magnétique, la tête crée des domaines magnétiques sur le support de stockage avec des polarités spécifiques correspondant au positif et des tensions négatives que la commande applique à la tête. Les inversions de flux forment les frontières entre les secteurs de la polarité positive et négative que le contrôleur d'entraînement emploie pour coder les données numériques sur le milieu analogue. Pendant une opération "lecture", chaque inversion de flux que la commande détecte produit d'une impulsion positive ou négative que le dispositif emploie pour reconstruire les données binaires originales.
Pour optimiser le placement des transitions de flux pendant le stockage magnétique, la commande passe les données numériques crues d'entrée par un dispositif appelé un encoder/decoder (endec), qui convertit l'information binaire crue en forme d'onde conçue pour placer de façon optimale les transitions de flux (impulsions) sur les médias. Pendant une opération "lecture", l'endec renverse le processus et décode le train d'impulsion de nouveau dans les données binaires originales. Au cours des années, plusieurs arrangements pour des données de codage de cette manière ont été développés ; certains sont meilleurs ou plus efficaces que d'autres, que vous voyez plus tard dans cette section.
D'autres descriptions du processus de codage de données pourraient être beaucoup plus simples, mais elles omettent les faits qui en font des issues liées à la fiabilité d'entraînement dur tellement criticalnamely, chronométrant. Les ingénieurs et les concepteurs poussent constamment l'enveloppe pour bourrer de plus en plus bits de données dans la quantité limitée d'inversions magnétiques de flux par pouce. Ce qu'elles ont monté avec, essentiellement, est une conception dans laquelle les bits de données sont décodés non seulement de la présence ou de l'absence des inversions de flux, mais de la synchronisation entre elles. Plus elles peuvent chronométrer les inversions plus exactement, la plus peut être codé (et être plus tard décodé information) de cette information de synchronisation.
Sous n'importe quelle forme de signalisation binaire, l'utilisation de la synchronisation est significative. En interprétant lue ou écrivez la forme d'onde, la synchronisation de chaque événement de transition de tension est critique. La synchronisation est ce qui définit un peu particulier ou cellthat de transition est, la fenêtre de temps dans laquelle la commande est écriture ou lecture une transition. Si la synchronisation est éteinte, une transition donnée de tension pourrait être identifiée au mauvais moment en tant qu'étant dans une cellule différente, qui jetterait la conversion ou le codage au loin, ayant pour résultat le peu étant manqué, supplémentaire, ou être mal interprétée. Pour s'assurer que la synchronisation est précise, les dispositifs de transmission et de réception doivent être dans la synchronisation parfaite. Par exemple, si l'enregistrement d'un 0 est fait en ne plaçant aucune transition sur le disque pour une période ou une cellule de temps donnée, imaginez qu'en enregistrant dix bits 0 dans un rowyou aurait une longue période de dix périodes ou cellules de temps sans des transitions.
|
|
Imaginez maintenant que l'horloge sur l'encodeur avait lieu légèrement outre de temps tandis que des données de lecture par rapport à quand on lui a à l'origine écrit. S'il étaient rapide, l'encodeur pourrait penser cela pendant ce long bout droit de 10 cellules sans des transitions, seulement 9 cellules s'étaient écoulées réellement. Ou s'il étaient lent, il pourrait penser que 11 cellules s'étaient écoulées à la place. En l'un ou l'autre cas, ceci aurait comme conséquence une erreur de lecture, signifiant que le peu qui ont été à l'origine écrits ne soyez pas lu en tant qu'en étant les mêmes. Pour empêcher des erreurs de synchronisation dans le lecteur encoding/decoding, la synchronisation parfaite est nécessaire entre la lecture et les processus d'écriture. Cette synchronisation souvent est accomplie en ajoutant un signal de synchronisation séparé, appelé un signal d'horloge, à la transmission entre les deux dispositifs. L'horloge et les signaux de données peuvent être combinés et également transmis comme signal simple. La plupart des arrangements de codage de données magnétiques emploient ce type de combinaison des signaux d'horloge et de données.
Ajouter un signal d'horloge aux données s'assure que les dispositifs communiquants peuvent exactement interpréter les différentes cellules de peu. Chaque cellule de peu est liée par deux autres cellules contenant les transitions d'horloge. À côté d'envoyer l'information d'horloge avec les données, les horloges restent dans la synchro, même si le milieu contient une longue corde des bits 0 identiques. Malheureusement, les cellules de transition utilisées seulement pour la synchronisation prennent l'espace sur le milieu qui pourrait autrement être employé pour des données.
Puisque le nombre de transitions de flux que une commande peut enregistrer dans un espace donné sur un milieu particulier est limité par la nature physique ou la densité du milieu et de la technologie principale, ingénieurs d'entraînement ont développé de diverses manières de coder les données en employant un nombre minimum d'inversions de flux (prenant en compte le fait que quelques inversions de flux utilisées seulement pour synchroniser sont exigées). Le codage de signal permet au système de faire l'utilisation maximum d'une technologie de matériel donnée d'entraînement.
Bien que divers des arrangements de codage ont été essayés, seulement quelques uns sont populaires aujourd'hui. Au cours des années, ces trois types de base ont été les plus populaires :
Modulation De Fréquence
Modulation Modifiée De Fréquence
Courez La Longueur Limitée
Codage de FM
Une des techniques les plus tôt pour coder des données pour le stockage magnétique s'appelle le codage de modulation de fréquence. Ce les schemesometimes de codage ont appelé des encodingwas de Simple-Single-Density utilisés dans les unités de disquettes les plus tôt installées dans des systèmes de PC. L'ordinateur portatif original d'Osborne, par exemple, a employé ces unités de disquettes de Simple-Densité, qui ont stocké au sujet de 80KB des données sur un disque simple. Bien qu'il ait été populaire jusqu'aux années 70 en retard, le codage de FM n'est plus employé.
Le codage modifié de modulation de fréquence a été conçu pour réduire le nombre d'inversions de flux employées dans l'arrangement de codage original de FM et, en conséquence, pour emballer plus de données sur le disque. Le codage de MFM réduit au minimum l'utilisation des transitions d'horloge, partant de plus de pièce pour les données. Il enregistre des transitions d'horloge seulement quand des 0 bits stocké sont précédés par encore 0 bits ; dans tous autres cas, une transition d'horloge n'est pas exigée. Puisque MFM réduit au minimum l'utilisation des transitions d'horloge, il peut doubler la fréquence de base employée par le codage de FM, lui permettant de stocker deux fois autant de bits d'informations dans le même nombre de transitions de flux.
Puisque le codage de MFM écrit deux fois autant de bits d'informations en employant le même nombre d'inversions de flux que FM, la fréquence d'horloge des données est doublée et la commande voit réellement le même nombre d'inversions totales de flux qu'avec FM. Ceci signifie que une commande employant le codage de MFM lit et écrit des données deux fois à la vitesse de FM, quoique la commande voie les inversions de flux arriver à la même fréquence que dans FM.
Puisqu'il est deux fois plus efficace que le codage de FM, MFM codant également s'est appelé l'enregistrement de Double-Double-Density. MFM est employé dans pratiquement toutes les unités de disquettes de PC aujourd'hui et a été employé dans presque tous les disques durs de PC pendant un certain nombre d'années. Aujourd'hui, pratiquement tous les disques durs emploient des variations du codage de RLL, qui fournit encore une plus grande efficacité que MFM.
| Valeur De Bit D'Informations | Codage De Flux |
|---|---|
| 1 | NT |
| 0 a précédé par 0 | Tn |
| 0 a précédé par 1 | NN |
| Transition de T = de flux | |
| N = aucune transition de flux | |
L'arrangement de codage le plus populaire d'aujourd'hui pour les disques durs, appelé longueur de course limitée, emballe jusqu'deux fois à l'information sur un disque donné que MFM fait et trois fois autant l'information que FM. Dans le codage de RLL, la commande combine des groupes de peu dans une unité pour produire des modèles spécifiques des inversions de flux. En combinant l'horloge et les signaux de données dans ces modèles, la fréquence de base peut être encore augmentée tout en maintenant la même distance de base entre les transitions de flux sur le support de stockage.
Codage de RLL inventé par IBM et d'abord utilisé la méthode dans plusieurs de ses unités de disques d'unité centrale. Pendant la fin des années 1980, l'industrie de disque dur de PC a commencé à employer des arrangements de codage de RLL pour augmenter les capacités de mémoire des disques durs de PC. Aujourd'hui, pratiquement chaque commande sur le marché emploie une certaine forme de codage de RLL.
Au lieu de coder un peu simple, RLL code typiquement un groupe de bits d'informations à la fois. La longueur de course de limite limitée est dérivée des deux caractéristiques primaires de ces codes, qui sont le nombre minimum (la longueur de course) et nombre maximum (la limite de course) des cellules de transition permises entre deux transitions réelles de flux. Plusieurs variations de l'arrangement sont réalisées en changeant les paramètres de longueur et de limite, mais seulement deux ont réalisé n'importe quelle vraie popularité : RLL 2.7 et RLL 1.7.
Vous pouvez même exprimer le codage de FM et de MFM comme forme de RLL. FM peut s'appeler RLL 0.1 parce que seulement zéro et autant d'en tant que cellules d'une transition séparez deux transitions de flux. MFM peut s'appeler RLL 1.3 parce que seulement un et autant d'en tant que trois cellules de transition séparent deux transitions de flux. (bien que ces codes puissent être exprimés comme variations de forme de RLL, il n'est pas commun pour faire ainsi.)
RLL 2.7 était au commencement la variation de RLL la plus populaire parce qu'il offre un rapport à haute densité avec une fenêtre de détection de transition qui est la même taille relative que celle dans MFM. Cette méthode fournit la densité élevée de stockage et la fiabilité assez bonne. Dans les commandes très de grande capacité, cependant, RLL 2.7 ne s'est pas avéré assez fiable. La plupart de commandes d'aujourd'hui de la capacité la plus élevée emploient le codage de RLL 1.7, qui offre à un rapport de densité 1.27 fois qui de MFM et d'une plus grande fenêtre à MFM relatif de détection de transition. En raison de la taille relative plus grande de fenêtre ou de cellules de synchronisation dans laquelle une transition peut être détectée, RLL 1.7 est pardonner et un code plus fiable, qui est important quand des médias et la technologie principale sont poussés à leurs limites.
Une autre variation petit-utilisée de RLL a appelé RLL 3,9sometimes RLL avançé également appelé (ARLL)allows un rapport encore plus élevé de densité que RLL 2.7. Malheureusement, la fiabilité a souffert trop considérablement sous l'arrangement de RLL 3.9 ; la méthode a été employée par seulement quelques contrôleurs maintenant-désuets et a tout sauf disparu.
Arrangement comment le travail de codes de RLL est difficile sans regarder un exemple. Dans une variation donnée de RLL, telle que RLL 2.7 ou 1.7, vous pouvez construire beaucoup les tables de codage de transition de flux pour démontrer comment des groupes particuliers de peu sont codés dans des transitions de flux.
Dans la table de conversion, des groupes spécifiques 3, et 4 de bits de données qui sont 2, longs sont traduits en cordes des cellules de transition des transitions de flux 4, 6, et 8 longtemps, respectivement. Les transitions choisies pour un ordre particulier de peu sont conçues pour s'assurer que les transitions de flux ne se produisent pas trop étroitement ensemble ou trop loin à part.
| Valeurs De Bit D'Informations | Codage De Flux |
|---|---|
| 10 | NTNN |
| 11 | TNNN |
| 000 | NNNTNN |
| 010 | TNNTNN |
| 011 | NNTNNN |
| 0010 | NNTNNTNN |
| 0011 | NNNNTNNN |
| Transition de T = de flux | |
| N = aucune transition de flux | |
La limitation à quel point les deux transitions étroites de flux peuvent être est nécessaire en raison des possibilités fixes de résolution du support de tête et de stockage. La limitation à quelle distance à part deux transitions de flux peuvent être s'assure que les horloges dans les dispositifs restent dans la synchro.
Vous pourriez penser que cela le codage d'une valeur de byte telle que 00000001b serait impossible parce qu'aucunes combinaisons des groupes de bit d'informations adaptés ce byte. Le codage de ce type de byte n'est pas un problème, cependant, parce que le contrôleur ne transmet pas différents bytes ; au lieu de cela, le contrôleur envoie les secteurs entiers, rendant codant un tel byte possible en incluant une partie du peu en byte suivant. Le seul problème réel se produit en dernier byte d'un secteur si le peu additionnel est nécessaire pour accomplir l'ordre final de groupe. Dans ces caisses, l'endec dans le contrôleur ajoute le peu excessif à la fin du dernier byte. Ces peu excessif en est alors tronqué pendant lit ainsi le contrôleur décode toujours le dernier byte correctement.
|
|