www.mikrocontroller.net

Forum: FPGA, VHDL & Co. richtige generics in vhdl


Autor: daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Heute hatte ich das Buch von Asheden in den Händen und habe
es hier und da gelesen. Mir ist aufgefallen, dass VHDL auch
echte generics hat und nicht nur Konstantenersätzung.
Sowas sollte also möglich sein:

[/vhdl]
entity vec is
    generic(type item);
    port(signal s : item);
end;

architecture vec of vec is
    type itemvec is array(integer range <>) of item;
begin
    -- mach was sinnvolles damit
end;
[vhdl]

ModelSim XE III was ich zusammen mit ISE geladen habe, weigert
sich den Code anzunehmen. Ich würde denken, dass Tools von 
MentorGraphics
State-Of-The-Art sind. Oder liegt es daran, dass die "kostenlosen"
Versionen abgespeckt sind und es nicht unterstützen? Oder liegt es
daran dass kein Kunde nach dem Feature verlangt?
Natürlich ist es von 0 Bedeutung für die Synthese und damit für die
Elektroleute, die erst glücklich sind, wenn ihr Werk auf dem FPGA
läuft. Aber an sich ist es für den Aufbau grösserer Modelle für 
Simulation
durchaus nützlich.
Das angepriesene generics, wo nur Konstanten ersetzt werden ist
ja nur ein Präprozessorlauf ala #define ... so nützlich es ist,
wird es wohl niemand sehr beeindrücken.

Grüsse, Daniel

Autor: daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
.. und jetzt habe ich noch die tags vertauscht .. Asche auf mein Haupt 
:)

Autor: Bernhard R. (barnyhh)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Daniel,
VHDL entwickelt sich von einem Standard zum nächsten weiter - das kennt 
man auch von der Programmiersprache "C", wo ggf. ähnliche Probleme 
auftauchen.

Die Implementierung "neuerer" Features in den einzelnen Tools (C: 
Compiler) dauert erheblich; siehe z.B. die GCC History. Das führt dazu, 
daß vielfach die neuen Features erst dann implementiert werden, wenn 
bereits die nächste Überarbeitung des Standards vor der Tür steht".

Bei VHDL kommt noch eins hinzu: Der volle Sprachumfang dient zur 
Beschreibung des Hardware-Verhaltens, nicht zur Generierung in einem 
(z.B.) FPGA. Nimm hier als Beispiel das signal assignment mit der 
Spezifizierung after x ns.

Grüßle
Bernhard

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.