logo

Codificador en lógica digital

Un codificador es un circuito digital que convierte un conjunto de entradas binarias en un código binario único. El código binario representa la posición de la entrada y se utiliza para identificar la entrada específica que está activa. Los codificadores se utilizan comúnmente en sistemas digitales para convertir un conjunto paralelo de entradas en un código en serie.

El principio básico de un codificador es asignar un código binario único a cada entrada posible. Por ejemplo, un codificador de 2 a 4 líneas tiene 2 líneas de entrada y 4 líneas de salida y asigna un código binario único de 4 bits a cada una de las 2^2 = 4 combinaciones de entrada posibles. La salida de un codificador suele ser activa baja, lo que significa que solo una salida está activa (baja) en un momento dado y las salidas restantes están inactivas (alta). La salida baja activa se selecciona según el código binario asignado a la entrada activa.



Existen diferentes tipos de codificadores, incluidos codificadores de prioridad, que asignan una prioridad a cada entrada, y codificadores ponderados binarios, que utilizan un sistema de ponderación binario para asignar códigos binarios a las entradas. En resumen, un codificador es un circuito digital que convierte un conjunto de entradas binarias en un código binario único que representa la posición de la entrada. Los codificadores se utilizan ampliamente en sistemas digitales para convertir entradas paralelas en códigos en serie.

relleno css

Un codificador es un circuito combinacional que realiza la operación inversa de un Descifrador . Tiene un máximo de 2^n líneas de entrada y 'n' líneas de salida , por lo tanto, codifica la información de 2^n entradas en un código de n bits. Producirá un código binario equivalente a la entrada, que está activa en Alto. Por lo tanto, el codificador codifica 2^n líneas de entrada con 'n' bits.

Codificador



Tipos de codificadores

Existen diferentes tipos de codificadores que se mencionan a continuación.

  • Codificador 4 a 2
  • Codificador octal a binario (codificador 8 a 3)
  • Codificador de decimal a BCD
  • Codificador de prioridad

Codificador 4 a 2

El codificador 4 a 2 consta de cuatro entradas Y3, Y2, Y1 e Y0, y dos salidas A1 y A0 . En cualquier momento, sólo una de estas 4 entradas puede ser '1' para obtener el código binario respectivo en la salida. La siguiente figura muestra el símbolo lógico del codificador 4 a 2.

Codificador 4 a 2

Codificador 4 a 2



La tabla de verdad de 4 a 2 codificadores es la siguiente.

rebajas con imágenes
ENTRADAS SALIDAS
Y3 Y2 Y1 Y0 A1 A0
0 0 0 1 0 0
0 0 1 0 0 1
0 1 0 0 1 0
1 0 0 0 1 1

Expresión lógica para A1 y A0:

A1 = Y3 + Y2 A0 = Y3 + Y1>

Las dos funciones booleanas A1 y A0 anteriores se pueden implementar utilizando dos puertas OR de entrada:

Implementación usando OR Gate

Implementación usando OR Gate

Codificador octal a binario (codificador 8 a 3)

El codificador de 8 a 3 o codificador octal a binario consta de 8 entradas : Y7 a Y0 y 3 salidas : A2, A1 y A0. Cada línea de entrada corresponde a cada dígito octal y tres salidas generan el código binario correspondiente. La siguiente figura muestra el símbolo lógico de octal al codificador binario.

abc con números
Codificador octal a binario (codificador 8 a 3)

Codificador octal a binario (codificador 8 a 3)

La tabla de verdad para el codificador de 8 a 3 es la siguiente.

ENTRADAS SALIDAS
Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 A2 A1 A0
0 0 0 0 0 0 0 1 0 0 0
0 0 0 0 0 0 1 0 0 0 1
0 0 0 0 0 1 0 0 0 1 0
0 0 0 0 1 0 0 0 0 1 1
0 0 0 1 0 0 0 0 1 0 0
0 0 1 0 0 0 0 0 1 0 1
0 1 0 0 0 0 0 0 1 1 0
1 0 0 0 0 0 0 0 1 1 1

Expresión lógica para A2, A1 y A0.

A2 = Y7 + Y6 + Y5 + Y4 A1 = Y7 + Y6 + Y3 + Y2 A0 = Y7 + Y5 + Y3 + Y1>

Las dos funciones booleanas A2, A1 y A0 anteriores se pueden implementar utilizando cuatro entradas O puertas .

Implementación usando OR Gate

Implementación usando OR Gate

Codificador de decimal a BCD

El codificador de decimal a binario generalmente consta de 10 líneas de entrada y 4 líneas de salida . Cada línea de entrada corresponde a cada dígito decimal y 4 salidas corresponden al código BCD. Este codificador acepta los datos decimales decodificados como entrada y los codifica en la salida BCD que está disponible en las líneas de salida. La siguiente figura muestra el símbolo lógico del codificador de decimal a BCD:

Codificador de decimal a BCD

Codificador de decimal a BCD

La tabla de verdad para decimales Codificador BCD es como sigue.

