Forum: Digitale Signalverarbeitung / DSP / Machine Learning Biquad-Filter Hochpass


von Thomas T. (runout)


Lesenswert?

Hallo Zusammen,

ich habe eine Verständnisfrage zur digitalen Filterung.

Ich bekomme einen Audiostream über DMA-Interrupt.
(24/32bit, 16k)
Die Werte haben einen DC-Offset und sollen mit einem
Biquadfilter (DF2) Hochpass gefilter werden.

Frage:
Macht es einen Unterschied, ob ich den "ganzen" Empfangspuffer
durch den Hochpass jage oder immer die 3 Samples welche vom DMA-
Interrupt kommen und am jeweils aktuellen Schreibzeiger
in den Empfangspuffer geschrieben werden.
Die drei Zwischenregister beim Biquad-HP werden bei jedem
Aufruf ja "geleert".

Oder sollte es eine Init()-Funktion geben
und dann nur die Berechnung der jeweils neu eintreffenden Samples?

Plattform ist ein STM32L4, Audioschnittstelle SAI.

Viele Grüße
Runout

: Verschoben durch Moderator
von Dergute W. (derguteweka)


Lesenswert?

Moin,

Thomas T. schrieb:
> Die drei Zwischenregister beim Biquad-HP werden bei jedem
> Aufruf ja "geleert".

Das glaube ich nicht, Tim.

Jedes Sample, was irgendwie von Aussen reinkommt, muss genau einmal 
durch das Filter durch. Und damit auch die entsprechenden 
Zwischenergebnisse durch alle Zwischenregister. Da wird nix geleert.
Und initialisiert muss da eigentlich auch nix werden, hoechstens 
vielleicht die Register auf 0, aber wenn die auf irgendwas stehen, 
macht's beim Einschalten halt mal einen "plopp" oder sowas. Oft stoert 
der niemanden.

Gruss
WK

von Oli (Gast)


Lesenswert?

Dergute W. schrieb:
> Oft stoert der niemanden
Nun ja, wenn der als Steuerung auf eine digitale Stufe geht und die 
reaktionsfreudig aufmacht, dann braucht man schon mal neue Lautsprecher.

von Thomas T. (runout)


Lesenswert?

Hallo,

danke für die Antworten.
Hatte eine Implementierung,
die alle Samples "en bloc" verarbeitet hat.
Läuft jetzt...

Grüße
Runout

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.