Universal Serial Bus

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von USB 1.1)
Wechseln zu: Navigation, Suche
USB ist eine Weiterleitung auf diesen Artikel. Weitere Bedeutungen sind unter USB (Begriffsklärung) aufgeführt.

Der Universal Serial Bus (USB) [ˌjuːnɪˈvɜːsl ˈsɪɹiəl bʌs] ist ein serielles Bussystem zur Verbindung eines Computers mit externen Geräten. Mit USB ausgestattete Geräte oder Speichermedien, wie etwa USB-Speichersticks, können im laufenden Betrieb miteinander verbunden (Hot Swapping) und angeschlossene Geräte sowie deren Eigenschaften automatisch erkannt werden. Vor der Einführung von USB gab es eine Vielzahl verschiedener Schnittstellentypen mit unterschiedlichsten Steckern zum Anschluss von Zubehör und Peripheriegeräten an Heim- und Personal Computer. Fast alle diese Schnittstellenvarianten wurden durch USB ersetzt, was für die Anwender Vereinfachungen mit sich brachte, die jedoch durch die Vielzahl an unterschiedlichen USB-Steckern und -Buchsen wieder teilweise relativiert wurden. 1996 mit einer maximalen Datenrate von 12 MBit/s als USB 1.0 eingeführt, wurde im Jahr 2000 mit 480 MBit/s die heute noch meistverbreitete Version USB 2.0 spezifiziert. Seit dem 2014 verabschiedeten Standard USB 3.1 beträgt die maximale Brutto-Datentransferrate etwas unter 10 GBit/s.[1]

USB-Symbol
Aktuelles USB Logo
USB 3.0 Superspeed Logo

Überblick[Bearbeiten]

USB ist ein serieller Bus, d. h. die einzelnen Bits eines Datenpaketes werden nacheinander übertragen. Die Datenübertragung erfolgt differenziell über eine symmetrische, verdrillte Doppelader: Durch die eine Ader wird das Datensignal und durch die andere das dazu jeweils invertierte Signal übertragen. Der Signalempfänger bildet die Differenzspannung beider Signale, eingestrahlte Störungen werden damit weitgehend eliminiert. Das erhöht die Übertragungssicherheit und unterdrückt Gleichtaktstörungen. Zwei weitere Adern dienen zur Stromversorgung der angeschlossenen Geräte. Durch die Verwendung von nur vier Adern in einem Kabel kann dieses dünner und billiger ausgeführt werden als bei parallelen Schnittstellen. Eine hohe Datenübertragungsrate ist mit relativ geringem Aufwand zu erreichen, da nicht mehrere Signale mit identischem elektrischen und zeitlichen Verhalten übertragen werden müssen.

Die Bus-Spezifikation sieht einen zentralen Host-Controller (Master) vor, der die Koordination der angeschlossenen Peripherie-Geräte (den sog. Slave-Clients) übernimmt. Daran können theoretisch bis zu 127 verschiedene Geräte angeschlossen werden. An einem USB-Port kann immer nur ein USB-Gerät angeschlossen werden. Sollen an einem Host mehrere Geräte angeschlossen werden, muss deshalb ein Verteiler (Hub) für deren Kopplung sorgen. Durch den Einsatz von Hubs entstehen Baumstrukturen, die alle im Host-Controller enden.

Einsatzgebiete des USB[Bearbeiten]

USB eignet sich für viele Geräte wie Massenspeicher (etwa Festplatte, Diskette, DVD-Laufwerk), Drucker, Scanner, Webcams, Maus, Tastatur, aktive Lautsprecher, aber auch Dongles und sogar Grafikkarten und Monitore.[2] USB kann für Geräte mit geringem Stromverbrauch wie Mäuse, Telefone, Tastaturen, aber beispielsweise auch CIS-Scanner oder manche 2,5-Zoll-Festplatten und externe Soundkarten die Stromversorgung übernehmen.

Über USB können heute zahlreiche Gerätetypen angeschlossen werden, die vor der USB-Einführung über eine größere Zahl verschiedener Schnittstellentypen angebunden wurden. Zu den abgelösten älteren Typen gehören sowohl serielle (RS-232, PS/2-Schnittstelle für Tastatur und Maus, Apple Desktop Bus), parallele (Centronics-Schnittstelle) als auch analoge (Gameport) Schnittstellen. Die alten Schnittstellen werden auf manchen Rechner-Hauptplatinen und Notebooks teils noch immer angeboten, auch wenn entsprechende Geräte nicht mehr im Handel erhältlich sind. Alte Geräte mit solchen Anschlüssen, wie serielle 56k-Modems oder parallele Drucker sind aber vielerorts noch vorhanden. Im industriellen Bereich wird noch oft RS-232 über ältere PCs oder Adapterkarten eingesetzt, da entsprechende USB-Adapter nicht echtzeitfähig sind und Peripheriegeräte in diesem Umfeld wesentlich langlebiger sind. Mittlerweile hat USB auch externe SCSI-Schnittstellen weitgehend verdrängt.

Im Vergleich zu den früheren Lösungen bietet USB deutlich höhere Datenübertragungsraten. Die Daten werden jedoch in Paketen übertragen, für manche zeitkritische Anwendungen ist es deshalb weniger geeignet – etwa bei mit nur wenigen Bytes belegten Paketen, die die Übertragungsrate senken, oder wenn das Sammeln von Bytes zum Füllen eines Pakets die Übertragung verzögern würde.

Bereits seit der Einführung der USB-2.0-Spezifikation sind relativ hohe Datenübertragungsraten möglich, dadurch wurde USB für den Anschluss weiterer Gerätearten wie Festplatten, TV-Schnittstellen und Fotokameras geeignet. Bei externen Massenspeicherlösungen steht USB in Konkurrenz zu FireWire und eSATA und hat diese zumindest im Heimbereich fast vollständig verdrängt.

Über USB können auch universelle zusätzliche Faktoren für die Zwei-Faktor-Authentifizierung mit Betriebssystemen oder Webbrowsern kommunizieren, wie zum Beispiel Security-Tokens für den offenen U2F-Standard.

Geschichte und Entwicklung[Bearbeiten]

USB-2.0-PCI-Erweiterungskarte
Altes USB-Logo

Der universelle serielle Bus (USB 1.0) wurde von einem Firmenkonsortium Compaq, Hewlett-Packard, IBM, Microsoft, NEC u.a. entwickelt und 1996 im Markt eingeführt. Einen wichtigen Beitrag hierzu leistete das Entwicklungsteam um Ajay Bhatt bei Intel. Er war zum Anschluss von Peripheriegeräten an PCs konzipiert und sollte die Nachfolge einer ganzen Reihe damals verwendeter PC-Schnittstellen antreten und diese vereinheitlichen. Deshalb war die USB-Spezifikation nicht auf Tastatur und Maus begrenzt, sondern schloss auch andere Peripheriegeräte wie Drucker und Scanner mit ein. Massenspeicher – wie etwa Festplatten – wurden zwar von USB 1.0 unterstützt, wegen der maximalen Datenrate von 12 Mbit/s waren sie dafür aber nur sehr eingeschränkt zu gebrauchen.

Als einer der ersten Chipsätze unterstützte 1996 der ursprünglich für den Pentium Pro entwickelte und später für den Pentium II verwendete 440FX das USB-Protokoll, was vor Einführung der ATX-Mainboards jedoch kaum bis gar nicht beworben wurde. Die Hauptursache dafür dürfte zum einen in der mangelhaften beziehungsweise fehlenden Unterstützung von USB durch die damals verbreiteten Betriebssysteme Windows 95 und Windows NT 4.0 gelegen haben, zum anderen waren in der Anfangszeit auch kaum USB-Geräte verfügbar.

Ende 1998 folgte die überarbeitete Spezifikation USB 1.1, die in erster Linie Fehler und Unklarheiten in der 1.0-Spezifikation behob und den Interrupt Out Transfer hinzufügte. Die Geschwindigkeit erhöhte sich nicht. USB 1.x war deshalb keine Konkurrenz zu Apples FireWire-Standard (IEEE 1394), der von Anfang an (1995) eine Datenrate von bis zu 400 Mbit/s hatte und im April 2003 auf bis zu 800 Mbit/s beschleunigt wurde. Dennoch setzte Apple die Schnittstelle in der Revision USB 1.1 mit der Entwicklung des iMac ein. Mit diesem beginnend ersetzte Apple damit den hauseigenen ADB.

Im Jahr 2000 wurde USB 2.0 spezifiziert, was vor allem eine weitere Datenrate von 480 Mbit/s hinzufügte und so den Anschluss von Festplatten oder Videogeräten ermöglichte. Produkte dafür erschienen jedoch erst ab 2002 am Markt.

2008 wurden die neuen Spezifikationen für USB 3.0 SuperSpeed vorgestellt, die mit einer Datenrate von 5 Gbit/s beworben wird. Diese Datenrate ist allerdings die Datenrate des verwendeten Leitungscodes 8b10b, mit dem ein 8-Bit-Byte in einem 10-Bit-Symbol codiert wird. Auf Grund dessen ergibt sich eine maximale Brutto-Datentransferrate von 4 Gbit/s. Die theoretisch maximal mögliche Netto-Datenrate liegt noch einmal etwas unter der Brutto-Datenrate. Mit dieser Spezifikation werden auch neue Stecker, Kabel und Buchsen eingeführt, die teilweise mit den alten kompatibel sind.[3]

Die ersten Mainboards und Geräte mit USB 3.0 zogen 2011 in den Massenmarkt ein. Im selben Jahr veröffentlichte Intel zusammen mit Apple die Thunderbolt-Schnittstelle in direkter Konkurrenz. Thunderbolt ist dabei 2,5× so schnell wie USB 3.0, Thunderbolt 2 sogar 5× so schnell (2× 10 Gbit/s statt 4 GBit/s) und bietet darüber hinaus ein mitgeschleiftes DisplayPort-Signal (was sich allerdings die Bandbreite mit Thunderbolt 2 teilen muss).

Im Juli 2013 verkündete die USB Promoters Group die Fertigstellung der USB 3.1-Spezifikation. Sie beinhaltet eine Geschwindigkeitsverdopplung gegenüber USB 3.0 auf 10 Gbit/s brutto.[4]

Spannungsversorgung[Bearbeiten]

Bis USB 3.0[Bearbeiten]

Neben dem Datenprotokoll spezifiziert der USB-Standard die bereitgestellte Spannung und Stromstärke:

  • 4,40 V bis 5,50 V an einem Low Powered Port (100 mA)[5]
  • 4,75 V bis 5,50 V an einem High Powered Port (500 mA)
  • 4,45 V bis 5,50 V an einem USB 3.0-Port (900 mA)[6]

Am Ausgang des USB-Hosts muss die Spannung zwischen 4,75 V und 5,25 V liegen. Allerdings ist ein Spannungsabfall bis auf 4,40 V am Ende eines USB-Kabels zulässig; hinter einem passiven USB-Hub sind sogar 4,00 V erlaubt.

Erst nach Freigabe durch den Host-Controller darf ein Gerät mehr als die bei einem Low Powered Port erlaubten 100 mA, aber nicht mehr als 500 mA (bis USB 2.0) bzw. 900 mA (USB 3.0[6]) Strom beziehen. In der Praxis bleibt eine kurzzeitige Überlastung eines USB-Ports meist folgenlos.

Externe 1,8″-Festplatten benötigen typischerweise Betriebsströme um 150 mA und Anlaufströme um 400 mA. Da dies innerhalb der o.g. Werte liegt, können solche Festplatten problemlos versorgt werden. Externe 2,5″-Festplatten benötigen typischerweise Betriebsströme von 250 mA bis 400 mA (Stand: 2010) und Anlaufströme von 600 mA bis 1100 mA. Obwohl die Ströme hier den nach Spezifikation zulässigen Wert überschreiten können, funktioniert der Betrieb solcher Stromverbraucher in der Praxis meist trotzdem, da die Ports nur kurzzeitig überlastet werden. Bei Problemen mit besonders stromhungrigen Festplatten behalf man sich bis ca. 2010 oft dadurch, den Verbraucher über ein (laut USB-Spezifikation nicht zulässiges) Y-Kabel von einem zweiten Port zusätzlich mit Strom versorgen zu lassen, oder die Festplatten verfügten über einen separaten Betriebsspannungseingang. Externe 3,5″-Festplatten benötigen typischerweise noch höhere Ströme und außerdem eine zweite Betriebsspannung von 12 V. Daher können sie erst mittels der Typ-C-Steckverbindung von USB 3.1 (siehe unten) spezifikationskonform über einen USB-Port mit Strom und Spannung versorgt werden.

