Also inzwischen habe ich den Fehler selbst gefunden...
prinzipiell kann ich sämtliche Koeffizienten durch einen Faktor f teilen, aber entsprechend muss ich auch y mit f multiplizieren, damit das Ergebnis stimmt.
die Zeile
muss also so aussehenCode:y = coef_b[0] * x + buf[0];
Bei meiner Festkomma-Implementierung werde ich für die Skalierung einen Faktor von 2 fest vorgeben. Das sollte für die meisten Filter ausreichen, und bringt noch etwas mehr Performance als eine Implementierung mit einstellbarem Faktor.Code:y = f * (coef_b[0] * x + buf[0]);
Lesezeichen