DE19900290A1 - Verfahren zum Betreiben einer universellen seriellen Buseinrichtung und universelle serielle Buseinrichtung - Google Patents

Verfahren zum Betreiben einer universellen seriellen Buseinrichtung und universelle serielle Buseinrichtung

Info

Publication number
DE19900290A1
DE19900290A1 DE19900290A DE19900290A DE19900290A1 DE 19900290 A1 DE19900290 A1 DE 19900290A1 DE 19900290 A DE19900290 A DE 19900290A DE 19900290 A DE19900290 A DE 19900290A DE 19900290 A1 DE19900290 A1 DE 19900290A1
Authority
DE
Germany
Prior art keywords
host
address
usb
token
enable bit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19900290A
Other languages
English (en)
Other versions
DE19900290B4 (de
DE19900290A9 (de
Inventor
David J Fensore
Kent Bruce Waterson
Gregory Lewis Dean
Robert Macomber
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National Semiconductor Corp
Original Assignee
National Semiconductor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Publication of DE19900290A9 publication Critical patent/DE19900290A9/de
Application filed by National Semiconductor Corp filed Critical National Semiconductor Corp
Publication of DE19900290A1 publication Critical patent/DE19900290A1/de
Application granted granted Critical
Publication of DE19900290B4 publication Critical patent/DE19900290B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4247Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus
    • G06F13/426Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus using an embedded synchronisation, e.g. Firewire bus, Fibre Channel bus, SSA bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Small-Scale Networks (AREA)

Description

Das Verfahren und die Einrichtung betreffen die Initialisierung einer universellen Busein­ richtung und insbesondere Zuordnung die einer eindeutigen Funktionsadresse zu einer univer­ sellen seriellen Buseinrichtung.
Ein universeller serieller Bus (USB) ist eine genormte Peripherieschnittstelle zum Anschlie­ ßen von Personal Computern an eine große Vielzahl von Einrichtungen: z. B. digitale Tele­ fonleitungen, Monitore, Modems, Mäuse, Drucker, Scanner, Spielsteuereinrichtungen, Ta­ staturen und andere Peripheriegeräte. Ein USB ersetzt also vorhandene Schnittstellen, wie die seriellen Ports RS-232C, parallele Ports, PS/2-Schnittstellen und Game/MIDI Ports.
Bei dem USB werden alle angeschlossenen Geräte über einen einzigen Verbindungstyp, der eine "tiered Star"-Topologie (in Rängen geordnete Stern-Topologie) verwendet, mit einem Personal Computer verbunden. Ein Host-Personal Computer umfaßt eine einzige USB- Steuereinrichtung. Die Host-Steuereinrichtung bildet die Schnittstelle zwischen dem USB- Netz und dem Host-Personal Computer. Die Host-Steuereinrichtung steuert einige Zugriffe auf die USB-Ressourcen und überwacht die Bustopologie. Ein USB-Verteilerknoten (Hub) sieht die USB-Anschlußpunkte für USB-Einrichtungen vor.
Ein Beispiel der Sterntopologie eines USB-Netzes ist in Fig. 1 gezeigt. Ein Host-PC 100 ist ein typischer Personal Computer mit einer USB-Portverbindung über eine Host- Steuereinrichtung 102. Die Host-Steuereinrichtung 102 ist direkt mit dem Verteilerknoten (Hub) 110 verbunden. Eine zusammengesetzte Einrichtung 120, ein Verteilerknoten 130 und eine Einrichtung 140 sind mit der Host-Steuereinrichtung über den Verteilerknoten 110 ver­ bunden. Einrichtungen 124 und 126 der zusammengesetzten Einrichtung 120 sind mit der Host-Steuereinrichtung 102 über den Verteilerknoten 122 und den Verteilerknoten 110 ver­ bunden. Ein praktisches Beispiel einer zusammengesetzten Einrichtung wäre ein Gerät mit integriertem Drucker und Fax. Der Drucker könnte die Einrichtung 124 sein, und das Fax könnte die Einrichtung 126 sein.
Die in Fig 1 gezeigte Sterntopographie ermöglicht es, Daten in den und aus dem Host-PC 100 zu den verschiedenen Einrichtungen zu übertragen. Wenn Daten von dem Host zu einer Ein­ richtung übertragen werden, gehen sie stromabwärts durch die verbindenden Verteilerknoten. Wenn Daten von einer Einrichtung zu dem Host übertragen werden, gehen sie stromaufwärts durch die verbindenden Verteilerknoten.
USB-Verteilerknoten und Einrichtungen können angeschlossen und abgetrennt werden, ohne das das USB-Netz vollständig neu gestartet werden muß. Beim Anschließen einer Einrichtung oder eines Verteilerknotens an einen stromaufwärtigen Verteilerknoten benachrichtigt der stromaufwärtige Verteilerknoten die Host-Steuereinrichtung über eine Änderung des Status. Gemäß dem USB-Protokoll enabelt die Host-Steuereinrichtung den Port des Verteilerknotens, mit dem die Einrichtung verbunden ist. Die Host-Steuereinrichtung weist dann jeder Einrich­ tung eine eindeutige Funktionsadresse zu. Ports werden nacheinander enabelt, während die Host-Steuereinrichtung 102 eindeutige Funktionsadressen zuweist. Zum Anschließen einer zusammengesetzten Einrichtung weist die Steuereinrichtung jeder in der zusammengesetzten Einrichtung enthaltenen Einrichtung eine eindeutige Funktionsadresse zu. In Fig. 1 werden den Einrichtungen 124, 126, 132, 134 und 140 zusätzlich zu den Verteilerknoten 110, 122 und 130 jeweils eine eindeutige Funktionsadresse zugewiesen, sobald sie mit dem USB-Netz ver­ bunden werden.
Zusätzlich zu den Verteilerknoten 110, 122 und 133 antworten die Einrichtungen 124, 126, 132, 134 und 140 jeweils auf eine voreingestellte Adresse 00h, bis ihnen die eindeutige Funk­ tionsadresse zugewiesen wird. Jede der Einrichtungen umfaßt Register, die von der Host- Steuereinrichtung gelesen werden können. Die Register umfassen ein Voreinstellungsbit (DEF), ein Funktionsadressen-Enablebit (AE) und ein Funktionsadressenregister (FAR). Das Voreinstellungsbit zeigt an, ob die Einrichtung auf die voreingestellte Adresse anspricht. Wenn es gesetzt ist, reagiert die Einrichtung auf die voreingestellte Adresse, wenn es gelöscht ist, tut sie dies nicht. Das Funktionsadressen-Enablebit zeigt an, ob die Einrichtung auf die in dem Funktionsadressenregister gespeicherte Adresse antwortet. Wenn es gesetzt ist, wird die Einrichtung auf die im Funktionsadressenregister gespeicherte Adresse reagieren, wenn es gelöscht ist, tut sie dies nicht.
Alle Einrichtungen 124, 126, 132, 134 und 140 sind mit der Host-Steuereinrichtung 102 über wenigstens einen Verteilerknoten verbunden. Jeder Verteilerknoten hat einen stromaufwärti­ gen Port und wenigstens einen stromabwärtigen Port. Beim Anschließen oder Entfernen einer Einrichtung an einen bzw. von einem stromabwärtigen Port, benachrichtigt ein Verteilerkno­ ten die Host-Steuereinrichtung über eine Änderung des Status. Die Host-Steuereinrichtung fragt dann den Verteilerknoten ab, uni die Änderung des Status an den Ports des Verteiler­ knotens zu ermitteln.
Beim Anschließen einer Einrichtung an einen der stromabwärtigen Ports des Verteilerknotens, läuft die obige Prozedur ab, um die Host-Steuereinrichtung über das Anschließen einer neuen Einrichtung zu benachrichtigen. Die stromabwärtigen Ports eines Verteilerknotens sind in der Voreinstellung disabelt, bis die Host-Steuereinrichtung sie enabelt. Die Host- Steuereinrichtung wird daher den Port enabeln.
Beim Entfernen einer Einrichtung von einem der stromabwärtigen Ports eines Verteilerkno­ tens disabelt der Verteilerknoten den entsprechenden Port automatisch und benachrichtigt den Host über die Änderung. Die Host-Steuereinrichtung aktualisiert den Topographiezustand, um die Veränderung wiederzugeben.
Der Prozeß des Aktivierens einer neu angeschlossenen Einrichtung ist im folgenden mit wei­ teren Einzelheiten beschrieben. Wenn eine Einrichtung an einem stromabwärtigen Port eines Verteilerknotens angeschlossen wird, benachrichtigt der Verteilerknoten die Host- Steuereinrichtung über die Änderung des Zustands über einen Statusänderungskanal. Die Host-Steuereinrichtung fragt den Verteilerknoten ab, um zu ermitteln, bei welchem der strom­ abwärtigen Ports die Verbindung erfolgt ist. Die Host-Steuereinrichtung gibt dann einen Port- Enable- und Reset-Befehl an den entsprechenden Port aus. Der Enablebefehl enabelt den Port und liefert Energie an die Einrichtung. Der Resetbefehl setzt alle Registereinrichtungen und die Zustandsinformation zurück. Die Einrichtung reagiert auf eine voreingestellte Adresse, und über einen voreingestellten Kanal kann auf sie zugegriffen werden. Die Host- Steuereinrichtung liest dann einen Deskriptor der Einrichtung, uni die Eigenschaften des vor­ eingestellten Kanals zu ermitteln. Der Host weist dann der Einrichtung eine eindeutige Funk­ tionsadresse zu, wodurch die Einrichtung in den adressierten Zustand kommt. Der Host liest dann die Konfigurationsinformation von der Einrichtung und schreibt einen Konfigurations­ wert in die Einrichtung. Dadurch kommt die Einrichtung in den konfigurierten Zustand.
Die Transaktion zum Zuweisen einer eindeutigen Funktionsadresse während des oben be­ schriebenen Aktivierungsprozesses ist im folgenden mit weiteren Einzelheiten erläutert. Diese Transaktionen werden zunächst allgemein beschrieben, dann folgt eine Beschreibung ihrer Anwendung zum Zuweisen einer eindeutigen Funktionsadresse.
Die USB-Spezifikation definiert ein Steuerübertragungsprotokoll, das beim Konfigurieren einer Einrichtung verwendet wird. Eine Steuerübertragung ist aufgebaut aus einer Setup- Transaktion, die Anfrageinformation von dem Host zu der Einrichtung bewegt, optionalen Datentransaktion, die Daten in die durch die Setup-Transaktion angegebene Richtung senden, und eine Statustransaktion, welche Statusinformation von der Einrichtung an den Host zu­ rückgibt.
Das Auftreten einer EIN- oder AUS-Datentransaktion in der Steuertransaktion sieht drei mögliche Transkationsfolgen vor: eine Steuerschreibfolge, eine Steuerlesefolge und eine Steuer-keine-Daten-Folge. Jede dieser Folgen ist nun mit weiteren Einzelheiten beschrieben.
Fig. 4A zeigt eine Steuerschreibfolge. Die Steuerschreibfolge umfaßt drei Stufen: eine Setup- Stufe, eine Datenstufe und eine Statusstufe. Die Setup-Stufe besteht aus einer SETUP- Transaktion 410 mit einem DATA0 PID. Die SETUP-Transaktion 410 spezifiziert, daß eine AUS-Datenstufe folgt. Die Datenstufe besteht aus einer AUS-Transaktion 412 mit einem DATA1 PID. Der AUS-Transaktion 410 folgt eine AUS-Transaktion 414 mit einem DATA0 PID. Dieser Transaktion folgen so viele Transaktionen, wie notwendig sind, um die erforder­ lichen Daten von dem Haus zu übertragen. Dies hängt sowohl von der Größe der Daten in dem Host als auch von der Größe der übertragenen Pakete ab. Das DATA PID ändert sich bei den in der Datenstufe verwendeten AUS-Transaktionen zwischen 1 und 0. Die letzte AUS- Transaktion 416 beendet die Datenstufe. Die Statusstufe besteht aus einer einzigen EIN- Transaktion 418 mit einem DATA1 PID.
In Fig. 4B ist eine Steuerlesefolge gezeigt. Die Steuerdaten-EIN-Folge umfaßt drei Stufen: eine Setup-Stufe, eine Datenstufe und eine Statusstufe. Die Setup-Stufe besteht aus einer SETUP-Transaktion 420 mit einem DATA0 PID. Die SETUP-Transaktion 420 spezifiziert, daß eine EIN-Datenstufe folgt. Die Datenstufe besteht aus einer EIN-Transaktion 422 mit einem DATA1 PID. Der EIN-Transaktion 423 folgt eine EIN-Transaktion 424 mit einem DATA0 PID. Diesem Token folgen so viele Transaktionen, wie notwendig sind, um die be­ nötigten Daten von der Einrichtung zu übertragen. Dies hängt sowohl von der Größe der Da­ ten in der Einrichtung als auch von der Größe der übertragenen Pakete ab. Das DATA PID ändert sich bei den in der Datenstufe verwendeten EIN-Transaktionen zwischen 1 und 0. Die letzte EIN-Transaktion 426 beendet die Datenstufe. Die Statusstufe besteht aus einer einzigen EIN-Transaktion 428 mit einem DATA1 PID.
In Fig. 4C ist eine keine-Daten-Steuerfolge gezeigt. Die keine-Daten-Steuerfolge umfaßt zwei Stufen: eine Setup-Stufe und eine Statusstufe. Die Setup-Stufe besteht aus einer SETUP- Transaktion 420 mit einem DATA0 PID. Die Statusstufe besteht aus einer einzigen AUS- Transaktion 428 mit einem DATA1 PID.
Fig. 3 zeigt ein Flußdiagramm, das eine Setup-Transaktion wiedergibt. Die Transaktion be­ ginnt mit einem SETUP-Token 310, der von dem Host gesendet wird. Eine Setup-Transaktion umfaßt immer ein DATA0 PID für das Datenfeld. Die Einrichtung antwortet durch Senden einer ACK-Quittung, um die SETUP-Transaktion abzuschließen.
Fig. 5 zeigt ein Flußdiagramm, das eine EIN-Transaktion wiedergibt. Die EIN-Transaktion beginnt mit einem EIN-Token 415, der von dem Host an die Einrichtung gesendet wird. Die Einrichtung sollte dann mit dem richtigen DATA-Paket (Datenpaket) 512 antworten (entwe­ der ein DATA0- oder ein DATA1-Paket). Wenn die Einrichtung jedoch vorübergehend kein DATA-Paket zurückgeben kann, sendet sie statt dessen eine NAK-Quittung 514 zurück. Wenn die Einrichtung kein DATA-Paket zurücksenden kann, und der Host eingreifen muß, um ihren Zustand wiederherzustellen, gibt sie eine STALL-Quittung 516 zurück. Beim Zurückgeben eines DATA-Pakets 512 reagiert der Host mit einer ACK-Quittung 518 bei Empfang dieses Pakets.
Fig. 6 zeigt ein Flußdiagramm, das eine AUS-Transaktion darstellt. Die AUS-Transaktion beginnt mit einem AUS-Token 610, der von dem Host an die Einrichtung gesendet wird. Der Host sendet dann das richtige DATA-Paket 612 (entweder ein DATA0- oder ein DATA1- Paket). Wenn die Einrichtung das DATA-Paket 612 ohne Fehler empfängt und für den Emp­ fang eines weiteren Pakets bereit ist, sendet sie eine ACK-Quittung 614 zurück. Wenn die Einrichtung das DATA-Paket 612 ohne Fehler empfängt, der Host das Paket jedoch erneut senden soll, gibt sie eine NAK-Quittung 616 zurück. Die NAK-Quittung wird verwendet, wenn die gewünschte Funktion einer Einrichtung in einem Zustand ist, der es vorübergehend verhindert, daß sie das DATA-Paket empfängt. Wenn die Einrichtung das DATA-Paket 612 empfängt, jedoch noch in einem Haltezustand ist, gibt sie eine STALL-Quittung zurück, uni anzuzeigen, daß der Host nicht versuchen sollte, das Paket erneut zu senden. Wenn das DATA-Paket 612 mit einem CRC-Fehler oder einem Bitfehler (Stuffing-Fehler) empfangen wird, wird keine Quittung zurückgegeben.
Beim Anschließen einer Einrichtung an einen Host-Port verwendet der Host eine Steuer­ schreibübertragung, um eine eindeutige Funktionsadresse zuzuweisen. Wie oben beschrieben besteht eine erfolgreiche Steuerschreibübertragung aus einer SETUP-Transaktion, wenigstens einer AUS-Transaktion und einer EIN-Transaktion. Die SETUP-Transaktion wird an die vor­ eingestellte Adresse gerichtet. Die AUS-Transaktion(en) enthalten die eindeutige Funktions­ adresse für die Einrichtung. Die EIN-Transaktion besteht aus dem EIN-Token von dem Host, einem Null-Längen-DATA1-Paket von der Einrichtung an den Host und einer ACK-Quittung von dem Host an die Einrichtung.
Um die Funktionsadresse zu enabeln setzt jede der Einrichtungen 124, 126, 132, 134 und 140 und Verteilerknoten 110, 122 und 130 ihrerseits/seinerseits ein Funktionsadressenbit. Nach Beendigung der AUS-Transaktionen einer SETUP-Steuerübertragung zum Zuweisen einer eindeutigen Funktionsadresse hat die Einrichtung die eindeutige Funktionsadresse empfan­ gen. Diese Adresse wird in das Funktionsadressenregister der Einrichtung geladen, und das Adressenablebit wird gesetzt. Der Host sendet dann einen EIN-Token, um die Statusstufe der Setup-Steuerübertragung zu starten. Die Statusstufe wird dazu verwendet, die Beendigung der Steuerübertragung zu bestätigen. Nach dem Laden einer eindeutigen Funktionsadresse wird die voreingestellte Adresse beim Empfang des nächsten EIN-Tokens gelöscht. Die Einrich­ tung sendet gleichzeitig ein DATA1-Paket an den Host. Das DATA1-Paket gibt an, daß der Endpunkt nun in einem Zustand ist, in dem er von dem Host adressiert werden kann. Wenn die Einrichtung vorübergehende Verzögerungen erfährt, kann sie statt dessen ein NAK- Quittungspaket senden. Wenn die Einrichtung eine Fehlerbedingung erfährt, kann sie alterna­ tiv STALL senden, um anzuzeigen, daß der Host nicht versuchen sollte, Daten wiederholt zu senden.
Bei vielen USB-Netzen ist die Übertragung von Daten nicht vollständig fehlerfrei. Gelegent­ lich werden Datenübertragungen behindert, und jede der oben beschriebenen Übertragungen kann gestört sein.
Das Null-Längen-DATA1-Paket, das von der Einrichtung während der Statusstufe gesendet wird, kann z. B. beschädigt sein oder auf seinem Weg durch das USB-Netz zu dem Host ein­ fach verlorengehen. Während des Zeitfensters nach einem solchen Verlust sendet der Host nicht die richtige ACK-Quittung, weil er das DATA1-Paket nicht richtig empfangen hat.
Statt dessen kann der Host versuchen, die SETUP-Steuerübertragung neu zu starten, indem er einen SETUP-Token oder einen EIN-Token an die voreingestellte Adresse der Einrichtung sendet. Da die Einrichtung ihr Voreinstellungsadreßbit gelöscht hat, reagiert sie auf diesen Token nicht mehr.
Zusätzlich kann der Host bereits einen anderen Verteilerknoten-Port enabelt haben, der mit einer noch nicht konfigurierten Einrichtung verbunden ist. Obwohl der SETUP-Token nicht an die unkonfigurierte Einrichtung gerichtet ist, wird sie reagieren. Diese Reaktion kann wei­ tere Fehler bewirken, insbesondere in dem Host, der die Bustopographie überwacht.
Es werden daher Verfahren und Vorrichtungen zum Vermeiden der möglichen Fehler benö­ tigt, die sich aus der Störung oder dem Verlust bei Datenübertragungen während der SETUP- Steuerübertragung ergeben.
Es ist eine Aufgabe der Erfindung, eine robuste Zuweisung einer Funktionsadresse mit Hilfe einer SETUP-Steuerübertragung vorzusehen.
Es ist eine weitere Aufgabe der Erfindung, eine Funktionsadressenzuweisung abzuschließen, selbst wenn einige der Daten, die während einer Setup-Steuerübertragung übertragen werden, verlorengehen oder beschädigt wurden.
Es ist ein Vorteil der Erfindung, daß sie das undefinierte Zeitfenster vermeidet, das dem Ver­ lust oder der Beschädigung eines DATA1-Pakets der Statusstufe folgt.
Es ist ein Merkmal eines Aspekts der Erfindung, daß sie eine eindeutige Funktionsadresse bei Empfang einer gültigen ACK-Quittung nach der Statusphase oder bei Auftreten eines SETUP-Tokens für eine andere Einrichtung zuläßt (enabelt).
Es ist ein Merkmal der Erfindung, eine Adressenzuweisung in zusammengesetzten Einrich­ tungen mit mehreren Funktionsadressen zuzulassen.
Gemäß eines Aspekts der Erfindung weist eine USB-Einrichtung eine Voreinstellungsadresse und ein Voreinstellungsadreß-Enablebit auf, wobei das Voreinstellungsadreß-Enablebit die Verwendung der Voreinstellungsadresse ermöglicht (enabelt). Die Einrichtung empfangt ei­ nen EIN-Token von einem Host; sendet ein DATA1-Paket an den Host; empfangt ACK von dem Host; und löscht das Voreinstellungsadreßbit erst nach dem Empfang von ACK.
Gemäß eines weiteren Aspekts der Erfindung weist eine USB-Einrichtung eine Voreinstel­ lungsadresse und ein Voreinstellungsadreß-Enablebit auf, wobei das Voreinstellungsadreß- Enablebit die Verwendung der Voreinstellungsadresse ermöglicht. Die Einrichtung empfangt einen EIN-Token von einem Host; sendet ein Null-Längen-DATA1-Paket an den Host; emp­ fängt ein SETUP-Paket von dem Host; und löscht das Voreinstellungsadreß-Enablebit bei Empfang des SETUP-Pakets.
Gemäß eines weiteren Aspekts der Erfindung umfaßt ein USB-Netz einen Host und mehrere Einrichtungen, wobei die Einrichtungen jeweils eine Voreinstellungsadresse und ein Vorein­ stellungsadreß-Enablebit aufweisen, und wobei das Voreinstellungsadreß-Enablebit die Ver­ wendung der Voreinstellungsadresse ermöglicht. Ein Verfahren zum Betreiben des USB- Netzes sendet einen EIN-Token von dem Host an eine erste Einrichtung; empfangt den EIN- Token bei der ersten Einrichtung; sendet ein DATA1-Paket von der ersten Einrichtung an den Host; empfängt das DATA1-Paket bei dem Host; sendet ACK von dem Host an die erste Ein­ richtung; sendet einen SETUP-Token von dem Host an eine zweite Einrichtung; und löscht das Voreinstellungsadreßbit der ersten Einrichtung bei Empfang von entweder ACK oder des SETUP-Tokens.
Gemäß eines weiteren Aspekts der Erfindung verwendet eine USB-Einrichtung ein Vorein­ stellungsadreß-Enablebit, wobei dann, wenn das Voreinstellungsadreß-Enablebit gesetzt ist, die USB-Einrichtung auf eine Voreinstellungsadresse antwortet, und wenn das Voreinstel­ lungsadreßbit gelöscht ist, antwortet die USB-Einrichtung nicht auf die Voreinstellungsadres­ se, wobei das Voreinstellungsadreß-Enablebit bei Empfang einer ACK-Quittung während einer Statusstufe einer Steuerübertragung gelöscht wird.
Die Erfindung mit ihren Aufgaben, Merkmalen und Vorteilen ist im folgenden mit weiteren Einzelheiten anhand bevorzugter Ausführungsformen mit Bezug auf die Zeichnung näher erläutert. In den Figur zeigt:
Fig. 1 ein Blockdiagramm eines universellen seriellen Bus-Netzes;
Fig. 2 zeigt ein Blockdiagramm einer bevorzugten Ausführungsform eines Schnittstellenmoduls für eine universelle serielle Buseinrichtung gemäß der Erfindung;
Fig. 3 ist ein Flußdiagramm des Datenablaufs in einem USB-Netz während einer SETUP- Transaktion;
Fig. 4A ist ein Flußdiagramm des Datenablaufs in einem USB-Netz während einer Steuer­ schreibübertragung;
Fig. 4B ist ein Flußdiagramm des Datenablaufs in einem USB-Netz während einer Steuer- Leseübertragung;
Fig. 4C ist ein Flußdiagramm des Datenablaufs in einem USB-Netz während einer keine-Daten-Steuerübertragung;
Fig. 5 ist ein Flußdiagramm des Datenablaufs in einem USB-Netz während einer EIN- Transaktion;
Fig. 6 ist ein Flußdiagramm des Datenablaufs in einem USB-Netz während einer AUS- Transaktion;
Fig. 7 zeigt ein Funktionsadreßregister für eine USB-Einrichtung gemäß einer bevorzugten Ausführungsform der Erfindung;
Fig. 8 zeigt eine Gerätesteuereinrichtung für eine USB-Einrichtung gemaß einer bevorzugten Ausführungsform der Erfindung;
Fig. 9 ist ein Flußdiagramm der Zuweisung der Funktionsadressen gemäß einer bevorzugten Ausführungsform der Erfindung; und
Fig. 10 ist ein Flußdiagramm einer Steuertransaktion, welche eine eindeutige Funktionsadresse gemäß einer Ausführungsform der Erfindung zuweist und enabelt.
Die in dieser Anmeldung beschriebene Erfindung ist ein Aspekt einer größeren Gruppe von Erfindungen, die in den folgenden, ebenfalls anhängigen Anmeldungen derselben Anmelderin beschrieben sind, und auf die hier Bezug genommen wird: US-Patentanmeldung Nr. 09/003,963, angemeldet am 7. Januar 1998, mit dem Titel "Apparatus and Method for Im­ plementing a Versatile USB Endpoint Pipe"; US-Patentanmeldung Nr. 09/004,003, angemel­ det am 7. Januar 1998, mit dem Titel "Apparatus and Method of Implementing a USB End­ point Pipe with Double Buffering Support"; US-Patentanmeldung Nr. 09/004,004, angemel­ det am 7. Januar 1998, mit dem Titel "An Apparatus and Method for Transmitting and Recei­ ving Data Into and Out of a Universal Serial Bus Device"; US-Patentanmeldung Nr. 09/003,897, angemeldet am 7. Januar 1998, mit dem Titel "Apparatus and Method of Trans­ mitting and Receiving USB Isochronous Data"; US-Patentanmeldung Nr. 09/004,002, ange­ meldet am 7. Januar 1989, mit dem Titel "An Apparatus and Method for Handling Universal Serial Bus Control Transfers"; US-Patentanmeldung Nr. 09/004,005, angemeldet am 7. Januar 1998, mit dem Titel "Apparatus and Method for Providing an Interface to a Compound Uni­ versal Serial Bus Controller".
Zusätzlich wird auf das Dokument von National Semiconductor "USB Node Interface Archi­ tecture Specification", Version 0.6, Bezug genommen, das als Anhang A dieser Anmeldung beigefügt ist.
Mit Bezug auf Fig. 2 wird nun eine USB-Einrichtung 210 gemäß den Grundsätzen der Erfin­ dung beschrieben. Die bevorzugte Ausführungsform der Einrichtung entspricht der Version 1.0 der USB-Spezifikation, während sie eine Reihe von Vorteilen gegenüber den herkömmli­ chen USB-Einrichtungen aufweist. Die USB-Einrichtung 210 umfaßt ein USB- Schnittstellenmodul 220, einen Registersatz 214, ein RAM 212 und ein BIU (Busschnittstel­ leneinheit) 216.
Das Schnittstellenmodul 200 dient als Verbindung zu einem USB-Netz, um Daten zu senden und zu empfangen. Das Schnittstellenmodul 200 ist auch mit dem Registersatz 214, dem RAM 212 und dem BIU 216 über einen Kernbus 218 verbunden. Der Kernbus 218 ermöglicht es dem Schnittstellenmodul 200, auf den Registersatz 214 und das RAM 212 zuzugreifen.
Der Registersatz 214 umfaßt ein Funktionsadressenregister und ein Gerätesteuerregister. In Fig. 7 ist eine bevorzugte Ausführungsform eines Funktionsadressenregisters 710 gezeigt. Das Funktionsadressenregister 710 ist 32 Bit lang und bietet Platz für vier Funktionsadressen.
Die Bits 0 bis 6 des Funktionsadressenregisters 710 bieten Platz für eine erste Funktions­ adresse, die mit FA0 bezeichnet ist. Das Bit 7 bietet Platz für ein erstes Adreßenablebit, das mit AE0 bezeichnet ist. Die Bits 8 bis 14 des Funktionsadressenregisters 710 bieten Platz für eine zweite Funktionsadresse, die mit FA1 bezeichnet ist. Das Bit 15 bietet Platz für ein zweites Adreßenabelbit, das mit AE1 bezeichnet ist. Die Bits 16 bis 22 des Funktionsadres­ senregisters 710 bieten Platz für eine dritte Funktionsadresse, die mit FA2 bezeichnet ist. Das Bit 23 bietet Platz für ein drittes Adreßenabelbit, das mit AE2 bezeichnet ist. Die Bits 24 bis 30 des Funktionsadressenregisters 710 bieten Platz für eine vierte Funktionsadresse, die mit FA3 bezeichnet ist. Das Bit 31 bietet Platz für ein viertes Adreßenabelbit, das mit AE3 be­ zeichnet ist.
Die vier Funktionsadressen FA0, FA1, FA2 und FA3 zusammen mit den vier Adreßenabelbits AE0, AE1, AE2 und AE3 sind vorgesehen, um den Betrieb einer zusammengesetzten Ein­ richtung mit bis zu vier Adressen zu unterstützen. Nachdem eine Funktionsadresse zugewie­ sen ist, kann das zugehörige Adreßenabelbit gesetzt werden, uni die Verwendung der Funkti­ onsadresse zu ermöglichen (enabeln).
In Fig. 8 ist eine bevorzugte Ausführungsform eines Gerätesteuerregisters 810 gezeigt. Das Gerätesteuerregister 810 ist 16 Bit lang.
Das Bit 4 bietet Platz für ein erstes Voreinstellungsadressen-Enabelbit DEF0, das zu der er­ sten Funktionsadresse FA0 gehört. Das Bit 5 bietet Platz für ein zweites Voreinstellungs- Enablebit DEF1, das zu der zweiten Funktionsadresse FA1 gehört. Das Bit 6 bietet Platz für ein drittes Voreinstellungsadressen-Enablebit DEF2, das zu der dritten Funktionsadresse FA2 gehört. Das Bit 7 bietet Platz für ein viertes Voreinstellungsadressen-Enablebit DEF3, das zu der vierten Funktionsadresse FA3 gehört.
Die Voreinstellungs-Adressen-Enablebits werden dazu verwendet, anzuzeigen, ob die Ein­ richtung (das Gerät) auf die voreingestellte Adresse antwortet. Wenn diese Bits gesetzt sind, wird die Einrichtung auf die voreingestellte Adresse antworten, wenn sie gelöscht sind, wird sie dies nicht tun.
Nachdem eine Funktionsadresse zugewiesen ist, wird das zugehörige Funktionsadressenbit gesetzt, um anzuzeigen, daß die Adresse gültig ist. Danach wird die zugehörige Voreinstel­ lungsadresse gelöscht, und die Einrichtung reagiert nicht mehr auf die voreingestellte Adresse sondern auf die Funktionsadresse.
Mit Bezug auf Fig. 9 wird nun die Zuweisung von Funktionsadressen mit weiteren Einzel­ heiten beschrieben. Die Zuweisung beginnt beim Block 910, wo eine USB-Einrichtung, die vier mögliche Funktionsadressen hat, mit einer USB-Einrichtung verbunden wird. Im Block 912 prüft die USB-Einrichtung den Empfang eines SETUP-Tokens, der eine Steuerübertra­ gung zum Zuweisen einer Funktionsadresse anzeigt. Beim Empfang eines solchen Tokens, beim Block 916, führt die USB-Einrichtung die Steuerübertragung aus, weist FA0 zu und setzt AE0. DEF0 wird von der Einrichtung gelöscht, wenn das nächste Mal in Antwort auf einen EIN-Token ACK empfangen wird. Wenn ACK nicht innerhalb einer Zeitablaufperiode empfangen wird und wenn der nächste Token ein SETUP ist, bewirkt auch dies, daß das DEF0-Bit zurückgesetzt wird.
In Block 916 prüft die USB-Einrichtung wiederum den Empfang eines SETUP-Tokens, der eine Steuerübertragung zum Zuweisen einer Funktionsadresse anzeigt. Bei Empfang eines solchen Tokens in Block 918 führt die USB-Einrichtung die Steuerübertragung durch, weist FA1 zu und setzt AE1. DEF1 wird wie oben beschrieben gelöscht. In Block 920 prüft die USB-Einrichtung wiederum den Empfang eines SETUP-Tokens, der eine Steuerübertragung für die Zuordnung einer Funktionsadresse anzeigt. Bei Empfang eines solchen Tokens, beim Block 922, führt die USB-Einrichtung die Steuerübertragung durch, weist FA2 zu und setzt AE2. DEF2 wird wie oben beschrieben gelöscht. Beim Block 924 prüft die USB-Einrichtung wiederum den Empfang eines SETUP-Tokens, der eine Steuerübertragung für die Zuordnung einer Funktionsadresse anzeigt. Beim Empfang eines solchen Tokens, beim Block 926, führt die USB-Einrichtung die Steuerübertragung durch, weist FA3 zu und setzt AE3. DEF3 wird wie oben beschrieben gelöscht. Damit ist die Zuordnung der vier Funktionsadressen abge­ schlossen.
Abhängig davon, wie schnell die Funktionsadressen zugeordnet wurden, kann die Einrichtung 210 auf ein oder mehrere Funktionsadressen und eine voreingestellte Adresse reagieren.
Bevorzugte Ausführungsformen der Einrichtung aktivieren die Funktionsadressen abhängig von den speziellen Bedürfnissen der Ausführungsform. Es können also von einer bis zu vier Funktionsadressen zugewiesen werden.
Die Aktivierung (Enable) einer Funktionsadresse gemäß einer bevorzugten Ausführungsform der Erfindung ist in Fig. 10 gezeigt. Bei einem Startblock 1010 wird eine USB-Einrichtung mit einem USB-Netz verbunden und prüft einen SETUP-Token, der eine Steuerübertragung zum Zuweisen einer Funktionsadresse angibt. Bei Empfang eines solchen Tokens geht die Einrichtung zu Block 1012, wo sie die SETUP-Transaktion abschließt. Bei Beendigung der SETUP-Transaktion geht die Einrichtung zum Block 1014, um einen AUS-Token zu empfan­ gen. Die Einrichtung fährt dann fort, indem sie eine oder mehrere AUS-Transaktionen vollen­ det. Diese Transaktionen enthalten eine eindeutige Funktionsadresse, die in dem passenden Funktionsadressenregister gespeichert wird. Bei Beendigung der Datenstufe in Block 1014 prüft die Einrichtung einen EIN-Token. Bei Empfang des EIN-Tokens geht die Einrichtung zum Block 1018 weiter, wo sie ein Null-Längen-DATA1-Paket sendet. Nach dem Senden des DATA1-Pakets geht die Einrichtung zum Block 1020 weiter, wo sie auf den Empfang entwe­ der einer ACK-Quittung oder auch eines anderen SETUP-Tokens wartet. Bei Empfang eines der beiden geht die Einrichtung zum Block 1022 weiter, wo sie das zugehörige DEF-Bit löscht. Dies ermöglicht (enable) die Verwendung der eindeutigen Funktionsadresse und sperrt (disable) die Verwendung der zugehörigen voreingestellten Adresse.
Wenn die Einrichtung in Block 1020 weder eine ACK-Quittung noch einen SETUP-Token empfängt, kehrt sie zum Block 1016 zurück, wo sie auf den Empfang eines neuen EIN- Tokens wartet, um die Statusstufe neu zu starten. Wenn die EIN-Transaktion erneut versucht wird (d. h. wenn kein ACK empfangen wurde), wird das DEF-Bit nicht gelöscht. Wenn also die Transaktion erneut mit der voreingestellten Adresse versucht wird, wird sie noch immer von dieser Einrichtung empfangen.
Durch Löschen des DEF-Bits erst nach dem Empfang einer ACK-Quittung eines EIN-Pakets oder eines SETUP-Tokens vermeidet die Einrichtung Probleme im Zusammenhang mit dem Verlust oder der Beschädigung eines DATA1-Pakets oder dem Verlust oder der Beschädi­ gung einer ACK-Quittung.
Insbesondere wenn das DATA1-Paket verlorengeht oder beschädigt ist, sendet der Host kein ACK. Der Host wird daher weiter versuchen, den Initialisierungsprozeß zu beenden, indem er die Einrichtung bei der voreingestellten Adresse adressiert. Da die Einrichtung das Vorein­ stellungsbit nicht gelöscht hat, wird sie weiter auf die voreingestellte Adresse reagieren. Da­ durch kann der Host erneut versuchen, eine Startstufe zu starten, indem er wiederholt einen EIN-Token an die voreingestellte Adresse sendet.
Wenn ACK von dem Host verlorengeht oder beschädigt wird, reagiert die Einrichtung noch nicht auf ihre eindeutige Funktionsadresse. Da der Host jedoch keine Angaben darüber hat, daß ACK von der Einrichtung nicht empfangen wurde, muß er annehmen, daß die Transakti­ on ordnungsgemäß beendet wurde, und daß die Einrichtung nun auf ihre Funktionsadresse antwortet. Der Host wird daher mit der Einrichtung des USB-Netzes fortfahren. Beim Senden eines neuen SETUP-Tokens an eine zweite Einrichtung in dem Netz wird die erste Einrich­ tung das Voreinstellungsadreßbit löschen und das Funktionsadreßbit setzen. Die erste Ein­ richtung wird nun nur noch auf die Funktionsadresse antworten.
Obwohl die hier beschriebenen Ausführungsformen sich auf bestimmte Gerätestrukturen be­ ziehen, kann die vorliegende Erfindung bei einer Vielzahl von anderen Einrichtungen und Geräten angewendet werden, ohne den Bereich der Erfindung zu verlassen. Die Erfindung wurde in Bezug auf eine Ausführungsform beschrieben, die einen Registerraum für ein Vor­ einstellungsadreßbit, ein Funktionsadreß-Enablebit und ein Funktionsadressenregister hat, alternative, äquivalente Ausführungsformen können jedoch andere Register- und Speicher­ konfigurationen verwenden, um die Voreinstellungsadresse und die eindeutige Funktions­ adresse zu enabeln oder zu disabeln. Der Fachmann wird aus den hier offenbarten Ausfüh­ rungsformen sicher verstehen, daß viele Modifikationen möglich sind, ohne die Lehre der Erfindung zu verlassen. All diese Modifikationen sollen vom Bereich der folgenden Ansprü­ che umfaßt sein.
Die in der vorstehenden Beschreibung, den Ansprüchen und der Zeichnung offenbarten Merkmale können sowohl einzeln als auch in beliebiger Kombination für die Verwirklichung der Erfindung in ihren verschiedenen Ausführungsformen von Bedeutung sein.
Die Architektur der USB-Knotenschnittstelle ist in dem folgenden Anhang, der Teil der Beschreibung ist, näher spezifiziert.

Claims (6)

1. Verfahren zum Betreiben einer USB-Einrichtung, wobei die USB-Einrichtung eine Vor­ einstellungsadresse und ein Voreinstellungsadressen-Enablebit aufweist, wobei das Vor­ einstellungsadressen-Enablebit die Verwendung der Voreinstellungsadresse ermöglicht, mit folgenden Verfahrensschritten:
Empfang eines EIN-Tokens von einem Host;
Senden eines DATAl-Pakets an den Host;
Empfangen einer ACK-Quittung von dem Host; und
Löschen des Voreinstellungsadreßbits erst nach dem Empfang der ACK-Quittung.
2. Verfahren zum Betreiben einer USB-Einrichtung, wobei die USB-Einrichtung eine Vor­ einstellungsadresse und ein Voreinstellungsadressen-Enablebit aufweist, wobei das Vor­ einstellungsadressen-Enablebit die Verwendung der Voreinstellungsadresse ermöglicht, mit folgenden Verfahrensschritten:
Empfangen eines EIN-Tokens von einem Host;
Senden eines Null-Längen-DATA1-Pakets an den Host:
Empfangen eines SETUP-Pakets von dem Host; und
Löschen des Voreinstellungsadressen-Enablebits bei Empfang des SETUP-Pakets.
3. Verfahren nach Anspruch 2, bei dem ferner während einer Zeitablaufperiode auf den Empfang einer ACK-Quittung gewartet wird.
4. Verfahren zum Betreiben eines USB-Netzes, wobei das USB-Netz einen Host und mehre­ re Einrichtungen aufweist, und wobei die Einrichtungen eine Voreinstellungsadresse und Voreinstellungsadressen-Enablebit aufweisen, wobei das Voreinstellungsadressen- Enablebit die Verwendung der Voreinstellungsadresse ermöglicht, mit folgenden Verfah­ rensschritten:
Senden eines EIN-Tokens von dem Host an eine erste Einrichtung;
Empfangen des EIN-Tokens bei der ersten Einrichtung;
Senden eines DATA1-Pakets von der ersten Einrichtung an den Host;
Empfangen des DATA1-Pakets bei dem Host;
Senden einer ACK-Quittung von dem Host an die erste Einrichtung;
Senden eines SETUP-Tokens von dem Host an eine zweite Einrichtung; und
Löschen des Voreinstellungsadressen-Enablebits der ersten Einrichtung bei Empfang ent­ weder der ACK-Quittung oder des SETUP-Tokens.
5. USB-Einrichtung mit einem Voreinstellungsadressen-Enablebit, bei der dann, wenn das Voreinstellungsadressen-Enablebit gesetzt ist, die USB-Einrichtung auf eine Voreinstel­ lungsadresse antwortet, und wenn das Voreinstellungsadressen-Enablebit gelöscht ist, die USB-Einrichtung auf die Voreinstellungsadresse nicht antwortet, und bei der das Vorein­ stellungsadressen-Enablebit bei Empfang einer ACK-Quittung während einer Statusstufe einer Steuerübertragung gelöscht wird.
6. USB-Einrichtung nach Anspruch 5 , bei der das Voreinstellungsadressen-Enablebit auch gelöscht wird, nachdem während der Statusstufe der Steuerübertragung ein DATA1-Paket gesendet wird und/oder ein SETUP-Token für eine Steuerübertragung von einer anderen Einrichtung empfangen wird.
DE19900290A 1998-01-07 1999-01-07 Verfahren zum Betreiben einer universellen seriellen Buseinrichtung und universelle serielle Buseinrichtung Expired - Fee Related DE19900290B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US392598 1998-01-07
US09/003,925 US6353866B1 (en) 1998-01-07 1998-01-07 Apparatus and method for initializing a universal serial bus device
US09/003925 1998-01-07

Publications (3)

Publication Number Publication Date
DE19900290A9 DE19900290A9 (de)
DE19900290A1 true DE19900290A1 (de) 1999-07-08
DE19900290B4 DE19900290B4 (de) 2005-02-24

Family

ID=21708254

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19900290A Expired - Fee Related DE19900290B4 (de) 1998-01-07 1999-01-07 Verfahren zum Betreiben einer universellen seriellen Buseinrichtung und universelle serielle Buseinrichtung

Country Status (3)

Country Link
US (2) US6353866B1 (de)
KR (1) KR100290945B1 (de)
DE (1) DE19900290B4 (de)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6886055B2 (en) * 1997-12-15 2005-04-26 Clearcube Technology, Inc. Computer on a card with a remote human interface
US6353866B1 (en) * 1998-01-07 2002-03-05 National Semiconductor Corporation Apparatus and method for initializing a universal serial bus device
US7203787B2 (en) * 1999-01-25 2007-04-10 Canon Kabushiki Kaisha Information processing apparatus and method that utilizes stored information about a mountable device
GB2350212B (en) * 1999-02-09 2003-10-08 Adder Tech Ltd Data routing device and system
US6609167B1 (en) * 1999-03-17 2003-08-19 Adaptec, Inc. Host and device serial communication protocols and communication packet formats
US6600739B1 (en) * 1999-06-07 2003-07-29 Hughes Electronics Corporation Method and apparatus for switching among a plurality of universal serial bus host devices
US6708247B1 (en) * 1999-07-21 2004-03-16 Clearcube Technology, Inc. Extending universal serial bus to allow communication with USB devices at a remote location
US6813251B1 (en) 1999-07-27 2004-11-02 Intel Corporation Split Transaction protocol for a bus system
US7836236B2 (en) 2004-02-12 2010-11-16 Super Talent Electronics, Inc. Extended secure-digital (SD) devices and hosts
US7512082B1 (en) * 1999-12-14 2009-03-31 Intel Corporation Tracking transaction status for a bus system providing legacy bus compatibility
US7165109B2 (en) * 2001-01-12 2007-01-16 Microsoft Corporation Method and system to access software pertinent to an electronic peripheral device based on an address stored in a peripheral device
JP3497834B2 (ja) * 2001-03-30 2004-02-16 株式会社東芝 ルートリピータ、usb通信システム、usb通信制御方法
KR100395664B1 (ko) * 2001-08-20 2003-08-25 엠텍비젼 주식회사 범용 직렬 버스 장치 및 그의 초기화 방법
US7028124B2 (en) * 2001-09-26 2006-04-11 Intel Corporation Method and apparatus for dual queue head processing of interrupt endpoints
US7162306B2 (en) * 2001-11-19 2007-01-09 Medtronic Physio - Control Corp. Internal medical device communication bus
US7139839B2 (en) * 2001-11-26 2006-11-21 Schneider Automation Inc. Method and apparatus for assigning a network node address
US6792478B2 (en) * 2002-03-29 2004-09-14 Intel Corporation System and method to configure input/output (IO) devices to use selected pairs of port addresses
US7080189B1 (en) * 2002-05-31 2006-07-18 Cypress Semiconductor Corp. USB device communication
US20040043674A1 (en) * 2002-08-28 2004-03-04 Dunne Denise E. DSX jack including contact
US6976105B1 (en) * 2002-12-11 2005-12-13 Cypress Semiconductor Corp. Apparatus and method for attaching multiple devices to a host
US20040122651A1 (en) * 2002-12-23 2004-06-24 Samsung Electronics Co., Ltd Apparatus and method for ethernet emulation in a 3RD generation wireless mobile station
JP4420647B2 (ja) * 2003-04-15 2010-02-24 シャープ株式会社 制御システム
TWI296083B (en) * 2003-09-29 2008-04-21 Sharp Kk Communication controller, host-side controller, communication system, usb system, communication equipment, communication method, packet-based communication method, packet-based communication program, and storage medium
US7069369B2 (en) * 2004-02-12 2006-06-27 Super Talent Electronics, Inc. Extended-Secure-Digital interface using a second protocol for faster transfers
US8060670B2 (en) * 2004-03-17 2011-11-15 Super Talent Electronics, Inc. Method and systems for storing and accessing data in USB attached-SCSI (UAS) and bulk-only-transfer (BOT) based flash-memory device
US7188206B2 (en) * 2004-10-22 2007-03-06 Conwise Technology Corporation Ltd. USB compound device without embedded hub and implement method in USB system
US20080126628A1 (en) * 2006-11-29 2008-05-29 Sony Ericsson Mobile Communications Ab Methods, devices and computer program products for automatically providing an alternate usb configuration of a usb compliant peripheral device for exposure to a host computer
US8171502B2 (en) * 2006-11-29 2012-05-01 Sony Ericsson Mobile Communications Ab Methods, devices and computer program products for automatically installing device drivers from a peripheral device onto a host computer
US8315269B1 (en) 2007-04-18 2012-11-20 Cypress Semiconductor Corporation Device, method, and protocol for data transfer between host device and device having storage interface
US20080276009A1 (en) * 2007-05-04 2008-11-06 Joe Mesa Enabling Efficient Communication Between a Host and Multiple USB Devices
TWI448902B (zh) * 2007-08-24 2014-08-11 Cypress Semiconductor Corp 具頁存取基礎處理器介面之橋接裝置
US8090894B1 (en) 2007-09-21 2012-01-03 Cypress Semiconductor Corporation Architectures for supporting communication and access between multiple host devices and one or more common functions
US7895387B1 (en) 2007-09-27 2011-02-22 Cypress Semiconductor Corporation Devices and methods for sharing common target device with two different hosts according to common communication protocol
US7908421B2 (en) * 2008-09-30 2011-03-15 Intel Corporation Universal serial bus endpoint context caching
US8370550B2 (en) * 2010-02-12 2013-02-05 Microsoft Corporation Rule-based assignment of control of peripherals of a computing device
US9104252B2 (en) 2010-02-12 2015-08-11 Microsoft Technology Licensing, Llc Assignment of control of peripherals of a computing device
US8805855B2 (en) * 2012-08-17 2014-08-12 International Business Machines Corporation Efficiently storing and retrieving data and metadata
US11023402B2 (en) * 2019-07-02 2021-06-01 National Instruments Corporation Switch pruning in a switch fabric bus chassis
US11316741B1 (en) * 2020-11-23 2022-04-26 Netskope, Inc. Multi-environment networking management system

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5675571A (en) * 1993-06-25 1997-10-07 D2B Systems Company Limited D2B divice address initialization by use of default address
WO1996041274A1 (en) 1995-06-07 1996-12-19 Advanced Micro Devices, Inc. Dynamically reconfigurable data bus
US5675813A (en) * 1995-10-26 1997-10-07 Microsoft Corporation System and method for power control in a universal serial bus
US5751951A (en) 1995-10-30 1998-05-12 Mitsubishi Electric Information Technology Center America, Inc. Network interface
US5848293A (en) 1995-11-03 1998-12-08 Sun Microsystems, Inc. Method and apparatus for transmission and processing of virtual commands
US5729721A (en) 1995-11-13 1998-03-17 Motorola, Inc. Timebase synchronization in separate integrated circuits or separate modules
US5774680A (en) 1995-12-11 1998-06-30 Compaq Computer Corporation Interfacing direct memory access devices to a non-ISA bus
US5835791A (en) 1996-03-26 1998-11-10 Vlsi Technology, Inc. Versatile connection of a first keyboard/mouse interface and a second keyboard/mouse interface to a host computer
US5841471A (en) 1996-09-12 1998-11-24 Eastman Kodak Company Timing control for a digitally interfaced camera using variable line readout intervals
US5818948A (en) 1996-10-23 1998-10-06 Advanced Micro Devices, Inc. Architecture for a universal serial bus-based PC speaker controller
US5778218A (en) 1996-12-19 1998-07-07 Advanced Micro Devices, Inc. Method and apparatus for clock synchronization across an isochronous bus by adjustment of frame clock rates
US6009480A (en) * 1997-09-12 1999-12-28 Telxon Corporation Integrated device driver wherein the peripheral downloads the device driver via an I/O device after it is determined that the I/O device has the resources to support the peripheral device
US6353866B1 (en) * 1998-01-07 2002-03-05 National Semiconductor Corporation Apparatus and method for initializing a universal serial bus device

Also Published As

Publication number Publication date
KR19990067734A (ko) 1999-08-25
KR100290945B1 (ko) 2001-05-15
US20020023189A1 (en) 2002-02-21
DE19900290B4 (de) 2005-02-24
US6353866B1 (en) 2002-03-05
US6415343B1 (en) 2002-07-02

Similar Documents

Publication Publication Date Title
DE19900290A1 (de) Verfahren zum Betreiben einer universellen seriellen Buseinrichtung und universelle serielle Buseinrichtung
DE60020046T3 (de) Architektur einer USB-basierten PC-Flashspeicherkarte
DE69936960T2 (de) Seitendrucker und Seitendrucksystem
DE60035882T2 (de) Protokoll einer zerteilten transaktion für ein bussystem
DE69821050T2 (de) Datenstromdifferenzierungssystem für Endgerätemulator
DE69836426T2 (de) Steuergerät für einen universellen seriellen Bus
EP1456722B1 (de) Datenübertragungsverfahren, serielles bussystem und anschalteinheit für einen passiven busteilnehmer
DE69929142T2 (de) Verfahren zur Bilddatenübertragung unter Verwendung von einem IEEE 1394 Bus
DE3204905C2 (de)
DE19900245A1 (de) Vorrichtung und Verfahren zum Senden und Empfangen von USB-Isochrondaten
DE60132872T2 (de) Anordnung und Verfahren für eine Schnittstelleneinheit um Daten zwischen einem Hauptprozessor und einem digitalen Signalprozessor im asynchronen Übertragungsmodus zu übertragen
DE19900290A9 (de) Verfahren zum Betreiben einer universellen seriellen Buseinrichtung und universelle serielle Buseinrichtung
DE2726811A1 (de) Daten-management-systeme fuer rechenanlagen
DE602004008545T2 (de) Methode und Datenstruktur zum wahlfreien Zugriff über eine Busverbindung
DE19900369A9 (de) Vorrichtung und Verfahren zur Ausführung einer Steuerübertragung auf einem Universal Serial Bus
DE2209136B2 (de) Steuer- und Anpassungsschaltung für Datenverarbeitungsanlagen
DE60027357T2 (de) Eine Unterbrechungssteuerung und ein Mikrorechner, der diese Unterbrechungssteuerung beinhaltet
DE19900251B4 (de) Vorrichtung und Verfahren zum Steuern eines vielseitigen USB-Endpunktkanals
DE60027941T2 (de) Paketübertragungsvorrichtung mit Verwaltungsmittel zur Packungsetikettenverwaltung
DE10249430A1 (de) Fern-Firmware-Aktualisierung über I/O-Verbindung
DE3142504A1 (de) Mehrfachplattenspeicher-uebertragungssystem
DE69932891T2 (de) Informationsverarbeitungsgerät und -verfahren, und Darstellungsmedium
DE60023429T2 (de) Geräteregistrierung in einem Netzwerk
DE19580195C2 (de) Verfahren und Einrichtung zur Signalübertragung über eine gemeinsame Leitung
DE19818828B4 (de) X.25 Netzverbindungsvorrichtung für eine in einem voll elektronischen Vermittlungssystem verwendete X.25 Protokoll Kommunikation

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8180 Miscellaneous part 1

Free format text: ES ERFOLGT ERGAENZUNGSDRUCK DES FEHLENDEN ANHANGS

8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee