www.mikrocontroller.net

Forum: FPGA, VHDL & Co. einbinden und ansprechen eines IP cores für MB


Autor: matzunami (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

kennt jemand ein gutes Tutorial wie man eigene IP Cores in den 
Microblaze einbindet und diese dann anspricht?
Einen eigenen IP Core habe ich mir bereits erstellt (ohne irgendwelche 
besonderheiten wie Register, Interrupts usw. und mit dem PLB Bus 
verbunden). In dem entprechenden VHDL File werden mir ja nun bestimmte 
Signale vorgegeben wie:
  Bus2IP_Clk
  Bus2IP_Reset
  std_logic;Bus2IP_Addr
  Bus2IP_CS
  Bus2IP_RNW
  Bus2IP_Data
  Bus2IP_BE
  IP2Bus_Data
  IP2Bus_RdAck
  IP2Bus_WrAck
  IP2Bus_Error

Ich habe in diversen Beispielprogrammen gesehen, dass diese Signale nun 
mit der VHDL User Logik verbunden wird. Woher weiß ich was wohin muss 
(ich weiß kommt drauf an was ich machen möchte) und wie kann ich dann 
die Signale in meinem c-Programm beeinflusse???

Ich würde gerne über einen eigenen IP Core zB. eine LED ein/aus 
schalten, damit ich die funktionsweise besser verstehe.

wurde mich über Hilfe freuen.

MfG
matzunami

Autor: matzunami (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
also eventuell noch zur Ergänzung:
Mein erstellter IP Core besitzt zwei Ein- und zwei Ausgänge. Diese habe 
ich schon (nach einem Tutorial) in die beiden vhdl Files eingefügt.
Der nächste Schritt wäre diese Sinnvoll (ich nehme an mit den oben 
genannten Signalen) zu verbinden und diese dann in meiner Software 
anzusprechen (wie einlesen der Eingänge und setzen der Ausgänge).

Eine BASE_ADDRESS besitzt mein IP core, mit der ich diesen dann wohl 
anspreche.
*USER_IP_BASE_ADDRESS = ???

Wie gesagt würde mich über Hilfe freuen.

Autor: Läubi .. (laeubi) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde, wenns geht einfach den FSL BUS nutzen der ist sehr viel 
simpler zu verwenden, da gibt es von Xilinx auch nen Tutorial für. 
Angesprochen wird der dann einfach über fsl_put und fsl_get

Autor: matzunami (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke schon mal. Aber da ich später den PLB Bus verwenden muss, würd ich 
gerne mehr darüber wissen. Gibts da auch ein Toturial?

Autor: Läubi .. (laeubi) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja du könntest dir die Beschreibung des PLB Bus runterladen, ob es 
explizit ein Tutorial gibt weiß ich jezt leider nicht.
Der Zugriff geschieht dann einfach über die Baseaddress.

Autor: matzunami (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das BLB Bus Dokument find ich nicht wirklich hilfreich

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
matzunami schrieb:
> das BLB Bus Dokument find ich nicht wirklich hilfreich

Naja, da musst du durch. PLB ist ein recht komplexer Bus, da kann man 
nicht einfach mal aus dem MB heraus an irgendwelchen Pins wackeln. Du 
musst schon einen kompletten PLB Slave implementieren, was meiner 
Meinung nach, gerade für einen Anfänger wie dich, ein ziemlicher Brocken 
ist. Ich habe einige Zeit an einem LocalLink Core gesessen, und der ist 
noch recht einfach.

Autor: matzunami (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hm... gut zu wissen :)

Autor: Seelenbohrer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
PLB-Slave ist sehr simple. Im EDK unter dem Reiter Hardware den Wizard 
aufrufen,...konfigurieren und fertig. Mit den Beispiel im 
user_logic-File geht es jetzt sehr leicht weiter.

Aber bedenke!!!!:
Laut Doku benötigt ein rx/rw Zuriff auf den PLB-Bus 5 Clk Zyklen, Mit 
chipscope gemessen dauert es real aber 12 clk Zyklen!!

Echt langsam :-(

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.