Estoy trabajando en un circuito que ingresa una cadena binaria pseudoaleatoria de 31 bits en un bloque CRC-16 del CCITT que genera una salida CRC de 16 bits.
Sé que M (x) / G (x) = Q (x) + R (x) y el código transmitido será R (x) anexado a M (x). [Q (x) se descarta].
Cuando simulé el circuito, obtuve un CRC de 1 0 1 0 1 0 0 1 0 0 0 0 0 0 0 0. Desde el archivo de ayuda del software (VisSim / Comm), sé que el polinomio generador es G (x) = 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1.
¿Cómo puedo determinar la secuencia de entrada de 31 bits que generó el resultado CRC?
Dado que M (x) / G (x) = Q (x) + R (x), podemos decir que M (x) = [Q (x) + R (x)] G (x). Pero no sabemos Q (x). Suponiendo que el CRC de 16 bits es igual a R (x) y que se da G (x), ¿cómo hago para encontrar M (x) sin saber Q (x)?