Vous êtes sur la page 1sur 55

Ingeniera Electrnica.

Deteccin y correccin de errores

Deteccin y Correccin de Errores; Generalidades en Cdigos de Bloque


Juan David Valenzuela Gerardo Lpez Arnold Alfonso Fundamentos de Telecomunicaciones
1

Ingeniera Electrnica. Deteccin y correccin de errores

Un sistema de comunicacin est expuesto a la ocurrencia de errores durante la transmisin e interpretacin de los datos, en especial por problemas de ruido que afectan a las diversas partes del sistema, principalmente a los canales de transmisin. Tipos de errores: Distorsin, atenuacin, limitacin del ancho de banda, ruido, interferencia, etc., influyen en el deterioro de una seal elctrica al viajar por el canal de comunicaciones. Si la seal transporta datos digitales, los cambios pueden modificar el significado de los datos. Los errores posibles son: Error de bit: Este trmino significa que nicamente un bit de una unidad de datos determinada (byte, carcter, paquete, etc.) cambia de 0 a 1 o de 1 a 0.

Ingeniera Electrnica. Deteccin y correccin de errores

Error de rfaga: Significa que dos o ms bits de la unidad de datos han sido alterados. Es importante notar que los errores de rfaga no implican que se afecten bits consecutivos. La siguiente figura muestra un ejemplo de error de rfaga:

En este caso, la longitud de la rfaga sera 5, porque es la distancia en bits desde el primer bit errneo hasta el ltimo, donde dentro de la rfaga puede haber bits correctos y/o errneos.

Ingeniera Electrnica. Deteccin y correccin de errores

Es necesario entonces, desarrollar e implementar procedimientos para el control de estos errores. La forma de controlar los errores consiste en enviar datos adicionales al contenido del mensaje. Aunque se logra una mayor proteccin de los datos del mensaje contra errores, mayor es la cantidad de bits adicionales que no llevan informacin, por lo que la eficiencia del proceso de transmisin disminuye.
4

Ingeniera Electrnica. Deteccin y correccin de errores

Deteccin de errores
La deteccin de errores se basa en el siguiente principio: Dada una secuencia, se aaden bits adicionales por parte del transmisor para formar un cdigo que tenga capacidad de detectar errores. Este cdigo se calcular en funcin de los otros smbolos que se vayan a transmitir. El receptor realizar el mismo clculo y comparar los dos resultados. Se detecta un error si y slo si, los dos resultados no coinciden. Las tcnicas ms comunes de deteccin de errores son: Redundancia Codificacin de cuenta exacta Control de paridad Chequeo de paridad vertical y horizontal (VRC, LRC)

Ingeniera Electrnica. Deteccin y correccin de errores

Chequeo de paridad bidimensional Cclica o entrelazada Cdigo polinomial (CRC) Redundancia La redundancia significa transmitir cada carcter dos o tres veces, o si se emplea a nivel de mensaje repetir el mensaje dos o tres veces, en caso que las versiones difieran habr ocurrido un error en la transmisin. Codificacin de cuenta exacta Con la codificacin de cuenta exacta, el nmero de unos en cada caracter debe mantenerse constante. Tal es el caso del cdigo de cuenta exacta ARQ que se muestra en la siguiente tabla :

Ingeniera Electrnica. Deteccin y correccin de errores

Ingeniera Electrnica. Deteccin y correccin de errores

Control de paridad vertical (VRC) Este mtodo, como todos los que siguen, hace uso del agregado de bits de control. Se trata de la tcnica ms simple usada en los sistemas de comunicacin digitales (Redes Digitales, Comunicaciones de Datos) y es aplicable a nivel de byte ya que su uso est directamente relacionado con el cdigo ASCII. Como se recordar, el cdigo ASCII utiliza 7 bits para representar los datos, lo que da lugar a 128 combinaciones distintas. Si se define un carcter con 8 bits (un byte) quedar un bit libre para control, ese bit se denomina bit de paridad y se puede escoger de dos formas: Paridad par Paridad impar
8

Ingeniera Electrnica. Deteccin y correccin de errores

