FIR Filter 16-Bit

1

Estoy intentando implementar un filtro de 32 toques en un FPGA, solo puedo tener 16 bits para los coeficientes y 16 bits para las muestras de entrada, y mi salida también debe ser de 16 bits. Multiplicar un coeficiente de 16 bits con una muestra de entrada de 16 bits produciría un resultado de 32 bits, y la adición de las 32 tomas resultaría en 37 bits en la salida. Entonces, ¿cómo es posible obtener una salida de 16 bits?

    
pregunta zer0c00l

1 respuesta

4

Vuelve a escalarlo. Los coeficientes de filtro deben seleccionarse de modo que todos se sumen al valor máximo de 16 bits. Esto debería hacer que el valor máximo después de que los multiplicadores se ajusten a 32 bits. Luego simplemente truncar los 16 LSBs. En otras palabras, use la salida [31:16] ya que la salida y elija los coeficientes de filtro no se desborda.

    
respondido por el alex.forencich

Lea otras preguntas en las etiquetas