Zwecks einer einfachen und platzsparenden Filterung eines Eingangssignals verwende ich IIR-Filter, die mit der vollen Abtastfrequenz des FPGAs laufen. Bei der Umsetzung auf einen neuen FPGA mit noch mehr Eingängen und einer noch höheren Abtastung stosse ich auf Auflösungprobleme. Daher habe ich die Abtastrate reduziert, um bessere Ergebnisse zu erzielen, was messtechnisch auch belegbar ist. Der Kunde (genau ein Ingenie im Team) ist da skeptisch, dass bei schlechterer Abtastfrequenz das bessere Ergabnis herauskommen soll. Wie lässt sich das mathematisch technisch belegen?
Andi F. schrieb: > vollen Abtastfrequenz des FPGAs Was ist die volle Abtastfrequenz des FPGAs? In Verbindung mit FPGAs fallen mir ein - Taktfrequenz, also die Frequenz mit der die FF getaktet werden, sie ist maßgeblich für das Timing Closure - Abtastfrequenz von Signalen, die im FPGA verarbeitet werden. Ich nehme mal an, du meinst letztere. Wenn du die Abtastfrequenz eines Signals änderst, musst du auch die Filter-Koeffizienten anpassen - die I-Koeffizienten (die im Nenner) werden kleiner (wandern gegen Null) bei steigender Abtastfrequenz, du brauchst mehr Nachkommastellen, die du nicht hast und dadurch an Genauigkeit verlierst. Weiterhin ergeben sich aus den Nenner-Koeffizienten die Nullstellen und die haben die unangenehme Eigenschaft, durch Runden nach außen zu wandern. - die D-Koeffizienten werden größer mit zunehmender Abtastfrequenz (wandern gegen 1), hier brauchst du auch mehr Nachkommastellen D.h. mit jeder Verdopplung der Abtastfrequenz brauchst du ein Bit Auflösung bei den Koeffizienten mehr. Aber mit jeder Vervierfachung der Abtastfrequenz verlierst du ein Bit bei deinem Signal. Ich gehe mal davon aus, dass du die Koeffizienten-Werte angepasst hast, hast du die Koeffizienten länger gemacht? Vergleiche mal Nullstellen, die sich aus den die Festkomma-Werten des alten und neuen Nenners ergeben. Warum hast du die Taktfrequenz des FPGAs erhöht? Never touch a running system! Tom
Er will ja das Gegenteil machen, also die Abtastfrequenz verringern. Ob das am Ende was bringt, hängt ja ganz stark vom Eingangssignal ab. Ist denn die höchste zu erwartende Frequenz dann noch weit genug weg von der Abtastfrequenz?
Hier würde es sich ggf. anbieten die Koeffizienten und die Bitbreiten zu belassen und die höhere Abtastrate zu verwenden um aus dem Eingangssignal mehr effektive Bits rauszuholen. Duke
Christian R. schrieb: > Er will ja das Gegenteil machen, also die Abtastfrequenz verringern. Ist ja richtig. Aber wenn ich es richtig verstanden habe, hat er sie bereits erhöht und stellt nun fest, dass das Verhalten schlechter geworden ist. Und warum habe ich beschrieben. Tom
> Abtastfrequenz das bessere Ergabnis herauskommen soll. Wie lässt sich > das mathematisch technisch belegen? Die Mathematik hat hier eine Randbedingung. Die dasrf nicht vergessen werden. Der Abstand zwischen den Samplepunkten muss gleich sein. Wenn deine neue hohe Frequenz ein Jitter hat, dann könnte so was passieren, weil die Abtastung mit einer Phasenmodulation überlagert wird.
Von was für Frequenzen reden wir denn hier? Im Spartan 6 habe ich Filter gebaut die bis 62.5MHz laufen (250MHz aber 4 Takte pro Multiplizierer) und mit 18 bit / Konstante. Dann erfüllen die auch das Timing. Wenn du mehr Bit brauchst gehen die Anzahl der Takte in die Höhe (entsprechend die Abtastrate herunter)
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.