En el extremo de transmisin el codificador de canal calcula el bit de paridad y lo adosa a los 7 bits de datos. El decodificador de canal recibe los 8 bits de datos, calcula la paridad y la compara con el criterio utilizado, tal como lo describe la siguiente figura:

Ingeniera Electrnica. Deteccin y correccin de errores

El siguiente diagrama muestra un circuito tpico para la generacin y/o comprobacin de paridad:

10

Ingeniera Electrnica. Deteccin y correccin de errores

Criterios para la paridad Bit de paridad par: Numero total de 1 par: bit de paridad igual a 0 Numero total de 1 impar: bit de paridad igual a 1 Bit de paridad impar: Numero total de 1 par: bit de paridad igual a 1 Numero total de 1 impar: bit de paridad igual a 0 Ejemplo:
Informacin Criterio Cdigo
0 0 1 1 1 0 0 1 1 0 1 1 1 0 0 1
11

0 1 1 1 0 0 1 Paridad par 0 1 1 1 0 0 1 Paridad impar

Ingeniera Electrnica. Deteccin y correccin de errores

Control de paridad longitudinal (LRC) Utiliza el mismo esquema anterior (en vez de estar orientado al caracter lo est al mensaje), con la diferencia que el control de la paridad se realiza en cada una de las posiciones correspondientes de los bits del grupo de caracteres de datos, con lo que se forma un bloque de bits de paridad o caracter de paridad que se agregan como bits redundantes a la cadena de caracteres de datos para el control de error. Al finalizar el bloque de N caracteres, se transmitir un carcter completo, el carcter as construido se denomina BCC (Block Check Character), tambin se le denomina BCS (Block Character Sequence).

12

Ingeniera Electrnica. Deteccin y correccin de errores

Ejemplo: Supongamos que transmitimos 3 caracteres, cada uno con su bit de paridad y necesitamos calcular el carcter BCC que debemos transmitir con su bit de paridad. En la tabla siguiente, se muestra este clculo, en donde se ha utilizado paridad par para cada caracter y paridad impar para el clculo del BCC.
P 0 0 1 0 B6 1 1 0 1 B5 1 1 1 0 B4 0 0 1 0 B3 0 1 0 0 B2 0 0 1 0 B1 1 1 0 1 B0 1 0 0 0 Caracter 1 Caracter 2 Caracter 3 BCC

En consecuencia el caracter BCC sera 01000010 y en este caso se transmitira la secuencia: 01100011 01101010 10110100 01000010

13

Ingeniera Electrnica. Deteccin y correccin de errores

Control de paridad bidimensional (VRC/LRC) La informacin se coloca en grupos de bloques de longitud fija como matriz o , para luego aplicar el control de paridad VRC y LRC y determinar en qu posicin de la cadena de datos se encuentra el bit errneo.
1
1 2 ...

Bits de LRC

m
Bits de VRC
14

Ingeniera Electrnica. Deteccin y correccin de errores

Ejemplo: Se quiere codificar la siguiente palabra mediante el control de paridad bidimensional: 101111100001101110110111010000 - Se divide en 5 bloques de 6 dgitos de longitud y se colocan formando una matriz. Bytes a transmitir: D0 D1 D2 D3 D4 D5
B0 1 0 1 1 1 1

B1
B2 B3 B4

1
1 1 0

0
0 1 1

0
1 0 0

0
1 1 0

0
1 1 0

1
0 1 0
15

Ingeniera Electrnica. Deteccin y correccin de errores

Empleando el mtodo de control de paridad bidimensional y con paridad par, el bloque a transmitir queda de la siguiente forma:
D0
B0 1

D1
0

D2
1

D3
1

D4
1

D5
1

LRC

B1
B2 B3 B4

1
1 1 0

0
0 1 1

0
1 0 0

0
1 1 0

0
1 1 0

1
0 1 0

0
0 1 1

VRC

1
16

Ingeniera Electrnica. Deteccin y correccin de errores

Como consecuencia la secuencia en el receptor sera la siguiente: 101111110000101011100110111101000010001111 Si se produjera un error en un bit cualquiera, este afectara al bit de paridad horizontal situado en la misma fila y al bit de paridad vertical situado en la misma columna, lo que facilitara la deteccin de dicho error para su posterior correccin.
D0 D1 D2 D3 D4 D5 LRC

