mikrocontroller.net

Forum: FPGA, VHDL & Co. Mit CoreGen generierte Cores in ModelSim simulieren


Autor: Ratsucher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe ein synthesefähiges Design, das einige CoreGen-Produkte 
benutzt. Ich will nur Teile des Designs in ModelSim durchgehen. Leider 
meckert ModelSim bei bestimmten VHDLs immer wieder über die fehlende 
Xilinx CoreLib. Wo leigt die genau und wie binde ich die ein?  (ModelSim 
SE)

Autor: Klaus Falser (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da hat der Junge ModelSim SE um 10000 € und weiss nicht, wie man damit 
umgeht?

Im Xilinx Installationsverzeichnis gibt es einen Ordner 
vhdl/src/CoreLib, da liegen die Quellen.
Außerdem gibt es das Programm (oder script) compxlib, das die Libraries 
compiliert.

Autor: Lori (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist das beim SE denn anders, als beim XE und warum? Sinn?

Autor: Klaus Falser (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für dem XE gibt es vorcompilierte Libraries die man herunterladen kann.

Das hängt damit zusammen, daß der XE (Starter) eine Bremse eingebaut 
hat.
Ab einer gewissen Anzahl Programmzeilen (ohne Kommentare usw.) wird die 
Geschwindigkeit verringert.
Bei den von Xilinx vorkompilierten Libraries zählt jeder Core nur wie 
eine Zeile, wenn man die Libraries aber selber kompiliert dann zählt 
jeder Core so viele Zeilen wie enthalten.
Die Grenze, ab der die Simulation gebremst wird, wird im letzten Fall 
viel schneller erreicht.

Beim Original SE von Mentor gibt es diese Bremse nicht.

Autor: Klaus Falser (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Sinn dahinter ist der unterschiedliche Preis der Produkte.

Autor: Ratsucher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Klaus Falser

>Im Xilinx Installationsverzeichnis gibt es einen Ordner
>vhdl/src/CoreLib, da liegen die Quellen.

Tja, den Ordner gibt es bei mir offenbar nicht. Ich habe nur 
"C:\Modeltech_6.2f\vhdl_src" gefunden und dort ist weit und breit nichts 
von "Corelib" o.ä. zu erspähen. Wo bekommt man das her?

Muss das extra installiert werden?

Autor: kfalser@durst.it (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nicht im Modeltech Ordner, im Xilinx Ordner.

Autor: Ratsucher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"C:\Xilinx\vhdl\src\XilinxCoreLib" ok, da sind die Quellen. Undm wie 
baue ich die nun ein? Alle pauschal ins work compilieren und die 
benötigte ins Projekt ziehen ?

Autor: na (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Normalerweise sollten diese Quellen automatisch von ModelSim benutzt 
werden.
Eine mögliche Fehlerquelle wäre ein fehlendes Update von ModelSim, 
welches die fehlenden Corelibs enthält. Gibt es auf der Xilinx-Seite, 
simulationlibraries update und corelib update für modelsim.

Autor: na (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Allerdings für ModelSim XE.

Autor: Ratsucher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für XE gibt es die precompiled Libs, die ich auch schon genutzt habe 
(mit XE selbstredend). Die Vorgehensweise ist mir auch klar. XE kann ich 
aber nicht verwenden, da er viel zu langsam wird für die RAM-Simulatonen 
(und den Rest, der immer größer wird).

Mein Problem: Wie mache ich jetzt dem SE klar, wo und wie er die libs 
findet und nutzt? Ich habe das früher schonmal unter Linux gemacht: Man 
muss die Libraries in eine lib compilieren, diese referenzieren (mit 
map) oder so. Das ganze ging damals (vor 3J) von der commandline unter 
Unix per script aus, mit dynamischem start des vsim.

Ich arbeite aber inzwischen mit der Windowsversion über GUI und 
Projekten und da ist nichts zu finden, wie das geht. Die Hilfe-PDf von 
Mentro haben den Namen nicht verdient: unter "compile library" kommen 
Null Einträge.

Was ich gemacht habe: Ein eigene lib angelegt und versucht, dort per 
Hand die Sourcen reinzucompiliere. Das hat für einige geklappt, bei 
anderen jammert er wieder nach der core lib.

>Außerdem gibt es das Programm (oder script) compxlib, das die
>Libraries compiliert.

Ja, das habe ich angeworfen, es verlangt aber Paramter, die ich nicht zu 
setzen weiss. (??????)

Autor: Klaus Falser (kfalser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schon mal bei Xilinx gesucht?
http://www.xilinx.com/xlnx/xil_ans_display.jsp?BV_...

Wenn Du schreibst bei welchen Parametern Du dich nicht auskennst, kann 
hier jemand vielleicht helfen.

Autor: Ratsucher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, die Note kenne ich natürlich, daber dort steht bei der 
Vorgehensweise GUI, man solle das richtige Device unter " Sources in 
Project Window" auswählen. Dort stehen aber VHDLs und keine 
Xilinx-FGPA-Nummern. (???)

Genau genommen, hat man ja zunächst gar kein Projekt offen, daher fehlt 
ja auch das tab "Sources".




Autor: Ratsucher (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Nach langem Wühlen (xlinx verweist auf synthesis.pdf, dieses im Teil der 
angeblichen Behandlung des Themas direkt weiter auf ISE-Help) habe ich 
nun den Punkt gefunden, allerdings ist wieder unklar, was bei den 
settings einzutragen ist!

Egal was ich einstelle, es kommt immer der Hinweis von Xilnix-ISe, daß 
er nicht für den Xilinx-Sim compilieren kann, sondern nur für modelsim.

Was muss man dort einstellen?

Autor: Klaus Falser (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
CompXLib.exe kann man von der Kommandozeile aufrufen.
Öffne ein DOS-Fenster, erzeuge ein Verzeichnis, wo Du die Libraries 
hingeben willst.
Gehe ins Verzeichnis und rufe compxlib auf. Du erhälts eine Help-Seite 
mit Commandos.
compxlib -help list gibt Hilfe zu den Optionen.

Beispiel:
compxlib -l vhdl -s mti_se -arch fpga -lib xilinxcorelib

Du wirst die xilinxcorelib, unisim, simprim Libraries compilieren 
müssen.

Diese Libraries kannst Du dann in ModelSim einbinden (oder über die 
XilinxGUI, das kenne ich nicht so genau).
Bei ModelSim bindet man die Library unter Project setting sein, "Add 
Library" . Dabei gibt man den symbolischen Namen an, und den Pfad auf 
das Verzeichnis, wo die kompilierten units liegen.

Klaus

Autor: alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

aus reiner Neugier, im Xilinx ISE gibt es, wenn ich das richtig sehe, 
einen eigenen Simulator. Warum sollte man auf ModelSim umsteigen? Ist 
das nicht irgendwie zu kompliziert, bei dem einen vorkompilieren, bei 
dem anderen nicht, da Vezeichnispfade einstellen, hier ein Skript 
aufrufen plus zig Parameter nicht vergessen...

Autor: Klaus Falser (kfalser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Alex
Erstens ist der Xilinx-Simulator schlecht und bei der Bedienung über die 
GUI weiss man nie was gerade passiert und was gerade simuliert wird.
Das geht vielleicht bei kleineren Projekten.

Bei richtigen Projekten arbeitet man am Anfang sowieso nicht mit der 
Xilinx-Oberfläche, sondern nur mit Editor und Simulator, und zwar mit 
einem richtigen Simulator.
Dabei braucht es oft auch gar keine graphische Darstelleung der Signale, 
sondern man arbeitet mit (vielen) Testbenches, welche am Ende an der 
Console "Test passed/not  passed" ausgeben.

Wenn man einmal verstanden hat, wie das mit den Libraries funktioniert, 
dann ist das auch gar nicht kompliziert.
Dafür ist man dann auch sicher, daß man das richtige simuliert.

Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du must unter den Projektoptionen einstellen das Du als Simulator 
Modelsim verwenden willst, sonst benutzt Du immer den Xilinx Simulator. 
Deshalb kommt auch diese Fehlermeldung "daß
er nicht für den Xilinx-Sim compilieren kann, sondern nur für modelsim."


Grüsse

Sebastian

Autor: Luzifair (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Bei richtigen Projekten
Was sind denn "richtige" Projekte?

"sowieso nicht mit der Xilinx-Oberfläche"
Ist das verboten?

"sondern nur mit Editor und Simulator"
Ein unbewiesenes Dogma!

"und zwar mit einem richtigen Simulator"
Was sind denn "richtiger" Simulator?

Autor: Jürgen Schuhmacher (engineer) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du musst in der GUI unter den Projekt-Properties (passend zum gewählten 
Baustein, vergl ANleitung) zunächst auf den anderen Simulator (hier PE, 
bei Dir wohl SE) umstellen. Die Settings unter dem eigentlichen 
Compilationsknopf müssen nicht geändert werden. Frag mich aber nicht, 
warum das so angeordnet ist. Dies ist eben die Xilinx-Logik: Man 
verstecke alles hochkompliziert und referenziere, was das Zeug hält. 
Damit der user aber auch so richtig ordentlich verwirrt wird, darf eine 
Einstellung natürlich niemals unter dem Punkt auftauchen, unter der man 
sie vermutet. Das kann kaum ein Produkt besser, als die die Xilinx ISE.

Wenn es geklappt hat, müsste im VHDL-Verzeichnis ein neues Verzeichnis 
mit MT_SE oder so ähnlich auftauchen, das die übersetzten Bibliotheken 
beinhaltet. Wenn Du den Ziel-Pfad nicht verändert hast, findet ModelSim 
die neuen Bibliotheken automatisch, sonst musst Du das Verzeichnis 
angeben, bzw mit wechselnden Bibliotheken arbeiten.

Mentor hat (lib handling) dazu ein online-Learning Tool unter : 
http://www.mentor.com/supportnet/member/tutorials/...





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.