Forum: Digitale Signalverarbeitung / DSP / Machine Learning Fixed Point genauigkeit für DFT und Windowing


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Holger F. (Gast)


Lesenswert?

Wie bekomme ich heraus was übliche geforderte Genauigkeiten für die DFT 
im FPGA mittels Fixed point Berechnung ist. Es geht darum Sinussignale 
mit festern Frequenz zu sampeln und davon eine DFT zu berechnen. Davor 
findet noch eine Fensterung statt. Die Fensterung würde bei meinen 18x18 
Multiplizierern schon 36bits zurückgeben. Wenn ich nun damit 
weiterrechne kommt aus meinr DFT 71 bits heraus. Das kommt mir viel vor 
aber wo soll man abschneiden? Die Daten werden übrigens mit 14 bit ADCs 
aufgenommen.

von VHDL-Polizei (Gast)


Lesenswert?


von Jürgen S. (engineer) Benutzerseite


Lesenswert?

Holger F. schrieb:
> Wie bekomme ich heraus was übliche geforderte Genauigkeiten für die DFT
> im FPGA mittels Fixed point Berechnung ist.

Das hat eigentlich mit VHDL wenig zu tun sondern mit der Genauigkeit der 
Daten. Rauschen, das in die FFT eingeht, wird sich entsprechend der 
Auflösung abbilden. Im Extremfall fordert ein schmalbandiges Signal, das 
sich nur in wenigen Stellen abbildet, die Auflösung, die das Signal 
selbst mitbringt, um unverfälscht prozessiert zu werden. Im Normalfaöö 
verteilt sich das Spektrum auf alle Frequenzen.

Um sicher zu sein, braucht die FFT daher theoretisch 1-2 Bit mehr an 
Y-Auflösung, als das Eingangssignal. Die gleiche Rechnung gilt das 
Fenstern.

Theorie: 14 Bit ADC, 28 Bit MUL -> 18 Bit Ergebnis -> 20 Bit DFT.
Real: 12 Bit Signalqualität, 16 Bit Mul-Ergebnis, 16 Bit DFT.

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.