Hallo, ich arbeite an einem ADSP-21469 von Analog Devices und will auf diesem einige FIR filter laufen lassen, die ein Eingangssignal filtern und dann wird das ganze auf 16 Kanälen wieder ausgegeben. Ich habe einen Beispielkode von Analog Devices genommen, benutze ein Audio EZ-extender, der mir die nötigen Kanäle gibt und wenn ich ADC->DAC ohne dazwischen zu filtern einstelle läuft das alles. Jetzt will ich meine Filter berechnen und die Performance vom DSP ist mit 900MMACS angegeben. Ich benötige 8 Filter (4 rechts, vier links) und meine Samplerate ist 48kHz. Das bedeutet, wenn ich alles richtig verstanden habe, dass ich 48000 samples die Sekunde habe, X Filtertaps und 900 millionen Operationen die Sekunde zur verfügung. Die maximale Anzahl Filtertaps wäre demnach: 48000 * X = 900*10^6 <==> X = 18750 Ich kann also maximal 18750 Filterkoeffizienten verwenden. Wenn ich das Ganze jetzt allerdings teste, indem ich das Signal filtere und in variabeln abspeichere, dann verlangsamt das Filtern meinen Prozessor so sehr, dass auch das ungefiltert durchgelassene Signal statt einem schönen Sinus, wie ich ihn in den Audio Codec des Kittes einspeise, mir zwar ein Sinusförmiges Signal auch wieder rausgibt, allerdings sehr verzerrt, scheinbar Quantisierungsrauschen weil der Prozessor es nicht mehr schafft, die Samples rechtzeitig auszuspucken. Ca. bei 5000 Filterkoeffizienten ist schon Schluss, bis dahin sieht das Signal normal aus, danach Rauschen. Hab ich mich verrechnet? Oder läuft was ganz anderes Schief? Vielen Dank schonmal für die Hilfe! Im Anhang ist der aktuelle Code.
Datenblatt-Traumangabe vermutlich. Der DSP muss auch noch was anderes machen als MACs berechnen, den Ringspeicher z.B.
Okay aber sind 5000 koeffizienten für diesen DSP nicht etwas arg wenig? Zumal ich mit dem gleichen code bei 192kHz Samplerate noch 4000 Koeffizienten problemlos verwenden kann, das sind nur 1000 weniger als bei 48kHz, eigentlich müsste da der unterschied doch viel größer sein? 48000 * X = 900*10^6 <==> X = 18750 192000 * X = 900*10^6 <==> X = 4688
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.