Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Datenverarbeitungstechnik Thema: USB März 2003 M.Doil

Ähnliche Präsentationen


Präsentation zum Thema: "Datenverarbeitungstechnik Thema: USB März 2003 M.Doil"—  Präsentation transkript:

1 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil
1. Einleitung 2. Elektrik des USB 3. Datenfluß des USB 4. Protokolle des USB Datenverarbeitungstechnik Thema: USB März 2003 M.Doil

2 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil
1. Einleitung 1.1 Entwicklungshintergründe Der Universal Serial Bus wurde im Zeitraum 1994/95 von einem Konsortium mehrerer Hard- & Softwarefirmen entwickelt. Beteiligt waren unter anderem: - INTEL - Microsoft - IBM - Compaq - DEC...... Folgende Ziele wurden bei der Entwicklung berücksichtigt: - einfach zu handhabende Peripherie-Erweiterungen - preisgünstige Lösung für Übertragungsraten bis 12 Mb/s - Protokollflexibilität (isochroner Datentransfer & asynchroner Nachrichtenfluß - Unterstützung verschiedenster PC-Konfigurationen - Bereitstellung eines Standard-Interface zur weiten Produktverbreitung Folgende existierende Technologien fanden Anklang bzw. wurden erweitert: - ADB (Apple Desktop Bus) - Access Bus - IEEE P1394 Hochgeschwindigkeitsbus - CHI (Concentration Highway Interface) - GeoPort Datenverarbeitungstechnik Thema: USB März 2003 M.Doil

3 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil
1.2 Versionen des USB Eigenschaften USB 1.1. LowSpeed Modus mit 1,5 MBit/s für z.B. Maus und Tastatur FullSpeed Modus mit 12 MBit/s für Geräte mit mittleren Übertragungsratent Geräte können bei laufendem Betrieb angeschlossen werden und werden automatisch erkannt. Durch USB-Hubs können bis zu 127 Geräte angeschlossen werden, Energiemanagement unterstützt Suspend und Resume Protokolle zur Fehlererkennung und Fehlerbehandlung synchrone und asynchrone Übertragungsarten Eigenschaften USB 2.0 HighSpeed Modus mit 480 MBit/s für große Datenmengen Architektur und Programmiermodell von USB 2.0 entsprechen dem von USB 1.1 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil

4 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil
1.3 USB-Architektur Der USB ist ein bitserieller Bus mit einem hierarchischen Verbidungsschema. Es sind insgesamt 127 Geräte möglich, die in insgesamt 7 Schichten angeordnet sein können. Die maximale Kabellänge ist auf 5 m bei Highspeed-Geräten und 3 m bei Lowspeed-Geräten begrenzt. Kabel für Highspeed-Geräte können deshalb länger sein, da sie eine Schirmung besitzen. Host : In jedem USB-System gibt es nur einen Host. Das USB-Interface zum Host-Computer-System wir als Host-Controller bezeichnet. Ein sogenannter Root-Hub ist bereits integriert, dieser bietet Anschlußmöglichkeiten für ein oder mehrere Endgeräte. Folgende USB - Geräte werden unterschieden : - Hubs: Verteiler für zusätzliche Anschlußmöglichkeiten. Der Upstream-Port verbindet einen Hub mit einem anderen Hub oder direkt mit dem Host. Die Downstream-Ports ermöglichen den Anschluß eines beliebigen USB-Geräts. Datenverarbeitungstechnik Thema: USB März 2003 M.Doil

5 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil
Die Downstream Ports eines Hubs können sich unter anderem in folgenden Zuständen befinden disabled Der Port leitet keiner Richtung irgendwelche Signale weiter. Ein Port wird dann disabled, wenn das Gerät entfernt worden ist, wenn der Host den Hub dazu aufgefordert hat oder falls eine Fehlersituation an diesem Port registriert worden ist. enabled In diesem Zustand ist der Port bereit, Daten weiter zu leiten. Ein Port betritt diesen Zustand nach der Initialisierung. suspended Es werden keine Signale in Downstream-Richtung weitergereicht. Ein Port wechselt in diesen Zustand, wenn der Request SetPortFeature(PORT_SUSPEND) eintrifft. Der USB unterscheidet zwischen Upstream und Downstream Connectivity Upstream Connectivity ist der Datenfluß hin zum USB-Host. Downstream Connectivity ist der Datenfluß hin zum USB-Gerät. Merkmal der Downstream Connectivity ist: Alle Geräte empfangen die Datenpakete vom Host (Broadcast). Datenverarbeitungstechnik Thema: USB März 2003 M.Doil

6 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil
- Endgeräte: Bei Endgeräten handelt es sich um seperate Peripheriegeräte die über ein Anschlußkabel in einen Port des Hubs gesteckt werden. Physikalische Struktur des USB: Datenverarbeitungstechnik Thema: USB März 2003 M.Doil

7 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil
2. Elektrik des USB Der USB überträgt die elektrischen Signale und die Betriebsspsannung über ein 4adriges Kabel mit 90 Ohm Impedanz. Die Signalüber- tragung erfolgt differential über 2 dieser Adern, dabei müssen für den Empfänger mindestens 200mV Eingabespannung bereitgestellt werden. Vbus & GND versorgen die USB-Geräte mit Betriebsspannung D+ & D- übertragen die Signale Kabelbelegung des USB: Nr Farbe Name Beschreibung 1 rot VCC 5V Spannungsversorgung 2 weiss D- negative Datenleitung 3 grün D+ positive Datenleitung 4 schwarz GND Masse Datenverarbeitungstechnik Thema: USB März 2003 M.Doil

8 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil
Beim USB unterscheidet man zwischen den Steckern vom Typ A und den Steckern vom Typ B. Für den Downstream (Host zum Gerät) wird wird das USB-Kabel über die Stecker-Buchse-Kombination Typ A angeschlossen. Für den Upstream, also die Richtung zum Host hin, wird das USB-Kabel über die Stecker-Buchse-Kombination Typ B angeschlossen. Datenverarbeitungstechnik Thema: USB März 2003 M.Doil

9 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil
Signal Pegel D- D+ Bemerkung J Differentiell 0 H L (D-) - (D+) > 200mV K Differentiell 1 L H (D+) - (D-) > 200mV Lowspeed-Signale J Differentiell 1 L H (D+) - (D-) > 200mV K Differentiell 0 H L (D-) - (D+) > 200mV Fullspeed-Signale CMOS - Bus - Treiber Geschwindigkeit von 12Mb/s Datenverarbeitungstechnik Thema: USB März 2003 M.Doil

10 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil
3.0 Datenfluss des USB 3.1 Signalcodierung Zur Signalübertragung bei USB wird die NRZI-Codierung verwendet: 0 - Wechsel des Signals 1 - Beibehalten des Signals somit wird bei der Übertragung eines Strings aus lauter 0 ein ständiger Level-Wechsel bewirkt, ein String aus lauter 1 bewirkt ein Halten des Signallevels. Datenverarbeitungstechnik Thema: USB März 2003 M.Doil

11 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil
3.2 Schichtenmodell Ähnlich dem OSI-Modell läßt sich auch für USB ein Schichtenmodell aufstellen ! Beim Schichtenmodell spricht man von logischem Datenfluß, d. h. jede Ebene kann nur mit der korrespondierenden Ebene auf der Gegenseite kommunizieren. Datenverarbeitungstechnik Thema: USB März 2003 M.Doil

12 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil
3.3 Transferarten Die logische Verbindung zwischen Endpunkt im Device und Software im Host wird als Pipe bezeichnet. Der USB unterscheidet zwei Arten von Pipes: - Stream-Mode: (Datenfluß) Bulk-Transfer Isochroner Transfer Interrupt-Transfer - Message-Mode: (Nachrichten) Control-Transfer Angelegt werden Pipes nach der Konfiguration des Systems. Die Control-Pipe 0 wird nach dem Einschalten des Systems als Standardkommunikationspfad für den Austausch von Konfigurations-,Status- und Steuerinformationen verwendet. Datenverarbeitungstechnik Thema: USB März 2003 M.Doil

13 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil
- Im sogenannten Bus-Anschluß-Verfahren meldet der Hub, an dem eine neue Einheit angeschlossen wird, dieses Ereignis im Rahmen einer Statusabfrage an den Host. - Dieser fragt daraufhin weitere Details zur Konfiguration des neuen Gerätes ab. - Anschließend wird der Port an dem die neue Einheit angeschlossen ist enabled - Der Host ordnet nun der neuen Einheit eine Adresse zu. Nun ist der Datenaustausch möglich. Für die Kommunikation ist die Client-Software der obersten Schicht zuständig. Sie wird in der Regel mit dem Betriebssystem oder mit der neuen Einheit als Treiber geliefert. Folgende Transferarten sind im USB-Standard definiert. Control-Transfer dient der Konfiguration zur Übertragung von Befehlen und Status Interrupt-Transfer dient zur gelegentlichen Übermittlung von kleinen Datenmengen (z.B. Ändern der Mausposition) Isochron-Transfer dient der Übertragung von Massendaten mit garantierter Übertragungsrate und Latenzzeit in einer Richtung (z.B. Audiodaten) Bulk-Transfer dient der Übertragung größerer Datenmengen (z.B. Drucker) Die gesamte Kommunikation zwischen Host und Gerät folgt dem Frage-Antwort-Schema Datenverarbeitungstechnik Thema: USB März 2003 M.Doil

14 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil
4. USB-Protokoll 4.1 Bitebene Die Datenübertragung beim USB findet blockweise bitseriell statt, dabei wird zuerst immer das niederwertigste Bit übertragen. Bei mehreren Oktetten beginnt die Übertragung mit dem niederwertigsten Bit der niederwertigsten Oktette. Eine Ausnahme hierzu bildet das CRC-Feld, hier wird als erstes das höchstwertige Bit übertragen 4.2 Pakettypen PID Typ Bitmuster Bemerkung OUT Token Datenübertragung vom Host zum Gerät IN Token Datenübertragung vom Gerät zum Host SOF Token Start of Frame+Framenummer SETUP Token Übertragung von Geräteadresse DATA0 Data gerades Datenpaket DATA1 Data ungerades Datenpaket ACK Handshake Datenpaket wurde akzeptiert NAK Handshake Datenübertragung fehlerhaft/nicht möglich STALL Handshake Endpoint ist nicht bereit PRE Special Signalisiert Low Speed Transfer Pakettypen Datenverarbeitungstechnik Thema: USB März 2003 M.Doil

15 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil
4.3 Paketformat Der USB-Datenverkehr wird durch den Host mittels Token-Pacets initiert. - Jedes Paket beginnt mit einem 8-Bit-Sync-Feld bestehend aus 7 Nullen und einer 1. - Daran schließt sich das PID-Feld (Packet Identifier) an. Es ist immer 8 Bit lang, auch wenn die definierten PID´s nur 4 Bit lang sind. Die ersten 4 Bit bestehen aus der PID, diese wird in den zweiten 4 Bit noch einmal negiert gesendet. Ist die PID fehlerhaft oder unvollständig wird der Rest des Paketes ignoriert. PID Binärwert Bitmuster im Paket SETUP IN OUT PID-Feld-Beispiele Abgeschlossen werden alle Pakete mit einem CRC-Feld, dass eine Prüfsumme enthält und dem EOP-Feld (End of Paket) Datenverarbeitungstechnik Thema: USB März 2003 M.Doil

16 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil
4.3.1 Start-Of-Frame-Paket Die Bandbreite des USB wird in 1ms Teilabschnitte eingeteilt, damit bei einem Bustakt von 12MHz in einem Frame Bit übertragen werden können. Da alle Geräte diese Zeiteinteilung erkennen müssen, sendet der Host jede Millisekunde ein SOF-Paket. Dieses Paket besitzt die Höchste Priorität und besitzt eine 11-Bit breite Nummer die von 0x000 bis 0x7FF hochzählt. Datenverarbeitungstechnik Thema: USB März 2003 M.Doil

17 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil
4.3.2 Token-Paket Das Token-Paket spricht die angeschlossenen Geräte an. Außerdem wird mitgeteilt ob gelesen (Übertragung zum Host) oder geschrieben (Übertragung vom Host) werden soll. Das Token-Paket enthält zusätzlich zu den bereits kennengelernten Feldern ein 7-Bit-Adressfeld mit ihm lassen sich 127 Geräte ansprechen (Adresse 0 ist verboten, da sie die Standardadresse darstellt), sowie ein 4-Bit-Endpoint-Feld, dass erlaubt das pro device bis zu 16 Endpunkte angesprochen werden. Datenverarbeitungstechnik Thema: USB März 2003 M.Doil

18 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil
4.3.3 Daten-Paket Die Datenpakete bilden die eigentliche Nutzlast (zu übertragende Informationen) DATA0 und DATA1 Pakete werden immer abwechselnd gesendet, um welches Paket es sich handelt wird in der PID festgelegt. Das Datenfeld beim USB kann zwischen 0 & 1023 Byte groß sein. Das CRC-Feld beim Daten-Paket hat eine Größe von 16Bit. 4.3.4 Handshake-Paket Handshake Pakete werden zur Meldung des Status verwendet und bestehen ausschließlich aus einem PID-Feld. Es ist das einzige Paketformat, dass kein CRC-Feld besitzt. Datenverarbeitungstechnik Thema: USB März 2003 M.Doil

19 Datenverarbeitungstechnik Thema: USB März 2003 M.Doil
4.4 Fehlerbehandlung Alle Transferarten außer Isochron-Transfer unterstützen ein Fehlerbehandlungsprotokoll. Man unterscheidet drei Arten von Fehlern: Paketfehler (z.B. PID-Fehler, CRC-Fehler....) ...bei diesen Fehlern wird die Funktion das Paket ignorieren und kein Hanshake-Paket senden. Der Host erkennt einen Time-Out-Fehler und sendet erneut. Time-out-fehler Der Empfänger muss innerhalb einer definierten Zeit den Empfang der Daten bestätigen, ist dies nicht der Fall, gilt die Übertragung als fehlerhaft. Der Host sendet erneut. EOP-Fehler Durch einen Fehler im Datenstrom könnt der Empfänger ein vermeintliches EOP erkennen. Dieser Fehler wird jedoch durch die CRC-Checks erkannt. Der Empfänger verhält sich passiv und schickt kein Handshake-Paket. Dadurch weiß der Host, dass er erneut senden muß. Datenverarbeitungstechnik Thema: USB März 2003 M.Doil


Herunterladen ppt "Datenverarbeitungstechnik Thema: USB März 2003 M.Doil"

Ähnliche Präsentationen


Google-Anzeigen