En teoría de la información , un código polar es un código de corrección de errores de bloque lineal . La construcción del código se basa en una concatenación recursiva múltiple de un código de núcleo corto que transforma el canal físico en canales externos virtuales. Cuando el número de recursiones aumenta, los canales virtuales tienden a tener alta confiabilidad o baja confiabilidad (en otras palabras, se polarizan o se vuelven escasos), y los bits de datos se asignan a los canales más confiables. Los códigos polares fueron descritos por Erdal Arıkan en 2009. [1] Es el primer código con una construcción explícita para lograr demostrablemente la capacidad del canal.para canales discretos, sin memoria, de entrada binaria simétrica (B-DMC) con dependencia polinomial de la brecha de capacidad. En particular, los códigos polares tienen una modesta complejidad de codificación y decodificación O ( n log n ) , lo que los hace atractivos para muchas aplicaciones. Además, la complejidad energética de codificación y decodificación de los códigos polares generalizados puede alcanzar los límites inferiores fundamentales para el consumo de energía de los circuitos bidimensionales dentro de un factor O ( n ε polylog n ) para cualquier ε> 0 . [2]
Simulando códigos polares
Se puede implementar un entorno de simulación de códigos polares en cualquier lenguaje de programación como MATLAB , C ++ , etc.
Por lo general, implica modelar un codificador, un decodificador, un canal (como ruido gaussiano blanco aditivo (AWGN), canal simétrico binario (BSC), canal de borrado binario (BEC)) y un módulo de construcción de código.
Hay disponible un ejemplo de implementación de MATLAB, [3] que incluye una serie de tutoriales en vídeo introductorios.
Aplicaciones industriales
Hay muchos aspectos que los códigos polares deben investigar más a fondo antes de considerarlos para aplicaciones industriales. Especialmente, el diseño original de los códigos polares alcanza capacidad cuando los tamaños de bloque son asintóticamente grandes con decodificadores de cancelación sucesivos. Sin embargo, en los tamaños de bloque en los que operan las aplicaciones industriales, el rendimiento de la cancelación sucesiva es deficiente en comparación con los esquemas de codificación bien definidos e implementados, como el código de verificación de paridad de baja densidad (LDPC) y el código turbo (Turbo). El rendimiento de Polar se puede mejorar con la decodificación de listas de cancelación sucesivas, pero su usabilidad en aplicaciones reales sigue siendo cuestionable debido a las eficiencias de implementación muy deficientes, causadas por el enfoque iterativo. [4]
En octubre de 2016, Huawei anunció que había alcanzado 27 Gbit / s en pruebas de campo de 5G utilizando códigos polares para la codificación de canales. Las mejoras se han introducido de modo que el rendimiento del canal ahora casi ha cerrado la brecha con el límite de Shannon , que establece el listón para la tasa máxima para un ancho de banda dado y un nivel de ruido dado. [5]
En noviembre de 2016, 3GPP acordó adoptar códigos polares para los canales de control eMBB (banda ancha móvil mejorada) para la interfaz 5G NR (nueva radio). En la misma reunión, 3GPP acordó utilizar LDPC para el canal de datos correspondiente. [6]
Ver también
- Erdal Arıkan
- Categoría: Códigos de logro de capacidad
- Categoría: Códigos que se acercan a la capacidad
Referencias
- ^ Arikan, E. (julio de 2009). "Polarización de canal: un método para construir códigos de logro de capacidad para canales sin memoria de entrada binaria simétrica". Transacciones IEEE sobre teoría de la información . 55 (7): 3051–73. arXiv : 0807.3917 . doi : 10.1109 / TIT.2009.2021379 .
- ^ Blake, Christopher G. (2017). "Consumo de energía de los circuitos de codificación de control de errores" (PDF) . Universidad de Toronto . Consultado el 18 de octubre de 2019 .
- ^ "www.polarcodes.com" . Recursos sobre códigos polares .
- ^ Arikan, Erdal y col. "Desafíos y algunas nuevas direcciones en la codificación de canales". arXiv: 1504.03916 (2015).
- ^ "Huawei alcanza velocidades 5G de 27Gbps con Polar Code" . Consultado el 10 de octubre de 2016 .
- ^ "Informe final de la reunión # 87 del 3GPP RAN1" . 3GPP . Consultado el 31 de agosto de 2017 .[ enlace muerto ]