7 votos

¿Qué requisitos debe cumplir un polinomio CRC?

¿Qué requisitos debe satisfacer un polinomio CRC de un determinado grado para hacer la Convención captura un máximo de errores?

editar
Estoy hablando de polinomios GF(2).
Como un ejemplo del tipo de requisitos que busco: que puedas imaginar (pero no sé seguro) que un polinomio de primer coge más errores que un polinomio compuesto.

No soy un matemático, así que por favor tipo poco a poco :-)

4voto

Probablemente el vínculo dado por starblue le da información más que suficiente. Un par de observaciones generales que pueden ayudar a dar un nuevo lector una visión general, así que aquí viene:

1) Una irreductible de verificación polinomio $p(D)\in F_2[D]$ (Edit: de grado $m$) detecta todos los errores de los patrones de peso $\le 2$, siempre que la longitud del bloque de datos+CRC-comprobar es que en la mayoría de la orden de $k$ $D$ modulo el polinomio $p(D)$. IOW $k$ es el menor entero positivo tal que $D^k\equiv 1\pmod{p(D)}$. Aquí el juego es maximizar $k$ (maximizar el rango de facilidad de uso de este CRC). El máximo de $2^m-1$ se alcanza exactamente, cuando $p(D)$ es lo que se llama un polinomio primitivo (o su raíz genera el grupo multiplicativo del campo $GF(2^m)$).

2) Si usted quiere una garantía para la CRC para la captura de más de 3 errores de bits de seguridad, entonces usted tiene que utilizar un producto de polinomios irreducibles. Normalmente (pero no necesariamente) tendrían el mismo grado. Si usted está familiarizado con la teoría de BCH-códigos, luego ves que un código cíclico generado por un producto de un mínimo de polinomios $p_1(D)$ de una primitiva elemen $\alpha$ y el mínimo de polinomio $p_3(D)$$\alpha^3$, da lugar a un CRC-polinomio garantizados para atrapar a todos los patrones de error de pesos $\le4$. PERO el precio que paga por ello es que la longitud útil de la CRC-polinomio $p_1(D)p_3(D)$ solo $2^{\deg p_1(D)}-1$, no $2^{\deg p_1(D)p_3(D)}-1$ como se podría haber esperado. Esto es debido a que el polinomio $D^{2^m-1}+1, m=\deg p_1(D)$ es divisible por tanto $p_1(D)$ $p_3(D)$ y crea "uncatchable" peso 2-patrones, si se hace el bloque de demasiado tiempo.

3) Generador de polinomios de cíclico otro código BCH-los códigos son utilizados con frecuencia. Hay varios pares de polinomios irreducibles que dan lugar a la misma garantizado de detección de errores de la probabilidad como el polinomio generador de una BCH-código. Diseño de secundaria criterios suelen inclinar la balanza a favor de estos, también otras opciones que dan lugar a la verificación de polinomios con un poco diferentes límites de longitud. He visto generador de polinomios de Melas códigos y Zetterberg códigos utilizados como CRC-polinomios.

4) siempre puede asegurarse de que usted CRC coge todo el peso desigual de error patrones de multiplicar el polinomio con $1+D$, si usted puede evitar que la sola comprobación adicional de bits.

1voto

rfunduk Puntos 15267

Por lo general se tiene en cuenta la distancia de Hamming para las longitudes posibles de los mensajes, el más grande mejor.

Ver Koopman y Chakravarty, redundancia cíclica (CRC) del código polinomio selección para redes incorporadas.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X