O armazenamento magnético é essencialmente um meio análogo. Os dados que um PC armazena nele, entretanto, é o informationthat digital é, 1s e 0s. Quando a movimentação emite a informação digital a uma cabeça de gravação magnética, a cabeça cría domínios magnéticos no meio de armazenamento com as polaridades específicas que correspondem ao positivo e tensões que negativas a movimentação se aplica à cabeça. As reversões do fluxo dão forma aos limites entre as áreas de polaridade positiva e negativa que o controlador da movimentação se usa codificar os dados digitais no meio análogo. Durante uma operação lida, cada reversão que do fluxo a movimentação detecta gera um pulso positivo ou negativo que o dispositivo se use reconstruct os dados binários originais.
Para optimize a colocação de transições do fluxo durante o armazenamento magnético, a movimentação passa os dados de entrada digitais crus através de um dispositivo chamado um encoder/decoder (endec), que convirta a informação binária crua a um waveform projetado colocar optimally as transições do fluxo (pulsos) nos meios. Durante uma operação lida, o endec inverte o processo e descodifica o trem de pulso para trás nos dados binários originais. Sobre os anos, diversos esquemas para dados codificando nesta maneira foram desenvolvidos; alguns são melhores ou mais eficientes do que outros, que você vê mais tarde nesta seção.
Outras descrições do processo codificando dos dados puderam ser muito mais simples, mas omitem os fatos que fazem algum das edições relacionadas à confiabilidade da movimentação dura assim criticalnamely, cronometrando. Os coordenadores e os desenhadores estão empurrando constantemente o envelope para encher mais e mais bocados de informação na quantidade limitada de reversões magnéticas do fluxo por a polegada. O que veio acima com, essencialmente, é um projeto em que os bocados de informação são descodificados não somente da presença ou da ausência de reversões do fluxo, mas do sincronismo entre elas. Mais exatamente podem cronometrar as reversões, mais informação pode ser codificado (e subseqüentemente ser descodificado) dessa informação do sincronismo.
Em todo o formulário de sinalizar binário, o uso do sincronismo é significativo. Ao interpretar lida ou escreva o waveform, o sincronismo de cada evento da transição da tensão é crítico. O sincronismo é o que define um bocado particular ou cellthat da transição é, a janela do tempo dentro de que a movimentação é escrita ou leitura uma transição. Se o sincronismo estivesse desligada, uma transição dada da tensão pôde ser reconhecida no tempo errado como estando em uma pilha diferente, que jogasse a conversão ou codificar fora, tendo por resultado os bocados que estão sendo faltados, adicionado, ou misinterpreted. Para assegurar-se de que o sincronismo seja preciso, os dispositivos transmissores e de recepções devem estar na sincronização perfeita. Para o exemplo, se gravar um 0 for feita não colocando nenhuma transição no disco para um período ou uma pilha dada de tempo, imagine que gravando dez bocados 0 em um rowyou teria um período longo de dez períodos ou pilhas de tempo com nenhumas transições.
|
|
Imagine agora que o pulso de disparo no codificador se realizava ligeiramente fora do tempo quando dados de leitura em comparação a quando se escreveu originalmente. Se fosse rápido, o codificador pôde pensar daquele durante este estiramento longo de 10 pilhas com nenhumas transições, only 9 pilhas tinham decorrido realmente. Ou se fosse lento, pôde pensar de que 11 pilhas tinham decorrido preferivelmente. Em um ou outro caso, isto resultaria em um erro lido, significando que os bocados que foram escritos originalmente não seja lido como sendo o mesmos. Para impedir erros do sincronismo na movimentação encoding/decoding, a sincronização perfeita é necessária entre a leitura e os processos da escrita. Esta sincronização é realizada frequentemente adicionando um sinal cronometrando separado, chamado um sinal do pulso de disparo, à transmissão entre os dois dispositivos. O pulso de disparo e os sinais dos dados também podem ser combinados e transmitido como um único sinal. A maioria de esquemas codificando dos dados magnéticos usam este tipo de combinação de sinais do pulso de disparo e dos dados.
Adicionar um sinal do pulso de disparo aos dados assegura-se de que os dispositivos se comunicando possam exatamente interpretar as pilhas de bocado individuais. Cada pilha de bocado é limitada outras por duas pilhas que contêm as transições do pulso de disparo. Emitindo a informação do pulso de disparo junto com os dados, os pulsos de disparo remanescem na sincronização, mesmo se o meio contem uma corda longa dos bocados 0 idênticos. Infelizmente, as pilhas da transição usadas unicamente para o sincronismo fazem exame acima do espaço no meio que poderia de outra maneira ser usado para dados.
Porque o número de transições que do fluxo uma movimentação pode gravar em um espaço dado em um meio particular é limitado pela natureza física ou a densidade do meio e da tecnologia principal, coordenadores da movimentação desenvolveu várias maneiras de codificar os dados usando um número mínimo das reversões do fluxo (que fazem exame na consideração do fato que algumas reversões do fluxo usadas unicamente cronometrando estão requeridas). O encoding do sinal permite o sistema de fazer o uso máximo de uma tecnologia de ferragem dada da movimentação.
Embora vário os esquemas codificando foram tentados, only alguns são populares hoje. Sobre os anos, estes três tipos básicos foram os mais populares:
Modulação Da Freqüência
Modulação Modificada Da Freqüência
Funcione O Comprimento Limitado
Encoding de FM
Uma das técnicas as mais adiantadas para codificar dados para o armazenamento magnético é chamado encoding da modulação da freqüência. Este os schemesometimes codificando chamaram encodingwas de Único-Densidade usados nas movimentações de disco flexível as mais adiantadas instaladas em sistemas do PC. O computador portátil original de Osborne, para o exemplo, usou estas movimentações de disco flexível da Único-Densidade, que armazenaram sobre 80KB dos dados em um único disco. Embora seja popular até os 1970s atrasados, o encoding de FM é não mais longo usado.
O encoding modificado da modulação da freqüência foi planejado para reduzir o número das reversões do fluxo usadas no esquema codificando original de FM e, conseqüentemente, embalar mais dados no disco. O encoding de MFM minimiza o uso de transições do pulso de disparo, saindo de mais quarto para os dados. Grava transições do pulso de disparo somente quando uns 0 bocados armazenado são precedidos por outro 0 bocados; em todos casos restantes, uma transição do pulso de disparo não é requerida. Porque MFM minimiza o uso de transições do pulso de disparo, pode dobrar a freqüência de pulso de disparo usada pelo encoding de FM, permitindo o de armazenar duas vezes tantos como bocados de dados no mesmo número de transições do fluxo.
Porque o encoding de MFM escreve duas vezes tantos como bocados de dados usando o mesmo número de reversões do fluxo que FM, a velocidade de pulso de disparo dos dados é dobrada e a movimentação vê realmente o mesmo número de reversões totais do fluxo que com FM. Isto significa que uma movimentação que usa o encoding de MFM lê e escreve dados duas vezes na velocidade de FM, mesmo que a movimentação v as reversões do fluxo chegar na mesma freqüência que em FM.
Porque é duas vezes mais eficiente que o encoding de FM, MFM que codifica também foi chamado gravação de Dobro-Densidade. MFM é usado em virtualmente todas as movimentações de disco flexível do PC hoje e foi usado em quase todos os discos duros do PC por um número de anos. Hoje, virtualmente todos os discos duros usam variações do encoding de RLL, que fornece mesmo uma eficiência mais grande do que MFM.
| Valor Do Bocado De Dados | Encoding Do Fluxo |
|---|---|
| 1 | NT |
| 0 precederam por 0 | Tn |
| 0 precederam por 1 | NN |
| Transição de T = de fluxo | |
| N = nenhuma transição do fluxo | |
O esquema codificando o mais popular de hoje para discos duros, chamado comprimento do funcionamento limitado, embala até duas vezes a informação em um disco dado do que MFM faz e três vezes mais informação quanto FM. No encoding de RLL, a movimentação combina grupos dos bocados em uma unidade para gerar testes padrões específicos de reversões do fluxo. Combinando o pulso de disparo e os sinais dos dados nestes testes padrões, a taxa de pulso de disparo pode mais mais ser aumentada ao manter a mesma distância básica entre as transições do fluxo no meio de armazenamento.
A IBM inventou o encoding de RLL e usou primeiramente o método em muitas de suas movimentações de disco do mainframe. Durante os 1980s atrasados, a indústria do disco duro do PC começou a usar esquemas codificando de RLL aumentar as potencialidades de armazenamento de discos duros do PC. Hoje, virtualmente cada movimentação no mercado usa algum formulário do encoding de RLL.
Em vez de codificar um único bocado, RLL codifica tipicamente um grupo de bocados de dados em um momento. O comprimento do funcionamento do termo limitado é derivado das duas especificações preliminares destes códigos, que são o número mínimo (o comprimento do funcionamento) e número máximo (o limite do funcionamento) das pilhas da transição permitidas entre duas transições reais do fluxo. Diversas variações do esquema são conseguidas mudando os parâmetros do comprimento e do limite, mas somente dois conseguiram toda a popularidade real: RLL 2.7 e RLL 1.7.
Você pode mesmo expressar o encoding de FM e de MFM como um formulário de RLL. FM pode ser chamado RLL 0.1 porque sómente zero e tanto como como pilhas de uma transição separe duas transições do fluxo. MFM pode ser chamado RLL 1.3 porque sómente um e tanto como como três pilhas da transição separa duas transições do fluxo. (embora estes códigos possam ser expressados como variações do formulário de RLL, não é comum fazer assim.)
RLL 2.7 era inicialmente a variação a mais popular de RLL porque oferece uma relação high-density com uma janela da deteção da transição que fosse o mesmo tamanho relativo que aquela em MFM. Este método fornece a densidade elevada do armazenamento e a confiabilidade razoavelmente boa. Em movimentações muito high-capacity, entretanto, RLL 2.7 não provou ser de confiança bastante. A maioria de movimentações de hoje da capacidade a mais elevada usam o encoding de RLL 1.7, que oferece a uma relação da densidade 1.27 vez que de MFM e de uma janela maior MFM relative.to da deteção da transição. Por causa do tamanho relativo maior da janela ou de pilha do sincronismo dentro de que uma transição pode ser detectada, RLL 1.7 é um perdão e um código mais de confiança, que seja importante quando os meios e a tecnologia principal estão sendo empurrados para seus limites.
Uma outra variação pequeno-usada de RLL chamou RLL 3,9sometimes RLL avançado também chamado (ARLL)allows uma relação mesmo mais elevada da densidade do que RLL 2.7. Infelizmente, a confiabilidade sofreu demasiado extremamente sob o esquema de RLL 3.9; o método foi usado somente por alguns controladores agora-obsoletos e tem tudo com exceção do desaparecido.
Compreendendo como o trabalho dos códigos de RLL é difícil sem olhar um exemplo. Dentro de uma variação dada de RLL, tal como RLL 2.7 ou 1.7, você pode construir muitos tabelas codificando da transição do fluxo para demonstrar como os grupos particulares dos bocados são codificados em transições do fluxo.
Na tabela de conversão, os grupos específicos 3, e 4 dos bocados dos dados que são 2, longos são traduzidos em cordas de pilhas da transição das transições 4, 6 do fluxo, e 8 por muito tempo, respectivamente. As transições selecionadas para uma seqüência particular do bocado são projetadas assegurar-se de que as transições do fluxo não ocorram demasiado pròxima junto ou demasiado distante distante.
| Valores Do Bocado De Dados | Encoding Do Fluxo |
|---|---|
| 10 | NTNN |
| 11 | TNNN |
| 000 | NNNTNN |
| 010 | TNNTNN |
| 011 | NNTNNN |
| 0010 | NNTNNTNN |
| 0011 | NNNNTNNN |
| Transição de T = de fluxo | |
| N = nenhuma transição do fluxo | |
Limitar como as duas transições próximas do fluxo podem ser é necessário por causa das potencialidades fixas da definição do meio da cabeça e de armazenamento. Limitar como distante distante duas transições do fluxo podem ser assegura-se de que os pulsos de disparo nos dispositivos remanesçam na sincronização.
Você pôde pensar que isso codificar um valor do byte tal como 00000001b seria impossível porque nenhumas combinações dos grupos do bocado de dados cabidos este byte. Codificar este tipo de byte não é um problema, entretanto, porque o controlador não transmite bytes individuais; instead, o controlador emite os setores inteiros, fazendo codificando tal byte possível incluindo alguns dos bocados no seguinte byte. O único problema real ocorre no último byte de um setor se os bocados adicionais forem necessários para terminar a seqüência final do grupo. Nestes casos, o endec no controlador adiciona bocados adicionais ao fim do último byte. Estes bocados adicionais são truncados então durante alguns lêem assim que o controlador descodifica sempre o último byte corretamente.
|
|