Forum: FPGA, VHDL & Co. Transfer Altera zu Xilinx


von P. K. (pek)


Lesenswert?

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

von Dr. Schnaggels (Gast)


Lesenswert?

Häääh?

von P. K. (pek)


Lesenswert?

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...

von Grendel (Gast)


Lesenswert?


von Thomas R. (tinman) Benutzerseite


Lesenswert?


von P. K. (pek)


Angehängte Dateien:

Lesenswert?

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. :-(

von Dude (Gast)


Lesenswert?

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

von P. K. (pek)


Lesenswert?

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.

von Dude (Gast)


Lesenswert?

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

von Dude (Gast)


Lesenswert?

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

von Xilinx? (Gast)


Lesenswert?

Bei Xilinx sind das die DSP-Slices bzw DSP48A1. Es gibt da diverse Dokus 
etc..

von P. K. (pek)


Angehängte Dateien:

Lesenswert?

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).

von Grendel (Gast)


Lesenswert?

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.

von Grendel (Gast)


Lesenswert?

> kann zusammenfassen.

+ man

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
Noch kein Account? Hier anmelden.