You are on page 1of 46

Correccin de Errores

Profesor: Hctor Abarca A.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC (Forward Error Correction)


Significa correccin de errores a posteriori y se utiliza en sistemas sin retorno o sistemas en tiempo real donde no se puede esperar a la retransmisin para mostrar los datos. Bsicamente 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 stos tuviesen algn error.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC.

Los bits aadidos, conocidos como de redundancia, hacen posible detectar errores y deducir el dato que se transmiti.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC

Se dispone de los siguientes tipos:

FEC a bloques.

Sus variantes ms usadas: BCH. RS (Reed Solomon). Aplica el algoritmo Viterbi.

FEC convolucional.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC a bloques.
Se denomina Distancia Hamming entre dos cdigos al nmero de smbolos en que se diferencian. Peso de una palabra: nmero de unos que tiene. Distancia de hamming: Nmero de bits en que difieren dos palabras.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC a bloques. Distancia Hamming.


10001110 00111000 d=5 10001110 +00111000 =10110110 (peso 5) 11100101 11110111 d=2 11100101 +11110111 =00010010 (peso 2)

Peso de la suma de las 2 palabras.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC a bloque. Distancia Hamming.

Cuanto mayor sea la distancia de hamming entre dos palabras, ms difcil ser que un error en la transmisin convierta una en la otra, ya que ser necesario alterar d bits. Un cdigo de distancia hamming d ser capaz de detectar errores en d-1 bits. Un cdigo de distancia hamming d ser capaz de corregir errores en (d-1)/2 bits. Para corregir errores en d bits har falta un cdigo con distancia de hamming 2d+1.
Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC a bloques. Distancia Hamming.

Cdigos de control de paridad.

Se aade un bit de paridad al final de la palabra de forma que el nmero total de unos, includo el bit de paridad sea par (paridad par) o impar (paridad impar).

Paridad par: Paridad impar:

1011000 1 1101011 0

Este cdigo tiene una distancia de hamming igual a 2, as que es capaz de detectar errores en 1 bit.
Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC a bloques. Distancia Hamming.

Cdigos de control de paridad.

Si la transmisin se realiza por bloques, se pueden aadir bits de paridad adicionales.

Distancia de hamming 4. Puede corregir errores en 1 bit y detectar errores en 1, 2 3 bits.


Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC a bloques. Distancia Hamming.

Cdigos de hamming.

Son un subconjunto de los cdigos de control de paridad, en los cuales se disponen los bits de paridad de forma que permitan localizar la presencia de errores en el mensaje. Su distancia de hamming mnima es 3. Para palabras de L bits, hace falta que R de esos bits sean de paridad para poder corregir un error en un bit, donde:

L 2R - 1

R ser el menor nmero entero que cumpla esta condicin


Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC a bloques. Distancia Hamming.

Cdigos de hamming.

Cada bit de paridad debe controlar un conjunto distinto de bits de informacin. Un error en un bits de informacin debe afectar a 2 o ms bits de paridad. Para el clculo de los bits de paridad slo se pueden utilizar bits de informacin no se pueden incluir los otros bits de paridad. Ejemplo:

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC a bloques. Distancia Hamming.

Cdigos de hamming. Cdigo ptimo.

Se numeran los bits de la palabra cdigo empezando por 1.Los bits potencia de 2 sern de redundancia y el resto de datos. Cada bits de datos contribuye a varios bits de redundancia, que se determinan descomponiendo la posicin del bit en suma de potencias de 2.

Ejemplo: 11 = 1 + 2 + 8

Si se produce un error, el bit errneo ser el situado en la posicin que se obtenga sumando las posiciones de los bits de redundancia incorrectos.
Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC a bloques. Distancia Hamming.

Cdigos de hamming. Cdigo ptimo.

Ejemplo de cdigo ptimo para caracteres de 7 bits.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC a bloques. Cdigo Hamming H.

Usado en algunos radioenlaces digitales en la dcada de los 80. En particular la versin H(555,544).
Permite corregir 2 errores en la secuencia de 544 bits de informacin.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC a bloques. Cdigo BCH.

Bose-Chaudhuri-Hocquenghen.

Es el cdigo ms conveniente para errores independientes. Los parmetros definidos son:


Longitud del bloque: Bits de informacin: Distancia mnima:

N=2M-1 I=N-M.t d=2.t+1

M>=3

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC a bloques. Cdigo BCH.

Es usado por ejemplo en telefona celular analgica AMPS en el canal de control bajo la versin BCH(48,36) y BCH(40,28).
En codificadores digitales de TV a 34Mb/s se utiliza el codec BCH(511,493) para corregir 2 errores por bloque.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC a bloques. Cdigo RS.

