Saltar al contenido
Mi Universo Electrónico

Decodificador y Codificador

Un decodificador es un componente electrónico cuya función es detectar la presencia de una determinada combinación de bits en sus entradas, para, de esta forma, indicar con un nivel de salida (ALTO o BAJO), la presencia de esta combinación en sus entradas. Básicamente, un decodificador posee n líneas de entrada para poder gestionar n bits. Por otro lado, el decodificador posee 2n líneas de salida. Como podréis imaginar, existen decodificadores de diferentes cantidades de bits de entrada, así como decodificadores de diferentes tipos. Veamos algunos de ellos

Decodificador binario de 2 bits

En la siguiente imagen se muestra un decodificador de 2 entradas (A Y B) y 4 salidas (Q0, Q1, Q2 Y Q3) (decodificador 2:4).

decodificador de 2 entradas y 4 salidas

Para cada una de las combinaciones de entrada, tan solo se activa una única salida. La tabla de verdad de un decodificador de 2 entradas y 4 salidas es la siguiente:

DÍGITO DECIMALENTRADA
A1
ENTRADA
A0
SALIDA
3
SALIDA
2
SALIDA
1
SALIDA
0
0000001
1010010
2100100
3111000

Como se puede ver en la table de verdad del decodificador, con cada código de entrada se activa una de las salidas. Por ejemplo, si el código en la entrada es el «10», que corresponde al número «2» en decimal, se pone la salida «2» a nivel ALTO (1), mientras que el resto de salidas, están a nivel BAJO (0).

En este caso el decodificador tiene las salidas activas a nivel ALTO. También existen decodificadores que tienes las salidas activas a nivel BAJO. Veamos un ejemplo de ello.

Decodificador binario de 3 bits

En la siguiente imagen, se muestra un decodificador binario de 3 bits. Está formado por 3 entradas (D0, D1 y D2) y 8 salidas (Q0:Q7). En este caso, las salidas son activas a nivel BAJO, es decir, que cuando se active la correspondiente salida que corresponda con la combinación de entrada, dicha salida se pondrá a nivel BAJO (0), mientras que el resto de salidas, permanecerán a nivel ALTO (1).

DECODIFICADOR 3 A 8

Para entender el funcionamiento de este decodificador, os muestro la tabla de verdad del mismo, donde se observa qué salida se activa para cada una de las combinaciones de entrada.

DÍGITO DECIMALENTRADA
A2
ENTRADA
A1
ENTRADA
A0
SALIDA
7
SALIDA
6
SALIDA
5
SALIDA
4
SALIDA
3
SALIDA
2
SALIDA
1
SALIDA
0
000011111110
100111111101
201011111011
301111110111
410011101111
510111011111
611010111111
711101111111

Aplicaciones de los decodificadores binarios

Los decodificadores tiene diversas aplicaciones. Algunos ejemplos son:

  • Para implementar funciones lógicas. Respecto a las puertas lógicas presentan la ventaja de poder implementar las funciones lógicas con un menor numero de componentes.
  • En los ordenadores: el microprocesador de un ordenador se tiene que conectar con diversos periféricos, enviando y recibiendo datos por los puertos de entrada y salida. Se utiliza un decodificador para seleccionar el puerto de entrada/salida al que está conectado el periférico en concreto con el que se desea comunicar.
  • Diseño de circuitos digitales combinacionales: muchos circuitos combinacionales utilizan decodificadores, junto a las codificadores, para el envío de señales digitales entres dos puntos.

Ejercicio función lógica con decodificador

Implementar con un decodificador la función lógica dada por la tabla de verdad siguiente:

ENTRADA
A
ENTRADA
B
ENTRADA
C
SALIDA
S
0000
0011
0101
0110
1001
1011
1100
1111

Solución al ejercicio

Para implementar la función lógica dada por la tabla tenemos que conectar las entras A, B y C a las entradas de un decodificador de 3 entradas. A continuación, utilizando la primera forma canónica, es decir, cuando el valor de la salida es «1», obtendremos la función lógica con los minterms, quedando así

