Lógica com transístores bipolares

Alguns amigos expressaram suas preferências por um outro tipo de transístor. o FET (Field Effect Transistor, ou “Transístor de Efeuti de Campo”), mais especificamente o MOSFET (Metal Oxid Semiconductor FET). Eu e toda a indústria de microinformática compartilhamos dessa preferência… E falarei sobre esse tipo de transístor no próximo artigo. Antes, é conveniente entendermos o funcionamento do tipo de circuito lógico mais difundido na história da eletrônica digital: O TTL.

TTL é a sigla de Transistor-Transistor Logic. Significa que, no circuito integrado, o componente de entrada é um transístor e o de saída também é. Esse tipo de circuito ainda é usado, especialmente com circuitos que contenham microcontroladores que trabalham em “baixa” frequência de clock (alguns MHz!)…Embora não sejam o crème de la crème da tecnologia digital, eles são de fabricação bem mais barata do que as tecnologias mais recentes. E são eficientes.

Portas lógicas são uma abstração conveniente:

Para o não iniciado, circuitos lógicos são compostos de portas lógicas e alguns blocos mágicos que operam de acordo com algum algoritmo arcano. No entanto, esses circuitos lógicos são feitos de circuitos discretos mais elementares: Transístores, diodos, resistores e capacitores… É importante conhecê-los para entender seus limites, características e usos. Por exemplo, a saída de uma porta lógica TTL padrão pode fornecer (ou consumir) correntes máximas de 16 mA (para saída em nível baixo) e 400 μA (para saída em nível alto). Se seu circuito tentar “drenar” correntes maiores que essas o circuito integrado vai ser danificado. A mesma coisa se aplica à entrada. Correntes maiores que 1,6 mA (para nível alto) e 40 μA (para nível baixo), na entrada, faz com que o chip faça “puff” e saia uma fumacinha fedorenta…

O circuito simplificado de uma porta inversora:

O circuito abaixo é o equivalente usado na família TTL. Mais especificamente o 7404. Retirei algumas coisas, como o diodo de proteção da entrada, para simplificar a análise. Estou também usando o circuito TTL típico e menos especializado… Alguns membros da família TTL são mais complexos porque superam os limites de velocidade e consumo de corrente usando coisas como diodos e transístores Schottky, por exemplo. Esses outros circuitos podem ser encontrados em datasheets e são bem mais chatos de entender…

unprotected ttl-nand-gate
Porta lógica inversora TTL padrão

Para analisar o circuito acima vamos aplicar as tensões VCC e GND na entrada A e ver o que acontece na saída Y… Nos TTL padrão a tensão de alimentação VCC é de +5 V.

De acordo com o que sabemos sobre portas inversoras, se aplicarmos VCC na entrada A, a saída Y deverá ir para nível baixo (GND) e, se colocarmos GND em A, Y deverá estar em nível alto (VCC). Para continuarmos a análise adotarei 4 pontos de teste de tensão nomeados de V1 até V4, conforme indicados abaixo:

ttl-nand-gate - test points

Analisando o circuito lógico:

Já sabemos que um BJT só conduz se a tensão V_{BE} \approx 0,6\,V. Qualquer valor menor que esse e ele estará em corte. No circuito acima, a configuração estranha do transístor Q1 indica que ele é usado apenas como dois diodos em oposição.

É evidente que se A for VCC, então o diodo entre base e emissor de Q1 estará em corte. Isso significa que o transístor Q2 estará polarizado corretamente e conduzindo, já que teremos três diodos diretamente polarizados e em série (o diodo base-coletor de Q1, o diodo base-emissor de Q2 e o diodo base-emissor de Q4). Quanto ao V_{BE} em Q4, é bom notar que o resistor R4 está em paralelo ao diodo da junção BE do transístor. Será a corrente I_E de Q2 que fará com que V4 seja aproximadamente 0,6 V, mas a tensão é mantida nesse valor graças ao diodo em Q4.

Assim, Q4 poderá estar conduzindo (depende da carga em Y). Mas, e quanto a Q3?

Note que, se Q2 está em saturação, a tensão V3 é aproximadamente igual a tensão V4. Mas, mesmo que a saída Y esteja ligada diretamente a GND, a tensão necessária, em V3, para que Q3 conduza é de cerca de, pelo menos, 1,2 V (a tensão V_{BE} de Q3 mais a tenão de barreira do diodo na saída). Mas, só temos, aproximadamente, 0,6 V em V3, ou seja, Q3 estará com certeza, em corte.

O circuito, simplificado, para quando A estiver conectado em VCC é o mostrado à esquerda, na figura abaixo, onde o diodo é a junção BC de Q1:

not-gate-ahl

Agora, se colocarmos A ligado à GND o diodo base-emissor de Q1 estará diretamente polarizado e conduzindo. Isso coloca a tensão V1 em 0,6 V. Dessa forma, o diodo base-coletor de Q1 não poderá conduzir por causa daqueles 3 diodos em série que citei antes. Teríamos que ter, no mínimo 1,8 V em V1 para o diodo base-coletor de Q1 conduzisse… Assim, Q2 e Q4 estarão em corte. O que faz com que Q3 esteja diretamente polarizado (se tivermos carga), colocando nível alto na saída! Isso é mostrado no circuito simplificado do lado direito, na figura acima. O diodo ligado a R1 é a junção EB de Q1.