B0
B1 B2 B3 B4 VRC

1
1 1 1 0

0
0 0 1 1

1
1 1 0 0

1
0 1 1 0

1
0 1 1 0

1
1 0 1 0

1 0
0 1 1 1
17

Ingeniera Electrnica. Deteccin y correccin de errores

Como los mtodos anteriores este presenta igualmente cierta limitacin, en donde el uso simultneo de VRC y LRC hace que pasen imperceptibles errores en un nmero par de bits que ocupan iguales posiciones en un nmero par de caracteres.
D0 B0 B1 B2 B3 B4 VRC 1 1 1 1 0 D1 1 0 1 1 1 D2 1 0 1 0 0 D3 1 0 1 1 0 D4 0 0 0 1 0 D5 1 1 0 1 0 LRC

1 0 0 1 1 1
18

Ingeniera Electrnica. Deteccin y correccin de errores

Control de paridad cclica o entrelazada Es un procedimiento que proporciona un nivel de deteccin de los errores de mayor calidad, requiere de dos bits adicionales para el control de la paridad. Ejemplo: X 0 Caracter transmitido: 010101 1 X Generacin de la paridad cclica Bits X 0 utilizando paridad par: de
1 X datos X 0 1 X 0 BP1

BP2
19

Ingeniera Electrnica. Deteccin y correccin de errores

Cdigo de redundancia cclica (CRC) Conocido tambin como cdigo polinomial, permite la verificacin de todos los bits del mensaje mediante la utilizacin de un algoritmo matemtico. El CRC se usa generalmente con cdigos de 8 bits, tales como EBCDIC (Extended Binary Coded Decimal Interchange Code) o cdigos de 7 bits como el cdigo ASCII, cuando no se usa paridad. Dado un bloque o mensaje de k-BITS, el transmisor genera una secuencia de n-BITS denominada secuencia de comprobacin de la trama FCS (Frame Check Secuence), de tal manera que la trama resultante con n+ k BITS sea divisible por algn nmero predeterminado. El receptor dividir la trama recibida por ese nmero y si no hay residuo en la divisin se interpreta que el mensaje lleg sin error.
20

Ingeniera Electrnica. Deteccin y correccin de errores

Los polinomios generadores ms usados son: CRC-12: x12 + x11 + x3 + x2 + x + 1. Usado para transmitir flujos de 6 bits, con 12 de redundancia. CRC-16: x16 + x15 + x2 + 1. Para flujos de 8 bits, con 16 de redundancia. Usado en USA, principalmente. CRC-CCITT: x16 + x12 + x5 + 1. Para flujos de 8 bits, con 16 de redundancia. Usado en Europa, principalmente. CRC-32: x32 + x26 + x23 + x22 + x16 + x12 + x11 + x10 + x8 + x7 + x5 + x4 + x2 + x + 1. Da una proteccin extra sobre la que dan los CRC de 16 bits, que suelen dar la suficiente. Se emplea por el comit de estndares de redes locales (IEEE802) y en algunas aplicaciones del Departamento de Defensa de USA.
21

Ingeniera Electrnica. Deteccin y correccin de errores

Los distintos polinomios generadores son capaces de detectar entre otros: Errores simples: 100% Errores dobles: 100% Errores en un nmero impar de bits: 100% Errores en rfagas: 100% para rfagas menores a 17 bits. 99,997 % para rfagas de hasta 17 bits. 99,998% para rfagas mayores a 17 bits.

22

Ingeniera Electrnica. Deteccin y correccin de errores

Forma de ejecutar el procedimiento en el emisor: 1. Se define un polinomio de grado n con los bits del mensaje 2. Se define el polinomio generador de grado r 3. Aadir r bits 0 al extremo de menor orden del mensaje. El polinomio correspondiente ser = () 4. El grado n del polinomio debe ser: 5. Se divide el nuevo polinomio formado entre el polinomio generador : = + () () polinomio cociente R polinomio resto
23

Ingeniera Electrnica. Deteccin y correccin de errores