In der EU-Initiative für einheitliche Mobiltelefon-Lade/Netzgeräte,[7][8] welche sich im Wesentlichen an die 2009 in Version 1.1 erschienene USB „Battery Charging Specification“[9] anlehnt, ist auch ein USB-Lademodus mit einem Ladestrom zwischen 500 und 1500 mA spezifiziert; dieser Lademodus wird mittels Kennung in der Datenleitung aktiviert.

USB 3.1 mit Typ-C-Steckverbindung[Bearbeiten]

Über eine USB Typ-C-Steckverbindung lassen sich Geräte mit einer Leistungsaufnahme bis 100 W ohne zusätzliche Stromversorgung betreiben, z. B. Monitore, Tintenstrahldrucker und Aktivboxen. Verschiedene Profile definieren die möglichen Stromstärken (bis 5,0 A) und Spannungen. Zusätzlich zur bisher üblichen Spannung von 5 V sind 12 V und 20 V möglich.[10]

Profile 1: 5 V @ 2,0 A
Profile 2: 5 V @ 2,0 A; 12 V @ 1,5 A
Profile 3: 5 V @ 2,0 A; 12 V @ 3,0 A
Profile 4: 5 V @ 2,0 A; 12 V und 20 V @ 3,0 A
Profile 5: 5 V @ 2,0 A; 12 V und 20 V @ 5,0 A

Übertragungstechnik/Spezifikation[Bearbeiten]

Host-Controller[Bearbeiten]

Die Kommunikation bei USB wird von einem Host-Controller gesteuert, der heute in der Regel auf dem Motherboard eines Computers verbaut ist. Nur dieser kann Daten von einem Gerät lesen oder zu einem Gerät senden (Ausnahme: siehe USB On-the-Go). Ein Gerät darf nur dann Daten zum Host-Controller senden, wenn es von diesem abgefragt wird. Bei zeitkritischen Datenströmen, wie etwa bei Mausbewegungen, muss der Hostcontroller von sich aus häufig genug beim Gerät anfragen (Polling), ob es Daten senden will, um ein Ruckeln zu verhindern.

Die USB-Controller-Chips in den PCs halten sich an einen von vier etablierten Standards. Diese unterscheiden sich in ihrer Leistungsfähigkeit und der Implementierung von bestimmten Funktionen. Für ein USB-Gerät sind die verwendeten Controller (fast) vollständig transparent, allerdings ist es für den Benutzer des PC mitunter wichtig, feststellen zu können, welche Art Chip der Rechner verwendet, um den korrekten Treiber auswählen zu können.

Universal Host Controller Interface
UHCI wurde im November 1995 von Intel spezifiziert. Die aktuelle Version des Dokuments trägt die Revisionsnummer 1.1. UHCI-Chips bieten Unterstützung für USB-Geräte mit 1,5 oder 12 Mbit/s Datenrate im Low- oder Full-Speed-Modus. Sie werden ausschließlich von den Herstellern Intel und VIA Technologies gebaut.
Open Host Controller Interface
OHCI ist eine Spezifikation, die gemeinsam von Compaq, Microsoft und National Semiconductor entwickelt wurde. Version 1.0 des Standards wurde im Dezember 1995 veröffentlicht, die aktuelle Fassung trägt die Versionsnummer 1.0a und stammt von September 1999. Ein OHCI-Controller hat prinzipiell die gleichen Fähigkeiten wie seine UHCI-Pendants, erledigt aber mehr Aufgaben in Hardware und ist dadurch marginal schneller als ein UHCI-Controller. Dieser Unterschied bewegt sich meist in Bereichen, die gerade noch messbar sind, daher kann man ihn in der Praxis vernachlässigen; Mainboard- bzw. Treiberentwickler müssen ihn jedoch berücksichtigen. Bei USB-Controllern auf Hauptplatinen mit Chipsätzen, die nicht von Intel oder VIA stammen, und auf USB-PCI-Steckkarten mit Nicht-VIA-Chipsätzen handelt es sich mit hoher Wahrscheinlichkeit um OHCI-Controller.
Enhanced Host Controller Interface
EHCI stellt USB-2.0-Funktionen bereit. Es wickelt dabei nur die Übertragungen im Hi-Speed-Modus (480 Mbit/s) ab. Wenn man USB-1.1-Geräte an einen Port mit EHCI-Chip steckt, reicht der EHCI-Controller den Datenverkehr an einen hinter ihm liegenden UHCI- oder OHCI-Controller weiter (alle Controller sind typischerweise auf demselben Chip). Wenn kein EHCI-Treiber verfügbar ist, werden Hi-Speed-Geräte ebenfalls an den USB-1.1-Controller durchgereicht und arbeiten dann, soweit möglich, mit langsamerer Geschwindigkeit.
Extensible Host Controller Interface
Die xHCI-Spezifikation 1.0 wurde im Mai 2010 von Intel veröffentlicht[11] und stellt zusätzlich zu den mit USB 2.0 verfügbaren Übertragungsgeschwindigkeiten den SuperSpeed-Modus mit 4,0 Gbit/s (9,7 Gbit/s bei USB 3.1) bereit.

Einstellungen und Schnittstellen[Bearbeiten]

Intern adressiert der USB-Controller die angeschlossenen Geräte mit einer sieben Bit langen Kennung, wodurch sich die theoretische Obergrenze der 127 anschließbaren Geräte ergibt. Wenn an einem Port neue Geräte detektiert werden, schaltet der Host-Controller diesen ein und sendet dem angeschlossenen Gerät einen Reset, indem er beide Datenleitungen für mindestens 10 ms auf Massepotential legt.[12] Dadurch belegt das Gerät zunächst die Adresse 0 und bekommt dann vom Host eine eindeutige Adresse zugeteilt. Da immer nur ein Port mit noch nicht konfiguriertem Gerät aktiviert wird, kommt es zu keinen Adresskollisionen.

Der Host-Controller fragt meist zuerst nach einem Device-Deskriptor, der unter anderem die Hersteller- und Produkt-ID enthält. Mit weiteren Deskriptoren teilt das Gerät mit, welche alternativen Konfigurationen es besitzt, in die es von seinem Gerätetreiber geschaltet werden kann. Bei einer Webcam könnten diese Alternativen etwa darin bestehen, ob die Kamera eingeschaltet ist oder ob nur das Mikrofon läuft. Für den Controller ist dabei relevant, dass die unterschiedlichen Konfigurationen auch Unterschiede in der Leistungsaufnahme mit sich bringen können.

Innerhalb einer Konfiguration kann das Gerät verschiedene Schnittstellen definieren, die jeweils über einen oder mehrere Endpunkte verfügen. Unterschiedlicher Bedarf an reservierter Datenrate wird über sogenannte Alternate Settings signalisiert. Ein Beispiel dafür ist eine Kamera (etwa eine Webcam), die Bilder in zwei verschiedenen Auflösungen senden kann. Das Alternate Setting 0 wird aktiviert, wenn ein Gerät keine Daten übertragen möchte und somit pausiert.

Geräteklassen[Bearbeiten]

Damit nicht für jedes Gerät ein eigener Treiber nötig ist, definiert der USB-Standard verschiedene Geräteklassen, die sich durch generische Treiber steuern lassen. Auf diese Weise sind USB-Tastaturen, -Mäuse, USB-Massenspeicher, Kommunikations- („Communications Device Class“, kurz: CDC) und andere Geräte mit ihren grundlegenden Funktionen sofort verwendbar, ohne dass zuvor die Installation eines spezifischen Treibers notwendig ist. Herstellerspezifische Erweiterungen (die dann einen eigenen Treiber erfordern) sind möglich. Die Information, zu welchen Geräteklassen sich ein Gerät zählt, kann im Device-Deskriptor (wenn das Gerät nur einer Klasse angehört) oder in einem Interface-Deskriptor (bei Geräten, die zu mehreren Klassen gehören) untergebracht werden.

USB-Geräteklassen[13]
Klasse Verwendung Beschreibung Beispiele
00h Gerät Composite Device Die Klasse wird auf Ebene der Interface-Deskriptoren definiert
01h Interface Audio Lautsprecher, Mikrofon, Soundkarte, MIDI
02h Beides Kommunikation und CDC-Steuerung Modem, Netzwerkkarte, Wi-Fi-Adapter
03h Interface Human Interface Device Tastatur, Maus, Joystick etc.
05h Interface Physical Interface Device Physikalisches Feedback, etwa für Force-Feedback-Joysticks
06h Interface Bilder Digitalkamera, Scanner
07h Interface Drucker Laserdrucker, Tintenstrahldrucker
08h Interface Massenspeicher USB-Stick, Festplatten, Speicherkarten-Lesegeräte, MP3-Player
09h Gerät USB-Hub Full Speed Hub, Hi-Speed Hub
0Ah Interface CDC-Daten diese Klasse wird zusammen mit Klasse 02h verwendet
0Bh Interface Chipkarte Chipkarten-Lesegerät
0Dh Interface Content Security Finger-Print-Reader
0Eh Interface Video Webcam
0Fh Interface Personal Healthcare Pulsuhr
10h Interface Audio/Video Devices AV-Streaming-Geräte
DCh Beides Diagnosegerät USB-Compliance-Testgerät
E0h Interface kabelloser Controller Bluetooth-Adapter, Microsoft RNDIS
EFh Beides Diverses ActiveSync-Gerät
FEh Interface softwarespezifisch IrDA-Brücke
FFh Beides herstellerspezifisch der Hersteller liefert einen Treiber mit

Übertragungsmodi[Bearbeiten]

Der USB bietet den angeschlossenen Geräten verschiedene Übertragungsmodi an, die diese für jeden einzelnen Endpunkt festlegen können.

Endpunkte / Endpoint[Bearbeiten]

USB-Geräte verfügen über eine Anzahl von durchnummerierten „Endpunkten“, gewissermaßen Unteradressen des Gerätes. Die Endpunkte sind in den Geräten hardwareseitig vorhanden und werden von der USB SIE (Serial Interface Engine) bedient. Über diese Endpunkte können voneinander unabhängige Datenströme laufen. Geräte mit mehreren getrennten Funktionen (Webcams, die Video und Audio übertragen) haben mehrere Endpunkte. Die Übertragungen von und zu den Endpunkten erfolgen meist unidirektional, für bidirektionale Übertragungen ist deshalb ein IN- und ein OUT-Endpunkt erforderlich (IN und OUT beziehen sich jeweils auf die Sicht des Hostcontrollers). Eine Ausnahme davon sind Endpunkte, die den sogenannten Control Transfer Mode verwenden.

In jedem USB-Gerät muss ein Endpunkt mit Adresse 0 vorhanden sein, über den die Erkennung und Konfiguration des Gerätes läuft, darüber hinaus kann er auch noch weitere Funktionen übernehmen. Endpunkt 0 verwendet immer den Control Transfer Mode. Ein USB-Gerät darf maximal 31 Endpunkte haben: Den Control-Endpunkt (der eigentlich zwei Endpunkte zusammenfasst) und je 15 In- und 15 Out-Endpunkte. Low Speed-Geräte sind auf Endpunkt 0 plus maximal zwei weitere Endpunkte im Interrupt Transfer Mode mit maximal 8 Bytes pro Transfer beschränkt.

Isochroner Transfer[Bearbeiten]

Der isochrone Transfer ist für Daten geeignet, die eine garantierte Datenrate benötigen. Diese Transferart steht für Full-Speed- und Hi-Speed-Geräte zur Verfügung. Definiert das sogenannte Alternate Setting einen Endpunkt mit isochronem Transfer, so reserviert der Host-Controller-Treiber die erforderliche Datenrate. Steht diese Datenrate nicht zur Verfügung, so schlägt die Aktivierung des genannten Alternate Settings fehl, und es kann mit diesem Gerät keine isochrone Kommunikation aufgebaut werden.

