-
GEBIET DER ERFINDUNG
-
Ein
Aspekt der Erfindung bezieht sich auf ein Datenkommunikationsgerät. Das Datenkommunikationsgerät kann zum
Beispiel ein Gerät
sein, das Daten mit einem universellen seriellen Bus-Standard (USB) übermittelt.
Andere Aspekte der Erfindung beziehen sich auf eine Methode zur
Herstellung solch eines Datenkommunikationsgerätes, eine Methode zur Datenkommunikation,
ein Computerprogrammprodukt und ein Datenverarbeitungssystem. Das
Datenverarbeitungssystem kann zum Beispiel einen Desktopcomputer
oder Laptopcomputer und eine Sicherheitseinrichtung beinhalten,
die Daten in Übereinstimmung
mit dem USB-Standard austauschen. Die Sicherheitseinrichtung kann
zum Beispiel in Form einer Smartcard gemäß der Norm ISO7816-12 oder
eines Tokens (Chipkarte) sein, die mit einem USB-Port des Computers
verbunden wird.
-
HINTERGRUND DER ERFINDUNG
-
Der
in den
USA unter der Nummer 2004/0148539 veröffentlichte
Patentantrag beschreibt ein Gerät,
das ein lokales Taktintervall aus einem per Downstream empfangenen,
bitseriellen USB-Signal erzeugt. Für das Gerät muss kein Kristalldetektor
oder Resonator verwendet werden. Es werden Zähler verwendet, um die erste
Anzahl an Intervallen eines freilaufenden Hochfrequenztaktsignals
zu bestimmen, das in einer bekannten Anzahl an Bit-Intervallen des per
Downstream empfangenen, bitseriellen Signals enthalten ist. Die
erste Anzahl an Intervallen wird durch die bekannte Anzahl an Bit-Intervallen
des empfangenen bitseriellen Signals geteilt, um eine zweite Anzahl
an Intervallen des freilaufenden Hochfrequenztaktsignals zu bestimmen,
das aus einem einzelnen Bit-Intervall des empfangenen bitseriellen
Signals besteht. Das lokale Taktintervall wird auf der Basis des
freilaufenden Hochfrequenztaktsignals und der zweiten Anzahl an
Intervallen erzeugt. Das lokale Taktintervall kann mit dem empfangenen
bitseriellen Signal phasensynchronisiert werden. Das lokale Intervall
wird fortwährend
durch einen bekannten empfangenen Downstream-Verkehr aktualisiert.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Entsprechend
dem Aspekt der Erfindung weist das Datenkommunikationsgerät die folgenden Eigenschaften
auf. Ein Datenkommunikationsgerät besteht
aus einer Eingangsschaltung, die externe Daten auf der Basis eines
Abtastsignals in interne Daten umwandelt. Eine Synchronisationsschaltung liefert
das Abtastsignal auf der Basis eines Oszillatorsignals und eines
Synchronisationswertes. Der Synchronisationswert repräsentiert
eine Anzahl von Frequenzen des Oszillatorsignals, die innerhalb
eines Zeitintervalls für
eine Einheit von externen Daten enthalten sind. Der Synchronisationswert
ist ein Anfangswert während
einer Erstsynchronisationsphase und ein Messwert während einer
auf Messung basierenden Synchronisationsphase. Ein Regelkreis führt einen
Kalibrierschritt aus, bei dem der Anfangswert ein vorprogrammierter
Rückfallwert
ist, und bei dem der Messwert als ein Kalibrierwert gespeichert
wird. Der Regelkreis verwendet den Kalibrierwert in nachfolgenden
Erstsynchronisationsphasen als Anfangswert.
-
Bei
der Erfindung werden die folgenden Aspekte berücksichtigt. Die Zuverlässigkeit
und Stabilität
der Datenkommunikation bei einem Gerät der entsprechenden Bauart
hängt wesentlich
von der Genauigkeit des Abtastsignals in Hinsicht auf Zeit und Frequenz
ab. In vielen Anwendungen bestehen die externen Daten aus einer
Folge von Dateneinheiten, wie zum Beispiel aus Bits, wobei jede
Dateneinheit innerhalb eines speziellen Zeitintervalls auftritt.
Das Abtastsignal sollte in der Eingangsschaltung idealerweise einen
Auswahlprozess initiieren, durch den der Wert der relevanten Dateneinheit
in der Mitte dieses Zeitintervalls bestimmt wird. In diesem Fall
haben Elemente der Datenkommunikation wie Interferenz oder Signalschwankung
den geringsten Einfluss.
-
Das
Abtastsignal in dem Gerät
nach dem Stand der Technik, das als lokales Taktintervall bezeichnet
wird, wird auf der Basis eines stabilen, jedoch relativ ungenauen
freilaufenden Oszillators erzeugt. Das lokale Taktintervall kann
dennoch relativ genau sein, wenn die Anzahl der freilaufenden Oszillatorfrequenzen
in einem festgelegten Muster von n Bits gezählt wird, wobei n eine ganze
Zahl ist. Dementsprechend wird ein Ein-Bit-Intervall mit relativ
großer
Genauigkeit hinsichtlich der gezählten
Menge an freilaufenden Oszillatorfrequenzen, geteilt durch n, bestimmt.
Die freilaufenden Oszillatorfrequenzen werden zuerst während einer
Erstsynchronisationsphase nach einer Einschaltfolge gezählt. In
dieser Phase bestimmt ein Anfangswert die betreffenden Fälle, in
denen die externen Daten abgetastet werden. Der Anfangswert ist
ein vorprogrammierter Fixwert, der eine nominelle Anzahl an freilaufenden
Oszillatorfrequenzen in einem Ein-Bit-Intervall darstellt. Da die
freilaufenden Oszillatorfrequenzen relativ ungenau sind, ist das
Abtasten während
der Erstsynchronisationsphase gleichfalls relativ ungenau. Dies kann
eine korrekte Zählung
der Menge an freilaufenden Oszillatorfrequenzen gefährden, wodurch
jegliche weitere Synchronisation verhindert wird. In diesem Fall
wird die Datenkommunikation unzuverlässig oder sogar unmöglich sein.
-
In Übereinstimmung
mit dem vorgenannten Aspekt der Erfindung führt ein Regelkreis einen Kalibrierschritt
durch, bei dem der Anfangswert ein vorprogrammierter Rückfallwert
ist und bei dem der Messwert, der ein gezählter Taktzyklus ist, als Kalibrierwert
gespeichert wird. Der Regelkreis verwendet den Kalibrierwert in
den nachfolgenden Erstsynchronisationsphasen als Anfangswert.
-
Dementsprechend
darf der vorprogrammierte Rückfallwert
nur während
der Erstsynchronisationsphase innerhalb des Kalibrierschrittes benutzt werden.
Der Kalibrierschritt kann unter kontrollierten Bedingungen zum Beispiel
in einem Produktionsbetrieb oder an einem anderen Standort vor der
Auslieferung an den Kunden durchgeführt werden. Wenn der Kalibrierschritt
einmal ausgeführt
worden ist, wird in den nachfolgenden Synchronisationsphasen der Kalibrierwert verwendet,
der auf einem Messwert basiert, welcher ein Ergebnis der Oszillatorfrequenzen darstellt.
Der Kalibrierwert gleicht die Ungenauigkeit der Oszillatorfrequenzen
aufgrund des Produktionsumfangs aus, was in integrierten Schaltungsausführungen
von besonderer Bedeutung sein kann. Da der Kalibrierwert in nachfolgenden
Erstsynchronisationsphasen, die letztlich beim Endkunden auftreten, als
Anfangswert verwendet wird, wird das Abtastsignal während dieser
Phasen genauer sein. Außerdem muss
die Synchronisationsschaltung Temperaturschwankungen und Alterungsprozesse
nur ausgleichen, weil der Produktionsumfang bereits durch den Kalibrierwert
berücksichtigt
wurde. Demzufolge ist die Wahrscheinlichkeit beträchtlich
höher,
dass am Ende eine erfolgreiche Synchronisation für eine spezielle Datenkommunikationssitzung
beim Endkunden erzielt wird. Aus diesen Gründen ermöglicht die Erfindung eine stabilere
und zuverlässigere
Datenkommunikation.
-
Diese
und andere Aspekte der Erfindung werden nachstehend unter Bezug
auf die Zeichnungen noch viel ausführlicher beschrieben.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
1 ist
ein Blockdiagramm, das ein universelles serielles Bus-Gerät darstellt.
-
2 ist
ein Blockdiagramm, das eine Schnittstellenschaltung darstellt, die
einen Teil des universellen seriellen Bus-Geräts bildet.
-
3A und 3B sind
Flussdiagramme, die Vorgänge
darstellen, welche von dem universellen seriellen Bus-Gerät ausgeführt werden.
-
DETAILLIERTE BESCHREIBUNG
-
1 zeigt
ein universelles serielles Bus-Gerät USBDV. Das universelle serielle
Busgerät USBDV
besteht aus einer Schnittstellenschaltung IFC, einer zentralen Verarbeitungseinheit
CPU, einem Programmspeicher PMEM, einem Datenspeicher DMEM und einem
Bus BS. Der Bus BS bildet einen Pfad, über den die vorgenannten Elemente
Daten austauschen können,
einschließlich
Steuerdaten.
-
Das
universelle serielle Bus-Gerät
USBDV führt
viele verschiedene Vorgänge
aus wie zum Beispiel eine Authentifizierung auf der Grundlage von elektronischen
Schlüsseln.
Der Programmspeicher PMEM umfasst einen Befehlssatz, das heißt Software,
der die zentrale Verarbeitungseinheit CPU dazu veranlasst, diese
vielen verschiedenen Vorgänge umzusetzen.
Der Datenspeicher DMEM speichert Zwischenergebnisse von den Vorgängen. Ein
Vorgang kann durch ein Software-Modul bestimmt werden, wie zum Beispiel
ein Unterprogramm. Der Programmspeicher PMEM umfasst ebenfalls Software zur
Ausführung
interner Steuerfunktionen, um einen passenden Vorgang des universellen
seriellen Bus-Gerätes
USBDV abzusichern.
-
Die
Schnittstellenschaltung IFC wandelt externe Daten XDT in interne
Daten IDT um und umgekehrt. Die externen Daten XDT und die internen
Daten IDT haben wesentlich unterschiedliche Formate. Die externen
Daten XDT besitzen ein Format, das mit einem universellen seriellen
Bus-Standard übereinstimmt.
Dementsprechend können
die externen Daten XDT ein serieller Bitstrom sein, der mittels
eines Differenzsignals dargestellt wird, das eine so genannte DM-Komponente und eine
so genannte DP-Komponente aufweist. Alternativ kann auch ein unsymmetrisches
Signal die externen Daten XDT darstellen. Die externen Daten XDT,
die von der Schnittstellenschaltung IFC empfangen werden, sind synchron
mit einem Taktsignal, das mit relativ großer Genauigkeit an einem Übertragungsende
erzeugt wird. Demzufolge besitzt jedes Bit in den externen Daten
XDT eine präzise
Dauer.
-
Außerdem beinhalten
die externen Daten XDT festgelegte Bit-Muster zum Zweck der Synchronisation
und der Signalisierung. In einem Empfangsmodus, der einem so genannten
Downstream-Verkehr entspricht, erkennt die Schnittstellenschaltung IFC
diese festgelegten Bit-Muster und antwortet hierauf mit entsprechenden
Maßnahmen.
In einem Übertragungsmodus,
der einem so genannten Upstream-Verkehr entspricht, erfolgt dies
umgekehrt und die Schnittstellenschaltung IFC erzeugt die erforderlichen
festgelegten Bit-Muster zum Zweck der Synchronisation und der Signalisierung.
-
Die
internen Daten IDT besitzen ein Format, das gemeinhin bei der Datenübertragung über einen internen
Bus BS verwendet wird. Entsprechende Bits mit einem binären Wert
werden eher parallel als in Folge übertragen und bei einer Rate,
die allgemein anders ist.
-
2 zeigt
die Schnittstellenschaltung IFC. Die Schnittstellenschaltung IFC
besteht aus einer Datenempfangs- und Datenübertragungsschaltung DRTC,
einer Synchronisationsschaltung SYNC, einer Oszillatorschaltung
OSC, zwei Multiplexern MUX1, MUX2 und drei Registern REG1, REG2, REG3.
Die Datenempfangs- und Datenübertragungsschaltung
DRTC erkennt die vorgenannten, festgelegten Bit-Muster, die in den empfangenen externen
Daten XDT enthalten sind. In Antwort darauf liefert die Datenempfangs-
und Datenübertragungsschaltung
DRTC Kontrollsignale CS an den Multiplexer MUX1 und die Synchronisationsschaltung
SYNC.
-
Die
Oszillatorschaltung OSC liefert einen Satz von mehrphasigen Oszillatorsignalen
OS, bei dem jedes Oszillatorsignal eine andere Phase aufweist. Die
unterschiedlichen Phasen können
zum Beispiel folgendermaßen
aussehen: 0°,
45°, 90°, 135°, 180°, 225°, 270° und 315°. Die Oszillatorschaltung
OSC kann zum Beispiel der freilaufenden Oszillatorschaltung ähneln, die
in dem unter der Nummer
2004/0148539 veröffentlichten
US-Patentantrag beschrieben ist. Die
10 der
Patentausgabe zeigt die freilaufende Oszillatorschaltung. Der Oszillator OSC
kann zum Beispiel in der Form einer CMOS integrierten Schaltung
implementiert sein. In diesem Fall weist der Satz von mehrphasigen
Oszillatorsignalen OS eine Genauigkeit auf, die sich durch folgende
Punkte auszeichnet:
- – kurzzeitige Stabilität von ±0,01%,
mehr als ein paar Millisekunden;
- – Produktionsumfang
von ±20%,
Chip zu Chip, Halbleiterscheibe zu Halbleiterscheibe, Gießerei zu
Gießerei;
- – Temperaturdrift
von ±3% über 60°C;
- – Einfluss
der Verpackung von ±1%;
und
- – Alterungsprozess
von ±1%.
-
Die
Synchronisationsschaltung SYNC erzeugt ein Abtastsignal SP auf der
Grundlage des mehrphasigen Oszillatorsignalsatzes OS, der Kontrollsignale
CS und eines Synchronisationswertes SV. Die Datenempfangs- und Datenübertragungsschaltung
DRTC tastet die erhaltenen externen Daten XDT auf der Basis des
Abtastsignals SP ab. Dieses Abtasten stellt einen wichtigen Schritt
bei der Umwandlung der externen Daten XDT in interne Daten IDT dar.
Das Abtastsignal SP kann zum Beispiel Abtastimpulse enthalten. Vorzugsweise
tritt jeder Abtastimpuls im Wesentlichen in der Mitte eines Bit-Intervalls
auf. Je näher
der Abtastimpuls der Mitte des Bit-Intervalls ist, desto zuverlässiger und
stabiler wird der Datenempfang sein. Der Synchronisationswert SV
bestimmt die Position des Abtastimpulses innerhalb eines Bit-Intervalls
in Hinsicht auf die Menge der Frequenzen innerhalb des mehrphasigen
Oszillatorsignalsatzes OS.
-
Der
Synchronisationswert SV kann ein Rückfallwert RV sein, der im
Register REG3 gespeichert wird, ein Kalibrierwert CV, der an einem
nichtflüchtigen
Ort des Datenspeichers DMEM gespeichert wird, oder ein gespeicherter
Messwert MVs, der in dem Register REG2 gespeichert wird. Der Multiplexer MUX2
empfängt
den Rückfallwert
RV, der im Register REG3 gespeichert wird. Register REG3 kann ein so
genanntes verdrahtetes Register sein, das einen Fixwert enthält, der
eine gleichwertige Funktion wie ein Festspeicher hat. Der Multiplexer
MUX2 empfängt
zudem den Kalibrierwert CV, der an einem nichtflüchtigen Ort des Datenspeichers
DMEM gespeichert wird. In Abhängigkeit
von einer Kalibriermarkierung FC, die an einem nichtflüchtigen
Ort des Datenspeichers DMEM gespeichert wird, überträgt der Multiplexer MUX2 entweder
den Rückfallwert
RV oder den Kalibrierwert CV.
-
Der übertragene
Wert, der entweder der Rückfallwert
RV oder der Kalibrierwert CV ist, wird in dem Register REG1 gespeichert.
-
Der
Wert, der in dem Register REG1 gespeichert wird, stellt einen Anfangswert
IV dar. Der Multiplexer MUX1 empfängt den Anfangswert IV und
den gespeicherten Messwert MVs, der sich im Register REG2 befindet.
Der gespeicherte Messwert MVs ist ein Messwert MV, den die Synchronisationsschaltung SYNC
aufgestellt hat und der im Register REG2 gespeichert worden ist.
Der Messwert MV kann auch über
den Bus BS an einen nichtflüchtigen
Speicherplatz des Datenspeichers DMEM übertragen werden. In Abhängigkeit
von den Kontrollsignalen CS aus der Datenempfangs- und Datenübertragungsschaltung DRTC
verwendet der Multiplexer MUX1 entweder den Anfangswert IV oder
den gespeicherten Messwert MVs für
die Synchronisationsschaltung SYNC.
-
Die 3A und 3B veranschaulichen weiterhin
den Vorgang des universellen seriellen Bus-Gerätes USBDV, der in 1 dargestellt
ist, und die Schnittstellenschaltung IFC, die einen Teil davon bildet
und die in 2 gezeigt wird. 3A zeigt
eine erste Folge von Schritten. 3B veranschaulicht
eine anschließende
Folge von Schritten.
-
In
dem ersten Schritt ST1 wird das universelle serielle Bus-Gerät USBDV,
das in 1 dargestellt ist, mit einem universellen seriellen
Bus-Host verbunden. Dieser initiiert eine so genannte Einschaltphase,
in der eine wechselseitige Erkennung stattfindet (PWUP). In einem
zweiten Schritt ST2 wird überprüft, ob eine
Kalibriermarkierung FC eingestellt worden ist oder nicht (FC=ST?).
Das universelle serielle Bus-Gerät
USBDV führt
als erste Alternative einen dritten Schritt ST3A durch, wenn die
Kalibriermarkierung FC eingestellt worden ist. Bei diesem Schritt
wird der Kalibrierwert CV von dem Datenspeicher DMEM gelesen, was
in 1 dargestellt ist, und über den Multiplexer MUX2 im
Register REG1 als Anfangswert IV gespeichert, was in 2 (MUX2:IV=CV)
veranschaulicht wird. Das universelle serielle Bus-Gerät USBDV
führt als
zweite Alternative einen dritten Schritt ST3B durch, wenn die Kalibriermarkierung
FC nicht eingestellt worden ist. Bei diesem Schritt wird der Rückfallwert
RV aus dem Register REG3 gelesen und über den Multiplexer MUX2 in
Register REG2 als Anfangswert IV gespeichert (MUX2:IV=RV).
-
In
einem vierten Schritt ST4 überprüft die Datenempfangs-
und Datenübertragungsschaltung DRTC,
die in 2 dargestellt ist, ob ein festgelegtes Bit-Muster
begonnen hat oder nicht (STRT N bit?). Es wird angenommen, dass
das festgelegte Bit-Muster n Bit enthält, wobei n eine ganze Zahl
ist wie zum Beispiel 4 oder 8. Der vierte Schritt ST4 kann zum Beispiel
in Form einer Erkennungsschaltung umgesetzt werden, die speziell
dafür vorgesehen
ist, ein festgelegtes oder mehrere festgelegte Bit-Muster zu erkennen.
Die Kontrollsignale CS, die in 2 veranschaulicht
werden, markieren den Start eines festgelegten Bit-Musters. Bei
langsamer Geschwindigkeit kann das festgelegte Bit-Muster zum Beispiel
ein Synchronisationspaket sein, dem die Paketkennung folgt, in der
eine gerade Anzahl an Bits (4 oder 8) enthalten ist.
-
Bei
voller Geschwindigkeit kann das festgelegte Bit-Muster zwei aufeinander
folgende Frame-Start-(SOF)Markierungen enthalten, die in der Regel
12.000 Bit aufweisen.
-
Das
universelle serielle Bus-Gerät
USBDV führt
einen fünften
Schritt ST5, einen sechsten Schritt ST6 und einen siebten Schritt
ST7 aus, wenn die Datenempfangs- und Datenübertragungsschaltung DRTC das
festgelegte Bit-Muster
erkannt hat. In dem fünften
Schritt ST5 zählt
die Synchronisationsschaltung SYNC die Frequenzen eines Oszillatorsignals, das
in dem Satz mehrphasiger Oszillatorsignale OS enthalten ist, welcher
von der Oszillatorschaltung OSC geliefert wird (CNT OS). Als Abschluss
kann die Synchronisationsschaltung SYNC einen zugeordneten Zähler beinhalten.
In dem sechsten Schritt ST6 erzeugt die Synchronisationsschaltung
SYNC auf der Basis der Kontrollsignale CS, des Satzes von mehrphasigen
Oszillatorsignalen OS und des Anfangswertes IV das Abtastsignal
SP, das den Synchronisationswert SV darstellt (MUX1:SV=IV; SP=F(CS,
OS, IV)).
-
Die
Synchronisationsschaltung SYNC erzeugt auf folgende Art und Weise
das Abtastsignal SP. Die Kontrollsignale CS melden den Start eines Bit-Intervalls.
Die Synchronisationsschaltung SYNC zählt die Anzahl der Frequenzen
eines Oszillatorsignals, das in einem Satz von mehrphasigen Oszillatorsignalen
OS enthalten ist. Die Synchronisationsschaltung SYNC liefert einen
Abtastimpuls, wenn die Anzahl der Frequenzen dem Anfangswert IV
entspricht. Demzufolge ist die Position des Abtastimpulses innerhalb
des betreffenden Bit-Intervalls eine Funktion der Frequenz des Oszillatorsignals
und des Anfangswertes IV. Die Frequenz des Oszillatorsignals kann
relativ ungenau sein. Die Frequenz kann Werte innerhalb einer relativ
großen
Frequenzspanne aufweisen, so zum Beispiel zwischen 33 und 66 MHz.
Der Anfangswert IV sollte diese Ungenauigkeit vorzugsweise bis auf
ein bestimmtes Maß ausgleichen.
-
Im
siebten Schritt ST7 wird durch die Datenempfangs- und Datenübertragungsschaltung
DRTC überprüft, ob das
festgelegte Bit-Intervall abgeschlossen ist oder nicht (END N bit?).
Der siebte Schritt ST7 kann zum Beispiel in Form einer Erkennungsschaltung
umgesetzt werden, wie sie zuvor in diesem Dokument bezüglich des
vierten Schrittes ST4 erwähnt
wurde. Die Kontrollsignale CS, die in 2 gezeigt
werden, markieren das Ende des festgelegten Bit-Musters.
-
In Übereinstimmung
damit bilden der fünfte Schritt
ST5, der sechste Schritt ST6 und der siebte Schritt ST7 eine Schleife.
Die Schleife weist eine Dauer auf, die Intervallen von n Bits entspricht.
Die Schleife wird im vierten Schritt ST4 aufgenommen, wenn das festgelegte
Bit-Muster startet. Die Schleife wird im siebten Schritt ST7 verlassen,
wenn das festgelegte Bit-Muster endet. Die Synchronisationsschaltung
SYNC zählt
die Menge der Frequenzen des Oszillatorsignals während der Schleife im fünften Schritt ST5.
Demgemäß entspricht
die Anzahl der Frequenzen am Ende der Schleife einem Intervall von
n Bits.
-
In
einem achten Schritt ST8, der in 3B dargestellt
ist, bestimmt die Synchronisationsschaltung SYNC, wie viele Frequenzen
des Oszillatorsignals in einem Intervall von einem Bit enthalten
sind.
-
Es
ist ausreichend, die Anzahl der Frequenzen zu teilen, die zuvor
hierin mit n gezählt
wurden, welches die Anzahl der Bits darstellt, die in dem festgelegten
Bit-Muster enthalten sind. Die Anzahl der Frequenzen, die in einem
Ein-Bit-Intervall erfasst sind, stellt den Messwert (CNT=MV) dar.
Der Messwert muss nicht notwendigerweise ein ganzzahliger Wert sein.
Der Messwert kann aus einem ganzzahligen Teil und einem Bruchteil
bestehen. Der Bruchteil kann in 1/8 Einheiten des Intervalls von
dem Oszillatorsignal ausgedrückt
werden. Zum Beispiel kann der Messwert 33 5/8 sein, wobei 33 der
ganzzahlige Teil und 5/8 der Bruchteil ist.
-
In
einem neunten Schritt ST9 überprüft das universelle
serielle Bus-Gerät
USBDV erneut, ob die Kalibriermarkierung FC eingestellt wurde oder
nicht, ähnlich
wie im zweiten Schritt ST2 (FC=ST?). Das universelle serielle Bus-Gerät USBDV
führt einen zehnten
Schritt ST10, einen elften Schritt ST11 und einen zwölften Schritt
ST12 aus, wenn die Kalibriermarkierung FC eingestellt worden ist.
Im zehnten Schritt ST10 wird der Messwert MV in dem Register REG2
gespeichert und wird somit zum gespeicherten Messwert MVs (MV→REG2). Im
elften Schritt ST11 erzeugt die Synchronisationsschaltung SYNC das Abtastsignal
SP auf der Grundlage des Satzes von mehrphasigen Oszillatorsignalen
OS und des gespeicherten Messwertes MVs (MUXI:SV=MVs; SP=F(OS, MVs)).
Das Abtastsignal SP ist ein periodisches Signal mit einer Frequenz,
die der Frequenz des Satzes von mehrphasigen Oszillatorsignalen
OS geteilt durch den Messwert MV entspricht.
-
Es
wird daran erinnert, dass der Messwert MV einen Bruchteil aufweisen
kann. Die Synchronisationsschaltung SYNC berücksichtigt den Bruchteil durch
die Auswahl eines Oszillatorsignals, das eine entsprechende Phase
innerhalb des Satzes von mehrphasigen Oszillatorsignalen OS hat.
Somit ist es möglich,
eine höhere
Oszillatorfrequenz zu simulieren, wodurch eine größere Genauigkeit
erzielt werden kann. Wird zum Beispiel angenommen, dass der Satz
von mehrphasigen Oszillatorsignalen OS eine Frequenz von 50 MHz
hat, und dass der Messwert MV 33 5/8 beträgt, dann hat das Abtastsignal
SP, das von der Synchronisationsschaltung SYNC erzeugt wird, ein
Intervall, das gleich 20 Nanosekunden (ns) ist, multipliziert mit
33 5/8, was 672,5 ns entspricht. Das Intervall des Abtastsignals
SP kann dadurch mit einer Granularität von 20/8 = 0,25 ns angeglichen werden,
was einer Frequenz von einem 400 MHz Taktsignal entspricht.
-
In
dem zwölften
Schritt ST12 berechnet das universelle serielle Bus-Gerät USBDV
noch weitere Messwerte beim Auftreten von nachfolgenden festgelegten
Bit-Mustern. Ein neu kalkulierter Messwert MV ersetzt den gespeicherten Messwert
MVs im Register REG2 (UPD MVs). Demnach wird der gespeicherte Messwert
MVs beständig
auf der Basis des Downstream-Verkehrs aktualisiert. Dies ermöglicht den
Ausgleich der Temperaturdrift und des Alterungsprozess, wodurch
eine zuverlässige
und stabile Datenkommunikation unterstützt wird. In dieser Hinsicht
ist zu beachten, dass die fortwährende
Aktualisierung der gespeicherten Messwerte MVs eine Korrektur von
Rundungsfehlern ermöglicht.
-
Wird
zum Beispiel angenommen, dass der gespeicherte Messwert MVs idealerweise
33,600 beträgt,
dass aber der gespeicherte Messwert MVs nur in 1/8 Einheiten ausgedrückt werden
kann, dann ist in diesem Fall der gespeicherte Messwert MVs auf
33 5/8 für
4 aufeinander folgende Zeitintervalle und auf 33 1/2 für 1 nachfolgendes
Zeitintervall einzustellen.
-
Bei
der Rückkehr
zum neunten Schritt ST9 führt
das universelle serielle Bus-Gerät
USBDV einen dreizehnten Schritt ST13 und einen vierzehnten Schritt
ST14 aus, wenn die Kalibriermarkierung FC nicht eingestellt wurde.
Im dreizehnten Schritt ST13 speichert das universelle serielle Bus-Gerät USBDV den
Messwert MV, der in den vorangehenden Schritten berechnet wurde,
an einem nichtflüchtigen
Ort des Datenspeichers DMEM, was in 1 (MV→DMEM) dargestellt
wird. Dieser Speichervorgang ergibt, dass der Messwert zum Kalibrierwert
CV (CM=MV) wird, der als solcher zur Verfügung steht, sobald eine nachfolgende
Einschaltphase beginnt. Im vierzehnten Schritt ST14 stellt das universelle
serielle Bus-Gerät
USBDV die Kalibriermarkierung FC (ST FC) ein, so dass der Anfangswert
IV hiernach zum Kalibrierwert CV wird.
-
Das
universelle serielle Bus-Gerät
USBDV, das zuvor hierin beschrieben wurde, ist vorzugsweise auf
folgende Art herzustellen. In einem Schritt zur Geräteproduktion
wird das universelle serielle Bus-Gerät USBDV zum Beispiel in der
Form einer integrierten Schaltung hergestellt. Die Kalibriermarkierung
FC, die sich in dem Datenspeicher DMEM befindet, wird nicht eingestellt.
In einem abschließenden Produktionsschritt
werden externe Daten XDT für das
universelle serielle Bus-Gerät
USBDV verwendet. Der abschließende
Produktionsschritt führt
dazu, dass das universelle serielle Bus-Gerät USBDV einen Messwert aufstellt,
der letztlich in den nachfolgenden Vorgängen beim Endkunden zum Kalibrierwert CV
wird. Demzufolge wird die Ungenauigkeit der Oszillatorschaltung
OSC bei versendeten Produkten ausgeglichen.
-
ABSCHLIESSENDE BEMERKUNGEN
-
Die
detaillierte Beschreibung hierin mit Bezug auf die Zeichnungen veranschaulicht
folgende Eigenschaften. Ein Datenkommunikationsgerät (USBDV)
beinhaltet eine Eingangsschaltung (Datenempfangs- und Datenübertragungsschaltung
DRTC), die externe Daten (XDT) auf der Grundlage eines Abtastsignals
(SP) in interne Daten umwandelt (IDT). Eine Synchronisationsschaltung
(SYNC) liefert das Abtastsignal (SP) auf der Basis eines Oszillatorsignals (Satz
von mehrphasigen Oszillatorsignalen OS) und eines Synchronisationswertes
(SV). Der Synchronisationswert (SV) repräsentiert eine Anzahl von Frequenzen
des Oszillatorsignals, das in einem Zeitintervall für eine externe
Dateneinheit enthalten ist (ein Bit ergibt eine Dateneinheit, SV
stellt die Anzahl der Frequenzen in einem Ein-Bit-Intervall dar).
Der Synchronisationswert (SV) ist ein Anfangswert (IV) während einer
Erstsynchronisationsphase (Schritte ST4–ST8) und ein Messwert (MV)
während
einer auf Messung basierenden Synchronisationsphase (ST11–ST13).
-
Ein
Regelkreis (zentrale Verarbeitungseinheit CPU in Kombination mit
der Schnittstellenschaltung IFC) führt einen Kalibrierschritt
(Kalibriermarkierung FC nicht eingestellt: ST1, ST2, ST3B, ST4–ST9, ST14)
durch, bei dem der Anfangswert (IV) ein vorprogrammierter Rückfallwert
(RV) ist, und bei dem der Messwert (MV) als ein Kalibrierwert (CV)
gespeichert wird. In nachfolgenden Erstsynchronisationsphasen verwendet
der Regelkreis (CPU, IFC) den Kalibrierwert (CV) als Anfangswert
(IV).
-
Die
vorgenannten Eigenschaften können
in zahlreichen verschiedenen Arten umgesetzt werden. Einige Alternativen
sollen kurz angegeben werden, um dies zu beschreiben. Der Kalibrierwert
CV kann in einem anderen Speicher als dem Datenspeicher DMEM hinterlegt
werden. Zum Beispiel kann die Schnittstellenschaltung IFC ein weiteres
Register für die
interne Speicherung des Kalibrierwertes CV aufweisen. Die Multiplexer
MUX1, MUX2, die in 2 dargestellt sind, können durch
andere Schaltungen und/oder geeignete Software zum Beispiel in dem Programmspeicher
PMEM ersetzt werden. Die Steuerfunktionen in Verbindung mit den
in 3A und 3B dargestellten
Abläufen
können
im Wesentlichen durch die Schnittstellenschaltung IFC auf eine autonome
Art und Weise durchgeführt
werden. Alternativ können
diese Funktionen weitestgehend unter der Kontrolle der zentralen
Verarbeitungseinheit CPU umgesetzt werden. Obwohl ein Satz von mehrphasigen
Oszillatorsignalen OS vorteilhaft ist, wie bereits zuvor hierin
erläutert
wurde, kann die Oszillatorschaltung OSC ein einfaches Oszillatorsignal
liefern, wenn zum Beispiel keine so hohe Genauigkeit erforderlich ist,
oder wenn höhere
Frequenzschaltungen zur Verfügung
stehen.
-
Es
gibt viele Methoden, die Funktionen mittels Hardware- oder Softwareprodukten
oder mittels beider Elemente umzusetzen. In dieser Hinsicht sind die
Zeichnungen sehr diagrammatisch, so stellt jede nur eine mögliche Ausführungsform
der Erfindung dar. Obwohl eine Zeichnung unterschiedliche Funktionen
in verschiedenen Feldern darstellt, wird dadurch auf keinen Fall
ausgeschlossen, dass ein einzelnes Element der Hardware oder Software
mehrere Funktionen ausführt.
Es wird auch nicht ausgeschlossen, dass eine Anordnung von Hardware-
oder Softwareprodukten oder von beiden eine Funktion umsetzt.
-
Die
zuvor hierin dargestellten Bemerkungen zeigen, dass die detaillierte
Beschreibung mit Bezug auf die Zeichnungen die Erfindung eher veranschaulicht,
als dass sie diese eingrenzt. Es gibt zahlreiche Alternativen, die
in den Rahmen der beigefügten
Ansprüche
fallen. Jeder Hinweis einer Referenz auf einen Anspruch ist somit
nicht als Einschränkung
des Anspruchs auszulegen. Die Wörter „enthalten", „umfassen" oder „bestehen
aus" schließen nicht
das Vorhandensein von anderen Elementen oder Schritten aus, die
nicht in einem Anspruch aufgelistet sind. Der Artikel „ein/e/r", der vor einem Element
oder einem Schritt steht, schließt nicht das Vorhandensein
einer Vielzahl solcher Elemente oder Schritte aus.