6. El polinomio resto siempre debe tener un numero de bits igual o menor al grado del polinomio generador. 7. Finalmente se procede a obtener el polinomio de transmisin , cuyos coeficientes (unos y ceros) sustituyen el mensaje a transmitir: = + () Forma de ejecutar el procedimiento en el receptor: En el receptor el dato transmitido se divide por el mismo polinomio generador establecido en el emisor = + () () = + ()

24

Ingeniera Electrnica. Deteccin y correccin de errores

1 + 1 = + + = + () () () Como se esta utilizando la aritmtica modulo 2, la adicin 1 + 1 = 0, por tanto


()

= ()

25

Ingeniera Electrnica. Deteccin y correccin de errores

Presentacin de la tcnica Objetivo del procedimiento: Aadir r bits a un mensaje de k bits, de forma tal que el polinomio resultante, T(x), correspondiente a los + bits, sea divisible por G(x) El receptor verifica si T(x) es divisible por G(x), y si no lo es; existe un error en la transmisin.

26

Ingeniera Electrnica. Deteccin y correccin de errores

Correccin de errores

27

Ingeniera Electrnica. Deteccin y correccin de errores

Codificacin de cuenta Exacta.


En esta tcnica de codificacin de cuenta exacta, lo que se hace es configurar el cdigo de manera que cada carcter est representado por una secuencia de unos y ceros que contiene un nmero fijo de unos. En nuestro caso el Cdigo de cuenta exacta ARQ tres de ellos.

28

Ingeniera Electrnica. Deteccin y correccin de errores

29

Ingeniera Electrnica. Deteccin y correccin de errores

Sustitucin de smbolos
Se dise para utilizarse cuando haya un ser humano en la terminal de recepcin. Analiza los datos recibidos y toma decisiones sobre su integridad. En la sustitucin de smbolos si se recibe un carcter presuntamente equivocado se sustituye por un carcter que exige al operador que lo vuelva a interpretar. Ejemplo: Si el mensaje documento tuviera un error en el primer carcter, se sustituye la "d" por "%" y se le muestra al operador el mensaje %ocumento. En este caso por contexto se puede recuperar el contenido de ese carcter y es innecesaria la retransmisin pero si el mensaje fuera &%,000.00 el operador no puede definir cual es el carcter equivocado y se pide la retransmisin del mensaje.
30

Ingeniera Electrnica. Deteccin y correccin de errores

ARQ, Requerimiento automtico de repeticin.


Se trata de sistemas de correccin hacia atrs, en estos sistemas la estacin receptora que ha detectado la recepcin de caracteres bloques con errores procede a pedir a la estacin emisora que repita lo recibido con error. Debe observarse que esto requiere dar al sistema de comunicacin algn medio para facilitar el dilogo entre la estacin emisora y la estacin receptora, de donde se deduce que el extremo receptor abandona el papel pasivo en la comunicacin para participar en forma activa en el proceso.

31

Ingeniera Electrnica. Deteccin y correccin de errores

Existen dos estrategias principales en el diseo de los sistemas de correccin hacia atrs: Pare y espere (stop and wait ARQ). Envo continuo (Continuos ARQ).

Estas suponen el uso de estructuras de informacin llamadas bloques tramas, ya se trate de bloques de bits con bit de paridad, un conjunto de bits con CRC, en cualquier caso la trama se enva como un todo.
32

Ingeniera Electrnica. Deteccin y correccin de errores

Pare y espere.
Cuando se hace uso de este mtodo pare y espere, lo que ocurre es precisamente eso, las tramas se van intercambiando una a una. Cuando el receptor recibe una trama procede a validarla, si resulta que no contiene errores enva una seal de confirmacin hacia el emisor, esta seal se denomina ACK (acrnimo del trmino ingles acknowledge: confirmacin). Por el contrario, si hay errores se enva hacia el emisor una seal de recepcin errnea denominada NACK (por negative acknowledge).

33

Ingeniera Electrnica. Deteccin y correccin de errores

Mientras espera la recepcin de ACK de NACK el emisor mantiene el mensaje enviado en un buffer, cuando recibe NACK vuelve a enviar el contenido del buffer, si por el contrario recibe un ACK copia en el buffer la trama bloque siguiente y procede a enviarla.