Die erforderliche Datenrate ergibt sich aus dem Produkt des Abfrageintervalls und der Größe des Datenpuffers. Full-Speed-Geräte können jede Millisekunde bis zu 1023 Bytes je isochronem Endpunkt übertragen (1023 Kbyte/s), Hi-Speed-Geräte können bis zu drei Übertragungen je Micro-Frame (125 µs) mit bis zu 1024 Bytes ausführen (24 Mbyte/s). Stehen in einem Gerät mehrere isochrone Endpunkte zur Verfügung, erhöht sich die Datenrate entsprechend. Die Übertragung ist mit einer Prüfsumme (CRC16) gesichert, wird aber bei einem Übertragungsfehler durch die Hardware nicht wiederholt. Der Empfänger kann erkennen, ob die Daten korrekt übertragen wurden. Isochrone Übertragungen werden zum Beispiel von der USB-Audio-Class benutzt, die bei externen USB-Soundkarten Verwendung findet.

Interrupt-Transfer[Bearbeiten]

Maus mit USB-Anschluss

Interrupt-Transfers dienen zur Übertragung von kleinen Datenmengen, die zu nicht genau bestimmbaren Zeitpunkten verfügbar sind. Im Endpoint Descriptor teilt das Gerät mit, in welchen maximalen Zeitabständen es nach neuen Daten gefragt werden möchte. Das kleinstmögliche Abfrageintervall beträgt bei Low Speed 10 ms, bei Full Speed 1 ms und bei Hi-Speed bis zu drei Abfragen in 125 µs. Bei Low Speed können pro Abfrage bis zu 8 Byte, bei Full Speed bis zu 64 Byte und bei Hi-Speed bis zu 1024 Byte übertragen werden. Daraus ergeben sich maximale Datenraten von 800 byte/s bei Low Speed, 64 kbyte/s bei Full Speed und bis zu 24 Mbyte/s bei Hi-Speed. Die Daten sind mit einer Prüfsumme (CRC16) gesichert und werden bei Übertragungsfehlern bis zu dreimal durch die Hardware wiederholt. Geräte der HID-Klasse (Human Interface Device), zum Beispiel Tastaturen, Mäuse und Joysticks, übertragen die Daten über den Interrupt-Transfer.

Bulk-Transfer[Bearbeiten]

Bulk-Transfers sind für große und nicht zeitkritische Datenmengen gedacht, wie beispielsweise das Lesen oder Schreiben von Dateien auf einer USB-Festplatte. Diese Transfers sind niedrig priorisiert und werden vom Controller durchgeführt, wenn alle isochronen und Interrupt-Transfers abgeschlossen sind und noch Datenrate übrig ist. Bulk-Transfers sind durch eine Prüfsumme (CRC16) gesichert und werden durch die Hardware bis zu dreimal wiederholt. Low Speed-Geräte können diese Transferart nicht benutzen. Full-Speed-Geräte benutzen Puffer-Größen von 8, 16, 32 oder 64 Bytes. Hi-Speed-Geräte verwenden immer einen 512 Byte großen Puffer.

Control-Transfer[Bearbeiten]

Control-Transfers sind eine besondere Art von Datentransfers, die einen Endpunkt erfordern, der sowohl In- als auch Out-Operationen durchführen kann. Control-Transfers werden generell in beide Richtungen bestätigt, so dass Sender und Empfänger immer sicher sein können, dass die Daten auch angekommen sind. Daher wird der Endpunkt 0 im Control-Transfer-Modus verwendet. Control-Transfers sind zum Beispiel nach dem Detektieren des USB-Geräts und zum Austausch der ersten Kommunikation elementar wichtig.

Datenraten[Bearbeiten]

Logo für USB-Low-Speed- oder -Full-Speed-zertifizierte Geräte
Logo für USB-Hi-Speed-zertifizierte Geräte
Logo für USB-Hi-Speed-OTG-Geräte

USB erlaubt es einem Gerät, Daten mit 1,5 Mbit/s (Low Speed), 12 Mbit/s (Full Speed), 480 Mbit/s (Hi-Speed), 4 Gbit/s (SuperSpeed) oder 9,7 Gbit/s (Superspeed+) zu übertragen.

Diese Raten basieren auf dem Systemtakt der jeweiligen USB-Geschwindigkeit und stellen die physikalische Datenübertragungsrate dar. Die Toleranzen werden für USB-2.0-Geräte und für die älteren USB-1.0-/1.1-Geräte getrennt behandelt. Der tatsächliche Datendurchsatz liegt – durch Protokoll-Overhead – darunter. Im USB-Standard ist für USB 2.0 eine maximale theoretische Datenlast bei Hi-Speed unter idealen Bedingungen von 49.152.000 Byte/s (Isochronous Mode)[14] beziehungsweise 53.248.000 Byte/s (Bulk-Mode)[15] angegeben. Dazu kommt die Verwaltung der Geräte, so dass bei aktuellen Systemen für USB 2.0 eine nutzbare Datenrate in der Größenordnung von 320 Mbit/s (40 MB/s) und für USB 3.0 2400 Mbit/s (300 MB/s)[16] bleibt. Bei älteren Systemen wurde diese durch eine unzureichende Anbindung des USB-Chips an den Systembus zusätzlich reduziert.

Name möglich
ab
Brutto-
Datenrate
Symbolrate
Modulation[17][18]
Toleranz
USB
1.0/1.1
USB
2.0
USB
3.0
USB
3.1
Low Speed USB 1.0 1,5 Mbit/s
(187,5 kByte/s)
1,5 MBd
NRZI-Code mit Bit-Stuffing
±1,5 % ±0,05 %  ?  ?
Full Speed USB 1.0 12 Mbit/s
(1,5 MByte/s)
12 MBd
NRZI-Code mit Bit-Stuffing
±0,25 % ±0,05 %  ?  ?
Hi-Speed USB 2.0 480 Mbit/s
(60 MByte/s)
480 MBd
NRZI-Code mit Bit-Stuffing
±0,05 %  ?  ?
SuperSpeed USB 3.0 4000 Mbit/s
(500 MByte/s)
5000 MBd
8b10b-Code
 ?  ?
SuperSpeed + USB 3.1 9697 Mbit/s
(1212 MByte/s)
10000 MBd
128b132b-Code
 ?

USB On-the-go[Bearbeiten]

Eine direkte Kommunikation zwischen USB-Geräten, also ohne Beteiligung des zentralen Host-Controllers, war im USB-Standard ursprünglich nicht vorgesehen; diese wurde erst durch die Erweiterung USB On-the-go eingeschränkt ermöglicht.

Durch USB On-the-go (OTG) können entsprechend ausgerüstete Geräte kommunizieren, indem eines der beiden eine eingeschränkte Host-Funktionalität übernimmt. Typische Einsatzgebiete von USB OTG sind die Verbindung von Digitalkamera und Drucker oder der Austausch von Musikdateien zwischen zwei MP3-Spielern.

Auch bei USB OTG ist die Kommunikation zentral von einem Host gesteuert. Im Gegensatz dazu bieten andere Kommunikationsmechanismen, etwa der FireWire-Standard, der für ähnliche Einsatzzwecke wie USB geschaffen wurde und mit diesem in Konkurrenz steht, die Möglichkeit einer Peer-to-Peer-Kommunikation zwischen Geräten ohne Beteiligung eines zentralen Hosts. Dies bietet etwa die Möglichkeit, ein Netzwerk aufzubauen.

Gekennzeichnet werden USB-OTG-Produkte durch das USB-Logo mit zusätzlichem grünem Pfeil auf der Unterseite und weißem „On-The-Go“-Schriftzug. Die USB-OTG-Spezifikation wurde am 18. Dezember 2001 verabschiedet. OTG-Geräte sind zum Beispiel die seit November 2007 erhältlichen Nokia-Telefone 6500c, N8, C7, N810, 808 PureView, das Samsung Galaxy S II[19] und andere Android-Smartphones, sowie einige externe Festplatten zum direkten Anschluss an Digitalkameras.

Wireless USB[Bearbeiten]

Hauptartikel: Wireless USB
Logo für die zertifizierten Geräte aus dem Intel-Wireless-USB-Projekt

Momentan besetzen zwei Initiativen den Begriff „Wireless USB“. Die ältere der beiden wurde von dem Unternehmen Cypress initiiert, mittlerweile ist Atmel als zweiter Chiphersteller auf den Zug aufgesprungen. Das „Cypress-WirelessUSB“-System ist eigentlich kein drahtloses USB, sondern eine Technik, um drahtlose Endgeräte zu bauen, die dann über einen am USB angeschlossenen Empfänger/Sender (Transceiver) mit dem Computer verbunden sind. Dazu wird eine Übertragungstechnik im lizenzfreien 2,4-GHz-Band benutzt, die Datenrate beträgt bis zu 62,5 kbit/s (neuere Chips von Cypress erreichen 1 Mbit/s) und ist damit für Eingabegeräte völlig ausreichend, für andere Anwendungen aber oft zu knapp bemessen.

Das zweite Wireless-USB-Projekt wird von der USB-IF vorangetrieben und ist wesentlich anspruchsvoller, neben Intel ist auch NEC dabei, entsprechende Chips zu entwickeln. Ziel ist es, eine Technik zu schaffen, mit der die vollen 480 Mbit/s des Hi-Speed-Übertragungsmodus drahtlos übertragen werden können. Dabei ist eine kurze Reichweite unter 10 m vorgesehen; die Übertragung soll auf einer Ultrabreitband-Technik basieren.

Am 16. Januar 2008 gab in Deutschland die Bundesnetzagentur für die Ultrabreitband-Technik Frequenzbereiche frei.[20] Der dabei für USB vorgesehene Bereich von 6 bis 8,5 GHz ist jedoch nicht so breit wie von USB-IF spezifiziert, so dass Geräte aus anderen Ländern eventuell in Deutschland nicht verwendet werden dürfen.[21]

USB 3.0[Bearbeiten]

Im November 2008 stellte das USB Implementers Forum, dem unter anderem die Unternehmen Hewlett-Packard, Microsoft und Intel angehören, die Spezifikation für USB 3.0 vor. Im SuperSpeed-Modus wird eine Symbolrate von 5 Gbit/s verwendet, was aufgrund der verwendeten ANSI-8b10b-Kodierung eine Bruttodatenrate von 500 MByte/s ergibt.[22][23] Die höheren Datenraten werden im Wesentlichen durch höhere Frequenzen (ca. achtfach) auf den Datenleitungen möglich. Die Bruttodatenrate steigt dadurch von 60 MByte/s auf 500 MByte/s. Das stellt allerdings erheblich höhere Anforderungen an die Kabel. Weitere Gewinne sind durch das verbesserte USB-Protokoll sowie durch die verwendete Vollduplex-Übertragung möglich.

Die verwendeten Kabel enthalten neben dem bisherigen Signal-Adernpaar (D+ und D−) und der Stromversorgung (GND, VBUS) zwei weitere Signal-Adernpaare (SSTX+ und SSTX−, SSRX+ und SSRX−) sowie eine zusätzliche Masseverbindung (GND). Deshalb sind für USB 3.0 sowohl neue Stecker am Host und an den angeschlossenen Geräten als auch neue Kabel notwendig. Die Kabel sind auf Grund der gestiegenen Aderanzahl und der notwendigen besseren HF-Übertragungseigenschaften (ähnlich wie eSATA- oder CAT-5e-/6-Kabel) dicker und weniger flexibel.

zusätzliche Pins bei USB 3.0
Name Beschreibung
SSTX+ Datenübertragung vom Host zum Gerät
SSTX− mit SSTX+ verdrillt
GND Masse
SSRX+ Datenübertragung vom Gerät zum Host
SSRX− mit SSRX+ verdrillt

Die Kompatibilität besteht in folgendem Sinne:

  • USB-3.0-Kabel können auf Grund der Anbauten nicht mit USB-2.0-Endgeräten benutzt werden – USB 3.0-Typ-B-Stecker sind nicht abwärtskompatibel.
  • USB-3.0-Kabel können an USB-2.0-Hosts benutzt werden, erfordern dann aber USB-3.0-Endgeräte.
  • USB-2.0-Kabel können an USB-3.0-Hosts benutzt werden.
  • USB-3.0-Endgeräte können an USB-2.0-Hosts angeschlossen werden. Ggf. gibt es Probleme, wenn diese mehr als 500 mA Strom aufnehmen (USB 3.0 erlaubt bis zu 900 mA, USB 2.0 nur bis 500 mA).
  • USB-2.0-Endgeräte können an USB-3.0-Hosts angeschlossen werden.

