Codificadores e Decodificadores


Há classes de circuitos lógicos combinacionais que são muito utilizados. Em face disto, os fabricantes encapsularam tais circuitos e os vendem na forma de circuitos integrados (CI). Assim ocorre com Multiplexador (Mux), Demultiplexador (Demux), Codificador (Coder), Decodificador (Decoder), e outros.


Codificador

Assim como o demultiplexador é o circuito inverso do multiplexador, o decodificador é o circuito inverso do codificador.

O codificador é um circuito lógico que, como o próprio nome o diz, codifica um sinal que se encontra em uma forma para outra forma, usando um tipo de código.

Estrutura: Ele contém E entradas e S saídas. Seu uso correto se dá quando no máximo uma entrada tem o valor 1, ou alto (As demais, portanto, serão 0, ou baixo).
O trabalho do codificador é transformar o valor de entrada no valor de saída.
O valor de entrada indica qual dos pinos de entrada está na posição 1.
O valor de saída também indica qual dos pinos de entrada está na posição 1, mas de uma maneira diferente. Sim, porque existem diversas maneiras de representar um mesmo valor.

Vejamos isto com um exemplo. Suponha que você vá fazer um lanche numa filial do McDonald's (sem querer fazer propaganda!). No drive-thru (local onde você pega seu lanche sem sair do carro) você tem um mísero teclado para escolher seu lanche:

Os cozinheiros que fazem seu lanche precisam saber qual é a sua opção. Uma solução para a comunicação entre você e os cozinheiros, seria esta:
Circuito da solução 1

Observe que, para transmitir a sua opção, foram usados 4 fios elétricos (vermelhos).
Como só existem 4 opções possíveis (Lanches 1,2,3 e 4), é possível representar a escolha com dois dígitos binários (pois 2 dígitos binários podem representar 4 valores diferentes). Deste modo, numa segunda solução para transmitir a opção escolhida, vai ser necessário apenas 2 fios vermelhos. A correspondência entre os dígitos binários e a escolha está na tabela abaixo:

Correspondência entre os 2 dígitos binários e a escolha
D.B. Escolha
00 Lanche 1
01 Lanche 2
10 Lanche 3
11 Lanche 4

O nosso problema agora é transformar o impulso elétrico dos botões nos dígitos binários. E depois, lá na cozinha, transformar estes dígitos binários em impulsos para os leds. Os circuitos que fazem estas transformações são, respectivamente, o codificador e decodificador. O circuito da segunda solução é o seguinte:

Circuito da solução 2

Portanto, o codificador transforma um valor em seu valor codificado, que no nosso exemplo é transformar a escolha (L1,L2,L3,L4) em dígitos binários(DB1, DB2). O nosso codificador é o seguinte (tendo em vista que existem várias configurações para um codificador):

Como se vê, não é necessário que haja uma relação entre o número de entradas e de saidas em um codificador. No exemplo utilizado, temos 10 entradas e 4 saidas. Há diversas utilizações para o par Coder/Decoder. Para aproveitar a oportunidade de um primeiro exemplo, veja a Fig. 3.16-1a do livro texto: a tabela-verdade de um codificador com 4 entradas e 8 saidas. Poderia ir até 16 saidas, mas só foram utilizadas 8. A Fig. 3.16-1b do livro texto ilustra uma implementação para o codificador em questão.

Decodificador

O objetivo de um decodificador é a geração de mintermos para as entradas fornecidas. Portanto, é comum utilizar a denominação

n-to-m decoder

onde n entradas geram m  saidas (mintermos), e m é menor ou igual a 2n. Como um exemplo, considere a implementação do 3-to-8 decoder usando portas AND,


Anterior: Lógica Mista. Circuitos Combinacionais Próxima: Conversor de Código

Retornar ao índice de assuntos

Você pode falar comigo pelo e-mail: jbosco@inf.ufsc.br