top of page
Leonardo Ritter

Hardware - O barramento PATA

Atualizado: 21 de jul. de 2023

Este artigo é sobre uma interface de comunicação anterior ao padrão SATA: O barramento IDE (Intelligent Drive Electronics ou Integrated Drive Electronics), chamado mais tarde de PATA.

O barramento IDE foi lançado em meados de 1986 (na época do Intel 386) e por alguns anos sofreu com a compatibilidade entre computadores. Somente em 12 de maio de 1994 o ANSI (American National Standards Institute), com o documento X3.221-1994/1990 criou as especificações com o nome de Advanced Technology Attachment (ATA). Mesmo com o novo nome, a sigla IDE já era popular na época. Em 2003, com o lançamento do padrão SATA (Serial Advanced Technology Attachment), a interface IDE foi renomeada para PATA (Parallel Advanced Technology Attachment), nome que também não vingou muito.


Com a interface PATA vieram algumas tecnologias, como por exemplo:


-> PIO (Programed I/O - Entrada e Saída Programada) que se tornou obsoleto com a criação do DMA (Direct Memory Access) e Bus Mastering;

-> Enhanced IDE (EIDE) para a conexão de até dois dispositivos no mesmo barramento;

-> ATAPI (Advanced Technology Attachment Packet Interface) para o reconhecimento de drives de mídia óptica.


Várias outras tecnologias serão detalhadas ou neste artigo ou no artigo sobre HDs e leitores de CD/DVD/BluRay. Todas estas tecnologias mencionadas serão detalhadas ao longo do texto.


O barramento IDE é transmite sinais em paralelo, isto é, possui várias trilhas para transferência de dados, além disso, um canal IDE é compartilhado com até 2 dispositivos.

Mesmo tendo taxas de transferências e clocks parecidos com os do barramento PCI, o barramento IDE possui largura de apenas 16 bits, contra os 32 bits do barramento PCI original.

O cabo IDE original possui 40 vias, sendo que após a especificação UDMA4 foram adicionados mais 40 fios de aterramento entre os outros fios de comunicação. Lembrando que, o conector sempre foi o mesmo de 40 pinos.

Veja abaixo uma foto do conector IDE:

Conector IDE numa placa-mãe

Imagem 1 - Conector IDE de uma placa-mãe AsRock N68 VS3-FX


CURIOSIDADE: Como deve ter dado pra notar na Imagem 1, o conector PATA macho e fêmea é feito de plástico, mais especificamente LCP (Liquid Cristal Polymer) ou PPA (Poliftalamida), obtendo também a certificação de flamabilidade UL 94V-0.

Para saber mais sobre polímeros e o uso do LCP e do PPA, CLIQUE AQUI!

Para saber mais sobre a norma de flamabilidade UL 94V-0, CLIQUE AQUI!

Abaixo, você vê todas as revisões de especificações do padrão ATA desde a padronização feita pela ANSI:

Tabela de versões da especificação ATA

Tabela 1 - Revisões / atualizações do padrão ATA

Abaixo você vê os modos de operação PIO, DMA e UDMA da interface IDE:

Modos PIO / DMA e UDMA

Tabela 2 - Modos de operação


Como você pode ver, os modos PIO e DMA tinham taxas de transferências muito baixas. Existem vários modos DMA e UDMA, sendo que cada um transfere uma quantidade de palavras durante cada sessão de transmissão. As taxas de transferência do modo DMA eram levemente diferentes do modo PIO, mas na tabela foram igualadas para facilitar a compreensão. Abaixo você verá as diferenças entre os modos e o que foi acrescentado em cada revisão de especificação ATA.

Com base na Tabela 1 e na Tabela 2, vamos analisar a evolução da interface PATA.


Na primeiras revisões da interface IDE havia o PIO (Programed I/O) que servia para controlar os envios e recebimento de dados através de comandos feitos pelo processador e trocados com o(s) dispositivo(s) conectado(s). Os dados recebidos do dispositivo conectado, um HD por exemplo, eram enviados para a memória RAM com o intermédio do processador, que precisava criar um processo para fazer as gravações, leituras e apagamentos na memória principal (RAM) e por este motivo que parte do processamento era comprometido pelo(s) processo(s) que ficava(m) em execução para que o(s) controlador(s) IDE pudesse(m) funcionar.