En muchos casos, y mientras espera la llegada de NACK ACK, el emisor arranca un temporizador. El temporizador se detendr al llegar cualquiera de las seales de confirmacin, si el temporizador llega a su trmino sin recibirlas pueden ocurrir dos cosas: la primera consiste en abortar el proceso de comunicacin dado que no hay respuesta del receptor, la segunda en enviar nuevamente la trama sin confirmar y arrancar nuevamente el temporizador. Si esta situacin se repite varias veces el sistema aborta la comunicacin.

34

Ingeniera Electrnica. Deteccin y correccin de errores

En el receptor tambin se arranca un temporizador ya sea al recibir la trama o al enviar una seal ACK, al vencer este tiempo el receptor procede a reenviar una seal de ACK otra predeterminada, si se repite esto una cierto nmero de veces se procede a abortar la comunicacin pues no se recibe respuesta del emisor.

Generalmente tanto el receptor como el emisor dispondrn de un contador para determinar el nmero de veces que se ha intentado retransmitir una trama sin xito. De alcanzar el contador el valor prefijado se procede a abortar la comunicacin. Normalmente esta situacin es transitoria y puede deberse a picos de trfico, de persistir sealan anomalas en los equipos
35

Ingeniera Electrnica. Deteccin y correccin de errores

Envo continuo (Continuos ARQ).


El mtodo de envo y espera tiene inconveniente de reducir el tiempo de utilizacin efectiva de los canales de comunicacin dado que cada mensaje debe ser confirmado individualmente y todo se paraliza hasta que ello ocurre. Para corregir esto los mtodos de envo continuo utilizan el mecanismo de enviar continuamente la informacin sin esperar confirmacin, cada bloque trama contiene un nmero ( varios) de secuencia que la identifica. Existen diversos mtodos para enviar al ACK el NACK, ellos son:

36

Ingeniera Electrnica. Deteccin y correccin de errores

Variante retroceda 2 (GO BACK 2). Mientras se enva un mensaje se est confirmando el anterior por otra va Variante retroceda n. Previamente se conviene en un nmero m que dar el nmero de mensajes al cabo de los cuales se va a enviar respuesta ACK NACK. En caso de error en el mensaje x, se pide que se retransmita la secuencia a partir de x retrocediendo n = m - x. La variante se denomina ventana fija y tambin rechazo no selectivo pues se procede a enviar la trama defectuosa y todas las pendientes de conformacin. Es un mtodo usado en protocolos orientados al bit como HDLC . Rechazo selectivo. se reenva solamente la trama defectuosa ,se denomina tambin ventana deslizante
37

Ingeniera Electrnica. Deteccin y correccin de errores

Correccin de errores hacia adelante: FEC (Forward Error Correction).