USB-3.0-Übertragungen finden aber nur statt, wenn alle drei Komponenten (Host, Kabel, Endgerät) USB-3.0-tauglich sind. Ansonsten wird auf USB 2.0 heruntergeschaltet:

USB-Version maximal mögliche
Geschwindigkeit
Hinweise
Host Kabel Endgerät
3 3 3 SuperSpeed (USB 3)
3 2 3 Hi-Speed (USB 2)
2 oder 3 2 2
2 2 oder 3 3 Hi-Speed (USB 2) Stromaufnahme beachten!
2 oder 3 3 2  – nicht anschließbar

Mit dem Linux-Kernel ab Version 2.6.31 waren Linux-Distributionen die ersten Betriebssysteme, die USB 3.0 unterstützten.[24]

Weitere Besonderheiten:

  • Die bei den bisherigen USB-Standards übliche Reihumabfrage der Geräte (Polling) ist nicht mehr notwendig. Durch das (mögliche) Entfallen dieses dauernden Pollings und durch neue Befehle können Geräte in die Energiesparmodi U0 bis U3 geschaltet werden.
  • Am USB-3.0-Port stehen mindestens 150 mA Strom (statt 100 mA wie bei USB 2.0) pro Gerät zur Verfügung. Auf Anforderung können bis 900 mA bereitgestellt werden (USB 2.0 Low Power: 100 mA, USB 2.0 High Power: 500 mA).
  • Ältere Treiber sollen weiterverwendbar bleiben. Neuere Versionen sind aber unter Umständen vorteilhaft, etwa um die neuen Stromsparmodi zu nutzen.
  • USB-3.0-Hubs nutzen keinen Transaction Translators wie USB-2.0-Hubs (Hi-Speed). Daher hat man keinen Gewinn, wenn man mehrere USB-2.0-Geräte über einen USB-3.0-Hub an einen PC anschließt.
  • Zu Hubs siehe USB 3.0 und Hubs

Für einen späteren Zeitpunkt ist auch eine Erweiterung des Standards mit Lichtwellenleitern geplant. Anders als noch bei USB 2.0 dürfen sich Geräte nur dann „USB-3.0-kompatibel“ nennen, wenn sie tatsächlich den schnellstmöglichen Übertragungsmodus (hier SuperSpeed-Modus) anbieten.[16]

USB 3.1[Bearbeiten]

Die USB-3.1-Spezifikation beschreibt

  • eine Geschwindigkeitsverdopplung gegenüber USB 3.0 auf 10 Gbit/s brutto
  • Power Delivery, eine Funktion zum Laden von Geräten mit bis zu 100 Watt (siehe USB 3.1 mit Typ-C-Steckverbindung)
  • passive Kabel ohne integrierte Elektronik
  • einen neuen, beidseitig steckbaren Steckverbindertyp ("Typ C"), der auch Power Delivery unterstützt (siehe USB Typ-C)
  • Adapter für die älteren Buchsen zwecks Abwärtskompatibilität[25]

Laut der Video Electronics Standards Association (VESA) soll der neue USB 3.1-Anschluss auch den DisplayPort-Standard unterstützen. Damit könnten Displays mit 4K/Ultra-HD-Auflösung (3.840 × 2.160 Pixel) mit einer Bildwiederholungsrate von 60 Hz angeschlossenen werden. Verzichtet man auf die USB-3.1-Funktionalitäten und nutzt alle Datenleitungen für die Übertragung des Videosignals, ist sogar 5K-Auflösung (5.120 × 2.880 Pixel) möglich.[26]

Bemerkungen[Bearbeiten]

  • Die Eigenschreibweise variiert: Low und Full Speed werden mit Leerzeichen getrennt, Hi-Speed mit Bindestrich (und High wird verkürzt zu Hi), SuperSpeed wird zusammengeschrieben.
  • SI-Präfixe sind dezimale Präfixe: 1 kBit = 103 Bit, 1 MBit = 106 Bit, 1 GBit = 109 Bit, gleiches für Byte und Hz.
  • Bit-Stuffing: Nach 6 Eins-Bits wird 1 Null-Bit eingefügt.
  • USB 3.0 überträgt mit der Symbolrate 5 GBit/s, die effektive Datenrate nach 8b10b-Kodierung beträgt hier 4 Gbit/s (500 MByte/s). Die Bitrate ergibt sich aus der Symbolrate multipliziert mit den Bits/Symbol (0,8 bei 8b10b).
  • USB 3.1 überträgt mit der Symbolrate 10 GBit/s, die effektive Datenrate nach 128b132b-Kodierung beträgt hier 9,697 Gbit/s (1212 MByte/s). Die Bitrate ergibt sich aus der Symbolrate multipliziert mit den Bits/Symbol (0,96968 bei 128b132b).[27]
  • Die theoretisch erzielbare Nettodatenrate liegt um 11,3 Prozent (Bulk-Mode) und 18,1 Prozent (Isochron-Modus) unter der Bruttodatenrate.
  • Real erzielbare Nettodatenraten liegen um mindestens 30 Prozent, meist aber um die 45 Prozent unter der Bruttodatenrate (reale Messungen an USB-2.0-Systemen).

Wird die Schnittstelle eines Geräts mit „USB 2.0“ angegeben, heißt das nicht unbedingt, dass dieses Gerät auch die hohe Datenrate von 480 Mbit/s anbietet. Standpunkt der Anbieter ist dabei, dass ein USB-2.0-kompatibles Gerät grundsätzlich jede der drei Geschwindigkeiten benutzen kann und die 2.0-Kompatibilität in erster Linie bedeutet, dass die neueste Fassung der Spezifikation eingehalten wird. 480 Mbit/s dürfen also nur erwartet werden, wenn ein Gerät mit dem Logo „Certified USB Hi-Speed“ ausgezeichnet ist.

Hardware[Bearbeiten]

USB-Stecker und -Buchsen[Bearbeiten]

Die Stecker eines USB-Kabels sind verpolungs- und vertauschungssicher gestaltet.

In Richtung des Hostcontrollers (Upstream) werden flache Stecker (Typ A „DIN IEC 61076-3-107“) verwendet. Zum angeschlossenen Gerät hin (Downstream) werden die Kabel entweder fix montiert oder über annähernd quadratische Steckverbinder (Typ B „DIN IEC 61076-3-108“) angeschlossen (vereinzelt und nicht standardkonform auch mit Typ-A-Steckverbindern). Entsprechend den USB-1.0–2.0-Standards besitzen USB-Typ-A- und Typ-B-Verbinder vier Leitungen plus Schirm. Beide Steckverbinder sollen in einer der drei Farben grau, „natur“ (elfenbeinfarben/weiß) oder schwarz ausgeführt werden. Mit USB 3.0 kommen neue Varianten der Typ-A- und Typ-B-Verbinder auf den Markt (siehe unten).

Seit einiger Zeit sind auch Stecker und Buchsen vom Typ A und B mit Rändelschrauben erhältlich, die ein Herausrutschen verhindern. Allerdings muss das empfangende Gerät das auch unterstützen. Verschiedene Hersteller brachten vereinzelt mechanisch inkompatible Ausführungen von USB-Verbindern heraus, die sich jedoch elektrisch nicht von USB 1.x oder 2.0 unterscheiden, Beispiele hierzu:

  • sogenannter „UltraPort“ an einigen IBM Thinkpads
  • 10-polige Modular-Buchsen (10P10C/RJ50) an den USVs von APC
  • proprietäre USB-Verbinder an Microsofts Xbox
  • Klinkenstecker, der gleichzeitig als Audioverbinder dient, bei Apples iPod Shuffle

Für den industriellen Einsatz, insbesondere bei POS-Anwendungen wie etwa Kassensystemen, gibt es mehrere weitere USB-Stecker-Varianten mit deutlich höheren Strombelastbarkeiten von bis zu 6 A (3 A pro Kontakt). Diese Varianten wurden nicht vom USB-Konsortium standardisiert, sondern um 1999 in zum Teil lizenzpflichtigen Standards namens Retail USB, PoweredUSB, USB PlusPower oder USB +Power[28] von Firmen wie IBM, Microsoft, NCR und Berg/FCI. Technisch wird die höhere Strombelastbarkeit über vier zusätzliche Leitungen realisiert. Während clientseitig kein spezieller Stecker definiert ist (es gibt jedoch verschiedene Empfehlungen, teilweise mit unterschiedlichen HotPlug-Fähigkeiten), bestehen die Steckverbinder hostseitig aus einer Kombination aus einem mechanisch und elektrisch unveränderten USB-Typ-A-Stecker einerseits und einem hochstromfähigen vierpoligen Steckverbinder andererseits. Insgesamt sind sie ähnlich einem Stack von zwei USB-Buchsen annähernd quadratisch (siehe Abb. oben). Für die Stromsteckverbinder ist eine mechanische Arretierung zwischen Buchse und Stecker vorgesehen. Die Stromsteckverbinder gibt es in vier Varianten, wobei eine mechanische Kodierung verhindert, dass unterschiedliche Varianten zusammengesteckt werden können.

Varianten der Stromsteckverbinder
Spannung
(in Volt)
Belastbarkeit
(in Watt)
Empfohlene Farbkodierung Alternative Farbkodierung
5 30 naturfarben (teilweise auch gelb) grau
12 72 blaugrün (Pantone Teal 3262C) schwarz
19 114 violett schwarz
24/25 144 rot (Pantone Red 032C) schwarz

Micro- und Mini-USB[Bearbeiten]

Insbesondere für Geräte mit geringerem Platzangebot (digitale Kameras, Mobiltelefone, MP3-Player und andere mobile Geräte) existieren auch verschiedene kompaktere USB-Steckverbinder. Im USB-2.0-Standard verankert sind dabei lediglich fünfpolige Mini- und Micro-Varianten (plus Schirm), die gegenüber den normalen USB-Steckverbindern über einen zusätzlichen ID-Pin verfügen.

Zunächst wurde im Jahr 2000 ein trapezförmiger Mini-B-Steckverbinder für die Downstream-Seite definiert, der in der Farbe Schwarz ausgeführt werden sollte. Bei zukünftigen Geräten sollen Gerätehersteller jedoch auf die Micro-USB-Verbinder (siehe unten) ausweichen.[29] Auch Mini-A- (in weißer Farbe) und Mini-AB-Steckverbinder (in Grau) waren für eine gewisse Zeit Teil des Standards und sollten insbesondere in Verbindung mit USB On-the-Go (OTG) eine Rolle spielen, wurden jedoch im Mai 2007 offiziell zurückgezogen.[30]

Im Januar 2007 wurden mit der Standarderweiterung Micro-USB für USB 2.0 noch kleinere Steckverbinder vorgestellt, die eine besonders kompakte Bauform der Geräte ermöglichen. Die Micro-USB-Spezifikation kann USB On-the-Go (OTG) unterstützen.[31] Micro-USB-Steckverbinder sollen bei neueren Geräten in naher Zukunft den Mini-Verbinder komplett ersetzen, lediglich der relativ weitverbreitete Mini-B-Verbinder wird derzeit noch geduldet. Die Micro-USB-Verbinder sind elektrisch gleichwertig, mechanisch allerdings nicht steckkompatibel, dafür jedoch dank der im Standard geforderten Edelstahlkrampe deutlich stabiler ausgeführt. Gemäß USB-2.0-Standard gibt es drei Varianten, die genau wie bei Mini-USB allesamt fünfpolig ausgeführt sind: Micro-A (rechteckige Bauform, für die Host-Seite, Farbe Weiß), Micro-AB (rechteckige Bauform, für USB-On-the-Go-Geräte, Farbe Grau) und Micro-B (Trapez-Bauform, für die Geräteseite, Farbe Schwarz). Die Open Mobile Terminal Platform OMTP hat Micro-USB 2007 als Standardverbinder für den Datentransfer und die Energieversorgung von Mobilfunkgeräten übernommen, in China müssen Mobiltelefone seitdem mit dieser Schnittstelle ausgestattet werden, um eine Zulassung zu bekommen.[32] Mit USB 3.0 kommen neue Varianten der Micro-A-, AB- und -B-Steckverbinder auf den Markt (siehe unten).

Daneben gibt es noch eine ganze Reihe proprietäre, das heißt geräteherstellerspezifische Miniaturbauformen der Steckverbinder (siehe auch erstes Bild der Galerie), die zwar in der Regel elektrisch mit USB 2.0 kompatibel sind, jedoch nur über teilweise schwer erhältliche Adapterkabel mit USB-Komponenten gemäß dem USB-Standard verbunden werden können. Fälschlicherweise werden jedoch auch diese Steckverbinder häufig als „Mini“-USB bezeichnet, was immer wieder zu Missverständnissen führt und vermieden werden sollte. Verbreitet sind unterschiedlichste Ausführungen mit

  • vier Pins, insbesondere Varianten von Mitsumi, Aiptek, Hirose,
  • acht Pins in einer großen Zahl von Varianten, darunter mehrere inkompatible Varianten, die sich bei Digitalkameras in begrenztem Rahmen auch über Herstellergrenzen hinweg verbreitet haben
  • elf Pins für ExtUSB für HTC-Mobiltelefone; kompatibel zu Mini-USB,
  • zwölf Pins für verschiedene Olympus-Digitalkameras und
  • 14 Pins in zwei Varianten für verschiedene Fuji-Finepix-Digitalkameras und als Nokias Pop-Port für manche Mobiltelefone. Diese vereinen zusätzlich zu den USB-Signalen noch andere (bei Digitalkameras z. B. Analog-Video und -Audio) im gleichen Konnektor.[33]

Für Netzteile der Geräteklasse der Smartphones ist zur Eindämmung dieser Vielfalt seit 2011 durch die Europäische Norm EN 62684:2010 der Micro-USB-Stecker europaweit gefordert (siehe Micro-USB-Standard).

Im Rahmen des im Jahr 2008 verabschiedeten USB-3.0-Standards wurden weitere sechs Steckverbindertypen mit zusätzlichen Kontakten definiert:

Diese unterteilen sich in je drei Steckverbinder, die als weitestgehend rückwärtskompatible Erweiterungen der bisherigen Typ-A- und Typ-B-Steckverbinder angesehen werden können (genannt: USB 3.0 Standard-A, USB 3.0 Standard-B und USB 3.0 Powered-B) sowie drei kleinere Verbinder, die sich an die bisherigen Micro-USB-Verbinder anlehnen (genannt: USB 3.0 Micro-A, USB 3.0 Micro-AB und USB 3.0 Micro-B). Zur eindeutigen Kennzeichnung werden die bisherigen Steckverbinder nun als USB 2.0 Standard-A, USB 2.0 Standard-B, USB 2.0 Micro-A, USB 2.0 Micro-AB und USB 2.0 Micro-B bezeichnet. Zur besseren Unterscheidung sollen die USB-3.0-Standard-A-Verbinder in der Farbe Blau (Pantone 300C) ausgeführt und gegebenenfalls mit einem doppelten S-Symbol gekennzeichnet werden.

USB Typ-C[Bearbeiten]

Im August 2014 wurde die Spezifikation für eine neue, zur bisherigen Hardware inkompatible Typ-C-Steckverbindung verabschiedet.[34] Die neue Steckverbindung hat keine definierte Ober- und Unterseite mehr und kann somit verdrehsicher in beiden möglichen Orientierungen eingesteckt werden.[35][36] Zudem unterstützt sie alle bisherigen Übertragungsspezifikationen inklusive USB 3.1 (also bis zu 10 GBit/s) und USB Power Delivery (maximal 100 W[37]). Ein weiterer Vorteil der Typ-C-Steckverbindung ist die Flachheit und geringe Breite der Buchse von 8,4 mm, verglichen mit ca. 12,4 mm bei einer USB-3.0-Micro-B-Buchse, wie sie heute bei praktisch allen externen USB-3.0-Festplatten zum Einsatz kommt. Die Typ-C-Steckverbindung ist damit auch besser für portable Geräte wie Smartphones, Tablets oder Digitalkameras geeignet, die zuvor aus Platzgründen meist die USB-2.0-Micro-B-Buchse verwendeten.

Apple stellte am 9. März 2015 das neue MacBook vor, welches ebenso wie das am 7. Januar 2015 veröffentlichte Nokia N1[38] über einen USB-Typ-C-Anschluss verfügt. Am 11. März folgt Google darauf mit der Vorstellung des neuen Chromebook Pixel, welches neben zwei herkömmlichen Typ-A-Buchsen auch über zwei USB-Typ-C-Anschlüsse verfügt. Auch das Hewlett-Packard Pavilion x2 besitzt einen USB-Typ-C-Anschluss, sowie einen regulären USB-2.0-Anschluss.[39] Auf der Computex 2015 stellte Asus ein neues Netbook-Modell mit USB-Typ-C-Anschluss vor, welches jedoch noch nicht auf dem Markt erschienen ist.[40] Darüber hinaus gibt es auch bereits erste Adapter und passendes Zubehör, wie z. B. externe Festplatten.[41]

Spezifikationen[Bearbeiten]

Mögliche Steckkombinationen (mechanisch unterstützt)
Buchse-Typ Stecker-Typ
USB 2
Standard
A
USB 3
Standard
A
USB 2
Standard
B
USB 3
Standard
B
USB 3
Powered
B
USB 2
Mini
A
USB 2
Mini
B
USB 2
Micro
A
USB 3
Micro
A
USB 2
Micro
B
USB 3
Micro
B
USB 3.1
Typ
C
USB Std A.svg USB 3.0 Std A.svg USB Std B.svg USB 3.0 B plug.png [Grafik fehlt] USB Mini A.svg USB Mini B.svg USB Micro A.svg [Grafik fehlt] USB Micro B.svg USB 3.0 Micro B plug.svg USB-Type-C.svg
USB 2 Standard-A USB Type-A receptacle.svg ✔ Ja ✔ Ja ✘ Nein ✘ Nein ✘ Nein ✘ Nein
USB 3 Standard-A [Grafik fehlt] ✔ Ja ✔ Ja
USB 2 Standard-B USB Type-B receptacle.svg ✘ Nein ✔ Ja ✘ Nein ✘ Nein
USB 3 Standard-B [Grafik fehlt] ✔ Ja ✔ Ja ✘ Nein
USB 3 Powered-B [Grafik fehlt] ✔ Ja ✔ Ja ✔ Ja
USB 2 Mini-AB USB Mini-AB receptacle.svg ✘ Nein ✔ Ja ✔ Ja ✘ Nein
USB 2 Mini-B USB Mini-B receptacle.svg ✘ Nein ✔ Ja
USB 2 Micro-AB USB Micro-AB receptacle.svg ✘ Nein ✘ Nein ✔ Ja ✘ Nein ✔ Ja ✘ Nein
USB 3 Micro-AB [Grafik fehlt] ✔ Ja ✔ Ja ✔ Ja ✔ Ja
USB 2 Micro-B USB Micro B receptacle.svg ✘ Nein ✘ Nein ✔ Ja ✘ Nein
USB 3 Micro-B [Grafik fehlt] ✘ Nein ✘ Nein ✔ Ja ✔ Ja
USB 3.1 Typ C [Grafik fehlt] ✘ Nein ✔ Ja
Geforderte Anzahl an Steckzyklen
Anschlusstyp USB-Version Mindestanzahl der Steckzyklen
Standard-USB USB 1.0–2.0 500×, später 1500×
Standard-USB USB 3.0 Standard Class: 1500×, High Durability Class: 5000×
Mini-USB USB 2.0 5000×
Micro-USB USB 2.0–3.0 10000×
USB-C USB 2.0–3.1 10000×[42]
Zum Vergleich:
eSATA 5000×
Firewire/IEEE 1394 1500×
Abmessungen (in mm) und Kombinationsmöglichkeiten
Stecker Steckerabmessungen passende
Buchsen
erlaubte
Kabeltypen
A Typ A A → Stecker B
→ Stecker Mini-B
→ Stecker Micro-B
B Typ B B → Stecker A
USB 3.0 B USB 3.0 Typ B USB 3.0 B → Stecker USB 3.0 A
→ Stecker A
Mini-B Typ Mini-B Mini-B → Stecker A
Micro-A Typ Micro-A Micro-AB → Stecker Micro-B
→ Buchse A (als Adapter)
Micro-B Typ Micro-B Micro-B
Micro-AB
USB 3.0 Micro-B
→ Stecker A
→ Stecker Micro-A
USB 3.0 Micro-B Typ USB 3.0 Micro-B USB 3.0 Micro-B → Stecker USB 3.0 A
→ Stecker USB 3.0 Micro-A[43]

Verbreitet haben sich weiterhin 1×4-, 1×5- und 2×2-polige Varianten von Stiftleisten im Rastermaß 2,54 Millimeter auf PC-Mainboards, ebenso wie Doppel-USB-Verbinder mit 2×4 oder 2×5 Polen im Rastermaß 2,54 mm. Gab es zunächst mehrere zueinander inkompatible Belegungsvarianten, hat sich im Zuge neuerer Mainboard-Spezifikationen von Intel inzwischen eine bestimmte 2×5-polige Belegung etabliert, die auch mit uDOC-Flashmodulen kompatibel ist.

USB-Kabel[Bearbeiten]

USB-Verlängerungskabel (nicht in der USB-Spezifikation)
USB-3.0-Kabel und Stecker Typ-A Kontaktbelegung

In einem USB-Kabel werden vier Adern benötigt. Zwei Adern übertragen dabei die Daten, die anderen beiden versorgen das angeschlossene Gerät mit einer Spannung von 5 V. Der USB-Spezifikation entsprechende Geräte dürfen bis zu 100 mA oder 500 mA aus dem Bus beziehen, abhängig davon, wie viel der Port liefern kann, an den sie angeschlossen werden. Geräte mit einer Leistung bis zu 2,5 W können also über den Bus versorgt werden. Je nach Kabellänge muss der Querschnitt der beiden Stromversorgungsadern angepasst sein, um den zulässigen Spannungsabfall einzuhalten; auch daher sind Verlängerungsleitungen nicht standardgemäß.

Die Kabel müssen je nach Geschwindigkeit unterschiedlich abgeschirmt werden. Kabel, die lediglich der Spezifikation Low Speed entsprechen, dürfen über keinen B-Stecker verfügen, sondern müssen fix am Gerät montiert sein oder einen herstellerspezifischen Stecker verwenden. Sie sind weniger stark abgeschirmt, kommen ohne verdrillte Adern aus und sind dadurch flexibler als Full-/Hi-Speed-Kabel. Sie sind daher gut für zum Beispiel Mäuse und Tastaturen geeignet. Die geringe Abschirmung des Kabels würde zu Problemen bei Geräten mit höheren Geschwindigkeiten führen.

Die Längen von Full-/Hi-Speed- und Low Speed-Kabeln vom Hub zum Gerät sind auf fünf beziehungsweise drei Meter begrenzt. Längere Strecken kann man überwinden, indem USB-Hubs zwischengeschaltet werden. Sogenannte USB-Repeaterkabel entsprechen in ihren Funktionen einem Bus-Powered Hub (s. u.) mit einem einzigen Downstream-Port und einem fest angeschlossenen Kabel am Upstream-Port. Da die elektrischen Auswirkungen dieser Kabel im USB-Bus denen eines Bus-Powered-USB-Hubs mit fünf Meter Kabel entsprechen, sollten bei ihrer Verwendung zusätzlich die Beschränkungen beim Kaskadieren von USB-Hubs beachtet werden.

USB arbeitet mit einem Wellenwiderstand von 90 Ω, direkte Verbindungskabel sollten daher auch in diesem Wellenwiderstandswert ausgeführt sein. Für die Überbrückung von Längen über 30 Metern werden USB-Line-Extender angeboten. Diese bestehen aus zwei Komponenten: Einem Base-Modul, das an den Computer angeschlossen wird, und einem Remote-Modul für den Anschluss des USB-Gerätes. Zur Distanzüberbrückung zwischen diesen beiden Komponenten werden meist Ethernetkabel oder Lichtleiter eingesetzt. Da sich diese Line-Extender jedoch immer auf bestimmte, nicht vom Standard vorgeschriebene Verhaltensdetails der angeschlossenen Geräte verlassen und zudem bei langen Kabelstrecken die Signallaufzeit zu Protokollverletzungen führt, ist der Einsatz dieser Geräte oft mit Problemen verbunden.

