Alle Antworten sind falsch, wenn OP bedeutet, dass die Verbindung mit High-Speed USB 2.0-Kommunikationsgeschwindigkeit (480 Mbit / s) betrieben wird.
Die Länge einer USB-Kommunikationsverbindung ist durch die USB-Architektur mit fünf Hubs in der Verbindung begrenzt. Das USB-Protokoll erfordert, dass USB-Geräte Handshake-Pakete wie ACK, NAK, NRDY usw. zurücksenden. Diese Antworten müssen innerhalb eines festgelegten Zeitlimits, das auf 1,7 µs festgelegt ist, an den Host zurückgesendet werden. Die Host-Controller-Hardware würde ein Flag / eine Unterbrechung setzen, wenn die Antwort nach 1-2-3 Versuchen nicht rechtzeitig empfangen wird, was den Verbindungsfehler bedeuten würde.
Was war nun die Grundlage für diese 1,7-µs-Begrenzung? Es basiert auf einem Worst-Case-Roundtrip von Handshake-Paketen. Alles wird in den USB 2.0-Spezifikationen in Abschnitt 7.1.19.2 erläutert. Es gibt drei Faktoren:
Physikalische Signalintegrität über ein Twisted-Pair-Differential für realistisch herstellbare Kabel (Impedanzanpassung, Kabelgleichmäßigkeit, Signalverlust). Dies ergab eine Kabellängenbegrenzung von 5 m pro Segment. Ein 5-m-Kabel hat eine geschätzte Einweg-Laufzeit von 26 ns gemäß den USB-Spezifikationen. Alle sechs Kabel haben eine Umlaufverzögerung von ca. 300 ns.
Verzögerung der digitalen Signalausbreitung auf dem Repeater-Pfad des Hubs, die durch die vorgeschlagene Architektur auf 40 HS-Bitzeiten begrenzt ist, was ungefähr 80 ns pro Hub in eine Richtung entspricht. Fünf Hubs haben eine Umlaufverzögerung von ca. 800 ns.
Ein USB-Gerät kann mit 192 Bit antworten, was 400 ns entspricht.
Die Gesamtantwortzeit beträgt also 1500 ns. Die Spezifikation lässt etwas Spiel zu und verlängert das Timeout auf 1700 ns.
Daher beträgt die Grenze für die Medienlaufzeit 1700 ns - 400 ns = 1300 ns oder 650 ns in eine Richtung. Wenn Sie ein Kabel herstellen können, das über eine Wellenausbreitung von 650 ns einen so geringen Verlust aufweist, dass es ein offenes Signalauge liefert, das die USB-Far-End-Vorlage erfüllt, kann ein Host mit einem einzelnen USB-Gerät damit arbeiten. Bei 26 ns pro 5 m werden 125 m Kabel benötigt. Dies ist die theoretische Höchstgrenze.
Ich würde gerne sehen, ob diese Art von Kabel hergestellt werden kann. Persönlich hatte ich eine gute fehlerfreie Verbindung mit einem 12 m langen Kabel aus Cat 5e. Dies hängt jedoch von der Qualität / Empfindlichkeit der Empfänger an beiden Enden einer Verbindung ab.
ZUSATZ: Die obige Antwort gilt nur für das gesamte USB-HS-Kommunikationsprotokoll. Es gibt jedoch eine andere funktionale Einschränkung für die maximale Kabellänge in USB: Sie hängt mit der Hochgeschwindigkeits-Trennfunktion zusammen. Die HS-Trennung in USB basiert auf der Idee, dass ein getrenntes Kabel das Signal zurückreflektieren würde, sodass sich die Reflexion zu der angesteuerten Spannung addiert, was zu einer Verdoppelung der Signalamplitude am Sender führt. Wie geplant sendet der HS-Host alle 125 us Mikrorahmen-Marker (SOF genannt). Zum Zweck der Kabeltrennungserkennung hat das SOF-Paket ein verlängertes Paketende mit einer Länge von ~ 83 ns (normaler EOP ist 16,6 ns lang).
Wenn das USB-Kabel am Host-Port nicht angeschlossen ist, ist dies kein Problem. Wenn jedoch ein Gerät (mit seiner Terminierung) am anderen Ende eines langen Kabels getrennt wird, muss die Reflexion innerhalb von 83 ns zurückkehren, die Amplitude verdoppelt sich und ein spezieller Komparator im PHY-Empfänger registriert den Zustand "HS-Trennung" . Dies legt die Kabelbegrenzung auf 41,5 ns Einweg-Ausbreitungsverzögerung fest. Unter der Annahme einer Ausbreitungsgeschwindigkeit von 6 "pro 1 ns muss das Kabel weniger als 250" lang oder ungefähr 6,5 m lang sein.
Diese Einschränkung tritt nur auf, wenn Sie eine saubere und schnelle Trennung feststellen möchten. Bei längeren Kabeln wird der Host-Port eventuell aufgrund eines Protokollfehlers deaktiviert, sodass am Ende keine großen Probleme auftreten.