Forum: FPGA, VHDL & Co. USB 2.0 und 3.1


von Michael (Gast)


Lesenswert?

Hallo Leute,

ich möchte Daten über USB 3 zum PC übertragen. Dazu verwende ich einen 
Virtex 5 und einen FT601 von FTDI (USB 3 to parallel).

Die USB 3 Buchse enthält neben den USB 3 Signalen parallel auch die USB 
2 Signale. Das ist sehr praktisch, da ich auch einige UARTS benötige. 
Daher wollte ich einen FT4232H von FTDI verwenden. Der Baustein erzeugt 
3 UARTs und 1 JTAG Interface aus den USB 2 Bus. Über das JTAG Interaface 
möchte ich die Firmware auf den FPGA hochladen.

Und nun zu meinem Problem:

Ich benötige eine galanische Trennung. Und genau hier fängt das Problem 
an. USB 2.0 ist leider nur Halbdublex fähig und besitzt keine 8b/10b 
Codierung. Ich habe von Samtec das FireFly Kabel ausgewählt. Dies 
funktioniert jedoch nur mit Signalen die eine Frequenz von mehr als 1GHz 
haben. Dies ist bei USB 2.0 leider nicht so. Zudem muss das Signal eine 
8b/10B Codierung besitzen, ansonsten funktionieren die optischen 
Umsetzer auch nicht zuverlässig. Des weiteren sollen die optischen 
Umsetzer Probleme mit HotPlug and Play haben.

Daher habe ich das optische Kabel von Corning ausprobiert. Die 
Datenübertragung funktioniert sehr gut. Nur leider ist es so wenn ich 
den USB Stecker aus der PC Buchse herrausziehe und wieder reinstecke, 
dann wird die USB Verbindung leider nicht mehr erkannt. Es muss immer 
der PC neu gestartet werden. Dies ist für ein Produkt nicht wirklich die 
optimale Wahl, daher wollte ich die optische Umsetzung auch selber 
machen.

Jetzt stehe ich vor einem großem Scherbenhaufen. Es  gibt mehere 
Möglichkeiten. Ich lasse die USB 2.0 Schnittstelle weg. Dies hätte zur 
Folge, das ich keine UART-Converter von FTDI benutzen kann und zudem 
auch kein JTAG-Interface zur Verfügung habe. Zudem benutze ich einen 
gekauften Touchcontroller der ein USB 2.0 Interface besitzt. Diesen kann 
ich dann auch leider nicht mehr verwenden.

Die UARTs könnte der FPGA bereitstellen. Für die Umsetzung müste ich 
einen weiteren FT601 Chip verwenden. Das JTAG-Interface kann man über 
eine XMEGA32 Mikrocontroller realisieren. Die FPGA Firmware wird dann 
über das USB 3 Interface in den FPGA übertragen dort in UART konvertiert 
und dann an den XMEGA übertragen und der wandelt es in JTAG um. Ich 
würde dann einen externen SPI FLASH für den FPGA verwenden. Wenn der 
Upload jedoch schief geht, dann ist der Inhalt im Flash defekt, der FPGA 
stellt dann kein UART- Interaface mehr zur Verfügung und demnach kann 
ich dann auch keine FPGA Firmware mehr flashen.

Einfacher würde es gehen wenn es einen USB3 zu UART Konverter gibt. Der 
auch gleichzeitig ein JTAG Interface zur Verfügung stellt.

1. Kennt einer von Euch einen USB 3.0 zu UART Konverter?
2. Hat einer von Euch vielleicht einen Rat wie ich die galvanische 
Trennung über Glasfaser hinbekomme? Gibt es vielleicht einen Baustein 
der das USB 2 Signal in einen 8b10B Datenstrom umwandelt?

von Arc N. (arc)


Lesenswert?