S = m1 + m2 + m4 + m5 + m7

Los minterms coinciden con el valor «decimal» de la fila, es decir, la salida es «1» en las filas 1, 2, 4, 5 y 7. Pues esas son las salidas del decodificador que vamos a conectar a una puerta OR para implementar la función lógica. Se representa el circuito con puertas NOR de dos entradas.

El circuito se muestra en la siguiente imagen.

solución función lógica con decodificador

Decodificador BCD a decimal

Un decodificador BCD a decimal convierte cada código BCD en uno de los posibles dígitos decimales. Se trata de un decodificador de 4 entradas y 10 salidas. Su funcionamiento es el mismo que los vistos anteriormente, excepto en el número de salidas, que tan solo se necesitan 10.

El símbolo de este decodificador se muestra en la figura.

decodificador BCD a decimal

En la siguiente tabla se muestra la salida que se activa con cada combinación de entrada.

DÍGITO DECIMALCÓDIGO BCDCÓDIGO BCDCÓDIGO BCDCÓDIGO BCDSALSALSALSALSALSALSALSALSALSAL
A3A2A1A09876543210
000000000000001
100010000000010
200100000000100
300110000001000
401000000010000
501010000100000
601100001000000
701110010000000
810000100000000
910011000000000

Decodificador BCD a 7-segmentos

El decodificador BCD a 7-segmentos es un componente al que se le introduce por sus entradas un código BCD y proporciona en sus salidas una combinación binaria que es capaz de excitar un display de 7-segmentos para generar un dígito decimal. El símbolo del decodificador BCD a 7-segmentos es el siguiente. En este caso, las salidas son activas a nivel bajo.

decodificador BCD a 7 segmentos

El funcionamiento del decodificador BCD a 7-segmentos es muy sencillo. Basta con introducir un numero codificado en BCD en las entradas del decodificador. Según el número introducido, se activarán las salidas necesarias para iluminar cada uno de los leds necesarios del display de 7 segmentos, para mostrar en el display el número introducido en las entradas.

Veamos un ejemplo de ello.

Ejercicio resuelto decodificador BCD a 7-segmentos

Realizar el diseño de un circuito en el que se muestre en un display de 7 segmentos el número 6.

Solución al ejercicio

En la siguiente figura se muestra el circuito pedido. Se utiliza un decodificador BCD a 7 segmentos para controlar el display digital en el que se mostrará el número. Para mostrar el número 6, tan solo es necesario colocar en las entradas del decodificador BCD, el código binario correspondiente al número 6, es decir «0110».

circuito con decodificador BCD a 7 segmentos y display de 7 segmentos

Codificador

Es un circuito lógico combinacional que realiza la función inversa al decodificador. Un codificador permite que se introduzca en una de sus entradas un nivel activo que representa un dígito, como puede ser un dígito decimal u octal, y lo convierte en una salida codificada en BCD o en binario.

Codificador decimal a BCD

El codificador decimal a BCD es un circuito que tiene diez entradas, una para cada dígito decimal, y cuatro salidas que corresponden al código BCD. El símbolo se muestra en la siguiente figura. Su funcionamiento es muy sencillo, en las salidas aparece el código BCD correspondiente a los dígitos en decimal que aparecen en las entradas.

codificador decimal a BCD

Este es un codificador básico de 10-líneas a 4-líneas.

Codificador 8 a 3

Se trata de un componente con 8 entradas y 3 salidas. Este codificador, muestra en la salida un código binario que corresponde al valor de la entrada activa en ese momento. Su símbolo es el siguiente, con entradas y salidas activas a nivel BAJO:

A continuación se muestra la tabla de verdad de un codificador sin prioridad de 8 a 3 con entradas y salidas activas a nivel ALTO.

ENTRADA
I7
ENTRADA
I6
ENTRADA
I5
ENTRADA
I4
ENTRADA
I3
ENTRADA
I2
ENTRADA
I1
ENTRADA
I0
SALIDA
2
SALIDA
1
SALIDA
0
00000001000
00000010001
00000100010
00001000011
00010000100
00100000101
01000000110
10000000111