Hat jemand der geneigten Experten hier Kenntnis über die Existenz von Chips / Asix, die in der Lage sind, FFTs zu berechnen? Ich habe da eine etwas grössere Applikation im design und will nicht massenhat FPGAs verschwenden. Für die DDSen z.B. habe ich schon chips gefunden. Dies ist eine so oft benötigte Funktion, die zudem auch meistens noch direkt nach den Wandlern / den Eingangssignalen eines Moduls benötitg wird, dass man sie noch sehr gut handlen könnte, auch wenn sie in einem externe Chip sässe - bzw wäre das für bestimmte Anwendungen sogar besser. Weiss da jemand etwas? Wie machen das z.B. Firmen wie Rohde & Scharz in ihren Analyzern? Sind das alles FPGAs?
:
Verschoben durch Admin
Luis Costa schrieb: > Wie machen das z.B. Firmen wie Rohde & Scharz in ihren Analyzern? Sind > das alles FPGAs? Und wenns keine sind, haben R&S sicherlich genug Knete, um eigene ASIC anfertigen zu lassen... Was spricht denn gegen ein FPGA, sofern es schnell genug ist?
Man kann auch einfach einen Mikrocontroller, DSP oder sogar einen PC nehmen - je nach Anforderung.
Luis Costa schrieb: > Wie machen das z.B. Firmen wie Rohde & Scharz in ihren Analyzern? Sind > > das alles FPGAs? Sind alles kundenspezifische Bausteine entweder aus eigener Entwicklung und Fertigung, oder eines Bausteinherstellers. Nur bei den Lowcost Modellen könnte es sein, das ein Microcontroller die Aufgabe mit übernimmt. Ralph Berres
http://category.alldatasheet.com/index.jsp?sSearchword=FFT einzige Fundstelle ein Chip von Plessey/Zarlink/Mitel PDSP16510A / PDSP16515A Stand Alone FFT Processor Datenblatt von 1996/1993
Wird es nicht geben; es ist nun mal zu einfach, um die ALUs, den Speicher und die Bit-Reverse-Adressierung noch eine Programmlogik herumzubasteln und das ganze dann DSP zu nennen. "Dumme" Koprozessoren die nur eine einzige Sache beherrschen sind ja nicht ohne Grund praktisch ausgestorben.
Intersil hatte auch sowas "diskret", ist aber wegen der Leistungsfähigkeit von FPGAs und DSPs schon lange obsolet.
In DSOs befinden sich dafür in aller Regel DSPs von der Stange. Mikrocontroller sind mir hier bisher noch nicht begegnet. Es wäre aber durchaus denkbar, dass sich das mit Bausteinen auf Basis des Cortex M4 zukünftig ändern könnte (bspw. STM32F3 oder STM32F4). Wenn du deine FFT also auslagern möchtest, dann wären diese sicherlich eine gute Wahl.
Auslagern möchte ich es nur dann, wenn es billig(er als FPGA) ist. Für eine 8 Kanal FFT mit jeweils 8192 Punkten bei 8 fach Überlappung, setze ich mir (m)einen Virtex schon zu 60% zu! Ich finde die anteiligen Kosten von fast 300 Euro einfach zuviel. Mit einer ASIC Massenwaren müsste das doch locker zu unterbieten sein. Für eine FFT-pipeline braucht man ja nur einen Eingangsport und einen Pufferegister. In meinem Fall einfach 8192x8. Die 16k sollten nicht viel kosten. Ansonsten ist FFt ja nur ADD/MUL und Akkumulation. >DSPs scheiden natürlich aus, weil ich es schnell brauche. Praktisch kommen wenigstens 200MHz samples. Ein DSP könnte maximal 1 Kanal mit einer Überlappung rechnen.
Da wir alle Krösus heißen und uns die Sonne aus dem A*** scheint können wir selbstverständlich auch hellsehen. Daher war auch jedem hier deine Anforderung klar: > 8 Kanal FFT mit jeweils 8192 Punkten bei 8 fach Überlappung > 200MHz samples Bevor das blinde raten weiter geht solltest du vielleicht deine Anforderungen klar definieren, ansonsten kommen im Verlauf solcher Diskussionen immer neue Überraschungen und gewissen Lösungen würden wegen deines Anforderungsprofils gar nicht erst genannt werden.
Luis Costa schrieb: > 8 Kanal FFT mit jeweils 8192 Punkten bei 8 fach Überlappung Luis Costa schrieb: > wenigstens 200MHz samples Frage mal bei Rohde&Schwarz an, ob die dir das Asic aus dem neuen RTO anbieten. Der könnte sowas eventuell packen ( oder doch nicht?? ). Ralph Berres
Die verkaufen nichts , im Gegenteil, die kaufen ein: Ich hatte letztes Jahr mit einer Firma zu tun, die Time to Digital Converter baut. Die haben einen Spezial-ASCI mit AD-Wandler mit 10 Gsps. Für den hat sich dann mal ein Herr von der R&S interessiert. Den könnten sie angeblich gut gebrauchen.
> setze ich mir (m)einen Virtex schon zu 60% zu!
Soll auch Spartans geben...
Andreas Schwarz schrieb: > Fixed oder Floating Point? Welche Genauigkeit? Ist mir egal, fixed point ist ok, mache ich im FPGA auch nicht anders. Georg A. schrieb: >> setze ich mir (m)einen Virtex schon zu 60% zu! > Soll auch Spartans geben... Du meinst, die Spartane sind leistungsfähiger und grösser, ja ;-) branadic schrieb: > Da wir alle Krösus heißen und uns die Sonne aus dem A*** scheint können > wir selbstverständlich auch hellsehen. ja, ok, hier sind die Anforderungen. Es ging ja auch nur darum, zu schauen, was es überhaupt gibt und nicht euch drauf anzusetzen, es anhand einer SPEC zu suchen. Ich bin flexibel, wenn der Chip was taugt. Von mir aus darf der ruhig etwas Latenz haben, und langsamer getaktet werden, dann nehme ich halt mehrere parallel. Auch eine floating point ASIC wäre ok, könnte ich ansteuern.
Weils mich mal interessiert hat, hab ich grad mal kurz gesucht: http://www.eonic.com/index.asp?item=32 Aber sieht nicht gerade billig aus da Militär/Aerospace.
> Du meinst, die Spartane sind leistungsfähiger und grösser, ja ;-) Nein, aber deutlich billiger. Und wenn du schon > Von mir aus darf der ruhig etwas Latenz haben, und langsamer getaktet > werden, dann nehme ich halt mehrere parallel. schreibst, wäre das eine Alternative.
Georg A. schrieb: > Nein, aber deutlich billiger Wenn er mit seiner APP schon einen mittleren Virtex verbrät, braucht er im Spartan noch mal mehr Silizim. Das dürfte kaum billiger werden. Und selbst die billigen Spartan gehen noch mit einigen 100,-. So einen FFT-ASIC könnte ich auch gebrauchen! Mit aktuellen Technologien sind bis an die 5GHz machbar. Für Multipliziereinheiten, wie man sie in FPGAs kennt, werden Raten um die 1.2GHz angegeben. Das reicht schon für eine Teilsequenzialisierung, wenn der Chip nur 200MHz können muss. Allerdings kann man es sich ja beim ASIC nicht aussuchen sondern muss kaufen, was es gibt und der oben gelinkte Chip ist nicht so dolle, zumal man nicht weiss, was er kostet!
8192x8 200Megasamples Wenn du das lückenlos machen willst, dann hast du 40us um 8 FFTs mit jeweis 8192 Punkten zu machen. Also ohne Unmengen paralleler Multiplizierer und Accus geht das nicht. Da wird wohl dein Virtex FPGA glühen.
Der TO will '8 fach Überlappung', dh er hat für die 8 FFTs 5us Zeit, also 8*8192*13*2 MACs in der Zeit, macht schlappe 340 GigaMACs. Der fetteste Spartan 6 hat 180 Mutiplizierer die mit 390MHz laufen, soweit ich das verstehe, imer noch Faktor 5 zu langsam. So einfach kann man mit den 4 Grundrechenarten Phantasien an der Realität zerschellen lassen. Cheers Detlef
Wie kommst du auf diese Zahl? 8*200e6/8192=195e3 FFT/s -> um die 40 GMAC/s. Das sollte auch einer der High End C6000 noch schaffen. Und bei so stark überlappenden FFTs kann man auch noch optimieren weil man sowieso vieles mehrfach berechnet. Aber solange die Anforderungen so vage sind (nicht mal die Genauigkeit ist bekannt) macht es keinen Sinn über Alternativen zu diskutieren.
Zu Deiner Rechnung ist nochmal Faktor 8 drin: Er will 8 Kanäle und 8fach überlappend. eine FFT: 8192*13*2~213k acht Stück: 1M7 das 24414Mal die Sekunde: 42Gig achtfach überlappend: 332Gig Cheers Detlef
Schau mal bei iC-Logic nach, die haben FFT IP-cores und sind ein ASIC-Designhaus ( http://www.ic-logic.de/ip-cores.php).
Ich glaube kaum, dass es sich für eine irgendwie geartete durchschnittliche Anwendung lohnt, eine FFT extra in einen ASIC zu giessen. Wenn es sowas gäbe, könnte man sich dranhängen. Der genannte Chip ist schon ziemlich mächtig, besonders, da er schon seit 2002 im Markt zu sein scheint. Dass ist ja halbleitertechnisch gesprochen ein Lichtjahr! Ich denke aber nicht, dass der einem FFT Core vergleichbar ist. Im FPGA bekomme ich die Daten aus einer pipeline raus und kann mich direkt mit weiteren Operationen latenzarm dranhängen. Bei dem Chip ist das nicht notwendigerweise so, dass die Daten mit derselben geringen Latenz rauskommen. Will man das direkt darstellen oder im Frequenzbereich fenstern, braucht man native Reihenfolge - in vielen anderen Fällen nicht. Beim FPGA kann ich mir das aussuchen und bekomme auch bei natural order einen akzeptable Latzenz weil der Core daraufhin anders gebaut wird. Beim ASIC bekomme ich das, was ich habe - warscheinlich eine Reihenfolge, die für das platzsparende Verarbeiten gut ist. Damit muss ich manuell umsortieren und das kann bei langen FFTs dauern!
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.