Está en la página 1de 11

CODIGO DE REDUNDANCIA CICLICA CRC hace referencia a cyclic redundancy check, tambin llamado polynomial code checksum.

En espaol, control de redundancia cclica o comprobacin de redundancia cclica. El CRC es una funcin diseada para detectar cambios accidentales en datos de computadora y es comnmente usada en redes digitales y dispositi os de almacenamiento !como discos duros". El CRC fue creado por #. #esley $eterson en %&'%( el polinomio de )* bits usado en funciones CRC de Ethernet !y otros est+ndares" fue publicado en %&,-. El CRC es muy popular por su simple.a de implementacin, f+cil de anali.ar matem+ticamente y es muy bueno detectando errores causados por ruidos en los canales de transmisin. Funcionamiento del CRC: / cada blo0ue de datos le corresponde una secuencia fi1a de nmeros binarios conocida como cdigo CRC !esto se calcula con una misma funcin para cada blo0ue". /mbos se en an o almacenan 1untos. Cuando un blo0ue de datos es ledo o recibido, dicha funcin es aplicada nue amente al blo0ue, si el cdigo CRC generado no coincide con el cdigo CRC original, entonces significa 0ue el blo0ue contiene un error. Eso har+ 0ue el dispositi o intente solucionar el error releyendo el blo0ue o re0uiriendo 0ue sea en iado nue amente. 2i coinciden ambos cdigos CRC, entonces se asume 0ue el blo0ue no contiene errores !e3iste una remota posibilidad de 0ue haya un error sin detectar". El nombre 4control5comprobacin de redundancia cclica4 se debe a 0ue se

4controla4 ! erificacin de datos" un cdigo redundante !no agrega nue a informacin, el cdigo CRC representa el mismo blo0ue de datos" y el algoritmo est+ basado en cdigos cclicos. Es importante destacar 0ue el nmero de caracteres de entrada a la funcin CRC puede tener cual0uier longitud, pero siempre producir+ un cdigo CRC de igual longitud. 6a comprobacin de redundancia cclica !CRC" es un tipo de funcin 0ue recibe un flu1o de datos de cual0uier longitud como entrada y de uel e un alor de longitud fi1a como salida. Es til para identificar errores ocasionados por el ruido. 7ado un blo0ue o mensa1e de k8bits, el transmisor genera una secuencia de n8 bits, denominada secuencia de comprobacin de la trama !9C2, frame check se0uence", de tal manera 0ue la trama resultante, con n : k bits, sea di isible por algn nmero predeterminado. $rincipalmente, estos cdigos CRC 8tambin llamados cdigos polinmicos8 usan un polinomio generador ;!3" de grado r con n bits de datos binarios !coeficientes del polinomio de orden n8%". 7atos< %=%%% $olinomio< 3> : 3* : 3% : 3= / estos bits de datos se le aaden r bits de redundancia, de forma 0ue el polinomio resultante sea di isible por el polinomio generador. El receptor erificar+ si el polinomio recibido es di isible por ;!?". 2i no lo es, habr+ un error en la transmisin. 6os polinomios generadores m+s usados son<

@CRC8%*< 3%* : 3%% : 3) : 3* : 3 : %. Asado para transmitir flu1os de ' bits, 1unto a otros %* de redundancia. @CRC8%'< 3%' : 3%- : 3* : %. $ara flu1os de B bits, con %' de redundancia. Asado en A2/, principalmente. @CRC8CCCDD< 3%' : 3%* : 3- : %. $ara flu1os de B bits, con %' de redundancia. Asado en Europa, principalmente. @CRC8)*< 3)* : 3*' : 3*) : 3** : 3%' : 3%* : 3%% : 3%= : 3B : 3, : 3- : 3> : 3* : 3 : %. 7a una proteccin e3tra sobre la 0ue dan los CRC de %' bits, 0ue suelen dar la suficiente. 2e emplea por el comit de est+ndares de redes locales !CEEE8 B=*". CODIGO HAMMING