Reed-Solomon.

Es una variante del BCH y la ms apropiada para rfagas de errores. Los parmetros definidos:
Bits por smbolo: Longitud del bloque: Bits de informacin: Distancia mnima:

m N=m.2m-1 (N-I)=m.2t d=m.(2.t+1)

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC a bloques. Cdigo RS.

En general el nmero de errores corregidos son t rfagas de m bits en una palabra de cdigo.Por ejemplo:

En RS(60,40) se corrigen 2 rfagas de 4 bits errados.

Una aplicacin, entre otras, es en radioenlaces digitales de 140Mb/s en la versin RS(65/62) para corregir 4 errores en 4 bloques.
Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC convolucional.
Se presenta como el mtodo ms interesante, teniendo en cuanta la modulacin TCM (Trellis Code Modulation). Algoritmo de viterbi.

Mtodo denominado decodificacin de mxima probabilidad, consiste en computar a cada camino un peso consistente en el nmero de diferencias acumuladas.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC convolucional. Viterbi.

Algoritmo

de

Cuando se recibe un error (01 en lugar de 11), se encuentra que dicha secuencia es imposible; slo 2 errores consecutivos pueden simular un camino correcto. Detectado el error es necesario saber cual es; es decir, si se transmiti 00 o 11. Ambos caminos comienzan con un peso 1 (nmero de errores acumulados).
Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC convolucional. Algoritmo de Viterbi.

Al paso siguiente las distintas posibilidades incrementan el valor del peso con excepcin de un camino (el de mxima probabilidad) que mantiene el peso en (1). Al cabo de una determinada longitud de anlisis se decide el camino de mxima probabilidad (mnimo de errores) y se determina el bit con error, corrigindolo. Si existen muchos errores puede ser que varios caminos tengan igual peso; en tal caso se selecciona uno en forma aleatoria.
Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

FEC convolucional. Representacin.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

ARQ.

La correccin de los posibles errores en la transmisin se consigue retransmitiendo de nuevo la trama problemtica. Se basa en:

Confirmaciones positivas (ACK, ACKnowledgement, Reconocimiento). Retransmisin tras expiracin de un temporizador (time_out). El origen retransmite las tramas sin ACK despus de un perodo de tiempo. Confirmacin negativa (NACK, NoACKnowledgement, No Reconocimiento) y retransmisin. El destino detecta un error en la trama y enva un ACK negativo.
Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

ARQ.

Las variantes de ARQ son: ARQ con parada y espera. ARQ con vuelta atrs N. ARQ con rechazo selectivo.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

ARQ. ARQ con parada y espera

Basado en el control de flujo parada y espera. El transmisor enva una nica trama y espera la llegada del ACK. No se puede enviar otra trama hasta haber recibido el ACK. Sencillo e ineficiente.
Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

ARQ. ARQ espera

con

parada

Si se recibe una trama daada el receptor la descarta.

El transmisor asocia un timeout a cada trama enviada. Si no recibe el ACK antes de que expire, la retransmite.

Si se pierde o daa el ACK, el transmisor retransmitir la trama.

El receptor debe descartar la trama duplicada que reciba.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

ARQ. ARQ con vuelta atrs N.


Basado en ventana deslizante. El transmisor puede enviar una ventana de tramas. El receptor confirma las tramas recibidas correctamente (ACK). Si el receptor detecta un error, enva un ACK negativo (N-ACK).

Descarta esa trama y las futuras tramas recibidas hasta recibir la trama errnea.
Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

ARQ. ARQ con vuelta atrs N.


El transmisor si recibe un N-ACK debe retransmitir la trama errnea y todas las posteriores. Es bastante utilizado (aunque con variantes)

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

ARQ. ARQ con vuelta atrs N.

Si el receptor recibe la trama X errnea, la descarta y:

Si el origen enva la trama X+1, el receptor enva N-ACK X, el transmisor retransmite la trama X. Si el origen no enva ms tramas, el receptor no contesta.

El origen enviar un ACK con un bit P=1 El receptor al recibir el ACK con P=1, contesta con un ACK X. El transmisor retransmitir la trama X.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

ARQ. ARQ con vuelta atrs N.

Si se pierde el ACK de la trama X (ACK X+1):

Si el transmisor recibe algn ACK posterior (ACK X+2,...) antes de que expire el timeout, la trama X est confirmada. Si el timeout expira, se enva un ACK con P=1, y se inicia otro temporizador.

