-
Gegenstand der
Erfindung
-
Diese Erfindung betrifft Verfahren
und Geräte,
die Signale mithilfe von Universalen Seriellen Sammelleitungsports
zwischen Einrichtungen übertragen.
Im Besonderen betrifft die Erfindung ein Verfahren, das mithilfe
dieser Ports die Kommunikation zwischen Einrichtungen über eine
vergrößerte Distanz
ermöglicht.
-
Beschreibung der zugrundeliegenden
Rahmenbedingungen
-
Die Universale Serielle Sammelleitung (USB)
Technologie ermöglicht
dem Anwender eine grosse Anzahl von Peripherieeinrichtungen an einen Personal
Computer (PC) anzuschliessen. Da die Technologie alle gebräuchlichen
Peripherieeinrichtungen wie Keyboards, Mäuse, Lautsprecher, Modems,
Joysticks, Kameras u. s. w. unterstützt, wird sie in der Zukunft
die heutzutage verwendeten seriellen und parallelen Ports ersetzen.
Der Apple iMac (Trade Mark) beispielsweise unterstützt ausschliesslich
USB Ports. Seit 1997 wird überdies
fast jeder PC mit USB Ports ausgestattet.
-
USB wurde von einer Allianz der sieben größten Firmen
aus den Computer- und Kommunikationsindustrien ins Leben gerufen.
Diese Unternehmen waren Intel, Compaq, Microsoft, NorTel, NEC, Digital
und IBM. Die Spezifikationen, die USB definieren [z. B. Intel et
al., Universal Serial Bus Spezifikation, Revision 1.0, Januar 1996;
und aktualisiert in Revision 1.1 am 23 September 1998, und spätere Aktualisierungen
und Veränderungen
(wie der Revisionsentwurf 2.0) – nachfolgend
gemeinsam als "USB Spezifikation" bezeichnet, dieser Ausddruck kann auch
zukünftige
Veränderungen
und Revisionen beinhalten) sind nicht urheberrechtlich geschützt und werden
von einer offenen Industrieorganisation, bekannt als das USB Forum,
verwaltet. Die USB Spezifikation legt Kriterien fest; die erfüllt werden
müssen um
den USB Normen zu entsprechen. Die USB Spezifikation definiert auch
verschiedene Begriffe, deren Definitionen zum Zwecke dieser Spezifikation übernommen
werden.
-
Beispielsweise ist eine Voraussetzung
von Revision 1.0 der USB Spezifikation, daß ein einzelner USB Bereich
bis zu 127 Einrichtungen unterstützt, die über ein
gemeinsam benütztes
Medium mit einer maximalen Bandweite von 12 Mbps operieren. Der Revisionsentwurf
2.0 erlaubt jedoch eine Bandweite von 480 Mbps, welches eine Abwandlung
der USB Spezifikation darstellt.
-
Alle bekannten USB Spezifikationen
begrenzen jedoch gegenwärtig
die Distanz auf 5 Meter, die eine Einrichtung von dem Host entfernt
sein darf. Wenn mehrere USB Hubs verwendet werden – diese Einrichtungen
sind konzipiert eine größere Anzahl anstatt
größerer Entfernungen
zu unterstützen – kann diese
Streckenbegrenzung theoretisch auf 30 Meter erhöht werden. Die Verwendung von
mehreren Hubs ist sowohl teuer als auch umständlich. Um beispielsweise eine
einzige Einrichtung in einer Entfernung von 30 Metern zu unterstützen, muss
der Anwender fünf
Hubs zu einem aktuellen Preis von ungefähr $50 US erwerben. Zusätzlich müssen mindestens
zwei dieser Hubs mit elektrischer Leistung versorgt werden. Da die
individuellen Kabel zwischen den Hubs auf jeweils 5 Meter begrenzt
sind, ist es auch sehr wahrscheinlich, daß einige dieser Hubs an sehr
ungelegenen oder unsicheren Stellen positioniert werden müssen.
-
Daher besteht ein Bedarf für Verfahren
und Geräte,
die die Positionierung von USB Einrichtungen in größeren Entfernungen
von dem PC Host ermöglichen.
Beispielweise wird eine ununterbrochene Länge von mindestens 100 Metern
benötigt,
um eine Kompatibilität
mit den Normen bzgl. der Verkabelung kommerziell benutzter Gebäude zu erreichen
(siehe z. B. TIA/EIA-568-A, Commercial Building Telecommunications
Cabling Standard, Telecommunications Industry Association, Oktober
1995). Diese Norm muss ohne die Verwendung von zwischengeschalteten Übertragungseinrichtungen
erreicht werden, da die Verteilungsverkabelung normalerweise nicht
zwischen den Endpunkten, z. B. dem Telecommunikationsschrank und
dem Arbeitsbereich, zugänglich
ist. Auch wenn die Kabel zugänglich
wären,
erlaubt die Verkabelungsnorm jedoch lediglich, daß aktive
Einrichtungen an den Endpunkten eingefügt werden.
-
Stünden ausgedehnte Entfernungen
zur Verfügung,
würde dies
zu neuen Anwendungsmöglichkeiten
für USB
Einrichtungen als auch zu Vereinfachungen bei bestehenden Anwendungen
führen. Beispielsweise
könnte
durch Anschluss von handelsüblichen
Kameras an einen zentralen PC ein einfaches Haus-oder SOHO (small
office, home office) Überwachungssystem
konstruiert werden. Ein an der Wand befestigter Monitor könnte durch
ein räumlich entferntes
Keyboard oder eine Maus überwacht
werden. Eine Türsprechanlage
könnte
von jedem Büro
in einem kommerziell genutzten Gebäude überwacht werden. Es bestehen
viele weitere Anwendungsmöglichkeiten.
-
Gegenwärtig erlauben die USB Spezifikationen
die Verwendung über
eine ausgedehnte Entfernung jedoch nicht. Beispielweise ist eine
weitere Anforderung der USB Spezifikation, daß der Zugriff jeder einzelnen
Einrichtung auf die gemeinsam benützte Kommunikationssammelleitung
von einer einzelnen Host-Steuereinrichtung kontrolliert wird. Es
wird auch spezifiziert, daß nachdem
die Host-Steuereinrichtung eine bestimmte Einrichtung beauftragt
hat ihre Informationen auf der gemeinsam benutzten Sammelleitung
zu plazieren, diese angefragte Information von der Host-Steuereinrichtung
innerhalb (16) "Bit-Zeiten" nach Abgabe dieser Anweisung seitens der
Host-Steuereinrichtung empfangen werden muss in der Praxis gewährleistet
dies, daß die
USB Spezifikation eine hohe Effizienz der Bandbreitenauslastung
sichert, da die Zeitdauer begrenzt ist, in der keine Informationen übertragen
werden. Diese Anforderungen beschränken jedoch auch den physischen Einsatzbereich
der USB Einrichtungen, da eine Ein-Bit-Zeit bei 12 Mbps der Zeit
entspricht, die ein elektronisches Signal benötigt ungefähr 17 Meter eines Kupferkabels
zu durchlaufen, oder eine sogar kürzere Distanz für eine Ein-Bit-Zeit
bei 480 Mbps.
-
Obwohl die USB Einrichtung auf die
Anforderung der Host-Steuereinrichtung innerhalb 16 Bit-Zeiten antworten
muss, werden 7.5 Bit-Zeiten für
eine Verzögerung
innerhalb einer USB Einrichtung und des damit verbundenen 5 Meter
Kabel zugewiesen. Diese Zuweisung lässt nur 8.5 Bit-Zeiten bei
12 Mbps für
weitere Kabelverzögerungen übrig. Die
Zeit, die durch 8.5 Bit-Zeiten dargestellt wird, entspricht der Verzögerung,
die die elektronischen Signale beim Durchlaufen von ungefähr 144 Meter
Kabel erfahren. Diese Kabellänge
ist jedoch nicht ausreichend um der Hin-und Rückwegkabellänge von 200 Metern zu entsprechen,
die aufgrund der vorausgesetzten Verkabelungspezifikation erforderlich
ist.
-
Folglich ist es gegenwärtig nicht
möglich USB
Einrichtungen anzubieten, die über
eine ausgedehnte Entfernung getrennt sind.
-
Eine weitere Eigenschaft der USB
Spezifikation ist jedoch, daß die
USB Spezifikation (oder Protokoll) den Zugriff auf die gemeinsam
benützte
Sammelleitung in einzelne (diskrete) Einheiten, bekannt als "Datenübertragungsblock",
unterteilt. Jeder Datenübertragungsblock
ist so ausgelegt, daß er
eine Zeitdauer von 1 ms beträgt.
-
Weiterhin erfordert die USB Spezifikation noch,
daß mindestens
vier verschiedene Arten von Datenströmen oder "Verkehr" erkannt
werden. Dies sind isochrone Transfers, Kontrolltransfers, Unterbrechungstransfers
und Massentransfers.
-
Ein isochroner Datentransfer wird
dadurch charakterisiert, daß die
Daten im Wesentlichen ununterbrochen und in einem gleichmäßigen Tempo
fliessen, und dies in enger zeitlicher Koordinierung mit dem empfangenden
Mechanismus, der in der Lage ist die eingehenden Daten zu empfangen
und zu benutzen.
-
Es sollte besonders vermerkt werden:
Ein Aspekt der isochronen Transfers ist, daß die zeitgerechte Zustellung
der Information auf Kosten von eventuellen transienten Verlusten
im Datenstrom zugesichert wird. Es wird kein Versuch durchgeführt die Daten,
die eventuell in vorangegangen Übermittlungen
verloren wurden, nocheinmal zu übertragen. Zum
Beispiel ist bei einem isochronen Videosignal der Verlust eines
Datenübertragungsblockes
einer Infonmation im Allgemeinen nicht bedeutend und es besteht
kein Interesse daran den verlorenen Datenübertragungsblock wiederzufinden.
Stattdessen ist die Host-Steuereinrichtung normalerweise mehr an
der Übertragung
oder dem Empfang des aktuellen Datenübertragungsblockes interessiert.
Dementsprechend wird der isochrone Datentransfer als ein "zeitrelevantes"
Datentransfersystem bezeichnet.
-
Diese Art des Datentransfers unterscheidet sich
von dem asynchronen Datentransfer, der sich auf Vorgänge bezieht,
die unabhängig
voneinander ablaufen bis ein abhängiger
Vorgang den anderen Vorgang "unterbricht", und unterscheidet sich
weiterhin vom synchronen Datentransfer, der sich auf Vorgänge bezieht,
bei denen ein Vorgang auf den Abschluss eines Ereignisses in einem
anderen Vorgang warten muss bevor er weitermachen kann. Dementsprechend
werden diese Datentransferverfahren als nicht-zeitrelevant bezeichnet.
Es wird stattdessen eine korrekte Antwort auf jede Anforderung benötigt.
-
Die gegenwärtige Erfindung verwendet daher
die grundlegenden Charakteristika der isochronen und asynchronen
Datentransfers, und im Allgemeineren jeglicher zeitrelevanter oder
nicht-zeitrelevanter Datenübertragungen,
als auch das Vorhandensein von geregelten Protokoll-Datenübertragungsblöcken, um
Verfahren und Geräte
zur Verfügung
zu stellen, die Datenübertragungen über ausgedehnte
Entfernungen ermöglichen.
-
Obwohl sich die USB Technologie als
nützlich
erwiesen hat, wäre
es trotzdem wünschenswert Verbesserungen
der Technologie anzubieten, bei dem ein Verfahren und Gerät ermöglichen,
daß die Datenübertragunggeräte und besonders
zeitrelevante oder nichtzeitrelevante Datenübertragungsgeräte, die
die USB Spezifikation anwenden, über
eine ausgedehnte Entfernung benutzt werden können.
-
Daher ist das Ziel der jetzigen Erfindung, Verfahren
und Geräte
zur Verfügung
zu stellen, die Einrichtungen, Hubs und Steuereinrichtungen und weitere
der USB Spezifikation entsprechende Einrichtungen befähigen, über größere Entfernungen
zu kommunizieren als dies gegenwärtig
unter der USB Spezifikation erlaubt sind.
-
Ein weiteres Ziel der jetzigen Erfindung
ist, daß die
besagte ausgedehnte Entfernung ohne zwischengeschaltete Hubs, Übertragungseinrichtungen oder
andere Verfahren einer elektronischen Signalneuerstellung erreicht
wird.
-
Ein weiteres Ziel der jetzigen Erfindung
ist, daß keine
Veränderungen
an der Hardware und Software der bestehenden vom System unterstützten Einrichtungen,
Hubs und Steuereinrichtungen vorgenommen werden müssen. Dies
gilt besonders für
isochrone als auch asynchrone Syteme, die unter der USB Spezifikation
operieren. Die Erfindung kann dadurch in Netzwerke eingefügt werden,
die aus Einrichtungen mit sowohl konventioneller Entfernung als auch
ausgedehnter Entfernung bestehen.
-
Ein weiteres Ziel der jetzigen Erfindung
ist, daß das
Gerät sehr
kosteneffizient ist und dadurch der breiten Masse der von der USB
Industrie anvisierten Einrichtungen entspricht. Diese und weitere Ziele
der Erfindung, die nachstehend ersichtlich werden, werden durch
die nachfolgend beschriebene jetzige Erfindung erreicht.
-
Zusammenfassung der Erfindung
-
Die jetzige Erfindung stellt dementsprechend in
ihrer am weitesten ausgelegten Form ein Verfahren zur Verfügung, das
Daten zwischen einer Host-Steuereinrichtung und einer Peripherieeinrichtung über eine
ausgedehnte Entfernung überträgt; Das
Verfahren beinhaltet:
- a. Zuführen eines
ersten ursprünglichen
abgehenden digitalen Signals von einer Host-Steuereinrichtung zu einer lokalen Erweiterungseinheit;
- b. Optionales Konvertieren des abgehenden digitalen Signals
in ein konvertiertes abgehendes Signal mit einem zur Übertragung über ausgedehnte
Entfernungen geeigneten Format;
- c. Übertragen
entweder des abgehenden digitalen Signals oder des konvertierten
abgehenden Signals als abgehendes Übertragungssignal über ein Signalverteilungssystem;
- d. Empfangen des abgehenden Übertragungssignals
an einer entfernten Erweiterungseinheit;
- e. Optionales Konvertieren des abgehenden Übertragungssignals in das erste
ursprüngliche abgehende
digitale Signal;
- f. Zuführen
des ersten ursprünglichen
digitalen Signals von der entfernten Erweiterungseinheit zu zumindest
einer Peripherieeinrichtung;
- g. Empfangen eines digitalen Antwortsignals von der Peripherieeinrichtung
an der entfernten Erweiterungseinheit.
- h. Optionales Konvertieren des digitalen Antwortsignals in ein
konvertiertes Antwortsignal mit einem zur Übertragung über ausgedehnte Entfernungen
geeigneten Format;
- i. Übertragen
des digitalen Antwortsignals oder des konvertierten Antwortsignals
als Antwortübertragungssignal über das
Signalverteilungssystem;
- j. Empfangen des Antwortübertragungssignals
an der lokalen Erweiterungseinheit;
- k. Optionales Konvertieren des Antwortübertragungssignals in das ursprüngliche
digitale Anwortsignal;
- l. Speichern des digitalen Antwortsignals als gespeichertes
digitales Antwortsignal bis zum Empfang eines nachfolgenden ursprünglichen
abgehenden digitalen Signals von der Host-Steuereinrichtung, das
das gleiche wie das erste ursprüngliche
abgehende digitale Signal ist oder diesem ähnlich ist, und
- m. Weiterleiten des gespeicherten digitalen Antwortsignals zu
der Host-Steuereinrichtung als Antwort auf das nachfolgende ursprüngliche
abgehende digitale Signal.
-
In Bezug auf den isochronen Datenstrom und
einen zeitrelevanten Datenstrom im Allgemeinen, stellt das erste
oder nachfolgende ursprüngliche abgehende
digitale Signal eine Anforderung nach zeitrelevanten Daten und vorzugsweise
einem isochronen Datenstrom dar.
-
Zum Zwecke der jetzigen Spezifikation
bezieht sich der Ausdruck "zeitrelevanter Datenstrom" auf Datenströme wie isochrone
Datenströme
wobei der Verlust eines Datenübertragungsblocks
von einer vorangegangenen Übertragung
weniger Bedeutung hat und dieser folglich nicht noch mal übertragen
werden muss.
-
In der bevorzugten Ausführung entsprechen alle
digitalen Signale der USB Spezifikation ( außer bei der Entfernung zwischen
Einrichtungen), und alle digitalen Signale und die digitalen Antwortsignale
im Besonderen stellen isochrone Daten dar.
-
In einer weiteren bevorzugten Ausführung stellt
die jetzige Erfindung ein Verfahren zur Übertragung von isochronen Daten
gemäß der USB
Spezifikation zur Verfügung,
wobei isochrone Daten von einer Peripherieeinrichtung übertragen
und durch eine Host-Steuereinrichtung
empfangen werden. Das Verfahren beinhaltet diese Schritte:
- a. Übertragen
einer Anforderung isochroner Daten von einer Host-Steuereinrichtung
zu einer lokalen Erweiterungseinheit;
- b. Weiterleiten der Anforderung isochroner Daten von der besagten
Erweiterungseinheit zu einer entfernten Erweiterungseinheit über ein
Signalverteilungssystem.
- c. Zuführen
der weitergeleiteten Anforderung isochroner Daten zu zumindest einer
Peripherieeinrichtung;
- d. Übertragen
der angeforderten isochronen Daten von der Peripherieeinrichtung
zu der entfernten Erweiterungseinheit;
- e. Weiterleiten der angeforderten isochronen Daten von der entfernten
Erweiterungseinheit zu der lokalen Erweiterungseinheit über das
Signalverteilungssystem;
- f. Speichern der angeforderten isochronen Daten in einem Paketpuffer
an der lokalen Erweiterungseinheit;
- g. Übertragen
einer nachfolgenden Anforderung isochroner Daten von der Host-Steuereinrichtung zu
der lokalen Erweiterungseinheit;
- h. Empfangen der nachfolgenden Anforderung isochroner Daten
an der lokalen Erweiterungseinheit und
- I. Abrufen der gespeicherten isochronen Daten von der lokalen
Erweiterungseinheit;
- II. Zuführen
der isochronen Daten zu der Host-Steuereinrichtung;
- III. Weiterleiten der nachfolgenden Anforderung isochroner Daten
von der lokalen Erweiterungseinheit zu der entfernten Erweiterungseinheit über das
Signalverteilungssystem und
- IV. Wiederholen der Schritte (c) bis (h) für die nachfolgende Anforderung
und jede weitere nachfolgende Anforderung isochroner Daten.
-
In einer noch mehr bevorzugten Ausführung stellt
die jetzige Erfindung ein Verfahren bereit, das zusätzlich noch
die folgenden Schritte nach oben beschriebenen Punkt "a" enthält. Diese
sind:
- i. Bestimmen, ob die lokale Erweiterungseinheit bereits
die angeforderten isochronen Daten besitzt;
- ii. Erzeugen eines synthetischen Datenpakets, wenn keine derartigen
angeforderten isochronischen Daten vorhanden sind, und
- iii. Zuführen
der synthetischen isochronen Daten zu der Host-Steuereinrichtung.
-
Ein Verfahren zur Erzeugung des synthetischen
Datenpakets wird unten beschrieben.
-
In Bezug auf einen asynchronen Datenstrom und
auf einen nicht-zeitrelevanten Datenstrom im Allgemeinen, stellt
die jetzige Erfindung ein Verfahren zur Verfügung, wobei das erste oder
nachfolgende ursprüngliche
abgehende digitale Signal eine Anforderung nach zeit-relevanten
Daten und vorzugsweise einen asynchronen Datenstrom darstellt.
-
Zum Zwecke der jetzigen Spezifikation
bezieht sich der Ausdruck "nicht-zeitrelevante Daten" auf Datenströme wie asynchrone
Datenströme
bei denen der Verlust eines Datenübertragungsblocks von einer
vorherigen Übertragung
nicht akzeptabel ist und daher ein aktueller, korrekter Transfer
der Information benötigt
wird.
-
In einem bevorzugten Ausführungsbeispiel entsprechen
alle digitalen Signale der USB Spezifikation (ausser bei der Entfernung
zwischen Einrichtungen) und alle digitalen. Signale und das digitale Antwortsignal
im Besonderen stellen asychrone Daten dar.
-
In einer weiteren bevorzugten Ausführung stellt
die jetzige Erfindung ein Verfahren zur Übertragung von asynchronen
Daten gemäß der USB
Spezifikation zur Verfügung,
wobei asynchrone Daten von einer Peripherieeinrichtung übertragen
und durch eine Host-Steuereinrichtung
empfangen werden. Das Verfahren beinhaltet diese Schritte:
- a)
Empfangen einer ursprünglichen
Anforderung asynchroner Daten von einer Host-Steuereinrichtung an
einer lokalen Erweiterungseinheit;
- b) Weiterleiten der ursprünglichen
Anforderung asynchroner Daten von der lokalen Erweiterungseinheit zu
einer entfernten Erweiterungseinheit über ein Signalverteilungssystem;
- c) Empfangen der weitergeleiteten ursprünglichen Anforderung asynchroner
Daten an einer entfernten Erweiterungseinheit;
- d) Zuführen
der weitergeleiteten ursprünglichen
Anforderung asynchroner Daten zu zumindest einer Peripherieeinrichtung;
- e) Empfangen der angeforderten asynchronen Daten von Peripherieeinrichtung
an entfernter Erweiterungseinheit;
- f) Weiterleiten der angeforderten asynchronen Daten von entfernter
Erweiterungseinheit zu lokaler Erweiterungseinheit über das
Signalverteilungssystem;
- g) Speichern der angeforderten asynchronen Daten in einem Packetpuffer
an der lokalen Erweiterungseinheit;
- h) Empfangen der nachfolgenden Anforderung asynchroner Daten
von Host-Steuereinrichtung
an lokaler Erweiterungseinheit und
- i) Weiterleiten der nachfolgenden Anforderung asynchroner Daten
von lokaler Erweiterungseinheit an eine entfernte Erweiterungseinheit über das
Signalverteilungssystem;
- ii) Zuführen
der weitergeleiteten nachfolgenden Anforderung asynchroner Daten
an zumindest eine Peripherieeinrichtung;
- iii) Empfangen der angeforderten asynchronen Daten von Peripherieeinrichtung
an entfernter Erweiterungseinheit;
- i) Zusätzliches
Empfangen der nachfolgenden Anforderung asynchroner Daten von Host-Steuereinrichtung
wie in Schritt (h) an lokaler Erweiterungseinheit und
- i) Abrufen der gespeicherten asynchronen Daten von Paketpuffer;
- ii) Zuführen
der aufgerufenen asynchronen Daten zu der Host-Steuereinrichtung;
- j) Empfangen eines abgehenden Bestätigungssignals von Host-Steuereinrichtung
an lokaler Erweiterungseinheit;
- k) Optionales Konvertieren des abgehenden Bestätigungssignals
in ein konvertiertes Bestätigungssignal mit
einem zur Übertragung über ausgedehnte
Entfernungen geeigneten Format;
- l) Übertragen
entweder des abgehenden Bestätigungssignals
oder des konvertierten Bestätigungssignals
als Bestätigungsübertragungssignal über ein Signalverteilungssystem;
- m) Empfangen des Bestätigungsübertragungssignals
an einer entfernten Erweiterungseinheit;
- n) optionales Konvertieren des Bestätigungsübertragungssignals in das abgehende
Bestätigungssignal und
- o) Zuführen
des abgehenden Bestätigungssignals von
der entfernten Erweiterungseinheit zu zumindest einer Peripherieeinrichtung.
-
In einer bevorzugten Ausführung stellt
das Verfahren auch die folgenden zusätzlichen Schritte nach oben
beschriebenen Schritt (b) zur Verfügung. Diese sind:
- i)
Bestimmen ob die lokale Erweiterungseinheit bereits die angeforderten
asynchronen Daten besitzt;
- ii) Erzeugen eines negativen Bestätigungspakets, wenn keine derartigen
angeforderten asynchronen Daten vorhanden sind, und
- iii) Zuführen
des negativen Bestätigungspakets
zu der Host-Steuereinrichtung.
-
In einer noch mehr bevorzugten Ausführung stellt
die jetzige Erfindung auch wie oben beschrieben ein Verfahren in
Bezug auf die jetzige Erfindung zur Verfügung, wobei das Verfahren ein
Verfahren zur Übertragung
von asynchronen Daten gemäß der USB
Spezifikation zur Verfügung
stellt bei dem asynchrone Daten von einer Host-Steuereinrichtung übertragen
und von einer Peripherieeinrichtung empfangen werden. Das Verfahren
enthält
diese Schritte:
- a) Empfangen einer ursprünglichen Ankündigung asynchroner
Daten von einer Host-Steuereinrichtung an einer lokalen Erweiterungseinheit;
- b) Weiterleiten der ursprünglichen
Ankündigung asynchroner
Daten von der lokalen Erweiterungseinheit zu einer entfernten Erweiterungseinheit über ein Signalverteilungssystem;
- c) Emfangen der weitergeleiteten ursprünglichen Ankündigung
asynchroner Daten an einer entfernten Erweiterungseinheit;
- d) Zuführen
der weitergeleiteten Ankündigung
asynchroner Daten zu. zumindest einer Peripherieeinrichtung;
- e) Empfangen eines ursprünglichen
asynchronen Datenpakets von einer Host-Steuereinrichtung an einer lokalen Erweiterungseinheit;
- l) Weiterleiten des ursprünglichen
asynchronen Datenpakets von der lokalen Erweiterungseinheit zu einer
entfernten Erweiterungseinheit über
ein Signalverteilungssystem;
- g) Empfangen des weitergeleiteten ursprünglichen Datenpakets an einer
entfernten Erweiterungseinheit;
- h) Zuführen
des weitergeleiteten ursprünglichen asynchronen
Datenpakets zu zumindest einer Peripherieeinrichtung;
- i) Empfangen eines eingehenden Bestätigungspakets von der Peripherieeinrichtung
an der entfernten Erweiterungseinheit;
- j) Weiterleiten des eingehenden Bestätigungspakets von der entfernten
Erweiterungseinheit zu der lokalen Erweiterungseinheit über das
Signalverteilungssystem:
- k) Speichern des eingehenden Bestätigungspakets in einem Paketpuffer
an der lokalen Erweiterungseinheit;
- l) Empfangen einer nachfolgenden Ankündigung asynchroner Daten von
der Host-Steuereinrichtung an der lokalen Erweiterungseinheit;
- m) Empfangen eines nachfolgenden asynchronen Datenpakets von
der Host-Steuereinrichtung
an der lokalen Erweiterungseinheit, und
- i) Abrufen des gespeicherten eingehenden Bestätigungspakets
aus dem Paketpuffer und
- ii) Zuführen
des abgerufenen eingehenden Bestätigungspakets
zu der Host-Steuereinrichtung.
-
Darüberhinaus wird bevorzugt, daß das oben
beschriebene Verfahren zusätzlich
diese folgenden Schritte beinhaltet:
- i) Bestimmen, ob die
lokale Erweiterungseinheit das eingehende Bestätigungspaket bereits verarbeitet;
- ii) Erzeugen eines negativen Bestätigungspakets, wenn kein derartiges
eingehendes Bestätigungspaket
vorhanden ist, und
- iii) Zuführen
des negativen Bestätigungspakets
zu der Host-Steuereinrichtung.
-
In Systemen bei denen nach Übertragung
eines Datenpakets eine Überwachungszeit
verhängt wird
(um eine vorzeitige Übertragung
eines anderen Pakets zu verhindern) stellt die bevorzugte Ausführung der
jetzigen Erfindung auch ein wie oben beschriebenes Verfahren zur
Verfügung,
das zusätzlich aus
den folgenden Stufen besteht:
- a) Empfangen eines abgehenden
Datenpakets an einer entfernten Erweiterungseinheit,
- b) Bestimmen des Übertragungstyps
des abgehenden Datenpakets an einer entfernten Erweiterungseinheit,
- c) Weiterleiten des abgehenden Datenpakets von der entfernten
Erweiterungseinheit zu einer USB-Einrichtung,
- d) Einstellen des Wert eines Übertragungsüberwachungszeitgebers auf einen
Wert, der von dem bestimmten Übertragungstyp
abhängt
und
- e) Verhindern weiterer abgehender Übertragungen bis der Überwachungszeitgeber
abgelaufen ist.
-
In einer bevorzugten Ausführung in
einer zeitrelevanten oder nicht-zeitrelevanten Datenübertragung
beträgt
die ausgedehnte Entfernung mehr als 5 Meter, vorzugsweise mehr als
30 Meter und ist noch besser größer oder
gleich 100 Meter. Die Entfernung zwischen der lokalen Erweiterungseinheit und
der entfernten Erweiterungseinheit ist größer als 5 Meter, vorzugsweise
größer als
30 Meter und noch besser größer oder
gleich 100 Meter.
-
Die jetzige Erfindung kann wie das
frühere Modell
in einem System verwendet werden, wobei der PC zur Host-Steuereinrichtung
wird und die Peripherieeinrichtung beispielsweise eine Kamera, Maus,
Keyboard, Monitor oder ein Lautsprecher (bzw. mehrere Lautsprecher)
ist.
-
Obwohl eine Anzahl verschiedener
Signalverteilungssysteme verwendet werden kann, benutzt das Signalverwendungssystem
vorzugsweise eine nicht-abgeschirmte verdrillte Doppelleitung UTP (oder
Verkabelung). Es können
jedoch auch andere Signalverteilungssysteme wie beispielsweise Koaxialkabel,
entstörtes
verdrilltes Paar oder Faseroptiksysteme mit Fasteroptikverkabelung
verwendet werden.
-
In einer anderen Beziehung stellt
die jetzige Erfindung auch Geräte
zur Übertragung
eines digitalen Signals über
eine ausgedehnte Entfernung zur Verfügung. Dies umfasst:
eine
lokale Erweiterungseinheit, die Vorrichtungen zum Empfangen einer
Datensignalanforderung von einer an die lokale Erweiterungseinheit
verbundenen Host-Steuereinrichtung
enthält;
Vorrichtungen
in der lokalen Erweiterungseinheit zur Erzeugung eines abgehenden Übertragungssignals;
Vorrichtungen
in lokaler Erweiterungseinheit zum Versenden eines abgehenden Übertragungssignals zu
einer entfernten Erweiterungseinheit. Diese Signale werden über ein
Signalverteilungssystem geschickt.
-
Eine entfernte Erweiterungseinheit,
die Vorrichtungen zum Empfang der abgehenden Übertragungssignale enthält;
Vorrichtungen
in entfernter Erweiterungseinheit zur Erzeugung eines digitalen
Signals aus dem abgehenden Übertragungssignals;
Vorrichtungen
in entfernter Erweiterungseinheit zur Weiterleitung des digitalen
Signals zu zumindest einer mit der entfernten Erweiterungseinheit
verbundenen Peripherieeinrichtung:
Vorrichtungen in entfernter
Erweiterungseinheit zum Empfang des eingehenden digitalen Signals
von den Peripherieeinrichtungen;
Vorrichtungen in entfernter
Erweiterungseinheit zum Konvertieren der eingehenden digitalen Signale
in eingehende Übertragungssignale;
Vorrichtungen
in entfernter Erweiterungseinheit zum Versenden des eingehenden Übertragungssignals
zu lokaler Erweiterungseinheit über
ein Signalverteilungssystem;
Vorrichtungen in lokaler Erweiterungseinheit
zum Empfang des eingehenden Übertragungssignals;
Vorrichtungen
in lokaler Erweiterungseinheit zur Erzeugung eines digitalen Signals
aus der eingehenden Übertragung
und
Vorrichtungen in entfernter Erweiterungseinheit zur Weiterleitung
des digitalen Signals zu der Host-Steuereinrichtung.
-
In einer Ausführung ist das Datensignal zeitrelevant
und vorzugsweise ein isochrones Datensignal. In Bezug auf zeitrelevante
Datensignale (oder Datenströme)
beinhaltet die lokale Erweiterungseinheit vorzugsweise noch zusätzlich:
- a) Vorrichtung zum Speichern des eingehenden Signals als ein
gespeichertes eingehendes Signal;
- b) Vorrichtung zur Analyse des digitalen Signals von der Host-Steuereinrichtung
um eine nachfolgende Anforderung zur Übertragung des zeitrelevanten
digitalen Signals zu erkennen und
- c) Vorrichtung zum Senden des gespeicherten eingehenden Signals
zu der Host-Steuereinrichtung
als Antwort auf die nachfolgende Anforderung.
-
In einer alternativen Ausführung ist
das Datensignal ein nicht-zeitrelevantes Datensignal und ist vorzugsweise
ein asynchrones Datensignal. Demzufolge stellt die jetzige Erfindung
in Bezug auf nicht-zeitrelevante Daten auch Geräte zur Übertragung eines digitalen
Signals über
eine ausgedehnte Entfernung zur Verfügung. Dies umfasst:
- a)
eine lokale Erweiterungseinheit, die eine Vorrichtung enthält zum Empfang
einer Anforderung eines nicht-zeitrelevanten Datensignals von der
Host-Steuereinrichtung,
die mit der lokalen Erweiterungseinheit verbunden ist, wobei das
nicht-zeitrelevante Datensignal ein der USB Spezifikation entsprechendes
Datensignal ist.
- b) eine Vorrichtung in der lokalen Erweiterungseinheit zum Erzeugen
eines abgehenden Übertragungssignals;
- c) eine Vorrichtung in der lokalen Erweiterungseinheit zum Versenden
eines abgehenden Übertragungssignals über ein
Signalverteilungssystem zu einer entfernten Erweiterungseinheit;
- d) eine entfernte Erweiterungseinheit, die eine Vorrichtung
zum Emfpang des abgehenden Übertragungssignals
besitzt;
- e) eine Vorrichtung in der entfernten Erweiterungseinheit zur
Erzugung eines digitalen Signals aus dem abgehenden Übertragungssignals;
- f) Eine Vorrichtung in der entfernten Erweiterungseinheit zur
Weiterleitung des digitalen Signals zu zumindest einer Peripherieeinrichtung,
die mit der entfernten Erweiterungseinheit verbunden ist;
- g) Vorrichtung in entfernter Erweiterungseinheit zum Empfang
der eingehenden digitalen Signale von den Peripherieeinrichtungen;
- h) Vorrichtung in entfernter Erweiterungseinheit zum Konvertieren
der eingehenden digitalen Signale in ein eingehendes Übertragungssignal;
- i) Vorrichtung in entfernter Erweiterungseinheit zum Senden
des eingehenden Übertragungssignals
zu lokaler Erweiterungseinheit, wobei die Signale über das
Signalverteilungssystem geschickt werden;
- j) Vorrichtung in lokaler Erweiterungseinheit zum Empfang des
eingehenden Übertragungssignals;
- k) Vorrichtung in lokaler Erweiterungseinheit zur Erzeugung
eines digitalen Signals aus der eingehenden Übertragung und;
- l) Vorrichtung in entfernter Erweiterungseinheit zur Weiterleitung
des digitalen Signals an die Host-Steuereinrichtung.
-
Das nicht-zeitrelevante Signal sollte
vorzugsweise asynchrone Datenmaterial sein.
-
In einer bevorzugten Ausführung stellt
die jetzige Erfindung auch Geräte
zur Verfügung
wobei die lokale Erweiterungseinheit zusätzlich noch dies einschliesst:
- a) Vorrichtung zum Speichern des eingehenden Signals als ein
gespeichertes eingehendes Signal;
- b) Vorrichtung zur Analyse des von der Host-Steuereinrichtung
eingehenden digitalen Signals um eine nachfolgende Anforderung zur Übertragung
des nicht-zeitrelevanten Datensignals zu erkennen und
- c) Vorrichtung zum Senden des gespeicherten eingehenden Signals
zu Host-Steuereinrichtung
als Antwort auf die nachfolgende Anforderung.
-
Beschreibung
der bevorzugten Ausführenen
-
Obwohl verschiedene Signalverteilungssysteme
wie oben beschrieben verwendet werden können, werden die Signale vorzugsweise über ein
Signalverteilungssystem übertragen,
das Nicht-Abgeschirmte Verdrillte Doppelleitung UTP-Kupferkabel benutzt.
Diese Art Anschlüsse
sind eine kostengünstiges,
effektives Mittel zur Datenübertragung.
In einer anderen Ausführung
des Systems können
die Signale auch über
Koaxialkabel, abgeschirmte Kabel oder ein Faseroptikverteilungssystem übertragen
werden.
-
Obwohl die Verfahren und Geräte der jetzigen
Erfindung eine allgemeine Verwendung in verschiedenen Anwendungen
finden, ist es äusserst wichtig,
daß die
Datenübertragungsverfahren
und Geräte
der jetzigen Erfindung so eingerichtet sind, daß sie den USB Spezifikationen
entsprechen (mit Ausnahme der Entfernungsvorausssetzungen). Vorzugsweise
ist das ursprüngliche
Signal von der Host-Steuereinrichtung eine Datenanforderung von der
Peripherieeinrichtung. Zusätzlich
sind die angeforderten Daten vorzugsweise von Peripherieeinrichtungen
wie Kameras, Keyboards, Mäusen,
Monitoren, Lautsprecher und Ähnlichem.
-
Bei zeitrelevanten Datenströmen und
besonders bei Vorgängen,
in denen die Verfahren und Geräte
der jetzigen Erfindung in Anwendungen mit Übertragungen über ausgedehnte
Entfernungen verwendet werden, wird es vorgezogen, daß die Geräte vorzugsweise
fähig sind isochrone
Transfers beim Empfang zu erkennen. Die im isochronen Transfer enthaltenen
Daten werden dann im System für
eine bestimmte Zeitdauer gespeichert. Dementsprechend können die
Daten, die während
eines bestimmten Datenübertragungsblocks
empfangen werden, gespeichert und dann in einem folgenden Datenübertragungsblock übertragen
werden. Eine zusätzliche bevorzugte
Ausführung
der jetzigen Erfindung beinhaltet, daß isochrone Transfers, die
von mehreren Quellen stammen, gespeichert und wieder neu übertragen
werden können.
-
Bei Anwendung der bevorzugten Ausführung der
jetzigen Erfindung kann die Host-Steuereinrichtung
(vorzugsweise ist das ein PC) einen isochronen Datentransfer bei
einer Einrichtung anfordern. Die Anforderung wird von dem Gerät der jetzigen
Erfindung empfangen und neu an die Zieleinrichtung übertragen.
Wenn die Antwort auf den angeforderten isochronen Datentransfer
von dem Gerät
der Zieleinrichtung empfangen wird, werden die isochronen Daten
im internen Speicher des Gerätes
gespeichert. Während
des nachfolgenden Datenübertragungsblocks
fordert die Host-Steuereinrichtung wieder einen Transfer der isochronen
Daten bei der Zieleinrichtung an. Zusätzlich erkennt das Gerät jedoch, daß in seinem
internen Speicher gegenwärtig
isochrone Daten von der Zieleinrichtung gespeichert sind. Das Gerät schickt
diese Daten an die Host-Steuereinrichtung innerhalb der 16 Bit-Zeit Spanne,
die sich auf die gegenwärtige
Anforderung innerhalb des gegenwärtigen
Datenübertragungsblocks
bezieht. Auf diese Weise benutzt das Gerät die Daten, die in einem früheren Datenübertragungsblock
gesammelt wurden, um der Reaktionszeit des gegenwärtigen Datenübertragungsblocks
zu genügen.
-
Wenn ein Paket von der Zieleinrichtung
empfangen wird und keine weitere Datenanforderung von der Host-Steuereinrichtung
empfangen wird, wird das oder die letzten empfangenen und gespeicherten Datenpakete
(nachfolgend als "spurenhafte" Pakete bezeichnet) vorzugsweise aus
dem System entfernt, damit sie nicht übertragen werden, falls eine
weitere Anforderung von der Host-Steuereinrichtung empfangen wird.
Dies wird vorzugsweise durch eine Abänderung des oben beschriebenen
Verfahrens mithilfe der folgenden zusätzlichen Schritte erreicht.
Diese sind:
- i) Ermitteln ob ein neuer Datenübertragungsblock
begonnen wurde;
- ii) Prüfen
der Eigenschaften jedes einzelnen Paketpuffers;
- iii) Bestimmen, ob das in dem Paketpuffer enthaltene Datenpaket
zumindest eine komplette Datenübertragungsblockperiode
gespeichert wurde;
- iv) Verwerfen des enthaltenen Datenpakets wenn das enthaltene
Datenpaket zumindest eine vollständige
Datenübertragungsblockperiode
gespeichert wurde und
- v) Wiederholen der Schritte (i) bis (iv) für jeden Paketpuffer im System.
-
In einer alternativen Ausführung der
Erfindung behandelt das Gerät
die erste Anforderung eines eingehenden isochronen Datentransfers
in einer einzigartigen Vorgehensweise. Diese einzigartige Vorgehensweise
verlangt, daß das
Gerät sein
eigenes synthetisches eingehendes Datenpaket erzeugt. Die Erzeugung
des synthetischen Datenpakets wird nachfolgend beschrieben.
-
Es ist möglich, daß die von der entfernten Erweiterungseinheit
geschickten Pakete eventuell nicht in der erwarteten Reihenfolge
an der lokalen Erweiterungseinheit, wie von der lokalen Erweiterungseinheit
erwartet, eingehen. Um Schwierigkeiten zu verhindern, die eventuell
durch dieses Ereignis verursacht werden könnten, beinhaltet das Verfahren
der jetzigen Erfindung auch vorzugsweise die folgenden Schritte.
Diese sind:
- i) Speichern der Adresse der angeforderten
Peripherieeinrichtung an der entfernten Erweiterungseinheit nachdem
die lokale Erweiterungseinheit die weitergeieitete Anforderung isochroner
Daten zugestellt hat;
-
Nach Übertragung der angeforderten
isochronen Daten von der Peripherieeinrichtung zu der entfernten
Erweiterungseinheit sind noch folgende Schritte notwendig:
- i)
Abrufen der Adresse der angeforderten Peripherieeinrichtung an der
entfernten Erweiterungseinheit und
- ii) Hinzufügen
der abgerufenen Adresse zu den angeforderten isochronen Daten.
-
In Bezug auf nicht-zeitrelevante
Datenströme
und besonders asynchrone Datensignale, -ströme, -oder transfers wird es
vorgezogen, daß während der
Anwendung des Verfahrens oder während der
Benutzung des Gerätes
der jetzigen Erfindung, das Gerät
vorzugsweise fähig
ist asynchrone Transfers beim Empfang zu erkennen. Die im asynchronen Datentransfer
enthaltenen Daten werden dann im System eine bestimmte Zeitperiode
lang gespeichert. Dementsprechend können Daten, die während einer bestimmten
Zeitperiode empfangen wurden, gespeichert und dann in der nächsten Zeitperiode übertragen
werden. Eine weitere bevorzugte Ausführung der jetzigen Erfindung
beinhaltet, daß asynchrone
Daten, die von einer Vielzahl von Quellen stammen, gespeicher und
neu übertragen
werden können.
-
Bei der Anwendung der bevorzugten
Ausführung
der jetzigen Erfindung in Bezug auf einen nicht-zeitrelevanten Datenstrom
und besonders auf einen asynchronen Datenstrom, kann die Host-Steuereinrichtung
(vorzugsweise ein PC) einen asynchronen Datentransfer bei einer
Einrichtung anfordern. Die Anforderung wird von dem Gerät der jetzigen
Erfindung empfangen und wird neu an die Zieleinrichtung übertragen.
Wenn die angeforderte asynchrone Transferantwort von der Zieleinrichtung
an dem Gerät
empfangen wird, werden die asynchronen Daten im internen Speicher
des Gerätes
gespeichert. Während
der nachfolgenden Zeitperiode fordert die Host-Steuereinrichtung
den asynchronen Datentransfer bei der Zieleinrichtung an. Das Gerät überträgt dann
die Anforderung wieder weiter an die Zieleinrichtung. Zusätzlich erkennt
das Gerät
jedoch, daß es
gegenwärtig
asynchrone Daten von der Zieleinrichtung in seinem internen Speicher
gespeichert hat. Das Gerät
schickt diese Daten an die Host-Steuereinrichtung innerhalb der
16 Bit Zeitspanne, die für die
gegenwärtige
Anforderung innerhalb der gegenwärtigen
Zeitperiode maßgeblich
ist. Das Gerät
benutzt auf diese Weise Daten, die in einer vorangegangen Zeitperiode
gesammelt wurden, um die Auflagen der Antwortzeit der gegenwärtigen Zeitperiode zu
erfüllen.
-
Der Ausdruck "Zeitperiode" kann sich
auf eine bestimmte Zeitperiode von Interesse beziehen (dies kann
ein Teil des Datenübertragungsblocks, eine
Vielzahl von Datenübertragungsblöcken oder Ähnliches
sein), aber idealerweise ist dies ein einzelner "Datenübertragungsblock"
gemäß der USB
Spezifikation.
-
Die "Host-Steuereinrichtung" ist
vorzugsweise ein PC wie bereits vorangegangen aufgeführt. Die Host-Steuereinrichtung
kann jedoch auch Teil eines Computersystems und im Besonderen Teil
eines Computersystemsnetzwerk sein.
-
Durch Anwendung des Verfahrens und
des Gerätes
der jetzigen Erfindung können
zeitrelevante oder nicht-zeitrelevante, isochrone und besonders asynchrone
Daten über
ausgedehnte Entfernungen, und im Besonderen über Entfernungen die größer als die
in der USB Spezifikation genannten Entfernungen, übermittelt
werden.
-
Andere Features der jetzigen Erfindung
und andere diesbezüglich
begleitende Ziele und Vorteile werden in der folgenden Beschreibung
und begleitenden Graphiken dargestellt. Gleiche Referenznummern
beschreiben gleiche Komponenten.
-
Kurze Beschreibung
der Zeichnungen
-
Die Erfindung einschliesslich verschiedener diesbezüglicher
Aspekte werden durch Verweise auf die beigefügten Zeichnungen beschrieben.
Dies beinhaltet:
-
1 ist
ein mit einem herkömmlichem USB
Hub und USB Einrichtungen ausgestatteter PC;
-
2 ist
ein PC, der mit einem Hub für
Ausgedehnte Entfernung und USB Einrichtungen gemäß der jetzigen Erfindung ausgestattet
ist;
-
3 ist
eine schematische Zeichnung einer Ausführung der Erfindung, die eine UTP
Schaltung als Signalverteilungssystem benützen soll;
-
4 ist
ein Zeitdiagramm, das isochrone Transfers gemäß dem USB Protokoll darstellt;
-
5 ist
ein Zeitdiagramm, das isochrone Transfers gemäß der jetzigen Erfindung darstellt;
-
6 ist
eine schematische Zeichung einer Ausführung der lokalen Erweiterungseinheit
gemäß der Erfindung;
-
7 ist
eine schematische Zeichnung einer Ausführung der entfernten Erweiterungseinheit gemäß der Erfindung;
-
8 ist
ein Ablaufdiagramm, das einen isochronen Input Transfer gemäß der Erfindung
darstellt;
-
9 ist
ein alternativer isochroner Input Transfer gemäß der Erfindung;
-
10 ist
ein Ablaufdiagramm, das einen isochronen Output Transfer gemäß der Erfindung darstellt;
-
12 ist
ein Logik-Diagramm einer LEX Steuereinrichtung gemäß der Erfindung;
-
12 ist
ein Logik-Diagramm einer erweiterten LEX Steuereinrichtung gemäß der Erfindung; 13 ist ein Logik-Diagramm
einer zusätzlichen Erweiterung
der LEX Steuereinrichtung, die nun die Entfernung von spurenhaften
Paketen ermöglicht;
-
14 ist
ein Logik-Diagramm einer REX Steuereinrichtung gemäß der Erfindung;
-
15 ist
ein Logik-Diagramm einer erweiterten REX Steuereinrichtung gemäß der Erfindung;
-
16 ist
ein Zeitdiagramm, das einen asynchronen Transfer gemäß des USB
Protokolls darstellt;
-
17 ist
ein Zeitdiagramm, das einen asynchronen Transfer gemäß der jetzigen
Erfindung darstellt;
-
18 ist
ein Ablaufdiagramm, das einen asynchronen Input Transfer gemäß der Erfindung darstellt;
-
19 ist
ein Ablaufdiagramm, das einen alternativen asynchronen Input Transfer
gemäß der Erfindung
darstellt;
-
20 ist
ein Ablaufdiagramm, das einen asynchronen Output Transfer gemäß der Erfindung darstellt;
-
21 ist
ein Ablaufdiagramm, das einen alternativen asynchronen Output Transfer
gemäß der Erfindung
darstellt;
-
22 ist
ein Logik-Diagramm einer LEX Steuereinrichtung gemäß der Erfindung;
-
23 ist
ein Logik-Diagramm einer erweiterten LEX Steuereinrichtung gemäß der Erfindung;
-
24 ist
ein Logik-Diagramm einer REX Steuereinrichtung gemäß der Erfindung;
-
25 ist
eine schematische Zeichnung einer REX Steuereinrichtung gemäß der Erfindung;
-
26 ist
ein Ablaufdiagramm, das einen Anschluss-Ebene-Paket Output gemäß der Erfindung
darstellt;
-
27 ist
ein Ablaufdiagramm, das einen Anschluss-Ebene-Paket Input gemäß der Erfindung darstellt.
-
28 ist
ein Logik-Diagramm einer Anschluss-Steuereinrichtung gemäß der Erfindung;
-
29 ist
ein Ablaufdiagramm, das einen Massen-Lese-Transfer gemäß der Erfindung
darstellt;
-
30 ist
ein Ablaufdiagramm, das einen Massen-Schreib-Transfer gemäß der Erfindung
darstellt;
-
31 ist
ein Ablaufdiagramm, das einen Unterbrechung In Transfer gemäß der Erfindung
darstellt;
-
32 ist
ein Ablaufdiagramm, das einen Unterbrechung Out Transfer gemäß der Erfindung darstellt;
-
33 ist
ein Ablaufdiagramm, das einen Kontrolltransfer gemäß der Erfindung
darstellt;
-
34 ist
ein Ablaufdiagramm, das einen Unterbrechung In Transfer bei geringer
Geschwindigkeit gemäß der Erfindung
darstellt und
-
35 ist
ein Ablaufdiagramm, das einen Unterbrechung Out Transfer bei geringer
Geschwindigkeit gemäß der Erfindung
darstellt.
-
In den Zeichnungen zeigt 1 einen PC (1),
der mit zwei herkömmlichen
USB Hubs (2a & 2b) und
vier Standard USB Einrichtungen (3a, 3b, 3e & 3d)
ausgestattet ist. Die Länge
der Kabel zwischen den beiden Hubs (2a und 2b)
kann nicht mehr als 5 Meter gemäß der aktuellen
USB Spezifikation betragen.
-
2 stellt
einen PC (1) dar, der mit einem Gerät gemäß der jetzigen Erfindung, (bezeichnet
als "Ausgedehnte Entfernung Hub" (7)) und vier Standard
USB Einrichtungen (3a, 3b, 3c & 3d)
ausgestattet ist.
-
Der Ausgedehnte Entfernung Hub besteht aus
zwei getrennten Einheiten, einer "lokalen Erweiterungseinheit" (4)
und einer "Entfernten Erweiterungseinheit" (5), die durch
ein Kabel (6) verbunden sind. In einer Ausführung der
Erfindung können
Einheiten 4 und 5 durch beispielsweise durch ein
bis zu 200 Meter langes Kategorie 5 UTP Kabel (6)
(Faseroptikschaltung kann auch verwendet werden) getrennt sein.
-
3 zeigt
eine Ausführung
der Erfindung, die über
UTP laufen soll. In dieser Ausführung
werden die Funktionen, die normalerweise von dem USB Hub übernommen
werden, nun von zwei getrennten Einheiten übernommen, die durch Nichtabgeschirmte
Vedrillte Doppelschaltung (UTP) Kupferverkabelung (6a)
verbunden sind. Ein Host PC kann an die erste Einheit angeschlossen
werden (4), dies ist dann die lokale Erweiterungseinheit
(LEX). Eine zweite Einheit (5) wird hier als Entfernte
Erweiterungseinheit (REX) bezeichnet. Eine REX (5) kann
an eine Vielzahl von USB Einrichtungen angeschlossen werden. In
dieser Ausführung
beträgt
die Anzahl 4, aber demjenigen, der sich in der Materie
auskennt wird verständlich
sein, daß eine
andere Auswahl im Rahmen der Erfindung getroffen werden kann.
-
Die Anwendung über eine ausgedehnte Entfernung
wird vorzugsweise erreicht, indem die LEX Einheit (4) nahe
dem PC und die REX Einheit (5) nahe der Vielzahl der USB
Einrichtungen plaziert wird. Die LEX Einheit (4) und die
REX Einheit (5) werden durch eine entsprechend lange UTP
Verkabelung (6a) verbunden.
-
4 stellt
ein Zeitdiagramm mit isochronen Transfers gemäß dem USB Protokoll dar. Das
Diagramm wurde aus der Sicht der USB Host-Steuereinrichtung konstruiert,
die sich normalerweise auf dem Motherboard des PC (Host PC) befindet.
Das USB Protokoll unterteilt die Zeitvergabe auf der gemeinsam benutzten
Sammelleitung in reguläre
Datenübertragungsblöcke, die
jeweils 1 ms betragen. Der Beginn eines jeden Datenübertragungsblocks wird
auf dem Diagramm mit F1, F2, F3 & F4
gekennzeichnet. Wenn die Host-Steuereinrichtung einen isochronen
Transfer mit einer Einrichtung abwickelt, fordert die Host-Steuereinrichtung
reguläre
Datentransfers bei der Einrichtung an. Diese Anfragen sind in 4 als Pakete R1, R2 & R3 (10, 12 & 14)
gekennzeichnet. Eine USB Einrichtung muss gemäß dem USB Protokoll auf die
Anforderung innerhalb 16-Bit-Zeiten antworten. Die Antworten sind
in dem Diagramm als Pakete Is1, Ist & Is3 (11, 13 & 15)
bezeichnet. Es wird üblicherweise
angenommen, daß Transfer
Is1 (11) als Antwort auf Anforderung R1 (10) zugeführt wird,
Transfer Ist (13) wird als Antwort auf Anforderung R2 (12)
zugeführt
und so weiter bis alle Anforderungen beendet sind.
-
5 stellt
ein Zeitdiagramm mit isochronen Transfers gemäß der jetzigen Erfindung dar.
Das Diagramm zeigt den Verlauf der Pakete durch verschiedene Untersysteme,
aus denen die Erfindung besteht. Zeitachsen werden für die Komponenten des
Host PCs (1), der lokalen Erweiterungseinheit (LEX) (4)
und der entfernten Erweiterungseinheit (REX) (5), die in 2 gezeigt wurden, aufgeführt.
-
Ein isochroner Transfei wird von
der Host-Steuereinrichtung (1) begonnen, wobei Inputdaten
R1 (20) bei einer bestimmten USB Adresse und Endpunkt angefordert
werden. Die Anforderung R1 (20) wird von der LEX (4)
empfangen und wird über
externe Verkabelung als R1 (25) an die REX (5) neuübertragen.
Das neuübertragene
Paket R1 (25) wird von der REX (5) empfangen und
als R1 (31) an die Zieleinrichtung (z. B. einer der Elemente 3a, 3b, 3c or 3d aus 2) weitergeleitet.
-
Die Zieleinrichtung erzeugt ein Input
Datenpaket Is1 (32). Eine Einrichtung ohne ein integriertes Kabel
muss gemäß dem USB
Protokoll eine Antwort innerhalb 6.5 Bit-Zeiten nach dem Ende der
entsprechenden Anforderung erzeugen. Das Input Datenpaket Is1 (32)
wird von dem REX Untersystem (5) empfangen und als Is1
(26) über
die externe Verkabelung an LEX (4) neuübertragen. Die neuübermittelte
Anwort Is1 (26) wird nicht sofort an den Host PC (1)
weitergeleitet, sondern wird im Speicher des LEX Untersystems (4)
gespeichert.
-
Der Host PC (1) bemerkt,
daß keine
Antwort auf seine angeforderten Inputdaten R1 (20) empfangen
wurde und versucht die Transaktion erneut, wobei eine neue Anforderung
R2 (21) an dieselbe USB Adresse und Endpunkt erzeugt wird.
Nach Empfang der Anforderung R2 (21) ruft das LEX Untersystem 4 die
Anwort Is1 (26) aus seinem Pufferspeicher auf und leitet
diese an den Host PC als Anwort Is1 (22).
-
Die zweite Anforderung R2 (21)
wird als R2 (27) durch die LEX wiederholt und als R2 (33)
an die Einrichtung weitergeleitet. Die Zieleinrichtung erzeugt eine
zweite Antwort 2 (34) welche als Ist (28) von
der REX an die LEX neuübertragen
wird. Die Antwort Ist (28) wird wieder im Speicher des
LEX Untersystems gespeichert, von wo sie als Anwort Ist (24)
auf die dritte Anforderung R3 (23) an den Host PC (1)
geschickt wird. Der Prozess wird so oft wie nötig mit den Anforderungen R3
(23), R3 (29) und R3 (35) und Antworten
Is3 (36) und Is3 (30) wiederholt.
-
6 stellt
eine Ausführung
einer lokalen Erweiterungseinheit (LEX) (4) gemäß der Erfindung dar.
Die Ausführung
beinhaltet vier Hauptblöcke.
Das USB Interface (50) ermöglicht, daß der Host PC über Standard
USB Verkabelung an die Einheit angeschlossen ist. Das USB Interface
(50) empfängt
von dem Host PC Signale in USB Format und führt der LEX Steuereinrichtung
(51) USB Pakete zu. Die LEX Steuereinrichtung (51)
bestimmt welche Antwort auf das empfangene Paket benötigt wird
und erzeugt die entsprechenden USB Pakete. Wenn die LEX Steuereinrichtung
(51) eine Speicherung der Informationen vor der Übertragung
verlangt werden die Informationen im RAM (53) gespeichert.
-
Die Informationen, die an die Entfernte
Erweiterungseinheit (REX) (5) geschickt werden müssen, werden
an das UTP Interface (52) weitergeleitet, wobei die Informationen
in digitale Signale konvertiert werden, die für eine Übertragung über Kupferverkabelung geeignet
sind.
-
In der umgekehrten Richtung werden
die von der Entfernten Erweiterungseinheit (5) stammenden digitalen
Signale von dem UTP Interface (52) empfangen und an die
LEX Steuereinrichtung (51) weitergeleitet. Die LEX Steuereinrichtung
(51) speicher die benötigten
Informationen im RAM (53) und erzeugt die benötigten Antworten.
Informationen, die an den Host PC geschickt werden müssen, werden
an das USB Interface (50) übertragen, von wo sie an den Host
PC mittels Standard USB Hardware und Protokollen weitergeleitet
werden können.
-
7 stellt
eine Ausführung
einer Entfernten Erweiterungseinheit (REX) (5) gemäß der Erfindung
dar. Die Ausfuhrung beinhaltet ein UTP Interface (60),
eine Vielzahl von USB Interfaces (63, 64, 65 and 66),
eine REX Steuereinrichtung (61) und ein RAM (62).
Das Verfahren der REX (5) ähnelt der LEX (4).
-
8 ist
ein Ablaufdiagramm, das einen isochronen Input Transfer gemäß der Erfindung zeigt.
Das im Diagramm verwendete Format ist Jacobson et al. (Ivar Jacobson,
Magnus Christerson, Patrick Jonsson and Gunnar Overgaard, Object-Oriented
Software Engineering: A Use Case Driven Approach, Addison-Wesley,
1992) zuordenbar.
-
Im Datenübertragungsblock 1 erzeugt
die Ansteuerlogik (100) innerhalb des Host PC eine Anforderung
für Input
Daten, die an eine bestimmte USB Funktion addressiert ist. Die Anforderung
wird an das LEX Untersystem als ein "In Addr" Paket übermittelt.
Die Ansteuerlogik (101) innerhalb des LEX Untersystems
leitet das In Addr Paket an das REX Untersystem weiter. Die Ansteuerlogik
(102) innerhalb des REX Untersystems leitet das In Addr
Paket an die Einrichtung weiter.
-
Die Ansteuerlogik (103)
innerhalb der Einrichtung stellt die angeforderten isochronen Daten zusammen
und überträgt sie als
ein "Datenladung"- Paket an das REX Untersystem. Die Ansteuerlogik (102)
innerhalb des REX Untersystems leitet das Datenladung-Paket an das
LEX Untersystem weiter. Die Ansteuerlogik (101) im LEX
Untersystem speichert das Datenladung-Paket in seinem Pufferspeicher.
-
Im Datenübertragungsblock 2 erkennt
die Ansteuerlogik (104) innerhalb des Host PC, daß noch keine
Antwort auf die vorangegangene Anforderung von Input Daten eingegangen
ist.
-
Die Ansteuerlogik wiederholt den
Vorgang automatisch nocheinmal wobei eine neue Anforderung an dieselbe
USB Funktion wie in Datenübertragungsblock 1 addressiert
wird. Die neue Anforderung wird an das LEX Untersystem als ein zweites
In Addr Paket übertragen.
Nach Empfang des zweiten In Addr Pakets erkennt die Ansteuerlogik
(105) innerhalb des LEX Untersystems, daß sie ein
Datenladung-Paket von derselben im In Addr Paket genannten Funktion
in ihrem Speicher hat. Die Ansteuerlogik (105) ruft das
gespeicherte Paket vom Speicher ab und überträgt es an den Host PC. Die Ansteuerlogik (105)
leitet auch das neue In Addr Paket an das REX Untersystem weiter.
Die Ansteuerlogik (106) innerhalb des REX Untersystems
leitet das In Addr Paket an die Einrichtung weiter.
-
Die Ansteuerlogik (107)
innerhalb der Einrichtung stellt die angeforderten isochronen Daten zusammen
und übermittelt
sie als ein Datenladung-Paket an das REX Untersystem. Die Ansteuerlogik
(106) innerhalb des REX Untersystems leitet das Datenladung-Paket
an das LEX Untersystem weiter. Die Ansteuerlogik (105)
im LEX Untersystem speichert das Datenladung-Paket in seinem Pufferspeicher.
-
Der obenbeschriebene Vorgang wird
für die nachfolgenden
Datenübertragungsblöcke durch
die verteilte Ansteuerlogik (z. B. 108, 109, 110 & 111) wiederholt.
-
9 zeigt
ein Ablaufdiagramm mit einem alternativen isochronen Input Transfer
gemäß der Erfindung.
Diese Methode unterscheidet sich von der in 8 beschriebenen Methode dadurch wie die
erste Anforderung eines isochronen Input Transfer gehandhabt wird.
-
In Datenübertragungsblock 1 erzeugt
die Ansteuerlogik (100) innerhalb des Host PC eine Anforderung
von Input Daten, die an eine bestimmte USB Funktion addressiert
ist. Die Anforderung wird an das LEX Untersystem als ein In Addr
Paket übermittelt. Die
Ansteuerlogik (101) innerhalb des LEX Untersystems leitet
das In Addr Paket an das REX Untersystem wie in 9 gezeigt weiter.
-
An dieser Stelle wird im Ablauf ein
zusätzlicher
Schritt eingeführt.
Die Ansteuerlogik (101) innerhalb des LEX Untersystems
erzeugt ein synthetisches Datenpaket und überträgt es als ein Datenladung-Paket
an den Host PC. Das synthetische Datenpaket wird in 9 als Datenladung_0 bezeichnet. Der Rest
der Protokollhandhabung läuft
weiter wie in 8 beschrieben.
-
Laut der Definition in der USB Spezifikation besteht
das DATA Paket aus einem einzelnen Byte Paket Kennzeicher (Packet
Identifier PID), einer Datenladung zwischen O Bytes und 1023 Bytes,
und einer zyklischen Blockprüfung
von 2 Bytes. Das synthetische Datenpaket kann daher durch Zusammenstellung
eines Datenpakets, das eine Nulllänge Ladung enthält, erstellt
werden. Das synthetische Datenpaket kann hierdurch zur Erfüllung der Zeitauflagen
des USB Protokolls benutzt werden, ohne daß dabei die eigentlichen vom
Protokoll geschickten Informationen beeinflusst werden.
-
10 stellt
ein Ablaufdiagramm eines isochronen Output Transfers gemäß der Erfindung
dar.
-
In 1 erzeugt
die Ansteuerlogik (120) innerhalb des PC eine Ankündigung
von Output Daten, die an eine bestimmte USB Funktion adressiert
ist. Diese Ankündigung
wird als ein Out Addr Paket an das LEX Untersystem übertragen.
Die Ansteuerlogik (121) innerhalb des LEX Untersystems
leitet das Out Addr Paket an das REX Untersystem weiter. Die Ansteuerlogik
(122) innerhalb des REX Untersystems leitet das Out Addr
Paket an die Einrichtung weiter. Die Information wird von der Ansteuerlogik
(123) innerhalb der Einrichtung empfangen.
-
Die Ansteuerlogik (120)
innerhalb des Host PC stellt die angekündigten isochronen Daten zusammen
und überträgt sie als
ein Datenladung-Paket an das LEX Untersystem. Die Ansteuerlogik
(121) innerhalb des LEX Untersystems leitet das Datenladung-Paket
an das REX Untersystem weiter. Die Ansteuerlogik (122)
innerhalb des LEX Untersystems leitet das Datenladung-Paket an die
Einrichtung weiter. Die Informationen werden von der Ansteuerlogik (123)
innerhalb der Einrichtung empfangen.
-
11 stellt
einen Algorithmus zur Durchführung
eines isochronen Transfers an der Lokalen Erweiterungseinheit (4)
dar. In der in 6 beschriebenen
Ausführung
der Erfindung wird der Algorithmus durch die LEX Steuereinrichtung
in der Hardware implementiert (51). (Denjenigen, die sich in diesem
Gebiet auskennen, wird auffallen, daß diese Durchführung nicht
einzigartig und es weitere Mechanismen zur Durchführung des
Algorithmus' gibt ). In der folgenden Beschreibung bezieht sich
die eingehende Richtung auf Pakete, die von einer Peripherieeinrichtung
zu einer Host-Steuereinrichtung unterwegs sind; die abgehende Richtung
bezieht sich auf Pakete, die von einer Host-Steuereinrichtung zu
einer Peripherieeinrichtung unterwegs sind.
-
Gemäß der Erfindung muss der Algorithmus aus 11 die Verarbeitungsfunktionen
durchführen,
die aus den Verarbeitungsblöcken
aus 8 (101, 105 & 109)
und dem Verarbeitungsblock (121) aus 10 bestehen.
-
Nach dem ersten Hochfahren und nach
einer Rücksetzung
begibt sich das System in den Ruhezustand (200), in dem
es auf die zu empfangene Nachricht (USB Paket) wartet. Nach Empfang
eines Pakets wird das Paket Kennzeichner (PID) Feld innerhalb des
Pakets geprüft,
um die Art des empfangenen Pakets festzustellen und um die nächste Handlung
zu bestimmen, die zur Bearbeitung des Pakets benötigt wird.
-
Wenn das empfangene Paket (201)
vom Typ IN ist wird dann ein identisches Paket (202) übertragen.
Das System prüft
danach (203) seinen Pufferspeicher um zu entscheiden, ob
bereits ein gespeichertes DATA Paket von der in der IN Aufforderung addressierten
Einrichtung im Speicher vorhanden ist. Wenn kein derartiges gespeichertes
DATA Paket im Speicher vorhanden ist begibt sich das System wieder
in den Ruhezustand (200). Wenn das gespeicherte DATA Paket
im Speicher vorhanden ist, ruft das System (204) das gespeicherte
Paket aus dem Speicher ab und schickt (205) das Paket als
Pakettyp DATA an den Host. Danach begibt es sich wieder in den Ruhezustand
(200).
-
Das System (207) speichert
das Datenpaket in seinem Pufferspeicher wenn das empfangene Paket
(206) vom Typ DATA ist und in eingehender Richtung unterwegs
ist. Das System begibt sich dann wieder in den Ruhezustand (200).
-
Das System überträgt das Paket (209) nocheinmal
und begibt sich dann in den Ruhezustand (200) wenn das
empfangene Paket (208) vom Typ OUT Addr ist.
-
Das System überträgt das Paket (211) nocheinmal
und begibt sich dann in den Ruhezustand (200) wenn das
empfangene Paket (210) vom Typ DATA ist und in der abgehenden
Richtung unterwegs ist.
-
12 stellt
einen erweiterten Algorithmus zur Durchführung von isochronen Transfers
an der Lokalen Erweiterungseinheit gemäß der in 9 beschriebenen Erfindung dar. Dieser
Algorithmus ist grundsätzlich
identisch mit dem in 11 beschriebenen,
ausser in der Handhabung der Situation in der ein Host eine Datenanforderung
ausstellt und die LEX noch nicht über Daten verfügt, die
an den Host zurückgeschickt
werden können.
Diese Situation kann bei der ersten Anforderung einer isochronen
Input Session auftreten.
-
In 12 wird
ein identisches Paket (202) übertragen wenn das empfangene
Paket (201) vom Typ IN ist. Das Sytem prüft dann
(203) seinen Pufferspeicher um zu entscheiden, ob sich
bereits ein gespeichertes DATA Paket von der in der IN Anforderung
addressierten Einrichtung in seinem Speicher befindet. Wenn kein
derartiges DATA Paket im Speicher vorhanden ist erzeugt das System
(212) ein synthetisches DATA Paket und überträgt (213) das erzeugte
Paket innerhalb der vom USB Protokoll erlaubten 16 Bit-Zeiten an
den Host. Wenn ein gespeichertes DATA Paket im Speicher vorhanden
ist, ruft das System (204) das gespeicherte Paket aus seinem
Speicher ab und schickt (205) das Paket als ein Typ DATA
Paket an den Host. Danach begibt es sich in den Ruhezustand (200).
-
Wenn das empfangene Paket (206)
vom Typ DATA ist und in eingehender Richtung unterwegs ist, speichert
das System (207) das Datenpaket in seinem Pufferspeicher.
Das Fälligkeitskennzeichen
des Pakets, das mit dem neu gespeicherten Paket verbunden ist, w
ird zurückgestellt
(214) aus Gründen die
im Zusammenhang mit 13 beschrieben werden.
Das System begibt sich dann wieder in den Ruhestand (200).
-
13 ist
ein Logikdiagramm einer zusätzlichen
Erweiterung der LEX Steuereinrichtung, die es ermöglicht spurenhafte
Pakete zu entfernen. Die spurenhafte Pakete können während eines isochronen Input
Transfers auftreten wenn der Host PC die Beendigung einer Session
entscheidet, die LEX Steuereinrichtung aber bereits ein eingehendes
Datenpaket der besagten Session besitzt. Diese Situation wird beispielsweise
durch die Datenladung_3 in 8 dargestellt.
-
Gemäß der USB Spezifikation wird
der Beginn eines jeden Datenübertragungsblocks
durch ein einzigartiges "Beginn des Datenübertragungsblockes" (Start
of Frame, SOF) Signal markiert. Die in 13 beschriebene Abbildung verwendet dieses SOF
Signal um nicht mehr benötigte
Pakete zu identifizieren und zu verwerfen. Die Verarbeitung beginnt wenn
das SOF Signal (221) von der Lokalen Erweiterungseinheit
empfangen wird. Die Suche nach lokalem Pufferspeicherplatz wird
durch Einstellung des Kontexts auf den ersten Pufter (222)
begonnen. Das Fälligkeitskennzeichen
des Pakets, auf das durch den aktuellen Kontext hingewiesen wird,
wird geprüft (223).
Wenn das Fälligkeitskennzeichen
des Pakets bereits eingestellt ist wird das Paket im Puffer verworfen
(224). Wenn das Fälligkeitskennzeichen
des Pakets noch nicht eingestellt ist, wird dieses eingestellt (225)
um sicherzustellen, daß das
Paket im nächsten Datenübertragungsblock
verworfen wird wenn es bis dahin noch nicht übertragen wurde.
-
Der besagte Ablauf wird dann wiederholt
indem der Kontext auf den nächsten
Puffer (227) eingestellt wird und dieses wird fortgesetzt
bis alle Puffer geprüft
wurden. Dies wird durch einen Test (226) ermittelt.
-
Als eine zusätzliche Vorsichtsmassnahme zur
Vermeidung von frühzeitigem
Verwerfen von spurenhaften Paketen wird das Fälligkeitskennzeichen des Pakets
auch jedesmal durch Schritt (214) aus 12 zurückgesetzt wenn ein Paket im
Pufferspeicher der LEX Steuereinrichtung gespeichert ist.
-
14 zeigt
einen Algorithmus zur Durchführung
isochroner Transfers an der Entfernten Erweiterungseinheit. In der
in 7 beschriebenen Ausführung der
Erfindung, wird der Algorithmus durch die REX Steuereinrichtung
(61) in der Hardware durchgeführt. (Denjenigen, die sich
in diesem Gebiet auskennen, wird auffallen, daß diese Durchführung nicht
einzigartig und es weitere Mechanismen zur Durchführung des
Algorithmus' gibt). In der folgenden Beschreibung bezieht sich die
eingehende Richtung auf Pakete, die von der Peripherieeinrichtung
an eine Host-Steuereinrichtung unterwegs sind; die abgehende Richtung
bezieht sich auf Pakete, die von einer Host-Steuereinrichtung zu
einer Peripherieeinrichtung unterwegs sind. Gemäß der Erfindung muss der Algorithmus
aus 14 die Verarbeitungsfunktionen
durchführen,
die aus den Verarbeitungsblöcken
(102), (106) & (110)
aus 8 und dem Verarbeitungsblock
(122) aus 10 bestehen.
-
Nach dem ersten Hochfahren und nach
einer Rücksetzung
begibt sich das System in einen Ruhezustand (230), in dem
es auf die Nachricht (USB Paket) wartet. Nach Empfang eines Pakets
wird das Paket Kennzeichner (PID) Feld innerhalb des Pakets geprüft um die
Art des empfangenen Pakets und die nächste Handlung zu bestimmen,
die zur Bearbeitung des Pakets benötigt wird.
-
Wenn das empfangene Paket (231)
vom Typ IN ist, überträgt das System
(232) das IN Paket wieder und kehrt dann in den Ruhezustand
zurück
(230).
-
Wenn das empfangene Paket (233)
vom Typ DATA ist und in der eingehenden Richtung unterwegs ist, überträgt das System
(234) das Datenpaket erneut und begibt sich dann wieder
in den Ruhezustand (230) Wenn das empfangene Paket (235)
vom Typ OUT ist, überträgt das System
(236) das abgehende Paket und kehrt in den Ruhezustand
zurück (230).
-
Wenn das empfangene Paket (237)
vom Typ DATA ist und in abgehender Richtung unterwegs ist, überträgt das System
(238) das Datenpaket erneut und kehrt in den Ruhezustand
zurück
(230).
-
15 zeigt
einen erweiterten Algorithmus zur Durchführung isochroner Transfers
an der Entfernten Erweiterungseinheit. Unter bestimmten Bedingungen
besteht die Gefahr, daß von
der Entfernten Erweiterungseinheit stammende an der Lokalen Erweiterungseinheit
empfangene Pakete nicht in der von der Lokalen Erweiterungseinheit
erwarteten Reihefolge sind. Die in 15 beschriebene
Erweiterung fügt
den in der eingehenden Richtung geschickten Paketen ein Adressenfeld
hinzu, damit die Lokale Erweiterungseinheit den Urprung der Pakete
bestimmen kann.
-
Gemäß der Erweiterung wird bei
Empfang eines IN Paketes (231) an der REX Steuereinrichtung die
darin enthaltene Adresse in deren Speicher (239) gespeichert.
Das IN Paket wird dann wie zuvor übertragen (232) und
das System begibt sich dann wieder in den Ruhezustand (230).
Wenn das System das nächste
in der eingehenden Richtung (233) reisende DATA Paket empfängt, ruft
das System die im Speicher gespeicherte Adresse ab (240)
und fügt
diese Information dem DATA Paket hinzu, welches es wieder an die
LEX überträgt (234).
Das System begibt sich dann wieder in den Ruhezustand (230).
-
16 stellt
ein Zeitdiagramm asynchroner Transfers gemäß des USB Protokolls dar. Das
Diagramm ist aus der Sicht der USB Host-Steuereinrichtung konstruiert,
die normalerweise auf einem PC Motherboard (Host PC) enthalten ist.
Das USB Protokoll unterteilt die Zeitvergabe der gemeinsam benutzten
Sammelleitung in geregelte Datenübertragungsblöcke mit
einer Dauer von jeweils einer 1 ms. Der Beginn jedes Datenübertragungsblockes
wird auf dem Diagramm wieder als F1, F2, F3 & F4 gekennzeichnet.
-
Wenn eine Host-Steuereinrichtung
bei einem asynchronen Transfer mit einer Einrichtung beschäftigt ist,
fordert die Host-Steuereinrichtung jedesmal wenn erforderlich Datentransfers
bei der Einrichtung an. Diese Anforderungen werden als Pakete R1 & R2 (10 & 12)
in 4 dargestellt. Eine
USB Einrichtung muss nach dem USB Protokoll innerhalb 16-Bit-Zeiten
auf die Anforderung antworten. Die Antworten sind in dem Diagramm
als Pakete A1 & A2
(11 & 13) gekennzeichnet.
Es wird üblicherweise
angenommen, daß Transfer
A1 (11) als Antwort auf Anfrage R1 (10) zugeführt wird,
Transfer A2 (13) als Antwort auf Anfrage R2 (12)
zugeführt
wird und so weiter bis alle Anforderungen beendet sind.
-
17 stellt
ein Zeitdiagramm asynchroner Transfers gemäß der jetzigen Erfindung dar.
Das Diagramm zeigt den Verlauf der Pakete durch die verschiedenen
Untersysteme, aus denen die Erfindung besteht. Wie in 2 veranschaulicht, werden
Zeitleisten für
die Untersysteme des Host PC (1), der Lokalen Erweiterungseinheit
(4) und der Entfernten Erweiterungseinheit (5)
dargestellt.
-
Ein asynchroner Transfer wird durch
den Host PC (1) begonnen, der Input Daten R1 (20A) bei einer
bestimmten USB Adresse und Endpunkt anfordert. Die Anforderung R1
(20A) wird von der LEX (4) empfangen und als R1 (24A) über externe
Verkabelung an die REX (5) neuübertragen. Das neuübertragene
Paket R1 (24A) wird von der REX (5) empfangen und als R1
(29A) an die Zieleinrichtung weitergeleitet (z. B. eines der folgenden 3a, 3b, 3c oder 3d).
-
Die Zieleinrichtung erzeugt ein Input
Datenpaket A1 (30A). Eine Einrichtung ohne ein integriertes Kabel
muss gemäß des USB
Protokolls eine Antwort innerhalb 6.5-Bit-Zeiten nach dem Ende der
entsprechenden Anforderung erzeugen. Das Input Datenpaket A1 (30A)
wird von dem REX Untersystem empfangen (5) und als A1 (25A) über externe
Verkabelung an die LEX (4) neuübertragen. Die neuübertragene
Anwort A1 (25A) wird nicht sofort an den Host PC (1) weitergeleitet,
sondern im Speicher des LEX Untersystems (4) gespeichert.
-
Der Host PC (1) bemerkt,
daß keine
Antwort auf seine angeforderten Input Daten R1 (20A) empfangen wurde,
und wiederholt den Vorgang durch Erzeugung einer neuen Anforderung
R2 (21A) an dieselbe USB Adresse und Endpunkt. Beim Empfang der
Anforderung R2 (26A) ruft das LEX Untersystem (4) die Antwort
A1 (25A) aus seinen Pufferspeichern ab und leitet sie als Anwort
A1 (27A) an den Host PC weiter. Die Antwort (27A) wird vom Host
als Antwort A1 (22A) empfangen.
-
Die zweite Anforderung R2 (21A) wird
als R2 (26A) durch das LEX wiederholt und als R2 (31A) an die Einrichtung
weitergeleitet. Die Zieleinrichtung erzeugt eine zweite Anwort A2
(32A), die einfach durch das REX Untersystem (5) aufgenommen
wird. Wenn der Host die Antwort A1 (22A) empfängt, erzeugt es die Bestätigung K1
(23A), die es dann an das LEX Untersystem (4) überträgt. Die
Bestätigung
K1 (23A) wird von der LEX als Bestätigung K1 (28A) empfangen und
an die REX weitergeleitet wo sie als Bestätigung K1 (33A) erscheint.
Die Bestätigung
K1 (33A) wird zur Beendigung des Protokollverlaufs wieder an die
USB Einrichtung weitergeleitet.
-
18 zeigt
ein Ablaufdiagramm eines asynchronen Input Transfers gemäß der Erfindung.
-
In Datenübertragungsblock 1 erzeugt
die Ansteuerlogik (130) innerhalb des Host PC eine Anforderung
von Inputdaten, die an eine bestimmte USB Funktion adressiert ist.
Die Anforderung wird als ein "In Addr" Paket an das LEX Untersystem übertragen. Die
Ansteuerlogik (131) innerhalb des LEX Untersystems leitet
das In Addr Paket an das REX Untersystem weiter. Die Ansteuerlogik
(132) innerhalb des REX Untersystems leitet das In Addr
Paket an die Einrichtung weiter. Die Ansteuerlogik (133)
innerhalb der Einrichtung stellt die angeforderten asynchronen Daten
zusammen und überträgt sie als
ein "Datenladungs"-Paket an das REX Untersystem. Die Ansteuerlogik
(132) innerhalb des REX Untersystems leitet das Datenladungs-Paket
an das LEX Untersystem weiter. Die Ansteuerlogik (131)
des LEX Untersystems speichert das Datenladungs-Paket in seinem Pufferspeicher.
-
In Datenübertragungsblock 2 erkennt
die Ansteuerlogik (134) innerhalb des Host PCs, daß es noch
keine Antwort auf seine vorangegangene Anforderung von Input Daten
empfangen hat. Die Ansteuerlogik wiederholt automatisch den Vorgang
indem eine weitere Anforderung erzeugt wird, die an dieselbe Funktion
wie in Datenübertragungsblock 1 addressiert
ist. Die weitere Anforderung wird als ein In Addr Paket an das LEX
Untersystem übertragen. Beim
Empfang des zweiten In Addr Pakets erkennt die Ansteuerlogik (135)
innerhalb des LEX Untersystems, daß es ein Datenladungs-Paket
von derselben im weiteren In Addr Paket genannten Funktion in ihrem
Speicher gespeichert hat.
-
Die Ansteuerlogik ruft das in ihrem
Speicher gespeicherte Paket ab und überträgt dieses an den Host PC. Die
Ansteuerlogik (135) leitet das neue In Addr Paket auch
an das REX Untersystem weiter. Die Ansteuerlogik (136)
innerhalb des REX Untersystems leitet das In Addr Paket an die Einrichtung
weiter.
-
Die Ansteuerlogik (137)
innerhalb der Einrichtung erkennt, daß es noch keine Bestätigung auf die
vorangegangene Übertragung
erhalten hat und nimmt an, daß diese
neue Anforderung tatsächlich eine
zweite Anforderung der ursprünglichen
Informationen ist. Die Einrichtung stellt dadurch die angeforderten
asynchronen Daten zusammen und überträgt sie als
ein Datenladungs-Paket an das REX Untersystem. Die Ansteuerlogik
(136) innerhalb des REX Untersystems erkennt, daß das Datenladungs-Paket nur
eine Wiederholung der vorangegangenen Übertragung ist und übernimmt
das Paket.
-
Wenn die Ansteuerlogik (134)
des Hosts das angeforderte Datenladungs-Paket von der LEX empfängt, erzeugt
die Ansteuerlogik ein Ack Paket, um die erfolgreiche Übertragung
zu bestätigen.
Das Ack Paket wird von der Ansteuerlogik (135) innerhalb
der LEX empfangen und an die REX weitergeleitet. Das weitergeleitete
Ack Paket wird von der Ansteuerlogik (136) innerhalb der
REX empfangen und weiter an die Einrichtung weitergeleitet. Die Übertragung
des Ack Pakets von der REX an die Einrichtung wird von der Ansteuerlogik
(136) so synchronisiert, daß sie innerhalb der erforderlichen
Antwortzeit nach Ende der Übertragung
des wiederholten Datenladungs-Paket von der Einrichtung erfolgt.
-
19 zeigt
ein Ablaufdiagramm eines alternativen asynchronen Input Transfers
gemäß der Erfindung.
Diese Methode unterscheidet sich von der in 18 beschriebenen Methode dadurch wie
die erste Anforderung eines asynchronen Input Transfers von der
LEX gehandhabt wird.
-
In Datenübertragungsblock 1 erzeugt
die Ansteuerlogik (130) innerhalb des Host PC eine Anforderung
von Input Daten, die an eine bestimmte USB Funktion adressiert ist.
Die Anforderung wird als ein In Addr Paket an das LEX Untersystem übertragen. Die
Ansteuerlogik (131) innerhalb des LEX Untersystems leitet
das In Addr Paket wie in 18 beschrieben
an das REX Untersystem weiter.
-
An dieser Stelle des Ablaufes wird
ein zusätzlicher
Schritt eingeführt.
Die Ansteuerlogik (131) innerhalb des LEX Untersystems
erzeugt ein synthetisches negatives Bestätigungpaket und überträgt es als
ein Nak Paket an den Host PC. Das Nak Paket warnt den Host, daß er keine
Antwort auf seine Anforderung erhalten wird und ermöglicht dem
Host zu dem nächsten
Vorgang überzugehen.
Die Durchführung
der restlichen Schritte des Protokolls erfolgt wie in 18 beschrieben.
-
20 stellt
ein Ablaufdiagramm eines asynchronen Output Transfers gemäß der Erfindung dar.
-
In Datenübertragungsblock 1 erzeugt
die Ansteuerlogik (140) innerhalb des Host PC eine Ankündigung
von Output Daten, die an eine bestimmte USB Funktion adressiert
ist. Die Ankündigung
wird als ein Out Addr Paket an das LEX Untersystem übertragen. Die
Ansteuerlogik (141) innerhalb des LEX Untersystems leitet
das Out Addr Paket an das REX Untersystem weiter. Die Ansteuerlogik
(142) innerhalb des REX Untersystems leitet das Out Addr
Paket an die Einrichtung weiter. Die Informationen werden von der Ansteuerlogik (143)
innerhalb der Einrichtung empfangen.
-
Die Ansteuerlogik (140)
innerhalb des Host PC stellt die angekündigten asynchronen Daten zusammen
und überträgt diese
als ein Datenladungs-Paket an das LEX Untersystem. Die Ansteuerlogik
(141) innerhalb des LEX Untersystems leitet das Datenladungs-Paket
an das REX Untersystem weiter. Die Ansteuerlogik (142)
des LEX Untersystems leitet das Datenladungs-Paket an die Einrichtung
weiter. Die Informationen werden von der Ansteuerlogik (143)
innerhalb der Einrichtung empfangen.
-
Nach erfolgreichem Empfang des Datenladungs-Paket
an der Einrichtung erzeugt die Ansteuerlogik (143) innerhalb
der Einrichtung ein Bestätigungspaket,
das als ein Ack Paket an die REX übertragen wird. Das Ack Paket
wird von der Ansteuerlogik (142) innerhalb des REX an das
LEX Untersystems weitergeleitet, wo der Empfang von der Ansteuerlogik
(141) vermerkt wird.
-
In Datenübertragungsblock 2 erkennt
die Ansteuerlogik (144) innerhalb des Host PC, daß es noch keine
Bestätigung
seiner vorangegangen Übertragung
erhalten hat und erzeugt ein neues Out Addr Paket, das an den gleichen
Endpunkt wie in Datenübertragungsblock 1 adressiert
ist. Dieselbe Ansteuerlogik (144) erzeugt auch ein neues
Datenladungs-Paket, welche es an die LEX überträgt. Nach Empfang des Datenladungs-Paket
an der LEX erkennt die Ansteuerlogik (145), daß sie bereits
eine positive Bestätigung
dieses Vorganges erhalten hat und erzeugt ein Ack Paket, das an
den Host geschickt wird.
-
21 stellt
ein Ablaufdiagramm eines erweiterten asynchronen Output Transfers
gemäß der Erfindung
dar. Diese Methode unterscheidet sich von der in 20 beschriebenen Methode dadurch wie die
erste Anforderung eines asynchronen Output Transfers von der LEX
gehandhabt wird.
-
In Abbildungsblock 1 erzeugt
die Ansteuerlogik (140) innerhalb des Host PCs eine Ankündigung der
Output Daten, die an eine bestimmte USB Funktion adressiert ist.
Die Ankündigung
wird als ein Out Addr Paket an das LEX Untersystem übertragen.
Die Ansteuerlogik (141) innerhalb des LEX Untersystems leitet
das Out Addr Paket wie in 20 beschrieben an
das REX Untersystem weiter.
-
Ebenfalls in Datenübertragungsblock 1 erzeugt
die Ansteuerlogik (140) innerhalb des Host PC ein Output
Datenpaket, das für
die bestimmte USB Funktion bestimmt ist. Das Output Datenpaket wird als
ein Datenladungs-Paket an das LEX Untersystem übertragen. Die Ansteuerlogik
(141) innerhalb des LEX Untersystems leitet das Datenladungs-Paket wie
in 20 beschrieben an
das REX Untersystem weiter.
-
An dieser Stelle des Ablaufes wird
ein zusätzlicher
Schritt eingeführt.
Die Ansteuerlogik (141) innerhalb des LEX Untersystems
erzeugt ein synthetisches negatives Bestätigungspaket und überträgt dieses
als ein Nak Paket an den Host PC. Das Nak Paket warnt den Host,
daß er
keine Antwort auf seine Übertragung
erhalten wird und ermöglicht
dem Host zum nächsten
Vorgang überzugehen.
Die Durchführung
der restlichen Schritte des Protokolls erfolgt wie in 20 beschrieben.
-
22 zeigt
einen Algorithmus zur Durchführung
asynchroner Transfers an der Lokalen Erweiterungseinheit (4).
In der in 6 beschriebenen Ausführung der
Erfindung, wird der Algorithmus von der LEX Steuereinheit (51)
in der Hardware durchgeführt.
(Diejenigen, die sich in der Materie auskennen, werden bemerken,
daß diese
Durchführung
nicht einzigartig ist und weitere Mechanismen zur Durchführung des
Algorithmus' bestehen). In der folgenden Beschreibung bezieht sich
die eingehende Richtung auf Pakete, die von einer Peripherieeinrichtung
an die Host-Steuereinrichtung unterwegs sind; die abgehende Richtung
bezieht sich auf Pakete, die von einer Host-Steuereinrichtung an
eine Peripherieeinrichtung unterwegs sind.
-
Gemäß der Erfindung muss der Algorithmus aus 22 die Verarbeitungsfunktionen
durchführen,
welche aus den Verarbeitungsblöcken
aus 18 (131) & (135)
und den Verarbeitungsblöcken (141) & (145)
aus 20 bestehen.
-
Nach dem ersten Hochfahren und nach
einer Rücksetzung
begibt sich das System in den Ruhezustand (300), in dem
es auf die zu empfangene Nachricht (USB Paket) wartet. Nach Empfang
eines Pakets wird das Paket Kennzeichner (PID) Feld innerhalb des
Pakets geprüft,
um die Art des empfangenen Pakets festzustellen und um die nächste Handlung
zu bestimmen, die zur Bearbeitung des Pakets benötigt wird.
-
Wenn das empfangene Paket (301)
vom Typ IN ist, überträgt das System
(302) das IN Paket an die REX Einheit. Das System prüft dann
seinen Pufferspeicher (303) um zu entscheiden ob ein eingehendes
DATA Paket von derselben Adresse wie das IN Paket vorhanden ist.
Wenn das DATA Paket vorhanden ist, wird es aus dem Pufferspeicher
abgerufen (304) und an den Host übertragen (305). Das System
kehrt dann in den Ruhezustand zurück (300).
-
Wenn das empfangene Paket (306)
vom Typ DATA und in der eingehenden Richtung unterwegs ist, speichert
das System (307) das Datenpaket in seinem Pufferspeicher
und kehrt in den Ruhezustand zurück
(300).
-
Wenn das empfangene Paket (308)
vom Typ ACK und in der abgehenden Richtung unterwegs ist, überträgt das System
(309) das ACK Paket und kehrt in den Ruhezustand zurück (300).
-
Wenn das empfangene Paket (310)
vom Typ OUT ist, prüft
das System (311) ob das OUT schwebend Kennzeichen für die Adresse
eingestellt ist. Wenn das Kennzeichen eingestellt ist, setzt das
System das Kennzeichen zurück
und kehrt in den Ruhezustand zurück
(300). Wenn das Kennzeichen nicht eingestellt ist, stellt
das System das Kennzeichen ein (312) und überträgt das (313)
empfangene OUT Paket wieder bevor es in den Ruhezustand zurückkehrt (300).
-
Wenn das empfangene Paket (315)
vom Typ DATA und in der abgehenden Richtung unterwegs ist, prüft das System
(316) ob das DATA schwebend Kennzeichen für die Adresse
eingestellt ist. Wenn das Kennzeichen nicht eingestellt ist, stellt
das System (323) das Kennzeichen ein und überträgt (324) das
empfangene DATA Paket bevor es in den Ruhezustand zurückkehrt
(300). Wenn das DATA schwebend Kennzeichen eingestellt
ist, stellt das System (317) das DATA schwebend Kennzeichen
zurück
und prüft
(318), ob ein ACK Paket für diese Adresse in seinem Pufferspeicher
gespeichert ist. Wenn das Ack Paket im Speicher vorhanden ist ruft
das System (319) das Paket aus seinem Speicher ab und überträgt (320)
das Paket an den Host. Das System kehrt in den Ruhezustand zurück (300).
-
Wenn das empfangene Paket (321)
vom Typ ACK und in der eingehenden Richtung unterwegs ist speichert
das System (322) das ACK Paket in seinem Pufferspeicher
und kehrt in den Ruhezustand zurück (300).
-
23 zeigt
einen erweiterten Algorithmus zur Durchführung von asynchronen Transfers
an der Lokalen Erweiterungseinheit gemäß der in 6 beschriebenen Erfindung. Dieser Algorithmus
ist identisch mit dem in 22 beschriebenen,
ausser in der Art wie die LEX den Host informiert, daß eine Antwort
auf seine Befehle nicht erhältlich
ist. Diese Situation tritt auf wenn der Host einen Datentransferablauf
wie in 19 und 21 beginnt.
-
Der zusätzliche Schritt (331)
tritt auf wenn das System ein IN Paket empfängt, die angeforderten Daten
aber nicht in seinem Pufferspeicher gespeichert hat. Das System überträgt (331)
ein negatives Bestätigungspaket
an den Host bevor es in den Ruhezustand zurückkehrt (300).
-
Der zusätzliche Schritt (332)
tritt auf wenn das System ein DATA Paket empfängt, das in der abgehenden
Richtung unterwegs ist, das DATA schwebend Kennzeichen aber nicht
eingestellt ist. Das System überträgt (332)
ein negatives Bestätigungspaket an
den Host bevor es in den Ruhezustand zurückkehrt (300).
-
24 stellt
einen Algorithmus zur Durchführung
asynchroner Transfers an der Entfernten Erweiterungseinheit dar.
In der in 7 beschriebenen
Ausführung
der Erfindung wird der Algorithmus durch die REX Steuereinrichtung
in der Hardware implementiert (61). (Denjenigen, die sich
in diesem Gebiet auskennen, wird auffallen, daß diese Durchführung nicht
einzigartig ist und es weitere Mechanismen zur Durchführung des Algorithmus'
gibt). In der folgenden Beschreibung bezieht sich die eingehende Richtung
auf Pakete, die von einer Peripherieeinrichtung zu einer Host-Steuereinrichtung
unterwegs sind; die abgehende Richtung bezieht sich auf Pakete,
die von einer Host-Steuereinrichtung zu einer Peripherieeinrichtung
unterwegs sind.
-
Gemäß der Erfindung muss der Algorithmus aus 24 die Verarbeitungsfunktionen
durchführen,
die aus den Verarbeitungsblöcken
aus 18 (132) & (136)
und dem Verarbeitungsblock (142) aus 20 bestehen.
-
Nach dem ersten Hochfahren und nach
einer Rücksetzung
begibt sich das System in den Ruhezustand (340), in dem
es auf die zu empfangene Nachricht (USB Paket) wartet. Nach Empfang
eines Pakets wird das Paket Kennzeichner (PID) Feld innerhalb des
Pakets geprüft,
um die Art des empfangenen Paketes festzustellen und um die nächste Handlung
zu bestimmen, die zur Bearbeitung des Pakets benötigt wird.
-
Wenn das empfangene Paket (341)
vom Typ IN ist, überträgt das System
(342) das IN Paket erneut und kehrt in den Ruhezustand
zurück
(340).
-
Wenn das empfangene Paket (343)
vom Typ DATA ist und in der eingehenden Richtung unterwegs ist,
prüft das
System (344) ob das Daten schwebend Kennzeichen für diese
Adresse eingestellt ist. Wenn das Kennzeichen eingestellt ist, stellt
das System (345) das Kennzeichen zurück und kehrt in den Ruhezustand
zurück
(340). Wenn das Daten schwebend Kennzeichen nicht eingestellt
ist, stellt das System (346) das Kennzeichen ein und überträgt (347) das
DATA Paket erneut an die LEX bevor es in den Ruhezustand zurückkehrt
(340).
-
Wenn das empfangene Paket (348)
vom Typ ACK und in der abgehenden Richtung unterwegs ist, überträgt das System
(349) das ACK Paket erneut und kehrt in den Ruhezustand
zurück
(300).
-
Wenn das empfangene Paket (350)
vom Typ OUT ist, überträgt das System
(351) das OUT Paket erneut und kehrt in den Ruhezustand
zurück
(340).
-
Wenn das empfangene Paket (352)
vom Typ DATA und in der abgehenden Richtung unterwegs ist, überträgt das System
(353) das DATA Paket erneut und kehrt in den Ruhezustand
zurück
(340).
-
Wenn das empfangene Paket (354)
vom Typ ACK und in der eingehenden Richtung unterwegs ist, überträgt das System
das (355) ACK Paket erneut und kehrt in den Ruhezustand
zurück
(340).
-
25 zeigt
eine Ausführung
der REX Steuereinrichtung (61) gemäß der in 7 dargestellten Ausführung der Erfindung. In dieser
Ausführung
werden die Kontrollfunktionen der REX in zwei unterschiedliche Komponenten
geteilt, die Netzwerk Steuereinrichtung (403) und die Anschluss
Steuereinrichtung (401). First In First Out (FIFO) Pufferspeicher
(400) & (402)
werden benutzt, um individuelle Pakete aufzubewahren während sie
an das USB Interface geschickt und von dem USB Interface empfangen
werden. (63).
-
Die Unterteilung der Funktionen in
die separaten Steuereinrichtungen (403) und (401)
ermöglicht den
Betrieb des Systems einfacher zu beschreiben. Die Netzwerk Steuereinrichtung
(403) führt
die Netzwerk-Ebene Funktionen wie in 24 durch,
während
die Anschluss Steuereinrichtung (401) die Anschluss-Ebene
Funktionen durchführt,
die mit der Übertragung
und dem Empfang einzelner Pakete verbunden sind.
-
Die folgenden Signale sind zwischen
den Komponenten der 25 dargestellt.
Die Netzwerk Steuereinrichtung (403) erzeugt das Signal
ISO um anzuzeigen, daß das
in TX FIFO (402) plazierte Paket zu einer isochronen Übertragung
gehört
und keine Bestätigung
erwartet wird.
-
TX FIFO (402) erzeugt das
Signal TXRDY um anzuzeigen, daß es
ein komplettes versendbares Paket enthält. TX FIFO (402)
erzeugt auch das Signal TXOVR um anzuzeigen, daß die Absendung eines Paketes
an das USB Interface (63) beendet ist. RX FIFO (400)
erzeugt das Signal SOP um anzuzeigen, daß der Empfang eines Paketes
von der USB Interface (63) begonnen wurde. RX FIFO (400)
erzeugt auch das Signal EOP um anzuzeigen, daß der Empfang des Paketes von
dem USB Interface (63) abgeschlossen wurde. Die Anschluss-Steuereinichtung
(401) erzeugt das Signal TXENB um TX FIFO (402)
zu informieren, daß TX
FIFO nun in der Lage ist die Informationen an das USB Interface
(63) zu schicken.
-
26 stellt
ein Ablaufdiagramm eines Anschluss-Ebene-Paket Ouputs dar. In dieser
Zeichnung wird die Ansteuerlogik (410) durch die Netzwerk-Steuereinrichtung
implementiert, die Ansteuerlogik (411) wird durch die Anschluss-Steuereinrichtung
implementiert (401), die Ansteuerlogik (412) wird
durch die TX FIFO (402) implementiert und die Ansteuerlogik
(413) wird durch das USB Interface (63) implementiert.
-
Ein Anschluss-Ebene Output Ablauf
wird begonnen, wenn die Netzwerk-Steuereinrichtung
(403) ein Datenpaket an die TX FIFO (402) kopiert
und das WRITE Signal setzt. Die Netzwerk Steuereinrichtung (403)
informiert auch anhand des ISO Signals die Anschluss-Steuereinrichtung
(401) ob das Paket den isochronen Verkehr enthält. Wenn
das Datenpaket komplett von der TX FIFO (402) empfangen
wurde, setzt das TX FIFO das Signal TXRDY um die Anschluss-Steuereinrichtung
(401) zu informieren, daß es jetzt bereit ist das Datenpaket
an das USB Interface (63) auszugeben.
-
Sobald die Anschluss-Steuereinrichtung (401)
entscheidet, daß es
keine Konflikte bzgl. des Zugangs zu dem USB Interface (63)
gibt, setzt die Anschluss-Steuereinrichtung (401) das TXENB
Signal, um TX FIFO (402) anzuzeigen, daß es jetzt eventuell beginnt
das Datenpaket an das USB Interface (63) zu übertragen.
TX FIFO (402) überträgt dann
das Datenpaket an das USB Interface (63), jeweils ein Byte
nach dem anderen mittels dem Signal(e) TXBYTE.
-
Nachdem alle Bytes des Datenpakets übertragen
wurden, setzt TX FIFO (402) das Signal TXOVR um der Anschluss-Steuereinrichtung
(401) anzuzeigen, daß die Übertragung
abgeschlossen ist und neue Tätigkeiten
bzgl. des USB Interface (63) geplant werden können. Die
Anschluss-Steuereinrichtung (401) beendet den Handshake
mittels einer Herabsetzung des TXENB Signals um zu verhindern, daß ein weiteres
Datenpaket ohne Eingreifen der Anschluss-Steuereinrichtung übertragen
wird.
-
27 zeigt
ein Ablaufdiagramm eines Anschluss-Ebene-Paket Inputs. In dieser
Zeichnung wird die Ansteuerlogik (420) durch die Netzwerk-Steuereinrichtung
(403) implementiert, die Ansteuerlogik (421) wird
durch die Anschluss-Steuereinichtung (401) implementiert,
die Ansteuerlogik (422) wird durch die RX FIFO (400)
implementiert und die Ansteuerlogik (423) wird durch das
USB Interface (63) implementiert.
-
Ein Anschluss-Ebene Input Ablauf
wird begonnen wenn RX FIFO (400) mittels dem Signal RXBYTE
das erste Byte des neuen Datenpakets von dem USB Interface (63)
erhält.
Danach zeigt RX FIFO der Anschluss-Steuereinrichtung (401)
mittels dem Signal SOP an, daß der
Beginn eines neuen Paketes entdeckt wurde. Der Rest des Datenpakets wird
dann mittels des RXBYTE Signals an der RX FIFO (400) empfangen.
-
Nachdem das komplette Datenpaket
an der RX FIFO (400) empfangen wurde, wird die Anschluss-Steuereinrichtung
(401) mittels dem Signal End Of Packet EOP benachrichtigt.
RX FIFO (400) überträgt dann
das komplette Paket mittels dem Signal READ an die Netzwerk-Steuereinrichtung
(403).
-
28 zeigt
einen Algorithmus zur Durchführung
von Anschlusskontrollfunktionen gemäß der Erfindung aus 25. In der Ausführung aus 25 werden die Anschlusskontrollfunktionen
aus 28 durch einen separaten
Anschluss-Steuereinrichtung-Datenblock (401) implementiert.
-
Nach dem ersten Hochfahren und nach
einer Rücksetzung
begibt sich das System in den Ruhezustand (470) in dem
es auf das zu empfangene Signal wartet.
-
Wenn das empfangene Signal (471)
TXRDY ist, prüft
das System (472) ob das Überwachungskennzeichen eingestellt
ist. Wenn dieses eingestellt ist, kehrt das System in den Ruhezustand
zurück (470).
Wenn das Überwachungskennzeichen
nicht eingestellt ist, stellt das System (473) das Kennzeichen
ein um anzuzeigen, daß das
System noch nicht in der Lage ist ein anderes Paket zu übertragen.
Das System prüft
dann (474) das ISO Signal um zu entscheiden, ob das zu übertragende
Paket einen isochronen Transfer darstellt. Das ISO Signal stimmt wenn
der Überwachungs-Timer
auf (475) 2 Bit-Zeiten eingestellt ist. Das ISO Signal
ist falsch ist, wenn der Überwachungs-Timer
(476) auf 16-Bit-Zeiten eingestellt ist. Das System stellt
dann das (477) Signal TXENB ein um anzuzeigen, daß die Übertragung
des Pakets an das USB Interface (63) beginnen kann und begibt
sich dann in den Übertragungszustand
(478).
-
Wenn das komplette Paket an das USB
Interface übertragen
wurde, empfängt
das System (479) das Signal TXOVR, stellt das (480)
Signal TXENB zurück
um eine vorzeitige Übertragung
eines anderen Paketes zu vermeiden, startet den (481) Überwachungs-Timer
mit dem zuvor eingestellten Wert und kehrt in den Ruhezustand zurück (470).
-
Wenn das empfangene Signal (482) Überwachung
Abgelaufen ist, stellt das System (483) das Überwachungskennzeichen
wieder zurück
um anzuzeigen, daß eine
weitere Übertragung
stattfinden kann. Das System kehrt in den Ruhezustand zurück (470).
-
Wenn das empfangene Signal (484)
SOP ist, begibt sich das System in den Empfangen Zustand (485)
in dem es bis zum Empfang des EOP Signals (486) verbleibt,
welches anzeigt, daß ein
vollständiges
Paket nun in RX FIFO (400) zur Verfügung steht. Das System kehrt
in den Ruhezustand zurück
(470).
-
29 zeigt
ein Ablaufdiagramm eines Lese-Massentransfers gemäß der Erfindung.
Der Lese-Massentransfer ist ein besonderer Fall eines wie in 18 beschriebenen asynchronen
Input Transfers.
-
In Datenübertragungsblock 1 erzeugt
die Ansteuerlogik (500) innerhalb des Host PC eine Anforderung
nach Input Daten, die an eine bestimmte USB Funktion adressiert
ist. Diese Anforderung wird als ein In Addr Paket an das LEX Untersystem übertragen.
Die Ansteuerlogik (501) innerhalb des LEX Untersystems
leitet das In Addr Paket an das REX Untersystem weiter und informiert
noch zusätzlich
das REX Untersystem, daß ein
Bestätigungs-Handshake benötigt wird.
Die Ansteuerlogik (501) erzeugt ein synthetisches negatives
Bestätigungspaket
und überträgt dieses
als ein Nak Paket an den Host PC. Wenn das LEX Untersystem von dem
Host PC zusätzliche
Anforderungen der gleichen Informationen erhält, noch bevor es die benötigten Informationen von
dem REX Untersystem erhalten hat, nimmt das LEX Untersystem diese
zusätzlichen
Anforderungen auf und erzeugt zusätzliche Nak Pakete.
-
Die Ansteuerlogik (502)
innerhalb des REX Untersystems empfängt von dem LEX Untersystem das
In Addr Paket und leitet dieses Paket an die Einrichtung weiter.
Die Ansteuerlogik (503) innerhalb der Einrichtung stellt
die benötigten
Informationen zusammen und überträgt diese
als ein Datenpaket an die REX. Die Ansteuerlogik (502)
innerhalb des REX empfängt
das Datenpaket und leitet dieses an die LEX weiter wobei sie zusätzlich noch
die Adresse der ursprünglichen
Einrichtung an das Datenpaket hinzufügt. Die Ansteuerlogik (502)
innerhalb der REX erzeugt ein synthetisches Bestätigungspaket und überträgt dieses
als ein Ack Paket an die Einrichtung.
-
Die Ansteuerlogik (500)
innerhalb des Host PC erzeugt eine weitere Anforderung von Input
Daten, die an dieselbe USB Funktion adressiert ist. Die Ansteuerlogik
(501) innerhalb der LEX erkennt, daß diese Input Daten bereits
von der REX empfangen wurden und im Speicher gespeichert sind. Die
Ansteuerlogik (501) ruft die gespeicherten Daten aus dem
Speicher ab und überträgt diese
als ein Datenpaket an den Host PC. Die Ansteuerlogik (500)
innerhalb des Host PCs akzeptiert das angeforderte Datenpaket und
bestätigt
den Empfang durch die Übertragung
eines Ack Paketes an die LEX.
-
30 zeigt
ein Ablaufdiagramm eines Schreibe-Massentransfers gemäß der Erfindung.
Der Schreibe-Massentransfer ist ein besonderer Fall eines wie in 20 beschriebenen asynchronen
Output Transfers.
-
In Datenübertragungsblock 1 erzeugt
die Ansteuerlogik (500) innerhalb des Host PC eine Ankündigung
von Output Daten, die an eine bestimmte USB Funktion adressiert
ist. Diese Ankündigung
wird als ein Out Addr Paket an das LEX Untersystem übertragen,
dem folgt ein Datenpaket. Die Ansteuerlogik (501) innerhalb
des LEX Untersystems leitet das Out Addr Paket und das Datenpaket
an das REX Untersystem weiter und informiert zusätzlich das REX Untersystem,
daß ein
Bestätigungs-Handshake
benötigt wird.
Die Ansteuerlogik (501) erzeugt ein synthetisches negatives
Bestätigungspaket
und überträgt dieses
als ein Nak Paket an den Host PC. Wenn das LEX Untersystem von dem
Host PC zusätzliche
Ankündigungen
der gleichen Informationen erhält
noch bevor es die benötigte
Bestätigung
vom REX Untersystem empfangen hat, nimmt das LEX Untersystem dann
die zusätzlichen
Ankündigungen
auf und erzeugt zusätzliche
Nak Pakete.
-
Die Ansteuerlogik (502)
innerhalb des REX Untersystems empfängt von dem LEX Untersystem das
Out Addr Paket und das Datenpaket und leitet die Pakete an die Einrichtung
weiter. Die Ansteuerlogik (503) innerhalb der Einrichtung
stellt eine positive Bestätigungsantwort
zusammen und überträgt diese als
ein Ack Paket an die REX. Die Ansteuerlogik (502) innerhalb
der REX empfängt
das Ack Paket und leitet dieses an die LEX weiter wobei es zusätzlich noch
die Adresse der ursprünglichen
Einheit dem Ack Paket hinzufügt.
-
Die Ansteuerlogik (500)
innerhalb des Host PCs erzeugt eine weitere Ankündigung von Output Daten, die
an dieselbe USB Funktion adressiert ist. Die Ansteuerlogik (501)
innerhalb des LEX erkennt, daß eine
Bestätigung
auf die entsprechenden Output Daten bereits von der REX empfangen
und im Speicher gespeichert wurde. Die Ansteuerlogik (501)
ruft die gespeicherte Bestätigung
aus dem Speicher ab und übernägt dieses
als ein Ack Paket an den Host PC.
-
31 zeigt
ein Ablaufdiagramm eines Unterbrechung-In-Transfers gemäß der Erfindung.
Der Unterbrechung-In-Transfer ist ein besonderer Fall eines wie
in 18 beschriebenen
asynchronen Input Transfers.
-
In Datenübertragungsblock 1 erzeugt
die Ansteuerlogik (500) innerhalb des Host PC eine Anforderung
von Input Daten, die an eine bestimmte USB Funktion adressiert ist.
Die Anforderung wird als ein In Addr Paket an das LEX Untersystem übertragen. Die
Ansteuerlogik (501) innerhalb des LEX Untersystems leitet
das In Addr Paket an das REX Untersystem weiter und informiert zusätzlich das
REX Untersystem, daß ein
Bestätigungs-Handshake benötigt wird.
Die Ansteuerlogik (501) erzeugt ein synthetisches negatives
Bestätigungspaket
und überträgt dieses
als ein Nak Paket an den Host PC.
-
Die Ansteuerlogik (502)
innerhalb des REX Untersystems empfängt das In Addr Paket von dem LEX
Untersystem und leitet das Paket an die Einrichtung weiter. Die
Ansteuerlogik (503) innerhalb der Einrichtung stellt die
entsprechenden Informationen zusammen und überträgt diese als ein Datenpaket
an die REX. Die Ansteuerlogik (502) innerhalb der REX empfängt dieses
Datenpaket und leitet es an die LEX weiter, wobei es zusätzlich noch
dein Datenpaket die Adresse der ursprünglichen Einrichtung hinzufügt. Die
Ansteuerlogik (502) innerhalb der REX erzeugt ein synthetisches
Bestätigungspaket
und überträgt dieses
als ein Ack Paket an die Einrichtung.
-
In einem nachfolgendem Datenübertragungsblock
"n" erzeugt die Ansteuerlugik (504) innerhalb des Host
PC eine weitere Anforderung von Input Daten, die an dieselbe USB
Funktion adressiert ist. Die Ansteuerlogik (505) innerhalb
der LEX erkennt, daß diese
Input Daten bereits von der REX empfangen und im Speicher gespeichert
wurden. Die Ansteuerlogik (505) ruft die Input Daten aus
dem Speicher ab und überträgt diese
als ein Datenpaket an den Host PC. Die Ansteuerlogik (504)
innerhalb des Host PCs akzeptiert das angeforderte Datenpaket und
bestätigt
den Empfang durch Übertragung
eines Ack Paketes an die LEX.
-
32 zeigt
ein Ablaufdiagramm eines Unterbrechung-Out-Transfer gemäß der Erfindung.
Der Unterbrechung-Out-Transfer ist ein besonderer Fall eines wie
in 20 beschriebenen
asynchronen Output Transfers.
-
In Datenübertragungsblock 1 erzeugt
die Ansteuerlogik (500) innerhalb des Host PC eine Ankündigung
von Output Daten, die an eine bestimmte USB Funktion adressiert
ist. Diese Ankündigung
wird als ein Out Addr Paket gefolgt von einem Datenpaket an das
LEX Untersystem übertragen.
Die Ansteuerlogik (501) innerhalb des LEX Untersystems
leitet das Out Addr Paket und das Datenpaket an das REX Untersystem
weiter, und informiert zusätzlich
das REX Untersystem, daß ein
Bestätigungs-Handshake
benötigt wird.
Die Ansteuerlogik (501) erzeugt ein synthetisches negatives
Bestätigungspaket
und überträgt dieses
als ein Nak Paket an den Host PC.
-
Die Ansteuerlogik (502)
innerhalb des REX Untersystems empfängt das Out Addr Paket und
das Datenpaket von dem LEX Untersystem und leitet die Pakete an
die Einrichtung weiter. Die Ansteuerlogik (503) innerhalb
der Einrichtung stellt eine positive Bestätigungsantwort zusammen und überträgt diese
als ein Ack Paket an die REX. Die Ansteuerlogik (502) innerhalb
der REX empfängt
das Ack Paket und leitet dieses an die LEX weiter, wobei es zusätzlich dem Ack
Paket noch die Adresse der ursprünglichen
Einrichtung hinzufügt.
-
In einem nachfolgendem Datenübertragungsblock
"n" erzeugt die Ansteuerlogik (504) innerhalb des Host
PC eine weitere Ankündigung
von Output Daten, die an dieselbe USB Funktion adressiert ist. Die
Ansteuerlogik (505) innerhalb der LEX erkennt, daß eine den
Output Daten ensprechende Bestätigung
bereits von der REX empfangen und im Speicher gespeichert wurde.
Die Ansteuerlogik (505) ruft die gespeicherte Bestätigung aus
dem Speicher ab und überträgt diese
als ein Ack Paket an den Host PC.
-
33 ist
ein Ablaufdiagramm eines Kontrolltransfers gemäß der Erfindung. Der Kontrolltransfer
ist ein besonderer Fall des in 20 beschriebenen
asynchronen Output Transfers.
-
In Datenübertragungsblock 1 erzeugt
die Ansteuerlogik (500) innerhalb des Host PC eine Ankündigung über den
Set-up einer Einrichtung, die an eine bestimmte USB Funktion adressiert
ist. Die Ankündigung
wird als ein Setup Paket gefolgt von einem Datenpaket an das LEX
Untersystem übertragen.
Die Ansteuerlogik (501) innerhalb des LEX Untersystems leitet
das Setup Paket und das Datenpaket an das REX Untersystem weiter,
wobei zusätzlich
das REX Untersystem informiert wird, daß ein Bestätigungs-Handshake benötigt wird.
Die Ansteuerlogik (501) erzeugt ein synthetisches positives
Bestätigungspaket
und überträgt dieses
als ein Ack Paket an den Host PC.
-
Die Ansteuerlogik (502)
innerhalb des REX Untersystems empfängt das Setup Paket und das Datenpaket
von dem LEX Untersystem und leitet diese Pakete an die Einrichtung
weiter. Die Ansteuerlogik (503) innerhalb der Einrichtung
stellt eine positive Bestätigungsantwort
zusammen und überträgt diese als
ein Ack Paket an die REX. Die Ansteuerlogik (502) innerhalb
der REX empfängt
das Ack Paket und leitet dieses an die LEX weiter, wobei dem Ack Paket
zusätzlich
noch die Adresse der ursprünglichen
Einrichtung hinzugefügt
wird.
-
Wahlweise kann die LEX auf eine positive Bestätigungsantwort
von der REX warten um den erfolgreichen Empfang des Signals an der
Einrichtung zu bestätigen.
-
34 ist
ein Ablaufdiagramm eines Langsame-Geschwindigkeit Unterbrechung-In-Transfers gemäß der Erfindung.
Dieser Langsame-Geschwindigkeit Unterbrechung-In-Transfer ist ein
besonderer Fall des in 18 beschriebenen
asynchronen Input Transfers und des in 31 beschriebenen Unterbrechung-In-Transfers.
-
In Datenübertragungsblock 1 erzeugt
die Ansteuerlogik (500) innerhalb des Host PC eine Anforderung
von Input Daten, die an eine bestimmte langsame-Geschwindigkeit
USB Funktion adressiert ist. Diese Anforderung wird als ein Pre
Paket gefolgt von einem langsame-Geschwindigkeit
In Addr Paket an das LEX Untersystem übertragen. Die Ansteuerlogik (501)
innerhalb des LEX Untersystems leitet das Pre Paket und das In Addr
Paket an das REX Untersystem weiter, wobei zusätzlich das REX Untersystem informiert
wird, daß ein
Bestätigungs-Handshake
benötigt
wird. Die Ansteuerlogik (501) erzeugt ein synthetisches
negatives Bestätigungspaket
und überträgt dieses
als ein langsame-Geschwindigkeit Nak Paket an den Host PC.
-
Die Ansteuerlogik (502)
innerhalb des REX Untersystems empfängt das Pre Paket und das In Addr
Paket von dem LEX Untersystem und leitet die Pakete an die Einrichtung
weiter. Die Ansteuerlogik (503) innerhalb der Einrichtung
stellt die entsprechenden Informationen zusammen und überträgt diese
als ein langsame-Geschwindigkeit Datenpaket an die REX. Die Ansteuerlogik
(502) innerhalb der REX empfängt das Datenpaket und leitet
dieses an die LEX weiter, wobei es dem Datenpaket noch zusätzlich die
Adresse der ursprünglichen
Einrichtung hinzufügt.
Die Ansteuerlogik (502) innerhalb der REX erzeugt ein synthetisches
Bestätigungspaket
und überträgt dieses
als ein Pre Paket, dem ein langsame-Geschwindigkeit Ack Paket folgt,
an die Einrichtung.
-
In einem nachfolgenden Datenübertragungsblock
"n" erzeugt die Ansteuerlogik (504) innerhalb des Host
PC eine weitere Anforderung von Input Daten, die an dieselbe USB
Funktion adressiert ist. Die Ansteuerlogik (505) innerhalb
der LEX erkennt, daß diese
Input Daten bereits von der REX empfangen und im Speicher gespeichert
wurden. Die Ansteuerlogik (505) ruft die gespeicherten
Input Daten aus dem Speicher ab und überträgt diese als ein langsame-Geschwindigkeit
Datenpaket an den Host PC. Die Ansteuerlogik (504) innerhalb
des Host PC akzeptiert das angeforderte Datenpaket und bestätigt den
Empfang durch Übertragung
eines Pre Paketes gefolgt von einem langsame-Geschwindigkeit Ack Paketes
an die LEX.
-
35 zeigt
ein Ablaufdiagramm eines Langsame-Geschwindigkeit Unterbrechung-Out-Transfer
gemäß der Erfindung.
Der Langsame-Geschwindigkeit Unterbrechung-Out-Transfer ist ein
besonderer Fall des in 20 beschriebenen asynchronen
Output Transfers und des in 32 beschriebenen
Unterbrechung-Out-Transfers.
-
In Datenübertragungsblock 1 erzeugt
die Ansteuerlogik (500) innerhalb des Host PC eine Ankündigung
von Output Daten, die an eine bestimmte langsame-Geschwindigkeit
USB Funktion adressiert ist. Diese Ankündigung wird als ein Pre Paket,
gefolgt von einem Out Addr Paket, gefolgt von einem zweiten Pre
Paket, gefolgt von einem Datenpaket an das LEX Untersystem übertragen.
Die Ansteuerlogik (501) innerhalb des LEX Untersystems
leitet das Pre Paket, das Out Addr Paket, das zweite Pre Paket und das
Datenpaket an das REX Untersystem weiter; wobei es zusätzlich das
REX Untersystem informiert, daß ein
Bestätigungs-Handshake
benötigt
wird. Die Ansteuerlogik (501) erzeugt ein synthetisches
negatives Bestätigungspaket
und überträgt dieses
als ein langsame-Geschwindigkeit Nak Paket an den Host PC.
-
Die Ansteuerlogik (502)
innerhalb des REX Untersystems empfängt das Pre Paket, das Out
Addr Paket, das zweite Pre Paket und das Datenpaket von dem LEX
Untersystem und leitet die Pakete an die Einrichtung weiter. Die
Ansteuerlogik (503) innerhalb der Einrichtung stellt eine
positive Bestätigungsantwort
zusammmen und überträgt diese
als ein langsame-Geschwindigkeit
Ack Paket an die REX. Die Ansteuerlogik (502) innerhalb
der REX empfängt das
Ack Paket und leitet dieses an die LEX weiter, wobei es zusätzlich noch
die Adresse der ursprünglichen
Einrichtung dem Ack Paket hinzufügt.
-
In einem nachfolgendem Datenübertragungsblock
"n" erzeugt die Ansteuerlogik (504) innerhalb des Host
PC eine weitere Ankündigung
von Output Daten, die an dieselbe USB Funktion adressiert ist. Die
Ansteuerlogik (505) innerhalb der LEX erkennt, daß eine den Output
Daten entsprechende Bestätigung
bereits von der REX empfangen und im Speicher gespeichert wurde.
Die Ansteuerlogik (505) ruft die gespeicherte Bestätigung aus
dem Speicher ab und überträgt diese
als ein langsame-Geschwindigkeit Ack Paket an den Host PC.
-
Daraus ist ersichtlich, daß in Übereinstimmung
mit der jetzigen Erfindung, USB Einrichtungen zur Verfügung gestellt
wurden, die im vollen Umfang den im vorab genannten Mitteln, Zielen
und Vorteilen entsprechen. Nach Beschreibung der spezifischen Ausführungsbeispiele
der jetzigen Erfindung ist es selbstverständlich daß denjenigen die sich in der
Materie auskennen, Alternativen, Abänderungen und Variationen davon
vorgeschlagen werden können und
es ist gewollt, daß die
jetzige Erfindung alle dieser Alternativen, Abänderung und Variationen, die
in den Rahmen der angefügten
Ansprüche
fallen, umfasst
-
Zusätzlich wird aus Gründen der
Genauigkeit und wenn es nicht anderweitig vermerkt, ist darauf hingewiesen,
daß bei
Verwendung des Wortes "umfassen" ( "bestehen aus") und Variationen
des Wortes wie "umfassend" (bestehend aus) und "umfasst' (besteht
aus) in der Beschreibung und den Ansprüchen der jetzigen Erfindung,
damit nicht beabsichtigt ist andere Additive, Komponenten, ganze Zahlen
oder Schritte auszuschliessen.
-
Kurzdarstellung
-
Die jetzige Erfindung stellt ein
Verfahren und Geräte
zur Verfügung,
die zur Vergrößerung der räumlichen
Entfernung von handelsüblichen
USB Einrichtungen verwendet werden. Ein "Vergrößerte-Entfernungs-Hub" wird
zur Verfügung
gestellt. Dieser besteht aus einer Lokalen Erweiterungseinheit und
einer Entfernten Erweiterungseinheit, die bis zu beispielsweise
100 Meter auseinander gelegen sein können. Das Verfahren und die
Geräte
ermöglichen eine
bessere Plazierung und Anwendung der USB Einrichtungen.