-
Die
Erfindung betrifft die Emulation der Trennung einer Vorrichtung
(eines Knotens) in einem Plug-and-Play-Kommunikationssystem.
-
Der
Universal Serial Bus (USB) ist ein Host-zentrierter Plug-and-Play-Bus.
Der logische USB-Bus verbindet USB-Vorrichtungen mit dem USB-Host,
verwendend eine physikalisch gezogene Sterntopologie. Das System
hat einen Host mit einem Hub am Zentrum von jedem Stern. Hubs konvertieren
einen einzelnen Befestigungspunkt (Port) in mehrere Befestigungspunkte.
Der stromaufwärts
gelegene Port eines Hubs verbindet den Hub zu dem Host. Jeder der
stromabwärts
gelegenen Ports eines Hubs erlaubt die Verbindung zu einem anderen
Hub oder eine Funktion. Hubs können
die Befestigung und Lösung
an jedem stromab gelegenen Port detektieren. Jedes Kabelsegment
ist eine Punkt-zu-Punkt-Verbindung
zwischen dem Host und einem Hub oder einer Funktion, oder einem
Hub, der zu einem anderen Hub oder einer Funktion verbunden ist.
Eine Funktion ist, dass eine USB-Vorrichtung in der Lage ist, Daten
oder Steuerungsinformationen über
den Bus zu übertragen
und zu empfangen und als solches dem System Möglichkeiten bereitstellt. Beispiele
von Funktionen beinhalten Zeiger-Vorrichtungen,
wie eine Maus, ein Tablett, einen Lichtstift, Eingabevorrichtungen,
wie eine Tastatur oder einen Scanner, Ausgabevorrichtungen, wie
einen Drucker oder digitale Lautsprecher, und einen Telefonadapter.
Jede Funktion beinhaltet Konfigurationsinformationen, welche ihre
Möglichkeiten
und Ressourcenerfordernisse beschreiben. Bevor eine Funktion verwendet
werden kann, muss der Host diese konfigurieren. Diese Konfiguration
beinhaltet Zuweisung von USB-Bandbreite
und Auswählen
funktionsspezifischer Konfigurationsoptionen.
-
Die
USB überträgt Signale über zwei
Kabel, welche mit D+ und D– an
jedem Punkt-zu-Punkt-Segment gekennzeichnet sind. Die USB-Kernspezifikation
1.0, 1.1 definiert einen niedrigen Geschwindigkeits- und einen hohen
Geschwindigkeitsmodus, arbeitend bei einer entsprechenden Bitrate
von 1,5 Mb/s und 12 Mb/s. Um sichergestellte Eingangsspannungslevels
und richtige Beendigungsimpedanzen bereitzustellen, werden vorgespannte
Endungen an jedem Ende des Kabels verwendet. Die Endungen erlauben
auch die Detektion der Befestigung und Lösung an jedem Port und differenzieren
zwischen Vollgeschwindigkeits- und
Niedriggeschwindigkeitsvorrichtungen durch die Position des Endwiderstands
(„Pull-Up-Widerstand") an dem stromabwärts gelegenen
Ende des Kabels:
- – Vollgeschwindigkeits-(FS)-Vorrichtungen
werden mit dem Endwiderstand auf der D+-Leitung beendet;
- – Niedriggeschwindigkeits-(LS)-Vorrichtungen
werden mit dem Endwiderstand auf der D–-Leitung beendet.
-
USB-Vorrichtungen
können
jederzeit von der USB befestigt und gelöst werden. Folglich muss die
Systemsoftware dynamische Änderungen
in der physikalischen Bus-Topologie aufnehmen. Die Bus-Enumeration beinhaltet
auch das Detektieren und Verarbeiten von Entfernungen. Hubs haben
Statusanzeigen, welche die Befestigung oder Entfernung einer USB-Vorrichtung
an einem ihrer Ports anzeigen. Der Host fragt den Hub ab, um diese
Anzeigen zu erhalten. Im Falle einer Befestigung aktiviert der Host
den Port und adressiert die USB-Vorrichtung durch das Steuerungsrohr
(„control
pipe") der Vorrichtung
an der Standardadresse. Der Host weist der Vorrichtung eine einzigartige
USB-Adresse zu und bestimmt dann, ob die neu befestigte USB-Vorrichtung
ein Hub oder eine Funktion ist. Wenn die befestigte USB-Vorrichtung
ein Hub ist und USB-Vorrichtungen an deren Ports befestigt sind,
wird der voranstehenden Prozedur für jede der befestigten USB-Vorrichtungen gefolgt.
Wenn die befestigte USB-Vorrichtung eine Funktion ist, dann werden
Befestigungsmeldungen durch die Host-Software verarbeitet, welche
für die
Funktion angepasst ist.
-
Das
Signalisieren einer Verbindung und Trennung einer Funktion ist wie
folgt. Wenn keine Funktion an dem stromabwärts gelegenen Port des Hosts
oder des Hubs befestigt ist, werden die daran vorhandenen Pull-down-Widerstände sowohl
D+ als auch D– unter
die unsymmetrisch niedrige Schwelle des Host oder Hub-Ports ziehen,
wenn derjenige Port nicht durch den Hub betrieben ist. Die Detektion
einer neuen Verbindung oder Trennung erfolgt, indem der D+- und
D–-Status für sowohl
eine FS- als auch LS-Vorrichtung geprüft wird. Wenn keine Verbindung
besteht, sieht der Empfänger
des stromabwärts
weisenden Ports des Hubs unsymmetrisches null SE0 (d.h. D+ = D– < Schwelle, d.h.
logisch 0). Wenn eine FS-Vorrichtung verbunden ist, sieht der Empfänger einen Übergang
von D+ von logisch 0 zu logisch 1, wohingegen D– bei logisch 0 verbleibt. Der
entsprechende Ruhezustand des Busses ist D+ = 1 und D– = 0. In
gleicher Weise sieht der Empfänger, wenn
eine LS-Vorrichtung verbunden ist, einen Übergang von D– von logisch
0 zu logisch 1, wohingegen D+ bei logisch 0 verbleibt. Der entsprechende
Ruhezustand des Busses ist D– =
1 und D+ = 0. Im Fall einer Trennung sieht der Empfänger des
stromabwärts
weisenden Ports des Hubs (wo die Verbindung verbunden war) einen
Busstatusübergang
von (D+, D–)
= (1,0) für
eine FS-Vorrichtung und (D+, D–)
= (0,1) für
eine LS-Vorrichtung zu (D+, D–)
= (0,0) für
sowohl eine HS- als auch LS-Vorrichtung. Ein Trennungszustand (TDDIS)
wird angezeigt, wenn der Host oder Hub die Datenleitung nicht treibt
und ein SE0 auf einem stromabwärts
gelegenen Port für
mehr als 2,5 μs
auftritt. Ein Verbindungszustand (TDCNN) wird detektiert werden,
wenn der Hub detektiert, dass eine der Datenleitungen für mehr als
2,5 μs über ihre
VIH-Schwelle gezogen ist.
-
Wie
zuvor beschrieben, initiiert der Host den Enumerationsprozess. Die
USB-Spezifikationen
definieren nicht einen Weg, mit dem eine Vorrichtung den Host anfragen
kann, die Vorrichtung zu resetten und zu reenumerieren. Jedoch ist
diese Reenumeration in einigen Anwendungen erforderlich, z.B. aufgrund
einer Änderung
der Funktionalität
der Vorrichtung. Der direkteste Weg, um diese Reenumeration zu erzielen,
ist, die Vorrichtung zuerst zu trennen und sie dann wieder zurück an den
stromabwärts
weisenden Port des Hubs anzuschließen. Jedoch, für einige
Anwendungen, ist es wünschenswert
oder sogar erforderlich, diesen Trennungs-, dann Wiederverbindungsprozess
durch Firmwaresteuerung der Vorrichtung emulieren zu können, anstelle
einer manuellen Intervention. Die Emulation kann durch elektronisches
Schalten des Endwiderstands erfolgen, der an der D+-Leitung (für eine FS-Vorrichtung)
oder D–-Leitung
(für eine
LS-Vorrichtung)
befestigt ist, zuerst Ab- (d.h. Deaktivieren der Beendigung), gefolgt
von Anschalten.
-
Die
USB-2.0-Spezifikation definiert eine Hochgeschwindigkeits-(HS)-Vorrichtung,
welche bei etwa 480 Mb/s arbeitet. Die HS-Vorrichtung ist zusätzlich zu
Niedriggeschwindigkeits- und Vollgeschwindigkeitsvorrichtungen.
Für eine
HS-Vorrichtung wird die Beendigung für normalen Betrieb von dem
Pull-up einer einzelnen Datenleitung zu einer parallelen Beendigung
geändert.
Wenn eine HS-Vorrichtung
mit dem stromabwärts
weisenden Port eines Hubs verbunden ist, hat die Vorrichtung immer
ihren D+-Endwiderstand an, genau wie eine FS-Vorrichtung, und die Detektion einer
neuen Verbindung wird in der gleichen Weise getan wie für eine FS-Vorrichtung.
Der Hub wird diese neue Vorrichtung resetten und die Vorrichtung
wird zur Parallelbeendigung schalten, nachdem sie einen vordefinierten 'Chirping'-Prozess („Zwitscher"-Prozess) während der
Resetperiode durchlaufen hat. In normalem HS-Betrieb wird die Parallelbeendigung
verwendet und der entsprechende Ruhezustand ist SE0. Es besteht
folglich keine Unterscheidung zwischen dem Ruhezustand und dem Trennungsstatus,
beide sind SE0. Der folgende Mechanismus ist für die Detektion der HS-Vorrichtungstrennung definiert:
Wenn die Vorrichtung getrennt ist, dann wird ein konstantes Signal,
welches über
den Sender/Empfänger
des Hubs zu der Vorrichtung übertragen
wird, zurückreflektiert
und der Empfänger
des Hubs wird sehen, dass eine Differentialsignalamplitude den maximal
erlaubten Datensignallevel nach einer Verzögerung entsprechend einer Rundlaufzeit
der Kabel überschreitet.
Dieses Überschusssignallevel
wird verwendet, um die Trennung zuverlässig zu detektieren.
-
US 5 974 486 offenbart einen
Controller zum Übertragen
von Daten gemäß der USB-Spezifikation
für Niedriggeschwindigkeits-
und Vollgeschwindigkeitsbetrieb. Der Controller umfasst einen Port
zur Befestigung an einem USB-Host und Mittel zum Simulieren einer
Trennung von einem USB-Host und einer nachfolgenden Wiederverbindung
zu dem USB-Host."
-
Es
ist ein Ziel der Erfindung, eine Trennung der Vorrichtung am stromabwärts weisenden
Port zu emulieren, worin die Emulation in einem Firmwaregesteuerten
Weg ohne manuelle Intervention ausgeführt werden kann.
-
Um
das Ziel der Erfindung zu erfüllen,
beinhaltet das Plug-and-Play-Kommunikationssystem eine Vorrichtung,
welche über
ein Kabelsegment mit einer weiteren Vorrichtung/einem weiteren Hub
verbunden ist; das System unterstützt die Kommunikation in wenigstens
einem ersten Geschwindigkeitsmodus (FS) und einem zweiten, höheren Geschwindigkeitsmodus
(HS); die Vorrichtung beinhaltet für jeden der entsprechenden
Geschwindigkeitsmodi ein entsprechendes erstes und zweites Mittel
zum Beenden des Leitungssegments, wobei die Vorrichtung ausgebildet
ist, um die Trennung der Vorrichtung während des Betriebs in dem zweiten
Geschwindigkeitsmodus durch Aktivieren der ersten Mittel zum Beenden
des Leitungssegments zu emulieren. Durch Aktivieren der ersten Mittel
zum Beenden, möglicherweise
zusätzlich
zu den existierenden zweiten Mitteln zum Beenden, erfüllt die
Beendigung der Kommunikation innerhalb des zweiten Modus nicht länger die Anforderungen.
Die Abweichung kann durch die weitere Vorrichtung oder den weiteren
Hub, der mit dem anderen Ende des Segments verbunden ist, detektiert
werden. Durch Verwenden der ersten Mittel zum Beenden, welches jedenfalls
in den Dual-Mode-Vorrichtungen vorhanden ist, wird die Abweichung
in der Beendigung in einer einfachen Weise erzielt. Mit der Phrase 'weitere Vorrichtung/weiterer
Hub', ist der Knoten
gemeint, der an dem anderen Ende des Segments verbunden ist. Bei
USB wird dieser Knoten ein Hub genannt. In anderen Systemen kann
ein solcher Knoten funktional das Gleiche sein wie eine Vorrichtung.
-
Wie
in der Maßnahme
des abhängigen
Anspruchs 3 definiert, detektiert die Vorrichtung (oder der Hub) am
anderen Ende des Segments vorzugsweise, dass die Beendigung die
Grenze für
die Kommunikation im zweiten Modus überschreitet und startet einen
Wiederverbindungsprozess, um zu bestimmen, ob eine neue oder die
gleiche Vorrichtung angeschlossen worden ist und bei welcher Geschwindigkeit
die Vorrichtung arbeiten kann.
-
Wie
in der Maßnahme
des abhängigen
Anspruchs 4 definiert, wird die Beendigung im zweiten Modus deaktiviert,
die Beendigung der Vorrichtung in die Grenzen des ersten Geschwindigkeitsmodus
gebracht, was einen wohl definierten und guten Ausgangspunkt für den Wiederverbindungsprozess
ermöglicht.
-
Wie
in der Maßnahme
des abhängigen
Anspruchs 5 definiert, ist wie für
eine USB-FS-Vorrichtung die Beendigung des ersten Geschwindigkeitsmodus
(FS) eine Impedanz, wie ein Endwiderstand, der zwischen eine der
Datenleitungen und eine Versorgungsspannung gekoppelt ist. Ein steuerbarer
Schalter wird vorzugsweise verwendet, um die Kopplung des Widerstands
zu aktivieren/deaktivieren. Beinhalten des D+-Pull-up ist praktisch
gleichbedeutend zu einem offenen Ende, eine verlässliche Detektion einer Trennung
ermöglichend.
-
Wie
in der Maßnahme
des abhängigen
Anspruchs 7 definiert, wird die Beendigung für den zweiten Geschwindigkeitsmodus
(HS) wie für
eine USB-HS-Vorrichtung erzielt, indem der FS-Treiber ein SE0-Signal über zwei
passende Widerstände
erzeugt. Deaktivieren der Beendigung kann durch Deaktivieren des
Treibers erzielt werden.
-
Das
Ziel der Erfindung wird erzielt durch Bereitstellen Vorrichtung
zur Verwendung in einem Plug-and-play-Kommunikationssystem, worin
die Vorrichtung über
ein Leitungssegment mit einer weiteren Vorrichtung/einem Knoten
verbindbar ist; das System unterstützt eine Kommunikation in wenigstens
einem ersten Geschwindigkeitsmodus (FS) und einem zweiten, höheren Geschwindigkeitsmodus
(HS); die Vorrichtung beinhaltet für jeden der entsprechenden
Geschwindigkeitsmodi ein entsprechendes erstes und zweites Mittel
zum Beenden des Leitungssegments, wobei die Vorrichtung ausgebildet
ist, um die Trennung der Vorrichtung während des Betriebs in dem zweiten
Geschwindigkeitsmodus durch Aktivieren der ersten Mittel zum Beenden
des Leitungssegments zu emulieren.
-
Das
Ziel der Erfindung wird auch erzielt durch Bereitstellen eines Verfahrens
zum Emulieren der Trennung einer Vorrichtung in einem Plug-and-play-Kommunikationssystem,
worin die Vorrichtung über
ein Leitungssegment mit einer weiteren Vorrichtung/einem Knoten
verbunden ist; das System unterstützt eine Kommunikation in wenigstens
einem ersten Geschwindigkeitsmodus und einem zweiten, höheren Geschwindigkeitsmodus;
die Vorrichtung beinhaltet für
jeden der entsprechenden Geschwindigkeitsmodi ein entsprechendes
erstes und zweites Mittel zum Trennen des Leitungssegments; wobei
das Verfahren das Emulieren der Trennung der Vorrichtung beinhaltet,
während
es in dem zweiten Geschwindigkeitsmodus arbeitet, indem die ersten
Mittel zum Trennen des Leitungssegments aktiviert werden.
-
Diese
und andere Aspekte der Erfindung werden ersichtlich und weiter erläutert unter
Bezugnahme auf die Ausführungsformen,
welche in den Figuren gezeigt sind.
-
1 zeigt
ein Kommunikationssystem mit einer hierarchischen Sterntopologie;
-
2 illustriert
die Verwendung von Signalleitungen;
-
3 zeigt eine Anordnung des Endwiderstands
für Vollgeschwindigkeits-
und NiedergeschwindigkeitsSender/Empfänger, entsprechend;
-
4 zeigt
ein Blockdiagramm eines HochgeschwindigkeitsSender/Empfängers.
-
1 zeigt
ein Plug-and-Play-Kommunikationssystem gemäß der Erfindung. Die Erfindung
wird im Detail für
den USB-Bus beschrieben. Es wird erkannt werden, dass viele Variationen
innerhalb des Wissens eines Fachmanns liegen. Z.B., wird Bezug auf
die Signallevel und Beendigungsarten innerhalb USB genommen. Die
gleichen Prinzipien zur Emulierung einer Trennung und Triggerung
einer Wiederverbindung kann ebenso gut für andere Signallevel und andere
Beendigungsarten verwendet werden. Der gezeigte Universal Serial
Bus (USB) ist ein hostzentrierter Plug-and-Play-Bus. Der logische
USB-Bus verbindet USB-Vorrichtungen mit dem USB-Host, verwendend
eine physikalisch gezogene Sterntopologie. Das Kommunikationssystem beinhaltet
einen Host 110 und Hubs 110, 120, 130, 140, 150 am
Zentrum von jedem Stern. Ein Wurzel-Hub 160 ist innerhalb
des Hostsystems integriert. Der stromaufwärts gelegene Port eines Hub
verbindet den Hub in Richtung des Host. Jeder der stromabwärts gelegenen
Ports eines Hub erlaubt die Verbindung zu einem anderen Hub oder
einer Funktion. Jedes Leitungssegment ist eine Punkt-zu-Punkt-Verbindung
zwischen dem Host und einem Hub oder einer Funktion, oder einem
Hub, der mit einem anderen Hub oder einer Funktion verbunden ist.
Eine Funktion 170, 171, 172, 173, 174, 175, 176 ist
eine USB-Vorrichtung, welche geeignet ist, um Daten oder Steuerungsinformationen über den
Bus zu übertragen
oder zu empfangen und als solches dem System Möglichkeiten bereitstellt. Eine
Funktion ist typischerweise als eine separate Peripherievorrichtung
implementiert, mit einem Kabel, welches in einen Port an einem Hub
eingesteckt ist. Jedoch kann eine physikalische Packung mehrere
Funktionen und einen eingebetteten Hub mit einem einzelnen USB-Kabel implementieren.
Dies ist als Verbundvorrichtung bekannt. Eine Verbundvorrichtung
erscheint dem Host als ein Hub mit einer oder mehrerer nicht entfernbarer
USB-Vorrichtungen. Jede Funktion enthält Konfigurationsinformationen,
welche ihre Möglichkeiten
und Ressourcenerfordernisse beschreibt. Bevor die Funktion verwendet
werden kann, muss der Host sie konfigurieren. Diese Konfiguration
beinhaltet die Zuweisung von USB-Bandbreite und die Auswahl funktionsspezifischer
Konfigurationsoptionen.
-
Die
USB überträgt Signale
und Leistung über
ein Vier-Leitungskabel, gezeigt in 2. Die Signalisierung
erfolgt über
zwei Leitungen, welche als D+ und D– an jedem Punkt-zu-Punkt-Segment
gekennzeichnet sind. Die USB-Kernspezifikation 1.0, 1.1 definiert
einen Niedriggeschwindigkeits- und einen Vollgeschwindigkeitsmodus,
arbeitend bei entsprechenden Bitraten von 1,5 Mb/s und 12 Mb/s.
Der Takt wird übertragen,
codiert entlang mit Differenzialdaten. Das Taktcodierungsschema
ist NRZI mit einer Bitstopfung, um entsprechende Übergänge sicherzustellen.
Ein SYNC-Feld läuft
jedem Paket vor, um dem Empfänger/den
Empfängern
zu ermöglichen,
ihre Bitrückgewinnungstakte
zu synchronisieren. Das Kabel trägt
auch VBus und Erdungsleitungen auf jedem Segment, um Leistung zu
den Vorrichtungen zu übertragen.
Um garantierte Eingangsspannungslevel und richtige Beendigungsimpedanzen
bereitzustellen, werden vorgespannte Beendigungen an jedem Ende
des Kabels verwendet. Die Beendigung ermöglicht auch die Detektion der
Befestigung und Ablösung
an jedem Port und unterscheidet zwischen Vollgeschwindigkeits- und
Niedriggeschwindigkeitsvorrichtungen. USB-Vollgeschwindigkeits-
und Niedriggeschwindigkeitsvorrichtungen werden an dem Hub und Funktionsenden
terminiert, wie gezeigt in den 3A und 3B,
entsprechend. Vollgeschwindigkeits- und Niedriggeschwindigkeitsvorrichtungen
werden durch die Position des Endwiderstands an dem stromabwärts gelegenen
Ende des Kabels differenziert:
- – Vollgeschwindigkeitsvorrichtungen
werden terminiert wie gezeigt in 3A mit
dem Endwiderstand Rpu auf der D+-Leitung;
- – Niedriggeschwindigkeitsvorrichtungen
werden terminiert wie gezeigt in 3B mit
dem Endwiderstand Rpu auf der D–-Leitung.
-
In
den 3A und 3B sind
die Anschlüsse 310, 312 auf
der linken (in einem hierarchisch tieferen Zug) entweder ein Hub
oder ein Host Port. Der Hochgeschwindigkeitsport 314 auf
der rechten Seite in 3A ist entweder ein Hubstromaufwärts-Port
oder eine Vollgeschwindigkeitsfunktion. Der Niedrigge schwindigkeitsport 316 auf
der rechten Seite in 3B ist eine Niedriggeschwindigkeitsfunktion
(bei USB kann ein stromaufwärts
gelegener Port eines Hub nicht bei niedriger Geschwindigkeit arbeiten).
Die Sender/Empfänger 320 und 322 sind
geeignet zum Arbeiten sowohl bei Hochgeschwindigkeit als auch bei
Niedriggeschwindigkeit. Sender/Empfänger 324 ist ein HochgeschwindigkeitsSender/Empfänger. Sender/Empfänger 326 ist
ein NiedriggeschwindigkeitsSender/Empfänger. Rpd zeigt
die Pull-down-Widerstände
in den stromabwärts
gelegenen Ports an, verbunden zur Erdung.
-
4 illustriert
eine bevorzugte Implementation des USB-2.0-HochgeschwindigkeitsSender/Empfängers, welche
größtenteils
USB-1.1-Sender/Empfängerelemente
verwendet und die neuen Elemente hinzufügt, die für HS-Betrieb erforderlich sind.
Hochgeschwindigkeitsbetrieb unterstützt Übertragung bei 480 Mb/s. Um verlässliches Übertragen
bei dieser Rate zu erzielen, ist das Kabel an jedem Ende mit einem
Widerstand von jeder Leitung zur Erdung beendet. Der Wert dieses
Widerstands (an jeder Leitung) ist normalerweise auf 1/2 der spezifizierten
Differenzialimpedanz des Kabels gesetzt (oder 45 Ohm). Dies stellt
eine Differenzialbeendigung von 90 Ohm dar. Der Ruhe-Status eines
Sender/Empfängers,
welcher im HS-Modus arbeitet, ist der beendete Status, in dem kein
Signal auf die Daten+- und Daten–-Leitungen angelegt ist. Die
empfohlenen Mittel zum Erzielen dieses Status sind, den LS/FS-Modustreiber
zu verwenden, um ein unsymmetrisches null (SE0) sicherzustellen,
und die kombinierte Summe der Treiberausgangsimpedanz und des Rs-Widerstands 490 (auf 45
Ohm, nominell) eng zu steuern. Die empfohlene Praxis ist es, die
Treiberimpedanz so niedrig wie möglich zu
machen, und Rs 490 so viel wie möglich der 45 Ohm beitragen
zu lassen. Dies wird grundsätzlich
zu der besten Beendigungsgenauigkeit mit den geringsten Parasitärladungen
führen.
-
Um
zu übertragen,
aktiviert ein Sender/Empfänger
eine interne Stromquelle, welche von ihrer positiven Versorgungsspannung
abgeleitet wird und leitet diesen Strom in eine der zwei Datenleitungen über einen Hochgeschwindigkeits-Stromsteuerungsschalter.
Die dynamische Schaltung von diesem Strom in die Data+- oder Data–-Leitung
folgt dem NRZI-Datencodierungsschema, welcher in der USB-1.1-Spezifikation
beschrieben ist, beinhaltend das Bitstopfverhalten. Um ein J zu übertragen,
wird der Strom in die Data+-Leitung gerichtet, und um ein K zu signalisieren,
wird der Strom in die Datenleitung gerichtet. Das SYNC-Feld und
die EOP-Begrenzer wurden für
den HS-Modus modifiziert.
-
Bezug
nehmend auf 4 wird ein LS/FS-Treiber 420 für eine LS-
und FS-Übertragung
gemäß der USB-1.0/1.1-Spezifikation
für den
LS- und FS-Betrieb verwendet, mit der Ausnahme, dass in einem HS-fähigen Sender/Empfänger die
Impedanz für
jeden Ausgang, beinhaltend den Beitrag von Rs, bei 45 Ohm +/– 10% sein
muss. Wenn der Sender/Empfänger
im HS-Modus arbeitet, muss der Treiber ein SE0 sicherstellen. Dies ermöglicht eine
gut gesteuerte HS-Beendigung
auf jeder Datenleitung von 45 Ohm zu Erdung.
-
Ein
HS-Stromtreiber 14 wird für HS-Datenübertragung verwendet. Eine
Stromquelle, welche von einer positiven Versorgung abgeleitet wird,
wird in entweder die Daten+- oder Daten–-Leitungen geschaltet, um
ein J oder ein K entsprechend zu signalisieren. Der nominelle Wert
der Stromquelle ist 17,78 mA. Wenn dieser Strom auf eine Datenleitung
mit einer 45-Ohm-Beendigung zu Erdung an jedem Ende aufgebracht
wird, ist die nominelle Hochlevelspannung +400 mV. Die nominelle
Differenzial-HS-Spannung (Data+ – Data–) ist folglich 400 mV für ein J
und –400
mV für
ein K. Die Stromquelle muss die erforderliche Genauigkeit beginnend
mit dem ersten Symbol eines Pakets erfüllen. Ein Mittel zum Erzielen
von diesem ist, die Stromquelle kontinuierlich an zu belassen, wenn
ein Sender/Empfänger
im HS-Modus arbeitet. Wenn dieser Ansatz verwendet wird, kann der
Strom zu der Port-Erdung geleitet werden, wenn der Sender/Empfänger nicht überträgt (die
Beispielgestaltung in 4 zeigt eine Steuerungsleitung,
welche HS-Stromquellenaktivierung genannt ist, um den Strom anzustellen,
und eine andere, welche HS-Treiberaktivierung genannt ist, um den
Strom in die Datenleitungen zu leiten.) Der Nachteil dieses Ansatzes
ist die 17,78 mA des stehenden Stroms für jeden solchen aktivierten
Träger
im System. Die bevorzugte Gestaltung ist, die Stromquelle voll abzuschalten,
wenn der Sender/Empfänger nicht überträgt.
-
Der
Ruhe-Status des Sender/Empfängers,
der im HS-Modus arbeitet, ist mit dem LS/FS-Treiber in seinem einfach
geendeten Nullstatus gehalten (um so die benötigten Beendigungen bereitzustellen),
und mit der HS-Stromquelle in einem Status, in dem die Quelle aktiv
ist, aber der Strom in die Vorrichtungserdung geleitet wird anstelle
von durch den Stromsteuerungsschalter, welcher für die Datenübertragung verwendet wird.
Steuern des Stroms zur Erdung wird erreicht durch Setzen der HS-Treiberaktivierung
auf niedrig. Wenn ein Sender/Empfänger, der im HS-Modus arbeitet,
die Übertragung
beginnt, wird der Übertragungsstrom
von der Vorrichtungserdung zu dem Stromsteuerungsschalter zurückgeleitet.
Dieser Schalter wiederum leitet den Strom zu entweder der Daten+-
oder Daten–-Datenleitung. Ein
J wird sichergestellt durch Leiten des Stroms zu der Daten+-Leitung, ein K durch
Leiten desselben zu der Daten–-Leitung.
Wenn jede der Datenleitungen mit einem 45-Ohm-Widerstand zu der
Vorrichtungserdung beendet ist, ist der effektive Lastwiderstand
auf jeder Seite 22,5 Ohm. Daher steigt die Leitung, in welche der
Treiberstrom geleitet wird, auf 17,78 ma·22,5 Ohm, oder 400 mV (nominell).
Die andere Leitung bleibt bei der Vorrichtungserdungsspannung. Wenn
der Strom zu der gegenüberliegenden
Leitung geleitet wird, werden diese Spannungen reversiert.
-
Ein
LS/FS-Differenzialempfänger 450 wird
verwendet zum Empfangen von LS- und
FS-Daten gemäß der USB-1.0/1.1-Spezifikation.
Unsymmetrische Empfänger 470 erfüllen auch
diese Spezifikationen.
-
Ein
HS-Differenzialdatenempfänger 430 wird
verwendet, um HS-Daten zu empfangen, welche eine nominelle Differenzialamplitude
von +/– 400
mV haben. Dieser Empfänger
muss die Möglichkeit
haben, durch einen Übertragungshülldetektor 440 (Transmission
Envelope Detector 440), wie in 4 angezeigt,
deaktiviert zu werden. Dies ist ein Erfordernis, weil der Ruhe-Status
einer HS-Verbindung
ist, dass die Empfänger
an jedem Ende aktiv und die Datenleitungen auf Erdung gehalten sind.
In diesem Zustand sind die Empfänger
gegenüber
Rausch- oder Parasitär-Signalen
empfindlich und ein Mittel zur Rauschunterdrückung ("Squelching") ist erforderlich. Es bleibt den Gestaltern
des Senders/Empfängers
vorbehalten, zwischen der Inkorporierung unterschiedlicher HS- und
LS/FS-Empfänger
zu wählen,
wie gezeigt in 4, oder beide Funktionen in
einem einzelnen Empfänger
zu kombinieren. Der Übertragungshülldetektor 440 wird
verwendet, um den HS-Empfänger 440 zu
deaktivieren, wenn die Amplitude des Differenzialsignals unter das
minimal benötigte
Level für
Datenempfang fällt.
Es muss eine Antwortzeit haben, welche ausreichend ist, um dem Empfänger zu
ermöglichen,
alle bis auf die ersten vier Symbole eines Pakets zurückzugewinnen.
Der Empfänger
muss den Empfang deaktivieren, wenn die Differenzialsignalamplitude
unter einen bestimmten Pegel innerhalb des Bereichs von 100 mV bis
150 mV fällt.
(Dies bedeutet, dass Signale mit weniger als 100 mV Differenzialamplitude
benötigt werden,
um deaktiviert zu werden, und dass Signale mit größer als
150 mV Differenzialamplitude benötigt
werden, um aktiviert zu werden.) Ein Endwiderstand (Rpu) 480 wird
nur in stromaufwärts
weisenden Sender/Empfängern
benötigt,
und wird verwendet, um die Signalgeschwindigkeitsfähigkeit
anzuzeigen. Wenn in einem stromabwärts weisenden Port verwendet,
muss ein HS-geeigneter Sender/Empfänger geeignet sein, um in LS-,
FS oder HS-Signalmodus zu arbeiten. Wenn in einem stromaufwärts weisenden
Port verwendet, muss ein Sender/Empfänger geeignet sein zum Betreiben
in FS- oder HS-Modus. Gemäß der USB-2.0-Spezifikation kann
ein stromaufwärts
weisender HS-fähiger
Sender/Empfänger
nicht im LS-Signalmodus arbeiten. Daher ist ein 1,5-k-Endwiderstand 480 auf
der Datenleitung nicht in einem HS-geeigneten Sender/Empfänger erlaubt. Eine
HS-geeignete Vorrichtung ist benötigt,
um initial als eine FS-Vorrichtung angeschlossen zu werden, verwendend
die Techniken, welche in der USB-1.1-Spezifikation beschrieben sind.
Dies bedeutet, dass für
HS-geeignete stromaufwärts
weisende Ports, Rpu (1,5k +/– 5%)
von Data+ zu der 3,3-V-Versorgung über einen Schalter verbunden
werden muss, welcher unter SW-Steuerung geöffnet werden kann. Nach dem
initialen Anschließen
aktivieren HS-geeignete Sender/Empfänger in einem Niedriglevelprotokoll,
um eine HS-Verbindung auszubilden
und um HS-Betrieb in dem entsprechenden Port-Statusregister anzuzeigen. Dieses Protokoll
beinhaltet elektrisches Entfernen des 1,5-k-Ohm-Widerstands 480 aus
dem Schaltkreis. In 4 ist eine Steuerungsleitung,
genannt Rpu-Aktivierung für
diesen Zweck angezeigt. Der Widerstand wird entfernt, indem Rpu_Enable
tiefgesetzt wird (Öffnen
des Schalters 485). Das Protokoll beinhaltet auch Bereitstellen
der Data+- und Data–-Beendigungen
zu Erdung, indem die Assert-Single-Ended-Zero und die LS/FS-Driver-Output-Enable-Bits hochgesetzt
werden. Die bevorzugte Ausführungsform
ist, passende Schaltungsvorrichtungen an beide Data+- und Data–-Leitungen
anzuschließen,
um solcherart die Leitungsverluste ausgeglichen zu halten, selbst
wenn ein Endwiderstand niemals auf der Daten–-Leitung eines stromaufwärts weisenden
HS-geeigneten Sender/Empfängers verwendet
werden wird. Pull-down-Widerstände (RpD) 495 (15
k +/– 5%)
werden von Data+ und Data– zur
Erdung nur in stromabwärts
weisenden Sender/Empfängern
verbunden und stimmen mit der USB-1.1-Spezifikation überein.
-
Ein
Trennungshülldetektor
460 (Disconnection
Envelope Detector
460) wird verwendet, um zu detektieren,
wenn die Amplitude des Differenzialsignals die maximal erlaubten
Datensignallevel überschreitet.
Dies wird auftreten, wenn ein stromabwärts weisender Sender/Empfänger einen
kontinuierlichen String von J's
oder K's für mehr als
die Rundumlaufzeit des Kabels überträgt und Vorrichtungsbeendigungswiderstände nicht
vorhanden sind. Dies wird verwendet als eine Anzeige der Vorrichtungstrennung.
In Abwesenheit der Beendigungen am fernen Ende wird die Differenzialspannung
sich nominal verdoppeln (im Vergleich zum Vorhandensein einer HS-Vorrichtung),
wenn der Strom nicht für
eine Zeitspanne, welche die Rundumlaufzeitverzögerung überschreitet, geschaltet wird.
Weil solch ein String von J's
oder K's als Teil
der USOF EOP benötigt
wird, wird der Trennungshülldetektor
verwendet zum Detektieren der Trennung von HS-Vorrichtungen wie in größerem Detail
im Folgenden definiert. Ein HS-geeigneter Sender/Empfänger eines
stromabwärts
weisenden Ports muss Vorrichtungstrennung anzeigen, wenn die Signalamplitude
auf den Datenleitungen einen Differenzialspannungspegel innerhalb
des Bereichs von 500 mV bis 600 mV überschreitet. (Dies bedeutet,
dass Signale mit weniger als 500 mV Differenzialamplitude keine
Anzeige einer Trennung bewirken und dass Signale mit größer als
600 mV Differenzialspannung benötigt
werden, um Trennung anzuzeigen.) Wenn keine Stromabwärtsvorrichtung
angeschlossen ist, muss der Trennungsdetektionsschaltkreis in dem
stromabwärts
weisenden Sender/Empfänger
die Überspannungskondition
in Erwiderung auf einen einzelnen USOF-EOP-Begrenzer detektieren. Übersicht
der Signalspannung
Bus-Status | Signallevel |
HS-Ruhe-Status | –5 mV <= Data+ <= 5 mV; –5 mV <= Data– <= 5 mV |
HS-J-Status | 360
mV <= Data+ <= 440 mV; –5 mV <= Data– <= 5 mV |
HS-K-Status | –5 mV <= Data+ <= 5 mV; 360 mV <= Data– <= 440 mV |
Rauschunterdrückungs-Pegel | Das
einkommende Signal muss deaktiviert werden, wenn seine Differenzialamplitude
unter 100 mV fällt und
aktiviert werden, wenn seine Differenzialamplitude 150 mV überschreitet |
HS-Trennung
auf stromabwärts
weisendem Port | Ein
stromabwärts
weisender Sender/Empfänger muss
Trennung anzeigen, wenn er eine Differenzialamplitude auf den Data+-
und Data–-Leitungen von
mehr als 600 mV erfasst und muss Trennung nicht signalisieren, wenn
die Spannung geringer als 500 mV ist |
Start
des HS-Pakets | Die Übertragung
eines HS-Pakets wird durch den Übergang
von dem HS-Ruhe-Status zu dem HS-SYNC-Muster
initiiert |
Ende
des HS-Pakets | Das
HS-EOP-Feld, im Folgenden beschrieben, wird durch den HS-Ruhe-Status
gefolgt |
HS-Reset | Ein
Hub resettet eine HS-geeignete Vorrichtung durch Sicherstellen einer
erweiterten, unsymmetrischen Null |
-
Datensignalisierung
-
HS-Datenübertragung
innerhalb eines Pakets wird mit Differenzialsignalen ausgeführt. Der
Ruhe-Status der Datenleitungen zwischen Paketen ist beide Leitungen
an GND. Der Start eines Pakets (SOP) im HS-Modus wird durch Treiben
der Data+- und Data–-Leitungen
von dem HS-Ruhe-Status zu dem K-Status signalisiert. Dieses K ist
das erste Symbol des HS-SYNC-Musters (NRZI-Sequenz KJKJKJKJ KJKJKJKJ KJKJKJKJ
KJKJKJKK). Das erste Symbol in dem HS-EOP-(Ende eines Paket)-Begrenzer ist
ein Übergang von
dem letzten Symbol vor dem EOP. Dieses entgegengesetzte Symbol wird
das erste Symbol in dem EOP-Muster (NRZ 01 1 1 1 1 1 1 1 mit Bitstopfung
deaktiviert). Bei Vervollständigung
des EOP-Musters kehrt der Sender/Empfänger zum Ruhe-Status zurück. Die
Tatsache, dass das erste Symbol in dem EOP-Muster einen Übergang
treibt, vereinfacht den Prozess des präzisen Bestimmens, welches das
letzte Bit in dem Paket vor dem EOP-Begrenzer ist.
-
Verbindungs- und Trennungssignalisierung
-
Die
Signalisierung einer Verbindung und Trennung einer Funktion ist
wie folgt für
eine Niedriggeschwindigkeits- und Vollgeschwindigkeitsvorrichtung.
Wenn keine Funktion an dem Stromabwärtsport oder Hub angeschlossen
ist, werden die dort vorhandenen Pull-down-Widerstände bewirken,
dass beide D+ und D– unter
die unsymmetrische untere Schwelle des Host- oder Hubports gezogen
werden, wenn der Port nicht durch den Hub getrieben wird. Dies erzeugt
einen SE0-Status
an dem Stromabwärtsport.
Ein Trennungszustand (TDDIS) wird angezeigt,
wenn der Host oder Hub die Datenleitungen nicht treibt und ein SE0
auf einem Stromabwärtsport
für mehr
als 2,5 μs
besteht. Ein Verbindungszustand (TDCNN)
wird detektiert, wenn der Hub detektiert, dass eine der Datenleitungen über ihren VIH-Pegel für mehr als 2,5 μs gezogen
wird.
-
Das
Signalisieren einer Verbindung und Trennung einer Funktion ist wie
folgt für
eine Hochgeschwindigkeitsvorrichtung. Ein stromabwärts weisender
Port, welcher im HS-Modus arbeitet, detektiert Trennung durch Erfassen
des Anstiegs in der Differenzialsignalamplitude über die Data+- und Data–-Leitungen,
welcher auftritt, wenn die Vorrichtungsbeendigungen entfernt werden.
Wie in 4 gezeigt, geht der Trennungshülldetektorausgang hoch, wenn
der stromabwärts
weisende Sender/Empfänger überträgt und positive
Reflexionen von der offenen Leitung in einer Phase ankommen, welche
zusätzlich
zu dem Sender/Empfängertreibersignal ist.
Um sicherzustellen, dass dieser zusätzliche Effekt zuverlässig auftritt
und von ausreichender Dauer ist, um detektiert zu werden, ist der
USOF-EOP-Begrenzer verlängert
im Vergleich zu dem Vollgeschwindigkeits- und Niedriggeschwindigkeitsmodus. Signale
mit Differenzialamplituden >=
600 mV müssen
zuverlässig
den Trennungshülldetektor
aktivieren. Signale mit Differenzialamplituden <= 500 mV sollen niemals den Trennungshülldetektor
aktivieren. Der Hub muss den Trennungshülldetektorausgang zu einem
Zeitpunkt ab tasten, welcher mit der Übertragung des 40. Bit des
USOF-EOP-Musters zusammenfällt.
Der Ausgang des Detektors sollte zu allen anderen Zeitpunkten ignoriert
werden.
-
Wenn
eine USB-Vorrichtung von einem der Ports des Hubs entfernt wird,
deaktiviert der Hub den Port und stellt eine Anzeige der Vorrichtungstrennung
dem Host bereit. Entsprechende USB-Systemsoftware handhabt dann
die Trennungsanzeige. Wenn die entfernte USB-Vorrichtung ein Hub
ist, muss die USB-Systemsoftware
die Entfernung von sowohl dem Hub und von all denjenigen USV-Vorrichtungen
handhaben, welcher zuvor an dem System über den Hub angeschlossen waren.
-
Reset-Signalisierung
-
Ein
HS-geeigneter Hub beginnt den Reset-Vorgang durch Prüfen des
Status der Leitungen (um zu bestimmen, ob eine Vorrichtung vorhanden
ist und LS anzeigt) und dann Treiben von SE0, (beachte, dass die folgenden
Hub-Vorgänge
bei einer Nicht-HS-geeigneten Vorrichtung als ein langes SE0 erkannt
werden und diese Vorgänge
solch eine Vorrichtung genauso resetten werden wie ein USB-1.1-Hub sie resetten
würde.) Der
Zeitpunkt, zu dem SE0 gesetzt wird, ist in der folgenden Tabelle
als T0 gezeigt. Wenn die Vorrichtung LS-Eignung anzeigt, hält der Hub
die Setzung von SE0 einfach bis T9, führt keine der folgenden "Zuhören"-Verhaltensweisen
aus und berichtet die Portgeschwindigkeit als LS. Wenn der Hub-Port
nicht eine LS-Vorrichtung detektiert, kann er mit einer FS-Vorrichtung, einer
HS-geeigneten Vorrichtung, welche im FS-Modus arbeitet, einer HS-geeigneten
Vorrichtung, welche im HS-Modus arbeitet oder überhaupt keiner Vorrichtung
verbunden sein. Um zwischen diesen Möglichkeiten zu differenzieren,
beginnt der Hub bei T3 zu hören
nach einem HS-"Chirp" von der Vorrichtung.
In Erwiderung auf die Setzung eines kontinuierlichen SE0 muss eine
HS-geeignete Vorrichtung zuerst bestimmen, ob der Hub ihr befiehlt,
zu resetten oder auszusetzen. Bei T1 kehrt die Vorrichtung zum FS-Modus
zurück
(wenn sie nicht schon im FS-Modus ist) durch Trennung ihrer HS-Beendigungen
und Rückverbinden
des D+-Endwiderstands. Bei T2, 2,5 us später, testet die Vorrichtung
die Leitung, um zu bestimmen, ob ein SE0 oder FS J vorhanden ist.
Wenn die Leitung bei einem FS J ist, weiß die Vorrichtung, dass der
Hub ein Aussetzen anzeigt und die Vorrichtung setzt dann mit dem
Aussetzen-Prozess fort, welcher hier nicht weiter beschrieben wird.
Wenn die Leitung bei einem SE0 ist, weiß die Vorrichtung, dass der
Hub die Leitungen zum SE0 treibt und kann den Reset-Prozess fortsetzen.
Zu einem Zeitpunkt nicht früher
als T4 muss eine HS-geeignete
Vorrichtung ihren Data+-Endwiderstand abschalten, ihre HS-Beendigungen wiederherstellen
und einen "Chirp" übertragen, welcher nicht später als
T5 endet. Dieser Chirp ist definiert als ein kontinuierliches HS
K mit einer Dauer von wenigstens 8 us. Wenn ein Hub den HS-"Chirp" vor T6 detektiert
und nicht HS-gesperrt ist, beginnt der HS-Betrieb nicht später als
T7. Ein Hub detektiert einen Chirp, wenn er ein kontinuierliches
HS K an seinem Eingang für
wenigstens 2 us sieht. (Die 8-us-Setzung und 2-us-Detektionserfordernisse
machen die HS-Detektion verlässlich
im Vorhandensein von gelegentlichen Rauschereignissen mit Dauer
unter 1 Mikrosekunde.) Die Geschwindigkeit der Verbindung wird als
HS berichtet. Wenn der Hub keinen "Chirp" detektiert oder wenn er HS-gesperrt ist, muss
er in SE0 wenigstens bis T9 bleiben. Die Geschwindigkeit der Verbindung
wird als FS berichtet. Wenn die Vorrichtung das Empfangen von HS
uSOF's vor T8 beginnt,
muss sie fortsetzen, im HS-Modus zu arbeiten. Wenn sie nicht das Empfangen
von HS uSOF's bei
T8 beginnt, muss sie zum FS-Betrieb zurückkehren. Beachte, dass durch
diesen Prozess ein USB-2.0-Hub, welcher einen Port resettet, an
dem nichts angeschlossen ist, initial berichten wird, dass dort
eine FS-Vorrichtung angeschlossen ist und unmittelbar hierauf folgend
eine Trennung detektieren wird.
Zeitparameter | Beschreibung | Wert |
T0 | Hub
setzt SE0 auf den Datenleitungen | 0
(Referenz) |
T1 | Vorrichtung
kehrt zum FS-Modus zurück
(wenn nicht bereits im FS-Modus) durch Verbinden D+-Pull-up und
Entfernen der HS-Beendigungen | 3
ms |
T2 | Vorrichtung
testet für
SE0 auf der Leitung (FS J würde
Aussetzen anzeigen statt Reset) | 2,5
us, nachdem die Vorrichtung zu FS zurückkehrt |
T3 | Hub
beginnt nach HS-"Chirp" von der Vorrichtung
zu hören | 4,75
ms |
T4 | Frühester Zeitpunkt,
zu dem die Vorrichtung den Data+-Endwiderstand trennen kann, die
HS-Beendigungen wiederherstellen und die Übertragung des HS"Chirp" beginnen kann | 5
ms |
T5 | Letzter
Zeitpunkt, zu dem die Vorrichtung die Übertragung des HS-"Chirp" beenden muss | 6
ms |
T6 | Hub
stoppt Hören
nach HS-"Chirp" | 6,25
ms |
T7 | Zeitpunkt,
zu dem der Hub HS-Betrieb beginnen muss, wenn HS-"Chirp" empfangen wurde | T7 < (Ende des HS-"Chirp" + 1 ms) |
T8 | Zeitpunkt,
zu dem die Vorrichtung Data+-Endwiderstand
wiederherstellt und zum FS-Betrieb zurückkehrt, wenn kein HS uSOF's empfangen wurden | (Ende
des HS-"Chirp" + 3 ms) < T8 < (Ende des HS-"Chirp" + 3,5 ms) |
T9 | Frühester Zeitpunkt,
zu dem der Hub den Reset beendet, wenn kein HS-"Chirp" detektiert wurde | 10
ms |
-
Gemäß der Erfindung
ist die folgende Firmware-gesteuerte Verbindung und Trennung einer
Hochgeschwindigkeitsvorrichtung definiert, um es einer Vorrichtung
zu ermöglichen,
den Enumerationsprozess des Hosts zu triggern. Dies wird getan,
indem von der HS-Parallelbeendigung zur FS-Beendigung gegangen wird durch
die Firmwaresteuerung. Der erste Schritt ist, die FS-Beendigung
zu aktiveren, möglicherweise
zusätzlich zu
der HS-Beendigung. Bezug nehmend auf die in 4 gezeigte
bevorzugte Implementation wird dies erreicht, indem die Firmware
bewirkt, dass der Endwiderstand Rpu 480 auf der D+-Leitung
angeschaltet wird, z.B. durch Setzen Rpu_Enable auf hoch. Als Nächstes wird
die HS-Beendigung
entfernt. Dies wird erreicht durch Deaktivieren des LS/FS-Treibers 420,
z.B. durch Setzen des LS/FS_Driver_Output_Enable-Signals auf niedrig.
Vorzugsweise wird auch der SE0-Treiber abgeschaltet (z.B. durch
Setzen des Assert-Single-Ended-Zero-Signals des LS/FS-Treibers 420 auf
niedrig). Einschalten des Endwiderstands stellt sicher, dass die
Beendigungsimpedanz die HS-Beendigungserfordernisse
zu dem Ausmaß überschreitet,
dass der Trennungshülldetektor 460 eine
Trennung signalisieren wird. So wird der Trennungsdetektionsmechanismus in
dem stromabwärts
weisenden Port des Hubs eine Trennung am Ende des nächsten Mikro-SOF-Pakets
detektieren, welcher von dem Hub zu der Vorrichtung ausgesendet
wird. Tatsächlich
wird der Empfänger
des Hubs eine Differenzialsignalamplitude sehen, welche den maximal
erlaubten Datensignallevel überschreitet, weil
die Parallelbeendigung aus ist und der D+-Pull-up-Rpu 480 praktisch
gleichwertig zu einem offenen Ende ist. Entfernen der HS-Beendigung stellt
sicher, dass die verbleibende FS-Beendigung für den Verwendungsprozess geeignet
ist, welcher im FS-Modus beginnt. Sobald der Hub die Trennung detektiert
hat, wird er diese zum Host berichten. Unverzüglich beginnt der Port, nach
einer neuen Verbindung zu prüfen
und wird eine neue Verbindung aufgrund des D+-Pull-up detektieren.
Der Hub und der Host werden diese neue Verbindung wie jede andere
neue Verbindung verarbeiten. Die neu verbundene Vorrichtung wird
resettet. Im Reset-Prozess kann die Vorrichtung zurück zum HS-Betrieb
gemäß des definierten
Algorithmus schalten (mit Chirp-Prozess).
-
Normalerweise
ist die Vorrichtungstrennungsemulation gemäß der Erfindung in einem Computerperipheriegerät implementiert.
Solch ein Peripheriegerät
beinhaltet gewöhnlicherweise
einen eingebetteten Mikrocontroller (oder anderen geeigneten Prozessor),
welcher die Kommunikationstreiber steuert, wie gezeigt in 4.
Folglich wird die Trennungs- und Rückverbindungsemulation durch
den Mikrocontroller unter Steuerung des geeigneten Programms (Firmware)
ausgeführt,
um die Schritte gemäß der Erfindung
auszuführen. Dieses
Computerprogrammprodukt wird gewöhnlich
aus einem Hintergrundspeicher geladen, wie einer Harddisk oder ROM.
Das Computerprogrammprodukt kann initial in dem Hintergrundspeicher
gespeichert sein, nachdem es auf einem Speichermedium, wie einer
CD-ROM, oder über
ein Netzwerk, wie das öffentliche
Internet, verteilt worden ist.