• Leonardo Ritter

Hardware - A interface LPT ("Porta paralela")

Atualizado: Abr 1

A continuação dos estudos das funcionalidades do chip Super I/O! O tema detalhado neste artigo é a interface LPT, conhecida popularmente como "porta paralela".

Interface paralela

Imagem 1


A porta paralela foi criada pela IBM nos anos 1980 para ser integrada a linha de computadores pessoais, pois havia a necessidade de uma interface para impressoras, especialmente as da fabricante Centronics. As impressoras da Centronics utilizavam uma interface com 36 pinos, porém a IBM resolveu que apenas 25 deles seriam úteis, da mesma forma que foi feita com a interface serial RS-232, que inicialmente possuía 25 pinos (conector DB25) e após a integração nos computadores da IBM, apenas 9 pinos foram utilizados (conector DB9).

Com o passar dos anos, a interface foi sofrendo com a evolução das impressoras e computadores, fazendo com que a IBM e empresas parceiras que utilizavam a interface, criassem novas revisões deste meio de comunicação. Todas as revisões serão detalhadas neste artigo. A interface LPT foi utilizada também em scanners, câmeras digitais e zip drives antigos.

Com a chegada do padrão USB (Universal Serial Bus) no final dos anos 1990, a interface paralela, com o tempo, perdeu sua funcionalidade principal, que era conectar o PC a uma impressora e, passou a "servir pra bonito" nos computadores. Por incrível que pareça, em 2016 ainda era possível encontrar placas-mãe novas com suporte a porta paralela.

Hobbystas podem utilizar o conector DB25 para fazer projetinhos simples, como por exemplo um pisca-pisca programado e acionado pelo computador ou um gravador de PIC ou outros chips e circuitos digitais simples, mas funcionalidades oficiais não são mais atribuídas a portas paralelas já faz uns bons anos.

A porta LPT utiliza um conector DB25, de 25 pinos, dispostos em duas linhas. A pinagem do conector é disposta abaixo:

Tabela 1


A interface paralela tem este nome popular pois, como você pode ver no diagrama de pinos acima, são 8 linhas de dados (os pinos 0 a 7), o que significa que 1 Byte (8 bits) podem ser transmitidos por vez, diferente da interface serial que possui apenas 1 linha de dados e que transmite 1 bit por vez. Desta forma, a porta LPT possuí uma taxa de transferência maior e se torna melhor que a serial. Somente com a criação dos pares diferenciais que a comunicação em série se tornou mais viável e muito mias utilizada que a interface LPT e outros meios de comunicação que utilizam vários fios para transmitir dados.

A linha "strobe" é utilizada para marcar o fim e o início da transferência. Como assim? Enquanto as linhas de dados estão ociosas, o sinal de strobe está em HIGH, mas quando um dado é transmitido, imediatamente o sinal cai para nível LOW e só volta para HIGH quando a transferência é finalizada.

A porta LPT prevê um circuito padrão entre o controlador e o conector. Selecionamos três diagramas elétricos para você conhecer mais a fundo esta interface! Observe as imagens abaixo:

Esquema elétrico da placa-mãe GBT GA-8VM800M

Diagrama 1 - Esquema elétrico da porta paralela da placa-mãe GBT GA-8VM800M

Esquema elétrico da placa-mãe GBT GA-6VEML Rev.: 1.0

Diagrama 2 - Esquema elétrico da porta paralela da placa-mãe GBT GA-6VEML Rev.: 1.0

Esquema elétrico da placa-mãe Foxconn 748A01

Diagrama 3 - Esquema elétrico da porta paralela da placa-mãe Foxconn 748A01

Observe que, dos pinos 1 ao 17 há resistores em Pull-Up e terminações capacitivas. Do pino 18 ao 25 são terminais ligados no GND.


A interface LPT possui três revisões, ou melhor dizendo, três modos de operação: o SPP, o EPP e o ECP.

O Modo SPP (Standard Parallel Port)


Logo que a interface paralela começou a ficar popular, viu-se que o computador ficava preso a transmissão, pois a impressora era muito mais lenta para processar e imprimir o documento e a CPU tinha que ficar esperando o envio de dados terminar. Para sanar este problema, um buffer de memória cache com alguns Bytes foi adicionado ao chip controlador das impressoras. Com isso, o computador poderia enviar o arquivo a ser impresso direto para a memória da impressora e assim ficar livre e partir para outro processo.

Inicialmente, a interface paralela servia só para enviar dados do computador para a impressora, ou seja, ela era unidirecional. Os únicos meios que a impressora tinha para se comunicar com o computador era pelas linhas "Ocupado", "Selecionar", "Fim do papel" e "Error". Com a chegada de scanners, câmeras digitais e Zip drives com interface LPT, sentiu-se a necessidade de mudar o funcionamento da porta, já que estes dispositivos precisam mandar dados (fotos, músicas, arquivos, imagens digitalizadas) para o computador. A interface paralela sofreu mais uma modificação, desta vez, para torna-la bidirecional.

