mikrocontroller.net

Forum: FPGA, VHDL & Co. DLL benutzen bei XILINX FPGA


Autor: Christian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

kennt sich von euch jemand aus wie man die DLL in einem FPGA benutzt. 
(Typ: Xilinx Virtex 300, Entwicklungsumgebung: ISE 8.2i). Ich sollte die 
Frequenz verdoppeln, jedoch steht in den Tutorials von Xilinx nur die 
Möglichkeit mit dem IP Core so ein DCM Modul zu erstellen, jedoch ist 
dieses Modul in meiner ISE SW nicht enthalten.

Kann man die Hardwareelemente des FPGA auch mit VHDL Syntax ansprechen?

Für Hilfe wäre ich sehr dankbar.

MFG
Christian


Autor: Schlumpf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich kenn jetzt Speziell Xilinx nicht, aber ich vermute mal, dass es da 
so sein wird, wie bei allen andern auch.
Es gibt in der Entwicklungsumgebung ein Tool mit dem du dir die 
Komponenten zusammenklicken und danach als Schaltplansymbol aufnehmen 
kannst. (So ist es zumindest bei Lattice und Altera)
Natürlich kannst du auch optional das "von Hand" programmieren, aber 
dazu musst du die entsprechende Bibliothek einbinden und das Teil 
instanziieren und dann per Port map anschliessen bzw. konfigurieren.

google doch mal "Xilinx DLL Virtex"

http://www.xilinx.com/bvdocs/appnotes/xapp132.pdf
ftp://ftp.xilinx.com/pub/applications/xapp/xapp132.zip

Autor: Christian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das mit den Graphischen Eingaben hab ich schon versucht. Bin ich nicht 
wirklich begeister, vor allem weil ich schon ein riesiges VHDL Gerüst 
hab und die Implementierung von diesen Schematics in ein "VHDL File" 
mich nicht wirklich begeistert.

Hab bei Xilinx den Link: www.xilinx.com/bvdocs/appnotes/xapp132.zip
gefunden, dort ist ein Beispiel für ne DLL-Funktion in VHDL und Verilog, 
mal sehen ob das synthesefähig ist?!

Gruß Christian

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es geht auch so:
Du musst irgendwo in ISE auf die "Glühbirne" (weißes etwas) klicken. 
Dann kann man über Device Primitive Instatiation und die Auswahl des 
passenden FPGAs den VHDL code ansehen, der für die Instatiierung einer 
DLL benötigt wird.

Autor: Schlumpf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
schau mal was ich dir oben für nen Link geschickt hab ;-)
Ist das gleiche ZIP-File

Ja, probier das mal aus.

Gruß

Autor: Klaus Falser (kfalser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du brauchst sicher keine Schematics-Eingabe.

Es schaut so aus, als ob für den Virtex der Architecture Wizard die DLL 
nicht unterstützt.
Du musst also die DLL wie in der Application Note mit Hand instanzieren, 
das ist nicht so kompliziert.
Zuerst die Komponente deklarieren, und dann eine Instanz erzeugen.

In der Library Guide (Software Manuals) ist die CLKDLL Primitive 
aufgeführt.
Dort steht auch das Beispiel für die Component und für die Instanz.
Rauskopieren und in Dein Programm einfügen.

Den Ausgang der DLL musst Du wieder auf eine Taktleitung legen, dazu 
führst Du die verwendeten Ausgänge auf eine BUFG Primitive und der 
Ausgang der BUFG Primitive ist dann der zu verwendende Takt.

Klaus

Autor: Christian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dank euch allen,

hab das beispiel von der zip file mal synthetisiert und das funktioniert 
einwandfrei.  Ist beim simmulieren bissle "fummelig" weil Modelsim dafür 
ne auflösung von mind. 1 ps benötigt (Hängt irgendwie mit den Librarys 
zusammen.

Autor: Schlumpf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für die Simulation kannst ja dann, wenn es zu stressig für den Simulator 
wird, auch die PLL ausbauen und deinen Takt mit der Hand am Arm 
generieren.

Autor: Christian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann das sein das Microsim beim Map Simulation Model Probleme weil in 
der Lib nur die Hardware "Anschlsse" implementiert sind und die 
HW-Simulation der DLL gar nicht funktioniert?!

Nach dem Synthetisieren funktionierts, jedoch im Map und PAR Mode nicht 
mehr!

Autor: Klaus Falser (kfalser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie bitte?

Autor: Christian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab die DLL synthetisier, in den Baustein übersetzt (Translation) und 
simmuliert, das hat wunderbar funktioniert.

Dann "MAP" und "Place and Route" hatt ISE auch richtig übernommen jedoch 
beim Simulieren in  ModelSim springt die DLL nicht an.
Hab die Library Unisim von Xilinx verwendet, die Buffer funktionieren 
aber DLL nicht.

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Christian (Gast)

>Hab die DLL synthetisier, in den Baustein übersetzt (Translation) und
>simmuliert, das hat wunderbar funktioniert.

>Dann "MAP" und "Place and Route" hatt ISE auch richtig übernommen jedoch
>beim Simulieren in  ModelSim springt die DLL nicht an.

Lass den Quark mit der Simulation der DLL. Die funktioniert wunderbar. 
Ist auch praktisch von äusserst geringem Wert.

MFG
Falk


Autor: Christian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK Danke, den Gedankengang hat ich auch, war mir nur nicht sicher weils 
das erste Projekt mit nem FPGA ist und mich daher ein wenig gewundert 
hab.

Aber nochmal danke an alle für die schnellen Antworten!!!

Gruß Christian

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.