Corrección de errores hacia adelante
En telecomunicaciones, teoría de la información y teoría de la codificación, la corrección de errores hacia adelante (en inglés, forward error correction o FEC) o codificación de canal[1][2] es una técnica utilizada para controlar los errores en la transmisión de datos a través de canales de comunicación poco fiables o ruidosos. La idea central es que el emisor codifica el mensaje de forma redundante, casi siempre utilizando un Código de corrección de errores (CCE). El mecanismo permite la corrección en el receptor sin retransmisión de la información original. Se utiliza en sistemas sin retorno o sistemas en tiempo real donde no se puede esperar a la retransmisión para mostrar los datos. Este mecanismo de corrección de errores se utiliza por ejemplo, en las comunicaciones vía satélite, en las grabadoras de DVD y CD o en las emisiones de TDT para terminales móviles (estándar DVB-H).
Funcionamiento
La posibilidad de corregir errores se consigue añadiendo al mensaje original unos bits de redundancia. La fuente digital envía la secuencia de datos al codificador, encargado de añadir dichos bits de redundancia. A la salida del codificador obtenemos la denominada palabra código. Esta palabra código es enviada al receptor y este, mediante el decodificador adecuado y aplicando los algoritmos de corrección de errores, obtendrá la secuencia de datos original. Los dos principales tipos de codificación usados son:
- Códigos bloque. La paridad en el codificador se introduce mediante un algoritmo algebraico aplicado a un bloque de bits. El decodificador aplica el algoritmo inverso para poder identificar y, posteriormente corregir los errores introducidos en la transmisión.
- Códigos convolucionales. Los bits se van codificando tal y como van llegando al codificador. Cabe destacar que la codificación de uno de los bits está enormemente influenciada por la de sus predecesores. La decodificación para este tipo de código es compleja ya que en principio, es necesaria una gran cantidad de memoria para estimar la secuencia de datos más probable para los bits recibidos. En la actualidad se utiliza para decodificar este tipo de códigos algoritmo de Viterbi, por su gran eficiencia en el consumo de recursos.
Ventajas
FEC reduce el número de transmisiones de errores, así como los requisitos de potencia de los sistemas de comunicación e incrementa la efectividad de los mismos evitando la necesidad del reenvío de los mensajes dañados durante la recepción.
Promediando el ruido para reducir errores
Se podría decir que el CCE funciona "promediando el ruido"; dado que cada bit de datos afecta a muchos símbolos transmitidos, la corrupción de algunos símbolos por el ruido generalmente permite que los datos de usuario originales se extraigan de los otros símbolos recibidos no corruptos que también dependen de los mismos datos de usuario.
- Debido a este efecto de "reunión de riesgos", los sistemas de comunicación digital que utilizan CCE tienden a funcionar muy por encima de una cierta relación mínima de señal a ruido y nada por debajo de ella.
- Esta tendencia de todo o nada, denominada efecto acantilado, se vuelve más pronunciada a medida que se utilizan códigos más fuertes que se acercan más al límite teórico de Shannon.
- Intercalar datos codificados CCE puede reducir las propiedades de todo o nada de los códigos CCE transmitidos cuando los errores de canal tienden a ocurrir en ráfagas. Sin embargo, este método tiene límites; se utiliza mejor en datos de banda estrecha.
La mayoría de los sistemas de telecomunicaciones utilizan un código de canal fijo diseñado para tolerar la tasa de error de bit esperada en el peor de los casos y luego no funcionan si la tasa de error de bit es cada vez peor. Sin embargo, algunos sistemas se adaptan a las condiciones de error del canal dadas: algunas instancias de solicitud de repetición automática híbrida usan un método CCE fijo siempre que el CCE pueda manejar la tasa de error, luego cambian a ARQ cuando la tasa de error es demasiado alta; la modulación y la codificación adaptables utilizan una variedad de tasas de CCE, agregando más bits de corrección de errores por paquete cuando hay tasas de error más altas en el canal, o eliminándolos cuando no son necesarios.
Compromisos
En general incluir un número mayor de bits de redundancia supone una mayor capacidad para corregir errores. Sin embargo, este hecho reduce notablemente el régimen binario de transmisión, y aumenta el retardo en la recepción del mensaje
Referencias
- Charles Wang; Dean Sklar; Diana Johnson (Winter 2001–2002). «Forward Error-Correction Coding». Crosslink (The Aerospace Corporation) 3 (1). Archivado desde el original el 25 February 2012. Consultado el 5 March 2006. «How Forward Error-Correcting Codes Work ».
- Maunder, Robert (2016). «Overview of Channel Coding».