CAPÍTULO 3. DECODIFICACIÓN Y SIMULACIONES
3.8 Resultados y discusión de las simulaciones
Las simulaciones de este material tienen fines educativos y se obtuvieron todas a partir de un código LDPC regular de razón 0.5, utilizando uno de los métodos de diseño posibles. En
este caso la distribución de „unos‟ en la construcción de la matriz H se obtuvo con el
método Evenboth. La diferencia entre las gráficas radica en la longitud de código utilizada
en la simulación. Todas las gráficas muestran el desempeño del código bajo cuatro algoritmos de decodificación. Es preciso destacar que la elección de las gráficas incluidas en este epígrafe tienen como objetivo caracterizar el desempeño de los códigos desde el punto de vista de la decodificación iterativa, y no el desempeño según el método de diseño, solo dos en este software: regulares e irregulares; porque para este caso la diferencia es notable con longitudes de código muy grandes (Mackay, 2005), impráctico desde el punto de vista computacional con la utilización de este software. No obstante, también es posible, variando los métodos de diseño y manteniendo la longitud del código constante; pero los resultados no son significativos para las posibles en el software.
En la figura 3.4 se muestra el desempeño del código con .
donde: el desempeño para todos los algoritmos es muy pobre, algo que está en relación con lo planteado en los capítulos anteriores, debido a que el valor de es muy pequeño. Un rasgo significativo en la figura 3.4 resulta el cambio de monotonía experimentado en el punto de los 2dB para los algoritmos SPA en el dominio de las probabilidades, logarítmico
y para el algoritmo Min-Sum, delimitando de esta forma la región conocida como error-
floor ó de errores bajos. La Pb (probabilidad de error de bit) más significativa es la
alcanzada por el algoritmo Min-Sum en los 2dB de . Es notable que el desempeño
de los algoritmos SPA en el dominio de las probabilidades y logarítmico coincide, porque la diferencia entre estos algoritmos está basada en la complejidad y no en el desempeño (Ryan, 2003). Otra correspondencia entre los estudios y los resultados está dada por el
desempeño del algoritmo Bit- flipping, pésimo para los valores de utilizados, que
son bajos porque esta es la región de interés.
Ahora la figura 3.5 resulta del código anterior con .
Figura 3.5 Simulación del código con
Existen coincidencias con la figura 3.4, como son: el bajo desempeño del algoritmo Bit- flipping y el comportamiento de los algoritmos SPA en el dominio de las probabilidades y logarítmico que sigue coincidiendo, sólo que en este caso el desempeño varía y aunque para
los dB es de , peor en relación con la figura 3.4 ( , las curvas comienzan a mostrar un comportamiento estable. El valor más significativo es de
en los dB, valor de probabilidad superior a todos los de la figura 3.4.
La figura 3.6 se simuló con una longitud de código .
Figura 3.6 Simulación del código con
En esta se aprecia la estabilidad a partir de los dB. En los dB el desempeño es el
mismo que en la figura 3.5 pero el valor de Pb alcanzado en los dB es el mejor de todos,
de , demostrando así como mejora el desempeño a medida que se incrementa la
longitud del código. El comportamiento de los algoritmos para se acerca más a
lo expuesto en los capítulos anteriores, por tanto la figura 3.4 no es buen patrón para medir el desempeño porque es pequeña y las curvas son inestables. Sin embargo se incluye para ratificar el anterior planteamiento.
La figura 3.7 muestra el desempeño del código con , pero ahora con el algoritmo
Bit-flipping solamente y el eje de Eb/No extendido hasta los dB para una mejor
visualización La elección de esta gráfica tiene como objetivo ver el desempeño del código bajo este tipo de decodificación por su importancia, algo que hasta el momento no era
visible en las demás gráficas. Aquí es apreciable como mejora el desempeño asintóticamente a partir de los 6.5dB.
Figura 3.7 Simulación del código con y algoritmo Bit-flipping.
En el Anexo III se incluye una simulación obtenida de (Thangaraj, 2006) donde se muestra el desempeño de un código similar al simulado en este epígrafe pero con longitudes de código superiores a las alcanzadas por el software utilizado. Es apreciable que el desempeño mejora cada vez más a medida que se incrementa acercándose al valor umbral.
En conclusión mediante las simulaciones se comprobaron los principales planteamientos expuestos a lo largo del trabajo, siendo los principales: la mejora en el desempeño de los códigos LDPC cuando se incrementa la longitud de código ( ), la consolidación de que el algoritmo de decodificación iterativa SPA que utiliza la decisión suave resulta óptimo para este tipo de código, la demostración de que el desempeño del código sin importar el valor
de bajo el algoritmo de decodificación SPA en el dominio de las probabilidades y
complejidad (Ryan, 2003); se comprobó además, que, cuando aumenta y las gráficas se estabilizan el algoritmo Min-Sum presenta un ligero empobrecimiento en el desempeño con relación a los SPA y que el peor desempeño es brindado por el algoritmo Bit-flipping que utiliza la decisión rígida.
CONCLUSIONES Y RECOMENDACIONES
Conclusiones:
Mediante este trabajo se arribaron a las siguientes conclusiones:
1 Se describieron diferentes métodos de diseños para códigos LDPC, demostrando
cómo mejora el desempeño significativamente cuando se utilizan métodos que evitan los ciclos cortos en el gráfico de Tanner, como los algoritmos PEG y ACE.
2 Como resultado de la investigación de la codificación eficiente en estos tipos de
códigos, se demostró que utilizando la técnica de triangulación superior aproximada se logra mantener la complejidad casi lineal durante el proceso de codificación, solo
difiere en un pequeño factor g.
3 Se caracterizaron diferentes algoritmos de decodificación, comprobando que los
algoritmos basados en la decodificación iterativa por desición suave son superiores, permitiendo el mejor desempeño el algoritmo SPA en el dominio logarítmico.
4 Mediante las simulaciones obtenidas se demostró que la selección de un algoritmo de
decodificación está en correspondencia con la aplicación, para aplicaciones con grandes velocidades de transferencia es preferido el algoritmo Bit-flipping por su poca complejidad a expensas de un empobrecimiento en el desempeño; para aplicaciones con razones de errores muy bajas se utilizan los algoritmos SPA, ó el Min-Sum que ofrece menor complejidad con un ligero aumento de la potencia requerida.
Recomendaciones:
1 Continuar el estudio de los códigos LDPC por su importancia y aplicabilidad en
sistemas de comunicaciones digitales.
2 Implementar un código LDPC de razón variable con grandes longitudes de bloque
para una aplicación práctica con calidad de servicio.
3 Dado los magníficos desempeños mostrados por estos códigos y su creciente
utilización en diversas aplicaciones, incluir este tema en el plan de estudio de la carrera.
GLOSARIO
ACE: Approximated Cyclic Extrinsic message degree. APP: a posteriori probability.
BEC: Binary Erasure Channel.
BI-AWNG: Binary Input-Additive White Noisy Gaussian. BPA: Belief Propagation Algorithm.
BSC: Binary Symmetric Channel.
DTMB: Digital Terrestrial Multimedia Broadcasting. DVB-S2: Digital Video Broadcasting-Satelite version 2. eIRA: extended Irregular Repeat Accumulated.
EMD: Extrinsic message degree. fdp: function density probabilities. IRA: Irregular Repeat Accumulated. LDPC: Low Density Parity Check. LLR: Likelihood probability rate. LR: Likelihood probability. MAP: maximum a posteriori. MPA: Messages Passing Algorithm. PEG: Progressive Edge Growth. RA: Repeat Accumulated. SPA: Sum-Product Algorithm.
REFERENCIAS BIBLIOGRÁFICAS
AMRAOUI, A. (2001).Disponible en: http://lthcwww.epfl.ch/research/ldpcopt. Visitado el: 21 de enero del 2009
BOSSERT, M. (2002) "Low Density Parity Check Codes". Department of
Telecommunications and Applied Information Theory University of Ulm.
C.E.SHANNON (1957) "Certain results in coding theory for noisy channels". Information
and Control.
COLM P. FEWER, M. F. F. (2007) "A Versatile Variable Rate LDPC Codec Architecture".
IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS, 54.
D.COSTELLO,S. L.,1983,"Error- Control Coding",Fundamentals and Applications,HALL,
P.
D.DIVSALAR, H. J., AND R. MCELIECE (2000) "Coding theorems for turbo-likes
codes". Proc. 36th Annual Allerton Conf. on Comm., Control, and Computingce.
ELEFTHERIOU, E. (May,2002) "Low-density parity-check codes for digital subscriber
lines". Proc. 2002 Int. Conf. on Comm.
FAN, J. (Sept. 2000) "Array Codes as low-density parity-check codes". 2nd Int. Symposium
on Turbo Codes and Related Topics. Brest, France.
GALLAGER, R. G. (1963) "Low-Density Parity-Check Codes". IRE Trans. Information
Theory 21-28.
H. JIN , A. K., R. MCELIECE (2000) "Irregular repeat-accumulate codes". Proc. 2nd. Int.
Symp. on Turbo codes and Related Topics. France.
J. HAGENAUER, E. O., L. PAPKE (1996) "Iterative decoding of binary block and
convolutional codes". IEEE Trans. Information Theory, 429-445.
JUNBIN CHEN, L. W., YONG LI (2005) "The Design and Simulation of q-ary LDPC
Codes Based on the PEG algorithm". Program for NCET in universities of China.
L. DINOI, F. S., S. BENDETTO (2005) "Design of Variable-rate Irregular LDPC Codes
M. CHIANI, A. V. (2001) "Desing and performance evaluation of some high-rate irregular
low-density parity-check". Proc. 20001 IEEE GloveCom Conf Champaign.
M. LUBY, N. A. (Nov. 1996) "A linear time erasure-resilient code with nearly optimal
recovery ". IEEE Trans. Information Theory, 1732-1736.
M. YANG, W. E. R. (July 2003) "Lowering the error rate floors of moderate-length high-
rate LDPC codes". Proc. 2003 Int. Symp. on Inf. Theory.
M.J, B. (2005) "LDPC Codes- a brief Tutorial".
MACKAY, D. (1999) "Good error correcting codes based on very sparse matrices". IEEE
Trans. Information Theory, 399-431.
MACKAY, D. (2003).Disponible en: http://www.inference.phy.cam.ac.uk/mackay. Visitado el: 2 de febrero del 2009
MACKAY, D. (2005) "Information Theory, Inference, and Learning Algorithms",
Cambridge University Press.
NARAYANASWAMI, R. (2001) "Coded Modulation with Low-Density Parity'Check Codes". Texas A&M University.
NEAL, R. M. (2006).Disponible en: http://www.cs.toronto.edu/~radford/ftp/LDPC-2006- 02-08/. Visitado el: 10 de marzo del 2009
NUGROHO, B. (2006).Disponible en: http://bsnugroho.googlepages.com/LDPCCode. Visitado el 2 de febrero del 2009.
PROAKIS, J. G.,2001,"Digitals Comunications",Tomo II.
R. NEAL, D. M. (1995) "Good codes based on very sparse matrices". Cryptography and
Coding, 5th IMA Conference.
RYAN, W. E. (2003) "An Introduction to LDPC Codes". Department of Electrical and
Computer Engineering. The University of Arizona.
S. Y. CHUNG, G. D. F., T. RICHARDSON, R. URBANKE (Feb. 2001) "On the design of
low-density parity-check codes within 0.0045 dB of the Shannon limit". IEEE
Communications Letters, 5, 58-60.
SKLAR, B.,1988,"Digital Communications. Fundamentals and Aplications",Tomo I. T. RICHARDSON , R. U.,2007,"Modern Coding Theory",Cambridge University Press,
TANNER, R. M. (Sept.1981) "A recursive approach to low complexity codes". IEEE
Trans. Information Theory 533-547.
TAO TIAN, C. J., RICHARD WESEL,JOHN VILLASENOR (2002) "Construction of
Irregular LDPC Codes with Low Error Floors". Electrical Engineering Department,
University of California, Los Angeles, CA.
THANGARAJ, A. (2006) "Low Density Parity Check Codes".
VASIC, B. (2001) "Combinatorial constructions of low-density parity-check codes for
X. HU, E., E., ARNOLD,D (2001) "Progressive Edge-Growth Tanner Graphs". IEEE Globecom Conference 2001.
Y. KOU, S. L., M. FOSSORIER (Nov. 2001) "Low-density parity-check codes based on
finite geometries: a rediscovery and new results". IEEE Trans. Information Theory,