Sei sulla pagina 1di 3

1

CODIGO DE DETECCION DE ERRORES CRC


(CODIGO DE DETECCION Y REDUNDANCIA CICLICA)

Hugo Gabriel Ortega Vintimilla
email: gabo_45@hotmail.es
Nelson Andr Vsquez Del Hierro
email:andre_tea@hotmail.com
Ingeniera Electrnica e Instrumentacin, Tercero A, Universidad de las Fuerzas Armadas ESPE-
Extensin Latacunga, Mrquez de Maenza S/N Latacunga, Ecuador.
16 de Abril del 2014.



1 RESUMEN:
Los cdigos de deteccin de errores CRC son cdigos
que se agregan al mensaje original que se quiere
transmitir para enviarlo con un tipo de seguridad, el
mismo que nos sirve para detectar si el mensaje tiene
errores. Al hablar de Cdigos CRC estamos hablando de
un Mensaje (Dividendo) en binario, y de un Polinomio
Generador (Divisor) igual en binario que se encuentra
estandarizado, adems de tener en cuenta que usamos
Aritmtica XOR.
El procedimiento que se usa para obtener el cdigo
CRC de un Mensaje es una divisin del Mensaje para el
Polinomio Generado, sabiendo que dependiendo del
grado del polinomio generador se debern agregar bits
(0) al Dividendo o Mensaje y que el Residuo es el
Cdigo CRC que se agregara al bit menos significativo
del Mensaje.
La deteccin de errores se obtiene de dividir el Nuevo
Mensaje para el mismo Polinomio Generador y si R=0
no hay error y si R 0 hay errores.
Palabras clave: CRC, XOR, Polinomio Generador,
Divisin.

2 INTRODUCCIN
Ms all de los cdigos de Hamming, se han
desarrollado otros cdigos de deteccin y correccin de
errores. Los ms importantes que casualmente incluyen
los cdigos Hamming son los cdigos de deteccin de
redundancia cclica (CRC, cyclic-redundancy-check).
Dos aplicaciones importantes de los cdigos CRC se
encuentran en las unidades controladoras de disco y en
las redes de datos. En un unidad de disco, cada bloque
de datos (por lo regulas 512 bytes) est protegido
mediante un cdigo CRC, de modo que los errores que
estn en el interior de un bloque pueden detectarse y, en
algunas unidades, corregirse. [1]
3 CODIGO CRC
Es un cdigo de deteccin de errores usado
frecuentemente en redes digitales y en dispositivos de
almacenamiento para detectar cambios accidentales en
los datos. Los bloques de datos ingresados en estos
sistemas contiene un valor de verificacin adjunto,
basado en el residuo de una divisin de polinomios; el
clculo es repetido, y la accin de correccin puede
tomarse en contra de los datos presuntamente
corrompidos en caso de que el valor de verificacin no
concuerde; por lo tanto se puede afirmar que este cdigo
es un tipo de funcin que recibe un flujo de datos de
cualquier longitud como entrada y devuelve un valor de
longitud fija como salida. [2]


Esquema de Transmisin en cdigo CRC





2

3.1 NOTACION POLINOMIAL
Para representar los cdigos cclicos se presenta
cualquier nmero binario de n posiciones como un
polinomio de grado (n-1), que contiene la variable
ficticia x. [3]
Ejemplo 1: Transformar el numero 100101 a notacin
polinomial.
10010



Ejemplo 2: Transformar el Polinomio

a
binario.


1 1 0 0 1

Ejemplo 3: Transformar el Polinomio

a binario.


1 0 0 1 0
3.1 CALCULO DEL CRC.
El clculo es una larga divisin de computacin en el
que se descarta el cociente y el resto se convierte en el
resultado siendo el divisor un polinomio generador,
con la importante diferencia de que la aritmtica que
usamos es la XOR (sin acarreos).El tamao del resto es
siempre menor que la longitud del divisor, que, por lo
tanto determina el tamao del resultado. Hay que tomar
en cuenta que el grado del polinomio generador son los
nmeros de bits (0) que hay que agregar al final
dividendo. (Wikipedia, 2013). [4]
3.2 POLINOMIO GENERADOR.
La seleccin del polinomio generador es esencial si
queremos detectar la mayora de los errores que
ocurran. [5]
Denominacin G(x)

