Articulo de referencia

Algoritmo BCJR

El algoritmo Bahl-Cocke-Jelinek-Raviv (BCJR) es un algoritmo para la decodificación a posteriori máxima de códigos correctores de errores definidos en enrejados (principalmente ...

El algoritmo Bahl-Cocke-Jelinek-Raviv (BCJR) es un algoritmo para la decodificación a posteriori máxima de códigos correctores de errores definidos en enrejados (principalmente códigos convolucionales ). El algoritmo recibe su nombre de sus inventores: Bahl, Cocke, Jelinek y Raviv. [ 1 ] Este algoritmo es fundamental para los códigos correctores de errores modernos decodificados iterativamente, incluidos los códigos turbo y los códigos de verificación de paridad de baja densidad .

Pasos involucrados

Basado en el enrejado :

Variaciones

SBGT BCJR

Simplificación de Berrou, Glavieux y Thitimajshima. [ 2 ]

Log–MAP BCJR

El algoritmo Log-MAP es una implementación en el dominio logarítmico del decodificador BCJR (MAP). Al trabajar con verosimilitudes logarítmicas, evita el desbordamiento negativo numérico y convierte las multiplicaciones de probabilidad en sumas. En el dominio logarítmico, las recursiones hacia adelante y hacia atrás utilizan la identidad del logaritmo jacobiano ("max-star").ln(miincógnita+miy)=máximo(incógnita,y)+ln(1+mi|incógnitay|){\displaystyle \ln(e^{x}+e^{y})=\max(x,y)+\ln(1+e^{-|xy|})}, que produce las mismas razones de verosimilitud logarítmica a posteriori (LLR) que el algoritmo MAP/BCJR original cuando se aplica a las métricas de rama. [ 3 ]

En la práctica, el pequeño término de correcciónln(1+mi|incógnitay|){\displaystyle \ln(1+e^{-|xy|})}Se implementa mediante una tabla de búsqueda corta o una aproximación lineal por partes; trabajar en el dominio logarítmico también simplifica la normalización de las métricas de estado hacia adelante/atrás. Los decodificadores Log-MAP que generan LLR extrínsecos se utilizan ampliamente como componentes de entrada/salida suaves en decodificadores iterativos (turbo). [ 4 ] [ 5 ]

Una variante común de menor complejidad es **Max-Log-MAP**, que aproxima el logaritmo jacobiano eliminando el término de corrección (es decir, usandoln(miincógnita+miy)máximo(incógnita,y){\displaystyle \ln(e^{x}+e^{y})\approx \max(x,y)}Esto reduce la complejidad a costa de una pequeña pérdida de rendimiento en relación con Log-MAP/MAP; la diferencia se puede reducir con correcciones constantes/lineales o escalando la información extrínseca ("Max-Log-MAP normalizado/escalado"), recuperando típicamente unas décimas de dB dependiendo del código y la relación señal/ruido. [ 6 ] [ 7 ]

BCJR con ventana

Una versión modificada que procesa el enrejado en segmentos para reducir la complejidad computacional y los requisitos de memoria. Este enfoque es particularmente útil para secuencias muy largas donde el almacenamiento completo del enrejado resulta impracticable. La versión con ventanas mantiene un rendimiento casi óptimo a la vez que reduce significativamente la latencia y la utilización de recursos de hardware en las implementaciones. [ 8 ]

Implementaciones

Véase también

Referencias

  1. Bahl, L.; Cocke, J.; Jelinek, F.; Raviv, J. (marzo de 1974). "Decodificación óptima de códigos lineales para minimizar la tasa de error de símbolos". IEEE Transactions on Information Theory . 20 (2): 284– 7. doi : 10.1109/TIT.1974.1055186 .
  2. Wang, Sichun; Patenaude, François (2006). "Un enfoque sistemático para algoritmos BCJR MAP modificados para códigos convolucionales" . EURASIP Journal on Applied Signal Processing . 2006 095360. Bibcode : 2006EJASP2006..242W . doi : 10.1155/ASP/2006/95360 .
  3. Bahl, LR; Cocke, J.; Jelinek, F.; Raviv, J. (marzo de 1974). "Decodificación óptima de códigos lineales para minimizar la tasa de error de símbolos". IEEE Transactions on Information Theory . 20 (2): 284– 287. doi : 10.1109/TIT.1974.1055186 .
  4. Vogt, J.; Finger, A. (2000). "Mejora del decodificador turbo max-log-MAP" . Electronics Letters . 36 (23): 1937– 1939. Bibcode : 2000ElL....36.1937V . doi : 10.1049/el:20001357 .
  5. Li, Jian (2019). "Diseño de decodificador turbo basado en un algoritmo Log-MAP normalizado con LUT" . Electronics . 8 (9): 1037. doi : 10.3390/electronics8091037 . PMC 7515343. PMID 33267527 .  
  6. Robertson, P.; Villebrun, E.; Hoeher, P. (junio de 1995). "Una comparación de algoritmos de decodificación MAP óptimos y subóptimos que operan en el dominio logarítmico" (PDF) . Proc. IEEE ICC . págs. 1009–1013 . 
  7. Chen, J. (2003). Algoritmos de decodificación de complejidad reducida para códigos LDPC (PDF) (Tesis). Universidad de Hawái en Mānoa.
  8. Viterbi, AJ (1998). "Una justificación intuitiva y una implementación simplificada del decodificador MAP para códigos convolucionales". IEEE Journal on Selected Areas in Communications . 16 (2): 260– 264. Bibcode : 1998IJSAC..16..260V . doi : 10.1109/49.661114 . ISSN 0733-8716 . 
  • El libro de texto en línea "Teoría de la información, inferencia y algoritmos de aprendizaje" , de David JC MacKay , analiza el algoritmo BCJR en el capítulo 25.
  • Implementación del algoritmo BCJR en el marco de procesamiento de señales Susa.