ENTRADAS SALIDAS
Y9 Y8 Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 A3 A2 A1 A0
0 0 0 0 0 0 0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 0 1 0 0 0 0 1
0 0 0 0 0 0 0 1 0 0 0 0 1 0
0 0 0 0 0 0 1 0 0 0 0 0 1 1
0 0 0 0 0 1 0 0 0 0 0 1 0 0
0 0 0 0 1 0 0 0 0 0 0 1 0 1
0 0 0 1 0 0 0 0 0 0 0 1 1 0
0 0 1 0 0 0 0 0 0 0 0 1 1 1
0 1 0 0 0 0 0 0 0 0 1 0 0 0
1 0 0 0 0 0 0 0 0 0 1 0 0 1

Expresión lógica para A3, A2, A1 y A0.

 A3 = Y9 + Y8 A2 = Y7 + Y6 + Y5 +Y4 A1 = Y7 + Y6 + Y3 +Y2 A0 = Y9 + Y7 +Y5 +Y3 + Y1>

Las dos funciones booleanas anteriores se pueden implementar mediante puertas OR.

convención de nomenclatura de java
Implementación usando OR Gate

Implementación usando OR Gate

Codificador de prioridad

Un codificador de prioridad 4 a 2 tiene 4 entradas : Y3, Y2, Y1 y Y0, y 2 salidas : A1 y A0. Aquí, la entrada, Y3 tiene el más alta prioridad , mientras que la entrada Y0 tiene la prioridad más baja . En este caso, incluso si más de una entrada es '1' al mismo tiempo, la salida será el código (binario) correspondiente a la entrada, que tiene mayor prioridad . La tabla de verdad para el codificador de prioridad es la siguiente.

ENTRADAS SALIDAS
Y3 Y2 Y1 Y0 A1 A0 EN
0 0 0 0 X X 0
0 0 0 1 0 0 1
0 0 1 X 0 1 1
0 1 X X 1 0 1
1 X X X 1 1 1

La expresión lógica para A1 se muestra a continuación.

Expresión lógica

Expresión lógica

La expresión lógica para A0 se muestra a continuación.

índice_subcadena en sql
Expresión lógica

Expresión lógica

Las dos funciones booleanas anteriores se pueden implementar como.

Codificador de prioridad

Codificador de prioridad

Hay algunos errores que suelen ocurrir en los codificadores y que se mencionan a continuación.

  • Hay una ambigüedad cuando todas las salidas del codificador son iguales a cero.
  • Si más de una entrada está activa en Alto, entonces el codificador produce una salida, que puede no ser el código correcto.

Entonces, para superar estas dificultades, debemos asignar prioridades a cada entrada del codificador. Entonces, la salida del codificador será el código correspondiente a las entradas activas altas, que tienen mayor prioridad.

Aplicación de codificadores

  • Los codificadores son circuitos electrónicos muy comunes que se utilizan en todos los sistemas digitales.
  • Los codificadores se utilizan para traducir los valores decimales al binario para realizar funciones binarias como suma, resta, multiplicación, etc.
  • Otras aplicaciones, especialmente para codificadores prioritarios, pueden incluir la detección de interrupciones en aplicaciones de microprocesador.

Ventajas de utilizar codificadores en lógica digital

  • Reducción del número de líneas: Los codificadores reducen la cantidad de líneas necesarias para transmitir información desde múltiples entradas a una única salida, lo que puede simplificar el diseño del sistema y reducir el costo de los componentes.
  • Fiabilidad mejorada: Al convertir múltiples entradas en un único código de serie, los codificadores pueden reducir la posibilidad de errores en la transmisión de información.
  • Desempeño mejorado: Los codificadores pueden mejorar el rendimiento de un sistema digital al reducir la cantidad de tiempo necesario para transmitir información desde múltiples entradas a una única salida.

Desventajas de utilizar codificadores en lógica digital

  • Mayor complejidad: Los codificadores suelen ser circuitos más complejos en comparación con multiplexores y requieren componentes adicionales para su implementación.
  • Limitado a aplicaciones específicas: Los codificadores solo son adecuados para aplicaciones en las que un conjunto paralelo de entradas debe convertirse en un código de serie.
  • Flexibilidad limitada: Los codificadores tienen una flexibilidad limitada, ya que solo pueden codificar un número fijo de entradas en un número fijo de salidas.
  • En conclusión, los codificadores son circuitos digitales útiles que tienen sus ventajas y desventajas. La elección de utilizar o no un codificador depende de los requisitos específicos del sistema y de las compensaciones entre complejidad, confiabilidad, rendimiento y costo.

Preguntas de la esquina de GATE CS

Practicar las siguientes preguntas le ayudará a poner a prueba sus conocimientos. Todas las preguntas se han formulado en GATE en años anteriores o en pruebas simuladas de GATE. Es muy recomendable que los practiques.

  1. GATE CS 2013, pregunta 65
  2. GATE CS 2014 (conjunto 3), pregunta 65