Código Gray: Convertidor de código binario a Gray

Se el primero en calificar

Ultima edición el 16 septiembre, 2021 por JORGE CABRERA BERRÍOS

¿Qué es Gray Code?

El código Gray , también conocido como código cíclico , código binario reflejado (RBC), binario reflejado (RB) o código Gray , se define como una ordenación del sistema numérico binario de modo que cada valor incremental solo puede diferir en un bit. En código gris, mientras se pasa de un paso a otro, solo cambia un bit en el grupo de códigos. Es decir, dos números de código adyacentes se diferencian entre sí en solo un bit.

El código Gray es el más popular de los códigos de distancia unitaria, pero no es adecuado para operaciones aritméticas. El código Gray tiene algunas aplicaciones en convertidores analógicos a digitales, además de ser utilizado para la corrección de errores en la comunicación digital. El código gris puede ser difícil de entender inicialmente, pero se vuelve mucho más fácil de entender al mirar las tablas de códigos grises a continuación.

Tabla de códigos grises

A continuación se muestra una tabla que muestra la conversión entre código binario a código gris y código decimal a gris:

Tabla de códigos grises

Convertidor de código binario a gris

El circuito lógico que convierte el código binario en un código gris equivalente se conoce como convertidor de código binario a gris . Se puede obtener un código gris de n bits reflejando un código de n-1 bit sobre un eje después de 2 n-1 filas y colocando el MSB (Bit más significativo) de 0 sobre el eje y el MSB de 1 debajo del eje. El reflejo de los códigos de Gray se muestra a continuación.

La tabla de conversión de código binario a gris de 4 bits se muestra a continuación:

Convertidor de código binario a gris

Eso significa que, en el código de gris, (4-1) o código de 3 bits de 4 bits se refleja en contra del eje dibujado después de la (2 4-1 ) º o 8 º fila.

El circuito convertidor de código binario a gris se muestra a continuación:

BCD a código gris

Cómo convertir código binario a Gray

  1. El MSB (bit más significativo) del código gris será exactamente igual al primer bit del número binario dado.
  2. El segundo bit del código será exclusivo -o (XOR) del primer y segundo bit del número binario dado, es decir, si ambos bits son iguales el resultado será 0 y si son diferentes el resultado será 1.
  3. El tercer bit del código gris será igual al o exclusivo (XOR) del segundo y tercer bit del número binario dado. Por lo tanto, continúa la conversión de código binario a gris. A continuación se ofrece un ejemplo para ilustrar estos pasos.

Ejemplo de conversión de código binario a gris

Digamos que tenemos un número binario 01001 que deseamos convertir a código gris. Veamos un ejemplo de cómo realizaríamos esta conversión:

  1. El MSB se mantiene igual. Como el MSB del binario es 0, el MSB del código gris también será 0 (primer bit gris)
  2. A continuación, tome el XOR del primer y segundo bit binario. El primer bit es 0 y el segundo bit es 1. Los bits son diferentes, por lo que el bit gris resultante será 1 (segundo bit gris)
  3. A continuación, tome el XOR del segundo y tercer bit binario. El segundo bit es 1 y el tercer bit es 0. Estos bits son nuevamente diferentes, por lo que el bit gris resultante será 1 (tercer bit gris)
  4. A continuación, tome el XOR del tercer y cuarto bit binario. El tercer bit es 0 y el cuarto bit es 0. Como son iguales, el bit gris resultante será 0 (cuarto bit gris)
  5. Por último, tome el XOR del cuarto y quinto bit binario. El cuarto bit es 0 y el quinto bit es 1. Estos bits son diferentes, por lo que el bit gris resultante será 1 (quinto bit gris)
  6. Por lo tanto, el resultado de la conversión de código binario a gris de 01001 está completo y el código gris equivalente es 01101.
Convertidor de código gris

Convertidor de código gris a binario

En un convertidor de código gris a binario , la entrada es el código gris y la salida es su código binario equivalente.

Consideremos un convertidor de código gris a binario de 4 bits. Para diseñar un convertidor de código gris a binario de 4 bits, primero tenemos que dibujar una tabla de conversión de código gris, como se muestra a continuación:

Tabla de verdad de código binario a gris

El circuito convertidor de código gris a binario se muestra a continuación:

Circuito convertidor de código gris a binario

Conversión de código gris a binario

La conversión de código Gray a binario es nuevamente un proceso muy simple y fácil. Los siguientes pasos pueden aclarar su idea sobre este tipo de conversiones.

  1. El MSB del número binario será igual al MSB del código gris dado.
  2. Ahora, si el segundo bit gris es 0, entonces el segundo bit binario será el mismo que el anterior o el primer bit. Si el bit gris es 1, el segundo bit binario cambiará. Si fue 1 será 0 y si fue 0 será 1.
  3. Este paso continúa para que todos los bits realicen la conversión de código Gray a binario .
Código gris a binario

Un ejemplo dado a continuación aclarará su idea.

Ejemplo de conversión de código Gray a binario

