Forum: Mikrocontroller und Digitale Elektronik Empfehlungen für PC Anbindung eines FPGA


von Janis E. (janis_e)


Lesenswert?

Hallo,

ich möchte mich näher mit digitaler Signalverarbeitung beschäftigen, und 
habe dafür mit einem FPGA herumgespielt. Aktuell hakt es bei mir an der 
PC Anbindung, die ich momentan provisorisch mit einem 
USB-Seriell-Wandler realisiert habe.

Grundsätzlich soll die Schnittstelle auf einem Linux PC funktionieren, 
und einfach nur die Ein- und Ausgabedaten weiterleiten.

Rein theoretisch arbeiten die aktuellen Versuche von mir mit einer 
Pipeline mit konstanter Laufzeit (Systemtakt ist so angepasst, dass die 
Schaltzeiten überall passen). In der Pipeline wird jeweils ein Byte pro 
Stufe verarbeitet. Der Takt liegt bei 100MHz, womit ich theoretisch bis 
zu 100 MByte/s als Durchsatz haben könnte.

Nun muss ich das nicht komplett ausreizen, zumal ich auch noch 
Algorithmen ausprobieren möchte, bei denen die Pipeline nicht konstant 
durchläuft, der Durchsatz also nicht konstant ist.

Im Optimalfall hätte ich also eine Lösung, bei der ich jeweils 1 Byte 
Ein- und Ausgabe habe und drei zusätzliche Pins: (1) Flag für "es werden 
Daten gesendet", (2) Es gibt neue Daten im Empfangspuffer und (3) Es 
gibt zu schickende Daten.

Da ich ein begrenztes Budget habe, würde ich ungern Lösungen mit teuren 
IP Cores oder PCIE Eval Boards verwenden, bei denen zusätzlich noch die 
Entwicklungssoftware teuer gekauft werden muss (bspw. Lattice Diamond, 
die nur für die "kleineren" FPGAs kostenlos verfügbar ist).

Die 100MByte müssen nicht wirklich erreicht werden. Auch muss die Lösung 
noch nicht der Weisheit letzter Schluss sein. Ich suche nur etwas, dass 
grundsätzlich mit höheren Geschwindigkeiten arbeitet, um das Verhalten 
mit großen Datenmengen zu testen.

Bisher sind mir Ethernet (bspw. auch eigenes Protokoll mit minimalem 
Header) und USB eingefallen, wobei ich für USB 3.0 keine "fertigen" 
Lösungen in Form von ICs gefunden habe, und die ganze Materie sehr 
kompliziert zu sein scheint. Bei Ethernet habe ich ebenfalls nur 
All-In-One ICs (MAC + PHY) für 10MBit gefunden.

Was könnt ihr mir empfehlen?

Vielen Dank im Voraus!

von Tobias L. (murxwitz)


Lesenswert?

http://www.mouser.de/ProductDetail/Cypress-Semiconductor/CYUSB3KIT-003/?qs=V9In2yoC%2fCdGUJk%252b2J%2faZA%3d%3d&gclid=CKaHg_O6scECFSbmwgodmn8ApA

bei besten bedingungen kommt der über 300MB/s also sollten deine 
gewünschten 100MB/s kein Problem sein.
Und dank "normalen" 2.54mm Pinheadern auch einfach anzuschließen und man 
findet zu denen recht viel im Internet.

von Janis E. (janis_e)


Lesenswert?

Super, vielen Dank!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.