U2 S2_CorrErroV3
Dos estrategias principales para manejar
los errores
•
FEC (Forward Error Correction): Incluir
suficiente información redundante para que el
receptor pueda deducir lo que debió ser el
carácter transmitido y corregirlo
•
ARQ (Automatic Repeat Request): Incluir
sólo suficiente redundancia para permitir que
el receptor sepa que ha ocurrido un error (pero
no qué error) ysolicite una retransmisión.
2.3 Corrección de errores
Los códigos FEC, correctores de errores
son más sofisticados que los códigos
detectores de errores y necesitan más bits
de redundancia.
El número de bits necesarios para corregir
un error de varios bits o un error de ráfaga
es tan alto que su uso no resulta eficiente.
La mayoría de la corrección se limita a
errores de uno, dos o tresbits.
2.3 Corrección de errores
Corrección de errores FEC (posteriori) y se
utiliza en sistemas sin retorno o sistemas
en tiempo real donde no se puede esperar
a la retransmisión para mostrar los datos.
Consiste en codificar en el transmisor cada
bloque de k bits de la trama en palabras de
n bits, siendo n>k. El receptor decodifica
las palabras en los bloques originales
aunque éstostuviesen algún error
2.3 Corrección de errores (2)
Corrección de errores ARQ se consigue
retransmitiendo la trama detectada como errónea.
Se basa en 3 posibles situaciones:
Confirmaciones positivas (ACK, ACKnowledgement,
Reconocimiento).
Confirmación negativa (NACK, NoACKnowledgement, No
Reconocimiento) y retransmisión. El destino detecta un
error en la trama y envía un ACK negativo.Retransmisión tras expiración de un temporizador
(time_out). El origen retransmite las tramas sin ACK
después de un período de tiempo.
FEC(Forward ErrorCorrection)
Los bits añadidos, conocidos como de
redundancia, hacen posible detectar errores y
deducir el dato que se transmitió.
Se dispone de los siguientes tipos:
FEC de bloques.
BCH.
RS (Reed Solomon).
Hamming
FEC de convolución.Aplica el algoritmo Viterbi.
Códigos de bloque FEC
•
•
•
•
Usa una serie de símbolos llamados codeword
(palabras de código)
Una palabra de código se forma exclusivamente
función de los bits del mensaje actual, y no de
los anteriores mensajes
Se utilizan en canales con ruido a ráfagas
Se pueden clasificar en lineales y cíclicos
Códigos de convolución FEC
•
•
•
Las palabras de código(normalmente de
longitud constante) dependen del mensaje
actual y de un número determinado de los
anteriores.
Los códigos convolucionales son códigos
lineales.
El análisis de estos códigos es mucho más
complejo que el de los códigos de bloque y
se utilizan en canales con ruido blanco o
gaussiano.
Códigos de bloque
Palabra de código (Codeword):
Grupo de n bits formado por m bits de datos
mas r bits deredundancia
Si datos 10111001 y paridad par 101110011
Palabra de código válida:
101110011
Palabra de código no válida: 101110010
Palabra de código
Ejemplo: CodeWord de 4 bits (n) formado de
3 bits de datos (m) mas 1 bit de paridad par (r)
Datos
000
001
010
011
100
101
110
111
CodeWord
0000
0011
0101
0110
1001
1010
1100
1111
¿Qué es un error?
Palabras inválidas
00010010
0100
0111
La recepción de una palabra de
código inválida
¿Qué se puede hacer? Corregir el error encontrando la
palabra con código válido más
próximo
Distancia de Hamming
Número de bits que tienen que cambiarse para
transformar una palabra de código válida en otra
palabra de código válida
Cuanto mayor sea, menor es la posibilidad de que
un código válido se transforme en otro códigoválido
por una serie de errores
Si dos palabras de código difieren en una distancia d
se necesitan d errores para convertir una en otra válida
Por ejemplo:
Distancia Hamming entre 1011101 y 1001001 es 2
Distancia Hamming entre 2143896 y 2233796 es 3
Distancia Hamming entre “camino" y “rapido" es 3
Distancia del código
Distancia Hamming mínima entre todas
posibles combinaciones de palabras...
Regístrate para leer el documento completo.