As linhas "Ocupado", "Selecionar", "Fim do papel" e "Error" foram utilizadas para enviar dados e não só os comandos de impressoras para o computador. Desta forma, foi necessário modificar os circuitos que controlavam essas linhas para que o computador entendesse quando era enviado um comando ou um dado a ele. O problema é que eram apenas 4 linhas para envio de dados, ou seja, meio Byte (meio Byte é igual a 1 Nibble).

A porta paralela tinha a capacidade de transferir do computador para o periférico conectado 150 KB/s teóricos e, a comunicação inversa, ou seja, do periférico para o computador era só de 75 KB/s teóricos devido ao envio de apenas 1 Nibble por vez. Isto fez com que, por exemplo, uma foto de alta qualidade produzida por uma câmera digital, levasse dezenas de minutos para ser transferida para o computador via interface paralela.

O Modo EPP (Enhanced Parallel Port)


Este modo foi uma evolução do SPP. A comunicação entre o processador e o controlador da porta paralela aumentou de 8 para 32 bits e a comunicação entre a porta e o dispositivo conectado passou a ser de 2 MB/s teóricos (na realidade chegava a 800 KB/s). O conector não mudou, apenas a velocidade de transferência foi aumentada.

Com o aumento da taxa de transferência, foi necessário reforçar o isolamento do cabo utilizado na porta paralela, portanto muitos dispositivos com suporte a EPP já passaram a ser produzidos com um cabo reforçado. É comum pessoas dizerem que este cabo é "bidirecional" mas, não é bem assim. O modo de funcionamento da porta paralela é o mesmo e a única mudança, como eu já disse, é o isolamento do cabo contra interferências eletromagnéticas. Por a taxa de transferência ser mais alta, o cabo deve ter um isolamento melhor afim de evitar ruídos de EMI (Interferência eletromagnética). Caso seja utilizado o modo EPP com um cabo comum, haverá erros na transferência devido as interferências e a porta passará a funcionar no modo SPP.

O modo ECP (Extended Capabilities Port)


Este modo foi o último desenvolvido afim de melhorar o desempenho da porta LPT. Nesta revisão, para aumentar a taxa de transferência, foi utilizado o algoritmo RLE (Run Length Encoded - Comprimento de Percurso Codificado) para a compactação dos dados, reduzindo em até 64 vezes o tamanho de uma informação para envia-la.

No modo ECP também foi incluído o DMA (Direct Memory Access) para que as transferências possam ser feitas sem o conhecimento do processador, o deixando livre para outros processos. Ao configurar o canal DMA no BIOS do computador, opte por usar o DMA3, pois o DMA1 é o default para muitas placas de som e para a porta paralela, podendo assim, gerar conflitos no funcionamento.

A taxa de transferência foi mantida igual ao padrão EPP e o uso do cabo com isolamento reforçado também é obrigatório. A principal vantagem do modo ECP é não deixar o processador do computador ocupado com os envios e recebimentos de dados por esta interface.

Devemos também falar de compatibilidade! Um computador atual que ainda tenha suporte a porta paralela vem com os três modos de operação e você deverá saber qual modo que o dispositivo conectado à porta trabalha. Se você configurar o modo ECP e o dispositivo conectado trabalha apenas com o modo EPP, ele não irá funcionar corretamente. Para isso foi criada a opção "EPP+ECP" ou EPP&ECP" no BIOS, desta forma, o computador verifica qual o padrão utilizado de forma automática. O modo SPP (o modo mais antigo) só deve ser utilizado caso o dispositivo conectado não funcione com os outros modos, já que, por ser o primeiro modo lançado, o SPP está presente em todos os controladores de porta paralela e é a solução para problemas de compatibilidade.

Para que haja comunicação do hardware com o circuito controlador da porta paralela no computador, também há endereços. A porta paralela é rotulada com a sigla LPT, que significa Local Printer Terminal. Para o LPT1 é utilizado o endereço 378h (378 hexadecimal que vale 888 em decimal) e, para a LPT2 o endereço 278h (278 hexadecimal que vale 632 em decimal). Normalmente, os computadores possuem 1 ou 2 portas paralelas e por isso informei apenas o LPT1 e LPT2. Caso seja atribuído o mesmo endereço para duas ou mais portas, haverá um conflito entre elas e nenhum dispositivo conectado nelas irá responder corretamente.

Com a porta paralela também foi possível criar redes locais em topologia de anel. Isso começou com a chegada do Windows 95. Bastava ligar um PC no outro e configurar a rede pelo Windows, que já vinha com esta funcionalidade. Veja a imagem da topologia anel abaixo:

Topologia anel

Imagem 2

