-
Die Erfindung betrifft einen Chip-Kartenleser, der
mit einem Mikrorechner verbunden werden kann, um einen von dem Mikrorechner
gesteuerten Datenaustausch zwischen der Karte und dem Mikrorechner beim
Lesen oder beim Schreiben zu gewährleisten.
-
Die meisten Chip-Kartenleser, die
für diese Art
von Anwendungen vorgesehen sind, werden mit einen Mikroprozessor
betrieben, der leistungsfähig genug
ist, um zum einen die Kommunikation zwischen der Karte und dem Leser
zu steuern und um zum anderen die Kommunikation zwischen dem Leser
und dem Mikrorechner zu steuern (siehe beispielsweise EP-A-0 727
759). Die Schwierigkeit bei der Kommunikation zwischen der Karte
und dem Mikroprozessor besteht zum einen darin, daß zwischen dem
Betrieb der Karte und dem Betrieb des Mikroprozessors überhaupt
keine Synchronisation vorliegt und zum anderen darin, daß der Mikroprozessor
andere Aufgaben als die der Kommunikation mit dem Kartenleser ausführt, während die
Karte mit dem Leser kommuniziert. Es wird daher im allgemeinen als notwendig
angesehen, einen Mikroprozessor im Leser vorzusehen, um die Verwaltung
der Austauschvorgänge
zu gewährleisten.
Jedoch ist diese teuer.
-
Gemäß der Erfindung wird ein Chip-Kartenleser
vorgesehen, der von einem Mikrorechner gesteuert werden kann und
der den Austausch zwischen der Karte und dem Mikrorechner gewährleisten
kann, wobei der Leser ohne Mikroprozessor arbeitet, jedoch zum einen
einen Pufferspeicher, der das Zwischenspeichern der von der Karte
gelesenen Daten gewährleistet,
und zum anderen einen Frequenzteiler aufweist, der über ein
digitales Signal programmierbar ist, um durch die Frequenzteilung
eines internen Takts des Lesers die Bitdauer frei wählbar einzustellen,
d. h. die Zeitdauer, die der Übertragung
eines Datenbits bei dem Datenaustausch zwischen der Chipkarte und
dem Leser entspricht. Die Wahl eines Wertes für die Bitdauer wird vom Mikrorechner
getroffen, der dem Frequenzteiler einen Befehl schickt, welcher
das Frequenzverhältnis
definiert.
-
Mit anderen Worten wird vorgesehen,
daß der
Kartenleser aus einem vereinfachten elektronischen Schaltkreis ohne
Mikroprozessor besteht, und daher nicht von einem internen Befehlsprogramm
gesteuert werden kann, jedoch sehr einfache Mittel zum Einstellen
des Datenübertragungsprotokolls
zwischen der Chipkarte und dem Leser vorsieht, wodurch zum einen
ein Übertragungsprotokoll
zwischen der Karte und dem Leser gewählt werden kann, das mehr oder
weniger schnell ist, andererseits die Geschwindigkeit des Protokolls
keinen Datenverlust beim Austausch zwischen dem Mikrorechner und
der Karte hervorruft. Das Einstellen des Protokolls wird durch Senden
eines digitalen Signals vom Mikrorechner zum Leser durchgeführt, wobei
das digitale Signal auf einen programmierbaren Frequenzteiler wirkt, welcher
im Leser vorgesehen ist.
-
Insbesondere sieht die Erfindung
daher einen Chip-Kartenleser vor, der ohne Mikroprozessor von einem
Mikrorechner gesteuert arbeitet, um den Datenaustausch zwischen
der Karte und dem Mikrorechner zu gewährleisten, wobei der Leser
zum einen einen Daten-Pufferspeicher umfaßt, der das vorläufiges Speichern
eines aus der Karte gelesenen Datums gestattet, um dieses bis zum
Lesen durch den Mikrorechner bereitzuhalten, und der zum anderen einen
digital programmierbaren Frequenzteiler umfaßt, der von einem Ausgangsbus
des Mikrorechners ein digitales Befehlssignal empfangen kann, welches ein
gewünschtes
Frequenzverhältnis
darstellt, wobei der Frequenzteiler ein Referenztaktsignal empfängt, das
im Leser erzeugt wurde und der ein Synchronisationssignal für den Datenaustausch
zwischen der Karte und dem Leser liefert, wobei das Synchronisationssignal
eine Periode mit einer gewünschten
Bitdauer aufweist, und sich diese Periode durch die Frequenzteilung
des von dem Mikrorechner erzeugten Referenztakts gemäß dem Frequenzverhältnis ergibt,
welches vom Mikrorechner geliefert wird.
-
Tatsächlich kann das von dem Mikrorechner vorgegebene
Zahlenverhältnis
zwischen 2 und 372 liegen, wobei der Wert 2 einem sehr schnellen
Austauschprotokoll entspricht und der Wert 372 nicht dem langsamsten
der von dem ISO 7816-3-Standard definierten Protokolle entspricht,
jedoch das am häufigsten
verwendete ist. Vorzugsweise kann der Teiler eine Teilung zumindest
mit den Verhältnissen
2, 31 und 372 ausführen.
-
Dadurch ist es möglich, einen Chip-Kartenleser
zu realisieren, der mit einer variablen und einer sehr hohen Bitrate
arbeiten kann, wobei der Leser mit dem bidirektionalen Anschluß eines
Mikrorechners verbunden werden kann. Über diesen Anschluß können nicht
nur die auszutauschenden Daten übertragen
werden, sondern auch beliebige Befehlssignale und insbesondere Befehlssignale
für den
Pufferspeicher sowie das digitale Datum, welches das Teilungsverhältnis repräsentiert,
das den Wert der Bitdauer definiert.
-
Der Mikrorechner maß nicht
besonders schnell sein, um die in der Chip-Karte vorliegenden Daten
erfassen zu können,
auch wenn dieser gleichzeitig mit dem Lesevorgang andere Aufgaben
erfüllt. Der
Betrieb des Lesers ist von der Geschwindigkeit des Mikrorechners
unabhängig.
Der Pufferspeicher erlaubt es dem Leser, unabhängig vom Mikrorechner zu arbeiten.
Der Mikrorechner kann gleichzeitig mehrere Aufgaben erfüllen, ohne
daß von
der Karte stammende Daten verloren gehen. Ferner ermöglicht dieser
Pufferspeicher die Anwendung des Lesers unter verschiedenen Betriebssystemen
(Windows 95, Windows NT, Windows 3.11, DOS, usw.) (geschützte Marken).
-
Im allgemeinen liegt der hauptsächliche
Vorteil des mit dem programmierbaren Frequenzteiler verbundenen
Pufferspeichers darin, daß der
Leser verschiedene Kommunikationsprotokolle mit der Karte akzeptieren
kann, bei denen der Wert der Bitdauer im wesentlichen zwischen dem
2- bis 372-fachen der Taktperiode variieren kann.
-
Leser ohne Mikroprozessoren wurden
bereits in der Vergangenheit vorgestellt, jedoch mußten diese
mit dem Protokoll des ISO 7816-3-Standards arbeiten, das die geringste
Geschwindigkeit aufweist, und der Mikrorechner mußte sich
an dieses Protokoll anpassen, um zu gewährleisten, daß der Mikrorechner
den Lesevorgang durchführen
kann, ohne auch nur einen Teil der Informationen zu verlieren, die
zwischen der Karte und dem Leser übertragen werden.
-
Andere Merkmale und Vorteile der
Erfindung ergeben sich aus der folgenden detaillierten Beschreibung,
die sich auf die beigefügten
Figuren bezieht, wobei:
-
1 ein
vereinfachtes Schaubild ist, das den Kontext der vorliegenden Erfindung
darstellt; und
-
2 ein
Gesamtschaubild des erfindungsgemäßen Kartenlesers darstellt.
-
Gemäß der 1 wird der Chip-Kartenleser mit dem Bezugszeichen 10 bezeichnet.
Er ist über
einen bidirektionalen parallelen Bus 14 mit dem Mikrorechner 12 verbunden.
In den Leser 10 kann eine Karte 16 für einen
von dem Mikrorechner geführten Datenaustausch
eingeführt
werden. Die Verbindung zwischen der Karte 16 und dem Chip
wird üblicherweise
durch die Kontakte der Karte und des Lesers bewirkt, wobei die Daten über eine
serielle Verbindung mit einem für
diesen Austausch (I/O) vorgesehenen Kontakt ausgetauscht werden.
Die anderen Verbindungskontakte zwischen dem Leser und der Karte
betreffen eine Strom versorgung (VCC), eine Masse (GND), einen Takt
(CLK), der vom Kartenleser geliefert wird, sowie andere Steuersignale
für die Karte,
beispielsweise ein Rücksetzsignal
(RST) und ein internes Steuersignal (CTRL) für den Leser, mit Hilfe dessen
definiert werden kann, ob der Austausch hinsichtlich der Karte ein
Lesevorgang oder ein Schreibvorgang ist. Es können weitere Signale vorgesehen
werden, abhängig
vom verwendeten Kartentyp und der Anwendung (insgesamt sind sechs
bis acht Kontakte für
das Funktionieren der Karte notwendig).
-
Der Aufbau des erfindungsgemäßen Lesers 10 ist
in der 2 dargestellt.
-
Die Verbindung mit dem Mikrorechner
wird über
eine Verbindung 20 sichergestellt, die durch einen bidirektionalen
parallelen Kommunikationsbus einerseits mit dem Mikrorechner und
andererseits mit internen Schaltkreisen des Lesers verbunden ist. Dieser
Bus 21 überträgt die auszutauschenden
Daten zwischen der Karte und dem Mikrorechner und überträgt ferner
Steuersignale, die den Betrieb des Lesers ermöglichen. Insbesondere überträgt dieser Bus
Signale, welche die Modifikation des Kommunikationsprotokolls zwischen
dem Leser und der Karte erlauben, da der Leser über keinen Mikroprozessor verfügt, der
diese Modifikation durchführen
könnte, wie
im weiteren beschrieben ist. Schließlich überträgt der Bus Zustandssignale,
die seinen bidirektionalen Betrieb steuern.
-
Die vom Mikrorechner an den Leser
gesendeten Steuersignale werden in den verschiedenen Schaltkreisen
des Lesers verwendet. Mit dem Bezugszeichen 22 werden die
Mehrzahl der Schaltkreise des Lesers zusammengefaßt, die
diese verschiedenen Steuersignale verwenden und die die Kommunikation
mit der Karte leiten (beispielsweise Erzeugen von Signalen für die RST-
und CTRL-Kontakte ausgehend von Befehlsdaten, die von dem Mikrorechner
ausgestellt werden; Erzeugen eines Übertragungsfreigabesignals
CLK-EN, eines Taktsignals an die Karte zum Kontakt CLK; Erzeugen
eines Übertragungsfreigabesignals
einer Versorgungsspannung für
die Karte VCC-EN, usw.).
-
Auf dem parallelen Kommunikationsbus
zur Kommunikation mit dem Leser liegen auch Signale vor, die vom
Leser an den Mikrorechner ausgestellt werden, um diesen über den
internen Status des Lesers zu informieren. Diese Signale können vom
Mikrorechner in einem Zustandsregister 24 gelesen werden,
das mit dem Bus 21 verbunden ist. Bestimmte Informationen
des Zustandsregisters 24 können über spezielle Leitungen des
Busses 21 übertragen werden,
die sich von den eigentlichen Datenleitungen unterscheiden: beispielsweise
kann eine Leitung für
die Übertragung
eines globalen Informationsbits reserviert sein, das anzeigt, ob
ein normaler Austausch stattfindet, oder nicht. Die detaillierteren,
im Zustandsregister vorliegenden Informationen werden über die
für die
Daten reservierten Leitungen übertragen
und werden nur ausgegeben, wenn das Register 24 vom Mikrorechner
abgefragt wird.
-
Die Informationen, die den Leserzustand
betreffen, können
insbesondere die folgenden Informationen enthalten, wie im weiteren
beschrieben wird: eine Information über das Vorliegen einer Karte
im Leser, eine Information über
das Vorliegen von Daten in einem Pufferspeicher und Informationen,
die Übertragungsfehler
betreffen (Paritätsfehler
oder Stoppfehler in den ausgetauschten Daten).
-
Ein Karten-Anwesenheitsdetektor 26,
der in der Praxis als einfacher Unterbrecher realisiert ist und
der durch das Einführen
einer Chipkarte in den Leser ausgelöst wird, gibt dem Zustandsregister
ein CARD-IN-Signal aus, um das Vorliegen einer Karte anzuzeigen.
-
Für
den Datenaustausch zwischen dem Mikrorechner und der Karte werden
vom Leser Hauptoperationen durchgeführt, die im folgenden detailliert beschrieben
sind: Zwischenspeichern der Daten in einem Datenspeicher in einem
parallelen Format; Verwalten der Parität und der Stoppbits; Detektieren und
Verwenden der logischen Konventionen, die von der Karte verwendet
werden; Parallel-/Seriell-Umwandlung der in die Chipkarte geschriebenen
Daten und Seriell-/Parallel-Umwandlung der aus der Karte gelesenen
Daten.
-
Der Datenaustausch zwischen der Karte
und dem Leser wird durch die serielle bidirektionale Verbindung über einen
einzelnen Eingangs-/Ausgangskontakt (I/O-Kontakt) des Lesers durchgeführt. Ein bidirektionaler
Verstärkerpuffer 28,
der auch Eindraht-/Zweidraht-Umwandler
genannt wird, gewährleistet
die Trennung zwischen den eintreffenden Daten und den ausgehenden
Daten des Lesers. Die seriell von der Karte gelesenen Daten durchlaufen
den Eingangs-/Ausgangskontakt in Richtung des Pufferverstärkers 28 und
werden in den Eingangsdatenpfad des Lesers weitergeleitet. Diese
werden durch einen Seriell-/Parallel-Umwandler 30, der dem Verstärker 28 im
Eingangspfad nachgeschaltet ist, in parallele Daten umgewandelt.
Wie im weiteren dargestellt wird, tastet der Umwandler die gelesenen
Daten mit einer Abtastperiode ab, die „Bitdauer" genannt wird. Die Bitdauer muß daher
im wesentlichen der Übertragungsrate
der seriellen Daten der Karte entsprechen. Diese Dauer ist ein Vielfaches
der Periode eines internen Referenztaktes des Lesers, der über den
Kontakt CLK auf die Karte übertragen
wird.
-
Der Seriell-/Parallel-Umwandler 30 gibt
daher die sukzessiv von der Karte ausgegebenen Daten daraufhin parallel über den
Bus 21 aus. Wenn ein von der Karte ausgegebenes Datum N
Bits (im allgemeinen 12) umfaßt,
stehen die Daten am Ausgang des Umwandlers 30 nach N Bitdauern
zur Verfügung. Typischerweise
umfaßt
ein von der Karte ausgegebenes Datum acht Nutzbits, denen ein Anfangsbit („Startbit") vorausgeht, und
auf die ein Paritätsbit
sowie zwei Endbits („Stoppbits") folgen. Dies ist
detailliert in dem Umsetzungsstandard der Chip-Kartensysteme angegeben (insbesondere
in ISO 7816-3) und wird im weiteren nicht mehr behandelt. Wenn im Paritätsbit oder
in den Stoppbits Fehler vorliegen, bedeutet dies, daß die Übertragung
fehlerhaft war und daß die
Nutzdaten fehlerhaft sein können.
In dem Fall eines Paritätsfehlers
ist es notwendig, daß die
Daten von der Karte nochmals übertragen
werden müssen und
daß der
Leser diese Fehlererkennung und die darauf notwendigerweise folgende
Neuübertragung direkt
verwalten muß,
ohne den Mikrorechner zu unterbrechen. Im Fall eines Stoppfehlers
wird keine Nachfrage zur Neuübertragung
an die Karte gesendet, allerdings wird diese Fehlerinformation an
den Mikrorechner durch das Zustandsregister 24 übertragen.
-
Ein Paritätsfehler-Detektionsschaltkreis 32 ist
in der 2 als Block dargestellt,
der mit dem Parallelbus 21 verbunden ist, welcher die Nutzdaten
der Karte überträgt. Es ist
jedoch zu verstehen, daß der Paritätsfehler-Detektionsschaltkreis
auch direkt mit den seriellen Daten arbeiten kann, die vom Verstärker 28 ausgegeben
werden, d. h., daß der
Schaltkreis 32 dem Seriell-/Parallel-Umwandler 30 vorgeschaltet wäre. Dieser
Detektionsschaltkreis 32 berechnet das Paritätsbit entsprechend
der acht empfangenen Nutzdatenbits und vergleicht das berechnete
Ergebnis mit dem zehnten Bit der von der Karte empfangenen Daten,
da dieses zehnte Bit das von der Karte berechnete und geschickte
Paritätsbit
darstellt. Der Schaltkreis 32 sendet ein Fehlersignal,
wenn die zwei Bits nicht gleich sind und steuert die Ausgabe einer Anfrage
bezüglich
einer Neuübertragung
der Daten mittels eines Schaltkreises 34. Die Standards
sehen vor, daß die
Karte einen solchen Befehl empfangen kann und daß sie die gleichen Daten wie
die vorhergehenden nochmals überträgt, d. h.,
daß die
Karte die Speicheradresse nicht erhöht, aus der diese die vorhergehenden
Daten extrahiert hat. Zudem wird der Paritätsfehler an das Zustandsregister 24 signalisiert.
-
Es ist zu bemerken, daß der Schaltkreis 34, der
den Befehl zur Neuübertragung
auslöst,
ein interner Schaltkreis des Lesers ist, und daß die Durchführung der
Neuübertragung
nicht vom Mikrorechner verwaltet wird, obwohl der Leser keinen Mikroprozessor
zum Verwalten dieser Situation umfaßt. Der Schaltkreis 34 ist
daher ein fest verdrahtetes Register, um automatisch ein serielles
Datum zu schicken, das von der Karte als eine Anfrage zur Neuübertragung
interpretiert wird.
-
Ein Stoppfehler-Detektionsschaltkreis 36 verifiziert,
ob das elfte und das zwölfte
Bit der übertragenen
Daten den erwarteten Werten entsprechen (beispielsweise zwei Stoppbits
gleich 1) und schickt, wenn dies nicht der Fall ist, eine Fehlerinformation zum
Zustandsregister 24 für
den Mikrorechner.
-
Ein Schaltkreis zur Detektion der
von der Karte verwendeten Logikkonvention 38 dient zur
Erfassung der Bedeutung der von der Karte verwendeten Zustände mit
hohem oder niedrigem Pegel, um die Daten zu kodieren, die von dieser
geschickt werden. Die Logikkonvention definiert daher, ob der Zustand
mit hohem Pegel eine logische 1 oder eine logische 0 repräsentiert.
-
Die Konvention betrifft die auf der
Karte gespeicherten Daten und es ist notwendig, daß der Kartenleser
diese Konvention kennt, um die von der Karte empfangenen Daten zu
interpretieren. Die Konvention wird von der Karte selbst angegeben,
wenn diese ihren Betrieb im Leser aufnimmt, wobei dies wie folgt
durchgeführt
wird: der Leser schickt der Karte eine Anfrage zur Beantwortung
eines Reinitialisierungssignals, auf welches die Karte mit Informationen
antworten muß,
die das von der Karte verwendete Protokoll betreffen; die Karte
schickt ihre Antwort, in der die Konvention enthalten ist, und der
Leser detektiert diese Konvention. Im Detail kann das Reinitialisierungssignal,
das auf den Befehl des Mikrorechners hin von den Schaltkreisen 22 und 24 des
Lesers geschickt wird, daraus bestehen, daß die Versorgungsspannung zwischen
den Kontakten VCC und GND übertragen
wird, woraufhin das Taktsignal CLK gesendet wird, worauf eine Zustandsänderung
des Kontakts RST folgt, der standardmäßig einen hohen Pegel aufweist.
Dies stellt den Initialisierungsbefehl dar und das Funktionsprotokoll
der gesamten Chipkarte gemäß dem Standard
ISO 7816 veranlaßt
die Karte im Gegenzug mit einem Datum zu antworten, welches die
Antwort auf die Reinitialisierung darstellt (auch bekannt unter
dem englischen Begriff „answer to
reset"). Das von
der Karte zurückgeschickte
Datum umfaßt
acht Informationsnutzbits, welche die Eigenschaften der Karte und deren
Kommunikationsprotokoll mit dem Leser betreffen; von diesen acht Bits
definiert das vierte die von der Karte verwendete Konvention, d.
h. direkt oder invers. Der Schaltkreis 38 betrachtet dieses
vierte Bit, um die Nutzdaten unverändert oder invertiert an den
Mikrorechner weiterzugeben.
-
Wie auch der Paritätsfehler-Detektionsschaltkreis
und der Stoppfehler-Detektionsschaltkreis wurde der Konventionsdetektionsschaltkreis 38 so
dargestellt, daß er
mit dem parallelen Bus 21 verbunden ist, jedoch könnte dieser
dem Seriell-/Parallel-Umwandler 30 auch vorgeschaltet sein.
In diesem Fall muß dieser
von den Synchronisationsschaltkreisen und vom Bitdauer-Erfassungsschaltkreis
gesteuert werden, so daß dieser
den Wert des vierten Nutzdatenbits in der Antwort auf die Reinitialisierung
direkt feststellen kann. Dieser steuert daraufhin direkt den Seriell-/Parallel-Umwandler,
so daß dieser
daraufhin im Fall einer inversen Konvention invertierte Daten ausgibt.
Wenn die Schaltkreise 32 und 36 dem Seriell-/Parallel-Umwandler
vorgeschaltet sind, gibt dieser nur die acht Nutzdatenbits der Karte über den Bus 21 aus
und nicht die zwölf
Bits, die von der Karte übertragen
wurden.
-
Es ist zu bemerken, daß es natürlich notwendig
ist, daß die
Schreibprozesse auf die Karte diese Konvention ebenfalls berücksichtigen
müssen,
wenn die Antwort auf die Reinitialisierung ergibt, daß eine inverse
Konvention verwendet werden soll. Ein Schaltkreis zum Verwalten
der Kartenschreibekonvention 40 führt diese Umwandlung abhängig von
der Angabe aus, die von dem Schaltkreis 38 oder vom Zustandsregister 24 ausgegeben
wurde, wenn dieses die detektierte Konvention enthält.
-
Die in paralleles Format umgewandelten, von
der Karte geschickten und von den Detektionsschaltkreisen 32 und 36 verifizierten
Daten werden sofort in einen Pufferspeicher 42 übertragen.
Die Übertragungsgeschwindigkeit
entspricht der Geschwindigkeit, die vom Übertragungsprotokoll zwischen
dem Leser und der Karte vorgegeben wurde. Sie hängt nicht von der Fähigkeit
des Mikrorechners ab, die von der Karte empfangenen Informationen
in Echtzeit abzutasten. Der Austausch zwischen dem Leser und der
Karte kann sehr schnell durchgeführt werden
und die Daten können
daraufhin von dem Mikrorechner langsam aus dem Pufferspeicher gelesen werden,
während
dieser keine anderen Aufgaben ausführt. Wenn zwischen dem Speicher
und der Karte Daten übertragen
werden, wird der Betrieb des Speichers 42 von einem Sequenzer
in dem Takt der Synchronisationssignale der Bitdauern gesteuert,
der später
behandelt wird; in der 2 wird
angenommen, daß dieser
Sequenzer einen Teil des Spei chers 42 bildet. Jedoch wird
die Übertragung
der Daten zwischen dem Speicher und dem Mikrorechner von diesem
in dessen Takt ausgeführt.
Daher ergeben sich Asynchronitäten
zwischen den beiden Austauschvorgängen sowie beim Lesen und beim Schreiben
der Daten.
-
Die Daten, die der Mikrorechner auf
die Karte schreiben kann, durchlaufen denselben Bus 21 wie die
von der Karte gelesenen Daten und werden im Pufferspeicher 42 gespeichert.
-
Die Daten, die vom Pufferspeicher
an die Karte geschickt werden, durchlaufen den Konventions-Verwaltungschaltkreis,
der oben beschrieben wurde. Die Daten durchlaufen darauflhin den
Paritäts-Verwaltungsschaltkreis 44,
der den Paritätswert in
Abhängigkeit
von den individuellen Werten der acht Bits der Nutzdaten berechnet,
und der diesen Wert der zehnten Bitstelle zuweist (es ist zu bemerken,
daß die
global an die Karte übertragenen
Daten in dieser Reihenfolge das Startbit, acht Nutzbits, ein Paritätsbit und
zwei Stoppbits umfassen).
-
Die Stopp- und Startbits können an
jeder Stelle, auch nach der Parallel-/Seriell-Umwandlung, in die Übertragung
eingefügt
werden; sie können
vom Mikrorechner erzeugt werden.
-
Das vom Pufferspeicher 42 an
die Karte zu übertragene
Datum durchläuft
daraufhin einen Parallel-/Seriell-Umwandler 46. Von diesem
wird es an einen bidirektionalen Pufferverstärker geschickt, der dieses
an den Eingangs-/Ausgangskontakt der Chipkarte anlegt.
-
Die Sequenzierung des Betriebsablaufs
des Lesers wird zum einen durch ein Referenztakt 48 gewährleistet,
der über
den Kontakt CLK an die Karte ausgegeben wird, und zum anderen, wie
im weiteren beschrieben wird, durch ein Synchronisationssignal für die Bitdauer,
deren Periode ein Vielfaches der Periode des Referenztaktsignals
ist, wobei der Multiplikator variabel ist und direkt vom Mikrorechner
festgelegt wird. Die Taktfrequenz kann beispielsweise 5 MHz betragen.
-
Das Referenztaktsignal wird an einen
programmierbaren Frequenzteiler 50 angelegt, der an seinem
Ausgang eine Frequenz ausgibt, die durch eine Zahl geteilt ist,
welche durch ein digitales Signal SEL-VAL definiert ist, das vom
Mikrorechner ausgegeben wird. Dieses SEL-VAL-Signal stellt das Teilungsverhältnis entweder
unmittelbar dar oder gibt einen Code wieder, der ein Verhältnis unter
vielen möglichen
Verhältnissen
identifiziert. In jedem Fall stellt dieses das Steuersignal des
Teilers mit steuerbarem Teilungsverhältnis dar.
-
Die Ausgabe des Teilers ist ein Signal,
dessen Periode der Bitdauer entspricht. Dieses Signal wird in einem
Synchronisations-Signalverarbeitungsschaltkreis 52 erzeugt
und wird gezählt,
um Synchronisationssignale auszugeben, dessen Periode die gewünschte Bitdauer
darstellen, und deren Anzahl die Bitstelle von Beginn der Datenübertragung
an darstellt. Die Synchronisationssignale können zueinander leicht versetzt
sein: beispielsweise können
die Signale, welche für
den Schreibkanal auf der Karte verwendet werden, leicht gegenüber den
Signale versetzt sein, die für
den Lesekanal verwendet werden.
-
Diese Synchronisationssignale werden
insbesondere zur Steuerung der Parallel-/Seriell- und Seriell-/Parallel-Umwandler
verwendet, so daß die Umwandlung
synchron mit der Übertragung
der Daten von oder auf die Karte stattfindet. Die Signale für die Umwandler
sind nicht nur Signale, deren Periode gleich der Bitdauer ist, sondern
sind zudem Signale, welche die Bitdauern bis zwölf zählen, wenn die zwischen der
Karte und dem Leser übertragenen
Daten zwölf
Bits umfassen. Der Synchronisations- und Zähl-Schaltkreis 52 erzeugt
die verschiedenen verwendeten Signale.
-
Die Karte verwendet den Lesetakt
und arbeitet mit einem Protokoll, das die Bitdauern auf ein bestimmtes
Vielfaches der Taktfrequenz regelt. Standardmäßig entspricht die Bitdauer 372 Taktzyklen,
jedoch gestaltet man die Protokolle jetzt schneller (31 Zyklen)
und es ist die Entwicklung extrem schneller Protokolle zu erwarten
(2 Bits). Der Mikrorechner gibt einen SEL-VAL-Wert aus, um dem Leser
eine Bitdauer vorzugeben, die derjenigen der Karte entspricht. Das
oder die von dem Leser erzeugte(n) Synchronisationssignal(e) kann
(können)
nicht nur an die internen Schaltkreise des Lesers übertragen
werden, sondern auch zum Mikrorechner über Leitungen, die zu diesem
Zweck am Kommunikationsanschluß reserviert
sind.
-
Die Synchronisationssignale werden
gleichermaßen
an andere Schaltkreise des Lesers ausgegeben, beispielsweise an
den Schaltkreis 34 zur Anfrage einer automatischen Neuübertragung;
tatsächlich
muß dieser
Schaltkreis eine Bitfolge erzeugen, die den Befehl zur Neuübertragung
darstellt, wobei die Bitfolge eine Bitdauer aufweist, die dem Protokoll
entspricht.
-
Es ist zu bemerken, daß das Protokoll
standardmäßig mit
einer langen Bitdauer von 372 Taktperioden ausgeführt wird,
so daß die
Antwort zur Reinitialisierung, die mit dieser Bitdauer ausgesendet wird,
das Hochfahren des Schaltkreises gewährleistet, so daß diese
abgetastet werden kann, bis wenigstens lediglich der Mikrorechner
das Protokoll der Karte ermittelt und die Bitdauer im Leser festgelegt hat,
die für
den folgenden Datenaustausch verwendet wird.
-
Der digitale Wert SEL-VAL wird beim
Eingang des Befehls am Teiler 50 in einem flüchtigen
Zustandsregister gespeichert.
-
Ein wichtiger Punkt zur Umsetzung
der Erfindung ist die Tatsache, daß bestimmte Schaltkreise des
Lesers (insbesondere im Inneren des Schaltkreises 22, der
die Steuersignale verarbeitet, welche den Betrieb des Lesers gewährleisten)
Register des Arbeitsspeichers umfassen können, welche bei der Initialisierung
des Betriebs direkt von dem Mikrorechner geladen werden (oder nach
der Antwort auf die Initialisierung der Karte). Das Signal SEL-VAL
ist insbesondere in einem solchen Register gespeichert, um während des
Austauschbetriebs erhalten zu bleiben, bis vom Mikrorechner ein
folgender Änderungsbefehl eintrifft,
der sich auf die Bitdauer bezieht.