Es un cdigo 0ue se utili.a en la deteccin y correccin de errores 0ue se producen en la transmisin de cdigos binarios, la palabra de cdigo se conforma por los bits de comprobacin y los bits de informacin. $ara poder continuar con el desarrollo del cdigo es necesario tener en cuenta algunas generalidades y conceptos b+sicos< Cdigo binario< Es una representacin un oca de las cantidades, de tal forma 0ue a cada una de stas se le asigna una combinacin de smbolos binarios. 7istancia entre dos combinaciones binarias< Eiene dada por el nmero de bits 0ue hay 0ue cambiar en una de ellas para obtener la otra. 7istancia mnima de un cdigo< Es la menor de las distancias entre dos combinaciones binarias cuales0uiera pertenecientes a dicho cdigo.

Distancia de Hamming El cdigo Famming se genera a partir de una distancia mnima de ), ya 0ue una distancia de % o * es incon eniente para poder generar un cdigo para detectar un error. 6a distancia mnima de Famming est+ dada por la siguiente ecuacin< 7mG *?:% 7onde 7m es la distancia mnima de un cdigo para permitir la correccin de datos y ? es las lneas de datos. 2i se tu iese una distancia de % no tendramos alores para saber si hay o no un error. 2i se tienen una distancia de * se podra lograr un sistema de correccin de error con un bit de paridad pero el problema 0ue esto lle a es 0ue un sistema con distancia * puede tener datos errneos 0ue pueden pasar como datos correctos. Con la distancia de ) se tiene 0ue los cdigos no an a tener datos o resultados similares por ende se puede detectar el error y se puede desarrollar un sistema para su correccin como el Famming Varia les !ara la generaci"n Hamming $ara la generacin del cdigo Famming se deben tener en cuenta tres ariables 0ue mencionaremos a continuacin< n< nmero de bits del cdigo original 0ue se pretende transmitir. p< nmero de bits de paridad par generados en el transmisor, o sea, nmero de lneas 0ue aadimos al cdigo inicial.

c< nmero de bits detectores de paridad par generados por el receptor. El alor de p G c, ya 0ue los bits de paridad generados tanto en el

transmisor como en el receptor debe ser la misma. El nmero de combinaciones 0ue se pueden formar con los c bits detectores de paridad tiene 0ue ser mayor o igual 0ue el nmero de lneas del cdigo original !n" m+s el nmero de lneas de paridad aadidas !p" m+s uno, este ltimo para contemplar el caso de no error.

Esta ecuacin nos muestra 0ue e3isten unas combinaciones, estas no pueden ser asignadas de forma aleatoria a un e ento, para asignar estas combinaciones a un e ento especfico este debe estar en uno de los tres grupos diferenciados. %. Combinacin asignada a la situacin en 0ue no haya error en la transmisin. *. Combinaciones asignadas a los bits de paridad generados en el transmisor. ). Combinaciones asignadas a los bits de datos del cdigo original. $odemos tener un mane1o de esta ecuacin para poder obtener la cantidad mnima de bits de informacin 0ue nosotros podemos en iar. 2i se despe1a n Deniendo en cuenta 0ue pGc 2i contamos con los alores de bits de paridad podemos encontrar los bits de informacin 0ue se pueden mane1ar

$ara obtener el nmero de bits total de la cadena del mensa1e !s" se debe reali.ar la siguiente operacin

Generaci"n del c"digo de Hamming El cdigo Famming plantea la generacin de una tabla para poder asignar los alores de las posibles combinaciones 0ue generen los bits de paridad. / continuacin mane1aremos un cdigo /2CCC de , bits. 2i se tienen , bits de informacin se necesitan entonces 0ue c G >, esto nos conlle a a 0ue se generan *c combinaciones y es igual a *> G %' combinaciones a continuacin se establece una tabla de %' combinaciones con un rango de = a %-

