Olá a todos! Espero que estejam todos bem.
No post de hoje veremos um assunto muito interessante: codificadores
e decodificadores.
Os codificadores e os decodificadores são circuitos
eletrônicos que possuem funções muito parecidas. Na realidade, a diferença
entre os dois é praticamente nula e se encontra principalmente na perspectiva.
Este conceito pode parecer bastante confuso no início, porém irá fazer mais
sentido no decorrer neste post. Um codificador é um circuito responsável por
transformar um código conhecido em um código desconhecido, enquanto um
decodificador faz o processo contrário (transforma um código desconhecido em um
código conhecido). É neste ponto que entra a parte da perspectiva. Vamos
imaginar um circuito que transforma números decimais em números binários. Do ponto
de vista humano, se trata de um circuito codificador, pois faz a conversão de
números decimais (muito utilizado e conhecido pelos seres humanos) em números
binários (muito conhecido e utilizado por computadores). Porém, do ponto de
vista do computador, se trata de um circuito decodificador, pois transforma os
decimais (desconhecidos para os computadores) em binário. Neste exemplo, parece
ser bem claro que o circuito se trata de um codificador, pois conhecemos muito
bem os números decimais e não temos tanta proximidade com códigos binários,
porém, ao trabalhar com códigos que não costumam ser muito utilizados por
humanos, esta confusão fica ainda mais clara. Por este motivo, costumamos
considerar os codificadores como sendo os componentes que tem mais entradas, enquanto
o decodificador é o componente com mais saídas.
Anteriormente já foi mencionado o exemplo de conversores
responsáveis por fazer a conversão de números decimais em binários. Anteriormente
neste mesmo blog, tivemos a oportunidade de aprender a fazer este tipo de
conversão manualmente. Também vimos, a alguns posts atrás, como desenvolver
circuitos eletrônicos. Juntando estes conhecimentos, se torna possível
desenvolver um circuito responsável por fazer este processo de conversão automaticamente.
Neste post em específico, será criado um circuito responsável por transformar
números decimais em binários de 4 bits, podendo converter números de 0 até 9. Este
código é chamado de BCD e já foi apresentado em posts anteriores deste blog.
O primeiro passo é desenvolver nossa tabela verdade. Ela
ficará assim:
E | B1 | B2 | B3 | B4 |
---|---|---|---|---|
0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 1 |
2 | 0 | 0 | 1 | 0 |
3 | 0 | 0 | 1 | 1 |
4 | 0 | 1 | 0 | 0 |
5 | 0 | 1 | 0 | 1 |
6 | 0 | 1 | 1 | 0 |
7 | 0 | 1 | 1 | 1 |
8 | 1 | 0 | 0 | 0 |
9 | 1 | 0 | 0 | 1 |
Podemos perceber que temos apenas uma entrada e várias saídas. Pode parecer complicado no início, mas na realidade, isso irá facilitar nosso trabalho. Podemos perceber, por exemplo, que a entrada “0” não aciona nenhuma saída. Sendo assim, não precisaremos ligá-la em nada. Também é possível notar que a saída “B4” é acionada apenas pelas entradas 1, 3, 5, 7 e 9. Sendo assim, podemos usar uma porta OR conectada a essas entradas e com a saída conectada em B4, pois qualquer uma dessas entradas deve acionar a saída B4.
A saída B3 deve ser acionada quando as entradas 2, 3, 6 e 7 receberem sinais, então podemos ligar estas saídas a algumas portas OU também.
Repetiremos este processo para todas as entradas. Ao final do processo, este é o circuito encontrado:
É possível perceber que a entrada “0” não está conectada a nada. Neste exemplo, foram usadas portas OU de duas e três entradas, para que seja possível perceber como várias portas lógicas podem ser usadas em conjunto, apresentando a mesma função que uma porta com mais entradas. Podemos perceber que este circuito é capaz de executar sua função corretamente:
Nenhum comentário:
Postar um comentário