Está en la página 1de 32

CRC usando Lgica Digital

Dividiendo circuito que consta de:


puertas XOR
Hastan-kpuertas XOR
Presencia de una puerta corresponde a la presencia de
un trmino del polinomioPdivisor(X)
Un registro de desplazamiento
Cadena de dispositivos de almacenamiento de 1 bit
Registro contienen-kbits, igual a la longitud de la
FCS

Example
Data D=1010001101=> D(X) =
X9+X7+X3+X2+1
Divisor P =110101=> P(X) =
X5+X4+X2+1

Para producir la salida adecuada se utilizan dos interruptores.

Los bits de datos de entrada se alimentan con los


dos interruptores en la posicin A.
El resultado es que durante los 10 primeros
pasos, los bits de entrada se introducen en el
registro de desplazamiento y tambin se utiliza
como bits de salida.
Una vez procesado el ltimo bit de datos, el
registro de desplazamiento contiene el resto (FCS).
Tan pronto como se presta el ltimo bit de datos
al registro de desplazamiento, ambos interruptores
estn en la posicin B.
Esto tiene dos efectos (1) todas las puertas XOR
convierte pase a travs (no se cambian los bits), y
(2) como el proceso de cambio continua, los 5 bits
de CRC son de salida.

mas

DETECCION DE ERRORES
Comprobacin de redundancia cclica

T = (k + n) bits de trama que se transmite, con n <k


M = mensaje de k bits, los primeros k bits de T
F-n bits FCS, los ltimos n bits de T
P = patrn de n +1 bits, el divisor predeterminado
Ejemplo:
M = 1010001101 (10 bits)
Patrn P = 110101 (6 bits)
FCS = R que se calcula (5 bits es decir, n = 6bits -1= 5) 5 bits adicionales o
ceros
Las operaciones se llevan a cabo en mdulo-2 aritmtica:
El mensaje (M) se multiplica por 2 = es decir, (2) dando 101000110100000
El producto se divide por P dando resto o 01110
101000110100000 / 110101 Residuo: 01110
El residuo se aade a M (2= 5 ceros adheridos a la derecha) para dar T =
101000110101110
En el receptor, la trama recibida se divide por P, si no hay un resto, que no
asume error.
El patrn P es seleccionado para ser un poco ms largo que el FCS deseado y el
patrn de bits exacto seleccionado depende de los tipos de errores esperados.

IMPLEMENTACIN LGICA
DIGITAL
El proceso CRC puede ser
implementado como circuito
individual que consta de EX-OR
compuertas y un registro de
desplazamiento.

El registro contiene (n bits que es igual


a la longitud de la FCS)
FCS = R que se calcula (5 bits es decir,
n = 5) aritmtica de mdulo 2
Hay hasta n EX-OR compuertas
La presencia o ausencia de una puerta
corresponde a la presencia o ausencia
de un trmino en el polinomio divisor, P
(X) excluyendo el trmino X.

PROCESO:
El proceso comienza con el registro de desplazamiento
borrado todos ceros.
M= 1010001101
El mensaje se introduce un bit a la vez empezando por el
bit ms significativo. (bit mayor valor)
Despus de que el ltimo bit es procesado el registro de
desplazamiento contiene el residuo (FCS).
En el receptor, se utiliza la misma lgica
Como llega cada bit de M, es insertado en el registro de
desplazamiento.
Si no hubieron errores, el registro de desplazamiento
debera contener el patrn de bit para R en la conclusin
de M.
Los bits transmitidos de R ahora comienzan a llegar y el
efecto es para poner a cero el registro de modo que en la
conclusin de recepcin, el registro contenga todo 0.

Circuito:
Por ejemplo el mensaje: M = 1010001101 y divisor P =
110101
Divisor: se coloca en el circuito 110101

El registro de desplazamiento es una cadena de dispositivos


de almacenamiento de 1 bit, cada con una lnea de entrada
y una lnea de salida.En tiempos de reloj especficos, el bit
almacenado en cada registro se desplaza hacia fuera y se
sustituye por un nuevo bit de la entrada line.
El contenido del registro de desplazamiento se coloca en 0

Implementacin:
La presencia o ausencia de una puerta
corresponde a la presencia o ausencia de un
trmino en el polinomio divisor, P (X) excluyendo
el trmino X.

OTRO EJMEPLO:
Considere la posibilidad de dividir un mensaje
binario [bk-1 , B k-2 , ..., B 0] De longitud k con n
= 5 ceros adjuntas [00000], por el divisor
[100111] para encontrar el resto (el FCS).Aqu la
posicin ms a la izquierda bit es el bit ms
significativo.El siguiente circuito digital lleva a
cabo esta divisin, y funciona como
elgenerador de FCS.

El receptor (decodificador) es muy similar. La


nica diferencia es que el XOR ms a la derecha
se mueve ahora a justo antes del registro de
desplazamiento de la izquierda.

mas

mas

Deteccin de Errores

CRC: Representacin
Polinomial/Ejemplo
M = 1010001101 (10 bits) <->
X9+X7+X3+X2+1
P = 110101 (6 bits) <-> X5+X4+X2+1
FCS = ?
K = 10
n=61=5
Genere el mensaje a ser transmitido.

Lgica Digital
CRC puede ser representado usando un
circuito con compuertas XOR y un registro
de desplazamiento.
El circuito es implementado:
El registro contiene r bits (la long del FCS).
Hay hasta r compuertas XOR.
La presencia o ausencia de una compuerta
corresponde con la presencia o ausencia de un
termino en el divisor polinomial, P(X),
excluyendo el trmino 1 y Xr.

Representacin
Digital

P(X)= X5+X4+X2+1

mas

PROBLEMA

Un CRC est construido para generar un 4 bits FCS


para un mensaje de 11 bits. El generador
polinomio es X4 + X3 + 1
a) Dibuje el circuito de registro de desplazamiento
que hara realizar esta tarea
b) Codificar la secuencia de bits de datos
10011011100
(bit de la izquierda es el LSB) usando el generador
polinomio y obtener a la palabra de cdigo
c) Supongamos ahora que el bit 7 (contando desde
la
LSB) en la palabra de cdigo es errnea y mostrar
que el algoritmo de deteccin detecta el error.