Ejemplo de diseño de aceleración Nios® II CRC

author-image

Por

Visión general

El algoritmo de verificación de redundancia arbitraria (CRC) detecta la corrupción de los datos durante la transmisión y detecta un mayor porcentaje de errores que una suma de comprobación simple. El cálculo CRC consiste en un algoritmo iterativo que involucra XORs y desplazamientos que se ejecutan mucho más rápido en hardware que en software. Este diseño utiliza el estándar CRC-32. Se implementa como un componente personalizado junto con un procesador Nios II integrado. El diseño logra una capacidad de procesamiento de más de 5 Gbps, lo que demuestra los niveles de mejora de desempeño que se pueden lograr mediante la realización de la función en el hardware.

Funciones

  • Admite cualquier algoritmo CRC entre 1 y 128 bits
  • Rendimiento de los componentes CRC de 32 bits por MHz
  • Rutas de datos de 8, 16, 24 y 32 bits
  • Mejora de velocidad de hasta 2000 veces en comparación con una implementación solo de software
  • Desempeño de baja latencia de ciclo 0 y latencia de lectura de 1 ciclo
  • Dos diseños de ejemplo dirigidos a las FPGAs Stratix® II y Cyclone® II

Diagrama de bloques

La Figura 1 muestra el diagrama de bloques de componentes Avalon® CRC.

Figura 1. Avalon diagrama de bloques de componentes CRC.

Nota:

  1. Ruta de datos = crc_width.

Utilizando este ejemplo de diseño

Descargue el diseño de ejemplo CRC (archivo.zip)

El uso de este diseño se rige por los términos y condiciones del Contrato de licencia de ejemplo de diseño de Intel®y están sujetos a ellos .

El archivo .zip contiene todos los archivos de hardware y software necesarios para reproducir el ejemplo, así como un archivo readme.txt. El archivo readme.txt contiene instrucciones para volver a construir el diseño.

El contenido de esta página es una combinación de la traducción humana y automática del contenido original en inglés. Este contenido se ofrece únicamente para su comodidad como información general y no debe considerarse completa o precisa. Si hay alguna contradicción entre la versión en inglés de esta página y la traducción, prevalecerá la versión en inglés. Consulte la versión en inglés de esta página.