Los códigos convolucionales concatenados en serie ( SCCC ) son una clase de códigos de corrección de errores hacia adelante (FEC) muy adecuados para la decodificación turbo (iterativa). [1] [2] Los datos que se van a transmitir a través de un canal ruidoso se pueden codificar primero utilizando un SCCC. Tras la recepción, la codificación se puede utilizar para eliminar cualquier error introducido durante la transmisión. La decodificación se realiza mediante la decodificación repetida y el [des]entrelazado de los símbolos recibidos.
Los SCCC suelen incluir un código interno , un código externo y un entrelazador de enlace. Una característica distintiva de los SCCC es el uso de un código convolucional recursivo como código interno. El código interno recursivo proporciona la "ganancia del entrelazador" para el SCCC, que es la fuente del excelente rendimiento de estos códigos.
El análisis de los SCCC se originó en parte a partir del descubrimiento anterior de los códigos turbo en 1993. Este análisis de los SCCC se llevó a cabo en la década de 1990 en una serie de publicaciones del Laboratorio de Propulsión a Chorro (JPL) de la NASA. La investigación presentó los SCCC como una forma de códigos concatenados en serie similares a los de los turbos que 1) eran decodificables iterativamente ("turbo") con una complejidad razonable y 2) brindaban un rendimiento de corrección de errores comparable con los códigos turbo.
Las formas anteriores de códigos concatenados en serie no solían utilizar códigos internos recursivos. Además, los códigos constituyentes utilizados en formas anteriores de códigos concatenados en serie eran generalmente demasiado complejos para una decodificación SISO (soft-in-soft-out ) razonable. La decodificación SISO se considera esencial para la decodificación turbo.
Los códigos convolucionales concatenados en serie no han encontrado un uso comercial generalizado, aunque fueron propuestos para estándares de comunicaciones como DVB-S2 . No obstante, el análisis de los SCCC ha proporcionado información sobre el rendimiento y los límites de todos los tipos de códigos decodificables iterativos, incluidos los códigos turbo y los códigos LDPC . [ cita requerida ]
La patente estadounidense 6.023.783 cubre algunas formas de SCCC. La patente expiró el 15 de mayo de 2016. [3]
Los códigos convolucionales concatenados en serie se analizaron por primera vez con vistas a la decodificación turbo en "Concatenación en serie de códigos intercalados: análisis de rendimiento, diseño y decodificación iterativa" de S. Benedetto, D. Divsalar, G. Montorsi y F. Pollara. [4] Este análisis produjo un conjunto de observaciones para diseñar códigos concatenados en serie de alto rendimiento y decodificables por turbo que se asemejaran a los códigos turbo . Una de estas observaciones fue que "el uso de un codificador interno convolucional recursivo siempre produce una ganancia de entrelazador". [ aclaración necesaria ] Esto contrasta con el uso de códigos de bloque o códigos convolucionales no recursivos, que no proporcionan una ganancia de entrelazador comparable.
En "Coding Theorems for 'Turbo-Like' Codes" (Teoremas de codificación para códigos tipo turbo), D. Divsalar, Hui Jin y Robert J. McEliece [5] realizaron un análisis adicional de los SCCC. En este artículo se analizaron los códigos de repetición-acumulación (RA), que son la concatenación en serie de un código convolucional recursivo de dos estados interno (también llamado "acumulador" o código de verificación de paridad) con un código de repetición simple como código externo, con ambos códigos vinculados por un entrelazador. El rendimiento de los códigos RA es bastante bueno considerando la simplicidad de los propios códigos constituyentes.
Los códigos SCCC se analizaron más a fondo en "Modulación codificada por enrejado de turbo serial con código interno de tasa 1". [6] En este artículo, los SCCC se diseñaron para su uso con esquemas de modulación de orden superior. Se presentaron códigos de excelente rendimiento con códigos convolucionales constituyentes internos y externos de solo dos o cuatro estados.
La figura 1 es un ejemplo de un SCCC.
El codificador de ejemplo está compuesto por un código convolucional externo de 16 estados y un código convolucional interno de 2 estados unidos por un entrelazador. La tasa de código natural de la configuración mostrada es 1/4, sin embargo, los códigos interno y/o externo pueden perforarse para lograr tasas de código más altas según sea necesario. Por ejemplo, se puede lograr una tasa de código general de 1/2 perforando el código convolucional externo a una tasa de 3/4 y el código convolucional interno a una tasa de 2/3.
Para la decodificación turbo del SCCC es preferible un código convolucional interno recursivo. El código interno puede perforarse a una tasa de hasta 1/1 con un rendimiento razonable.
Un ejemplo de un decodificador SCCC iterativo.
El decodificador SCCC incluye dos decodificadores de entrada y salida suave (SISO) y un entrelazador. Aunque se muestran como unidades separadas, los dos decodificadores SISO pueden compartir la totalidad o parte de sus circuitos. La decodificación SISO se puede realizar en modo serie o paralelo, o una combinación de ambos. La decodificación SISO se realiza normalmente utilizando decodificadores de máximo a posteriori (MAP) que utilizan el algoritmo BCJR .
Los SCCC ofrecen un rendimiento comparable al de otros códigos decodificables iterativamente, incluidos los códigos turbo y los códigos LDPC . Se destacan por tener un rendimiento ligeramente peor en entornos de menor relación señal-ruido (es decir, peor región de cascada), pero un rendimiento ligeramente mejor en entornos de mayor relación señal-ruido (es decir, menor nivel de error).