mikrocontroller.net

Forum: FPGA, VHDL & Co. macro vs. primitive


Autor: ehde76 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
bis jetzt einfach nur benutzt, aber nie gedanken darüber gemacht.. worin
besteht bei xilinx der unterschied aus einem macro und einer primtive?
(ein macro besteht aus mehreren primitiven?)

gruß ehde76

Autor: Klaus Falser (kfalser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So viel ich verstanden habe, steht eine primitive für eine Resource, die
im FPGA genau so vorhanden ist.
Bei einem macro wird die Funktion aus mehreren Resourcen
zusammengefügt.
Ein Beispiel wäre z.B. ein D-FF, welches an der abfallende Flanke
schaltet.
Wenn das FPGA über ein solches verfügt, dann wird es als primitive
realisiert.
Wenn das FPGA nur über FFs verfügt, welche an der aufsteigenden Flanke
schalten, dann muß es als Macro, bestehend auf Inverter am Takt und FF
erzeugt werden.
Dies ist aber nur ein Beispiel, normalerweise haben alle FPGAs FFs für
fallender Flanke.

Für den FPGA-Benutzer ist es eigentlich nicht relevant, ob eine
Funktion als macro oder mrimitive vorliegt. Ich würde sogar davon
abraten, die Library Elemente direkt zu verwenden, sondern alles als
VHDL zu beschreiben. Nur wenn man die Elemente nicht als VHDL
beschreiben kann (z.B. DDR-FF in den IOBs), dann muß man sie natürlich
instantiieren.

Grüße
Klaus

Autor: T.M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn man Elemente genau platzieren will, kommt man um Instanziierung von
Macros oft nicht herum. Meinetwegen BRAMs oder Multiplier. Macht das
Design dann zwar nicht unbedingt portabel, lässt sich aber manchmal
nicht vermeiden.

Autor: ehde76 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Klaus,

danke für die ausführliche Antwort, so ungefähr dachte ich mir das
schon. Das die Nutzung solcher Ps und Ms das Design nicht gerade
herstellerunabhängig macht ist mir klar, spielt aber in meinem Fall
überhaupt keine Rolle.

Gruß ehde76

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.