Hallo alle miteinander, kennt jemand von euch Vergleichstudien a la 'FPGA vs. DSP' ? Gruss, der Marko
Sowas suche ich auch schon seit einer Zeit. Wie schneiden aktuelle High-End DSPs gegen die Flagschiffe von Altera oder Xilinx ab, wenn es um die Implementierung von DSP-Algos geht wie FFT ...
Ein DSP hat leider keine Chance gegen ein FPGA. Dies da sich in einem FPGA nahezu beliebig viele DSP Funktionsbloecke parallel schalten lassen.
Äpfel mit Birnen verglichen. Wer besser abschneidet, hängt von den Randbedingungen ab. Wesentlich Kosten und IO-Leistung. Generell gilt nur eines: DSPs haben, sofern sie bei der gegeben Applikation alles schaffen, was zeitkritisch ist, den besseren Kostenfaktor als FPGAs, diese gilt besonders, was die Entwicklung aufwändiger Abläufe angeht und die Zeiten für die Entwicklung drum herum. In Systemen (also Rechner + Platine) können die FPGAs aber auch eine BIOS-Funktion, watch dogs-Funktionen und das ganze digitale lolevel-Zeugs übernehmen. Da schneiden viele Systeme mit FPGA schon billiger ab - es bleibenn nur die höheren Entwicklungskosten. Wenn dies ich entsrpechen runterteilen, da viel Hardware und wenig Software, dann passt das meist schon. Spätestens aber, wenn man das maintainance betrachtet. also die Pflege des Produktes: In einen FPGA kriegt man im nächsten Produkt irgendwelche Filter oder Kanäle noch rein, kann einen RAM-Baustein austauschen, oder vorher unbekannte Adapterplatinen mit integrieren. Das geht mit einem DSP nicht. Nur in extrem rechenintensiven Applikationen, wo die Entwicklungszeit stark zu Buche schlägt, aber auch die Ausführungszeit für Algos in höherer Mathematik greifen - nur dort sind DSPs generell billiger. Aber wie gesagt: Der oder die DPSs müssen ihre OP-Leistung im System schaffen und da ein DSP oder auch ein MCU letzliche immer sequenziell arbeitet, ist da ein Limit, das einfach nicht zu unterschreiten ist. Unterhalb gewisser Zeitgrenzen geht nur in mehrfach paralleler Hardware. Und das meist, egal ob es teurer ist, weil in solchen Systemen meis die Restelektronik das Teuere ist. Ich bin an einem System dran, in dem 16 FPGAs stecken (je board!). Die ganze Platrine kostet €1420,- ohne FPGA mit allem Sonstigen, es werden insgesamt nur 100 x 16 x 4 davon verkauft. Die Entwicklung der FPGA Software kostet 175.000 x 4 Mann, die Entwicklung der boards das Dreifache. Die Entwicklung des Restsystems kostet 1,52 Mio und die Mechanik je Gerät rund 13500,-. Da ist es ziemlich scheiss egal, ob ein FPGA einen oder 2 Hunnies kostet :-)
Moin, es gibt da einen Bericht vom BDTI die sich mit dem Benchmarking von FPGA und DSP beschäftigen! Der ist zwar ziemlich teuer, aber wenn man den Jungs ne nette Mail schreibt, bekommt man ein paar Auszüge!
Das ist wohl wahrlich mal ein stolzer Preis und so aktuell scheint es nun auch nicht zu sein. Neben der oben gestellten Frage würde es mich mal interessieren, ob bei euch firmenintern schon DSPs durch FPGAs ersetzt wurden (nur natürlich wenn es unter den gegebenen Gesichtspunkten wie Kostem etc. Sinn machte), oder wird diese Implementierungsplatform doch noch sehr gemieden ? Hoffe auf interessante Erfahrungsberichte! Der dieter
Wir haben uns oft bewusst gegen DSP für FPGA entschieden. Sowohl für "einfache" Aufgaben als auch für komplexe. Meist war es entscheidend, dass für DSP sehr viel "Drumherum" gemacht werden musste (Flash, Speicher, OS, Peripherie, Interrupts, komplexe Entwicklungsumgebungen, undefinierte zeitliches Verhalten, ...). Da kann ich mich dem Berater nur anschließen, im FPGA kann man immer noch irgendwas unterbringen, auch wenn wenig Platz ist. Persönlich bin ich der Meinung, dass egal, was DSP kann, kann FPGA besser. Ich programmiere viele Algos in Java, MatLAB oder C++. Und wenn es da funktioniert, dann wird das einfach auf FPGA übertragen. Natürlich programmiere ich entsprechend, also keine OOP oder sonstiges Zeug. Eigentlich geht es darum, das FLOW zu kapieren und zu sehen, wo gespart werden kann und was wichtig ist. Bis jetzt bin ich sehr gut damit gefahren und viele komplexe Projekte abgewickelt. Ich würde nie auf die Idee kommen, DSP zu nehmen :-o Zur Zeit bin ich an der Entwicklung eines DSP-Cores :-o Dieser soll dann universel und parametrisierbar sein (Anzahl der MACs, Bitbreite ...) Grüße, Kest
Ja, Softcore DSP. Aber der Weg bis dahin ist sehr steinig :-( Ich meine nicht Softcore DSP selber, sondern eher die Toolchain, die dafür notwendig ist (Compiler,...) Ich möchte, dass alles so einfach wie nur möglich ist und dass alles erweiterbar ist (leicht gesagt als getan). Eigentlich soll es ein Framework sein, um DSP Funktionen mit FPGA zu verbinden, bzw. mit VHDL-Entitys (so wie SOPC von Altera). Das ganze soll dann in einem Gerät enden, was das soll... das führt zu weit :-) Grüße, Kest
Ich habe mehr Erfolg damit gehabt, nicht einen DSP zu bauen sondern mehrere DSP fuznktioen und diese dann verteilt zu plazieren. Ist effektiver und besser steuerbar.
So habe ich es auch immer gemacht, nur, wenn man es programmierbar haben möchte (nicht synthetisierbar), dann geht es leider nicht anders :-/ Grüße, Kest
Kest wrote: > Und wenn es da funktioniert, dann wird das einfach auf FPGA übertragen. > Natürlich programmiere ich entsprechend, also keine OOP oder sonstiges > Zeug. Eigentlich geht es darum, das FLOW zu kapieren und zu sehen, wo > gespart werden kann und was wichtig ist. ... > Ja, Softcore DSP. Aber der Weg bis dahin ist sehr steinig :-( Ich meine > nicht Softcore DSP selber, sondern eher die Toolchain, die dafür > notwendig ist (Compiler,...) Ich möchte, dass alles so einfach wie nur > möglich ist und dass alles erweiterbar ist (leicht gesagt als getan). Soviel zum Thema "FPGA ist billiger und kann alles besser".
@T.H. > Ja, Softcore DSP. Aber der Weg bis dahin ist sehr steinig :-( Ich meine > nicht Softcore DSP selber, sondern eher die Toolchain, die dafür > notwendig ist (Compiler,...) Ich möchte, dass alles so einfach wie nur > möglich ist und dass alles erweiterbar ist (leicht gesagt als getan). > Soviel zum Thema "FPGA ist billiger und kann alles besser". Irgendwie hast du es wohl nicht ganz verstanden !?!
Autor: T. H. (pumpkin) wrote: > Soviel zum Thema "FPGA ist billiger und kann alles besser". Darum geht es mir mit dem Softcore DSP gar nicht. Außerdem ist die Entwicklung eines Softcores eben ganz was anderes und hat mit dem Thema nichts zu tun. FPGA ist für einfache Algos einfach die bessere Lösung. Wenn ich einfach mal Vergleiche, wieviele Freiheitsgrade ich beim FPGA habe und wieviele beim DSP, entscheide ich mich klar für ein FPGA. Dank den Tools (MatLAB und Co), lässt sich schnell alles in ein FPGA gießen. Die Erweiterung ist dann auch kein Problem ("ich bräuchte jetzt noch 20 SPI Master, dazu doch DMX und außerdem Camera Link...") Beim DSP ist man dann aufgeschmissen. Grüße, Kest
@kest: Die Geschichte mit dem universellen und parametrisierbaren Softcore klingt ziemlich spannend. In welchem Bereich soll denn sowas zum Einsatz kommen? Bei euch herrscht nicht zufällig Ingenieursmangel?! ;-) panzer
Pausenbrot wrote: > @T.H. > >> Ja, Softcore DSP. Aber der Weg bis dahin ist sehr steinig :-( Ich meine >> nicht Softcore DSP selber, sondern eher die Toolchain, die dafür >> notwendig ist (Compiler,...) Ich möchte, dass alles so einfach wie nur >> möglich ist und dass alles erweiterbar ist (leicht gesagt als getan). > > >> Soviel zum Thema "FPGA ist billiger und kann alles besser". > > Irgendwie hast du es wohl nicht ganz verstanden !?! Doch doch, mach dir keine Sorgen. Kest wrote: > Dank den Tools (MatLAB und Co), lässt sich schnell alles in ein FPGA > gießen. Die Erweiterung ist dann auch kein Problem ("ich bräuchte jetzt > noch 20 SPI Master, dazu doch DMX und außerdem Camera Link...") Beim DSP > ist man dann aufgeschmissen. Die Anwendung von solchen Tools geht für DSP's auch. Ich will ja garnichts schmälern oder schlechtreden, aber der Hype der vielerorts um programmierbare Logiken gemacht wird geht mir einfach zu weit. Ich stimme durchaus darin überein, dass z.B. FPGA's in der Tat kraftvoller sein können als DSP's. Was mir persönlich an FPGA's nicht gefällt ist der workflow: Stundenlange Synthese, ewige Simulation, u.U. ein starres Design. Ich habe keine Probleme damit wenn's unbedingt sein muss, aber ich bleib bei meinen DSP's... :^)
@Panzer: das ganze soll vorerst für Audio eingesetzt werden, später aber auch für Video. Und ja tatsächlich, bei uns gab es sehr viel zu tun, viele Aufträge mussten wir ablehnen. Lustigerweise war ein sehr großer Auftrag, wo DSPs durch FPGAs ersetzt werden sollte. Haben aber abgelehnt, weil zu komplex gewesen. @ T. H. (pumpkin): Im Thread geht es um FPGA vs. DSP Performance. Was "besser" oder "schlechter" ist, war nicht dir Frage. Während DSPs in deren Leistung durch dir Taktrate nach oben beschränkt sind, sind FPGAs durch I/O Bandbreite beschränkt. Was Workflow betrifft, hast Du Recht, aber auch dies war nicht das Thema der Diskussion. Grüße, Kest
Kest wrote: > Im Thread geht es um FPGA vs. DSP Performance. Was "besser" oder > "schlechter" ist, war nicht dir Frage. Während DSPs in deren Leistung > durch dir Taktrate nach oben beschränkt sind, sind FPGAs durch I/O > Bandbreite beschränkt. > Was Workflow betrifft, hast Du Recht, aber auch dies war nicht das Thema > der Diskussion. Mmmh, ich sehe unter Performance nicht nur was man alles erschlagen kann sondern auch wie. Aber lassen wir das.
@Rick Dangerus: So, jetzt bin ich angemeldet. Über das Profil kannst mir Nachrichten senden, wenn Du Dich angemeldet hast. panzer
Hallo, es gibt bestimmte Probleme die mehr zu FPGAs bzw. Prozessoren tendieren. Bei hohen Performance-Anforderungen kommen fast nur FPGAs in Frage, jedoch macht es keinen Spaß dort komplexe FSMs zu vergraben. Wie immer hängt das vom können des jeweiligen Ingenieurs ab. Für ein bestimmtes Problem kommt man nicht umhin, bei verschiedenen Anbietern nachzufragen, um eine aussagekräfige Analyse machen zu können, die sowohl Entwicklungs- als auch Hardwarekosten berücksichtigt. Manchmal artet das in Konzepte aus, die man bezahlen muss. Dies ist allerdings billiger, als nach Monaten Entwicklungsarbeit festzustellen, dass der eingeschlagene Weg eine Sackgasse ist, die vor dem Ziel endet. Bye Tom
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.