lunes, 30 de abril de 2012


Códigos Detectores y Correctores de Errores 

La capacidad para detectar posibles errores en la información manipulada por las computadoras es esencial para poder confiar en los resultados ofrecidos. 
El error es la alteración del valor correcto en uno o más bits de información producida durante su almacenamiento, transmisión o manipulación. 
Cuando se transmite información entre sistemas  digitales, se puede producir pérdida de información debido a problemas de ruido, deformación de la señal (desadaptación de impedancias, ancho de banda, "crosstalk", etc.). 


Los errores en un sistema de comunicaciones digitales se producen fundamentalmente por dos tipos de fallas: 


• Eventos estáticos 
• Eventos dinámicos 


Los eventos estáticos (EE) son aquellos de comportamiento y existencia conocidos, como podría ser: distorsión de señal, pérdida por atenuación, “crosstalk”, etc.  


Los eventos dinámicos (ED) son aquellos que ocurren en forma aleatoria, como sería los disturbios eléctricos producido por descargas atmosféricas, transitorios en líneas eléctricas de alimentación, etc, y todo aquello que por su naturales no se pueda prever su ocurrencia.



Aquellos provenientes de EE son más fáciles de manejar, ya que sus efectos son predecibles, no sucede lo mismo con los ED, cuya naturaleza aleatoria los hace impredecibles. Hay muchos métodos y códigos sofisticados, siendo posible en algunos casos recuperar la información transmitida. Para poder detectar o incluso corregir posibles errores en la información, es preciso añadir información redundante de comprobación. 


La redundancia (R) es la información agregada a los datos (D) de acuerdo con alguna formulación matemática conocida. El proceso de detección de errores consiste en comprobar si el conjunto datos/redundancia (D,R) cumple o no dicho formulación, entonces: 


• Si la formulación se cumple, se asume que la información es correcta. 
• Si la formulación no se cumple, está claro que la información contiene errores. 


Si la información redundante agregada permite  conocer cuáles son los bits erróneos, es posible realizar la corrección de los mismos y reconstruir la información original.



Chequeo de Redundancia Cíclica (CRC) 
   
Este método es mucho más efectivo que los anteriores en la detección de errores en los sistemas de comunicaciones. No permite la corrección de errores. 
En este método, en forma similar a los anteriormente descriptos, se envía uno o más caracteres adicionales de redundancia denominados FCS ("frame check sequence") o BCC ("block check caracter"), que difieren fundamentalmente en la forma de calcularlo. 
El CRC consiste en considerar a los bits a ser transmitidos como un polinomio en x (para n bits el orden es n-1) tal que la presencia de un término significa un "1", y la ausencia, un "0"; es decir: sean  1010101 los bits a transmitir, entonces el mensaje podrá ser considerado como un polinomio G(x) tal que: 
G(x) =  x7 + x5 + x3 + 1 


Códigos Hamming

El código Hamming es un código de distancia 3, capaz de detectar errores dobles y corregir si hay un error simple. El código Hamming se forma por n bits de información (Mn, Mn-1, ... M1) y k bits de chequeo (Ck, Ck-1, ..... C1) de paridad par o impar. El mensaje codificado está formado por n + k bits, siendo k el menor entero que cumple que: 
2k≥ n+k+1     


(por ejemplo, si n = 7, entonces k = 4). 
Hamming es un código capaz de corregir un error simple por lo tanto debe identificar un bit erróneo en una cadena de bits. Entonces  la ecuación [7] nos dice que el número de combinaciones de los bits de chequeo (2
k) debe ser al menos igual al número de bits del mensaje más los bits de redundancia más una combinación extra para identificar que no hubo 
errores. 
Los bits de chequeo ocupan posiciones específicas en el mensaje codificado. Esas posiciones son potencias enteras de 2, es decir 1,2,4,8, .... 2
k-1, es decir que los bits de paridad se ubican en los posiciones que tienen un único bit a 1 en su ordinal.         

Conversión Decimal-Binario 
La conversión de números enteros y fraccionarios decimales en binarios, se lleva a  cabo por sucesivas divisiones y multiplicaciones, respectivamente, por la base (2). Números Enteros 
Como resultado de la división de un número decimal por dos, se obtiene  un cociente Q y un resto R. Los restos que se obtienen de las  sucesivas divisiones son los bits del número binario.  El resto R es siempre un número entero menor que el divisor (dos en este caso), por lo tanto R puede ser 0 ó 1.



Conversión Decimal-Hexadecimal

La conversión de números enteros y fraccionarios decimales a hexadecimales se lleva a  cabo por sucesivas divisiones y multiplicaciones, respectivamente, por la base (16). 







TIPOS DE PERTURBACIONES:

RUIDO


DISTORSIÓN



ATENUACIÓN 


VÍDEO DE LA MAQUETA 

lunes, 23 de abril de 2012

DETENCIÓN DE ERRORES

En matemáticas,computación t teoría de la información la detección y corrección de errores es un importante practica para el mantenimiento e integridad de los datos a través de diferentes procedimientos y dispositivos como medios de almacenamiento confiables. 

La comunicación entre varias computadoras produce continuamente un movimiento de datos, generalmente por canales no diseñados para este propósito (línea telefónica), y que introducen un ruido externo que produce errores en la transmisión.

Chequeo de redundancia vertical (VRC).- Es un esquema de detección de errores que usa la paridad para determinar si un error de transmisión ha ocurrido dentro de un carácter. Por lo tanto el VRC a veces se llama paridad de carácter. con el VRC cada carácter tiene un bit de paridad agregado a el antes de la transmisión. puede usar paridad par o impar.

Chequeo de redundancia horizontal y longitudinal (HRC o LRC).- Es un esquema de detección de errores que utiliza la paridad para determinar si un error de transmisión ha ocurrido en un mensaje y por lo tanto a veces es llamado paridad de mensaje. con el LRC cada posición de bit tiene un bit de paridad. Esencialmente el LRC es el resultado de usar XOR con los caracteres que componen un mensaje, mientras que el VRC es el uso de XOR en los bits con un solo carácter.
La secuencia del bit en el LRC se calcula en el transmisor antes de enviar la información después se transmite como si fuera el ultimo carácter del mensaje. En el receptor LRC se recalcula en los datos y el LRC recalculado se compara con el LRC transmitido con el mensaje. Si son iguales se asume que ningún error de transmisión ha ocurrido.Si son diferentes un error de transmisión debe haber ocurrido.

Revisión de redundancia cíclica (CRC).- Probablemente el esquema mas confiable para la detección de errores es el chequeo de redundancia cíclica (CRC).se usa generalmente con códigos de 8 bits tales como EBCDIC o códigos de 7 bits cuando no se usa paridad.
La finalidad de este método es crear una parte de redundancia la cual se añade al final del código a transmitir (y un mismo polinomio generador) se genere siempre en el mismo código final