Michael schrieb:
> Daher habe ich das optische Kabel von Corning ausprobiert. Die
> Datenübertragung funktioniert sehr gut. Nur leider ist es so wenn ich
> den USB Stecker aus der PC Buchse herrausziehe und wieder reinstecke,
> dann wird die USB Verbindung leider nicht mehr erkannt. Es muss immer
> der PC neu gestartet werden. Dies ist für ein Produkt nicht wirklich die
> optimale Wahl, daher wollte ich die optische Umsetzung auch selber
> machen.

Und der Fehler liegt am PC oder dessen USB-Stack oder dem Kabel oder auf 
der anderen Seite beim FTDI, dessen USB-Stack etc.?
Workaround von der Corning-Seite ausprobiert? "USB3.Optical cables by 
Corning are optimized to work in hi-speed (480Mb/s) and superspeed 
(5.0Mb/s) systems. The cable can support lower speed USB 1.1 & 1.0 
peripherals (<12Mb/s) with use of a wall-powered intermediate hub 
(either USB2 or USB3). Alternatively, an unsupported work around, if 
wall power is not available, is to use a bus-powered USB 2 hub that 
reports itself to the computer as a self-powered hub and is directly 
powered from our cable. Dedicated USB 2 hubs typically consume very 
little power themselves and will allow direct connection of one or two 
at the most very low power consuming (<50mA) USB 1.1/1.0 peripherals. 
Some examples of 1.1 peripherals are keyboards, mice and serial 
converters."
http://www.corning.com/optical-cables-by-corning/worldwide/en/help.html#faqs


> Jetzt stehe ich vor einem großem Scherbenhaufen. Es  gibt mehere
> Möglichkeiten. Ich lasse die USB 2.0 Schnittstelle weg. Dies hätte zur
> Folge, das ich keine UART-Converter von FTDI benutzen kann und zudem
> auch kein JTAG-Interface zur Verfügung habe. Zudem benutze ich einen
> gekauften Touchcontroller der ein USB 2.0 Interface besitzt. Diesen kann
> ich dann auch leider nicht mehr verwenden.

Muss es da High Speed USB sein (klingt bei UARTs und Touch nicht so)? 
Dann u.U. auf der "Ausgangsseite" (Richtung FPGA) der FTDIs isolieren, 
was man auch beim FT6xx versuchen könnte, Full Speed USB auf der 
Kabelseite bspw. ADuM3160.
Ansonsten könnte man auch einen kleinen Controller mit USB-Host, der die 
Touch-Daten annimmt und UARTs bereitstellt, einsetzen, der die Daten 
passend für das FPGA aufbereitet, das sie dann über den FT6xx raus 
gehen.

von Christian R. (supachris)


Lesenswert?

Wie machst du das überhaupt dass du die 2.0 Signale aus der USB Buchse 
heraus für andere Devices als den FT601 nimmst? Das gehört doch zusammen 
zu einem Port, auch ein 3.0 Device braucht für die Enumeration 
eigentlich die 2.0 Signale. Geht das denn?

Wir haben hier auch die Corning Kabel, die gehen sehr gut, schnell und 
für 3.0 und 2.0 Geräte. ABER: Die sind nicht galvanisch getrennt. Die 
Stromversorgung für den optischen Receiver wird per Kupferkabel 
übertragen. Nur die Datenleitungen sind optisch.
Richtig galvanisch getrennt geht nur mit Icron, dann aber ohne 2.0! 
http://www.icron.com/products/icron-brand/usb-extenders/fiber/usb-3-0-spectra-3022/

von Michael (Gast)


Lesenswert?

Das Workaround von Corning habe ich nicht ganz verstanden. Kannst Du 
dazu vielleicht noch ein paar Worte schreiben.

Es muss leider USB2.0 High Speed sein (480MBit) Und zwar aus folgendem 
Grund. Ich verwende schnelle ADCs. Der FPGA bereitet den ADC Datenstrom 
auf und übergibt den Datenstrom dan an den FT601 (32Bit to USB 3 
Konverter). Ein aufgenommenes Bild wird dann an den PC übertragen. 
Anschließend wird per UART ein neues Bild angefragt. Würde ich eine 
12MBit USB 2.0 Interface verwenden, dann würde die Übertragung vom PC 
zum Gerät deutlich länger dauern und die Framerate würde sehr viel 
geringer seind. Das ist leider keine Option.

