Dieses Projekt beschreibt eine Möglichkeit, Daten per USB vom FPGA in den Rechner zu bekommen. http://www.makestuff.eu/wordpress/?page_id=1400 Erzielt werden 25MB/s! - Ethernet kann auf dem GB etwa real 200MB/s. Was ist mit USB 3.0? - Angeblich sind da bis zu 500 MB/s machbar. http://de.wikipedia.org/wiki/USB_3.0#USB_3.0 Ist das realitätsnah? Kann da jemand was zu sagen? Wie schaut es mit der Verkabelung und der Störsicherheit aus? Im USB3.0-Kabel laufen 3 Aderpaare, im Ethernet 4, damit müsste Ethernet doch mehr Potential haben, oder?
> Im USB3.0-Kabel laufen 3 Aderpaare, im Ethernet 4, damit müsste Ethernet > doch mehr Potential haben, oder? es werden nur 2 Paare für USB3.0 genutzt. Das andere Paar ist für USB2.0 kompatibilität > im Ethernet 4, damit müsste Ethernet doch mehr Potential haben bei USB ist nach 3m schluss - Ethernet reicht 100m weit. Hat also mehr Potential.
Hallo > Ethernet kann auf dem GB etwa real 200MB/s Meinst du GigE ? Dann kann ich dir sagen, vergiss es. -> Max. 125MByte/s > Was ist mit USB 3.0? - Angeblich sind da bis zu 500 MB/s machbar. > http://de.wikipedia.org/wiki/USB_3.0#USB_3.0 > Ist das realitätsnah? Kann da jemand was zu sagen? 500 MB/s ist die Theorie. Ziehst du den ganzen Overhead ab, bleiben ca. 400 - 450MB/s übrig. Das aber auch nur mit bestimmten Settings (Bulk, Burst, ...) In der Praxis sind aktuell 300 - 350 MB/s typisch. > Wie schaut es mit der Verkabelung und der Störsicherheit aus? Also USB2.0 war in Industrieumgebungen sehr sehr anfällig. Bei USB3.0 habe ich noch keine Erfahrungen. Aber es wird laut Spec. sehr viel für die Störsicherheit getan.
> bei USB ist nach 3m schluss - Ethernet reicht 100m weit. Hat also mehr
Potential.
Das stimmt so nicht. Es gibt schon Kabel mit denen man schon viel viel
größere Längen erreichen kann
Entwickler12345 schrieb: > Das stimmt so nicht. Es gibt schon Kabel mit denen man schon viel viel > größere Längen erreichen kann nach dem aktuellen Artikel in der CT gibt es aber schon ab 5m Probleme. Offiziell müsste man aller 3 einen HUP einsetzen davon dürfen glaube ich 5 stück in einer reihe sein. Bei USB3.0 reden wir von 5Ghz - da bin ich schon überrascht das 3m gehen.
Entwickler12345 schrieb: > Hallo >> Ethernet kann auf dem GB etwa real 200MB/s > > Meinst du GigE ? Dann kann ich dir sagen, vergiss es. -> Max. 125MByte/s Richtig, ich habe mich verrechnet! Es sind abzüglich overhead 800MBit/8 = 100 MB/s. Peter II schrieb: > Bei USB3.0 reden wir von 5Ghz - da bin ich schon überrascht das 3m > gehen. Sind die Modulations- und Fehlerkorrekturverfahren beim Ethernet besser? Wie weit kann ich denn mit den TBE (10Gbit-Ethernet? Gibt es da ein belegtes Beispiel?
Elektrische 10G SFP+ kabel gibt es bis 7m oder so, aber solche Kabel sind eigentlich nur fuer innerhalb eines Racks gedacht. Mit den richtigen optischen SFP+ modulen sind hunderte Meter kein Problem. Es gibt uebrigens auch optische USB 3.0 Kabel.
Mit USB 2.0 HighSpeed sind im BULK Modus etwas mehr als 41MB/s netto möglich und reell erreichbar. Bei USB 3.0 SuperSpeed hab ich mit dem Cypress FX3 reichlich 320MB/s erreicht im BULK BURST Modus. GBit Ethernet schafft bei UDP reell reichlich 100MB/s pro Richtung. Es gibt auch PCIe Cabling, da kann man durchaus PCIe 2.0 x16 per Kupfer-Kabel über 7m führen. Im Übrigen ist USB 3.0 SuperSpeed nahezu identisch mit PCIe 2.0, die 8B/10B Kodierung schluckt 20% des Brutto-Durchsatzes, dann noch der Protokolloverhead. Wenn man den 3.0 HostController nur an einer PCIe 1.1 Lane angeschlossen hat, sind nur etwa 170MB/s BULK BURST IN möglich. Die Leitungslänge ist hauptsächlich durch die obligatorische 2.0 Abwärtskompatibilität beschränkt. Eine reine 3.0 Verbindung würde auch optisch über 2 Fasern gehen und das dann viel mehr als 7m.
Wenn du noch was richtig schnelles suchst dann schau mal nach CoaXPress oder CameraLink Full/HS
R. K. schrieb: > Erzielt werden 25MB/s! Übrigens kein Wunder wenn die den FX2 nur mit 8 Bit anbinden. R. K. schrieb: > Ethernet kann auf dem GB etwa real 200MB/s. Hmm...Tippfehler? Oder Rechenfehler? Oder RX+TX zusammengerechnet?
Christian R. schrieb: >> Ethernet kann auf dem GB etwa real 200MB/s. > > > > Hmm...Tippfehler? Oder Rechenfehler? Oder RX+TX zusammengerechnet? wie oben schon geschrieben, Rechenfehler im Excel. Ich habe mir das nochmal aufgeschrieben, bin aber nicht sicher, ob ich mich nicht verhauen habe. Ich weiss z.B. nicht, was mit den 500MB/s aus dem Wikitext bei USB 3.0 anzufangen ist. Kommt das limit vom Protokoll? Bei zwei Adern und 5GB/s müssten es doch 1000MB/s sein. Oder sind die 5G die Summe beider Leitungen? Irgendwie geht das nicht mit dem Einkopieren der Tabellen, daher als GIF. Christian R. schrieb: > Mit USB 2.0 HighSpeed sind im BULK Modus etwas mehr als 41MB/s netto kann ich nicht nachvollziehen. Christian R. schrieb: > Bei USB 3.0 SuperSpeed hab ich mit dem > Cypress FX3 reichlich 320MB/s das würde schon eher passen Christian R. schrieb: > GBit > Ethernet schafft bei UDP reell reichlich 100MB/s pro Richtung da muss was mit meiner Tabelle falsch sein. Ich würde die gerne so erweitern, dass die 8/10 Geschichte und der Protokoll-Overhead korrekt auftauchen und sich reale Zahlen ergeben
Also wenn ich den wikipedia-Artikel lese: pohyische übertragungsrate: USB2 480 Mbit/s USB3 4000 Mbit/s jetzt rechne nochmal
Bei gigabit ethernet hast du folgendes vergesssen: Modulationsverfahren PAM-5 (Pulsamplitudenmodulation mit fünf Zuständen) übermittelt zwei Bit pro Schritt und Adernpaar da kommt der faktor 2 her
Hallo, also mit dem FT232H von FTDI hab ich auch schon bis zu 40MByte/s übertragen. Dabei wurde der FT232H über das synchrone FT245 FIFO Interface an einen FPGA angebunden. Gruß, Max
R. K. schrieb: > Ich weiss z.B. nicht, was mit den 500MB/s aus > dem Wikitext bei USB 3.0 anzufangen ist. Steht doch schon in deiner Tabelle, ein Byte == 8 Bit wird in 10 Bit übertragen (10b8b Codierung), d.h. du musst die Bitrate durch 10 teilen, um auf die Bruttodatenrate zu kommen. USB Highspeed ist 480 MBit/s. Das gibt brutto 60 MByte/s, davon bleiben in der Praxis netto ca 40-41 MByte/s in eine Richtung übrig. (USB bis 2.0 verwendet keine 10b8b codierung).
Bei USB 3.0 SuperSpeed sind die beiden Adernpaare halt für Full-Duplex, also ein Paar für TX eins für RX. Durch die 8B/10B kodierung bleiben 4Gbit/s übrig, also die 500MB/s die bei Wiki stehen. Dann müssen wegen des fehlenden Ref-Clock immer mal Sync-Symbole rein, da geht nochmal bissl was weg. Dann noch die ganze Paket-Geschichte und so kommt man auf netto um die 350MB/s. R. K. schrieb: > Christian R. schrieb: >> Mit USB 2.0 HighSpeed sind im BULK Modus etwas mehr als 41MB/s netto > kann ich nicht nachvollziehen. Hm, deine Tabelle ist irgendwie seltsam. USB 2.0 hat keine 8B/10B Kodierung. Bei 2.0 HighSpeed ist es einfach zu rechnen. Ein Microframe ist immer 125µs lang, pro Microframe können aktuelle Host Controller bis zu 11 Pakete a 512 Byte rein packen. Meist pendelt sich es im Mittel bei 10,5 Paketen ein. Das sind dann etwa 41MB/s die praktisch erreicht werden können. Und die erreicht man auch. Der FT2(2)32H und der FX2 sind da Kandidaten, die im BULK Modus reichlich 40MB/s in den PC streamen.
Hans Mayer schrieb: > ei gigabit ethernet hast du folgendes vergesssen: > > Modulationsverfahren PAM-5 (Pulsamplitudenmodulation mit fünf Zuständen) > > übermittelt zwei Bit pro Schritt und Adernpaar > > > > da kommt der faktor 2 her Stimmt, habe ich jetzt eingebaut. Dann komme ich auf die 100MB/s als theoretischen Wert ohne Protokolloverhead.
Ich würde den Begriff physikalische oder elektrische Bandbreite statt theoretische Bandbreite verwenden. Bei USB 3.0 spricht man auf diesem Level auch nicht von Bytes sondern von Symbolen (a 10 bit), die Angaben 650 MByte/s ist irreführend. Theoretische Bandbreite wäre, das was man unter idealen Bedingungen erreichen kann wenn man den Protokoloverhead abzieht. Bei USB 2.0 wäre das die oben von Chris genenannten 11 Datenpakete pro Microframe, mehr geht nicht, auch nicht theoretisch.
ich habe mir mal die Mühe gemacht das USB 3.0 Protokol genauer anzuschauen. Das Protokoll ist überraschend effizient, wenn ich nichts übersehen habe sollte ca 481 MByte/s in eine Richtung bzw 473 MByte/s pro Richtung wenn gleichzeitig rein/raus läuft theoretisch möglich sein. Der bei aktueller HW limitierende Faktor dürfte der über PCIe 2.0 x1 angebundene Hostcontroller sein.
Lattice User schrieb: > Der bei aktueller HW limitierende Faktor dürfte der über PCIe 2.0 x1 > angebundene Hostcontroller sein. Jo, da gehen ja maximal etwa 400MB/s durch, aber ich denke, das Protokoll-Maximum wird man auch mit schnelleren Controllern (gibts die überhaupt) nicht erreichen können. War bei 2.0 auch schon so. Schließlich müssen ja die Daten im Device Controller irgendwie transportiert werden. Beim FX3 hat der DMA Controller dann schon ordentlich zu tun.
R. K. schrieb: > USB 3.0 scheidet wohl wegen der Kabellänge aus. Wir kennen ja deine Anforderungen nicht. Oder hab ich das überlesen?
Christian R. schrieb: > Jo, da gehen ja maximal etwa 400MB/s durch, aber ich denke, das > Protokoll-Maximum wird man auch mit schnelleren Controllern (gibts die > überhaupt) nicht erreichen können. Es gibt inzwischen Chipsets (Intel Series 7) mit integrierten USB 3.0 Controller. Die sind nicht mehr durch PCIe x1 begrenzt.
R. K. schrieb: > USB 3.0 scheidet wohl wegen der Kabellänge aus. Irgendwo hatte ich doch den Link: http://ntcdistributing.com/products/firenex/repeaters-usb3.htm
Zwischenfrage: Die Frequenzen zwischen Ethernet und USB3 gehen ja ziemlich auseinander. gibt es da noch was dazwischen? Wie ist das mit Cameralink? Wie nutzbar ist das im Bezug auf Fehlersicherheit? Kann man ein EthernetProtokoll darauf installieren?
Zwischen GbE und USB 3.0 wäre noch Cabled PCI Express in der 1.1 x1 Variante. Ist aber um Größenordnungen teurer als USB 3.0 und bringt nicht viel Mehrwert. Das Protokoll ist etwas robuster. Wäre mit ExpressCard Host Adapter selbst am Laptop nutzbar. CameraLink ist ja schon recht speziell wieder, hat auch ziemlich teure Hostadapter.
Marius schrieb: > Wie ist das mit Cameralink? Das ist ziemlich propriätär und hat meines Wissens kein Protokoll. Sind nur Bilddaten. Die Busrate von 80MHz wird auch nicht von allen Sensoren genutzt - zudem sind die Kabel teuer.
Hans Mayer schrieb: > Bei gigabit ethernet hast du folgendes vergesssen: > > Modulationsverfahren PAM-5 (Pulsamplitudenmodulation mit fünf Zuständen) > > übermittelt zwei Bit pro Schritt und Adernpaar Eine Frage dazu: Ich habe mir das mal angesehen: Im Prinizp bekommt man durch dieses Analoge Verfahren gerade einen Faktor 2 rein. Wäre es nicht besser, man interpretiert die Signale nach wie vor digital und sendet mit doppelter Rate? Müsste doch mit wesentlich mehr Reserve / Auge gegen Fehler zu machen sein.
Hans schrieb: > Hans Mayer schrieb: >> Bei gigabit ethernet hast du folgendes vergesssen: >> >> Modulationsverfahren PAM-5 (Pulsamplitudenmodulation mit fünf Zuständen) >> >> übermittelt zwei Bit pro Schritt und Adernpaar > > Eine Frage dazu: Ich habe mir das mal angesehen: Im Prinizp bekommt man > durch dieses Analoge Verfahren gerade einen Faktor 2 rein. Wäre es nicht > besser, man interpretiert die Signale nach wie vor digital und sendet > mit doppelter Rate? Müsste doch mit wesentlich mehr Reserve / Auge gegen > Fehler zu machen sein. Du erkaufst dir aber diese Vereinfachung mit geringerer Kabellänge. Ausserdem reicht die 2 fache Rate nicht. Es sind zudem 5 Zustände und nicht nur vier, und die werden auch gebraucht um die Clock einzubetten und das ganze Signal gleichspannungsfrei zu machen. Für 10GBit Ethernet gibt es eine solche Variante, die kann aber maximal nur 15m Kabellänge (und nur halfduplex, da alle 4 Paare gebraucht werden).
Wenn es auf Kabellänge ankommt und dennoch hohe Datenraten erforderlich sind würde ich auf 10GbE Glasfaser setzen. Vorteil ist dass es dort bereits Komponenten zu kaufen gibt. Auf externes PCIe etc. würde ich da nicht gehen, mir ist aktuell kein Gerät bekannt bei dem das eingesetzt wird. Es mag solche gebeb, aber wirklich durchgesetzt hat sich die Schnittstelle nicht. An den FPGA einen Ethernet PHY hängen und von dort auf ein SFP+ Modul das dann die Umwandlung elektrisch <> optitsch übernimmt. Wenn man dann die Daten über UDP sendet sollte man nahe der maximalen Datenrate sein. Bei diesen Datenraten sollte man sich sowieso fragen wie der PC die Daten überhaupt noch verarbeiten kann.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.