Eine andere Möglichkeit, USB-Geräte weiter entfernt vom Rechner anzuschließen, sind Lösungen, die einen „remote host“ verwenden, also einen USB-Hostcontroller, der außerhalb des PCs liegt. Dabei geschieht die Kommunikation zwischen PC und Hostcontroller zum Beispiel über Ethernet. Das Ethernet ersetzt dabei den lokalen Bus, an dem sonst der Hostcontroller angeschlossen wäre. Auf dem PC muss also nur ein entsprechender Treiber installiert werden, der die Kommunikation mit dem Hostcontroller übernimmt. Treiber für die USB-Geräte erkennen dann keinen Unterschied zu einem lokal angeschlossenen Gerät. Beispiele für ein solches Gerät sind der USB-Server von Keyspan und die USB-Fernanschlussfunktion einer FRITZ!Box.

USB-Standardstecker Typ A und B. Nicht maßstabsgetreu, mit Pinnummern
Kabelbelegung eines normalen USB-Kabels
USB-Ministecker Typ A und B. Nicht maßstabsgetreu, mit Pinnummern, Draufsicht. Es gibt noch Mini-AB-Buchsen, die sich automatisch umschalten. Mini-AB-Buchsen und Mini-A-Stecker sind aus der Spezifikation entfernt worden.

Farbkodierung und Pinouts[Bearbeiten]

Der USB-Standard legt neben der Belegung der Schnittstelle auch die Namen der einzelnen Stecker-Pins fest, für die Aderfarbe werden nur typische Angaben gemacht. Tatsächlich variieren die verwendeten Aderfarben von Hersteller zu Hersteller. Die Nummer eines Stecker-Pins kann in den oben angeführten Schemazeichnungen abgelesen werden.

Standardstecker
Pin Name Adernfarbe Beschreibung
1 VBUS Rot +5 V
2 D- Weiß Data −
3 D+ Grün Data +
4 GND Schwarz Masse

Ministecker/Microstecker
Pin Name Adernfarbe Beschreibung
1 VBUS Rot +5 V
2 D- Weiß Data −
3 D+ Grün Data +
4 ID keine erlaubt Unterscheidung von Micro-A- und Micro-B-Stecker:
  Typ A: Masse (On-The-Go [OTG]-Gerät arbeitet als Host)
  Typ B: nicht verbunden (OTG-Gerät arbeitet als Peripherie)
5 GND Schwarz Masse
Vollbeschaltetes USB 3.1 Typ-C auf Typ-C Kabel
Typ-C Stecker 1 Typ-C Kabel Typ-C Stecker 2
Pin Name Adernfarbe Name Beschreibung Pin Name
Gehäuse Schirm Schirmgeflecht Schirm Schirmgeflecht Gehäuse Schirm
A1, B1, A12, B12 GND Verzinnt GND_PWRrt1
GND_PWRrt2
Masse A1, B1, A12, B12 GND
A4, B4, A9, B9 VBUS Rot PWR_VBUS1
PWR_VBUS2
VBUS Spannung A4, B4, A9, B9 VBUS
B5 VCONN Gelb
PWR_VCONN VCONN Spannung B5 VCONN
A5 CC Blau CC Konfigurationskanal A5 CC
A6 Dp1 Weiß UTP_Dp Ungeschirmtes verdrilltes Leitungspaar, positiv A6 Dp1
A7 Dn1 Grün UTP_Dn Ungeschirmtes verdrilltes Leitungspaar, negativ A7 Dn1
A8 SBU1 Rot SBU_A Seitenbandbenutzung A B8 SBU2
B8 SBU2 Schwarz SBU_B Seitenbandbenutzung B A8 SBU1
A2 SSTXp1 Gelb * SDPp1 Geschirmtes verdrilltes Leitungspaar 1, positiv B11 SSRXp1
A3 SSTXn1 Braun * SDPn1 Geschirmtes verdrilltes Leitungspaar 1, negativ B10 SSRXn1
B11 SSRXp1 Grün * SDPp2 Geschirmtes verdrilltes Leitungspaar 2, positiv A2 SSTXp1
B10 SSRXn1 Orange * SDPn2 Geschirmtes verdrilltes Leitungspaar 2, negativ A3 SSTXn1
B2 SSTXp2 Weiß * SDPp3 Geschirmtes verdrilltes Leitungspaar 3, positiv A11 SSRXp2
B3 SSTXn2 Schwarz * SDPn3 Geschirmtes verdrilltes Leitungspaar 3, negativ A10 SSRXn2
A11 SSRXp2 Rot * SDPp4 Geschirmtes verdrilltes Leitungspaar 4, positiv B2 SSTXp2
A10 SSRXn2 Blau * SDPn4 Geschirmtes verdrilltes Leitungspaar 4, negativ B3 SSTXn2
* Adernfarben für die geschirmten verdrillten Leitungspaare sind nicht vorgeschrieben

Steckerbelegung USB Typ-C [44]

A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1
GND RX2+ RX2- VBUS SBU1 D- D+ CC VBUS TX1- TX1+ GND
GND TX2+ TX2- VBUS VCONN SBU2 VBUS RX1- RX1+ GND
B1 B2 B3 B4 B5 B6 B7 B8 B9 B10 B11 B12

USB-Hubs[Bearbeiten]

Allgemeines[Bearbeiten]

4-Port-USB-Hub mit eigener Stromversorgung (self powered, Netzteilbuchse rechts)
4-Port-USB-Hub mit Stromversorgung aus dem Bus (bus powered)

Ein USB-Hub ist ein USB-Gerät, welches das USB-Signal an mehrere Ports verteilt. Handelsüblich sind USB-Hubs mit bis zu sieben Downstream-Ports, vereinzelt sind aber inzwischen auch Hubs mit bis zu 28 Ports zu finden.[45]

Hubs können ihren Strom aus dem Bus selbst beziehen (als Bus-Powered oder passiver Hub bezeichnet) oder über eine eigene Stromversorgung verfügen (als Self-Powered oder aktiver Hub bezeichnet). Die meisten Self-Powered-Hubs werden über ein Steckernetzteil mit Strom versorgt. Manche Monitore haben auch einen USB-Hub eingebaut, der über die Stromversorgung des Monitors mitgespeist wird. Self-Powered-Hubs haben den Vorteil, dass jedes an sie angeschlossene Gerät bis zu 500 mA Strom beziehen kann. Bei Bus-Powered-Hubs dürfen der Hub und alle an ihn angeschlossenen Geräte gemeinsam maximal 500 mA beziehen. Hybride Self- und Bus-Powered-Hubs sind möglich – der Hub ist dann Self-Powered, wenn ein Netzteil an ihn angeschlossen ist, ansonsten Bus-Powered.

Bei der Verschachtelung von Hubs werden die Grenzen durch die maximal 127 möglichen USB-Geräte pro root-hub und durch die Signallaufzeit festgelegt – jeder Hub erhöht die Laufzeit, die Verschachtelungstiefe ist auf maximal fünf (Hub-)Ebenen unterhalb des Hostcontrollers beziehungsweise des Root-Hub begrenzt. Die maximale Distanz zwischen zwei mit USB verbundenen Geräten liegt wegen der Beschränkung von 5 m pro USB-Kabel bei 30 m – sechs Kabel mit je fünf Metern Länge und dazwischen fünf Hubs.

Bei integrierten Bausteinen für USB-Hubs dominiert die Ausstattung mit vier Ports (das gilt insbesondere für Bausteine in eher preisgünstigen Hubs). Wird eine größere Anzahl von USB-Anschlüssen benötigt, können mehrere Bausteine kaskadiert werden. Infolgedessen belegt ein solcher Hub mehrere USB-Adressen und ist gleichbedeutend mit mindestens zwei hintereinander geschalteten Hubs.

USB 2.0 und Hubs[Bearbeiten]

Low-, Full- und Hi-Speed-Geräte lassen sich an einem USB-2.0-Host fast beliebig mischen, ohne dass Geschwindigkeitsnachteile entstehen. Hubs nach dem USB-1.x-Standard können an USB-2.0-Hosts verwendet werden. Geräte, die direkt oder indirekt an einen solchen Hub angeschlossen werden, können allerdings lediglich die Geschwindigkeit Full Speed erreichen, also 12 Mbit/s. Ein USB-2.0-Host und ein USB-2.0-Hub kommunizieren immer mit Hi-Speed, selbst wenn an dem Hub Low- oder Full-Speed-Geräte angeschlossen sind. Es ist Aufgabe des Hubs, die Daten dieser Geräte in das Hi-Speed-Protokoll zu verpacken, dazu hat er einen oder mehrere sogenannte „Transaction Translators“ eingebaut. Die Anzahl der Transaction Translators bestimmt, wie viele langsame Geräte an einen USB-2.0-Hub angeschlossen werden können, ohne sich gegenseitig auszubremsen. Wird diese Zahl überschritten, so bricht die Datenrate aller an diesen Host angeschlossenen Low-Speed- und Full-Speed-Geräte auf Geschwindigkeiten deutlich unter denen eines USB-1.1-Hosts ein; der Durchsatz von Hi-Speed-Geräten am selben Hub bleibt jedoch unbeeinflusst. An der Spezifikation des Stromverbrauchs hat sich bei USB 2.0 im Vergleich zu USB 1.1 nichts geändert.

USB 3.0 und Hubs[Bearbeiten]

Unter USB 3.0 gibt es ein neues Hub-Konzept. Hubs bestehen aus zwei Unter-Hubs. Der eine ist speziell für den neuen SuperSpeed-Modus zuständig, der andere für die bisherigen Geschwindigkeitsmodi (Low Speed, Full Speed, Hi-Speed). Erst an den Ports werden beide Teile zusammengeführt. Im Dezember 2009 hat das Unternehmen VIA die ersten Chips für USB-3.0-Hubs vorgestellt. Der VL810 genannte Chip ist mit allen Geschwindigkeitsmodi kompatibel.[46]

USB-Card-Bus[Bearbeiten]

USB-2.0-CardBus-Controller

Der Cardbus-Standard[47] (PC Card Standard 5.0) wurde ursprünglich für PCMCIA-Karten als Datenspeichermedium entwickelt, unterscheidet sich aber vom eigentlichen PCMCIA-Standard durch eine völlig andere Architektur. Es sind auch Steckkarten mit CardBus-Controller am Markt erhältlich, die USB in CardBus umsetzen, so dass USB-Stecker beispielsweise auch an Mobilgeräten ohne integrierte USB-Schnittstelle verwendet werden können – sie sind aber auf den 32 Bit breiten CardBus beschränkt. Ein Nachrüsten bei Computern mit 16-Bit-Bus ist daher nicht möglich.[48] CardBus wurde vom neueren und leistungsfähigeren ExpressCard-Standard abgelöst.

Software-Architektur[Bearbeiten]

Alle USB-Transaktionen werden durch die USB-Software auf dem Host-Computer realisiert. Das geschieht durch den jeweiligen USB-Gerätetreiber, der mit seinem Gerät kommunizieren will. Der USB-Bustreiber ist die Schnittstelle zwischen dem USB-Gerätetreiber und dem USB-Host-Controller.

USB-Bustreiber[Bearbeiten]

Der USB-Bustreiber (USB-Driver) kennt die spezifischen Kommunikationseigenschaften der einzelnen USB-Geräte, zum Beispiel die Datenmenge pro Frame oder Abstände zwischen den periodischen Zugriffen. Er erkennt diese Eigenschaften beim Analysieren der Geräte-Deskriptoren während der Konfigurationsphase. Wenn der USB-Bustreiber ein IRP von einem USB-Gerätetreiber erhält, erzeugt er entsprechend diesem Request einzelne Transaktionen, die innerhalb des Übertragungsrahmens (Frame) von einer Millisekunde ausführbar sind.

USB-Host-Controller-Treiber[Bearbeiten]