El MSB del binario será 0 ya que el MSB del gris es 0. Ahora pase al siguiente bit gris. Como es 1, el bit binario anterior se alterará, es decir, será 1, por lo que el segundo bit binario será 1. A continuación, observe el tercer bit del código gris. Es nuevamente 1, por lo tanto, el bit anterior, es decir, el segundo bit binario se alterará nuevamente y el tercer bit del número binario será 0. Ahora, el cuarto bit del gris dado es 0, por lo que el bit binario anterior no cambiará, es decir, el cuarto. El bit binario será 0. Ahora, de nuevo, el quinto bit gris es 1, por lo que el bit binario anterior se alterará, será 1 de 0. Por lo tanto, el número binario equivalente en el caso del código gris a la conversión binaria será (01001).

Binario a gris
Convertidor binario a gris
Convertidor de código binario a gris de 4 bits
BCD a código gris
Conversión de gris a binario
Fórmula binaria a gris

Secuencia de ejemplo de código gris

  1. El código gris solo puede cambiar un bit del paso anterior al siguiente. El cambio de bit siempre se produce del lado derecho al lado izquierdo, es decir, de LSB (bit menos significativo) hacia el MSB (bit más significativo).
  2. Sabemos que para el dígito binario hay dos combinaciones posibles: 0 y 1. Siguiendo nuestra regla, primero apuntamos al LSB (lado derecho). Por lo tanto, los primeros tres bits se mantienen constantes (es decir, 000) y el cuarto bit cambia de 0 a 1. Este es el equivalente decimal de 1.
  3. Ahora pase al siguiente bit del LSB, es decir, el tercer bit. Ahora cambiamos este bit de 0 a 1, que es el equivalente decimal de 2 (0011). Tenga en cuenta que, a diferencia del binario, no podemos pasar de 0001 a 0010, ya que esto está cambiando tanto el tercer bit (0 a 1) como el cuarto bit (1 a 0) al mismo tiempo.
  4. Ahora, para incrementar desde 0011, comenzamos en el LSB (lado derecho) y notamos que no hemos visto la combinación 0010 hasta ahora. Como tal, mantenemos los primeros tres bits constantes y cambiamos el último bit de 1 a 0. Por lo tanto, el código gris para el número decimal 3 es 0010
  5. Pasa al siguiente código. No podemos cambiar el 3er o 4to bit como hemos visto antes con estas combinaciones. Por lo tanto, pasamos al segundo bit y lo cambiamos de 0 a 1. Esto da el número decimal 4 como 0110 en código gris. Puede preguntarse por qué no podemos volver a cambiar el tercer bit, que también será un cambio de un bit con respecto al anterior. Pero como cambiar el tercer bit daría el código gris equivalente 0000 que ocurrió antes (número decimal 0), no podemos hacer esto. Recuerde que un número que aparece anteriormente no se puede repetir.
  6. Repitiendo nuestros pasos anteriores, mantendremos el primer y segundo bit constantes y encontraremos las posibles combinaciones del tercer y cuarto bit cambiando solo 1 bit en cada paso. Comience con el cuarto bit, ya que este es el LSB.

Los bits del código gris de 4 bits se consideran G 4 G 3 G 2 G 1 . Ahora de la tabla de conversión,

Código gris

A partir de los SOP (suma de productos) anteriores, dibujemos mapas de Karnaugh ( mapas K) para G 4 , G 3 , G 2 y G 1 .

Mapa de Gray Code K
Mapa de código binario K
Mapa gris
Código gris a binario

Aplicación del Código Gray

El código gris se utiliza en algunas aplicaciones específicas. Las principales aplicaciones incluyen su uso en convertidores analógicos a digitales, así como también para la corrección de errores en la comunicación digital. El código Gray se utiliza para minimizar los errores al convertir señales analógicas en señales digitales.

Frank Gray, la persona que lleva el nombre del código Gray, patentó un tubo de modulación de código de pulso (PCM). Este tubo PCM fue fabricado por Raymond W. Sears de Bell Labs (en colaboración con Frank Gray y William M. Goodall), quien le dio crédito a Gray por la idea del código binario reflejado (es decir, el código gris). Puede leer esto en televisión mediante modulación de código de pulso .

Algunas otras aplicaciones del código gris:

  • Minimización del circuito booleano
  • Comunicación entre dominios de reloj
  • Error de corrección
  • Algoritmos genéticos
  • Acertijos matemáticos
  • Codificadores de posición

Ventajas del código gris

  • Mejor para minimizar errores al convertir señales analógicas en señales digitales
  • Reduce la aparición de «paredes de Hamming» (un estado indeseable) cuando se utiliza en algoritmos genéticos
  • Puede usarse para minimizar un circuito lógico
  • Útil en el cruce de dominios de reloj

Desventajas del Código Gray

  • No apto para operaciones aritméticas
  • Uso práctico limitado fuera de unas pocas aplicaciones específicas

JORGE CABRERA BERRÍOS Administrator
Ingeniero Electrónico por la UNI, con maestría y doctorado por la University of Electro-Communications (Japón).

Deja un comentario

La máquina síncrona es una máquina eléctrica versátil que se utiliza en varios campos como su uso para generar energía…