Si el receptor no responde antes del temporizador, el transmisor repite el ACK con P=1. Se reintenta varias veces.
Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

ARQ. ARQ con rechazo selectivo.


Slo se retransmiten las tramas con ACK negativo (SN-ACK) o cuando expira el timeout. Se minimiza el nmero de retransmisiones. El receptor necesita un buffer suficientemente grande para almacenar las tramas que va recibiendo despus de un SN-ACK.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

ARQ. ARQ con rechazo selectivo.


Tambin necesita una lgica especial para insertar la trama retransmitida en su posicin correcta. El transmisor tambin tiene una lgica ms compleja para enviar tramas fuera de orden. Se utiliza bastante menos que el ARQ con vuelta atrs N.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Correccin de Errores

ARQ. ARQ con rechazo selectivo.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Control de Flujo
Profesor: Hctor Abarca A.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Control de Flujo

Control de Flujo

Consiste en que el receptor tenga la capacidad de regular el ritmo de envo del transmisor para no verse saturado. Define el conjunto de procedimientos utilizados para restringir la cantidad de datos que el emisor puede enviar antes de esperar un reconocimiento (ACK)

Evitar que el flujo de datos desborde al receptor. Parada y espera Ventana deslizante
Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Bsicamente existen dos tcnicas.


Control de Flujo

Parada y espera.
La fuente transmite una trama El destino recibe la trama y responde enviando una confirmacin. La fuente espera dicha confirmacin antes de transmitir la siguiente trama. El destino puede parar el flujo reteniendo las confirmaciones. Buen funcionamiento usando un nmero reducido de tramas de gran tamao.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Control de Flujo

Parada y espera.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Control de Flujo

Parada y espera. Fragmentacin.

Es frecuente que la fuente rompa un gran bloque de datos en bloques pequeos:


Tamao limitado de la memoria temporal. Los errores se detectarn antes, una vez recibida toda la trama. Si hay errores, se necesitar retransmitir pequeas tramas. Evita que una estacin ocupe el medio durante un largo perodo.

El procedimiento de parada y espera puede ser inadecuado.


Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Control de Flujo

Parada y espera. Utilizacin del enlace.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Control de Flujo

Parada y espera. Prestaciones.

El tiempo total para enviar los datos de una trama se define como:

Tf = ttx + tprop + tprocT + tconf + tprop + tprocC

donde:

ttx : tiempo de transmisin de la trama. tprop : tiempo de la propagacin de la trama/confirmacin. tprocT : tiempo de procesamiento de la trama. tconf : tiempo de transmisin de la confirmacin. tprocC : tiempo de procesamiento de la confirmacin.

Normalmente tprocT, tconf y tprocC se consideran despreciables respecto al resto de los trminos.
Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Control de Flujo

Ventana deslizante.

Permite que transiten varias tramas por la lnea. El receptor tiene una memoria temporal suficiente para almacenar W tramas. El transmisor puede enviar hasta W tramas sin confirmacin. Cada trama se etiqueta con un nmero de secuencia. La confirmacin incluye el nmero de secuencia de la siguiente trama que se espera recibir. El nmero de secuencia est determinado en funcin del tamao del campo (k):

Las tramas se numerarn mdulo 2k.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Control de Flujo

Ventana deslizante. Descripcin.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Control de Flujo

Ventana deslizante. Ejemplo.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Control de Flujo

Ventana deslizante. Mejoras.

Mediante un mensaje receptor no preparado (RNR, receiver not ready), el receptor puede confirmar las tramas prohibiendo la transmisin de tramas adicionales. Se debe transmitir una confirmacin normal para reabrir la ventana. Si los dos dispositivos necesitan enviar datos, se debe utilizar un procedimiento denominado incorporacin de confirmacin.

Si un dispositivo no tiene datos que enviar, enviar nicamente una trama de confirmacin. Si hay datos, pero nada que confirmar, repetir la ltima confirmacin enviada con anterioridad.

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Control de Flujo

Ventana deslizante . Mejoras.

F(n,m) = f(n) + RR(m)


n: nmero de secuencia enviada N(S). m: nmero de secuencia recibida N(R)

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

Control de Flujo

Ventana deslizante . Prestaciones.

Se pueden dar dos casos:

W >= 1+2a. Los acuses de recibo del receptor llegan al transmisor antes de que agote su ventana de emisin. En este caso: W < 1+2a. El transmisor agota su ventana de emisin en t=W y no podr seguir enviando tramas hasta recibir la primera confirmacin en t=1+2a. La utilizacin de la lnea ser:

Sistemas de Comunicacin de Datos II. Hctor Abarca A.

You might also like