Bin daran eine Xilinx-Testsynthese für einen potentiellen FPGA-Wechsel zu realisieren. Meine Frage zur IP-Library: Ich finde für folgende Blocks keine (schlauen) Xilinx-IP im IP-Katalog. Weiss jemand die Stickworte, für die entsprechenden Building-Blocks? ALTMULT_ADD : (signed) c <= a0 * a1 + b0 * b1, sel. #Pipel. ALTMULT_ADD : (signed) c <= a0 * a1 + acc, sel. #Pipel., acc. Reset
Dr. Schnaggels schrieb: > Häääh? Also: Gesucht ist das Xilinx-Pendant zu Alteras ALTMULT_ADD (alles in einem). Natürlich könnte man das Ganze aus einzelnen Addern, Multipliern und Registern zusammenbauen. Müsste sich dann aber auch ums Timing zwischen den Blöcken kümmern. Altera hat das mit ALTMULT_ADD ziemlich schön als Gesamt-IP gelöst, jetzt ist meine Frage, obs das bei Xilinx auch gibt (und ich es einfach nicht finde), oder ob ich das grosse Lego mit den kleinen Legos zusammenbauen muss...
Peter K. schrieb: > oder ob ich das grosse Lego Also VHDL Duplo? ;-) Vielleicht: http://www.xilinx.com/support/documentation/ip_documentation/xbip_multaccum_ds716.pdf ?
Das würde schon mal den zweiten Fall abdecken, ist aber offensichtlich aus einem älteren Tool-Komplex (ISE?), im Vivado IP-Katalog finde ich nichts dazu. Kommt noch folgendes dazu: "Drop-in module for Virtex®-7, Virtex-6, Kintex™-7, Virtex-5, Virtex-4, Spartan®-6, Spartan-3A DSP" (leider kein Artix-7 erwähnt...) Was ich generell suchen würde ist das Pendant zum Altera (Half)-DSP-Block (altmult_add_doc.png) und die ensprechende IP-Instanz (altmult_add_inst.png). Sieht so aus, als wäre da Altera (bis hinunter zum "Leagcy"-Produkt Cyclone V) besser eingerichtet, und ich bei Xilinx auf die "Duplos" verzichten muss. :-(
Na da war Altera ja wieder mit dem typischen "anfixen" erfolgreich, einen Kunden davon abzuhalten, sich der Konkurrenz zuzuwenden: mach so viel wie möglich hersteller-spezifisch, dann kann der Kunde nicht wechseln! besser: - Schreib einfach alle in VHDL und Du kannst schneller von A nach X nach L und wieder zurück wechseln. - verwende so wenige spezifische Komponenten wie möglich (PLLs, ets) sondern versuche Arithmetik (-> Multiplizierer) und Memory 'behavioral' zu beschreiben Viel Erfolg
Dude schrieb: > ...einen Kunden davon abzuhalten... Naja, so tragisch ist's an und für sich nicht. Mein Problem ist nicht das wechseln selbst (die RAM's und FIFO's hatte ich in 2 Stunden am laufen und es waren viele). Meiner Ansicht nach hat aber die Tatsache, dass bei Altera die Funktion "c <= a0 * a1 + b0 * b1" in ein einziges DSP-Element reingeht klar Vorteile wenn's dann darum geht, dass Timing zuzubringen. Erst mal geht's mir aber darum zu zeigen, dass es von beiden Herstellern FPGA's gibt, die für mein zukünftiges Design in Frage kommen. Konkurrenz belebt ja schliesslich den Markt.
aus Xilinx' UG193ab Seite 78: - MACC and MACC Extension - 25 x 18 Complex Multiply - 35 x 25 Complex Multiply - 25 x 18 Complex MACC und noch einiges mehr hier beschrieben für Virtex5 - gilt aber auch für Virtex-6 und 7er Serie (kleinere ?) Einschränkungen für Spartan6
Nachtrag Spartan-6: ug389 ab Seite 29: - Fully Pipelined, 35 x 35 Multiplier Use Model (Large Multiplier) - Fully Pipelined, Complex, 18 x 18 Multiplier Use Model - Fully Pipelined, Complex, 18 x 18 MACC Use Model - Miscellaneous Functional Use Models - Using the DSP48A1 Pre-Adder
Bei Xilinx sind das die DSP-Slices bzw DSP48A1. Es gibt da diverse Dokus etc..
Xilinx? schrieb: > Bei Xilinx sind das die DSP-Slices bzw DSP48A1. Beantwortet jetzt definitiv alle Fragen. Ich muss meine Devices also aus mehreren DSP-Slices zusammenbauen (MULTADD), resp. mich um das Feedback (MAC) selbst kümmern (eine Lanze für den Altera-DSP-Block).
Ja die Altera DSP Blöcke sind hübsch. Die Xilinx FPGAs haben dafür aber meist ein paar mehr DSP Blöcke soweit ich das gesehen habe. Und etwas schneller takten lassen sie sich (hab aber noch nie ausprobiert ob die sich tatsächlich so schnell takten lassen). Welche die nebeneinander liegen kann zusammenfassen. Übrigens gibts die DSP48A1 bei den Spartan6, bei den anderen sinds DSP48E1 mit ein paar kleinen Unterschieden.
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.