Curso grátis de eletrônica: portas lógicas

Quando projetamos ou analisamos circuitos lógicos, não nos preocupamos com detalhes internos, como seus transistores, diodos e resistores. Levamos em conta apenas as entradas e saídas. Nos diagramas de circuitos digitais, desenhamos apenas os símbolos dos circuitos que implementam as funções lógicas. Chamamos esses circuitos de portas lógicas. A figura abaixo mostra os símbolos das principais portas lógicas.

símbolo  de ports lógicas Símbolos das portas lógicas

Nesta mesma figura apresentamos também as portas lógicas XOR (exclusive OR ou “ou exclusivo”) e XNOR (exclusive NOR). A função XOR tem uma tabela verdade bastante parecida com a da função OR. Seu significado o seguinte: o bit de saída será ligado se um dos bits de entrada estiver ligado, mas não ambos ao mesmo tempo. Portanto a única diferença entre as funções OR e XOR que:

1 OR 1 = 1

1 XOR 1 = 0

A B A XOR B A B A XNOR B
0 0 0 0 0 1
0 1 1 0 1 0
1 0 1 1 0 0
1 1 0 1 1 1

Mostramos também acima a tabela verdade do operador XNOR, que é o inverso do operador XOR. Observe que a função XNOR funciona como um comparador. Seu resultado 1 quando os dois bits de entrada são iguais, e 0 quando os dois bits de entrada são diferentes.

Circuitos lógicos complexos

A construção de circuitos lógicos complexos é uma simples questão de agrupar essas portas básicas, produzindo funções mais elaboradas. A tabela anterior, por exemplo, mostra o circuito de um comparador binário. Este circuito faz a comparação de dois valores binários de 4 bits cada um. A saída do circuito será 1 quando os dois valores binários de 4 bits presentes nas entradas forem iguais. Digamos que esses valores sejam representados por A3, A2, A1, A0, B3, B2, B1 E B0.

A saída Y do circuito será ativada em 1 quando tivermos iguais esses valores. Por exemplo A=0110 e B=0110. Este tipo de circuito é muito utilizado como decodificador de endereços nas placas de CPU e nas placas de expansão. Os valores do endereço A podem ser originados no barramento de endereços do processador, e os valores de B são originados em um grupo de microchaves ou jumpers que, dependendo da forma como são configurados, podem indicar bits 0 ou 1. O circuito comparador irá ativar sua saída em 1 quando o endereço recebido for igual ao endereço definido pelas microchaves ou jumpers. Obviamente para isto é necessário um comparador maior, operando com maior número de bits, mas seu princípio de funcionamento é o mesmo.

Utilizando um número maior de portas lógicas, podemos formar circuitos mais complexos. A figura abaixo mostra o circuito de um contador binário de 4 bits. Este circuito recebe um sinal de clock e gera nas suas 4 saídas, números binários na sequência 0000, 0001, 0010, etc. Pode ser programado para contar no modo decimal, ou seja, passando de 9 (1001) para 0 (0000), ou então no formato hexadecimal, passando de F (1111) para 0 (0000).

circuito comprador de 4 bits Comparador de 4 bits

Gera ainda um bit de “vai 1” e pode ser agrupado com outros circuitos iguais, formando assim contadores com qualquer número de dígitos. Pode ainda ser programado para fazer contagem crescente ou decrescente.

circuito contador binário Contador binário

Um projetista de hardware pode obter circuitos digitais de várias formas. A mais simples é utilizando chips padrões de mercado, que normalmente apresentam encapsulamentos como os da figura abaixo. Os encapsulamentos mostrados na figura são o DIP (Dual In-Line Package) e SOIC (Small Outline Integrated Circuit). Existem circuitos com portas AND, OR, NOR, NAND, inversores, e funções mais complexas, mas de uso comum, como decodificadores, comparadores, contadores, registradores, etc.

encapsulamento dip e soic Chips com encapsulamento DIP plástico e SOIC

Nos manuais dos chips que contém circuitos lógicos básicos, encontramos diagramas que indicam o que existe no seu interior, como nos exemplos da figura acima. Os chips deste exemplo têm o seguinte conteúdo:

  • 4 portas NAND de 2 entradas;
  • 3 portas AND de 3 entradas;
  • 4 portas AND de 2 entradas;
  • 2 portas NAND de 4 entradas;
  • 4 portas XOR de 2 entradas;
  • 1 porta NAND de 8 entradas;
  • 4 portas NOR de 2 entradas;
  • 4 portas OR de 2 entradas;
  • 6 inversores (portas NOT).
diagrama de um chip ttl Diagramas de alguns chips TTL

Ao projetar um circuito digital, usamos inicialmente as portas necessárias para implementar a função desejada. Depois contamos quantas portas de cada tipo são necessárias. Finalmente escolhemos os chips apropriados que contenham as portas desejadas, e finalmente realizamos as ligações entre os pinos desses chips.

diagrama do chip 74ls181

Diagrama interno do chip 74LS181 – unidade lógica e aritmética de 4 bits

A figura acima mostra o diagrama interno do chip 74LS181. Este chip é uma unidade lógica e aritmética de 4 bits, capaz de realizar 16 operações lógicas e aritméticas, entre adição, subtração, AND, OR, etc.

