Jan 13, 2024
Alles über USB
Das Erstaunliche an USB-C ist seine Hochgeschwindigkeitsfähigkeit. Die Pinbelegung ergibt
Das Erstaunliche an USB-C ist seine Hochgeschwindigkeitsfähigkeit. Durch die Pinbelegung erhalten Sie vier High-Speed-Differenzialpaare und einige weitere Low-Speed-Paare, mit denen Sie riesige Datenmengen über einen Anschluss pumpen können, der kleiner als eine Cent-Münze ist. Nicht alle Geräte nutzen diese Funktion und müssen dies auch nicht tun – USB-C ist so konzipiert, dass es für jedes tragbare Gerät auf der Welt zugänglich ist. Wenn Sie jedoch ein Gerät mit Hochgeschwindigkeitsanforderungen über USB-C haben, ist es großartig, wie viel USB-C Ihnen bieten kann und wie gut es funktionieren kann.
Die Möglichkeit, aus USB-C eine Hochgeschwindigkeitsschnittstelle zu machen, wird Alternate Mode, kurz „Altmode“, genannt. Die drei alternativen Modi, denen Sie heutzutage begegnen können, sind USB3, DisplayPort und Thunderbolt. Es gibt einige, die in Vergessenheit geraten sind, wie HDMI und VirtualLink, und einige, die auf dem Vormarsch sind, wie USB4. Die meisten Altmodi erfordern eine digitale USB-C-Kommunikation unter Verwendung einer bestimmten Art von Nachrichten über den PD-Kanal. Allerdings ist dies nicht bei allen der Fall – USB3 ist das einfachste. Sehen wir uns an, was einen Altmode ausmacht.
Wenn Sie die Pinbelegung gesehen haben, haben Sie die Hochgeschwindigkeits-Pins gesehen. Heute möchte ich Ihnen zeigen, welche Schnittstellen Sie heutzutage aus diesen Pins herausholen können. Dies ist keine vollständige oder ausführliche Liste – ich werde zum Beispiel nicht über Dinge wie USB4 sprechen, teilweise weil ich es nicht gut genug verstehe und auch keine Erfahrung damit habe; das, und es ist sicher, dass wir in Zukunft mehr Hochgeschwindigkeitsgeräte mit USB-C bekommen werden. Außerdem ist USB-C so flexibel, dass ein Hacker Ethernet oder SATA darüber auf USB-C-kompatible Weise offenlegen könnte – und wenn Sie danach suchen, hilft Ihnen vielleicht diese Übersicht dabei, es herauszufinden.
USB3 ist sehr, sehr einfach – Sie haben ein TX- und ein RX-Paar, und obwohl die Übertragungsgeschwindigkeiten viel höher sind als bei USB2, sind sie für einen Hacker beherrschbar. Wenn Sie eine mehrschichtige Platine mit Impedanzkontrolle für USB3-Signale verwenden und Ihre Diffpairs mit Respekt behandeln, wird Ihre USB3-Verbindung im Allgemeinen funktionieren.
Mit USB3 über USB-C ändert sich nicht viel – Sie haben einen Multiplexer für die Rotation, aber das ist auch schon alles. USB3-Multiplexer gibt es in Hülle und Fülle, sodass Sie kaum ein Problem haben werden, wenn Sie Ihrem Board jemals USB3-fähiges USB-C hinzufügen möchten. Es gibt auch Dual-Link-USB3, bei dem zwei USB3-Verbindungen parallel verwendet werden, um den Durchsatz zu erhöhen, aber Hacker werden im Allgemeinen weder darauf stoßen noch es benötigen, und dieses Gebiet wird tendenziell besser von Thunderbolt abgedeckt. Möchten Sie ein USB3-Gerät in USB-C umwandeln? Alles, was Sie wirklich brauchen, ist ein Mux. Wenn Sie darüber nachgedacht haben, einen MicroUSB-3.0-Anschluss für Ihr Hochgeschwindigkeitsgerät auf Ihrem Board zu installieren, bitte ich Sie höflich, aber bestimmt, es sich noch einmal zu überlegen und stattdessen dort eine USB-C-Buchse und einen VL160 anzubringen.
Wenn Sie ein USB3-Gerät mit Stecker entwerfen, benötigen Sie nicht einmal einen Mux für die Rotationsverarbeitung – Sie benötigen tatsächlich keine Rotationserkennung. Ein einzelner, nicht überwachter 5,1-kΩ-Widerstand reicht aus, um ein USB3-Flash-Laufwerk zu bauen, das direkt an einen USB-C-Anschluss angeschlossen wird, oder einen USB-C-Stecker auf USB-A 3.0-Buchse-Adapter herzustellen. Auf der Buchsenseite können Sie die Verwendung eines Mux vermeiden, wenn Sie auf einen freien USB3-Anschluss verzichten müssen, obwohl das natürlich kein wunderbarer Tausch ist. Mir ist Dual-Link-USB3 nicht ausreichend bekannt, um sagen zu können, ob eine solche Verbindung USB3-Dual-Link-fähig ist, aber ich halte „Nein“ für eine wahrscheinlichere Antwort als „Ja“!
DisplayPort (DP) ist eine wunderbare Schnittstelle zum Anschluss hochauflösender Displays – es hat HDMI im Desktop-Bereich überholt, dominiert den eingebetteten Display-Bereich in seiner eDP-Form und sorgt für hohe Auflösungen über ein einziges Kabel, oft besser als HDMI. Es lässt sich mit einem günstigen Adapter, der einen Standard namens DP++ verwendet, in DVI oder HDMI umwandeln und ist nicht so gebührenpflichtig wie HDMI. Es macht Sinn, dass das VESA-Konsortium mit der USB-Gruppe zusammengearbeitet hat, um die DisplayPort-Unterstützung zu implementieren, insbesondere angesichts der Tatsache, dass DisplayPort-Sender in SoCs immer beliebter werden.
Wenn Sie ein Dock mit HDMI- oder VGA-Ausgang verwenden, nutzt es den DisplayPort-Altmodus unter der Haube. Monitore verfügen immer häufiger über DisplayPort-über-USB-C-Eingänge, und dank einer Funktion namens MST können Sie Monitore verketten und so eine Konfiguration mit mehreren Monitoren über ein einziges Kabel erhalten – es sei denn, Sie verwenden ein MacBook, was Apple ablehnt um MST unter MacOS zu unterstützen.
Interessante Tatsache: Der DP-Altmodus ist einer der wenigen Altmodi, der SBU-Pins verwendet, die für das DisplayPort-AUX-Paar umfunktioniert werden. Das allgemeine Fehlen von USB-C-Pins bedeutete auch, dass DP-Konfigurationspins weggelassen werden mussten, mit Ausnahme des DP++ HDMI/DVI-Kompatibilitätsmodus, und infolgedessen sind alle USB-C DP-zu-HDMI-Adapter tatsächlich aktive DP-HDMI-Konverter disguise – im Gegensatz zu DP++, bei dem Sie Pegelumsetzer für die HDMI-Unterstützung verwenden können.
Wenn Sie mit DisplayPort experimentieren möchten, benötigen Sie möglicherweise einen DP-unterstützenden Mux, aber am wichtigsten ist, dass Sie in der Lage sein müssen, benutzerdefinierte PD-Nachrichten zu senden. Zunächst einmal wird der gesamte Teil „DP-Altmodus anbieten/anfordern“ über PD erledigt – Widerstände reichen nicht aus. Außerdem gab es keinen freien Pin für HPD, ein wichtiges Signal im DisplayPort, und daher werden Hotplug-Ereignisse und Interrupts stattdessen als Nachrichten über den PD-Kanal gesendet. Allerdings ist die Implementierung nicht besonders schwierig, und ich schaue mir eine hackerfreundliche Implementierung an. Wenn Sie bis dahin DP oder HDMI über einen USB-C-Anschluss mit DP-Altmodus benötigen, gibt es einige Chips, wie den CYPD3120, mit dem Sie eine Firmware dafür schreiben können.
Eine tolle Sache, die den DP-Altmodus auszeichnet – mit vier Hochgeschwindigkeitsspuren auf USB-C ermöglicht dieser Altmodus die Kombination einer USB3-Verbindung auf einer Seite des USB-C-Anschlusses und einer zweispurigen DisplayPort-Verbindung auf der anderen Seite. So funktionieren alle „USB3-Anschlüsse, Peripheriegeräte und ein HDMI-Ausgang“-Docks. Wenn die Dual-Lane-Auflösung für Sie einschränkend ist, können Sie sich auch einen Vier-Lane-Adapter zulegen – mangels USB3 findet keine Datenübertragung statt, Sie können jedoch über zwei zusätzliche DisplayPort-Lanes höhere Auflösungen oder Bildraten erzielen.
Meiner Meinung nach ist der DisplayPort-Altmodus einfach eines der besten Dinge an USB-C, und obwohl die billigsten (oder am schlechtesten gestalteten) Laptops und Telefone ihn nicht unterstützen, ist es eine Freude, ein Gerät zu haben, das dies tut. Natürlich nimmt ein großes Unternehmen manchmal einfach die Freude, wie es Google getan hat.
Google hat es während der Entwicklung explizit im Kernel deaktiviert. https://t.co/4QyMitc0Hq
Ohne Grund.
Qualcomm-Chips seit dem 835 unterstützen nativ den DisplayPort Alt Mode.https://t.co/Bv94GsqLFL
Es fällt nicht einmal eine Lizenzgebühr an.
– Mishaal Rahman (@MishaalRahman) 31. Oktober 2019
Lassen Sie uns in diesem Sinne über den komplexesten Altmodus von allen sprechen.
Speziell auf USB-C können Sie Thunderbolt 3 bekommen – bald auch Thunderbolt 4, aber das ist vorerst Fiktion. Thunderbolt 3 ist eine ursprünglich proprietäre Spezifikation, die schließlich von Intel als Open-Source-Version bereitgestellt wurde. Offensichtlich haben sie es nicht ausreichend als Open-Source-Lösung bereitgestellt, oder es gibt einen anderen Vorbehalt, da Thunderbolt-3-Geräte immer noch ausschließlich mit Intel-Chips gebaut werden und ich vermute, dass mangelnde Konkurrenz dafür verantwortlich ist, dass sich die Preise stark verdreifachen Zifferngebiet. Warum sollten Sie überhaupt nach Thunderbolt-Geräten suchen? Abgesehen von den höheren Geschwindigkeiten gibt es eine Killerfunktion.
Sie können PCIe-Passthrough über Thunderbolt nutzen – auch bis zu einer 4x breiten Verbindung! Dies ist ein heißes Thema unter Leuten, die eGPU-Unterstützung oder schnellen externen Speicher in Form von NVMe-Laufwerken wünschen, und einige Hacker verwenden es für PCIe-angebundene FPGAs. Wenn Sie zwei Computer (z. B. zwei Laptops) haben, die Thunderbolt unterstützen, können Sie diese auch über ein Thunderbolt-fähiges Kabel verbinden – so entsteht eine Hochgeschwindigkeits-Netzwerkschnittstelle zwischen beiden, ohne dass zusätzliche Komponenten erforderlich sind. Oh, und natürlich kann Thunderbolt problemlos DisplayPort und USB3 in sich tunneln. Die Technologie zwischen Thunderbolt ist äußerst leistungsstark und für Power-User interessant.
Allerdings geht all diese Coolness zu Lasten eines proprietären und komplexen Technologie-Stacks. Thunderbolt ist nicht etwas, auf dem ein einzelner Hacker leicht aufbauen kann – aber jemand sollte es eines Tages einmal ausprobieren. Und obwohl die Thunderbolt-Docks über eine wunderbare Menge an Funktionen verfügen, kommt es auf der Softwareseite oft zu Problemen, insbesondere wenn es darum geht, den Schlafmodus auf Ihrem Laptop zum Laufen zu bringen, ohne dass Ihre eGPU Ihren Kernel zum Absturz bringt. Falls das bis jetzt noch nicht offensichtlich ist, warte ich gespannt darauf, dass Intel es hinbekommt.
Ich sage immer „Muxes“. Was sind diese? Kurz gesagt, das ist der Teil, der dabei hilft, den Hochgeschwindigkeits-Signalaustausch je nach USB-C-Rotation zu bewältigen.
Die Hochgeschwindigkeitsspuren sind der Teil von USB-C, der am stärksten von der Portrotation betroffen ist. Wenn Ihr USB-C-Anschluss Hochgeschwindigkeitsspuren verwendet, benötigt er einen Mux-IC (Multiplexer), der zwei mögliche USB-C-Rotationen verwaltet – die Ausrichtung der Anschlüsse an beiden Enden und des Kabels an die tatsächlichen Hochgeschwindigkeitsempfänger und -sender im Inneren Geräte, die angeschlossen werden. Manchmal sind diese Muxes in einen Hochgeschwindigkeitschip integriert, wenn dieser für USB-C entwickelt wurde, aber oft handelt es sich um einen separaten Chip. Möchten Sie einem Gerät Hochgeschwindigkeits-USB-C-Unterstützung hinzufügen, das noch nicht darüber verfügt? Ein Mux wird ein Kernelement für die Funktionsfähigkeit Ihrer Hochgeschwindigkeitskommunikation sein.
Wenn Ihr Gerät über eine USB-C-Buchse mit Hochgeschwindigkeitsleitungen verfügt, benötigt es einen Mux – Geräte mit unverlierbarem Kabel und Stecker benötigen ihn nicht. Wenn Sie zwei Hochgeschwindigkeitsgeräte mit USB-C-Buchsen über ein Kabel verbinden, benötigen in der Regel beide Muxer – die Kabelrotation liegt in der Verantwortung jedes Geräts. Auf beiden Seiten überwacht der Mux (oder ein PD-Controller mit angeschlossenem Mux) die CC-Pin-Ausrichtung und reagiert entsprechend. Es gibt auch eine ganze Reihe dieser Muxes für unterschiedliche Zwecke – je nachdem, was Sie von einem Hafen erwarten.
In billigen Laptops, die USB 3.0 nur am Typ-C-Anschluss implementieren, werden Sie für USB3 vorgesehene Multiplexer sehen, und wenn dieser DisplayPort unterstützt, verfügen Sie über einen Multiplexer mit zusätzlichen Eingängen zum Einmischen dieser Signale. In Laptops mit ausgefalleneren Ports, die dies implementieren Thunderbolt, der Mux wird in den Thunderbolt-Chip integriert. Für Hacker, die mit USB-C entwickeln, das Thunderbolt nicht erreichen kann oder es nicht benötigt, bieten TI und VLI eine ganze Reihe guter Muxes für alle Zwecke. Ich habe zum Beispiel kürzlich mit DisplayPort über USB-C gespielt, und VL170 (scheinbar 1:1-Klon des TI HD3SS460) scheint ein wunderbarer Chip für kombinierte DisplayPort- und USB3-Zwecke zu sein.
DisplayPort-fähige USB-C-Multiplexer wie der HD3SS460 übernehmen selbst keine CC-Pin-Verwaltung und Rotationserkennung, aber das ist eine vernünftige Einschränkung – Sie müssen ziemlich anwendungsspezifische PD-Kommunikation für DisplayPort durchführen, was schnell über die Möglichkeiten eines Mux hinauswächst Du. Sind Sie mit USB3 zufrieden, wo keine PD-Kommunikation erforderlich ist? VL161 ist ein einfacher Chip für USB3-Muxing, der über einen Polaritätseingang verfügt, bei dem Sie die Polaritätserkennung selbst durchführen müssen.
Wenn Sie auch keine Polaritätserkennung durchführen möchten – reicht ein analoges PD mit nur 5 V für Ihre USB3-Anforderungen aus? Verwenden Sie etwas wie den VL160 – er kann analoge PDs verarbeiten und verarbeiten, indem er Leistung und Hochgeschwindigkeits-Spurrotation in einem vereint. Dies ist der echte „Ich möchte USB3 auf USB-C und ich möchte, dass alles für mich verwaltet wird“-IC; Der VL160 ist beispielsweise das, was die aktuelle Open-Source-HDMI-Capture-Karte für ihren USB-C-Anschluss verwendet. Um fair zu sein, muss ich jedoch nicht den VL160 hervorheben – es gibt Dutzende solcher ICs; „USB3-Mux für USB-C, der alles kann“ ist wahrscheinlich die beliebteste Art von USB-C-bezogenen ICs, die es gibt.
Es gibt ein paar veraltete USB-C-Altmodi. Das erste, über das ich keine Tränen vergieße – es ist der HDMI-Altmodus; und es steckt einfach die HDMI-Anschlussstifte auf die USB-C-Anschlussstifte. Damit erhalten Sie HDMI über USB-C und es scheint für kurze Zeit auf Smartphones verwendet worden zu sein. Allerdings muss man mit dem leicht in HDMI konvertierbaren DisplayPort-Altmodus konkurrieren, während die HDMI-DP-Konvertierung normalerweise kostspielig ist, die Kombination mit USB 3.0 ist nicht möglich, da HDMI vier Differentialpaare erfordert, und der HDMI-Lizenzaufwand scheint HDMI vorangetrieben zu haben Altmode in den Boden. Ich bin der festen Überzeugung, dass es dabei bleiben sollte, da ich nicht glaube, dass unsere Welt durch den Einbau von mehr HDMI verbessert werden könnte.
Der andere ist jedoch tatsächlich interessant – er heißt VirtualLink. Eine Gruppe großer Technologieunternehmen hat sich mit den Möglichkeiten von USB-C für VR befasst – schließlich ist es wunderbar, wenn Ihr VR-Headset für alles nur ein einziges Kabel benötigt. Allerdings benötigen VR-Brillen eine hochauflösende Dual-Display-fähige Videoschnittstelle mit hoher Bildrate und eine Hochgeschwindigkeits-Datenverbindung für Zusatzkameras und Sensoren, und die übliche „Dual-Lane-DisplayPort+USB3“-Kombination könnte solche Funktionen nicht bieten zu der Zeit. Was machst du dann?
Es sei ganz einfach, sagte die VirtualLink-Gruppe, man entferne die beiden doppelten USB2-Paare am USB-C-Anschluss und verwende die vier Pins für eine USB3-Verbindung. Erinnern Sie sich an den USB2-zu-USB3-Konverterchip, den ich vor einem halben Jahr in einem kurzen Artikel erwähnt habe? Ja, sein ursprünglicher Zweck war VirtualLink. Eine solche Anordnung erfordert natürlich ein teureres Spezialkabel mit zwei zusätzlichen abgeschirmten Paaren und erfordert außerdem, dass PCs eine Leistung von bis zu 27 W und damit einen 9-Volt-Ausgang bereitstellen – eine Seltenheit bei USB-C-Anschlüssen, die dies nicht tun Ladegeräte oder Powerbanks. Die Abweichung von USB3, bei der USB2 weggelassen wurde, hat einige verärgert; Für VR-Zwecke schien VirtualLink jedoch äußerst nützlich zu sein.
Einige GPUs wurden mit VirtualLink-Unterstützung ausgeliefert, aber letztendlich nicht genug – und Laptops, die für ihre oft fehlenden USB-C-Anschlüsse bekannt sind, störten das nicht. Dies führte dazu, dass einer der Schlüsselakteure der Vereinbarung, Valve, die Integration von VirtualLink mit Valve Index aufgab und es von da an bergab ging. Leider hat sich VirtualLink nie wirklich durchgesetzt. Es hätte Spaß gemacht, den Altmodus zu haben – die Sache mit nur einem Kabel wäre für VR-Benutzer erstaunlich gewesen, und die Anforderung einer erhöhten Spannung, die über USB-C verfügbar ist, hätte uns auch PD-fähige Anschlüsse mit mehr als 5 V ermöglicht – was heutzutage kein Laptop und kaum noch ein PC mehr bietet. Ja, nur zur Erinnerung: Wenn Sie einen USB-C-Anschluss an Ihrem Desktop- oder Laptop-Computer haben, liefert dieser zwar 5 V, aber eine höhere Spannung erhalten Sie nicht.
Schauen wir uns jedoch die positive Seite an. Wenn Sie eine dieser GPUs besitzen, die mit einem USB-C-Anschluss geliefert werden, unterstützt diese sowohl USB3 als auch DisplayPort!
Das Tolle an USB-C ist, dass ein Anbieter oder Hacker durchaus seine eigenen Alternativmodi definieren kann, wenn er möchte. Der Adapter wäre zwar halb-proprietär, bleibt aber im Grunde immer noch ein USB-C-Anschluss, der zum Laden und für Daten dient überweisen. Möchten Sie einen Ethernet-Altmode oder Dual-Port-SATA? Tu es. Vorbei sind die Zeiten, in denen man äußerst unbekannte Anschlüsse für Geräte beschaffen musste, bei denen jeder Docking- und Ladeanschluss anders war und bei seltener Auswahl bis zu 10 US-Dollar pro Stück kosten konnte, wenn es überhaupt möglich gewesen wäre, sie zu finden.
Nicht jeder USB-C-Anschluss muss jede einzelne dieser Funktionen implementieren – viele tun dies nicht. Bei vielen ist dies jedoch der Fall, und mit jedem Tag holen wir mehr aus einem durchschnittlichen USB-C-Anschluss heraus. Diese Vereinheitlichung und Standardisierung wird sich auf lange Sicht auszahlen, und auch wenn es hin und wieder zu Abweichungen kommt, werden die Hersteller lernen, diese cleverer anzugehen.