Codificador de Viterbi

Anuncio
Autor: Byron Santillán
Codificador de Viterbi
En DVB-S se añade un mecanismo de corrección contra errores basado en un código
convolucional. Un código convolucional 1/2 quiere decir que de cada bit de entrada al codificador,
salen dos (redundancia del 50%). En recepción, el descodificador convolucional se basará en el
algoritmo de Viterbi. 29
Este sistema se puede adecuar a otros códigos: 2/3, 3/4, 5/6, 7/8. La manera de especificar las
características del codificador de Viterbi es mediante el FEC (Forward Error Correction). Por
ejemplo, un FEC de 3/4.
El codificador de Viterbi, a diferencia del codificador Reed-Solomon, garantiza protección a nivel de
bit.
Sirvan las siguientes tablas como un ejemplo teórico de codificación
Decodificador
Reconstrucción de la secuencia de estados más probable
,
Donde:
Algunos de los cálculos del algoritmo de Viterbi recuerdan a los del algoritmo forward necesario
para calcular eficientemente la probabilidad de una secuencia de observables. Una de las
diferencias es la incorporación de la función argmax (en lugar de sumar las probabilidades) para
calcular la secuencia de estados más probable.
Ejemplo de secuencia de estados más probable
La figura muestra un ejemplo de secuencia de estados más probable en un Modelo Oculto de
Márkov de 5 estados dada un secuencia de observaciones de longitud 5
Codificación Reed-Solomon
Esta codificación busca obtener protección del paquete de datos en frente de errores enla
transmisión. Una vez aleatorizada la señal, esta se pasa por un codificador Reed Solomon, que es
de todos los códigos cíclicos el más óptimo (máxima capacidad por corregir errores). Este código
añade bits de redundancia a la información, de forma que el receptor, en función de estos bits, es
capaz de detectar si ha habido algún error y, en el supuesto de que sea, corregirlo. En este
proceso, a los 188 bytes el codificador añade 16 bytes de redundancia de forma que a la salida hay
204 bytes.
Esta capacidad de corrección es posible siempre y cuando el número de errores no sea muy
elevado. Con este sistema se puede conseguir corregir errores de hasta 8 bytes.
Descargar