Como o circuito PIO era muito primitivo, não havia sistemas de codificação de dados, o que é comum nesses sistemas de barramento paralelo. O controlador IDE possuía apenas a PIO engine que possuí o sistema para controlar os envios de dados e um Buffer, uma memória cache que servia para armazenar os dados enquanto outros já eram direcionados.


Com a evolução da tecnologia surgiu o UDMA (Ultra Direct Memory Access), uma evolução do DMA (Direct Memory Access - Acesso direto a memória). O DMA e UDMA acessavam a memória RAM sem intermédio da CPU e assim poupava-a de processos desnecessários. Isso aumentou o desempenho da interface IDE em relação ao PIO. Com isso, o buffer de memória cache passou ser do tipo FIFO (Firt In, First Out), que armazena os dados em fila (o primeiro dado a entrar é o primeiro a sair). O DMA e UDMA também possui uma Engine com o sistema que faz o controle das informações que passam pelo controlador, no entanto não há um codificador / decodificador.

Com o UDMA também veio o CRC, uma tecnologia que envia um número de verificação com a soma dos dados enviados para o receptor. No receptor os dados são recontados e se não baterem com a soma recebida, o receptor pede a mesma informação novamente com um clock mais baixo, ou seja, uma revisão UDMA mais antiga até que a informação recebida esteja correta.

Existem vários modos DMA e UDMA, sendo que cada um transfere uma quantidade de palavras durante cada sessão de transmissão. O clock é associado as sequências de dados transmitidos, portanto não há uma linha especial para o sinal de sincronismo, e o máximo atingido até hoje pelo padrão IDE é 33 MHz com o UDMA6.


A partir do Ultra DMA0 (de 16,6 MB/s) surgiu o ATAPI (ATA Packet Interface). O ATAPI foi desenvolvido pela Western Digital em 1986, supervisionado pelo Comitê Internacional para Padrões de Informação e Tecnologia e feito para que leitores de CD/DVD/Bluray conseguissem se comunicar com a placa-mãe sem precisar de outro padrão específico para mídias ópticas. O ATAPI não faz a identificação detalhada das mídias ópticas, apenas é uma extensão no UDMA com comandos específicos que faz com que o controlador IDE as reconheça como uma espécie de dispositivo de armazenamento, assim como um HD.


Com a introdução do padrão UDMA2, a transferência passou a ser do tipo DDR (Double Rada Rate - Dupla Taxa de Transferência), pois na subida e na descida do sinal de clock é enviado um bit, o que proporcionou o dobro de taxa (de 16,6 MB/s para 33,3 MB/s) e, com o aumento do clock nas versões superiores do Ultra DMA, a taxa teórica de transmissão continuou dobrando. Observe o cálculo:

33 MHz . 16 bits . 2 / 8 = 133 MB/s é a taxa de transferência máxima sob um clock de 33 MHz numa conexão paralela de 16 trilhas, transferindo 2 bits por ciclo de clock em cada trilha.

Se você não sabe ou não lembra sobre bits e Bytes e clock, recomendo que leia os artigos:

Bits e Bytes: O que são? - CLIQUE AQUI!


O Clock e o PLL - CLIQUE AQUI!


A partir da versão UDMA4, para atingir taxas de transferências mais altas, foram adicionados 40 fios extras de aterramento entre os fios de dados para eliminar interferências eletromagnéticas, já que todo o cabo com comprimento grande acaba funcionando como uma antena e absorvendo e gerando interferências. Se você leu o artigo sobre pares de cancelamento, já sabe que a transmissão serial ponto-a-ponto é melhor que um barramento paralelo. Caso não tenha lido, clique aqui!.


Graças ao EIDE (Enhanced IDE) um canal PATA pode ser compartilhado com dois dispositivos trabalhando simultaneamente. Veja abaixo um cabo IDE com três conectores:

Imagem 2


A capacidade de reconhecer até dois dispositivos no mesmo canal é feito por três fios do cabo que são destinados a endereçar o controlador IDE e os dois dispositivos conectados através de jumpers nos HDs e Leitores ópticos. Veja a imagem abaixo:

Jumper de HDs e Leitores Ópticos

Imagem 3


No HD há:

