Escritos
B. Piropo
Anteriores:
< Trilha Zero >
Volte de onde veio
05/02/1996
< EIDE e Fast ATA XIII: >
< Taxas de Transferência >

Reiterando as limitações discutidas no final da coluna da semana passada, vamos ver hoje quais são as taxas máximas teóricas suportadas pelos diferentes modos de transferência de dados aceitos pelo padrão ATA. Mas primeiro vamos ver o que significa essa tal de taxa de transferência. No fundo, uma coisa muito simples: taxa de transferência é a grandeza que representa a rapidez com que os dados trafegam pelo barramento entre a controladora, junto ao disco, e a memória, na placa-mãe.

(Um parênteses: os mais atentos dentre vocês devem ter notado que quando me refiro a grandezas que variam em função do tempo uso as palavras "taxa" e "rapidez", jamais "velocidade". E a razão é simples: a velocidade de meu disco rígido, assim como a da CPU de meu micro de mesa - felizmente - é zero, já que eles costumam ficar parados aqui em cima de minha escrivaninha. "Velocidade" é uma grandeza física perfeitamente definida que mede a rapidez com que um corpo se desloca sobre uma trajetória, sendo expressa pelo quociente entre espaço percorrido e tempo gasto para percorrê-lo. Como nem meu desktop nem meu disco rígido costumam se deslocar por aí, a velocidade de ambos é nula. Notem que faço isto apenas porque, sendo engenheiro e tendo sido professor universitário, acostumei-me a usar os termos técnicos com seu significado correto. Se vocês encontrarem neste caderninho o termo "velocidade" aplicado sem o necessário rigor técnico e significando "rapidez", perdoem: trata-se de uma imprecisão que, de tanto ser usada por leigos, acabou por ser aceita e entendida por todos, sendo válida sua inclusão em um texto de jornal. Mas se for em um livro técnico ou trabalho científico, traduções incluídas, pau nele... )

Neste ponto, convém lembrar que ATA significa AT Attachment e se refere especificamente ao barramento de 16 bits desenvolvido pela IBM para o AT, hoje conhecido como barramento ISA. Que é constituído por 16 linhas de dados que transportam um bit de cada vez. Assim, cada transferência move dois bytes (16 bits) através do barramento. O tempo que o sistema necessita para efetuar uma transferência denomina-se "cycle time" e corresponde, portanto, ao tempo em que 16 bits são transferidos de ou para o drive através do barramento.

A taxa com que os dados fluem através do barramento é o produto do cycle time pela largura do barramento. O que é natural, já que o cycle time é responsável número de transferências executadas na unidade de tempo e a largura do barramento pelo número de bytes transferidos em cada ciclo. Como dois bytes (16 bits) são transferidos por cycle time, o tempo gasto para transferir um byte corresponde a meio cycle time. Ora, como a taxa de transferência corresponde ao número de bytes transferidos por segundo, para obtê-la basta dividir um segundo pelo tempo gasto para transferir um byte, ou seja, pela metade do cycle time.

Na prática, o único fator que diferencia os distintos modos de transferência aceitos pelo padrão ATA é justamente o cycle time. Dentre os modos PIO, o mais lento é o PIO 0, que admite um cycle time de 600 ns (ns é a abreviação de nanossegundo, um intervalo de tempo correspondente à um bilionésimo do segundo). E o mais rápido é o PIO 4 (que, juntamente com o PIO 3, somente foi criado com a revisão do padrão denominada ATA-2), cujo cycle time é de 120 ns. Os cycle time dos modos intermediários são 383ns, 240ns e 180ns respectivamente para os modos PIO 1, 2 e 3. Fazendo as contas, pode-se calcular as taxas de transferências teóricas dos diversos modos PIO, de PIO 0 a PIO 4, respectivamente: 3,3Mb/s, 5,2Mb/s, 8,3Mb/s, 11,1Mb/s e 16,6Mb/s. Já os modos DMA atingem taxas de transferência máximas teóricas que variam de 2,1Mb/s até os mesmos 16,6Mb/s do modo PIO 4.

Se você se animou e partiu para o micro pensando em usar aquele programa de teste de bancada para verificar a taxa de transferência que seu disco rígido consegue alcançar, lembre-se que estas são taxas teóricas, ou seja, medem a rapidez com que os dados fluiriam através do barramento caso o drive e a memória fossem capazes de aceitar um fluxo tão rápido. Por isto não se espante se seu programa de avaliação de desempenho indicar taxas substancialmente menores para seu super-hiper-ultra drive ATA novinho. Por outro lado, não se esqueça que a velha interface ST-506/412 admitia um máximo teórico de apenas 1,1Mb/s (e na prática raramente chegava perto disto) e que em barramentos de 16 bits os rapidíssimos discos SCSI transferem dados em taxas máximas teóricas de 10Mb/s. Portanto, não despreze seu disco rígido mesmo que ele mostre um desempenho bastante inferior aos números listados lá em cima.

Finalmente, também devemos ter em mente que altas taxas de transferência somente são importantes para quem costuma transferir freqüentemente grandes quantidades de dados entre disco e memória. Trocando em miúdos: elas beneficiam principalmente quem trabalha com arquivos grandes, como gráficos, multimídia e similares. Em casos assim, quem trabalha com discos lentos costuma passar intermináveis segundos olhando o led do disco rígido piscar enquanto espera o arquivo ser carregado e alguma coisa aparecer na tela, e um disco capaz de transferir dados rapidamente é uma benção. Já para a maioria dos mortais, gente como nós que usualmente transfere um número relativamente pequeno de setores como os arquivos usados normalmente com editores de texto e planilhas, o benefício alcançado com discos de altas taxas de transferência, embora não sendo desprezível, é bem menor.

B. Piropo