PREVIEW
Encoder (4-to-2)

Encoder (4-to-2)

Encoders/Decoders signal_cellular_alt_2_bar Intermediate schedule 18 min

Codificador

Descripcion general

  • Proposito: El codificador es un codificador de prioridad 4 a 2, un circuito digital combinacional que convierte senales de entrada activas en un codigo binario que representa la entrada activa de mayor prioridad. Realiza la operacion inversa de un decodificador, reduciendo 4 lineas de entrada a un codigo binario de 2 bits.
  • Simbolo: El codificador se representa como un bloque rectangular con 4 lineas de entrada (D0, D1, D2, D3) y 2 lineas de salida (Q0, Q1).
  • Rol en DigiSim.io: Sirve como bloque de construccion fundamental para la deteccion de prioridad, generacion de direcciones y codificacion de entradas en circuitos digitales.

encoder component

Descripcion funcional

Comportamiento logico

El codificador es un codificador de prioridad que produce el codigo binario de la entrada activa de mayor prioridad. Cuando multiples entradas estan activas simultaneamente, el codificador produce el codigo de la entrada activa con el numero mas alto; las entradas de menor prioridad se tratan como "no importa" (X).

Tabla de verdad (Codificador de prioridad 4 a 2):

D3 D2 D1 D0 Q1 Q0
0 0 0 1 0 0
0 0 1 X 0 1
0 1 X X 1 0
1 X X X 1 1

Entradas y salidas

  • Entradas:

    • 4 entradas de datos (D0, D1, D2, D3): Cuatro lineas de entrada, donde D3 tiene la mayor prioridad y D0 tiene la menor.
  • Salidas:

    • 2 salidas binarias (Q0, Q1): Codigo binario de 2 bits que representa la entrada activa de mayor prioridad.

Parametros configurables

  • Manejo de prioridad: El codificador usa resolucion de prioridad; cuando multiples entradas estan activas, la entrada con el numero mas alto tiene precedencia.
  • Retardo de propagacion: El tiempo que tardan las salidas en cambiar despues de cambios en la entrada.

Representacion visual en DigiSim.io

El codificador se muestra como un bloque rectangular con 4 pines de entrada (D0-D3) en un lado y 2 pines de salida (Q0, Q1) en el lado opuesto. Cuando se conecta en un circuito, el componente indica visualmente las entradas activas y el codigo binario resultante en las salidas mediante cambios de color en los cables de conexion.

Valor educativo

Conceptos clave

  • Codificacion binaria: Demuestra como multiples senales pueden codificarse en forma binaria compacta.
  • Compresion de datos: Ilustra como multiples lineas de senal pueden reducirse a menos lineas.
  • Conversion one-hot a binario: Muestra la relacion entre representaciones one-hot y binarias.
  • Diseno de logica combinacional: Introduce el diseno de circuitos logicos para funciones de codificacion.

Objetivos de aprendizaje

  • Comprender como multiples senales de entrada pueden codificarse en formato binario.
  • Aprender la relacion entre codificadores y decodificadores como componentes complementarios.
  • Reconocer la diferencia entre codificadores basicos y codificadores de prioridad.
  • Aplicar codificadores en el diseno de sistemas de procesamiento de entradas y generadores de direcciones.
  • Comprender como los codificadores pueden reducir eficientemente el numero de lineas de senal en sistemas digitales.

Ejemplos de uso/Escenarios

  • Codificacion de teclado: Conversion de pulsaciones de teclas en codigos binarios.
  • Deteccion de prioridad: Identificacion de la entrada activa de mayor prioridad en sistemas con requisitos de prioridad.
  • Generacion de direcciones: Creacion de direcciones binarias a partir de senales de seleccion one-hot.
  • Procesamiento de entradas: Conversion de varios formatos de entrada en codigos binarios estandarizados.
  • Sistemas de control: Codificacion de multiples senales de estado en forma compacta para procesamiento.

Notas tecnicas

  • El codificador de DigiSim.io es un codificador de prioridad: cuando multiples entradas estan activas, produce el codigo binario de la entrada activa de mayor prioridad (numero mas alto).
  • La configuracion 4 a 2 usa 4 entradas (D0-D3) y produce una salida binaria de 2 bits (Q0, Q1).
  • En DigiSim.io, el codificador responde inmediatamente a los cambios de entrada, modelando el comportamiento de logica combinacional de los codificadores de prioridad.

Caracteristicas

  • Tamano de entrada: 4 lineas de entrada (D0-D3)
  • Tamano de salida: 2 lineas de salida (Q0, Q1)
  • Retardo de propagacion: Retardo temporal entre el cambio de entrada y la salida estable
  • Fan-In: Numero de lineas de entrada que el codificador puede manejar
  • Fan-Out: Numero de compuertas logicas que cada salida puede alimentar
  • Validacion de entrada: Caracteristica opcional para detectar entradas validas/invalidas
  • Control de habilitacion: Algunos codificadores incluyen entradas de habilitacion para controlar la operacion
  • Prioridad de entrada: Si el codificador respeta la prioridad entre entradas
  • Consumo de energia: Uso de energia durante la operacion