-> Um par de pinos que se forem interligados, o deixam como o "Mestre" (MA - Master) do barramento;

-> Outro par de pinos que se forem interligados deixam o dispositivo "Escravo" (SL - Slave);

-> Um terceiro par de pinos (CS - Cable Select) que se interligados deixam que o controlador IDE da placa-mãe decida quem será o Mestre e o Escravo.

-> O quarto par de pinos não é utilizado.


Em alguns HDs e drives ópticos, a não colocação de um jumper pode o tornar automaticamente o Mestre ou Escravo do canal IDE. Em outros casos, os demais pares de pinos ou até mesmo a combinação de dois jumpers limitam a capacidade de armazenamento (para os sistemas de endereçamento antigos que tem um limite de capacidade) e ou taxa de transferência e tecnologias do HD para manter a compatibilidade com controladores IDE mais antigos. O ideal é que, antes de instalar o HD ou drive óptico no canal IDE, ler a etiqueta que está fixada em cima do dispositivo. Nela está a informação do posicionamento dos jumpers nos pinos.

Veja abaixo a imagem da etiqueta de um HD IDE com a tabela de "jumpeamento":

Tabela de "jumpeamento" de um HD IDE

Imagem 4


Veja agora os pinos deste mesmo HD com a etiqueta exibida acima:

Grade de pinos para a colocação de jumpers no HD

Imagem 5


Acima, na imagem, você vê o conector IDE e os Pinos onde são conectados os jumpers. Ao lado dos pinos fica o conector de alimentação elétrica.

A tecnologia S.M.A.R.T, sigla para "Self-Monitoring, Analysis and Reporting Technology", ou em português "tecnologia de auto-monitoramento, análise e relatório" serve para evitar falhas de hardware através de identificadores de confiabilidade da unidade de armazenamento. Essa tecnologia foi incluída na especificação ATA3 e será detalhada no artigo sobre HDD (Hard Disk Drives).

