Código de peso constante


En la teoría de la codificación , un código de peso constante , también llamado código m -de- n , es un código de detección y corrección de errores en el que todas las palabras de código comparten el mismo peso de Hamming . El código one-hot y el código balanceado son dos tipos de código de peso constante ampliamente utilizados.

La teoría está estrechamente relacionada con la de los diseños (como los diseños t y los sistemas Steiner ). La mayor parte del trabajo en este campo de las matemáticas discretas se ocupa de los códigos binarios de peso constante.

Los códigos binarios de peso constante tienen varias aplicaciones, incluido el salto de frecuencia en redes GSM . [1] La mayoría de los códigos de barras utilizan un código binario de peso constante para simplificar la configuración automática del umbral de brillo que distingue las rayas blancas y negras. La mayoría de los códigos de línea utilizan un código de peso constante o un código de disparidad emparejado de peso casi constante . Además de usarse como códigos de corrección de errores, el gran espacio entre las palabras de código también se puede usar en el diseño de circuitos asíncronos , tales como circuitos insensibles al retardo .

El problema central con respecto a los códigos de peso constante es el siguiente: ¿cuál es el número máximo de palabras de código en un código binario de peso constante con longitud , distancia de Hamming y peso ? Este número se llama .

Aparte de algunas observaciones triviales, generalmente es imposible calcular estos números de una manera sencilla. Los límites superiores vienen dados por varios teoremas importantes, como el primero y el segundo límites de Johnson , [2] ya veces se pueden encontrar mejores límites superiores de otras formas. Los límites inferiores se encuentran con mayor frecuencia al exhibir códigos específicos, ya sea con el uso de una variedad de métodos de matemáticas discretas o mediante una búsqueda intensiva en computadora. En 1990 se publicó una gran tabla de esos códigos que batieron récords, [3] y en 2006 se publicó una extensión a códigos más largos (pero solo para aquellos valores de y que son relevantes para la aplicación GSM). [1]

Un caso especial de códigos de peso constante son los códigos uno de N , que codifican bits en una palabra de código de bits. El código uno de dos usa las palabras de código 01 y 10 para codificar los bits '0' y '1'. Un código de uno de cuatro puede utilizar las palabras 0001, 0010, 0100, 1000 para codificar dos bits 00, 01, 10 y 11. Un ejemplo es la codificación de doble carril y el enlace de cadena [4] utilizado en retardo insensible circuitos. Para estos códigos y .