DE3812147A1 - Verfahren und ic-karte zum aufzeichnen von daten - Google Patents
Verfahren und ic-karte zum aufzeichnen von datenInfo
- Publication number
- DE3812147A1 DE3812147A1 DE3812147A DE3812147A DE3812147A1 DE 3812147 A1 DE3812147 A1 DE 3812147A1 DE 3812147 A DE3812147 A DE 3812147A DE 3812147 A DE3812147 A DE 3812147A DE 3812147 A1 DE3812147 A1 DE 3812147A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- memory
- recorded
- application
- block
- 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
Links
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/10—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
- G07F7/1008—Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/341—Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/355—Personalisation of cards for use
- G06Q20/3552—Downloading or loading of personalisation data
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C1/00—Registering, indicating or recording the time of events or elapsed time, e.g. time-recorders for work people
- G07C1/10—Registering, indicating or recording the time of events or elapsed time, e.g. time-recorders for work people together with the recording, indicating or registering of other data, e.g. of signs of identity
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/0806—Details of the card
- G07F7/0833—Card having specific functional components
- G07F7/084—Additional components relating to data transfer and storing, e.g. error detection, self-diagnosis
Landscapes
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- Credit Cards Or The Like (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System (AREA)
Description
Die Erfindung betrifft Verfahren und IC-Karten zum Aufzeich
nen von Daten;
insbesondere betrifft die Erfindung Verfahren und IC-Karten
zum Aufzeichnen von zeitlich sequentieller Information in
derartigen IC-Karten.
IC-Karten sind bekannt und zwischenzeitlich so entwickelt,
daß sie einen eingebauten Mikroprozessor und einen einge
bauten nicht flüchtigen Speicher aufweisen die in die IC-
Karte eingebettet sind. Bei weiterentwickelten IC-Karten
kann in den nicht flüchtigen Speicher neu eingeschrieben
werden, und diese Eigenschaft ermöglicht es, die aufgezeich
nete Information zu aktualisieren. Infolgedessen können
derartige IC-Karten als Transaktions-Karten verwendet werden,
bei denen die Daten die sich auf eine Transaktion beziehen,
aufgezeichnet werden können, wenn die Transaktion erfolgt
ist, und bei denen die Daten später ausgelesen werden können,
um das Konto des Karteninhabers zu aktualisieren.
Wenn bei solchen IC-Karten eine Serie von Transaktionsdaten
aufzuzeichnen ist, gibt es typischerweise einen Abschnitt des
Halbleiterspeichers, der zum Aufzeichnen der Transaktionsda
ten abgesetzt ist, und dieser Speicherabschnitt ist in sepa
rate Blöcke unterteilt, die jeweils so ausgelegt sind, daß
sie Daten festhalten, die sich auf eine einzige Transaktion
beziehen. Wenn beispielsweise Information in der IC-Karte
aufzuzeichnen ist, die sich auf kommerzielle Vorgänge bezieht,
so werden Daten, welche die Zeit und Einzelheiten jeder Trans
aktion repräsentieren, in den jeweiligen Blöcken aufgezeich
net, vorzugsweise in der Zeitfolge.
Im allgemeinen ist es sehr bequem, solche Zeitenfolgedaten in
der Reihenfolge zu handhaben, in der die Daten erzeugt werden.
Typischerweise sind die ältesten Daten diejenigen, die zuerst
ihre Nützlichkeit verlieren, und wenn es akzeptabel wird, so
können die Orte, an denen die ältesten Daten aufgezeichnet
sind, überschrieben werden, so daß es möglich wird, die IC-
Karte für viel mehr Transaktionen zu verwenden als es möglich
wäre auf der Basis eines begrenzten Satzes, wobei die Be
schränkung durch die Anzahl von Anwendungsblöcken in dem
begrenzten Speicher gegeben ist.
Wenn jedoch alle zugeordneten Blöcke gefüllt sind, ist es
erforderlich, vorher aufgezeichnete Blöcke zum Aufzeichnen von
neuer Information verfügbar zu machen. Die Blöcke, die zur
Verfügung gestellt werden können, sind diejenigen, welche die
älteste Information enthalten, die bereits von dem Anwender
programm ausgelesen worden ist, so daß sie nicht länger benö
tigt wird.
Da es das Anwenderprogramm ist welches das Erfordernis lie
fert, die Daten zu speichern und später wiederzufinden, ist
es bisherige Praxis gewesen, daß das Anwenderprogramm selbst
eine Adresse in dem eingebauten Halbleiterspeicher definiert,
so daß das Anwenderprogramm die Adresseninformation hat, um
später die Daten wiederzufinden.
Wenn aber das Anwenderprogramm nur damit befaßt ist, die älte
sten Daten zu bestimmen, um neue Speicherplätze zum Aufzeich
nen neuer Daten zu liefern, so ist es jedesmal erforderlich,
wenn neue Datenelemente aufgezeichnet werden sollen, daß das
Anwenderprogramm sämtliche Daten in sämtlichen Blöcken aus
liest und untersucht, um die älteste Datenaufzeichnung zu
isolieren, bevor es die neue Datenaufzeichnung vornehmen kann.
Berücksichtigt man den Umstand, daß ein komplexes Netzwerk
viele IC-Karten umfassen kann, die in zufälliger Verteilung in
einer Vielzahl von weit verteilten Terminals verwendet wer
den, so erscheint einsichtig, daß das Anwenderprogramm einer
erheblichen Belastung ausgesetzt sein kann, wenn es nur dazu
da ist, die ältesten Daten zu bestimmen, um neue Daten für
jede Transaktion aufzuzeichnen.
Aufgabe der Erfindung ist es daher, Verfahren und IC-Karten
zum Aufzeichnen von Daten, insbesondere von zeitlich se
quentieller Information in einer IC-Karte anzugeben, so daß
die Belastung des Anwenderprogramms bei der Zuordnung von
Speicherplätzen reduziert wird, zugleich jedoch die Kompati
bilität mit dem Anwenderprogramm zum Wiederfinden der Infor
mation beibehalten wird.
Weiteres Ziel der Erfindung ist es, die Ausnutzung der ein
gebauten Verarbeitungskapazität der IC-Karte bei der Zuord
nung von Speicherplätzen für Anwenderdaten maximal zu machen
und dabei die Kompatibilität bei den Anwendungen beim Spei
chern und Wiederfinden von solchen Daten beizubehalten.
Gemäß der Erfindung wird ein Verfahren zum Organisieren von
zeitlich sequentiellen Anwenderdaten in einem eingebauten
Halbleiterspeicher einer IC-Karte sowie eine spezielle ausge
bildete IC-Karte zur Speicherung von solchen Daten angegeben.
Die IC-Karte hat einen eingebauten Mikroprozessor zur Steue
rung der Informationsspeicherung in seinem begrenzten Halblei
terspeicher.
Die IC-Karte ist so ausgelegt, daß sie eine Schnittstellen
verbindung mit Anwenderprogrammen bildet, die in externen
Terminals laufen, und daß sie Information speichert, die beim
Laufen solcher Anwenderprogramme erzeugt werden, oder daß sie
früher gespeicherte Information zur Verwendung beim Ablauf
solcher Anwenderprogramme wiederfindet.
Der Mikroprozessor teilt einen ersten Abschnitt des Halblei
terspeichers in eine Vielzahl von Anwendungsblöcken, wobei
jeder Block eine Adresse und Speicherplätze zum Speichern
der Anwendungsdaten enthält. Ein zweiter Abschnitt des Halb
leiterspeichers ist abgesetzt und hat eine Vielzahl von
Speicherplätzen für die Zuordnung von Anwendungsinformation
zu Blockadressen in der Anwendungsdatendatei.
Wenn ein Anwenderprogramm eine Anfrage zum Aufzeichnen einer
neuen Anwendungsdateneingabe erzeugt, so sucht der eingebaute
Mikroprozessor den zweiten Abschnitt des Halbleiterspeichers
ab, um festzustellen, ob es einen nicht-aufgezeichneten bzw.
freien Anwendungsblock gibt. Wenn ein derartiger Block exi
stiert, werden die Anwendungsdaten in dem nächsten verfüg
baren Anwendungsblock aufgezeichnet, und es erfolgt eine
zeitlich sequentielle Aufzeichnung in dem zweiten Abschnitt
des Speichers, die die Zeitfolge der Aufzeichnung und der
Adresse des Anwendungsblockes angibt.
Wenn kein solcher freier Anwendungsblock verfügbar ist, wird
der zweite Abschnitt des Speichers abgesucht, um die älte
sten, früher aufgezeichneten Datenelemente festzustellen, die
Adresse des solche Daten enthaltenden Blockes festzustellen
und diese Adresse zu verwenden, um die neuen Daten an diesem
Speicherplatz neu einzuschreiben bzw. darüberzuschreiben.
Der zweite Abschnitt des Speichers wird dann aktualisiert, so
daß er nach der Aktualisierung die dann gültige, zeitlich se
quentielle Aufzeichnung der Daten in Zuordnung zu den Adressen
der Anwendungsblöcke angibt.
Eine solche Zuordnung der Information ermöglicht es dem ein
gebauten Mikroprozessor, die Anwendungsdaten in Anwendungsblöc
ken aufzuzeichnen, deren Adressen dem Anwenderprogramm unbe
kannt sind, aber der zweite Abschnitt des Speichers enthält
ausreichende Information, so daß das Anwenderprogramm schließ
lich die Daten aufrufen kann, die es für eine bestimmte Ope
ration benötigt.
Die Erfindung wird nachstehend, auch hinsichtlich weiterer
Merkmale und Vorteile, anhand der Beschreibung von Ausfüh
rungsbeispielen und unter Bezugnahme auf die beiliegende
Zeichnung näher erläutert. Die Zeichnung zeigt in
Fig. 1 und 2 Blockschaltbilder einer IC-Karte gemäß einer
ersten Ausführungsform der Erfindung;
Fig. 3 ein Diagramm zur Erläuterung der Organisation einer
Übersetzungseinrichtung für die IC-Karten gemäß Fig.
1 und 2;
Fig. 4 ein Flußdiagramm zur Erläuterung eines Verfahrens
um Aufzeichnen von Daten in den IC-Karten gemäß Fig. 1
und 2;
Fig. 5 ein detaillierteres Flußdiagramm zur Erläuterung des
Datenaufzeichnungsvorganges, der bei dem Verfahren ge
mäß Fig. 4 durchgeführt wird;
Fig. 6 ein detaillierteres Flußdiagramm zur Erläuterung des
Datenlesevorganges, der bei dem Verfahren gemäß Fig. 4
durchgeführt wird; und in
Fig. 7 und 8 Blockdiagramme zur Erläuterung einer zweiten Aus
führungsform einer IC-Karte gemäß der Erfindung.
Im folgenden wird auf Fig. 1 und 2 Bezug genommen, die zwei
Zustände einer ersten Ausführungsform der Erfindung zeigen.
Eine IC-Karte 10 hat einen eingebauten Mikroprozessor 2 und
einen eingebauten Halbleiterspeicher 1, der eine beträchtliche,
aber begrenzte Speicherkapazität hat. Die IC-Karte 10 ist so
ausgebildet, daß sie eine Schnittstellenverbindung mit einem
Anwenderterminal bildet, beispielsweise einer externen Ein
richtung 11, die in Fig. 1 und 2 schematisch angedeutet ist.
Typischerweise enthält die externe Einrichtung 11 folgende
Komponenten: eine Lese/Schreibeinheit; einen Prozessor, um
Anwenderprogramme ablaufen zu lassen, die von dem Terminal ab
zuarbeiten sind; eine Einrichtung, um eine Verbindung mit
der IC-Karte 10 herzustellen, wobei diese Einrichtung schema
tisch als Übertragungsverbindung 12 angegeben ist; und häufig
eine weitere Übertragungsverbindung zu einem zentralen Rech
ner oder einer Datenbasis, die Information für Transaktionen
oder Anwendungsfälle speichert, die durchgeführt werden.
Die Übertragungsverbindung 12 kann einen Satz von Kontakten
in der IC-Karte aufweisen, die zu einem Verbinder in der ex
ternen Einrichtung passen; vorzugsweise ist sie von einer
kontaktlosen Bauart, die ein Paar von Spulen in der IC-Karte
sowie ein passendes Paar von Spulen in der externen Einrich
tung aufweist, die Informationen magnetisch austauschen. Das
eine Paar von Spulen ist üblicherweise so ausgelegt, daß sie
Impulse liefern, die in der IC-Karte gleichgerichtet werden,
um die eingebaute Elektronik zu versorgen, und das zweite
Paar von Spulen ist zum Signalaustausch vorgesehen.
Bei der praktischen Umsetzung der Erfindung bildet der Mikro
prozessor 2 eine Schnittstelle oder Verbindung mit dem Spei
cher 1 in der Weise, daß bestimmte definierbare Speicherfel
der erzeugt werden, die einen Aufzeichnungs- oder Speicher
bereich 3 umfassen, der in eine Vielzahl von Anwendungsblöc
ken unterteilt ist, wobei jeder Block so ausgelegt ist, daß
er eine Einheit von Anwendungsdaten aufzeichnet. Der Spei
cher 1 enthält außerdem ein Inhaltsverzeichnis oder eine
Übersetzungseinrichtung 5, die eine Relation von Anwendungs
blockadressen zur Zeitfolge der Aufzeichnung von Information
in den Anwendungsblöcken herstellt.
Die Übersetzungseinrichtung 5 ist es, die es dem Mikroprozes
sor 2 ermöglicht, eine Steuerung vorzunehmen, wo eine bestimm
te Einheit von Anwendungsdaten in dem Speicherbereich 3 auf
zuzeichnen ist, ohne daß die externe Einrichtung 11 direkt
den Speicherplatz von solchen Daten steuert.
Dennoch enthält die Übersetzungseinrichtung 5 ausreichende
Information, so daß dann, wenn eine bestimmte Einheit von Da
ten über die externe Einrichtung 11 angefordert wird, der
Mikroprozessor 2, der durch die Übersetzungseinrichtung 5 ar
beitet, eine ganz bestimmte spezifizierte Einheit von Daten
finden und zu der externen Einrichtung 11 auslesen kann.
Wie aus Fig. 1 und 2 ersichtlich, ist der Aufzeichnungsbereich
3 des Speichers 1 in eine Vielzahl von Blöcken unterteilt. Die
Adressen der Blöcke sind in der Zeichnung neben jedem Block
angegeben und umfassen die Adressen A 1 bis An. Eine Einheit
von Anwendungsdaten wird an jedem adressierbaren Speicherplatz
gespeichert, wobei die Daten in der Zeichnung mit Di bezeich
net sind.
Außerdem enthalten die Fig. 1 und 2 in Klammern im Anschluß
an die Daten eine Identifizierung der Zeitfolge, in der die
Datenelemente aufgezeichnet wurden; je kleiner die Nummer ist,
desto früher wurden die Daten aufgezeichnet. Es wird darauf
hingewiesen, daß diese Information nicht direkt mit den Da
ten in die Speicherplätze A 1 bis An getragen wird, aber die
Klammerschreibweise wird einfach aus Gründen der Bequemlich
keit zur Erläuterung der Erfindung verwendet.
Vergleicht man Fig. 1 und 2, so erkennt man daß im Falle von
Fig. 1 der Speicherbereich 3 eine Vielzahl von Anwendungsda
tenaufzeichnungen aufweist, die darin an zeitlich sequentiel
len Speicherplätzen an den Adressen aufgezeichnet sind, die
mit der Adresse A 1 beginnen und sich bis zur Adresse Aj fort
setzen, welche die Dateneinheit Dj enthält, also die ganz
zuletzt aufgezeichnete Einheit. Man erkennt auch, daß es
einen Abschnitt 4 im Speicherbereich 3 gibt, der zusätzliche
Anwendungsblöcke hat, in denen keine Information aufgezeichnet
ist.
Fig. 1 zeigt die Situation, wo das Aufzeichnungssystem sich
in dem Stadium der Aufzeichnung einer neuen Einheit von Infor
mation befindet. Bei dieser Betriebsart sucht der Mikropro
zessor 2 die Übersetzungseinrichtung 5 ab, um festzustellen,
daß es verfügbare Informationsblöcke in dem Abschnitt 4 gibt,
in denen noch keine Anwendungsdaten aufgezeichnet worden
sind.
Der Mikroprozessor 2 arbeitet zusammen mit der Übersetzungs
einrichtung 5 und bestimmt die nächste sequentielle Adresse,
an der keine Daten aufgezeichnet sind, und zeichnet die näch
ste Anwendungsdateneinheit an dieser Adresse auf, wobei diese
Adresse in Fig. 1 als Am identifiziert wird, welche sich am
Ort der Adresse Aj+1 befindet. Fig. 1 zeigt, daß die Daten
einheit Dj+1 an dieser Adresse aufgezeichnet wird, und das
nächte sequentielle Datenelement ist, das nach dem j-ten
Element aufgezeichnet wird; mit anderen Worten, es handelt
sich um das (j+1)-te Element.
Fig. 2 zeigt einen anderen Zustand, bei dem die IC-Karte so
ausgiebig benutzt worden ist, daß Anwendungsinformation in
wirklich allen Anwendungsblöcken im Speicherbereich 3 aufge
zeichnet worden ist. Man erkennt, daß an den Adressen A 1 bis
An jeweils Daten aufgezeichnet worden sind, nämlich Datenauf
zeichnungen D 1 bis Dn. Die Klammerangaben zeigen, daß die
Übersetzungseinrichtung 5 die Information enthält, daß die
Daten Dk an der Adresse Ak die ältesten Daten sind, die in
dem Anwendungsspeicher aufgezeichnet sind.
Wenn der Mikroprozessor 2 den Befehl erhält, eine neue Daten
einheit aufzuzeichnen, wird er infolgedessen zuerst die Über
setzungseinrichtung 5 absuchen, um bei der Absuche der zeit
lich sequentiellen Daten die Identifizierung der ältesten
Daten festzustellen, die Übersetzungseinrichtung 5 verwenden,
um die Adresse festzustellen, die den ältesten Daten zugeord
net ist, also die Adresse Ak, und dann die neue Dateneinheit
in die Adresse Ak einschreiben, wobei die Daten Dk überschrie
ben werden.
Die Übersetzungseinrichtung 5 wird dann aktualisiert, um an
zugeben, daß die Daten an der Adresse Ak die neuesten, dann
im Speicher aufgezeichneten Daten sind und daß die an der
Adresse Ak+1 aufgezeichneten Daten dann die ältesten Daten
sind, die der Speicher enthält, und um außerdem die zeitlich
sequentielle Anzeige für jedes andere Datenbit um 1 zu ver
ringern, um das jeweilige Alter der jeweiligen Dateneingabe
anzugeben.
Bei der praktischen Umsetzung der Erfindung stellt die oben
beschriebene Übersetzungseinrichtung 5 im allgemeinen die Re
lation der zeitlichen Folge der Information, die aufgezeich
net worden ist, mit der Anwendungsbereichadresse her, bei der
die Information aufgezeichnet worden ist, um es dem Mikro
prozessor zu ermöglichen, nicht nur in intelligenter Weise
verbrauchte oder überholte Daten auszurangieren oder zu über
schreiben, sondern auch dem Mikroprozessor die Fähigkeit zu
verleihen, Anwendungsdaten zu identifizieren, die zum Ausle
sen zur externen Einrichtung 11 benötigt werden.
Fig. 3 zeigt ein Beispiel der Organisation der Übersetzungs
einrichtung 5, die sich in dem Halbleiterspeicher 1 befindet.
Wie in Fig. 3 dargestellt, bildet die Übersetzungseinrichtung
5 eine Zuordnung von zwei wichtigen Informationselementen, von
denen eines die zeitliche Folge der Datenaufzeichnung ist,
die in Feld 20 angegeben ist, während das andere die Adresse
im Anwendungsspeicher ist, bei der die Information aufgezeich
net worden ist, wobei diese Information im Adressenfeld 21
gespeichert ist.
Man erkennt somit, daß dann, wenn die Übersetzungseinrichtung
5 den Inhalt gemäß Fig. 3 hat, die älteste sequentielle Daten
angabe, die im Feld 20 mit der niedrigsten Zahl 1 angegeben
ist, am Speicherplatz 22 gespeichert ist und die Adresseniden
tifizierung Ak hat. Aus Fig. 2 ist ersichtlich, daß die zeit
lich sequentielle Information, die am Speicherplatz 22 iden
tifiziert worden ist durch die Daten Dk gegeben ist, welche
an der Adresse Ak gespeichert sind.
Wenn somit ein neues Datenelement im Anwendungsbereich oder
Speicherbereich 3 aufzuzeichnen ist, sucht der Mikroprozessor
2 zunächst die Übersetzungseinrichtung 5 ab, um das älte
ste Datenwort festzustellen, verwendet dann die Adressenin
formation Ak, die dem ältesten Datenwort zugeordnet ist, um
den Anwendungsspeicher zu adressieren und dadurch die neuen
Daten an der Stelle der Daten Dk darüberzuschreiben, die
vorher an diesem Speicherplatz gespeichert waren.
Das Ausführungsbeispiel der Speicherstruktur gemäß Fig. 3
enthält ein weiteres Feld 23, das als Anzeigefeld dient. Die
ses Anzeigefeld 23 in der dargestellten Ausführungsform ist
von der Art eines Kennzeichens oder einer Markierung, die an
gibt, ob an dem Datenplatz, der mit der zugeordneten Adres
se identifiziert wird, Anwendungsdaten aufgezeichnet sind.
Beispielsweise wird die jeweilige Anzeige Ik auf "1" ge
setzt, wenn an der zugeordneten Blockadresse Daten aufgezeich
net sind, und wird auf "0" gesetzt, wenn vorher noch keine
Daten in diesem Block aufgezeichnet worden sind.
Wenn somit ein Anwenderprogramm feststellt, daß zusätzliche
Daten gespeichert werden sollten, und diese Daten an den
Mikroprozessor 2 gibt, so sucht der Mikroprozessor zuerst das
Feld 23 ab, um festzustellen, ob es einen offenen oder freien
Block zur Aufzeichnung gibt, und wenn er bei dieser Suche
eine Null feststellt, so zeichnet er die Information an der
zugeordneten Adresse auf.
Zur gleichen Zeit schaltet er den Wert der Anzeige im Feld
23 um und gibt eine Identifizierung in das Feld 20 der Zeiten
folge ein, um anzugeben, daß die Daten an der Adresse, bei
spielsweise der Adresse Ai jetzt aufgezeichnet sind und die
ganz neu aufgezeichneten Daten sind. Wenn bei der anderen Be
triebsart das Anzeigefeld 23 abgesucht und festgestellt wird,
daß es keine offenen oder freien Felder gibt, dann wird das
Feld 20 der Zeitenfolge abgesucht, um die ältesten Daten zu
ermitteln, wie es oben im einzelnen beschrieben worden ist.
Während eine laufende Folge von ganzen Zahlen in dem Daten
feld 20 enthalten sein kann, um die zeitliche Folge der Daten
aufzeichnung anzugeben, erscheint einsichtig, daß dieses Feld
auch das tatsächliche Datum der Aufzeichnung oder eine kombi
nierte Informationsspeicherung enthalten kann, die sowohl eine
ganze Zahl als auch das Datum umfaßt.
In einigen Fällen kann die tatsächliche Dateninformation nütz
licher sein als eine ganze Zahl, um den Mikroprozessor zu
unterstützen, eine Anfrage von der externen Einrichtung 11
nach einer bestimmten Dateneinheit zu beantworten. Alternativ
kann die ganze Zahl für die Zeitenfolge im Feld 20 adäquat
sein, um es dem Mikroprozessor 2 zu ermöglichen, einen oder
mehrere gewählte Blöcke in dem Speicherbereich 3 zu suchen,
um eine Transaktion zu lokalisieren, die sich auf ein bestimm
tes Datum in dem Feld bezieht. Genauer gesagt, die Vorgangs
information, die im jeweiligen Anwendungsblock gespeichert
wird, kann so beschaffen sein, daß sie ein Datum, an welchem
die Transaktion durchgeführt wird, sowie andere Einzelheiten
der tatsächlich durchgeführten Transaktion enthält.
Der Zusammenhang der vorstehend im Zusammenhang mit Fig. 1 bis
3 beschriebenen Konstellation wird nachstehend unter Bezug
nahme auf die Flußdiagramme in Fig. 4 bis 6 näher erläutert.
Fig. 4 zeigt ein Flußdiagramm des gesamten Vorganges. Fig. 5
zeigt eine Ergänzung für die Aufzeichnung einer neuen Ein
heit von Anwendungsdaten im Speicherbereich 3, während Fig. 6
die Identifizierung und das Auslesen von vorher aufgezeichne
ten Anwendungsdatenelementen zeigt.
Die anhand von Fig. 5 und 6 beschriebenen Teilvorgänge sind
diejenigen, die in der IC-Karte 10 unter der Steuerung des
Mikroprozessors 2 durchgeführt werden während Fig. 4 zu
sätzlich die Schritte umfaßt, die in der externen Einrichtung
unter der Steuerung ihres Prozessors und in Wechselwirkung
zwischen der externen Einrichtung einerseits und der IC-Karte
andererseits durchgeführt werden.
Im folgenden wird auf Fig. 4 Bezug genommen. Man sieht, daß
nach dem Start ein erster Schritt 41 in der externen Einrich
tung 11 durchgeführt wird, bei dem ein Befehl von der externen
Einrichtung erzeugt und zu der IC-Karte 10 übertragen wird.
Der Befehl kann die Form eines Lesebefehls haben, mit dem die
externe Einrichtung Information von der IC-Karte anfordert,
die in ihrem Speicher gespeichert worden ist; es kann sich
auch um eine Schreiboperation handeln, bei der die externe
Einrichtung die IC-Karte informiert, daß sie Daten hat, die
in den eingebauten Speicher eingeschrieben werden sollen;
es kann sich auch um einen Befehl handeln, der nicht sofort
einen Lese- oder Schreibschritt mit sich bringt, beispiels
weise einen Befehl, um eine bestimmte Berechnung bei Daten
vorzunehmen, die bereits in der IC-Karte gespeichert worden
sind.
Nachdem der Befehl beim Schritt 41 eingegeben worden ist,
wird beim Schritt 42 ein Test durchgeführt, um festzustellen,
ob der Befehl das Aufzeichnen von Daten aufruft. Wenn dies
der Fall ist, wird ein Schritt 43 durchgeführt, mit dem die
IC-Karte die aufzuzeichnenden Anwendungsdaten erhält. Ein
derartiger Empfang geschieht durch eine Übertragung von der
externen Einrichtung 11 durch den Mikroprozessor 2, so daß
der Mikroprozessor 2 dann die Steuerung hinsichtlich der Be
stimmung übernimmt, wo die Daten im Speicherbereich 3 auf
zuzeichnen sind.
Der Prozeß, bei dem die Bestimmung erfolgt, ist in Fig. 5
dargestellt. Aus Fig. 5 ist ersichtlich, daß der eingebaute
Mikroprozessor 2 zunächst einen Test durchführt um festzu
stellen, ob es irgendwelche freien Anwendungsblöcke in dem
Speicherbereich 3 gibt. Wenn es die gibt, wird ein Schritt 52
durchgeführt, um die niedrigste Adresse Am in dem freien Be
reich 4 festzustellen.
In dem Beispiel gemäß Fig. 1 repräsentieren die Adressen A 1
bis Aj den aufgezeichneten Bereich, in dem bereits früher Da
ten aufgezeichnet worden sind, während die Adressen Aj+1 bis
An einen freien Bereich 4 ohne vorherige Aufzeichnung angeben.
Somit wird das neue Datenelement Dj+1 an der niedrigsten
Adresse Aj+1 in dem freien Bereich 4 gespeichert, und die
zeitliche Folge (j+1) wird der Adresse Aj+1 zugeordnet. Nach
dem die neue Adresse festgestellt worden ist, wird ein
Schritt 53 durchgeführt, um die neue Einheit von Anwendungs
daten an der Adresse Am in dem Speicherbereich 3 aufzuzeich
nen. Daraufhin wird ein Schritt 54 durchgeführt, um die zeit
liche Folge für die Adresse Am zu setzen.
Nimmt man auf Fig. 3 Bezug, so ist einsichtig, daß eine Zeit
folge in dem Feld 20 zugeordnet wird, die um Eins höher ist
als die vorher zugeordnete höchste Zeitfolge, und daß eine
ganze Zahl in dem Feld 20 aufgezeichnet wird, die der Adres
se Am zugeordnet ist. Alternativ können das tatsächliche Da
tum und/oder die Zeit der Transaktion in dem Feld 20 aufge
zeichnet werden.
Infolgedessen wird Information in der Übersetzungseinrichtung
5 des Speichers gespeichert, welche der tatsächlichen Spei
cheradresse innerhalb der Anwendungsblöcke eine Anzeige zuord
net, die vom Anwenderprogramm erkennbar ist so daß dann, wenn
das Anwenderprogramm Daten wieder aufrufen will, eine Über
setzung in der Tabelle des Inhaltsverzeichnisses oder der
Übersetzungseinrichtung 5 vorgenommen werden kann, um be
stimmte Daten in den Anwendungsblöcken im Speicherbereich 3
zu adressieren. Daraufhin wird diese Programmschleife been
det.
Wenn der Test 51 ergibt, daß keine freien Bereiche vorhanden
sind, also der Zustand gemäß Fig. 2 vorliegt, so zweigt das
Programm zu einem Schritt 55 ab, bei dem das Feld 20 gemäß
Fig. 3 abgetastet wird, um die älteste Anzeige in dem Feld
20 der Zeitfolge festzustellen. Der Rest des Datenwortes gibt
dann im Feld 21 die Adresse Ak an, die der ältesten Aufzeich
nung zugeordnet ist.
Das Programm geht dann zu einem Schritt 56 weiter, bei dem
der Block Ak adressiert wird und die neuen Daten an diesem
Speicherplatz aufgezeichnet werden. Nachdem die Daten aufge
zeichnet sind, wird die Übersetzungseinrichtung 5 bei einem
Schritt 57 aktualisiert, um die Zeitfolge der jeweiligen
Adressen A 1 bis An zu aktualisieren.
Mit anderen Worten, wenn das Feld 20 der Zeitfolge einen Satz
von aufeinanderfolgenden ganzen Zahlen enthält, wobei die
niedrigste ganze Zahl die ältesten Daten angibt, so wird je
de ganze Zahl in dem Feld 20 um 1 verringert, mit Ausnahme
der ganzen Zahl, die der Adresse Ak zugeordnet ist, die dann
auf den Wert von n gesetzt wird, also den höchsten Wert in
diesem Inhaltsverzeichnis. Nachdem die Daten an dem geeigneten
Platz eingeschrieben worden sind und das Inhaltsverzeichnis
der Übersetzungseinrichtung aktualisiert worden ist, wird der
Schreibvorgang dann beendet.
Im folgenden wird auf Fig. 4 Bezug genommen; wenn der Schritt
44 zur Bestimmung der Blockadressen, das Aufzeichnen der Da
ten und das Aktualisieren der Übersetzungseinrichtung beendet
sind, führt die IC-Karte einen Schritt 45 durch, um der ex
ternen Einrichtung 11 eine Antwort zu liefern, die angibt, daß
die erforderliche Operation durchgeführt worden ist.
Kehren wir zum Test 42 im Ablauf gemäß Fig. 4 zurück. Wenn
festgestellt wird, daß der Befehl das Aufzeichnen von Daten
nicht aufruft, so wird ein Test 46 durchgeführt, um festzu
stellen, ob der Befehl das Lesen von Daten aufruft. Wenn dies
nicht der Fall ist, geht der Ablauf zu einem Schritt 49 wei
ter, um irgendeine andere, beliebige Operation durchzuführen,
die aufgerufen worden ist, und die weder das Lesen noch das
Schreiben von Information erfordert.
Wenn jedoch beim Test 46 festgestellt wird, daß das Lesen von
Daten erforderlich ist, so zweigt der Ablauf zu einem Schritt
47 ab, der im einzelnen in Fig. 6 dargestellt ist; dabei wer
den die Blockadressen aus der Übersetzungseinrichtung 5 auf
gerufen und die Daten aus dem adressierten Anwendungsblock
ausgelesen.
Im folgenden wird auf Fig. 6 Bezug genommen. Man erkennt, daß
ein Schritt 61 durchgeführt wird, bei dem die Adresse oder
Identifizierung, die von dem Anwenderprogramm geliefert wird,
in eine Blockadresse übersetzt wird, beispielsweise eine
Adresse Ak, woraufhin dieser Anwendungsblock in der Anwen
dungsdatei adressiert wird. Wenn in geeigneter Weise der
Speicherplatz adressiert worden ist, der die gewünschten Da
ten enthält, wird ein Schritt 62 durchgeführt, um die Daten
am adressierten Block zu lesen und sie durch den Mikropro
zessor 2 zu der externen Einrichtung 11 zu übertragen.
Dann wird ein Test 63 durchgeführt, um festzustellen, ob alle
angeforderten Daten ausgelesen worden sind. Wenn dies der
Fall ist, endet der Ablauf. Wenn dies nicht der Fall ist,
widr ein Schritt 64 durchgeführt, um die nächste Blockadres
se zum Lesen zu bestimmen. Wenn die Daten sequentiell aufge
zeichnet sind und wenn das Anwenderprogramm sequentielle Daten
angefordert hat, beispielsweise alle Transaktionen, die im
Dezember durchgeführt worden sind so kann der Schritt 64 ein
fach die Blockadresse zum Wert Ak+1 inkrementieren, dann wie
der den Schritt 62 durchführen, um die Daten bei diesem adres
sierten Block zu lesen und sie zu der externen Einrichtung
11 zu schicken.
Wenn andererseits die externe Einrichtung das Auslesen von
nicht aneinander angrenzenden Datenblöcken angefordert hat,
so wird beim Schritt 64 eine weitere Übersetzung durchgeführt,
und zwar zwischen der Information, die von der externen Ein
richtung 11 angefordert wird, und der Anwendungsblockadresse
Ai, bei der der Mikroprozessor diese Information früher ge
speichert hat.
Kehren wir wieder zu Fig. 4 zurück, so erkennt man, daß nach
dem Lokalisieren und Auslesen von Information ein Schritt 48
durchgeführt wird, um eine Antwort und Daten an die externe
Einrichtung 11 zu liefern, woraufhin der Ablauf endet.
Die Fig. 7 und 8 zeigen eine alternative Ausführungsform ge
mäß der Erfindung, die in einigen Fällen zweckmäßig sein
kann. Dabei ist die Übersetzungseinrichtung 5 vereinfacht und
als Anzeige 6 ausgeführt, welche das älteste Datenelement an
gibt und mit der der Mikroprozessor 2 in der Lage ist, nicht
nur das älteste Datenelement zu lokalisieren, sondern auch
jedes andere Datenelement, das von der externen Einrichtung
angefordert wird, und zwar auf der Basis des Ausgangspunktes,
der von der Anzeige 6 geliefert wird. Es ist bevorzugt, daß
sich die Anzeige 6 in einem anderen Bereich befindet als der
Anwendungsblock-Speicherbereich 3.
Fig. 7 zeigt einen Zustand ähnlich der Fig. 1, wobei der An
wendungsblock-Speicherbereich 3 nicht voll ist, sondern einen
Bereich 4 mit freien Blöcken enthält. In Fig. 7 gibt die An
zeige 6 einen Platz A 1 an, der die ältesten Daten enthält, die
in dem Anwendungsblock-Speicherbereich 3 aufgezeichnet sind,
da der Speicherbereich noch nicht gefüllt ist und ein Über
schreiben noch nicht stattgefunden hat.
Fig. 8 zeigt andererseits eine Situation, wo sämtliche An
wendungsblöcke im Speicherbereich 3 voll sind, und die Anzei
ge 6 identifiziert den Platz Ak als denjenigen, wo die älte
sten Daten Dk gespeichert sind.
Mit anderen Worten, solange ein freier Bereich 4 in dem
Speicherbereich 3 vorhanden ist, wird gemäß Fig. 7 die Anzei
ge 6 die Adresse A 1 angeben, an der sich das zuerst gespei
cherte Datenelement D 1 befindet. Sobald einmal Daten an allen
Adressen A 1 bis An im Speicherbereich 3 benutzt und Daten auf
gezeichnet worden sind, werden neue Daten an derjenigen Adres
se neu eingeschrieben oder darübergeschrieben, welche die
niedrigste und damit älteste Zeitfolgeanzeige hat.
In dem Falle, wo beispielsweise die Daten Dk die ältesten Da
ten gemäß Fig. 8 sind, gibt die Anzeige 6 die Adresse Ak des
Speicherplatzes an, an welchem das Datenelement Dk gespeichert
ist. Wenn somit eine neue Anwendungsdateneinheit aufzuzeich
nen ist, lokalisiert der Mikroprozessor 2 über die Anzeige 6
die Adresse Ak im Anwendungsblock-Speicherbereich 3, welche
die ältesten Daten enthält, und schreibt dann das neue Daten
element in diese Adresse ein. Daraufhin wird der Anzeigewert
auf die Adresse Ak+1 inkrementiert, um dadurch dann das älte
ste Datenelement im Speicherbereich 3 anzugeben. Es ist ein
sichtig, daß dann, wenn die Anzeige 6 die Adresse An erreicht,
sie vom Wert An auf den Wert A 1 inkrementiert wird.
Als weitere Alternative kann ein Index zur Angabe der
Zeitfolge der aufgezeichneten Daten an die jeweiligen aufge
zeichneten Datenelemente angefügt werden, so daß der Mikro
prozessor 2 aus einem direkten Suchvorgang der Anwendungs
blöcke feststellen kann welches die nächsten zu überschrei
benden Daten sind.
In jedem Falle können die Adressen A 1 bis An in dem Anwen
dungsblock-Speicherbereich 3 des Speichers 1 entweder körper
lich oder logisch definiert werden.
Als weiteres Merkmal kann eine Markierung in dem Speicher 1
vorgesehen sein, die auf einen bestimmten Wert gesetzt wird,
wenn der Mikroprozessor 2 zuerst feststellt, daß keine freien
Bereiche in dem Speicherbereich 3 mehr vorhanden sind. Durch
Prüfen der Markierung kann der Mikroprozessor 2 somit rasch
ohne Suchvorgang jeden der Plätze feststellen, wo ein freier
Anwendungsblock verfügbar ist, um den Verfahrensablauf zu be
schleunigen.
In bestimmten Fällen ist es wünschenswert, das Überschreiben
von bestimmten Datenelementen zu verhindern. Beispielsweise
kann das Anwenderprogramm verlangen, daß bestimmte Daten
eingeschrieben, aber später nicht gelöscht werden, und der
Mikroprozessor schreibt dann die Daten an einer Adresse ein,
die er bestimmt, aber gleichzeitig wird ein Flag oder eine
Markierung gesetzt, um das Löschen dieser Daten zu verhindern.
Wenn ein neues Datenelement zum Einschreiben fertig ist und
wenn ein nicht zu löschendes Datenelement dann das älteste Da
tenelement im Speicherbereich 3 ist, so wird beim Programm
ablauf dieser Datenwert einfach übersprungen, um das nächst
älteste Datenelement zum Überschreiben zu finden.
Es handelt sich um eine weitere Darstellung der Steuerung
die das Anwenderprogramm außer dem Schreiben oder Lesen von
Daten vornehmen kann, auch wenn es nicht direkt die Speicher
plätze steuert, an denen die Daten eingeschrieben oder gelesen
werden. Somit kann bei einer kommerziellen Transaktionskarte
beispielsweise das Anwenderprogramm eine Prüfung vornehmen,
um zu gewährleisten, daß die älteste Dateneinheit beispiels
weise mindestens einen Monat alt ist, bevor diese überschrie
ben wird.
Wenn die Karte bei Anwendungen verwendet wird, wo eine Ab
rechnung monatlich erfolgt, und bestimmte Datenelemente äl
ter sind als einen Monat, so sind sie nicht mehr erforderlich
und können überschrieben werden. Wenn jedoch das Datenelement
weniger als einen Monat alt ist, besteht eine Wahrscheinlich
keit, daß hierfür noch keine Rechnung gestellt worden ist,
und somit wird eine entsprechende Transaktion verweigert, wenn
der Mikroprozessor 2 entsprechend programmiert ist.
Wenn bei einer weiteren Alternative die Karte ausgelesen wird,
um eine Abrechnung zu erstellen, kann eine Markierung oder ein
Flag bei jedem Datenelement gesetzt werden, das von der Ab
rechnung erfaßt worden ist, und nur mit Markierungen versehene
Datenelemente werden überschrieben, wenn spätere Transaktionen
durchgeführt werden.
Somit ist es möglich und oft nützlich für das Anwenderpro
gramm, eine bestimmte Kontrolle und Steuerung des Überschrei
bens von Daten vorzunehmen, auch wenn nur der eingebaute
Mikroprozessor selbst dafür vorgesehen ist, daß er die Lese-
oder Schreiboperationen an den Speicherplätzen vornimmt, die
er wählt.
Aus der vorstehenden Beschreibung ergibt sich, daß ein verbes
sertes Verfahren mit einer dazugehörigen IC-Karte angegeben
wird, um Daten in zeitlich sequentieller Folge aufzuzeichnen.
Das Anwenderprogramm wird dadurch von der Aufgabe befreit,
Speicherplätze in dem eingebauten Speicher zu bestimmen. Da
durch, daß in der IC-Karte eine Übersetzung durchgeführt wird,
hat diese die Möglichkeit, vorher aufgezeichnete Daten selek
tiv wieder aufzurufen.
Der eingebaute Mikroprozessor zeichnet jedes neue Datenelement
in zeitlich sequentiellem Format auf und führt eine Über
setzungstabelle, welche die Blockadressen zuordnet, wobei die
Daten mit der Zeitfolge aufgezeichnet werden, in der in den
Speicher eingegeben wurde. Somit kann durch rasches Abta
sten der Tabelle in der Übersetzungseinrichtung der Mikropro
zessor ohne weiteres die ältesten Datenelemente finden, um
eine Blockadresse zum Aufzeichnen eines neuen Datenelementes
zur Verfügung zu stellen.
- Fig. 1:
1 Speicher
2 Mikroprozessor
3 Speicherbereich
4 freier Bereich
5 Übersetzungseinrichtung
10 IC-Karte
11 externe Einrichtung
12 Übertragungsverbindung Fig. 2:
1 Speicher
2 Mikroprozessor
3 Speicherbereich
5 Übersetzungseinrichtung
10 IC-Karte
11 externe Einrichtung
12 ÜbertragungsverbindungFig. 3:
20 Zeitfolge
21 Adresse
22 Speicherplatz
23 Anzeige Fig. 4:
41 Befehl von der externen Einrichtung 11 an die IC-Karte 10 eingeben
42 Gibt der Befehl einen Aufruf zum Aufzeichnen von Daten?
43 Daten zum Aufzeichnen empfangen?
44 Blockadresse bestimmen, Daten aufzeichnen und Übersetzungsdatei aktualisieren
45 Antwort liefern
46 Enthält der Befehl einen Aufruf zum Lesen von Daten?
47 Blockadresse aus der Übersetzungsdatei auffinden und Daten lesen
48 Antwort und Daten liefern
49 Andere Operation als Datenaufzeichnung und Datenlesen durchführen und Antwort liefern
YES JA
NO NEINFig. 5:
51 Gibt es freie Bereiche im Speicherbereich 3?
52 Niedrigste Adresse Am im freien Bereich feststellen
53 Neue Daten in der Adresse Am aufzeichnen
54 Zeitliche Folge der Adresse Am setzen
55 Adresse Ak mit der niedrigsten zeitlichen Folge feststellen
56 Neue Daten an der Adresse Ak aufzeichnen
57 Zeitliche Folge der Adressen A 1 bis An aktualisieren
YES JA
NO NEIN
END ENDEFig. 6:
61 Anwendungsadresse in Blockadresse in der Anwendungsdatei übersetzen
62 Daten am adressierten Block lesen
63 Sind alle Daten ausgelesen?
64 Nächste zu lesende Blockadresse bestimmen
YES JA
NO NEIN
END ENDEFig. 7:
1 Speicher
2 Mikroprozessor
3 Speicherbereich
4 freier Bereich
6 Anzeige
10 IC-Karte
11 externe Einrichtung
12 ÜbertragungsverbindungFig. 8:
1 Speicher
2 Mikroprozessor
3 Speicherbereich
6 Anzeige
10 IC-Karte
11 externe Einrichtung
12 Übertragungsverbindung
Claims (10)
1. Verfahren zum Organisieren und Aufzeichnen von zeitlich
sequentiellen Anwendungsdaten in einem eingebauten Halb
leiterspeicher einer IC-Karte, wobei die IC-Karte einen
eingebauten Mikroprozessor hat, um die Speicherung der
Information in dem Halbleiterspeicher zu steuern und um
eine Schnittstellenverbindung mit Anwenderprogrammen her
zustellen, die in Anwenderterminals arbeiten,
gekennzeichnet durch folgende Schritte:
- - Teilen eines ersten Abschnitts des Halbleiterspeichers in eine Vielzahl von Anwendungsblöcke, wobei jeder An wendungsblock eine Adresse und einen Speicherplatz hat, um Anwendungsinformation zu speichern,
- - Bilden eines zweiten Abschnitts des Halbleiterspeichers mit einer Vielzahl von Plätzen, um Anwendungsinformation den Anwendungsblockadressen in dem Halbleiterspeicher zu zuordnen,
- - Beantworten einer Anfrage zum Aufzeichnen einer neuen Anwendungsdateneingabe durch Feststellen, ob es irgendwel che freien Anwendungsblöcke in dem ersten Abschnitt des Speichers gibt,
- - Aufzeichnen der neuen Anwendungsdaten in einem der freien Anwendungsblöcke, wenn freie Anwendungsblöcke vorhanden sind,
- - Bestimmen des Blockes mit den ältesten aufgezeichneten Daten durch Absuche des zweiten Abschnitts des Speichers, wenn keine freien Anwendungsblöcke vorhanden sind, und Aufzeichnen der neuen Anwendungsdaten an der Adresse, die den ältesten aufgezeichneten Daten zugeordnet ist, und
- - Führen einer Aufzeichnung im zweiten Abschnitt des Spei chers über die Sequenz oder Folge, in der die Daten in den Anwendungsblöcken aufgezeichnet worden sind.
2. Verfahren nach Anspruch 1,
dadurch gekennzeichnet,
daß der Schritt der Führung von Aufzeichnungen folgendes umfaßt:
Erstellen einer Tabelle, die eine Relation der zeitlichen Folge, in der die Information aufgezeichnet wurde, mit den Blockadressen herstellt, an denen die Daten aufgezeichnet wurden, und
Aktualisieren der zeitlichen Folge jedesmal dann, wenn eine neue Dateneingabe aufgezeichnet wird.
daß der Schritt der Führung von Aufzeichnungen folgendes umfaßt:
Erstellen einer Tabelle, die eine Relation der zeitlichen Folge, in der die Information aufgezeichnet wurde, mit den Blockadressen herstellt, an denen die Daten aufgezeichnet wurden, und
Aktualisieren der zeitlichen Folge jedesmal dann, wenn eine neue Dateneingabe aufgezeichnet wird.
3. Verfahren nach Anspruch 2,
dadurch gekennzeichnet,
daß eine Tabelle geführt wird, die ein Feld für jeden Ein
trag enthält, um anzugeben, ob vorher Daten an den zugeord
neten Blockadressen gespeichert worden sind.
4. Verfahren nach einem der Ansprüche 1 bis 3,
gekennzeichnet durch den Schritt, daß die im zweiten Ab
schnitt des Speichers geführte Aufzeichnung verwendet wird,
um Daten zu identifizieren, die auf Anfrage auszulesen
sind.
5. Verfahren nach einem der Ansprüche 1 bis 4,
gekennzeichnet durch den Schritt, daß das Führen der Auf
zeichnung die Aktualisierung einer Anzeige im zweiten Ab
schnitt des Speichers umfaßt, welche die älteste Datenauf
zeichnung angibt, die in einem Block im ersten Abschnitt
des Speichers gespeichert ist.
6. IC-Karte zur Bildung einer Schnittstelle mit einem Anwen
dersystem und zum Aufzeichnen von Anwendungsdaten, die
in zeitlicher Folge von dem Anwendersystem empfangen wer
den,
dadurch gekennzeichnet,
daß die IC-Karte (10) einen eingebauten Mikroprozessor (2) und einen eingebauten Halbleiterspeicher (1) umfaßt,
daß dem Mikroprozessor (2) eine Einrichtung zugeordnet ist,
um einen ersten Bereich (3) des Speichers (1) in adressier bare Anwendungsblöcke zum Speichern von Anwendungsdaten zu unterteilen,
daß ein zweiter Abschnitt (5) des Speichers (1) vorgesehen ist, um Blockadressen im ersten Abschnitt (3) des Speichers (1) der zeitlichen Folge zuzuordnen, in der die Daten in den Blöcken aufgezeichnet worden sind,
daß dem Mikroprozessor (2) eine Einrichtung zugeordnet ist, um den zweiten Abschnitt (5) des Speichers (1) abzusuchen, um freie Blöcke zum Aufzeichnen von neuen Anwendungsdaten festzustellen, wenn ein freier Block verfügbar ist,
daß eine Einrichtung (23) vorgesehen ist, um festzustellen,
wenn alle Anwendungsblöcke Aufzeichnungsinformation ent halten, um den zweiten Abschnitt (5) des Speichers (1) abzusuchen, um den Block zu lokalisieren, der die ältesten Aufzeichnungsdaten enthält, und um die neuen Anwendungs daten in diesem Block aufzuzeichnen,
und daß eine Einrichtung (2) vorgesehen ist, um den zwei ten Abschnitt (5) des Speichers (1) zu aktualisieren, um die Beseitigung des ältesten Datenblockes und die An wesenheit des neuesten Datenblockes anzugeben, um dadurch eine Aufzeichnung über die zeitliche Folge der Daten bei zubehalten.
daß die IC-Karte (10) einen eingebauten Mikroprozessor (2) und einen eingebauten Halbleiterspeicher (1) umfaßt,
daß dem Mikroprozessor (2) eine Einrichtung zugeordnet ist,
um einen ersten Bereich (3) des Speichers (1) in adressier bare Anwendungsblöcke zum Speichern von Anwendungsdaten zu unterteilen,
daß ein zweiter Abschnitt (5) des Speichers (1) vorgesehen ist, um Blockadressen im ersten Abschnitt (3) des Speichers (1) der zeitlichen Folge zuzuordnen, in der die Daten in den Blöcken aufgezeichnet worden sind,
daß dem Mikroprozessor (2) eine Einrichtung zugeordnet ist, um den zweiten Abschnitt (5) des Speichers (1) abzusuchen, um freie Blöcke zum Aufzeichnen von neuen Anwendungsdaten festzustellen, wenn ein freier Block verfügbar ist,
daß eine Einrichtung (23) vorgesehen ist, um festzustellen,
wenn alle Anwendungsblöcke Aufzeichnungsinformation ent halten, um den zweiten Abschnitt (5) des Speichers (1) abzusuchen, um den Block zu lokalisieren, der die ältesten Aufzeichnungsdaten enthält, und um die neuen Anwendungs daten in diesem Block aufzuzeichnen,
und daß eine Einrichtung (2) vorgesehen ist, um den zwei ten Abschnitt (5) des Speichers (1) zu aktualisieren, um die Beseitigung des ältesten Datenblockes und die An wesenheit des neuesten Datenblockes anzugeben, um dadurch eine Aufzeichnung über die zeitliche Folge der Daten bei zubehalten.
7. IC-Karte nach Anspruch 6,
dadurch gekennzeichnet,
daß die Einrichtung (2) zum Aktualisieren Mittel umfaßt,
um eine Tabelle (5) zu führen, welche eine Relation der
zeitlichen Folge, in der die Information aufgezeichnet
wurde, mit der Blockadresse herstellt, an der die Daten
aufgezeichnet worden sind, und daß die zeitliche Folge
in der Tabelle jedesmal dann aktualisiert ist, wenn eine
neue Dateneingabe aufgezeichnet wird.
8. IC-Karte nach Anspruch 7,
dadurch gekennzeichnet,
daß die Tabelle (5) ein Feld (23) für jede Eingabe ent
hält, die angibt, ob vorher Daten an der zugeordneten
Blockadresse aufgezeichnet worden sind.
9. IC-Karte nach einem der Ansprüche 6 bis 8,
dadurch gekennzeichnet,
daß eine Einrichtung zum Absuchen des zweiten Abschnitts
(5) des Speichers (1) vorgesehen ist, um die Daten zum
Auslesen auf Anfrage zu identifizieren.
10. IC-Karte nach einem der Ansprüche 6 bis 9,
dadurch gekennzeichnet,
daß die Einrichtung zum Aktualisieren und Registrieren
der Aufzeichnungen eine Anzeige (6) im zweiten Abschnitt
des Speichers (1) umfaßt, welche die älteste Datenauf
zeichnung identifiziert, die in einem Block im ersten Ab
schnitt (3) des Speichers (1) aufgezeichnet ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62091209A JPH0827756B2 (ja) | 1987-04-13 | 1987-04-13 | Icカード |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3812147A1 true DE3812147A1 (de) | 1988-11-03 |
DE3812147C2 DE3812147C2 (de) | 1993-05-19 |
Family
ID=14020035
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3812147A Granted DE3812147A1 (de) | 1987-04-13 | 1988-04-12 | Verfahren und ic-karte zum aufzeichnen von daten |
Country Status (4)
Country | Link |
---|---|
US (1) | US4992651A (de) |
JP (1) | JPH0827756B2 (de) |
DE (1) | DE3812147A1 (de) |
FR (1) | FR2613851B1 (de) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0383518A1 (de) * | 1989-02-15 | 1990-08-22 | Hitachi Maxell, Ltd. | Verfahren zum Abspeichern eines Programmes auf einer IC-Karte und IC-Karte dafür |
US6426893B1 (en) | 2000-02-17 | 2002-07-30 | Sandisk Corporation | Flash eeprom system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks |
US6484039B1 (en) | 1998-02-25 | 2002-11-19 | Siemens Aktiengesellschaft | SIM card with directory entries for mobile telephones |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3015377B2 (ja) * | 1988-08-26 | 2000-03-06 | 株式会社東芝 | Icカード |
DE69033262T2 (de) | 1989-04-13 | 2000-02-24 | Sandisk Corp | EEPROM-Karte mit Austauch von fehlerhaften Speicherzellen und Zwischenspeicher |
US5663901A (en) * | 1991-04-11 | 1997-09-02 | Sandisk Corporation | Computer memory cards using flash EEPROM integrated circuit chips and memory-controller systems |
US5530232A (en) * | 1993-12-22 | 1996-06-25 | Datamark Services, Inc. | Multi-application data card |
DE19718115A1 (de) * | 1996-12-23 | 1998-06-25 | Ccs Chipcard & Comm Syst Gmbh | Chipkarte und Verfahren zur Verwendung der Chipkarte |
FR2771829B1 (fr) * | 1997-12-03 | 2000-02-18 | Rue Cartes Et Systemes De | Procede de gestion des ressources de memoire dans une carte a microcircuit |
JP4423711B2 (ja) * | 1999-08-05 | 2010-03-03 | ソニー株式会社 | 半導体記憶装置及び半導体記憶装置の動作設定方法 |
AUPQ730600A0 (en) * | 2000-05-04 | 2000-05-25 | Canon Kabushiki Kaisha | A method for self-programming smart cards |
US6454173B2 (en) * | 2000-08-14 | 2002-09-24 | Marcel A. Graves | Smart card technology |
JP2002312232A (ja) * | 2001-04-10 | 2002-10-25 | Mitsubishi Electric Corp | 半導体記憶装置 |
EP1324207B1 (de) * | 2001-12-11 | 2007-02-14 | Matsushita Electric Industrial Co., Ltd. | IC-Karte und Datenverarbeitungsverfahren dafür |
JP2004102508A (ja) * | 2002-09-06 | 2004-04-02 | Renesas Technology Corp | 半導体記憶装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4095283A (en) * | 1976-07-02 | 1978-06-13 | International Business Machines Corporation | First in-first out memory array containing special bits for replacement addressing |
US4084226A (en) * | 1976-09-24 | 1978-04-11 | Sperry Rand Corporation | Virtual address translator |
JPS59212972A (ja) * | 1983-05-17 | 1984-12-01 | Omron Tateisi Electronics Co | メモリの有効利用方式 |
EP0142013A3 (en) * | 1983-10-14 | 1988-01-20 | Gerhard Marte | Portable memory for recording, storing and reproducing data |
JPH0776983B2 (ja) * | 1984-12-28 | 1995-08-16 | 株式会社東芝 | Icカード |
US4829169A (en) * | 1985-07-01 | 1989-05-09 | Toppan Moore Company, Inc. | IC card having state marker for record access |
JPS6260080A (ja) * | 1985-09-10 | 1987-03-16 | Omron Tateisi Electronics Co | Icカ−ドシステム |
JPS6295689A (ja) * | 1985-10-22 | 1987-05-02 | Casio Comput Co Ltd | Icカ−ドシステム |
-
1987
- 1987-04-13 JP JP62091209A patent/JPH0827756B2/ja not_active Expired - Fee Related
-
1988
- 1988-04-07 US US07/178,577 patent/US4992651A/en not_active Expired - Lifetime
- 1988-04-11 FR FR888804767A patent/FR2613851B1/fr not_active Expired - Lifetime
- 1988-04-12 DE DE3812147A patent/DE3812147A1/de active Granted
Non-Patent Citations (1)
Title |
---|
DE-B.: "Programmier-Technik" Ivan Flores, Berliner Union Stuttgart, 1969, S. 208-216 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0383518A1 (de) * | 1989-02-15 | 1990-08-22 | Hitachi Maxell, Ltd. | Verfahren zum Abspeichern eines Programmes auf einer IC-Karte und IC-Karte dafür |
US5038025A (en) * | 1989-02-15 | 1991-08-06 | Hitachi Maxell, Ltd. | Method of receiving program down-loaded to IC card and IC card thereof |
US6484039B1 (en) | 1998-02-25 | 2002-11-19 | Siemens Aktiengesellschaft | SIM card with directory entries for mobile telephones |
US6426893B1 (en) | 2000-02-17 | 2002-07-30 | Sandisk Corporation | Flash eeprom system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks |
US6580638B2 (en) | 2000-02-17 | 2003-06-17 | Sandisk Corporation | Flash EEPROM system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks |
US6760255B2 (en) | 2000-02-17 | 2004-07-06 | Sandisk Corporation | Flash EEPROM system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks |
US6996008B2 (en) | 2000-02-17 | 2006-02-07 | Sandisk Corporation | Flash EEPROM system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks |
US7184306B2 (en) | 2000-02-17 | 2007-02-27 | Sandisk Corporation | Flash EEPROM system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks |
Also Published As
Publication number | Publication date |
---|---|
JPH0827756B2 (ja) | 1996-03-21 |
DE3812147C2 (de) | 1993-05-19 |
FR2613851A1 (fr) | 1988-10-14 |
JPS63255748A (ja) | 1988-10-24 |
FR2613851B1 (fr) | 1992-04-17 |
US4992651A (en) | 1991-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3812147C2 (de) | ||
DE69533193T2 (de) | Paralleles verarbeitungssystem zum durchlaufen einer datenbank | |
DE102004001797A1 (de) | Kartendaten-Verarbeitungsvorrichtung und Zentrumssystem | |
EP1011080B1 (de) | Verfahren zum bidirektionalen Datentransfer zwischen einem Terminal und einer Chipkarte sowie Chipkarte | |
DE2506117C2 (de) | Adreßumsetzungseinrichtung zur Bildung einer absoluten Adresse | |
DE60129025T2 (de) | Speicherbereichszuordnung in einem dateisystem zum beschreiben beliebiger bereiche | |
DE1499182C3 (de) | Datenspeichersystem | |
DE3640238A1 (de) | Tragbare elektronische vorrichtung | |
DE3807997A1 (de) | Ic-karte mit interner fehlerpruefung | |
DE2551239C3 (de) | Datenverarbeitungsanlage | |
DE4334524A1 (de) | Dokumentverarbeitungsvorrichtung | |
DE19837617A1 (de) | Karten-Verarbeitungseinrichtung und -Verfahren zur Verwendung in einem Fahrzeug | |
DE2125644A1 (de) | Verbunddatenspeicher | |
DE2062165A1 (de) | Verfahren und Anordnung zum Sortieren oder Mischen von Datensätzen | |
DE3743639A1 (de) | Ic-karte und system zur ueberpruefung ihrer funktionstuechtigkeit | |
DE19959758A1 (de) | Bestimmung der Art und der Genauigkeit von lokalen Variablen bei vorhandenen Subroutinen | |
DE4220698A1 (de) | System zur dynamischen verknuepfung modularer abschnitte von computersoftware | |
DE3720427A1 (de) | Tragbare elektronische vorrichtung | |
DE60307527T2 (de) | Tupleraumoperationen für eine feinkörnige Systemsteuerung | |
DE2720864B2 (de) | Anordnung zum lückenfreien Einspeichern einer Anzahl von Datenblocks unbestimmter Lange | |
CH625895A5 (de) | ||
DE19848241B4 (de) | Einrichtung und Verfahren zur Adressengleichheitsermittlung und Übertragungssteuersystem | |
DE4135031A1 (de) | Eingabe/ausgabeeinrichtungen | |
WO2004100090A1 (de) | Speicherverwaltung bei einem tragbaren datenträger | |
DE2801989A1 (de) | Verfahren zum steuern der abspeicherung eines textes in einem textverarbeitungssystem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8320 | Willingness to grant licences declared (paragraph 23) |