Der Universal-Serial-Bus-Host-Controller-Treiber (host controller driver) organisiert die zeitliche Abfolge der einzelnen Transaktionen (Scheduling). Dazu baut er eine Folge von Transaktionslisten auf. Jede dieser Listen besteht aus den noch nicht abgearbeiteten Transaktionen in Richtung eines Gerätes, das am Bus angeschlossen ist. Sie definiert die Reihenfolge der Transaktionen innerhalb des 1-ms-Zeitrahmens. Der USB-Bustreiber kann eine einzelne Anfrage für einen Datentransfer in mehrere Transaktionen zerlegen. Das Scheduling hängt von einer Reihe von Einflussfaktoren wie Transferart, Geräteeigenschaften und Busbelastung ab. Der USB-Host-Controller-Treiber löst die Transaktionen dann über den Root-Hub aus. Dieser setzt der Reihe nach alle Transaktionen um, die in der aktuellen Liste enthalten sind.

Unterstützung in Betriebssystemen[Bearbeiten]

  • Amiga OS4.x unterstützt seit Version 4.0 USB 1.1. Seit dem AmigaOS4.1 Update3 unterstützt es auch USB 2.0.
  • Amiga OS3.x unterstützt standardmäßig kein USB. Lediglich mit Hard- und Software anderer Anbieter (Poseidon, Sirion, Anaiis) ist eine Anbindung von USB-1.1- und USB-2.0-Geräten möglich (mit breiter Unterstützung verschiedenster Geräteklassen bei Poseidon). Bei Poseidon kann in Zusammenarbeit mit einer Flash-Rom-Karte sogar von USB-Massenspeichern gebootet werden. Ab Amiga OS4 wird – je nach Hardware – USB 1.1 und 2.0 unterstützt (kein USB 2.0 Hi-Speed, da der EHCI-Treiber noch fehlt). Unter AmigaOS 4 Classic kann jedoch alternativ auch Poseidon eingesetzt werden.
  • AROS enthält seit August 2009 eine quelloffene Portierung von Poseidon, der die alte Implementierung ersetzt. Es unterstützt OHCI/UHCI (USB 1.1) und EHCI (USB 2.0 Hi-Speed) sowie die meisten der in Poseidon für AmigaOS vorhandenen Gerätetreiber. Der Stack liegt (teilweise) im Kernel und es kann damit von USB-Massenspeichern gebootet werden.
  • Atari MiNT unterstützt standardmäßig kein USB, es sind jedoch für MiNT verschiedene Treiber in Entwicklung, die Add-on-Karten (wie EtherNAT, eine Kombination aus USB- und Ethernet Erweiterung für den Atari Falcon) unterstützen.
  • eComStation als Nachfolger von OS/2 bringt ebenfalls Unterstützung für USB 2.0 mit.
  • Der Linux-Kernel unterstützt seit Version 2.2 USB-Controller. Seit der Kernelversion 2.4 sind Treiber für UHCI-, OHCI- und EHCI-Controller sowie Unterstützung für gängige USB-Endgeräte integriert. Die Unterstützung für EHCI-Controller in der Kernelversion 2.4 gilt jedoch als fehleranfällig und läuft erst seit Version 2.6 stabil. Weiterhin existieren sogenannte Gadget-Treiber, damit kann ein Linux-basiertes System, das an einem USB-Host angeschlossen wird, selbst als USB-Gerät erscheinen, zum Beispiel als Massenspeicher, Netzwerkkarte oder serielle Schnittstelle. Seit der Version 2.6.31 wird auch USB 3.0 vom Linux-Kernel unterstützt.[49]
  • Mac OS unterstützt USB 1.1 ab Mac OS 8.1. Mit der Zeit wurde der Umfang an Geräten, die mit Klassentreibern unterstützt werden, deutlich erweitert; seit Mac OS 8.5 werden die meisten üblichen Geräteklassen unterstützt.
  • Mac OS X unterstützt in allen Versionen USB 1.1 und ab Version 10.2.8 auch USB 2.0. Ab OS X 10.8 wird auch USB 3.0 auf entsprechend werkseitig ausgestatteten Macs unterstützt. Mit entsprechendem Treiber gibt es auch die Möglichkeit, Erweiterungskarten mit USB 2.0 und 3.0 unter früheren Mac-OS-X-Versionen zu nutzen.
  • Microsoft DOS und kompatible unterstützen USB standardmäßig nicht. USB-Tastaturen und USB-Massenspeicher sind über die Legacy-Emulation vieler moderner PC-BIOS-Versionen dennoch verwendbar, aber meist nicht Hotplug-fähig. Auch USB-Mäuse funktionieren meist mit für PS/2-Mäuse vorgesehenen Treibern, wenn der Legacy-Mode aktiviert ist. Für FreeDOS gibt es den „motto hairu“-Treiber, der USB 2.0 zur Verfügung stellt. Andere Hersteller bieten Spezialtreiber an, die aber viel konventionellen Speicher belegen und deshalb mit vielen DOS-Programmen nicht kompatibel sind.
  • Microsoft Windows 95 hat ab OEM Service Release 2.1 eine rudimentäre Unterstützung von USB 1.0, die jedoch als so fehlerhaft gilt, dass eine Verwendung meist nicht möglich ist.
  • Microsoft Windows 98 unterstützt USB 1.0, ab Windows 98 SE auch USB 1.1. USB 2.0 ist nur mit Treibern von Chipsatzherstellern möglich.
  • Microsoft Windows Me unterstützt USB 1.1. und verfügt als einziges System der 9x-Serie über einen generischen Gerätetreiber für Massenspeicher. USB 2.0 ist nur mit Treibern von Chipsatzherstellern möglich. Im Gegensatz zu Windows 98 und 95 ist nach der Installation gerätespezifischer USB-Treiber kein Neustart erforderlich.
  • Microsoft Windows NT 4.0 hat keinerlei USB-Unterstützung, von anderen Herstellern sind jedoch Systemerweiterungen dafür erhältlich. Gerätehersteller testen ihre Produkte selten mit derartigen Erweiterungen, deshalb gelten diese Systemerweiterungen nur für Spezialfälle als tauglich.
  • Microsoft Windows 2000 (SP4), Microsoft Windows XP (ab SP1), Microsoft Windows Server 2003, Microsoft Windows Vista, Microsoft Windows Server 2008, Microsoft Windows 7 und Microsoft Windows Server 2008 R2 unterstützen USB 1.1 und USB 2.0. und unterstützen generisch von Anfang an Massenspeicher. Weil der USB-Hostcontroller allerdings manchmal fehlerhaft erkannt wird, raten die meisten Hersteller dazu, die Treiber des Chipsatzherstellers zu installieren.
  • Microsoft Windows 8 unterstützt USB 1.0, 1.1, 2.0, 3.0.
  • MorphOS wird mit dem Poseidon-USB-Stack ausgeliefert mit voller Unterstützung von UHCI, OHCI und EHCI (nicht alle Treiber unterstützen isochronen Transfer).
  • NetBSD, FreeBSD und OpenBSD unterstützen UHCI, OHCI und EHCI sowie gängige Endgeräte. NetBSD war 1998 das erste freie Betriebssystem mit USB-Unterstützung.
  • OS/2 Warp 4 unterstützt erst über den Aufrüstpack Warp 4.51 Convenience Pack 1 (vom Dezember 2000) USB 1.1. Dieser ist kostenpflichtig. Treiber-Aktualisierungen auf USB 2.0 sind ebenfalls verfügbar.
  • Palm OS unterstützt ab Version 3.2 USB als Kommunikationsplattform für HotSync, ab Palm OS 5 können (teilweise mit Zusatzprogrammen) auch Modemfunktionen über USB genutzt werden. Bestimmte PDAs (so bei Sony Clié) können mit der USB-Schnittstelle einen Massenspeicher emulieren.
  • QNX unterstützt ab der Version 6 UHCI, OHCI und EHCI, mit separat erhältlichen Treibern ist USB-Unterstützung auch in QNX4 nachrüstbar. Die mitgelieferten Treiber beschränken sich auf den HID-Bootmode, einige RS232- und Ethernet-Adapter sowie Massenspeicher.

Im Fall von älteren PCs kann dessen BIOS auch (älteren) Betriebssystemen ohne USB-Unterstützung die Verwendung von USB-Eingabegeräten wie Mäusen und Tastaturen ermöglichen. Dazu aktiviert man einen „USB Legacy Support“ (engl. etwa „USB-Unterstützung für Altlasten“), wodurch die USB-Geräte dem Betriebssystem gegenüber als PS/2-Geräte erscheinen. Die dazu nötigen Einstellungen heißen in jeder BIOS-Variante unterschiedlich, beispielsweise einfach “USB Keyboard Support.” Auch ein Starten von USB-Speichermedien wird von den meisten Firmware-Implementierungen ermöglicht. Unter Open Firmware auf Apple-Macintosh-Computern mit PowerPC-Prozessor gibt es z. B. ein Firmware-Kommando, womit von einem angeschlossenen USB-Massenspeicher gestartet werden kann. Auf PCs mit BIOS wird meist genau ein USB-Laufwerk (wie USB-Stick, USB-Kartenleser, USB-Festplatte, USB-Floppy) eingebunden; weitere USB-Laufwerke werden nur eingebunden, wenn das startende Betriebssystem selbst USB unterstützt. Ältere Firmware (auch BIOS bei Computern bis 1995) kann mit USB nicht umgehen. Bei aktueller Firmware kann davon ausgegangen werden, dass USB sowohl für Eingabegeräte (Tastatur, Maus) sowie für das Startmedium verwendet werden kann. UEFI beispielsweise unterstützte von Beginn an USB voll.

Sicherheitsproblematik[Bearbeiten]

Auf der Black Hat 2014 wies Karsten Nohl zusammen mit Jakob Lell auf die Sicherheitsrisiken von USB-Geräten hin.[50][51][52][53] Das Verfahren basiert auf der Umprogrammierung von USB-Controller-Chips, welche eine weite Verbreitung haben und zum Beispiel in USB-Sticks zum Einsatz kommen.[52] Ein wirksamer Schutz vor einer Neubeschreibung besteht nicht, so dass sich ein harmloses USB-Gerät in vieler Hinsicht als schädliches Gerät missbrauchen lässt.[52] Mögliche Szenarien sind:

  • Ein Gerät kann eine Tastatur und Befehle im Namen des angemeldeten Benutzers emulieren und Malware installieren, welche angeschlossene USB-Geräte ebenfalls infiziert.[52]
  • Ein Gerät kann sich als Netzwerkkarte ausgeben, die DNS-Einstellung des Computers ändern und Datenverkehr umleiten.[52]
  • Ein modifizierter USB-Stick oder eine USB-Festplatte können beim Bootvorgang einen kleinen Virus laden, welcher das Betriebssystem vor dem Booten infiziert.[52]

Eine Abwehr solcher Angriffe ist bisher nicht möglich, da Malware-Scanner keinen Zugriff auf die Firmware von USB-Geräten haben und eine Verhaltenserkennung schwierig ist.[52] USB-Firewalls, welche nur bestimmte Geräteklassen blockieren können, existieren (noch) nicht.[52] Die sonst übliche Routine zur Beseitigung von Malware – eine Neuinstallation des Betriebssystems – schlägt hier fehl, da der USB-Stick, von dem installiert wird, bereits infiziert sein kann, ebenso wie beispielsweise eine eingebaute Webcam oder andere USB-Geräte; hierzu ist zu beachten, dass USB auch als interne Schnittstelle zur Anbindung fest eingebauter Peripherie-Komponenten (wie der als Beispiel genannten Webcam) verbreitet ist.[52] Einen gewissen, wenn auch ungenügenden Schutz bietet die Eigenschaft von Mac OS X, den Benutzer beim Anstecken eines als Tastatur erkannten USB-Geräts zu fragen, ob die Tastatur aktiviert werden soll.

Im Oktober 2014 rekonstruierten die Sicherheitsforscher Adam Caudill und Brandon Wilson auf der Konferenz DerbyCon die Sicherheitslücke und stellten eine modifizierte Firmware sowie Werkzeuge zur Verfügung.[54]

Kurioses[Bearbeiten]

USB-Spielzeug-Raketenwerfer, der auf Befehl kleine Schaumstoffraketen abfeuert