Ich verwende die 5V von den optischen USB 3 Kabel selber nicht auf 
meinen Baords. Somit hängt auch keine zu große Last an den 5V.

Bei den optischen Kabel lag ein kleines Handbuch bei. In dem Handbuch 
selber steht, das das Laufwerk vorher ausgeworden soll, bevor ich den 
USB Stecker aus dem PC ziehe. Also genau wie bei einem USB Stick. Jedoch 
kann ich es nicht auswerfen, da es nicht in der Taksleiste angezeigt 
wird.

von Christian R. (supachris)


Angehängte Dateien:

Lesenswert?

Die Notwendigkeit von 3.0 ist mir schon klar. Was nicht so recht klar 
ist, wie du ein 3.0 Device (FT601) und ein 2.0 Device (USB UART) an 
einen Host-Anschluss angeschlossen hast. Da muss ja normalerweise ein 
Hub rein.
Wenn du jetzt solltest die 3.0 Leitungen des Downstream ports an den 
FT601 angeschlossen haben und die 2.0 Leitungen des gleichen Ports an 
das 2.0 USB UART, dann wundert mich ehrlich gesagt gar nix, denn das ist 
komplett außerhalb der Spec und vom Stand des Mondes und anderen 
zufällen abhängig, die Host und Devices darauf reagieren.

Zeichne doch mal ein Bild!

Zu dem Corning Kabel wollte ich dir nur den Hinweis geben, dass das halt 
NICHT galvanisch getrennt ist. Lediglich die Datenleitungen sind 
optisch, weil die 5GBit/s über Kupfer halt wesentlich schwieriger zu 
realisieren sind. Die Masse und +5V sind per Kupferkabel verbunden. 
Deine galvanische Trennung ist also im Falle von Corning keine. Steht 
übrigens auch so (allerdings etwas versteckt) im Anschlussbild, siehe 
Anhang.

von Michael (Gast)


Lesenswert?

Hallo Christian,

das hört sich doch sehr interessant an. Endlich jemand der auch die 
Kabel von Corning verwendet und mit dem man sich mal austauschen kann. 
:-)

Wenn ich die 5V nicht auf meinem Board anschließe dann ist es doch 
galvanisch getrennt. Ich könnte auf meinen Board auch einen Optokoppler 
hinzufügen, dann sind die 5V auch galvanisch getrennt.

Verdammt ich habe die USB 2.0 Leitungen nicht an dem FT601 Chip 
angeschlossen. Und das Board ist schon in der Fertigung :-(. Ich dachte 
die Informationen werden über die USB 3.0 Leitungen ausgetauscht. Dann 
wird das wohl nicht funktionieren. Ich glaube da benötige ich eine neue 
Boardrevision.


Ich habe direkt an der USB 3 Buchse einen USB 3.0 Hub von Micron 
angeschlossen. In den Hub gehen die USB 2 und USB 3 Signale rein. Der 
Hub besitzt 4 unabhängige USB 3 und USB 2 Ports.

An zwei USB 2 Ports habe ich zwei FT4232H angeschlossen (Somit habe ich 
7 UARTS und ein JTAG Interface) Das hat auch schon funktioniert. An 2 
USB 3 Ports habe ich zwei FT601 Chips angeschlossen. Somit kann ich zwei 
unterschiedlich Bildquellen über 1 USB Kabel übertragen und habe 
zusätzlich die Möglichkeit über USB 2 UART Befehle zu übertragen.

von Michael (Gast)


Lesenswert?

@ Christian

Hast Du den schon mal das Corning Kabel vom PC abgezogen (PC ist dabei 
eingeschaltet) und anschließend nach 20 Sekdunden wieder in den PC 
gesteckt? Bei mir wird das Corning Kabel dann leider nicht mehr erkannt. 
Ich muss immer den PC neu starten. Ich habe es schon bei unterschiedlich 
PCs ausprobiert. Alle PCs zeigen das selbe Verhalten.

von Michael (Gast)


Angehängte Dateien:

Lesenswert?

Ich habe meinen Aufbau mal skizziert.

von Christian R. (supachris)


Lesenswert?

Michael schrieb:
> Wenn ich die 5V nicht auf meinem Board anschließe dann ist es doch
> galvanisch getrennt. Ich könnte auf meinen Board auch einen Optokoppler
> hinzufügen, dann sind die 5V auch galvanisch getrennt.

Nee, denn dann fehlt ja das Bezugspotenzial für die Datenleitungen. Du 
müsstest die Masse auch wegnehmen. Die 5V könnte man bei einem self 
powered Device in der Tat über Optokoppler machen, aber ohne GND wird 
das mit den Datenleitungen nix.
Es gibt meines Wissens keine galvanisch getrennte Lösung, die USB 3.0 
und USb 2.0 kann. Entweder oder. Beides bei Icron zu haben.

Michael schrieb:
> Verdammt ich habe die USB 2.0 Leitungen nicht an dem FT601 Chip
> angeschlossen. Und das Board ist schon in der Fertigung :-(. Ich dachte
> die Informationen werden über die USB 3.0 Leitungen ausgetauscht. Dann
> wird das wohl nicht funktionieren. Ich glaube da benötige ich eine neue
> Boardrevision.

Das wird nicht klappen. Wir arbeiten zwar mit dem FX3, aber die 
Enumeration läuft immer über USB 2.0 Signaling, erst später schaltet der 
Host wenn verfügbar nach SuperSpeed.
Ich glaube die fehlen da ein paar USB Grundlagen...

Michael schrieb:
> @ Christian
>
> Hast Du den schon mal das Corning Kabel vom PC abgezogen (PC ist dabei
> eingeschaltet) und anschließend nach 20 Sekdunden wieder in den PC
> gesteckt? Bei mir wird das Corning Kabel dann leider nicht mehr erkannt.
> Ich muss immer den PC neu starten. Ich habe es schon bei unterschiedlich
> PCs ausprobiert. Alle PCs zeigen das selbe Verhalten.

Kann ich morgen mal testen, ich kann mich aber nicht erinnern, sowas 
gesehen zu haben. Welches OS verwendest du? Bei Windows 7 ist das mit 
USB 3.0 alles Glücksspiel. Wir haben bei uns auf Windows 10 umgestellt, 
seitdem klappt USB 3.0 zuverlässig überall. Bis auf die recht lange 
Enumerationsphase an 2.0 Geräten klappt das Corning Kabel sehr gut. Vor 
allem an 3.0 Geräten geht es rasend schnell. Auch an 2.0 schafft man die 
40MB/s. Das schaffen die Icron Wandler leider nicht. Allerdings halt 
keine galvanische Trennung. Muss man das kleinere Übel für seine 
Applikation wählen.
Falls ich das Testen morgen vergesse, bitte PN an mich.

: Bearbeitet durch User
von Michael (Gast)


Lesenswert?

Ich habe bereits einen USB3 Grafikchip verwendet. Dort habe ich auch nur 
die USB 3 Leitungen angeschlossen und die USB 2 Leitungen nicht 
verbunden. Trotzdem wird der Chip im Gerätemanager richtig angezeigt. 
Der FT601 Chip wird ja auch sehr schnell im Gerätemanager erkannt. 
Soetwas habe ich bei USB 2.0 Geräten bisher noch nicht gesehen. Ich habe 
ein FT601 SDK Board. Ich werde dort auch mal testen die USB 2.0 
Leitungen durchzuschneiden.

Du must bei einem USB 3 Kabel "nur" die beiden USB 2 Adern durchtrennen.

von Christian R. (supachris)


Lesenswert?

Interessant, dass das geht. Ist sicher im Standard so nicht vorgesehen, 
aber zum Basteln OK. Geht halt dann nur an 3.0

Ich hab eben mit dem Corning Kabel getestet. Alles prima, Kabel am PC 
abziehen, Gerät wird nach etwa 1 sek. abgemeldet, wieder anstecken, 
sofort da. Ebenso bei Gerät am Ende des Corning Kabels abziehen.
Hab das 10m Kabel und Windows 10 Enterprise mit Intel xHCI Controller 
(HP Elitedesk 800 G2 Tower).

von Michael (Gast)


Lesenswert?

Danke für den Test,

Ich habe 2x die 10m Variante und 1 mal die 30m Variante. Alle haben sich 
bei mir gleich verhalten ich werde es am Donnerstag noch mal testen

von Frank K. (fchk)


Lesenswert?

Galvanische Trennung und USB ist ätzend.

Du solltest Gigabit Ethernet verwenden. Galvanische Trennung ist da sehr 
einfach, zuverlässig und funktioniert millionenfach. Gigabit Ethernet 
wird z.B. bei Videokameras verwendet (GigE). Du musst ja nicht unbedingt 
IP verwenden, auch wenn das das ganze erleichtert. Mit Hotplug wirst Du 
auch niemals Probleme haben.

Und wenn Gigabit nicht reicht, gibts ja immer noch 10 Gigabit.

fchk

von Michael (Gast)


Lesenswert?

Das Problem ist leider das 1GBit zu langsam ist und 10GBit im Konsumer 
Bereich nicht vorhanden ist. Dann lieber Thunderbolt mit 40 GBit da gibt 
es auch Kabel von Corning :-)

von Frank K. (fchk)


Lesenswert?

Und wofür genau brauchst Du die galvanische Isolation?

Hochspannung? Dann braucht es dann auch die entsprechenden 
Isolationsabstände.

fchk

von Michael (Gast)


Lesenswert?

Wenn  man Produkte in gewissen Branchen verkaufen möchte dann ist dies 
zwingend eine Vorraussetzung.

von Jim M. (turboj)


Lesenswert?

Michael schrieb:
> Daher wollte ich einen FT4232H von FTDI verwenden. Der Baustein erzeugt
> 3 UARTs und 1 JTAG Interface aus den USB 2 Bus.

Da hätte ich zuerst mal probiert was der an USB 1.1 Full Speed so sagt, 
und einen ADUM4160 als Isolator dazwischen geschaltet. Die 3*UART + 1x 
JTAG hören sich für mich nicht so an als würde man High Speed zwingend 
brauchen.

Zum Testen könnte man enweder einen steinalten USB 1.1 Hub oder ein 
ADUM4160/ADUM3160 Modul aus dem Internet nutzen. Datenblatt des FT4232H 
sagt aber: USB 2.0 Full Speed wird unterstützt.

von Frank K. (fchk)


Lesenswert?

Michael schrieb:
> Wenn  man Produkte in gewissen Branchen verkaufen möchte dann ist dies
> zwingend eine Vorraussetzung.

Also doch kein Consumer-Bereich.

fchk

von Michael (Gast)


Lesenswert?

Wie ich bereits oben beschrieben habe, muss die UART Latenz so gering 
wie möglich sein.

Wenn ich da einen Isolator von Analog Device dazwischen schalte erhöht 
sich die Latenz deutlich (sies hängt mit der um Faktor 20 geringeren 
Übertragungsrate von 12MBit zusammen).

In dem Gerät sind 7 Mikrocontroller verbaut die alle eine UART mit 
921000 Baud benutzen.

von Duke Scarring (Gast)


Lesenswert?

Michael schrieb:
> In dem Gerät sind 7 Mikrocontroller verbaut die alle eine UART mit
> 921000 Baud benutzen.
Ohne die Details zu kennen, klingt mir das sehr nach einer aufgebohrten 
Frickellösung bzw. Schwächen im Systemdesign.

Wenn man den Einsatz der vielen Mikrocontroller valide begründen kann, 
sieht meine Einschätzung möglicherweise anders aus.

Duke

von Michael (Gast)


Lesenswert?

Das System funktioniert schon perfect nur mit einem anderen Interface 
nach Außen. Und nein es ist keine Frickellösung. Wir können Daten mit 
bis zu 900MB/s in Richtung PC übertragen und gleichzeitig ein Display 
Signal vom PC in das Gerät übertragen und parallel mit 7 Mikrocontroller 
kommunizieren. Da kann man nun wirklich nicht von Bastellösung sprechen.

Das obrige Konzept arbeitet genauso gut ist jedoch von den kosten im 3 
stelligen Bereich günstiger. Das Problem ist nur noch die galvanische 
Trennung.

Zudem kann es bei dem USB Konzept Probleme beim ESD Test geben da so 
viele Konverter und Hubs vorhanden sind die getörrt werden können. Aber 
wenn man die alle auf ein Board unterbringt und gut schirrmt dann sollte 
es funktionieren.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Es dürfte zwar wegen der parallelen Datenbusse der FT601 recht aufwendig 
sein, aber vielleicht ist es doch einfacher, die galvanische Trennung 
erst hinter den FT601 / FT4232 einzufügen. Dann liegen nämlich eindeutig 
definierte Signale vor.

Man braucht dann zwar eine gute Handvoll galvanischer Isolatoren (à la 
http://www.ti.com/product/iso7740), sie nehmen einiges an Platz weg 
(immerhin gibt es sie im 0.635mm-SSOP) und sie kosten in Stückzahlen 
knapp 2 USD, aber ich bin mir recht sicher, daß so eine Lösung 
zuverlässiger und kostengünstiger ist als irgendwelche 
Spezial-Glasfaser-USB-Kabel von Corning.

von guest (Gast)


Lesenswert?

Eventuell wäre ja auch ein fertiger isolated USB 3.0 Hub eine Lösung für 
Euch: Advantech USB-4630

von Michael (Gast)


Lesenswert?

Das mit dem ISOLATOR hinter den FT601 ist leider keine gute Lösung. Denn 
es müssen dann ca. 110 Leitungen mit Isolatoren versehen werden. Ich 
habe jetzt noch nicht den Isolator angeschaut, jedoch muss die 
Schaltfrequenz mindestens 100MHz sein.

Außerdem muss dann auch die Spannung von den ICS galcanisch getrennt 
werden.

So ein Hub wäre noch eine Möglichkeit. Wir haben jedoch leider nur ein 
recht begrenzte Menge Platz im Gerät. Zudem müssen wir +-8kV Kontakt und 
+-15kV Luft bei der ESD Entladungstest bestehen.

Der USB-4630 ist "nur" mit -4kV Kontakt und +- 15kV Luftentladung 
spezifiziert. Aber interessant wäre hier sicherlich der Inhalt und die 
Lösung :-)

von Michael (Gast)


Lesenswert?

@ Christian R

Hallo Christian,

ich habe auf Arbeit das SDK Board von FT601. Ich wollte ja testen ob der 
FT601 die D+ und D- Leitungen benötigt. Dies habe ich gemacht indem ich 
beim USB 3 Kabel die D+ und D- unterbrochen habe (einfach die Leitungen 
im Kabel durchtrennt)

Der FT601 wurd auch ohne D+ und D- Leitungen einwandfrei im 
Gerätemanager angezeigt. Ich kann auch mit dem Tool vom FTDI auf den 
Chip zugreifen und den Chip konfigurieren.

von Christian R. (supachris)


Lesenswert?

Ahja. Gut zu wissen. Muss ich im neuen Jahr mal beim FX3 ausprobieren.

Gibt's eigentlich inzwischen endlich mal USB 3.0 Hubs mit Transaction 
Translator? Also dass man ausschließlich mit 3.0 ankommt aber trotzdem 
2.0 Geräte betreiben kann? Das würde solche Anforderungen wie du sie 
hast, vereinfachen.
Der isolierte Hub von Advantech kann ja auch wieder nur 3.0

von Michael (Gast)


Lesenswert?

Da habe ich leider noch keinen gefunden. Meine Hoffnung war ein USB 3.0 
zu USB 2 Bridge Chip. Da habe ich leider aber auch noch keinen gefunden.

Oder halt USB 3.0 zu UART Konverter. Der FT4232H als USB 3 Variante wäre 
schön. Ich glaube das werde ich FTDI mal im Forum vorschlagen.

von Michael (Gast)


Lesenswert?

Hast Du schon Übertrager gefunden die für die 5GHz USB 3.0 Signale 
geeignet sind? Damit kann man auch eine galvanische Trennung machen.

Wir haben gerade für Ethernet eine rein passive galvanische Trennung 
gekauft die mit Übertragern funktioniert. Die Lösung ist sehr klein 
(Stecker Übertrager Stecker). Die Lösung kann bis zus 6kV ab und 1GBit 
Datenübertragung.

von Christian R. (supachris)


Lesenswert?

Die 5Gbit/s optisch sind doch recht einfach, das kann jedes SFP+ Modul 
mit handelsüblichen Fasern.

von Christian R. (supachris)


Lesenswert?

Wäre es für deinen Fall nicht einfacher, PCIe über Glasfaser zu leiten? 
Das ist fertig kaufbar und du kannst dahinter in den Gerät eine kleine 
PCIe USB 3.0 Karte einbauen...
Z.B. https://www.samtec.com/optics/optical-cable/pcie/pcie

von Audator (Gast)


Lesenswert?

Michael schrieb:
> Wir haben gerade für Ethernet eine rein passive galvanische Trennung
> gekauft die mit Übertragern funktioniert. Die Lösung ist sehr klein
> (Stecker Übertrager Stecker). Die Lösung kann bis zus 6kV ab und 1GBit
> Datenübertragung.


Ethernet kommt immer mit Übertragern. Man darf nur nicht den Schirm 
verbinden.

Und wenn man es so richtig krachen lassen will benutzt man einfach LWL 
entweder über einen Konverter oder indem man gleich einen SFP Slot 
vorsieht, dann kann man auch schnell die Module austauschen falls man 
eine andere Wellenlänger möchte.

von Christian R. (supachris)


Lesenswert?

Das Problem an Ethernet ist der immense Entwicklungsaufwand und wenn man 
eine gesicherte Übertragung haben will, muss man auch noch hohe Latenzen 
in Kauf nehmen, dann geht es nicht mehr über UDP.
Und selbst UDP mit einem Speed der USB 3.0 zumindest ähnlich ist, ist 
ein riesen Aufwand im FPGA, da ist es an vielen Stellen einfacher einen 
USB 3.0 Chip für 30€ zu verbauen. Vom Plug&Play selbst am kleinsten 
Laptop ganz zu schweigen.

von Vka (Gast)


Lesenswert?

Was spricht denn eigentlich dagegen das Corning Kabel umzubauen, also 
die Stromversorgung aufzutrennen?

Die Signale laufen da drin doch schon galvanisch getrennt über die 
Glasfasern. Ob der Transceiver vom Host, oder vom Device versorgt wird 
sollte egal sein. Die Stromversorgung wird Corning da nur mitführen weil 
ein reguläres Device keine Versorgung ausgibt. Das modifizierte Ende 
sollte man dann vielleicht fest verbauen, dann gibt es auch kein Problem 
mit nicht standardkonformen Anschlüssen.

von Michael (Gast)


Lesenswert?

@Christian,

das Problem ist einfach das eine PCIe Karte leider nicht in Frage kommt, 
da der Tren leider zu All In One PCs geht.(wie z.B. der IMAC von Apple). 
Die Produktmanager möchten keine Desktop PCs mehr dem Kunden anbieten 
die sehen nicht mehr stylisch genug aus :-). Daher bleiben nur noch die 
Schnittstellen die im so einem System verbaut sind wie z.B. USB 3 oder 
Thunderbolt.

