Programa de filtrado FIR basado en matlab
Sabemos que para diseñar un filtro de abeto, primero debemos conocer su función de impacto, o su coeficiente, cómo saber su número ordinal, luego debemos diseñarlo según los requisitos. Matab nos proporciona muchas funciones de ventana útiles que se pueden llamar directamente, pero desde una perspectiva de optimización, la función remez es la mejor; La ventaja es que cuando los indicadores de diseño son los mismos, el orden del filtro es el más bajo o cuando el orden es el mismo, la banda de paso es la más plana, la banda de paso es la más pequeña y la atenuación es máxima; en forma de ondas iguales. Para un uso específico, consulte el archivo de ayuda en matalb. De manera similar, hay una herramienta de diseño de filtro en la caja de herramientas de Matlab que se puede usar directamente para diseñar filtros. Solo necesita ingresar directamente los requisitos de diseño para obtener el número ordinal.
Después de diseñar el filtro, nuestro siguiente paso es cómo implementarlo usando vhdl. Dado que los coeficientes que obtenemos usando matalb son números de punto flotante, es inconveniente de procesar. Esto requiere que lo conviertamos en un punto fijo. La forma de convertirlo en un punto fijo es convertirlo en un número entero y multiplicarlo por un múltiplo. Pero para facilitar el procesamiento posterior, generalmente se multiplica por 2 elevado a la enésima potencia. Después del apuntamiento fijo, la programación se realiza de acuerdo con la relación entre la entrada y la salida del filtro. De hecho, es una relación de multiplicación y acumulación. El resultado final es que tenemos que volver a reducirlo. Otra pregunta es qué forma de número se debe usar para expresar el resultado. Creo que es mejor usar la representación en complemento a dos, porque muchos AD o DA son complemento a dos, y este también es el caso en las computadoras.