martes, 18 de septiembre de 2012

Deteccion y correccion de errores

       INSTITUTO TECNOLOGICO SUPERIOR DE             TEPOSCOLULA

 

“FUNDAMENTOS DE TELECOMUNICACIONES”

 

TRABAJO:

INVESTIGACION DE DETECCION Y CORRECCION DE ERRORES

CATEDRATICO: LIC.MARCO ANTONIO RUIZ VICENTE

ALUMNAS: ILITHYA ITANDEHUI AGUILAR GARCIA

                      LAURA PAOLA GOMEZ HERNANDEZ

                      JUDITH GARCIA LOPEZ

                                                      UNIDAD II

INGENIERIA EN SISTEMAS COMPUTACIONALES      

 

SEMESTRE GRUPO: 5TO “A”

SAN PEDRO Y SAN PABLO TEPOSCOLULA OAXACA

--------------------------------------------------------------------------------
Verificación de errores
La codificación binaria es de gran utilidad práctica en dispositivos electrónicos como ordenadores, donde la información se puede codificar basándose en la presencia o no de una señal eléctrica.
Sin embargo, esta señal eléctrica puede sufrir alteraciones (como distorsiones o ruidos), especialmente cuando se transportan datos a grandes distancias. Por este motivo, ser capaz de verificar la autenticidad de estos datos es imprescindible para ciertos propósitos (incluido el uso de información en entornos profesionales, bancarios, industriales, confidenciales o relacionados con la seguridad).
Por este motivo existen algunos mecanismos que garantizan un nivel de integridad de los datos, es decir, que el destinatario obtiene una confirmación de que los datos recibidos son, de hecho, similares a los datos transmitidos. Existen dos maneras de proteger la transferencia de datos para que no se produzcan errores:
· instalando un medio de transmisión más seguro, es decir, una capa de protección física. Una conexión convencional tiene, por lo general, un porcentaje de error entre 10-5 y 10-7.
· implementando mecanismos lógicos para detectar y corregir errores.
La mayoría de los sistemas de control lógico de errores se basan en la suma de información (esto se denomina "redundancia") para verificar la validez de los datos. Esta información adicional se denomina suma de comprobación.
Verificación de errores
Se han perfeccionado mejores sistemas de detección de errores mediante códigos denominados:
· Códigos de autocorrección
· Códigos de autoverificación
Verificación de paridad
La verificación de paridad (a veces denominada VRC o verificación de redundancia vertical) es uno de los mecanismos de verificación más simples. Consiste en agregar un bit adicional (denominado bit de paridad) a un cierto número de bits de datos denominado palabra código (generalmente 7 bits, de manera que se forme un byte cuando se combina con el bit de paridad) cuyo valor (0 o 1) es tal que el número total de bits 1 es par. Para ser más claro, 1 si el número de bits en la palabra código es impar, 0 en caso contrario.
Tomemos el siguiente ejemplo:
 

En este ejemplo, el número de bits de datos 1 es par, por lo tanto, el bit de paridad se determina en 0. Por el contrario, en el ejemplo que sigue, los bits de datos son impares, por lo que el bit de paridad se convierte en 1:

 

Supongamos que después de haber realizado la transmisión, el bit con menos peso del byte anterior (aquel que se encuentra más a la derecha) ha sido víctima de una interferencia:

 

El bit de paridad, en este caso, ya no corresponde al byte de paridad: se ha detectado un error.
Sin embargo, si dos bits (o un número par de bits) cambian simultáneamente mientras se está enviando la señal, no se habría detectado ningún error.

 


Ya que el sistema de control de paridad puede detectar un número impar de errores, puede detectar solamente el 50% de todos los errores. Este mecanismo de detección de errores también tiene la gran desventaja de ser incapaz de corregir los errores que encuentra (la única forma de arreglarlo es solicitar que el byte erróneo sea retransmitido).
Verificación de redundancia longitudinal
La verificación de la redundancia longitudinal (LRC, también denominada verificación de redundancia horizontal) no consiste en verificar la integridad de los datos mediante la representación de un carácter individual, sino en verificar la integridad del bit de paridad de un grupo de caracteres.
Digamos que "HELLO" es el mensaje que transmitiremos utilizando el estándar ASCII. Estos son los datos tal como se transmitirán con los códigos de verificación de redundancia longitudinal:
     
 Letra


Código ASCII
(7 bits)

    Bit de paridad
     (LRC)

H              
1001000               
0
E
1000101
1
L
1001100
1
L
1001100
1
0
1001111
1

VRC
1000010
0


Verificación de redundancia cíclica
La verificación de redundancia cíclica (abreviado, CRC ) es un método de control de integridad de datos de fácil implementación. Es el principal método de detección de errores utilizado en las telecomunicaciones.
Concepto
La verificación de redundancia cíclica consiste en la protección de los datos en bloques, denominados tramas. A cada trama se le asigna un segmento de datos denominado código de control (al que se denomina a veces FCS, secuencia de verificación de trama, en el caso de una secuencia de 32 bits, y que en ocasiones se identifica erróneamente como CRC). El código CRC contiene datos redundantes con la trama, de manera que los errores no sólo se pueden detectar sino que además se pueden solucionar.

Verificación de redundancia cíclica (CRC) 

El concepto de CRC consiste en tratar a las secuencias binarias como polinomios binarios, denotando polinomios cuyos coeficientes se correspondan con la secuencia binaria. Por ejemplo, la secuencia binaria 0110101001 se puede representar como un polinomio, como se muestra a continuación:
0*X9 + 1*X8 + 1*X7 + 0*X6 + 1*X5 + 0*X4 + 1*X3 + 0*X2 + 0*X1 + 1*X0
siendo
X8 + X7 + X5 + X3 + X0
o
X8 + X7 + X5 + X3 + 1
De esta manera, la secuencia de bits con menos peso (aquella que se encuentra más a la derecha) representa el grado 0 del polinomio (X0 = 1), (X0 = 1), (X0 = 1), el 4º bit de la derecha representa el grado 3 del polinomio (X3), y así sucesivamente. Luego, una secuencia de n- bits forma un polinomio de grado máximo n-1. Todas las expresiones de polinomios se manipulan posteriormente utilizando un módulo 2.
En este proceso de detección de errores, un polinomio predeterminado (denominado polinomio generador y abreviado G(X)) es conocido tanto por el remitente como por el destinatario. El remitente, para comenzar el mecanismo de detección de errores, ejecuta un algoritmo en los bits de la trama, de forma que se genere un CRC, y luego transmite estos dos elementos al destinatario. El destinatario realiza el mismo cálculo a fin de verificar la validez del CRC.


No hay comentarios:

Publicar un comentario