-
Die
Erfindung betrifft ein Kommunikationssystem, umfassend einen Host
und ein Gerät
und ein Verfahren zum Betreiben eines derartigen Kommunikationssystems.
-
Ein
Universal Serial Bus (USB) Kommunikationssystem umfasst einen Host
und ein Gerät,
welche über
vier parallele Leiter, die die Versorgungsspannung VCC, die Masse
GND und die Datenleitungssignale D+ und D– führen, verbunden sind. Es gibt
keine eigene Leitung für
ein Taktsignal. Statt dessen wird ein „non-return to zero invert" (NRZI) benutzt,
um den Datenleitungen D+ und D– ein
Taktsignal aufzukodieren. Um das Taktsignal zu dekodieren, benötigt das
USB-Gerät
einen genauen Quarzkristalloszillator. Allerdings müssen die
Oszillatoren kalibriert werden, wodurch sich die Testzeit für das USB-Gerät verlängert. Des
Weiteren stellt der Einsatz von derartigen Oszillatoren bei USB-Geräten, die
nur eine kleine verfügbare
Fläche
haben, wie z. B. einer Smartcard oder einer Integrated Circuit Card, eine
Herausforderung dar. In USB-Geräten, in
welchen ein Oszillator aufgrund von Platzbeschränkungen nicht implementiert
werden kann, werden Taktrückgewinnungsschaltungen
benutzt, um das Taktsignal aus den übertragenen Daten abzuleiten.
Allerdings werden zum Erzeugen der erforderlichen sehr genauen Taktsignale
aus dem USB-Datenstrom komplexe
Schaltungen mit analogen Teilen und digitalen Teilen, die digital
signal processing(DSP)-Fähigkeiten
aufweisen, benötigt.
Des Weiteren haben derartige Taktrückgewinnungsschaltungen eine
hohe Leistungsaufnahme, was insbesondere bei batteriebetriebenen
Anwendungen, wie z. B. einer USB-Subscriber Identity Module(SIM)-Karte
eine Herausforderung darstellt.
-
Es
ist daher Aufgabe der Erfindung, ein Taktsignal für das USB-Gerät zur Verfügung zu
stellen.
-
Diese
Aufgabe wird gelöst
durch ein Kommunikationssystem, welches einen Host mit einem Oszillator
und einem Gerät
mit einem USB-Funktionskern umfasst. Der Oszillator im Host ist
mit dem USB-Funktionskern im Gerät
gekoppelt. Das Gerät benutzt
den Oszillator im Host und braucht daher keinen eigenen Oszillator
oder eine Taktrückgewinnungsschaltung.
-
In
einer Weiterbildung umfasst der Host eine USB-Kommunikationseinheit, welche an den
Oszillator gekoppelt ist. Das Gerät umfasst einen USB-Transceiver.
Die Host USB-Kommunikationseinheit
ist über
eine Gruppe von Kontakten mit dem Geräte USB-Transceiver verbunden.
Der Host und das Gerät
benutzen das gleiche Taktsignal des Oszillators, sodass sie synchron
arbeiten. Auf diese Weise werden asynchrone Schnittstellen vermieden,
die entstehen, wenn ein gesonderter Oszillator oder eine Taktsignalrückgewinnungsschaltung
in dem Gerät
benutzt werden und die zu einer größeren elektromagnetischen Beeinflussung
(EMI) führen.
Eine komplexe Schaltung zum Überwinden
der Asynchronizität
ist nicht erforderlich.
-
In
einer Weiterbildung entspricht die Gruppe der Kontakte dem ISO-7816-3-Standard.
Dieser Standard wird häufig
in Integrated Circuit Cards (ICC) oder Smartcards benutzt.
-
In
einer Weiterbildung ist der Oszillator durch die Taktkontaktfläche (CLK)
der ISO-7816-3-Kontakte gekoppelt. Gemäß dem ISO-7816-3-Standard wird einer
der acht zur Verfügung
stehen den Kontakte zum Übertragen
eines Taktsignals benutzt, welcher in dem Ausführungsbeispiel eingesetzt wird,
um ein Taktsignal für
die USB-Kommunikation zwischen dem Host und dem Gerät zu übertragen.
-
In
einer Weiterbildung umfasst das Gerät eine Taktrückgewinnungseinheit,
welche mit dem USB-Transceiver verbunden ist. Die Taktrückgewinnungseinheit
ist in dem Gerät
vorgesehen, damit das Gerät
auch mit Hosts kommunizieren kann, welche kein gemeinsames Taktsignal
für die
USB-Datenkommunikation zur Verfügung
stellen.
-
In
einer Weiterbildung umfasst das Gerät eine Taktauswahleinheit,
welche mit dem Oszillator, der Taktrückgewinnungseinheit und dem
USB-Funktionskern verbunden ist. Die Taktauswahleinheit dient dazu,
entweder ein Taktsignal des Oszillators oder der Taktrückgewinnungseinheit
auszuwählen.
Das Taktsignal wird dann weiter an den USB-Funktionskern geleitet.
-
In
einer Weiterbildung umfasst der Host eine mit der Gruppe von Kontakten
verbundene ISO-7816-Kommunikationseinheit. Die ISO-7816-Kommunikationseinheit
ist vorgesehen, damit der Host mit Geräten kommunizieren kann, die nur
den ISO-7816-Standard,
nicht aber eine USB-Kommunikation unterstützen.
-
In
einer Weiterbildung stellt der Oszillator ein USB-Taktsignal und ein
ISO-7816-Taktsignal zur Verfügung.
Der Oszillator stellt Taktsignale für den Betrieb sowohl im USB-Modus als auch im
ISO-Modus zur Verfügung.
-
In
einer Weiterbildung weist der Host eine Steuereinheit zum Bedienen
der USB-Kommunikationseinheit, der ISO-7816- Kommunikationseinheit in dem Host und
des Oszillators auf. Die Steuereinheit wählt zwischen dem USB-Modus
und dem ISO-Modus
der Kommunikation und stellt den Oszillator ein, um das richtige
Taktsignal auszugeben.
-
In
einer Weiterbildung umfasst das Gerät eine mit der Gruppe von Kontakten
verbundene ISO-7816-Kommunikationseinheit. Die ISO-7816-Kommunikationseinheit
in dem Gerät
ist vorgesehen, um das Gerät
mit einem ISO-Kommunikationsmodus auszurüsten, falls der Host einen USB-Kommunikationsmodus
nicht unterstützt.
-
In
einer Weiterbildung ist der Host ein Mobiltelefon.
-
In
der Weiterbildung ist das Gerät
eine Subscriber Identity Module(SIM)-Karte, eine Universal Integrated
Circuit Card (UICC) oder ein Removable User Identity Module (RUIM).
-
In
einer Weiterbildung ist die Frequenz des durch den Oszillator bereitgestellten
USB-Taktsignals 12 MHz. Nachdem das Gerät mit der gleichen Frequenz
wie der Host versorgt wird, ist kein Oversampling notwendig, um
ein genaues Taktsignal in der Taktrückgewinnungseinheit zu erhalten.
Die für den
USB-Funktionskern übliche Frequenz
von 48 MHz kann zur Reduzierung der Leistungsaufnahme des Gerätes um den
Faktor 4 reduziert werden.
-
In
einer Weiterbildung ist der Oszillator drahtlos an den USB-Funktionskern
gekoppelt. Dies ist von Vorteil, falls zum Übertragen der für eine Standard-USB-Kommunikation
notwendigen Signale Wireless-USB benutzt wird.
-
Die
Erfindung sieht weiter ein Verfahren zum Betreiben eines Kommunikationssystems
nach einem der oben beschriebenen Ausführungsbeispiele vor und umfasst
die Schritte: Anlegen von Signalen, die für eine USB-Gerätedetektion
notwendig sind durch den Host, Warten des Hosts, dass sich das Gerät als USB-Gerät anhängt, und
Anlegen eines USB-Taktsignals durch den Oszillator, falls das Gerät als USB-Gerät angehängt ist.
Falls ein USB-Gerät detektiert
und an den Host angehängt
wurde, wird das Gerät
mit einem USB-Taktsignal versorgt, sodass das Gerät keinen
eigenen Oszillator oder eine Taktrückgewinnungseinheit benötigt.
-
In
einer Weiterbildung werden die für
eine USB-Gerätedetektion
notwendigen Signale an die Gruppe der den Host und das Gerät verbindenden Kontakte
angelegt und das USB-Taktsignal an die Taktkontaktfläche angelegt,
falls das Gerät
als ein USB-Gerät
angehängt
ist. Auf diese Weise wird eine synchrone Operation zwischen dem
Host und dem Gerät
erreicht.
-
In
einer Weiterbildung werden Signale, die für eine ISO-7618-Hochfahrsequenz notwendig
sind, an die Gruppe von Kontakten durch die Steuereinheit angelegt,
falls das Gerät
sich nicht als USB-Gerät
anhängt.
Das Kommunikationssystem benutzt für die Kommunikation den ISO-7618-Standard,
falls ein USB-Kommunikationsmodus
von dem Gerät
nicht unterstützt
wird.
-
In
einer Weiterbildung erzeugt die Taktrückgewinnungseinheit ein USB-Taktsignal
für den USB-Funktionskern,
falls das Gerät
kein USB-Taktsignal an der Taktkontaktfläche empfängt.
-
In
einer Weiterbildung schaltet der Host den Oszillator aus, falls
das Gerät
in einem Ruhezustand ist. Das Abschalten des Oszillators reduziert
die Leistungsaufnahme des Kommunikationssystems in einem Ruhe- oder
einem Stromsparmodus. Da die Kommunikation immer durch den Host
initiiert wird, kann der Host den Takt vor der Kommunikation anschalten.
Die Stromeinsparung ist insbesondere bei batteriebetriebenen Anwendungen
von Interesse.
-
Die
Erfindung wird nachfolgend detailliert mit Hilfe von Ausführungsbeispielen
und anhand der Figuren erklärt.
-
1 zeigt
ein Ausführungsbeispiel
eines Kommunikationssystems,
-
2 zeigt
ein modifiziertes Ausführungsbeispiel
und
-
3 zeigt
ein Ablaufdiagramm beim Betreiben eines Ausführungsbeispiels des Kommunikationssystems.
-
1 zeigt
ein Ausführungsbeispiel
eines Kommunikationssystems, welches einen Host 1 und ein
Gerät 2 umfasst.
Der Host 1 ist mit dem Gerät 2 über eine
Gruppe von Kontakten 5 verbunden. Die Kontakte C1 und C5 übertragen
die Versorgungsspannung VCC bzw. das Massepotenzial GND, während die
Kontakte C4 und C8 die Signale der Datenleitungen D+ und D–, so wie
sie in der USB-Spezifikation vorgeschrieben sind, übertragen.
Im Host 1 sind die Kontakte mit der USB-Kommunikationseinheit 6 verbunden,
während
die Kontakte im Gerät 2 mit
einem USB-Transceiver 7 verbunden
sind. Der USB-Transceiver 7 ist mit einem USB-Funktionskern 4 verbunden,
welcher zum Dekodieren von empfangenen Daten und zum Kodieren von
zu übertragenden
Daten dient. Ein Puffer 8 speichert dekodierte Daten aus
dem USB-Funktionskern 4 und ist mit einer Busschnittstelle 9 verbunden.
Um Anweisungen zu empfangen, ist der USB- Funktionskern 4 ebenfalls mit
der Busschnittstelle 9 verbunden. In dem Gerät 2 sind
ein CPU-Oszillator 10 und eine CPU 11 vorgesehen,
mit denen Daten, die von dem USB-Transceiver 7 empfangen
wurden, weiterverarbeitet werden können.
-
Ein
Oszillator 3 in dem Host 1 ist mit der USB-Kommunikationseinheit 6 im
Host 1 verbunden. Weiter ist der Oszillator 3 durch
den Kontakt C3 mit dem Gerät 2 verbunden
und versorgt den USB-Funktionskern 4 mit einem USB-Taktsignal. Das Gerät 2 braucht
daher keinen eigenen Oszillator oder eine Taktrückgewinnungsschaltung zum Dekodieren
eines Taktsignals aus den Datenleitungssignalen D+ und D–. Stattdessen
benutzt das Gerät 2 für die USB-Datenkommunikation
den gleichen Oszillator 3 wie der Host 1. Demzufolge
ist das Gerät 2 klein
genug, um in eine Smartcard oder eine Integrated Circuit Card integriert
zu werden und bedarf keiner Kalibrierung eines Oszillators, um auf
die Frequenz des Oszillators im Host 1 abgestimmt zu werden.
Da keine Taktrückgewinnungseinheit
vorhanden ist, ist es aufgrund der geringeren Anzahl von Teilen
und der kleineren Chipgröße billiger
und verbraucht weniger Strom. Zusätzlich führt die Benutzung des gleichen Oszillators 3 in
dem Host 1 und dem Gerät 2 zu
einer synchronen Operation, wodurch sich der Konstruktionsaufwand
für die
Kompensation einen asynchroner Operation reduziert und die elektromagnetische Beeinflussung
verringert wird.
-
Beispielshafterweise
kann der Host 1 ein Mobiltelefon sein und das Gerät 2 ein
Subscriber Identity Module (SIM), eine Universal Integrated Circuit
Card (UICC) oder ein Removable User Identity Module (RUIM) sein,
welche in der mobilen Kommunikation von GSM-, UMTS- oder CDMA-Systemen
benutzt werden. Zum Verbinden mit dem Mobiltelefon benutzen diese
Karten Kon takte, die dem ISO-7816-3-Standard entsprechen. Die CPU 11 stellt dem
Mobiltelefon normalerweise Funktionen, wie z. B. die Authentifizierung
des Subscribers, zur Verfügung.
Selbstverständlich
sind der Host 1 und das Gerät 2 nicht auf mobile
Kommunikationskarten mit USB beschränkt, sondern können beliebige
USB-Hosts und beliebige USB-Geräte
sein, wobei das Taktsignal für
das Gerät 2 durch
den Host 1 getrennt bereitgestellt wird. Ein Beispiel wäre die Kopplung
von Standard-USB-Signalen
und des USB-Takts zwischen dem Host 1 und dem Gerät 2 durch
drahtlose Mittel, wie sie z. B. im Wireless-USB eingesetzt werden.
-
2 zeigt
ein Ausführungsbeispiel
eines Kommunikationssystems, welches dem in 1 gezeigten ähnlich ist.
Host 1 umfasst zusätzlich
eine ISO-7816-Kommunikationseinheit 14 und eine Steuereinheit 15,
welche mit der USB-Kommunikationseinheit 6,
mit der ISO-7816-Kommunikationseinheit 14 und
dem Oszillator 3 verbunden ist. Der Oszillator 3 kann
ein USB-Taktsignal f1 und ein ISO-7816-Taktsignal f2 ausgeben, wobei die Ausgabe
durch die Steuereinheit 15 ausgewählt wird. Das USB-Taktsignal
f1 kann 12 MHz oder 48 MHz sein, während das ISO-7816-Taktsignal
f2 eine Frequenz von 1 bis 10 MHz für Smartcards oder Chipkarten
und eine Frequenz von 10 kHz bis 100 kHz für synchrone Speicherkarten
haben kann. Das Gerät 2 umfasst
zusätzlich
eine ISO-7816-Kommunikationseinheit 16,
eine Taktrückgewinnungseinheit 12 und
eine Taktauswahleinheit 13. Die ISO-7816-Kommunikationseinheit 16 ist
mit der Busschnittstelle 9 verbunden, um auch eine Kommunikation
mit der CPU 11 zu ermöglichen. Die
die Kontakte C1, C4, C5 und C8 repräsentierenden Linien sind so
gezeigt, dass sie die ISO-7816-Kommunikationseinheiten 14 und 16 durchqueren,
um anzuzeigen, dass die Signale auf diesen Leitungen sowohl der
ISO-7816- Kommunikationseinheit 14 und
der USB-Kommunikationseinheit 6 in dem Host, als auch der
ISO-7816-Kommunikationseinheit 16 und dem USB-Transceiver 7 in
dem Gerät
zur Verfügung
stehen.
-
Das
in 2 gezeigte Kommunikationssystem kann in drei verschiedenen
Modi betrieben werden: einem ISO-7816-Kommunikationsmodus, einem Standard-USB-Kommunikationsmodus
und einem USB-Kommunikationsmodus, in welchem ein USB-Taktsignal durch
den Host 1 bereitgestellt wird.
-
In
dem ISO-7816-Modus sind die ISO-7816-Kommunikationseinheit 16 im
Gerät 2 und die
ISO-7816-Kommunikationseinheit 14 in dem Host 1 über die
Kontakte C1 bis C8 verbunden. ISO-7816-Kommunikationssignale werden von dem Host 1 an
die Kontakte C1 bis C8 angelegt. Der Oszillator 3 wird
durch die Steuereinheit 15 so eingestellt, dass er ein
ISO-7816-Taktsignal f2 ausgibt, welches über den Taktkontakt C3 an das
Gerät 2 übertragen
wird.
-
Da
der ISO-Modus der Kommunikation nur geringe Datenübertragungsraten
erlaubt, unterstützen
der Host 1 und das Gerät 2 auch
einen schnelleren USB-Modus, in welchem Daten und Energie über die
Kontakte C1, C4, C5 und C8 zwischen dem Host 1 und dem
Gerät 2 übertragen
werden. In einem Standard-USB-Modus
wird in der Taktrückgewinnungsschaltung 12 ein
Taktsignal aus den, an den Kontakten C4 und C8 anliegenden Datensignalen
D+ und D– extrahiert.
Der Standard-USB-Modus wird benutzt, falls kein USB-Taktsignal f1
in der Taktauswahleinheit 13 detektiert wird. Die Ausgabe
der Taktrückgewinnungsschaltung 12 wird über die
Taktauswahleinheit 13 an den USB-Funktionskern 4 geleitet.
-
In
einem USB-Modus mit einem Taktsignal vom Host 1 wird der
Oszillator 3 durch die Steuereinheit 15 zur Ausgabe
eines USB-Taktsignals f1 eingestellt, welches durch den Kontakt
C3, der im ISO-7816-Modus als Taktkontaktfläche CLK dient, an das Gerät 2 übertragen
wird. Die Taktauswahleinheit 13 detektiert ein USB-Taktsignal
f1 am Kontakt C3 und leitet das USB-Taktsignal f1 an den USB-Funktionskern 4 weiter.
In diesem Modus kann die Taktrückgewinnungseinheit 12 deaktiviert
werden und der USB-Host 1 und das USB-Gerät 2 sind
synchronisiert. Die Vorteile und Abwandlungen, die im Zusammenhang
mit 1 beschrieben sind, gelten auch für das in 2 gezeigte
Ausführungsbeispiel.
-
Das
in 2 dargestellte Kommunikationssystem zeigt einen
Host 1, der mit einem Gerät 2 kommunizieren
kann, welches ISO-7816-Kommunikation, Standard-USB-Kommunikation
und USB-Kommunikation
mit einem USB-Taktsignal f1, das vom Host 1 bereitgestellt
wird, unterstützt.
In ähnlicher
Weise kann das Gerät 2 mit
einem Terminal genutzt werden, welches ISO-7816-Kommunikation, Standard-USB-Kommunikation
und USB-Kommunikation
mit einem von dem Host 1 zur Verfügung gestellten USB-Taktsignal
f1, unterstützt.
Kommunikationssysteme, in welchen nicht alle Modi sowohl vom Host
als auch vom Gerät 2 unterstützt werden,
sind auch möglich.
In derartigen Kommunikationssystemen können die in 2 gezeigten
Komponenten vereinfacht werden, falls die von dem Host 1 und
dem Gerät 2 unterstützten Modi
im voraus bekannt sind, wodurch z. B. die in 1 gezeigte
Konfiguration erreicht wird.
-
3 zeigt
ein Ablaufdiagramm, welches einen Betrieb des in 2 gezeigten
Ausführungsbeispiels
des Kommunikationssystems illustriert.
-
In
Schritt S1 wird das Kommunikationssystem für die Kommunikation zwischen
dem Host 1 und dem Gerät 2 hochgefahren.
Der Host 1 und das Gerät 2 sind
zumindest über
die Kontakte C1, C4, C5 und C8 verbunden.
-
Im
Schritt S2 legt der Host 1 USB-Signale an die Kontakte
C1, C4, C5 und C8 an.
-
In
der Abfrage S3 wird ermittelt, ob das Gerät 2 einen USB-Kommunikationsmodus
unterstützt. Falls
das Gerät 2 USB-Kommunikation unterstützt, wird
mit Schritt S4 fortgefahren.
-
In
Schritt S4 antwortet das Gerät 2 auf
die USB-Signale des Hosts 1.
-
In
Schritt S5 wartet der Host 1 darauf, dass sich das Gerät 2 als
USB-Gerät
für weitere
Kommunikation anhängt.
-
In
Schritt S6 hängt
sich das Gerät 2 an
den USB-Bus an.
-
In
der Abfrage S7 wird ermittelt, ob das Gerät 2 ein externes,
an einem weiteren den Host 1 und das Gerät 2 verbindenden
Kontakt C3 anliegendes USB-Taktsignal f1 benutzen kann. Falls das
Gerät 2 ein
externes USB-Taktsignal f1 benutzen kann, wird mit Schritt S8 fortgefahren.
-
In
Schritt S8 legt der Host 1 ein USB-Taktsignal an Kontakt
C3 an.
-
In
Schritt S9 benutzt das Gerät 2 das USB-Taktsignal
zum weiteren Kodieren und Dekodieren im USB-Funktionskern 4.
Das Kommunikationssystem wird in einem USB-Kommunikationsmodus mit
einem durch den Host 1 zur Verfügung gestellten USB-Taktsignal f1 betrieben.
-
Falls
in der Abfrage S7 entschieden wird, dass das Gerät 2 kein USB-Taktsignal
benutzen kann, wird mit Schritt S11 fortgefahren.
-
In
Schritt S11 wird ein Taktsignal durch die Taktrückgewinnungseinheit 12 aus
den über
den Kontakten C4 und C8 übertragenen
Daten D+ und D– extrahiert.
Das zurück
gewonnene Taktsignal wird an den USB-Funktionskern 4 weitergeleitet
und das Kommunikationssystem arbeitet in einem Standard-USB-Kommunikationsmodus.
-
Falls
in der Abfrage S3 entschieden wird, dass das Gerät 2 keine USB-Kommunikation
unterstützt,
wird mit Schritt S12 fortgefahren.
-
In
Schritt S12 sieht der Host 1 kein angehängtes USB-Gerät 2.
-
In
Schritt S13 führt
der Host 1 daher eine ISO-7816-Hochfahrsequenz durch und legt die dazugehörigen Signale
an die Leitungen C1 bis C8, wobei ein ISO-7816-Taktsignal f2 an
der Taktsignalkontaktfläche
C3 zur Verfügung
gestellt wird.
-
In
dem Schritt S14 erkennt das Gerät 2 die ISO-7816-Hochfahrfrequenz
und antwortet mit einem Answer-To-Reset (ATR). Das Kommunikationssystem
wird im ISO-7816-Kommunikationsmodus
betrieben.
-
In
allen drei Operationsmodi ist der zuletzt gezeigte Schritt Schritt
S10, in welchem weitere Kommunikation zwischen dem Host 1 und
dem Gerät 2 ausgeführt wird.
-
Der
in 3 gezeigte Ablauf kann modifiziert werden, um
die Konfiguration des Hosts 1 und des Geräts 2 zu
berücksichtigen.
Teile können
gelöscht werden,
falls gewisse Modi nicht unterstützt
werden und Teile können
hinzugefügt
werden, falls weitere Modi unterstützt werden.
-
- 1
- Host
- 2
- Gerät
- 3
- Oszillator
- 4
- USB-Funktionskern
- 5
- Gruppe
von Kontakten
- 6
- USB-Kommunikationseinheit
- 7
- USB-Transceiver
- 8
- Puffer
- 9
- Busschnittstelle
- 10
- CPU-Oszillator
- 11
- CPU
- 12
- Taktrückgewinnungseinheit
- 13
- Taktauswahleinheit
- 14
- ISO-7816-Kommunikationseinheit
- 15
- Steuereinheit
- 16
- ISO-7816-Kommunikationseinheit
- f1
- USB-Taktsignal
- f2
- ISO-7816
Taktsignal
- C1
- VCC
- C2
- GND
- C3
- Taktkontaktfläche
- C4
- D+
- C5–C7
- weitere
Kontaktflächen
- C8
- D–