Wir haben früher Camera Link verbwendet. Das war total einfach und sehr 
Leistungsstark. Da gehen mehr alls 900MByte/s drüber, jedoch benötigt 
man da auch eine PCIe Karte im PC. Camera Link wurde dann noch abgelöst 
durch einen deutlich schnelleren Standard, jedoch benötigen die alle 
PCIe Karten.


USB 3.2 wird sehr interessant werden, da die Bandbreite durch einen 
zusätliches Leitungspaar verdoppelt wird. Somit kann man mit 2 FT601 
Chips 10GBit übertragen. Ich hoffe ja noch darauf das FTDI bald einen 
Nachfolger vorstellt der SuperSupeed+ (10GBit) kann. Dann sind mit USB 
3.2 20GBit möglich. Vor allem soll die Nettorate gegenüber USB3.1 Gen1 
mit 5GHz deutlich besser sein.

Ich wünsche frohe Weihnachten.

von Christian R. (supachris)


Lesenswert?

Ich hoffe es auch. Wenn die IP Cores nicht so teuer wären (man braucht 
ja 3.0 oder 3.1 Core, 2.0 Core und DMA Core), kann man 3.1 ja auch im 
aktuellen FPGAs direkt machen. Mit Parallelbus wie beim FT601 oder FX3 
ist ja dann eh Schluss. Da müsste der externe Chip dann per MGT 
angebunden sein.
Wir nehmen statt des FT601 lieber den FX3, ist einfach universeller, da 
kann man halt selber die Firmware machen, ist nicht auf Rumpeltreiber 
angewiesen, sondern kann WinUSB oder auch LibUSB nehmen. Nachteilig ist 
halt dass man eine eigene VID braucht. Aber bei professionellem Einsatz 
ist das ja kein allzu großer Invest.

