Forum: FPGA, VHDL & Co. xilinx code benutzen


von Jojo_rise (Gast)


Lesenswert?

hallo!
möchte gern wissen,wie man einen von xilinx software erstellten code in 
quartus projekt benutzen kann.muss man die xilinx vhdl files mit quartus 
neu compilieren?
danke

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Jojo_rise schrieb:
> muss man die xilinx vhdl files mit quartus neu compilieren?
Mindestens.

Wenn darin aber spezielle Komponenten verwendet werden, die nur von 
Xilinx-Bausteinen unterstützt werden, dann wird der Synthesizer 
losmaulen...  :-/

> muss man die xilinx vhdl files mit quartus neu compilieren?
Nur zur Begriffsdefinition: Man spricht hier nicht von "Compilieren", 
sondern von der "Synthese"...

von Jojo_rise (Gast)


Lesenswert?

Lothar Miller schrieb

> Nur zur Begriffsdefinition: Man spricht hier nicht von "Compilieren",
> sondern von der "Synthese"...

Danke für die Antwort und Anmerkung.Bin noch am Anfang mit fpga und 
so...
Sage immer Compilieren anstatt Synthese...und habe manchmal Ärger mit 
dem Prof...

Also einzelne Files Synthetisieren -->Ok

und wenn Componenten für Xilinx baustein bestimmt sind, wie kann man 
vorgehen mit diesen files?
Danke

von Fritz J. (fritzjaeger)


Lesenswert?

Jojo_rise schrieb:
> hallo!
> möchte gern wissen,wie man einen von xilinx software erstellten code in
> quartus projekt benutzen kann.muss man die xilinx vhdl files mit quartus
> neu compilieren?


Hinweis, Xilinx schliesst in den Lizenzvereinbarungen für ihre Cores oft 
(z.B. Picoblaze)  aus, das der Code für andere als Xilinx-Bausteine 
benutzt wird.

von Frank B. (foobar)


Lesenswert?

Jojo_rise schrieb:
> und wenn Componenten für Xilinx baustein bestimmt sind, wie kann man
> vorgehen mit diesen files?

Dann kannst du nur hoffen, daß Altera die auch hat, sonst geht es u.U. 
gar nicht (z.B. spezielle DCM-Eigenschaften) oder nur mit aufwändigem 
Redesign oder Emulation. Daher ist es auch sinnvoll, nicht die 
speziellen Komponenten zu verwenden, wie Block-RAM, sondern möglichst 
per Inference vom Tool automatisch aus portablen VHDL-Code schließen zu 
lassen (bei Xilinx ist das der Standard, bei Quartus mit dem MegaWizard 
nicht). Eine andere Möglichkeit ist es, Wrapper-Komponenten mit 
Standardinterface zu implementieren, innerhalb dessen dann die 
herstellerspezifischen Aspekte implementiert sind und dann für Altera 
und Xilinx jeweils andere Implementierungen zu schreiben.

von Duke Scarring (Gast)


Lesenswert?

> Eine andere Möglichkeit ist es, Wrapper-Komponenten mit
> Standardinterface zu implementieren, innerhalb dessen dann die
> herstellerspezifischen Aspekte implementiert sind und dann für Altera
> und Xilinx jeweils andere Implementierungen zu schreiben.

Genau das macht z.B. Gaisler in seiner grlib (bzw. techlib).

Duke

von Jojo_rise (Gast)


Lesenswert?

Danke an alle für die viele Antworten.
Ich möchte gern mehr über diese Wrapper Sachen wissen.Was ist das(ich 
weiss es ist eine Art Schnittstellen für Programme; mehr auch nicht)?Und 
wie wird es implementiert?könnte mir eventuell jemand anhang eines 
beispiel erklären bzw. zeigen?
Danke.

von Frank B. (foobar)


Lesenswert?

grlib kannte ich noch nicht, sieht aber gut aus und gibt es auch unter 
GPL:

http://www.gaisler.com/cms/index.php?option=com_content&task=section&id=13&Itemid=125

In der Dokumentation auf der Seite ist alles erklärt, im 800 Seiten IP 
Core Users Manual die Details.

Zum Wrapper gibt es eigentlich nicht viel zu sagen. Als Beispiel 
Speicher: Du definierst eine VHDL-Komponente mit read, address, data-in 
und data-out, und implementierst die Komponente dann zweimal: Einmal für 
Xilinx Block-RAMs und einmal mit dem Quartus MegaWizard.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Jojo_rise schrieb:
> ich weiss es ist eine Art Schnittstellen für Programme;
Nein, es ist eine Definition für Ports von Hardwarebeschreibungen. Ein 
Wrapper ist das, was ein Core-Generator ausspuckt. Mit diesem Wrapper 
kannst du dann den Core, der selbst nur als Netzliste und Timing-Modell 
vorliegt, in deinem Design verwenden und als Komponente einbinden.

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.