Nesse cenário podemos inferir que a tensão de entrada mínima para que uma porta lógica TTL encare o sinal como “nível alto” é de 1.2 V (as tesnões V_{BE} de Q2 e Q4, ou seja, a tensão mínima necessária em V2). Infelizmente a coisa não é bem assim…

Faixas assimétricas:

Porque os circuitos integrados TTL usam BJTs que podem trabalhar na região ativa (fora das regiões de corte e saturação), as faixas de valores de tensão de entrada e saída, interpretadas como nível alto e baixo são diferentes e assimétricas. Eis as faixas, em escala, para o padrão TTL:

Ranges
Na entrada, de GND até 0.8 V temos a garantia de que o “nível” de entrada é “0” (baixo). Qualquer coisa acima disso, até o limiar que chamei de ponto “indefinido” tem probabilidade menor de ser interpretado como “0”. A mesma coisa é válida para nível alto: De +2 V até +5 V (a tensão nominal de circuitos TTL) e teremos entrada em nível alto.

Note que a saída possui faixas diferentes das da entrada.

Essas “garantias” têm a ver com os dois transístores, Q3 e Q4, na saída. Esses níveis de tensão na entrada são garantias de que apenas um dos dois transístores de saída estejam conduzindo. Com valores de entrada mais “incertos”, ambos podem estar conduzindo com “resistências diferentes”, onde um terá mais influência do que outro.

Outro detalhe é que as tensões de saída dependem da carga conectada à saída Y. Note que, no caso do nível alto de saída, existe um resistor R3 que causará queda de potencial de acordo com a corrente sendo drenada da fonte de alimentação. Há outra queda de potencial no diodo, em série com o emissor de Q3. Portanto, nível alto, na saída, jamais poderá alcançar o patamar de 5 V, quando há carga.

No caso da saída em nível baixo, o transístor Q4 dita, junto com a carga, a tensão de saída… Como ele, geralmente, estará saturado, essa tensão costuma ser bem próxima de zero.

A assimetria das faixas dos níveis lógicos e das entradas e saída dos TTL é esquisita à primeira vista, mas é útil: Se tivermos nível baixo na saída de uma porta lógica, teremos, pelo menos, 0.4 V. As perdas em fios, ou trilhas numa placa de circuito impresso, diminuirão a tensão, que continuará sendo zero… Mas, mesmo que por um efeito de indução alguma tensão seja adicionada, na entrada de outra porta lógica pode chegar até o dobro dessa tensão máxima (de saída) que continuará sendo interpretado como nível baixo! O mesmo acontece com o nível alto… Se perdermos 0.4 V na saída (cujo mínimo de saída, garantido, é 2.4 V), a entrada de outra porta, ainda assim, encarará 2 V como nível alto, garantidamente.

A desvantagem da tecnologia TTL:

A grande desvantagem dos TTL não é o tamanho do circuito (os cristais dos coletores costumam ser maiores que os dos emissores e, ambos, bem maiores do que os da base). Sobre isso falarei mais quando mostrar a tecnologia CMOS… Nem mesmo a velocidade é um problema. O que não agrada aos projetistas é a dissipação de calor!

Como TTL usa BJTs, que precisam estar polarizados, todo o circuito consome corrente mesmo se nenhum trabalho útil for feito (mesmo se a entrada A e a saída Y estiverem “em aberto”!). Ou seja, energia é gasta somente com a polarização, por assim dizer… Quando falamos de algumas poucas portas lógicas, isso não tem lá grande influência, mas num microprocessador, com “trocentos zilhões” de transístores, a capacidade de fritar bacon em cima do circuito integrado não é uma feature muito desejada.

Para mitigar problemas de temperatura, velocidade e outros, a família TTL não é monolítica. Ela é dividida em “séries”. Os circuitos integrados tem numeração iniciada com 74, seguido de algumas letras (se houverem) e outro número que corresponde ao circuito lógico implementado… Por exemplo, o 7404 é um “CI” que contém 6 portas inversoras, cujo circuito mostrei lá em cima… Mas, existe também o 74S04, 74LS04, 74HC04, 74ALS04 e um monte de outros… Cada um desses é um pouquinho diferente (mais rápidos, ou que consomem menos, ou compatíveis com CMOS, etc)… Existem séries que trabalham com VCC de +5 V, outras com +3,3 V e ainda outras com +1,8 V. E por ai vai…

Se você está curioso, disponibilizarei, mais tarde, Databooks antigos que contém uma lista com diversos modelos de “CIs” (Circuitos Integrados) TTL. Mas, prepare-se! A lista é enorme!

A família 54

Falei que os CIs da família 74 são TTLs… Mas as da família 54 também são! Qual é a diferença? A família 54 é mais “parrudinha”. Ela existe para aplicações militares… Normalmente os CIs da família 74 possuem invólucro plástico ou de alguma resina especial. Os da família 54 geralmente têm invólucro cerâmico. Eles aguentam temperaturas mais altas. Suspeito, ainda, que a família 74 use prata ou alguma liga mais baratinha para a ligação dos terminais externos com o die do CI, enquanto a família 54, provavelmente, usa ouro ou algum outro metal de alta condutividade e alto ponto de fusão…

Anúncios