Se basan en la idea de reconstruir la informacin deteriorada por los errores, obviamente la reconstruccin tiene lugar en el equipo receptor, para ello deben emplearse en los cdigos un gran nmero de bits lo que disminuye la efectividad del cdigo.Por lo tanto debemos hablar de codificacin [,existen varios esquemas que pueden clasificarse en cdigos de bloque y cdigos de rbol:
38

Ingeniera Electrnica. Deteccin y correccin de errores

CDIGO HAMMING
Es un cdigo que se utiliza en la deteccin y correccin de errores que se producen en la transmisin de cdigos binarios, la palabra de cdigo se conforma por los bits de comprobacin y los bits de informacin.

39

Ingeniera Electrnica. Deteccin y correccin de errores

CONCEPTOS BSICOS: Para poder continuar con el desarrollo del cdigo es necesario tener en cuenta algunas generalidades y conceptos bsicos: Cdigo binario: Es una representacin unvoca de las cantidades, de tal forma que a cada una de stas se le asigna una combinacin de smbolos binarios. Distancia entre dos combinaciones binarias: Viene dada por el nmero de bits que hay que cambiar en una de ellas para obtener la otra. Distancia mnima de un cdigo: Es la menor de las distancias entre dos combinaciones binarias cualesquiera pertenecientes a dicho cdigo.
40

Ingeniera Electrnica. Deteccin y correccin de errores

DISTANCIA DE HAMMING
El cdigo Hamming se genera a partir de una distancia mnima de 3, ya que una distancia de 1 o 2 es inconveniente para poder generar un cdigo para detectar un error. La distancia mnima de Hamming est dada por la siguiente ecuacin: = 2 + 1

41

Ingeniera Electrnica. Deteccin y correccin de errores

Donde es la distancia mnima de un cdigo para permitir la correccin de datos y X es las lneas de datos. Si se tuviese una distancia de 1 no tendramos valores para saber si hay o no un error. Si se tienen una distancia de 2 se podra lograr un sistema de correccin de error con un bit de paridad pero el problema que esto lleva es que un sistema con distancia 2 puede tener datos errneos que pueden pasar como datos correctos. Con la distancia de 3 se tiene que los cdigos no van a tener datos o resultados similares por ende se puede detectar el error y se puede desarrollar un sistema para su correccin como el Hamming
42

Ingeniera Electrnica. Deteccin y correccin de errores

VARIABLES PARA GENERACIN HAMMING

Para la generacin del cdigo Hamming se deben tener en cuenta tres variables que mencionaremos a continuacin: n: nmero de bits del cdigo original que se pretende transmitir. p: nmero de bits de paridad par generados en el transmisor, o sea, nmero de lneas que aadimos al cdigo inicial. c: nmero de bits detectores de paridad par generados por el receptor. El valor de p = c, ya que los bits de paridad generados tanto en el transmisor como en el receptor debe ser la misma.
43

Ingeniera Electrnica. Deteccin y correccin de errores

El nmero de combinaciones que se pueden formar con los c bits detectores de paridad tiene que ser mayor o igual que el nmero de lneas del cdigo original (n) ms el nmero de lneas de paridad aadidas (p) ms uno, este ltimo para contemplar el caso de no error. 2 + + 1

Esta ecuacin nos muestra que existen unas combinaciones, estas no pueden ser asignadas de forma aleatoria a un evento, para asignar estas combinaciones a un evento especfico este debe estar en uno de los tres grupos diferenciados.
44

Ingeniera Electrnica. Deteccin y correccin de errores

1. Combinacin asignada a la situacin en que no haya error en la transmisin. 2. Combinaciones asignadas a los bits de paridad generados en el transmisor. 3. Combinaciones asignadas a los bits de datos del cdigo original. Podemos tener un manejo de esta ecuacin para poder obtener la cantidad mnima de bits de informacin que nosotros podemos enviar.

45

Ingeniera Electrnica. Deteccin y correccin de errores

Si se despeja n

= 2 1

Teniendo en cuenta que p = c Si contamos con los valores de bits de paridad podemos encontrar los bits de informacin que se pueden manejar. Para obtener el nmero de bits total de la cadena del mensaje (s) se debe realizar la siguiente operacin: = 2 1
46

Ingeniera Electrnica. Deteccin y correccin de errores

Cdigos de bloque.
Un cdigo de bloques convierte k bits de entrada en n bits de salida con n>k, este es un cdigo sin memoria, veamos algunos ejemplos: Cdigos de Hamming. En 1950 R. W. Hamming, de los Laboratorios Bell, comenz a utilizar el concepto de distancia, que se define como el nmero de posiciones en las que dos dgitos binarios de igual longitud defieren. Por ejemplo en 10010 y 01011 la distancia de Hamming es 3, pues difieren en 3 de las 5 posiciones.
47

Ingeniera Electrnica. Deteccin y correccin de errores

La idea entonces fue establecer un set de caracteres en el que todos tienen entre s la misma distancia de Hamming, luego en el extremo receptor se verifica cada carcter recibido para determinar si es uno de los caracteres vlidos, si no lo es se busca el carcter que tenga la menor distancia de Hamming con este y se le asigna ese valor como correcto. Los cdigos de Hamming a propuesta de este se mejoraron agregando a los bits de informacin una serie de bits de comprobacin, a partir de estos ltimos se puede detectar la posicin de bits errneos y corregirlos.
48

Ingeniera Electrnica. Deteccin y correccin de errores

Como ejemplo veremos uno de estos cdigos de Hamming. Supongamos que tenemos una palabra de informacin de 8 bits, D1 a D8, agregamos a ella cuatro bits de comprobacin, C1 a C4 con la siguiente estructura:

Donde C1 comprueba con paridad par D1, D2, D4, D5 y D7. C2 se usa para D1, D3, D4 y D6, anlogamente se usan C3 y C4, lo que se describe en la tabla siguiente:

49

Ingeniera Electrnica. Deteccin y correccin de errores

Cuando se envan los datos se calculan C1, C2, C3 y C4 y se van comparando los valores recibidos empezando con C4 y terminando con C1, si los valores recibidos y los calculados coinciden se asigna a la comprobacin el valor 0 y si difieren se asigna 1. Si todas las comprobaciones dan resultado positivo tendremos un valor 0000 para la secuencia de comprobacin. Pero si ha habido un error alguna de las comprobaciones fallar. Supongamos que se ha producido un error en D3, al realizar las comprobaciones de paridad C1 y C4 darn 0 mientras que C2 y C3 darn 1, tendremos una secuencia de comprobacin 0110 que representa en binario 6 que es la posicin de D3 el bit errneo..!!!, solo queda corregirlo.

50

Ingeniera Electrnica. Deteccin y correccin de errores

Otros cdigos de bloque. Adems de los cdigos de Hamming existen muchos otros tipos de cdigos de bloque, ejemplos de estos cdigos son Bose-ChaudhuriHocquenhem(BCH), Reed-Solomon, Reed-Mller y Golay. Un tipo de cdigo Reed-Solomon es muy utilizado en los reproductores de CDs y soporta hasta 100 Mbps. Tiene una eficiencia de 7/8 15/16, una demora tpica de 2000 ms duraciones de bits y corrige bloques de hasta 100 bits. Reed-Solomon son un subconjunto lineal de los cdigos de bloque BCH y se especifican como RS (n,k) donde n es la longitud de las palbras de cdigo y k es la longitud de los datos, n-k es el nmero de bits adicionales. As el estndar tiene 255 bits en la palbra de cdigo, con 239 bits de datos y 16 bits adicionales para implementar la deteccin y correccin de errores.
51

Ingeniera Electrnica. Deteccin y correccin de errores

Tanto los cdigos BCH como los subconjuntos RS mejoran el BER sustancialmente tal como lo muestra la Figura que da las BER en funcin de la relacin seal ruido para enlaces pticos de 40Gbps.

52

Ingeniera Electrnica. Deteccin y correccin de errores

Cdigos de rbol. Un cdigo de rbol es producido por un codificador con memoria, a este grupo pertenecen los cdigos convolucionales. Cdigos Convolucionales Mediante la codificacin convolucional cada bit de una secuencia es convolucionado con uno varios bits enviados inmediatamente antes, adems, se agrega un bit redundante a cada grupo de bits comparados de esta manera. Cuando un bit es solo comparado con el que le precede, el nmero de bits redundantes necesarios para asegurar la decodificacin es muy alto, an cuando la complejidad del procesamiento es minimizada.

53

Ingeniera Electrnica. Deteccin y correccin de errores

Por el contrario, cuando el bit es comparado con gran nmero de bits precedentes, el nmero de bits redundantes es minimizado, pero la complejidad del procesamiento en ambos extremos es alta.

En un codificador convolucional k bits(una trama paquete) de entrada son convertidos en n bits de salida(trama de salida) con n>k,la conversin aqu es diferente que en los cdigos de bloque ya que el codificador tiene memoria,y la trama de salida depende de las K tramas de entrada anteriores(K>1),K es la "constraint lenght"
54

Ingeniera Electrnica. Deteccin y correccin de errores

El decodificador tiene como funcin determinar la secuencia de salida ms probable dado un flujo de bits recibido(que pueden contener errores)y sabiendo la codificacin empleada. Equivale a comparar la secuencia recibida con todas las secuencias posibles de ese codificador y seleccionar la que ms se le acerque segn una distancia de Hamming, otro esquema de decodificacin es el de Viterbi. Estos cdigos normalmente trabajan hasta 50 Mbps, con una eficiencia de , 3/4 7/8, tienen una demora tpica de 30 a 1000 duraciones de bit y la secuencia de bits corregidas son inferiores a 20, el estndar V.32 del CCITT usa Trellis Coding y tiene una eficiencia de 4/5.
55

Vous aimerez peut-être aussi