www.mikrocontroller.net

Forum: FPGA, VHDL & Co. Spartan-3 vs Athlon


Autor: Jonathan Swift (psihodelia)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Ich möchte gerne wissen ob Spartan-3 irgenwie vergleichbar mit heutigen 
CPUs/GPUs ist. Vor allem interessiert mich Timing und Routing.

Im Spartan-3 Datasheet sehe ich, dass Spartan-3 Super-Schnell und 
komplex ist.

Z.B. :
Synchronous 18 x 18 Multiplier Timing = 1.02...3.07 ns !!!
Spartan-3 hat bis 100 solche Multipliers.

So kann man eine eigene 3D GraKa implementieren oder ?

Autor: Stefan Hanke (stefanhanke)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Random Thougts:

Jonathan Swift wrote:
> Spartan-3 hat bis 100 solche Multipliers.
Das ist leider nicht wirklich viel. Sobald du Zahlen > 18 Bit hast, und 
die Blockmultiplizierer nutzen möchtest, sind schon 4 pro Multiplikation 
weg. Eine Matrixmultiplikation z.B. kann dann sehr schnell sehr teuer 
werden, bei den üblichen 4x4-Matrizen der CG sinds dann schon 16*4=64 
(korrigiert mich, falls das Stuss ist, ich kann gerade nicht in mein 
Design gucken ;-) ). Die Multiplikation an sich ist dann auch noch rein 
kombinatorisch, automatisches Pipelining funktioniert nur mit 
LUT-basierten Multiplizierern. Das kann u.U. die größte Verzögerung des 
Designs darstellen.

So, und nun invertieren wir mal eine Matrix ;-)
Ich habe noch nichts Ordentliches zum Thema gefunden.

Ich weiss nicht, ob es bei allen FPGAs von Xilinx so ist, aber die 
Blockmultiplizierer teilen sich Leitungen mit den assoziierten BRAMs, so 
dass nur entweder das eine oder das andere benutzt werden kann.

In diesem Zusammenhang würde ich gerne mal mit DSP48-Blöcken rumspielen. 
Die können AFAIK Multiply-Accumulate direkt, was für die 
Matrixmultiplikation günstig sein sollte...

> So kann man eine eigene 3D GraKa implementieren oder ?
Speziell bei dieser Anwendung hast du aber andere Probleme. Das größte 
IMO ist eine ordentliche Speicheranbindung: Framebuffer, Z-Buffer, 
Speicher für Modelldaten, Texturspeicher, etc. pp. Außerdem beschränkt 
sich das leider nicht auf VHDL-Coding: Anbindung an ein Hostsystem, 
Treiber, API, etc. pp.

 -- stefan

Autor: Benedikt K. (benedikt) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jonathan Swift wrote:

> So kann man eine eigene 3D GraKa implementieren oder ?

Ja, kann man:

http://en.wikipedia.org/wiki/Open_Graphics_Project

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.