Filter Design HDL Coder

Generación de código HDL para filtros en punto fijo

 

Filter Design HDL Coder™ genera código VHDL® y Verilog® sintetizable y portátil para implementar filtros en punto fijo diseñados con MATLAB® en FPGA o ASIC. También crea de forma automática bancos de pruebas de VHDL y Verilog para simular, probar y verificar el código generado.

Cómo empezar:

Utilización de Filter Design HDL Coder

Filter Design HDL Coder se integra con DSP System Toolbox para proporcionar un entorno unificado de diseño e implementación. Es posible diseñar filtros y generar código VHDL y Verilog desde la línea de comandos de MATLAB® o desde DSP System Toolbox mediante la app Filter Design and Analysis o la app Filter Builder.

Uso de la app Filter Designer para configurar un filtro para la generación de código HDL.

Diseño de filtros en punto fijo

La entrada de diseño de Filter Design HDL Coder es un filtro cuantizado que se crea de una de estas dos formas:

Filter Design HDL Coder soporta varias estructuras de filtros importantes, por ejemplo:

Respuesta finita al impulso (FIR) de tiempo discreto, que incluye estructuras simétricas, antisimétricas y transpuestas.

Respuesta infinita al impulso (IIR) de sección de segundo orden (SOS), que incluye estructuras de forma directa I, II y transpuestas.

Filtros multitasa, que incluyen interpolador y diezmador de filtros comb integradores en cascada (CIC), interpolador y diezmador polifásicos FIR de forma directa y transpuestos, interpolador de retención y lineal FIR, y estructuras de convertidores de tasa de muestreo polifásicos FIR.

Filtros de retardo fraccionario, que incluyen estructuras de Farrow.

Filter Design HDL Coder puede generar código HDL a partir de filtros multitasa en cascada y de tiempo discreto. Cada una de estas estructuras de filtro de tasa única y multitasa soporta realizaciones en punto fijo y en punto flotante (doble precisión). Además, las estructuras FIR también soportan coeficientes en punto fijo sin signo.

Prepare el diseño del filtro para la generación de código mediante la cuantización, el ajuste de los valores de escala y la recuantización.

Optimización de la arquitectura de filtros

Exploración de los factores de reflexión (folding) y el uso del multiplicador para todas las posibles opciones de la propiedad SerialPartition.

Generación de HDL para filtros en punto fijo

Puede generar código VHDL o Verilog para filtros en punto fijo desde la app Filter Design and Analysis o la app Filter Builder. Cuando genere código HDL desde cualquiera de las apps, puede establecer opciones de generación de HDL para especificar la arquitectura de implementación, seleccionar tipos de datos de puerto, insertar registros de canalizaciones y mucho más. Otras opciones permiten generar y configurar un banco de pruebas para su diseño de filtro HDL.

 

Opciones para la generación de HDL.

Personalización de código VHDL y Verilog

Filter Design HDL Coder genera código HDL de filtro y banco de pruebas para un filtro cuantizado según la configuración de una opción o con pares de nombre y valor de propiedad. Estos parámetros permiten:

  • Asignar un nombre a los elementos del lenguaje
  • Especificar los parámetros de puertos
  • Utilizar funcionalidades de codificación de HDL avanzadas

Todas las propiedades tienen valores predeterminados. Puede personalizar la salida HDL si ajusta la configuración con la app Filter Design and Analysis o con la app Filter Builder. Las apps permiten establecer propiedades asociadas con:

  • Especificación del lenguaje HDL
  • Especificaciones de nombre de archivo y ubicación
  • Especificaciones de restablecimiento
  • Optimizaciones del código HDL
  • Personalizaciones del banco de pruebas

Métricas de rendimiento y área para un filtro FIR de 27 derivaciones para aplicaciones de vídeo.

Pruebas y sintetización del código HDL generado

Puede generar un banco de pruebas VHDL o Verilog para simular y probar el código HDL generado. Además, con HDL Verifier, puede generar un bloque de cosimulación de Simulink® para conectar su modelo de filtro de comportamiento y las pruebas que se ejecutan en Simulink con el HDL generado que se ejecuta en los simuladores Cadence® Incisive® y Xcelium o en los simuladores Mentor® ModelSim® y Questa®. La cosimulación simplifica la verificación del diseño del filtro, ya que permite comparar directamente los resultados del código HDL generado y los resultados de un modelo de filtro de comportamiento que se ejecuta en Simulink. Esta integración permite aplicar las capacidades avanzadas de análisis y visualización de MATLAB y Simulink para probar, depurar y verificar la implementación de HDL de sus diseños de filtros.

Resultados de la simulación de Questa de un filtro Butterworth de quinto orden y los resultados de la especificación del filtro original de DSP System Toolbox.