$ara la asignacin de los e entos se reali.a lo siguiente< %. Contar Hmero de unos en las combinaciones *. 2i el nmero de unos es cero es una situacin de no error y no se utili.a para en iar dato. ). 2i el nmero de unos es %, debemos empe.ar a organi.ar los bits de paridad desde el primero hasta el ltimo y darles su respecti a asignacin. >. 2i el nmero de unos es * en estos deben colocarse para los datos, si las combinaciones de * unos no son suficientes para los datos debemos empe.ar con los de ) y luego los de > as sucesi amente, se prefiere 0ue se colo0uen los datos primero en los grupos de *. -. 2i no se tienen m+s datos esas lneas no son +lidas y se omiten en el sistema de erificacin. 6os bits de paridad b%, b*, b>, bB, no tienen un alor fi1o este alor se encuentra por las siguientes relaciones< b% G b) b- b, b& b%% b%) b%-( b* G b) b' b, b%= b%% b%> b%-( b> G b- b' b, b%* b%) b%> b%-( bB G b& b%= b%% b%* b%) b%> b%-( Esto se debe a 0ue los bits de paridad se conforman de las combinaciones en donde el bit de paridad es uno, por e1emplo el bit% es el bit de paridad para las combinaciones impares, se conforman de las combinaciones impares b), b-, b,, b&, b%%, b%), b%-. / continuacin se muestra una tabla para er cmo se reali.a la operacin de E?IR. En la tabla se organi.an y se suma para obtener los alores de b%, b*, b>, bB.

Coeficientes de paridad

Derminada la tabla se procede a en iar el dato o la trama de datos la cual sera ==%===%%===%== 6os datos 0ue no se utili.an por lo general se en an en cero. $ara saber si e3iste un error en la transmisin o si el mensa1e de transmiti correctamente se deber reali.ar una comprobacin del sistema para esto se reali.a con una codificacin de los componentes c%, c*, c), c> de la siguiente manera< c% G b% b) b- b, b& b%% b%) b%-( c* G b* b) b' b, b%= b%% b%> b%-( c) G b> b- b' b, b%* b%) b%> b%-( c> G bB b& b%= b%% b%* b%) b%> b%-( 6os resultados 0ue emos a0u son calculados con los datos 0ue llegan al receptor, si los datos de c%, c*, c), c> nos dan cero en todos el mensa1e se transmiti sin error pero si uno o arios de estos elementos se con ierten en % 0uiere decir 0ue hay un error, por e1emplo si el resultado de los indicadores ci son< c% G =, c*G%, c)G%, c>G=, esto 0uiere decir 0ue hay un error en la combinacin b'

por ende si hay un uno en esta posicin 0uiere decir 0ue el erdadero alor es cero, entonces podemos cambiar el alor de este y corregir de esta manera el error presentado. #$ndrome % detecci"n sistem&tico del c"digo de Hamming $ara el e1emplo anterior del cdigo /2CCC se tienen , bits de informacin para transmitir, se obser a el mismo dato 0ue se en a en la tabla a en la tabla b se encuentra el dato recibido con un error

E1emplo trama de datos en iados y se recibe una trama con el dato > errneo o bit ,

Como se obser a en la recepcin hay un

alor diferente de los datos

transmitidos, si se reali.an los alores de b%, b*, b>, bB, son distintos en ambos lados, ahora si se comparan con los alores de c% c*, c), c> se obtiene 0ue<

7eteccin del nmero del bit daado

En la figura se suman los alores de bits de paridad encontrados en el receptor con los alores de paridad en idados, se debe reali.ar una operacin E?IR uno a uno y el resultado 0ue se obtiene son los alores de c%, c*, c), c>, como emos el resultado es =%%% si esto se pasa a decimal es , si emos en la tabla del e1emplo el dato 0ue se encuentra errneo se encuentra en la combinacin , la cual es la asignada al dato >. El sndrome /l c+lculo 0ue se reali. anteriormente de sumar cada bit de paridad en el receptor se le denomina 2ndrome, el sndrome se desarrolla bit a bit y se suma con una funcin E?IR

9uente< K*=F/LLCH;K*=*=%*.pdf

http<55codigohammingud.Jikispaces.com5file5 ieJ5C

KC)K&)7C;I:7E:F/LLCH;:*=%*.pdf5)>-B&)&B>5CKC)K&)7C;IK*=7E 9uente< http<55JJJ.eme.eta.com5articulos5codigos8de8redundancia8ciclica 9uente< http<55JJJ.alegsa.com.ar57ic5crc.php 9uente< http<55JJJ.google.co. e5url.files.Jordpress.com

También podría gustarte