Forum: Mikrocontroller und Digitale Elektronik USB 2.0 Datenleitungen in USB 3.0 unabhängig nutzen FT601


von Nils (Gast)


Lesenswert?

Hallo,

für eine Anwendung würde ich gern von einem FPGA mit einem FTDI FT601 
Daten von einem FPGA an einen PC senden und gleichzeitig einen weiteren 
Controller per USB 2.0  anbinden.
Ist es mögich die USB 2.0 Dateneitungen im USb 3.0 Stecker für ein 
komplett anderes Device zu nutzen?
Der FT601 ist zwar zu USB 2.0 abwärtskompatibel sollte aber nach meinem 
Verständnis auch ohne die USB 2.0 Datenleitungen funktionieren. Kann ich 
also die USB 3.0 Datenleitungen aus dem Stecker mit dem FT601 verbinden 
und gleichzeitig die USB 2.0 Leitungen für ein anderes Device auf der 
Platine verwenden?

Google spuckt für diese doch etwas unübliche Verwendung leider nichts 
sinnvolles aus...

Danke!

von Name: (Gast)


Lesenswert?

Nils schrieb:
> Hallo,
>
> für eine Anwendung würde ich gern von einem FPGA mit einem FTDI FT601
> Daten von einem FPGA an einen PC senden und gleichzeitig einen weiteren
> Controller per USB 2.0  anbinden.
> Ist es mögich die USB 2.0 Dateneitungen im USb 3.0 Stecker für ein
> komplett anderes Device zu nutzen?

Ich vermuten nein.

Laut der SPEC hat USB-3 immer Superspeed-Leitungen UND D+ und D-. Du 
teilst dem Host ja schon über die Pulls auf den D+ und D- Leitungen die 
Geschwindigkeit mit.
Über diese erkennt der Host auch, ob überhaupt ein Device angeschlossen 
ist. Soweit mir bekannt, ist das über die SS-Leitungen nicht möglich.
Also hat der Host gar keine Möglichkeit zwei Devices zu erkennen.

Und kein Standard-Hub wird zwei völlig unterschiedliche Deskriptoren an 
einem Port akzeptieren. Falls der Deskriptor überhaupt über die 
SS-Leitungen übertragen werden kann.

Das ist aber alles ein "educated guess".

Wenn du es genau wissen willst, musst du es selber nachlesen:
https://www.usb3.com/whitepapers/USB%203%200%20(11132008)-final.pdf
Das ist nämlich leider nicht einfach.

von fchk (Gast)


Lesenswert?

Hardwaremäßig geht das prinzipiell, aber die jeweilige Architektur 
müsste es unterstützen, und die Ports müssten getrennt verkabelt sein 
und getrennte VBUS-Pins haben.

Bei PCs sind diese Bedingungen nicht erfüllt. Einen NVidia Jetson ARM64 
kannst Du hingegen durch Anpassen des Device Trees einen Port aufteilen, 
zumindest Hostseitig.

fchk

von Peter D. (peda)


Lesenswert?

Zumindest werden für beides getrennte Treiber installiert und im 
Gerätemanager sind auch getrennte Hubs zu sehen.
Bei meinem PC waren zu Anfang nur die 2.0 Treiber für die reinen 2.0 
Anschlüsse installiert. Der Effekt war, daß 2.0 Geräte am 3.0 Anschluß 
nicht funktionierten. Die 3.0 HDDs liefen natürlich.

Es ist auch so, daß an einem 3.0 Hub eine 2.0 und eine 3.0 HDD beide mit 
maximaler Geschwindigkeit laufen. 2 3.0 HDDs müssen sich dagegen die 3.0 
Geschwindigkeit teilen.

von Gustl B. (-gb-)


Lesenswert?

Moin, ich hole den Thread mal hervor weil ich genau das jetzt in freier 
Wildbahn gefunden habe:

https://www2.hdl.co.jp/en/ft600-series-m/edx-009-m1.html
https://www2.hdl.co.jp/en/ft600-series-m/eda-009-m1.html

Scheint also zu funktionieren.
Ich habe das auch vor, werde aber USB-C verwenden. Daran kommt zuerst 
ein USB MUX FUSB340 mit Controller FUSB303. Das USB3 geht direkt zum 
FT600 und das USB2 geht zu einem USB HUB und von dem aus dann zum FT600 
und zu einem FT2232H.

Wo ich mir noch unsicher bin ist, ob ich einen USB Redriver benötige 
oder ob der MUX genügt. Und ob ich im USB2 Pfad auch einen MUX einplanen 
sollte oder jeweils (wie ich es schon mal getan habe) die Pins einfach 
untereinander verbinde.

von Ryan M. (ryanmiles)


Lesenswert?

vielen dank für deine antwort.

von Ryan M. (ryanmiles)


Lesenswert?

Gustl B. schrieb:
> Moin, ich hole den Thread mal hervor weil ich genau das jetzt in
> freier
> Wildbahn gefunden habe:
> https://run3freegame.com
> https://www2.hdl.co.jp/en/ft600-series-m/edx-009-m1.html
> https://www2.hdl.co.jp/en/ft600-series-m/eda-009-m1.html
>
> Scheint also zu funktionieren.
> Ich habe das auch vor, werde aber USB-C verwenden. Daran kommt zuerst
> ein USB MUX FUSB340 mit Controller FUSB303. Das USB3 geht direkt zum
> FT600 und das USB2 geht zu einem USB HUB und von dem aus dann zum FT600
> und zu einem FT2232H.
>
> Wo ich mir noch unsicher bin ist, ob ich einen USB Redriver benötige oder ob der 
MUX genügt. Und ob ich im USB2 Pfad auch einen MUX einplanen sollte oder jeweils 
(wie ich es schon mal getan habe) die Pins einfach untereinander verbinde.

Besten Dank!

von Gustl B. (-gb-)


Lesenswert?

Genau so habe ich das jetzt geplant und gelayoutet.

Für USB3 einen MUX mit CC Controller drinnen und USB2 habe ich die Pins 
an der Buchse verbunden.

Aber ich geben dem FT600 auch USB2. Dafür habe ich einen kleinen USB2 
HUB eingeplant an dem dann eben der FT600 und ein FT2232H hängt.

Beitrag #7172560 wurde von einem Moderator gelöscht.
Beitrag #7172594 wurde von einem Moderator gelöscht.
von Herbert H. (Firma: AMTech Pupilknowlogy GmbH) (a_f)


Lesenswert?

Hallo,
genau über diese Lösung denke ich auch gerade nach.
Ich möchte wissen, ob diese Lösung am Ende auch zuverlässig funktioniert 
hat.
Oder waren noch Änderungen notwendig ? wenn ja welche ?
Kann ein Schaltplan zur Verfügung gestellt werden ?
Vielen Dank
Herbert

von Gustl B. (gustl_b)


Lesenswert?


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.