A tecnologia AAM (Automatic Acoustic Management (AAM) surgiu na especificação ATA6 e é um método para reduzir ruído de funcionamento gerado pela parte mecânica dos HDs, especificamente o ruído gerado pelo braço de leitura que tem sua velocidade de movimentação diminuída para que o posicionamento da cabeça de leitura e gravação na superfície do disco fique mais suave e consequentemente gerando menos barulho. Isso também será detalhado no artigo sobre HDD (Hard Disk Drives).

Outra tecnologia é o LBA, sigla para "Logical Block Addressing", que em português significa "endereçamento lógico de blocos". Esse sistema serve para aplicar endereços aos setores do disco, cabeças de leitura e cilindros, enfim, tudo será detalhado no artigo sobre HDDs. O importante é você saber que o LBA é o conjunto de instruções introduzidos a partir da especificação ATA2 para endereçar drives de armazenamento mecânico. O LBA só é válido para HDDs com interface IDE. HDDs, SSDs e Drives ópticos SATA, SAS e SCSI utilizam outros tipos de instruções.

O controlador ATA é um circuito com buffers de memória cache para a PIO Engine e para o DMA / Ultra DMA Engine. Veja o diagrama de blocos do controlador IDE abaixo:

Diagrama de blocos do controlador IDE

Diagrama 1 - Controlador ATA


Veja abaixo a pinagem do conector IDE:

Tabela de pinos do controlador IDE

Tabela 3 - Pinagem do conector ATA


A utilidade de cada pino é dada abaixo:


-> DD0 a DD15: As 16 Trilhas para envio e recebimento de dados. Perceba que, no diagrama de blocos do controlador, tanto o buffer do PIO e o buffer FIFO do DMA / UDMA estão ligados a mesma entrada e saída de dados, Isso acontece pois deve se manter a compatibilidade entre o HDs mais antigos e os Drives Ópticos e HDs atuais. Ao conectar um HD muito antigo o modo DMA / Ultra DMA é desativado e o PIO ativado;

-> DMARK e D/MACK: Utilizado pelos dispositivos a serem conectados para que requisitem e reconheçam o sistema DMA / UDMA. São ligados ao DMA Engine no diagrama de blocos;

-> IORDY e /IOCS16: Usado para avisar os controladores do dispositivos e da placa mãe para iniciar a transmissão de dados e selecionar o chip controlador(/IOCS16) de dispositivos conectados (utilizado no modo PIO);

-> SPSYNC, RESET, INTRQ e /ACTIVE: Requisitar sincronismo, reinicialização de dispositivo conectado, efetuar interrupção de dispositivo via hardware e sinal para o LED da placa mãe que mostra o funcionamento do(s) dispositivo(s) conectado(s);

-> DA0, DA1, DA2, /IDE_CS0 e /IDE_CS1: Utilizado para aplicar endereço ao controlador da placa-mãe (DA0), ao dispositivo Mestre (DA1) e o Escravo (DA2) e selecionar o chip controlador do Mestre (/IDE_CS0) e do Escravo (IDE_CS1). Como todos os dispositivos e o controlador utilizam o mesmo caminho para enviar e receber dados eles necessitam de trilhas para enviar endereços e comandos de seleção de controlador para se comunicarem. Exceto os pinos de Seleção de Chip, os de endereços são utilizados até pelos modos PIO;

-> /DIOW e /DIOR: São utilizados para definir escrita e leitura de dados no dispositivo conectado selecionado;

-> PDIAG: É utilizado para diagnósticos e para a verificação do tipo de cabo, isto é, se ele é o comum de 40 fios com limite de até 44,4 MB/s, se ele é do padrão UDMA4 de 66,6 MB/s ou superior que utilizam o cabo de 80 vias com 40 fios de aterramento. Caso o cabo não seja UDMA4 ou superior, a transmissão é limitada a revisão UDMA3 ou inferior devido a interferências eletromagnéticas.

> Pino 20 e GND: o pino 20 é o marcador de posição de encaixe do cabo para que não haja a inversão do mesmo e possíveis danos aos circuitos. Os pinos GND são os aterramentos do cabo Flat (fita).

Em cabos de 80 vias, as 40 vias extras são interligadas nas extremidades do cabo para que apenas um contato extra faça a conexão com o circuito. Isso evitou o projeto de um novo conector. Abaixo você vê um cabo PATA de 40 vias e outro de 80 vias:

Cabos IDE (comparação)

Imagem 6 - Cabo de 80 vias comparado com o cabo de 40 vias


CURIOSIDADE: O ideal é que cabos IDE jamais passem de 45 cm de comprimento, senão a perda de qualidade de transferência já será muito grande.


Como foi dito neste artigo, o UDMA trouxe o CRC. Perceba que no diagrama de blocos do controlador, na saída do buffer FIFO, há um gerador de soma de verificação.

Nos circuitos do UDMA e PIO há também um PLL para gerar o sincronismo entre os controladores.


CURIOSIDADE: Cabos flat PATA utilizam fios de numeração 30AWG ou valores próximos deste. Observe a imagem abaixo:

Imagem 7 - Os 80 fios do cabo PATA são de numeração 30AWG

Em 2003 o padrão Serial ATA foi lançado e se iniciou um processo de introdução desta nova interface no mercado, o que tornou a interface IDE obsoleta em poucos anos. CLIQUE AQUI e veja como a interface SATA trouxe mais tecnologia para os HDs e viabilizou os SSDs.

Ficou com alguma dúvida? Achou que faltou alguma coisa? Escreva nos comentários ou mande um e-mail para hardwarecentrallr@gmail.com. Gostou? Então é só curtir e compartilhar! Ajude a divulgar conteúdo de qualidade!

 

CRÉDITOS e FONTES

Créditos: Texto, tabelas, diagramas e imagens: Leonardo Ritter

Fontes: Hardware.com; ccm.net; InfoWester.


Última atualização: 15 de Novembro de 2021.

2.236 visualizações

O Hardware Central abandonou de vez o Facebook. Não temos mais fanpage e a caixa de comentários que aqui habitava foi chutada pra longe! Não somos Mainstream! Redes socias não combinam com nós! Somos a galera dos livros!

Como também repassamos conteúdo de terceiros, não é justo restringir a cópia! O uso do conteúdo do HC e de toda a internet deve ser livre!

Para relatar erros, incongruências ou sugerir conteúdo, nos chame pelo hardwarecentrallr@gmail.com! Não somos perfeitos, mas sempre é possível melhorar!

bottom of page