Estoy trabajando con LDPC en el que quiero saber si el algoritmo de cambio de bit [Decodificación de decisión dura] detecta más de un bit de error. Ya he pasado por los tutoriales de LDPC y la videoconferencia del concepto de decodificación. Pero todavía no estoy claro.
Necesito implementar el decodificador LDPC para corregir más de un bit de error usando un algoritmo de decisión dura. Entonces, por favor, alguien me explique qué debo hacer para corregir más de un bit de error. Necesito lógica para implementar el LDPC.
- DUDA
Según la teoría de la decodificación de cambio de bits "Para el algoritmo de cambio de bits, los mensajes pasados a lo largo de los bordes del gráfico Tanner también son binarios: un nodo de bits envía un mensaje que declara si es uno o un cero, y cada nodo de verificación envía un mensaje a cada nodo de bits conectado, declarando qué valor el bit se basa en la información disponible para el nodo de verificación. El nodo de verificación determina que su ecuación de verificación de paridad se cumple si la suma de módulo-2 del bit de entrada los valores son cero. Si la mayoría de los mensajes recibidos por un nodo de bit es diferente de su valor recibido, el nodo de bit cambia (voltea) su valor actual. Este proceso se repite hasta que se cumplen todas las ecuaciones de comprobación de paridad ".
He intentado con el cambio de bits Aquí está un enlace
Por ejemplo, matriz H [4] [8] = {{0,1,0,1,1,0,0,1}, {1,1,1,0,0,1,0,0 }, {0,0,1,0,0,1,1,1}, {1,0,0,1,1,0,1,0}};
Palabra de código sin error: [10010101]
ReceivedCodeWord [8] = [10110101] // Error code wew 2nd bit Flipped
Después de decodificar, obtengo [10010001] // Estoy obteniendo una palabra de código incorrecta. ¿Por qué ese problema por favor explícame?
Gracias de antemano.