Tipos de codificadores

  1. Codificadores basicos

    • Codificador simple sin caracteristicas de prioridad o validacion
    • Asume que solo una entrada esta activa a la vez
  2. Codificadores de prioridad

    • Resuelve multiples entradas activas segun prioridad
    • Produce el codigo para la entrada de mayor prioridad
    • A menudo incluye una bandera de salida de "entrada valida"
  3. Codificadores decimal a BCD

    • Codificadores 10 a 4 para conversion de decimal a decimal codificado en binario
    • Usado en aplicaciones de visualizacion numerica y teclado
  4. Codificadores octal a binario

    • Codificadores 8 a 3 para conversion de octal a binario
    • Comun en sistemas de computacion
  5. Codificadores hexadecimal a binario

    • Codificadores 16 a 4 para conversion de hexadecimal a binario
    • Usado en aplicaciones de decodificacion de direcciones
  6. Codificadores de teclado

    • Codificadores especializados para entradas de teclado numerico o teclado
    • Convierten pulsaciones de teclas en codigos binarios

Aplicaciones

  1. Generacion de direcciones

    • Conversion de senales one-hot a direcciones binarias
    • Direccionamiento de memoria en sistemas digitales
  2. Perifericos de entrada

    • Codificacion de entrada de teclado y teclado numerico
    • Conversion de arreglos de interruptores a binario
  3. Decodificacion de instrucciones

    • Codificacion de patrones de instrucciones en CPUs
    • Generacion de codigos de operacion
  4. Sistemas de control

    • Codificacion de estado para aplicaciones de control
    • Codificacion de seleccion de modo
  5. Multiplexacion digital

    • Seleccion de direcciones para control de multiplexores
    • Seleccion de canal en sistemas de comunicacion
  6. Compresion de datos

    • Reduccion de multiples lineas de senal a menos lineas
    • Conversion de datos paralelos a formatos mas compactos

Metodos de implementacion

  1. Arreglos de compuertas logicas

    • Usando compuertas OR para combinar entradas segun patrones de bits de salida
    • Puede implementarse con componentes discretos o en forma de CI
  2. Circuitos integrados

    • 74148: Codificador de prioridad 8 a 3
    • 74147: Codificador de prioridad decimal a BCD 10 a 4
    • 74LS348: Codificador de prioridad 8 a 3 con habilitacion
  3. Diseno HDL

    • Sentencias case o asignaciones condicionales
    • Cadenas if-else de prioridad para codificadores de prioridad
    • Facilmente parametrizable para diferentes tamanos
  4. Implementacion basada en ROM

    • Usando tablas de busqueda almacenadas en ROM
    • Adecuado para esquemas de codificacion complejos

Implementacion del circuito (Codificador de prioridad 4 a 2)

Un codificador de prioridad 4 a 2 puede implementarse usando compuertas OR con logica de prioridad:

graph LR
    D1[D1] --> OR0[OR Gate]
    D3[D3] --> OR0
    OR0 --> Q0[Q0 Output]

    D2[D2] --> OR1[OR Gate]
    D3 --> OR1
    OR1 --> Q1[Q1 Output]

Logica: Q0 es ALTO cuando D1 o D3 es la entrada activa de mayor prioridad. Q1 es ALTO cuando D2 o D3 es la entrada activa de mayor prioridad.

Ecuaciones booleanas (Codificador de prioridad 4 a 2)

Para el codificador de prioridad 4 a 2:

Q0 = D1·D̄2·D̄3 + D3
Q1 = D2·D̄3 + D3

Simplificado (la logica de prioridad asegura que la entrada activa de numero mas alto gana):

Q0 = D3 + D1·D̄2
Q1 = D3 + D2

Donde + representa OR logico, · representa AND logico, y D̄ representa NOT

Componentes relacionados

  • Decodificadores: Realizan la operacion inversa (binario a one-hot)
  • Multiplexores: Usados con codificadores para seleccion de datos
  • Demultiplexores: Usados con decodificadores para distribucion de datos
  • Arbitros de prioridad: Similares a los codificadores de prioridad pero con formato de salida diferente
  • Convertidores de codigo: Transforman entre diferentes esquemas de codificacion
  • Contadores binarios: A menudo usan codificadores para deteccion de estado
  • Comparadores: A veces implementados usando principios de codificador
  • Decodificadores de direcciones: Operacion inversa usada en sistemas de memoria

school Ruta de Aprendizaje

arrow_back Requisitos Previos

arrow_forward Siguientes Pasos

help_outline Preguntas Frecuentes

¿Qué es un codificador de prioridad?

Un codificador de prioridad produce el código binario de la entrada activa de mayor prioridad. Si múltiples entradas están activas, solo se codifica la de número más alto.

¿Dónde se usan los codificadores?

Sistemas de prioridad de interrupciones, codificación de teclado, detección de posición y conversión de representaciones one-hot a binario.

play_arrow Ejecutar Circuito en Vivo

Ver Otros Componentes