mikrocontroller.net

Forum: FPGA, VHDL & Co. ISE findet Entity nicht


Autor: Lars K. (xunum)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich arbeite gerade in einem Projekt mit ISE und dem XPS. Ich möchte 
gerne eine VHDL komponente als Peripheral einbinden, das Erstellen der 
Vorlagendateien funktioniert auch ganz gut. nun muss man in der 
user-logic.vhd, die durch den Wizard im XPS erstellt wird, die eigene 
Komponente einbinden.
Das mache ich über eine component Deklaration und spätere 
Instanziierung. Im ISE erscheint die komponente und entsprechende vhd 
Datei auch als eingebunden, während der Synthese erhalte ich allerdings 
folgende Warnung:

WARNING:Xst:2211 - ".../user_logic.vhd" line 298: Instantiating black 
box module <meine_komponente>.

Das hier habe ich bereits gefunden: 
Beitrag "Xilinx ISE XST Probleme"

Jedoch hilft mir der Satz "Ist nur ne Warnung, nicht drauf reagieren" 
nicht weiter, genauso wenig habe ich ein Schematic verwendet. Aus irgend 
einem Grund wird augenscheinlich die Entity nicht gefunden. Korrekt 
benannt ist die Entity in der Component deklaration auf jeden Fall.

Ich bin inzwischen mit meinem Latein am Ende.

Grüße

Xunum

Autor: Bernd G. (Firma: LWL flex SSI) (berndg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Versuch doch mal rein spaßeshalber, aus Deiner VHDL-Komponente ein 
Symbol (schematic) erstellen zu lassen, daß Du dann genauso spaßeshalber 
auf ein leeres schematic ablegst. Bei mir hat das schon mal geholfen, 
war allerdings in der Version 7.xy

Ansonsten ist es richtig: die Warnung mit "Black-Box" erscheint auch bei 
zweifelsfrei richtigen Instantiierungen von Komponenten aus dem 
Core-Generator.

Autor: Thomas Reinemann (Firma: abaxor engineering) (abaxor)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

wahrscheinlich stimmen die Ein- und Ausgänge deiner Instanz nicht mit 
denen deiner Entity überein. Darum wäre ein Stück Code im Posting 
hilfreich. Ähnliche Probleme habe ich u.U. bei Instanzierungen der Art

    mcom_identify_device_ec : entity work.com_identify_device_ec
        port map (
            sclk           => sclk,
            ...);

wenn die Komponente nur als Netzliste vorliegt.

Tom

Autor: Lars K. (xunum)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das mit dem Schematic werde ich gleich mal testen.
Wenn ich die Komponente so einbinde führt sie im XPS während der 
Synthese ebenfalls zu Fehlern, die auf die Komponente zurück zu führen 
sind und auf einen Instantiierungsfehler hinweisen.

ich werde gleich mal schauen, ob ich ein Teil Code hier posten kann. Die 
Ports habe ich aber auch schon direkt einfach kopiert, die Portlisten 
sollten also gleich sein, das werde ich aber direkt nochmal nachprüfen.

Das einzige was ich nocht nicht ausgiebig getestet habe, ist das 
konfigurieren der Component, allerdings ist das normalerweise auch nicht 
nötig.

Autor: Christian Knecht (morpheus421)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Lars,

mir ist noch nicht ganz klar, was du vor hast. Du hast ein Projekt im 
xps in die ISE importiert und willst nun eine Component einbauen? Greift 
diese auf interne Signale des XPS-Projects zu? Also hängst sie am 
internen Bus? Oder soll die Component quasi neben dem XPS_Projekt 
einfach nur im selben FPGA untergebracht werden? Denn nach meinem 
Kenntnisstand wären dann zwei unterschiedliche Methoden notwendig, deine 
User-logic einzubinden.

Gruß

Autor: Lars K. (xunum)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin,

wir haben das Problem inzwischen gefunden, uns ist mal aufgefallen, dass 
durch das Tool definiert wird, welche Datei in welcher Library ist und 
man das nicht durch herumschieben auf der Festplatte verändern kann, 
dementsprechend konnte auch keine Entity gefunden werden. Wir haben 
inzwischen in ISE die Library korrekt definiert und nun funktioniert das 
auch.

Also Warnung bei eigenen Designs die nicht als Netlist, sondern als VHDL 
vorliegen nicht ignorieren.

Die Peripheral soll auf den internen OPB Bus zugreifen. Dementsprechend 
haben wir im XPS eine Vorlage für eine solche Peripheral in der 
Schnittstellen usw. definiert werden erstellt. Diese Vorlage enthält 
schon eine "user_logic" in die, am besten als "Component", unser Design 
eingebunden werden sollte.

Autor: Christian Knecht (morpheus421)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wäre dann mein nächster Tip gewesen §;o) aber wenn alles läuft ist es ja 
bestens

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.