Hallo!
Ich bräuchte mal ein paar Denkanstöße zu folgendem Problem:
Bei langsamen ADC (z.B. über SPI angebunden) bekomme ich alle paar Takte
ein Sample. Bei schnellen ADC (parallel angebunden) läuft das FPGA auf
dem Sampletakt und man bekommt pro Takt ein Sample.
In diesen beiden Fällen ist die Realisierung z.B. eines FIR-Filters
überschaubar.
Nun gibt es ja inzwischen superschnelle ADC, die per GigaBit-SERDES
angebunden werden, wo man nach dem Empfänger pro Takt mehrere Samples
auf einmal vorliegen hat.
Mir ist an dieser Stelle nicht klar, wie ich damit einen FIR-Filter
füttern soll, da ja im nächsten Takt schon wieder das nächste Paket mit
mehreren neuen Werten vorliegt.
Hat da jemand eine Idee, wie man das realisiert?
Naja Streaming wird dann schon sportlich. Aber stückweise in einem
Busmatching Fifo sammeln und dann mit der internen Taktfrequenz weiter
verarbeiten geht ja auch wenn die Anwendung das zulässt.
Stefan schrieb:> Hat da jemand eine Idee, wie man das realisiert?
Indem man auch die Filter zeitlich parallelisiert, d.h. zwei Zeitebenen
oder mehr realisiert. Als Beispiel kommen 4 Pixel eines Sensors
gleichzeitig rein, dann musst Du passend buffern und eine Auslese
erzeugen, die gleichzeitig 4 Pixel prozessieren kann und dabei gfs pro
Pixel auf 5x5 Pixel zugreifen kann. Das wäre vollparallel.
Bei einem 1D-Datenstrom, wo eine zeitliche Abfolge inbegriffen ist, wäre
es z.B. so: D1,D2 / D3,D4 / D5,D6
Dann prozessierst Du einmal FIR (D1 ... D5) und FIR (D2 ... D6)
parallel.
Interessant ist die "Zwischenzeitebene" bei IIR:
Ich habe das irgendwo hier schon mal genauer erörtert. Man bekommt dann
das, was man in der umgekehrten Betrachtung bei einer Interpolation
benötigt. Freilich ist es so, dass das einiges an Architektur zur Folge
hat, was ordentliche pipeline-Längen erzeugt.
Wenn Neu = IIR (Alt, In) , dann folgt Neu = IIR ( IIR ( Alt , In1) ,
In2).
Gibt es zu solchen Spezialthemen Literatur? Ich müsste mich auch damit
befassen, bin seit knapp zwei Monaten in dem Umfeld HPC tätig. Unser
Kunde arbeitet mit FPGAs und will Echtzeitsimulation machen.
Meety schrieb:> Gibt es zu solchen Spezialthemen Literatur?
Warum sollte es da keine Literatur geben?
Und hier gibts sogar von denen, die solche Literatur verfassen, dann und
wann Artikel:
https://www.dsprelated.com/
Gruss
WK
Die Jungens dort sind aber eher DPS-lastig und so sehen auch deren
Lösungen oft aus. Wenn es ums FPGA geht, sehen die Lösungen meistens
aus, wie gehabt: FPGA + SOPC + Linux + C-Code aus Matlab. Nun ja ...
Moin,
Weltbester FPGA-Pongo schrieb im Beitrag #4814425:
> Wenn es ums FPGA geht, sehen die Lösungen meistens> aus, wie gehabt: FPGA + SOPC + Linux + C-Code aus Matlab. Nun ja ...
Auch eigenartig:
Wenn ich auf der Suche nach Rezepten zur Zubereitung eines Cheeseburgers
bin, sehen die Loesungen meistens aus, wie gehabt: Broetchen,
Hackbulette, Scheibe Kaese, Saucen, diverses Gruenzeug. Nun ja ...
Gruss
WK
Dergute W. schrieb:> Wenn ich auf der Suche nach Rezepten zur Zubereitung eines Cheeseburgers> bin, sehen die Loesungen meistens aus, wie gehabt: Broetchen,> Hackbulette, Scheibe Kaese, Saucen, diverses Gruenzeug. Nun ja ...
Ich wollte damit nur zum Ausdruck bringen, dass heute überall ohne Not
und Sinn ein C-basiertes System installiert wird, um dann Dinge zu tun,
die in VHDL dreimal einfacher gewesen wären und dazu noch schneller.
Hab da auch gerade wieder einen Spezi: NIOS mit Linux auf FPGA,
Echtzeit-System mit mehreren Datenströmen in Multitaskingbetrieb, um
letzlich doch nur ein paar duselige IOs "gleichzeitig" zu bedienen.
Gleichzeitig heisst hier innerhalb weniger Millisekunden Änderungen von
Eingängen erfassen, reagieren und Ausgänge setzen. Jetzt klemmt es
irgendwo und sie einen erfahrenen Spezialisten, der das zum Laufen
bringt, womit die Anfrage doch wieder bei uns auf dem Tisch liegt.
Geplant und realisiert wurde das System von einer promovierten
Softwareentwicklerin. Das Promotionsthema ist im Internet zu finden und
befasst sich mit der Optimierung von Datenverarbeitung in
Echtzeitsystemen. (Den Titel möchte ich aus Rücksicht nicht wörtlich
posten, weil man die Person sonst auffinden könnte).
Weltbester FPGA-Pongo schrieb im Beitrag #4834188:
> Geplant und realisiert wurde das System von einer promovierten> Softwareentwicklerin.
Wer nicht die richtigen Leute holt, wird nicht die richtigen Ergebnisse
erhalten. Das sollte nun eigentlich niemanden verwundern.
Dass man beim Thema FPGA bzw. Signalverarbeitung ohne Kenntnisse aus der
Elektrotechnik nicht sehr weit kommt, ist doch an und für sich auch
jedem klar... ach halt, den Heinis in der Personalabteilung natürlich
nicht.
Promoviert bedeutet gar nichts. Beaufsichtig werden sie von einem Prof,
der vielleicht mal etwas selbst auf diesem Gebiet machte, was aber schon
einige Jahre her ist. Dann gibt es auch noch Oberassistenten, die waren
noch nie in der Industrie, kamen noch nie mit einem komplexen Projekt in
Beruerung. Also = Greenhorn.