von Jim M. (turboj)


Lesenswert?

Michael schrieb:
> Wie ich bereits oben beschrieben habe, muss die UART Latenz so gering
> wie möglich sein.
>
> Wenn ich da einen Isolator von Analog Device dazwischen schalte erhöht
> sich die Latenz deutlich

Ähm, hust, hau mal einen USB2.0 high speed Hub vor den Isolator und 
miss die Latenzen erneut. BTDT, das Ergebnis war (für mich) eine 
Überraschung.

Die Latenzen bei USB haben weniger mit der Übertragunsrate selbst zu 
tun. Da geht es vor allem ums DMA-Scheduling im Host Controller, und 
durch den USB2.0 Hub nimmt er das (etwas) fixere 2.0 Scheduling - denn 
die Verbindung Hub-PC ist jetzt High Speed.

Mit einem USB 3 Hub habe ich das Ganze noch nicht probiert - wäre 
eventuell einen Versuch wert.

von Michael (Gast)


Lesenswert?

@ Jim Meba

Danke für die Info. Ich bekomme am 04.01 mein neues Board dann muss ich 
es noch bestücken und dann werde ich das mal testen.

von Michael (Gast)


Lesenswert?

So ich habe das Board bestückt. Und was soll ich sagen es funktioniert. 
Im Gerätemanager werden die beiden FT601 Chips angezeigt, obwohl ich nur 
die USB 3.0 Leitugnen am Chip angeschlossen habe. Die USB 2.0 Leitungen 
von FT601 Chip habe ich nicht angeschlossen.

Vielleicht ist es besser in Zukunft die Leitungen auf GND zu legen. Das 
muss ich noch mal überlegen.

von Duke Scarring (Gast)


Lesenswert?

Michael schrieb:
> Vielleicht ist es besser in Zukunft die Leitungen auf GND zu legen.
Möglich. Aber bei solchen Experimenten würde ich 0-Ohm-Widerstände 
vorsehen, falls es dann doch nicht klappt.

Duke

von Sebastian (Gast)


Lesenswert?

Hatte ich nichr dran gedacht ^^

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.