Vários chips desses podem ser ligados em cascata para formar unidades com maior número de bits. Este chip tem pouco mais de 60 portas lógicas. Em um microprocessador existem vários milhões de portas lógicas, executando entre outras, funções como as deste chip, porém com maior número de bits. Como este curso destina-se apenas a dar noções sobre eletrônica, não vamos analisar o funcionamento do circuito, mas acredite, ele realmente soma, subtrai e faz várias outras operações. Desta forma podemos entender como as portas lógicas podem ser interligadas para formar um computador.

Como construir uma memória com portas lógicas

Para construir um computador, não basta utilizar operadores lógicos e aritméticos. É preciso também ter memória, uma característica fundamental dos circuitos digitais. Células de memória podem ser facilmente construídas a partir do diagrama básico mostrado na figura abaixo. Este circuito é chamado de FLIP FLOP.

circuito flip flop Célula de memória.

Suas duas entradas R e S devem permanecer com valores 1. Para armazenar um bit 1 na célula, basta aplicar momentaneamente um bit 0 na entrada S (Set). Para armazenar um bit 0 na célula, basta aplicar momentaneamente um bit 0 na entrada R (Reset). Vejamos como isto ocorre, detalhadamente.

Suponha que as entradas estejam em repouso, ou seja, R=1 e S=1.

Aplicamos momentaneamente um bit 0 em S. A porta NAND ligada em S, ao receber 0 nesta entrada, produzir uma saída Y=1 (lembre-se da tabela verdade da função NAND: se pelo menos uma das entradas é 0, a saída é 1).

A porta 2 está, então, recebendo as entradas R=1 e Y=1 (note que a saída Y do circuito funciona como entrada da porta 2). Como 1 NAND 1 = 0, teremos uma saída X=0 na saída da porta 2. Este zero, ao entrar na porta 1, continuará produzindo saída Y=1, e agora isto independe do valor de S, já que 0 NAND 0 = 1 e 0 NAND 1 =1.

Agora a entrada S pode voltar ao seu valor de repouso 1, e a saída Y continuará sendo mantida em 1. Temos então um bit 1 armazenado.

Da mesma forma, o circuito também pode armazenar um bit 0, bastando manter S em 1, e momentaneamente levando a entrada R ao valor 0. O que ocorre é o seguinte:

Ao receber uma entrada 0 em R, a porta 2 produzirá uma saída X=1. A porta 1 está recebendo neste momento, X=1 e S=1. Portanto temos Y = 1 NAND 1, que vale 0.

O valor Y=0 chega à entrada da porta 2. Como 0 NAND (qualquer coisa) vale 1, teremos X=1, independentemente do valor de R, que agora pode voltar ao seu estado de repouso, ou seja, com valor 1.

A porta 1 está recebendo as entradas X=1 e S=1. Como 1 NAND 1 = 0, mais uma vez temos reforçado o bit 0 na saída Y.

As entradas R e S podem voltar aos seus valores de repouso (R=1 e S=1) e o circuito manterá armazenado um bit Y=0.

É um circuito extremamente simples, mas realmente é uma surpresa a sua capacidade de “lembrar” um bit. Circuitos como este são agrupados até formar células de memória com muitos bits. Milhões dessas células são encontradas em um chip de memória, formando vários megabytes.

Projetando chips

O método mais simples para projetar circuitos lógicos é utilizar chips básicos como os mostrados na figura abaixo. Este é um método indicado para a construção de protótipos ou projetos de pequena complexidade. Para produção profissional, entretanto, é preciso utilizar métodos mais eficientes.

Circuitos lógicos de média complexidade tornam-se muito grandes quando utilizamos chips básicos. Uma solução para esses casos é utilizar microcontroladores. Esses chips são microprocessadores que possuem em seu interior uma unidade de processamento, memória ROM, RAM e circuitos de apoio. Quando o circuito a ser projetado não precisa ser extremamente veloz (por exemplo, uma placa lógica para controlar uma máquina de refrigerantes, ou máquina de lavar, ou o painel de controle de um DVD player), a melhor solução é não construir um circuito, e sim um programa que receba as entradas e gere as saídas. Quando o circuito a ser criado precisa ser muito veloz, os microcontroladores tornam-se ineficientes. Uma solução bastante viável é utilizar chips programáveis. Esses chips possuem em seu interior, um grande número de portas lógicas. Através de um programa de CAD, criamos o circuito com o auxílio de um PC e simulamos o seu funcionamento. Terminado o projeto, o circuito “gravado” no chip programável. Esta programação consiste em definir as conexões que são realizadas entre os módulos internos do chip programável. Tais chips programáveis são chamados de PLD (programmable logic devices) e EPLD (eraseable programmable logic devices). Os dois principais fabricantes desses produtos são a Altera e Xilinx.

Utilizando PLDs e EPLDs, projetos complexos podem ser criados em pouco tempo, e ficam extremamente compactos. Até mesmo a produção em série pode ser feita, em pequena escala. Quando a escala de produção é maior e os custos finais do produto precisam ser reduzidos, a melhor coisa a fazer é projetar chips novos.

O projeto de chips é feito através de programas especiais de CAD. Definimos os circuitos lógicos a serem utilizados e simulamos o funcionamento do circuito final, tudo através de um PC. Terminado o projeto, o programa de CAD irá gerar arquivos de impressão, que transferidos para um equipamento apropriado, irão resultar em fotolitos. Esses fotolitos são levados a uma máquina de produção de chips, que podem então ser produzidos aos milhares, com baixo custo unitário de produção. Todo este equipamento é muito caro, e até mesmo a contratação de empresas especializadas tem custo elevado, e só compensa quando os chips são produzidos aos milhares.

Deixe um comentário

O seu endereço de e-mail não será publicado.