Inzwischen sind auch ausgefallene Geräte auf den Markt gekommen, wie beispielsweise USB-Heizplatten, mit denen etwa eine Kaffeetasse über die USB-Schnittstelle warmgehalten werden kann. Daneben gibt es auch Hardware, wie USB-Lampen für Notebooks, um die Tastatur zu beleuchten, USB-Tastatur-Staubsauger, USB-Ventilatoren, Rotoren mit LED-Lichteffekten, USB-Weihnachtsbäume oder beheizbare USB-Handschuhe und USB-Pantoffeln.

Des Weiteren wird USB teilweise als standardisierte Spannungsquelle eingesetzt. So haben sich im Jahr 2009 namhafte Mobiltelefonhersteller auf Druck der EU-Kommission darauf geeinigt, Micro-USB als Standard-Gerätebuchse für den Ladekontakt einzusetzen.[55] Vereinzelt haben Hersteller anderer elektronischer Kleingeräte wie kompakter Digitalkameras nachgezogen – im Bereich der (tragbaren) Medienabspielgeräte (insbesondere bei MP3-Playern) war ein Aufladen via USB-Schnittstelle schon zuvor verbreitet.

Der USB-Standard sieht vor, dass Geräte zunächst im Low Power-Mode (100 mA oder 150 mA) starten und bei höherem Strombedarf diesen erst vom Host anfordern, bevor sie den normalen Modus schalten. Das können bei USB 2.0 bis zu weiteren 4× 100 mA, bei USB 3.0 bis zu weiteren 5 × 150 mA sein. Schlägt diese Anforderung fehl, muss sich das Gerät abschalten. Die meisten der vorgenannten Spielzeuge verwenden den USB-Anschluss jedoch ungefragt nur als Spannungsquelle und verstoßen gegen den USB-Standard, indem sie ohne Erlaubnis des Hosts mehr als 100 mA Strom beziehen. Das könnte im Extremfall den USB-Anschluss des Hosts beschädigen oder das Energiemanagement des Rechners durcheinanderbringen, was zu instabilem Verhalten führen kann. Sparsame 2,5"-Notebook-Festplatten können meist mit 2,5 W (500 mA) an einem 2.0-USB-Port mit Adapter betrieben werden, größere 3,5"-Festplatten jedoch nicht. Weiterhin gibt es sparsame Notebook-CD/DVD/Bluray-Brenner, die am USB-Port betrieben werden können. Deren Stromaufnahme liegt jedoch insbesondere beim Brennen mit höheren Geschwindigkeiten mit teilweise permanent über 1000 mA weit außerhalb der USB-Spezifikation.

Mittlerweile gibt es Netzteile, die an einer USB-A-Buchse oder einem Kabel mit Micro-USB-B-Stecker 5 V zur Verfügung stellen. Der verfügbare Strom liegt meist bei 1000 mA (allgemein zwischen 500 und 2500 mA). Einige Geräte stellen eine einfache Spannungsquelle dar, andere sind so gebaut, dass sie vom zu ladenden Gerät als Netzteil erkannt werden können. Dabei gilt die USB-Battery Charging Specification als Referenz (dies ist nicht mit dem Powermanagement zu verwechseln, das beim Enumeration-Prozess, beim Anschließen an einen USB-Host, stattfindet). Wenn ein Gerät nicht an einem dafür gebauten Netzteil, sondern an einem USB-Host (z. B. PC/Notebook) geladen wird, werden Befehle bzgl. des Powermanagements während der Enumeration ausgetauscht. Letzteres ist notwendig, wenn das zu ladende Gerät sich exakt an den USB-Standard hält und nur den Strom entnimmt, der ihm genehmigt wurde. Ein bekannter Vertreter ist das iPhone: Es erkennt, dass es an einem Netzteil geladen wird, wenn bestimmte Spannungspegel an den Datenleitungen anliegen. An einem Rechner wird stattdessen über das Powermanagement verhandelt, wie viel Strom das Gerät entnehmen darf.

Ajay Bhatt wurde aus der Gruppe der Entwickler des USB-Standards besonders hervorgehoben, als er in dem Werbespot Ajay Bhatt – The Real USB Rock Star! des Unternehmens Intel als Rockstar porträtiert wurde.[56][57]

Literatur[Bearbeiten]

  •  Hans-Joachim Kelm: USB 2.0. Franzis, Poing 2006, ISBN 3-7723-7965-6.
  •  Jan Axelson: USB Complete. Everything You Need to Develop Custom USB Peripherals. 4. Auflage. Lakeview Research, Madison 2009, ISBN 978-1-931448-08-6.
    • deutsch:  USB 2.0. Handbuch für Entwickler. 3. Auflage. mitp, Heidelberg 2007 (übersetzt von Gerhard Franken), ISBN 978-3-8266-1690-7.
  •  Bernhard Redemann: Steuern und Messen mit USB, Hard- und Softwareentwicklung mit dem FT232, 245 und 2232. Eigenverlag, Berlin 2006, ISBN 3-00-017884-8.

Weblinks[Bearbeiten]

 Wiktionary: USB – Bedeutungserklärungen, Wortherkunft, Synonyme, Übersetzungen

Einzelnachweise[Bearbeiten]

  1. http://www.usb.org/developers/ssusb
  2. DVI-Ausgang per USB nachrüsten. Im: heise online. 5. Juni 2007.
  3. Sven Hesse: USB 3.0 kommt 2009 mit 4,8 Gbit/s angerast. In: Allround-PC.com. 21. November 2008.
  4. USB 3.1: Startschuss für Entwickler auf: heise.de. 1. August 2013
  5. USB 2.0 ECN VBUS Max Limit.pdf
  6. a b Oliver Ehm: Stromversorgung für den USB-Anschluss. Com-Magazin.de, 22. Februar 2012.
  7. Industrie stellt einheitliches Handyladegerät vor derstandard.at derstandard.at Abgerufen am 8. Februar 2011
  8. Stecker rein! – Ein Ladegerät für alle.
  9. Approved Class Specification Documents Battery Charging usb.org Engl.
  10. http://www.usb.org/developers/docs/usb_31_040315.zip
  11. Extensible Host Controller Interface (xHCI) Specification for USB 3.0. Intel Corporation, abgerufen am 26. April 2012 (englisch).
    eXtensible Host Controller Interface for Universal Serial Bus (xHCI). Revision 1.0. Intel Corporation, 21. Mai 2010, S. 468, abgerufen am 26. April 2012 (PDF, englisch).
  12. USB-Spezifikation 2.0 Seite 153
  13. USB Class Codes. usb.org. 17. November 2009 (englisch).
  14. USB-Spezifikation 2.0 Seite 46
  15. USB Spezifikation 2.0 Seite 55
  16. a b Benjamin Benz: Pfeilschnell – Die dritte USB-Generation liefert Transferraten von 300 MByte/s. In: c’t. Nr. 22, 2008, S. 212.
  17. USB 2.0 Specification 2.0, 7.1.11 Data Signaling Rate
  18. courses.cit.cornell.edu
  19. Samsung Galaxy S II bei samsungmobile.com
  20. Bundesnetzagentur (Hrsg.): Allgemeinzuteilung von Frequenzen für die Nutzung durch Anwendungen geringer Leistung der Ultra-Wideband-(UWB)-Technologie. (PDF; 94 kB) 2010.
  21. Matthias Kremp: Kappt die Kabel – lieber noch nicht. In: Spiegel Online. 18. Januar 2008.
  22. Von USB 1.0 bis USB 3.0: Der Siegeszug des Universal Serial Bus. In: player.de. 25. September 2009.
  23. USB 3.0 ist fertig. In: PC Professionell. 18. November 2008.
  24. Anika Kehrer: Linux unterstützt USB 3.0. In: Linux Community. 8. Juni 2009.
  25. Nico Ernst: Der neue USB-Stecker ist fertig und geht in Produktion. Golem.de. S. 2. 12. August 2014. Abgerufen am 12. August 2014.
  26. Dominic Jahn: Neuer USB Typ-C Anschluss versorgt euren 4K Monitor mit Videosignalen. 4kfilme.de. S. 1. 23. September 2014. Abgerufen am 11. Oktober 2014.
  27. synopsys.com
  28. PowerdUSB.org (englisch)
  29. Mobile phones to adopt new, smaller USB connector. In: USB Implementers Forum. 4. Januar 2007 (englisch, PDF; 128 kB).
  30. Mini-A und Mini-AB-Verbinder zurückgezogen. Mai 2007 (Presseerklärung des USB-IF), PDF.
  31. Kleinere USB-Steckverbindung für Mobilgeräte. In: heise online. 5. Januar 2007.
  32. OMTP Local Connectivity Recommendations. Common Charging and Local Data Connectivity. In: omtp.org. 8. Juni 2010 (Memento vom 25. Juli 2011 im Internet Archive)
  33. Übersicht über verschiedene Nicht-Standard-Miniatur-USB-Steckverbinder (englisch, Informationsseite eines Adapterkabelherstellers)
  34. Der neue USB-Stecker ist fertig und geht in Produktion auf Golem.de
  35. Nico Ernst: Typ C - USB bekommt neuen verdrehsicheren Stecker. Golem.de. 4. Dezember 2013. Abgerufen am 6. Dezember 2013.
  36. Typ C - USB bekommt neuen verdrehsicheren Stecker (english) usb.org. 20. Februar 2014. Abgerufen am 15. März 2014.
  37. http://www.usb.org/press/USB_Type-C_Specification_Announcement_Final.pdf
  38. Nokia N1
  39. This is HP's first laptop with USB-C (English) The Verge. Abgerufen am 20150809.
  40. Asus stellt neue EeeBook-E-Serie vor (Deutsch) Notebookcheck. Abgerufen am 20150703.
  41. Übersicht: USB-Typ-C Adapter und Produkte (Deutsch) USB-Type-C News. Abgerufen am 11. März 2015.
  42. http://www.usb.org/press/USB_Type-C_Specification_Announcement_Final.pdf
  43. USB 3.0 Specification. 5.2.2 Compliant Cable Assemblies. USB Implementers Forum, Inc., 1. Mai 2011, S. 79, abgerufen am 8. November 2013 (zip/PDF (32,4 MB), englisch).
  44. http://www.usb.org/developers/docs/usb_31_031815.zip
  45. thinkgeek.com abgerufen am 1. Juli 2013(englisch)
  46. Andreas Link: USB 3.0: Alle Infos zum neuen Technologie-Standard. In: PC Games Hardware. 25. Januar 2010.
  47.  Christoph Windeck: PC-Card und USB (Praxis/Hotline). In: c’t. Nr. 14, 2003, S. 204.
  48. Alexander von Obert: Kann ich eine USB-Schnittstelle nachrüsten? In: USB-Memory-Stick (USB-Speichermodul) FAQ – Teil 1: Hardware. 21. Dezember 2007, abgerufen am 27. März 2008.
  49. Linux-Kernel 2.6.31 unterstützt USB 3.0. In: golem.de. 10. September 2009.
  50. BadUSB – On Accessories that Turn Evil by Karsten Nohl + Jakob Lell. Black Hat, 11. August 2014, abgerufen am 15. September 2014.
  51. Black Hat USA 2014 Briefings. Abgerufen am 15. September 2014.
  52. a b c d e f g h i Turning USB peripherals into BadUSB. Security Research Labs, abgerufen am 15. Juli 2014 (englisch).
  53. Patrick Beuth: Jedes USB-Gerät kann zur Waffe werden. Die Zeit, 31. Juli 2014, abgerufen am 15. September 2014.
  54. Ronald Eikenberg: BadUSB-Tools kursieren im Netz, Angriffs-Stick im Eigenbau. 3. Oktober 2014, abgerufen am 16. Oktober 2014.
  55. Kommission begrüßt Einigung der Industrie auf ein universelles Ladegerät für Mobiltelefone. Presseveröffentlichung der Europäischen Union, 29. Juni 2009.
  56. Ajay Bhatt – The Real USB Rock Star!
  57. Mike Magee: Intel turns USB man into rock star. In: TG Daily. 7. Mai 2009.
Dies ist ein als exzellent ausgezeichneter Artikel.
Dieser Artikel wurde am 8. November 2006 in dieser Version in die Liste der exzellenten Artikel aufgenommen.