CRC-8 x
8
+ x
2
+ x
1
+ 1
CRC-10 x
10
+ x
9
+ x
5
+ x
4
+ x
1
+ 1
CRC-12 x
12
+ x
11
+ x
3
+ x
2
+ 1
CRC-16 x
16
+ x
15
+ x
2
+ 1
CRC-CCITT x
16
+ x
12
+ x
5
+ 1
CRC-32 x
32
+ x
26
+ x
23
+ x
16
+ x
11
+
x
10
+ x
8
+ x
7
+ x
5
+ x
4
+ x
2
+ 1
Tabla de polinomios generadores estandarizados.

Ejemplo: Encontrar el CRC del mensaje 10011011 con
un polinomio generador de

(1001).
El grado de polinomio es 3 por lo que agregamos 3 bits
de comprobacin (0) al dividendo y en caso de que nos
entreguen el numero binario serio el nmero de bits
menos 1 en este caso seria 4 bits - 1 bit que nos da 3
bits de comprobacin.
1 0 0 1 1 0 1 1 0 0 0 1001
-1 0 0 1 1 0 0 0 1 0 1 0
0 0 0 0 1 0 1 1
-1 0 0 1
0 0 1 0 0 0
- 1 0 0 1
0 0 0 1 0
0 1 0 son los bits que agregaremos al dividendo o
mensaje a transmitir obteniendo el cdigo CRC.
1 0 0 1 1 0 1 1 0 1 0 siendo este el mensaje a transmitir.

3.3 DETECCION DE ERRORES.
La deteccin de errores se da Dividiendo el Mensaje ya
como cdigo CRC para el mismo Polinomio Generador.
- Si el residuo de la divisin es cero no existen
errores.
- Si el residuo de la divisin es diferente de cero
existen errores en el cdigo.

1 0 0 1 1 0 1 1 0 1 0 1001
-1 0 0 1 1 0 0 0 1 0 1 0
0 0 0 0 1 0 1 1
-1 0 0 1
0 0 1 0 0 1
- 1 0 0 1
0 0 0 0 0
El cdigo no presenta Errores.







3



4 CONCLUSIONES

- Los cdigos CRC son cdigos que nos
ayudan a detectar errores en la
Transmisin de un Mensaje.
- La Notacin Polinomial se representa
tomando en cuenta la n nmeros de un
cdigo Binario expresando como un
polinomio n-1 utilizando la variable x.
- El polinomio Generador es estandarizado
internacionalmente, y determina el nmero
de bits (0) que se agrega al bit menos
significativo del Mensaje a Transmitir.
- El residuo determina el Cdigo CRC y
depende del grado del polinomio de
generacin.
- Si el Residuo = 0 no hay Errores y si el
Residuo 0 existen Errores en la
Transmisin.

5 RECOMENDACIONES
- Tener muy en cuenta que la Aritmtica
que se maneja para sumas y restas de
nmeros binarios es la XOR.


6 REFERENCIAS

[1] J. F. Wakerly, Diseo Digital-Principios y
Practicas, Tercera Edicin Pearson, pp-65, 2001.

[2] Peterson, W.W. y Brown, D.T. Cyclic Codes for
Error Detection. Proceedings of the IRE.Enero 1961.

[3] Maya. C (2009, Octubre 15). Deteccin y
Correccin de Errores. [En lnea].
Disponible en:
http://www.slideshare.net/carlosamayat/hamming-y-crc.
Revisado(15- 04-2014)

[4]Wikipedia.(2014,Marzo20).Comprobacin de
Redundancia Cclica. [En Lnea]. Disponible en:
http://es.wikipedia.org/w/index.php?title=Comprobaci%C
3%B3n_de_redundancia_c%C3%ADclica&action=history
Revisado (15- 04-2014)
[5] Escuela Politcnica Superior. Cdigos de
Redundancia Cclica. [En lnea]. Disponible en :
http://arantxa.ii.uam.es/~ig/practicas/enunciados/prac3/r
edundanciaciclica.pdf
Revisado(15- 04-2014)

Potrebbero piacerti anche