Detección de Errores.
5. Ejemplo de Cálculo de CRC
Obtenido del Stalling.
Ejemplo 6.6.
La arquitectura de este circuito se explica mejor considerando un caso particu- lar, como el ejemplo que se muestra en la Figura 6.5. En este ejemplo se usa:}
Datos D=1010001101 => D(X) = X9 + X7 + X3 + X2 + 1
Divisor P = 110101 => P(X)=X5 + X4 + X2 + 1
definidas anteriormente.
En la Figura se muestra la realización del registro de desplazamiento. El proceso co- mienza con la puesta a cero de todo el registro (todo ceros). El mensaje, o dividendo, se intro- duce a continuación, bit a bit, comenzado por el bit más significativo. La Figura 6.5b es una tabla que muestra el funcionamiento paso a paso por cada bit de entrada. Cada fila de la tabla muestra los valores almacenados en los cinco elementos de memoria del registro de desplaza- miento. Las filas muestran, además, los valores que aparecerán en las salidas de los tres circui- tos exclusive-OR. Finalmente, en cada columna se muestra el valor del siguiente bit de entrada, disponible para el siguiente paso.
Nótese que la operación exclusive-or afectará a C4, C2 y C0 en el siguiente desplazamiento. Esto es idéntico al procedimiento de división binaria mencionado anteriormente. El procedi- miento continúa para todos los bits del mensaje. Para generar la salida se usan dos conmutado- res. Los bits correspondientes a los datos de entrada se introducen poniendo los dos conmutado- res a la posición A. A resultas, tras 10 pasos, los bits de entrada se introducirán en el registro de desplazamiento, a la vez que serán generados a la salida. Tras proceder el último bit, el registro de desplazamiento contendrá el resto (la FCS) (mostrado en cajas sombreadas). Tan pronto co- mo el último bit de datos entra en el registro de desplazamiento, los dos conmutadores se ponen en la posición B. Esto causa dos efectos:
1. Todas las puertas exclusive-or se convierten en simples elementos de paso, es decir, no cambia ningún bit.
2. Al seguir desplazando el registro, se generarán los 5 bits correspondientes a la CRC.
En el receptor se utiliza la misma lógica. Cada bit de un bloque de M se introducirá en el regis- tro de desplazamiento. Si no ha habido errores, el registro de desplazamiento debería contener el patrón de bits R al final de M. Los bits transmitidos de R empiezan a llegar y el efecto consis- tirá en que, cuando concluya la recepción, el registro debe contener todas las posiciones igual a cero.