Cálculo de CRC no GPS

Por favor, alguém saberia me dizer como funciona o cálculo de CRC no protocolo NMEA-0183 dos receptores GPS e como eu poderia implementar uma rotina para checar a integridade desses dados utilizando um PIC16F628A? Grato.
Fórum sobre desenvolvimento de sistemas embarcados: Hardware e Software, Tecnologias: Eletrônica digital e analógica, Microcontroladoras, Microprocessadores, Sistemas *NIX (Linux, BSD), Software embarcado Baremetal. Sem fins lucrativos.
http://asm51.com.br/phpbb/