www.mikrocontroller.net

Forum: FPGA, VHDL & Co. PCI express Core und Implementation


Autor: Acubens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich hab als Aufgabe die Realisierung der Kommunikation zwischen PC und 
FPGA. Genauer heißt dies, ich soll per Programm einen entsprechend 
beliebigen Bitstrom an den FPGA per PCI express senden und diesen durch 
eine Testschaltung schicken. Danach soll die Antwort zurück an das 
Programm gesendet werden.

Jetzt habe ich folgende Probleme, woher bekomme ich einen kostenlosen 
PCI express Core, wie bindet man ihn richtig ein und wie spricht man ihn 
an?

Oder kann man mit einfachen Mitteln und angemessenem Aufwand den PCI 
express Controller selbst bauen?

Wer kann mir da helfen bzw. hilfreich zur Seite stehen/Tipps geben?

Ich danke für die (hoffentlich) zahlreichen Antworten.

Acubens

Autor: Acubens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lt. meinem Betreuer ist noch kein Core gekauft verfügbar und auch nicht 
in Planung. Weiterhin ist das Versuchssystem ein Virtex-4FX100-12ff1152. 
Software ist von Xilinx ISE8.2i

Autor: Matthias F. (flint)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und das ist eine Aufgabe aus einer Ausbildung? Wir hatten einen 
Zulieferer, der saß ein Jahr am PCIe Interface auf einem Virtex 4. Zum 
Debuggen braucht man dann natürlich auch ein System, das 2,5 GHz 
problemlos abgreifen kann, sowas ist nicht allzu billig.

Nebenbei gibts für Virtex 5 schon einen Core. Frag mal deinen Betreuer, 
ob das wirklich die Aufgabe ist.

Autor: Acubens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nicht Aufgabe aus Ausbildung. Uni. Abschlussarbeit.

Autor: Frank (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ändert am Grundproblem wenig - nämlich, dass ein PCI-Express-Core 
implementiert werden müsste. Evlt. hat der Virtex4 den schon an Board 
bzw. kann der PCI-Express-Core über den Coregen erzeugt werden? Dann 
könnt es evtl. klappen. Selbst ein PCI-Core ist nicht trivial, wenn man 
das vernünftig machen will - und dieser enthält keien analogen 
Komponenten.
Unterschätze die Softwareseite nicht (treiberschreiben).

Frank

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hm, am Virtex 4 brauchst du dafür einen Soft-IP-Core. Der kostet Geld. 
Selber schreiben incl. Testumgebung usw. ist sicherlich im Rahmen einer 
Diplomarbeit nicht machbar. Mit dem Virtex 5 wärst du gut raus, den 
gibts mit integriertem Hard-Core. Da sind auch dann alle Modelsim 
Testumgebungen und Treiber dabei.

Autor: Matthias F. (flint)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt den Endpoint Block für PCIe für Virtex 4, der kostet nichts aber 
es ist dafür noch einiges zu implementieren. Damit ist es wohl 
prinzipiell machbar, aber man sollte sich von Anfang an überlegen, wie 
man das Debugging betreibt, was für Lösungen man braucht und was die 
kosten. Wenn man dann vor dem nicht funktionierenden System steht und 
draufkommt, dass man mal einige zehntausend Euro für einen geeigneten 
Logikanalysator investieren müsste, um das Problem zu lösen, hat man 
zwar etwas fürs Leben gelernt (Design for Testing) aber die Arbeit ist 
trotzdem beim Hugo.

Autor: Acubens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Evlt. hat der Virtex4 den schon an Board
bzw. kann der PCI-Express-Core über den Coregen erzeugt werden?

Also es ist so, dass man mir sagte, es wäre nichts weiter dabei oder 
zusätzlich gekauft. Beim Xilinx ISE gibts meines erachtens keine Option 
beim Coregen für einen PCIe-Core. Aber die Software von Northwest Logic 
(PCI Express GUI) kann auf der Karte Daten auslesen und ggf. auch 
schreiben (Speicher). Daher wundert es mich, ob nicht doch schon etwas 
drauf ist. Aber keiner kann mir dazu was sagen.

Ich danke allen für die Unterstützung.

Autor: Matthias F. (flint)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Erachte mal im Coregenerator den Endpoint Block, den müsste es 
eigentlich geben.

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.