DE3812147A1 - Verfahren und ic-karte zum aufzeichnen von daten - Google Patents

Verfahren und ic-karte zum aufzeichnen von daten

Info

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
Application number
DE3812147A
Other languages
English (en)
Other versions
DE3812147C2 (de
Inventor
Kenichi Takahira
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE3812147A1 publication Critical patent/DE3812147A1/de
Application granted granted Critical
Publication of DE3812147C2 publication Critical patent/DE3812147C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms 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/10Mechanisms 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/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment 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/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment 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/355Personalisation of cards for use
    • G06Q20/3552Downloading or loading of personalisation data
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME 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/00Registering, indicating or recording the time of events or elapsed time, e.g. time-recorders for work people
    • G07C1/10Registering, 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
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms 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/0806Details of the card
    • G07F7/0833Card having specific functional components
    • G07F7/084Additional 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.
In den Fig. 1 bis 8 der Zeichnungen haben die Bezugszeichen und Blöcke die nachstehend angegebene Bedeutung:
  • 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.
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.
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.
DE3812147A 1987-04-13 1988-04-12 Verfahren und ic-karte zum aufzeichnen von daten Granted DE3812147A1 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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カ−ドシステム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
DE-B.: "Programmier-Technik" Ivan Flores, Berliner Union Stuttgart, 1969, S. 208-216 *

Cited By (8)

* Cited by examiner, † Cited by third party
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)