CURIOSIDADE: Na Imagem 1 é possível perceber que a estrutura de cor rosa do conector LPT é um plástico, mais especificamente LCP, sigla para Liquid Crystal Polymer, um material muito utilizado em slot's e conectores de placas de circuito devido a sua boa rigidez dielétrica e resistência a altas temperaturas. Para saber mais sobre polímeros, CLIQUE AQUI!


CONCLUÍNDO O RACIOCÍNIO


Após a dúvida de um leitor aqui do blog, resolvi dissertar sobre a utilização dos conectores DB e sua relação com as interfaces de comunicação planejadas sobre eles.

Os conectores DB foram inventados pela Cannon. O sistema de identificação da Cannon usa um "D" como prefixo para toda a série (pois o conector possui um formato de letra "D"), seguido de uma letra indicando o tamanho, como pode ser visto na lista abaixo:


-> A: 15 pinos;

-> B: 25 pinos;

-> C: 37 pinos;

-> D: 50 pinos;

-> E: 9 pinos.


A sequência de duas letras vem acompanhada do número real de pinos, seguido pelo gênero (M=macho, F=fêmea). Por exemplo, DB25M indica um conector "D" com um envoltório para 25 pinos contendo 25 contatos machos. A Cannon também produziu conectores com pinos especiais, maiores que os comuns. Posso citar como exemplo a variante DB13W3, que foi utilizada para conexões de vídeo de alta performance. Ela possuía 10 pinos regulares e mais três contatos coaxiais para os sinais de vídeo Red, Green e Blue (RGB).

É provável que, pelo fato do IBM ter grande influência sobre a conexão serial e paralela utilizando estes conectores, tornou-se comum denominar todos eles como sendo "DB", independentemente de serem, na verdade, "DA" "DC" ou "DE". Quando a porta serial do PC começou a usar conectores de 9 pinos, ela foi batizada de "DB9" em vez de "DE9". Essa nomenclatura caiu no gosto popular, ou foi a que 'pegou' entre os leigos, como preferir.

Os conectores DB estão agora definidos por uma norma internacional, a DIN 41652.


Os conectores DE9, DA15, DB25, DC37 e demais variações possuem centenas de utilidades até hoje. Posso até listar algumas delas:

-> interface Game: Utilizada para conectar Joysticks e até mouses muito antigos - utiliza conector DA15;

-> interface LPT: Impressoras e scanners antigos - utiliza o conector DB25;

-> Interface RS-232: Conexão de dados seriais (utilizadas em mouses antigos, anteriores a interface PS/2), que utiliza o conector DE9. A RS-232 também utiliza um conector DB25 em aplicações extremamente antigas.


Como você pode notar em meus exemplos acima, o DB25 foi utilizado tanto em uma interface de comunicação serial (RS-232 primitiva) quanto numa paralela (LPT). Isso se deve aos conectores, que foram projetados pra inúmeras utilidades, não havendo um padrão de uso, portanto, caso você encontre uma placa de expansão com conector DB25, DC37 ou qualquer outro, talvez ele tenha alguma aplicação específica, cabendo a análise por parte do técnico.

No caso do leitor que enviou a dúvida, a placa em questão possuía um conector DB25 e relés do tipo palheta (Reed Relays), além de, claro, alguns chip's, sendo um deles uma interface de periféricos programável. Atualmente ainda é comum achar placas deste tipo para aplicações que excedem as utilizações comuns dos conectores DB, como por exemplo a SeaLevel REL-16, que possui 16 reed relays e um conector DC37.

Como eu disse, em pleno 2016 ainda era possível encontrar placas-mãe com suporte a porta paralela, até porque, o controlador desta é componente do Super I/O, um chip relativamente simples e barato de se construir e que está em todas as placas-mãe, seja em um encapsulamento QFP100, QFP128 ou até mesmo integrado a Ponte Sul.

Se você fizer uma pesquisa no Mercado Livre e outros sites de compra pela internet, verá que existem também placas PCI Express x1 e PCI com suporte a uma porta paralela e duas seriais. São placas adaptadoras novas com estas interfaces super antigas!

Porta paraela e seriais em adaptador PCI Express

Imagem 3


Se você gostou do artigo é só curtir e compartilhar! Caso tenha ficado com dúvidas ou queira mandar sugestões, mande um e-mail para hardwarecentrallr@gmail.com. Não fique com dúvidas!

FONTES e CRÉDITOS

Texto, diagramas / tabelas e imagens: Leonardo Ritter

Fontes: Passei Direto; wikipedia (somente artigos com fontes verificadas); Biblioteca do Hardware Central.


Última atualização: 31 de Março de 2021.

480 visualizações

© 2020 Hardware Central Tecnologia Entretenimento e Comunicação do Brasil Ltda. Todos os direitos reservados.

Wix Editor / Revisão da web page: 3.1/2020 (16/07/20)