DE68917578T2 - Elektronische Frankiermaschine mit einer Verbesserung im nichtlöschbaren Speichern von Buchhaltungsdaten. - Google Patents

Elektronische Frankiermaschine mit einer Verbesserung im nichtlöschbaren Speichern von Buchhaltungsdaten.

Info

Publication number
DE68917578T2
DE68917578T2 DE68917578T DE68917578T DE68917578T2 DE 68917578 T2 DE68917578 T2 DE 68917578T2 DE 68917578 T DE68917578 T DE 68917578T DE 68917578 T DE68917578 T DE 68917578T DE 68917578 T2 DE68917578 T2 DE 68917578T2
Authority
DE
Germany
Prior art keywords
accounting
block
data
memory
volatile memory
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.)
Expired - Fee Related
Application number
DE68917578T
Other languages
English (en)
Other versions
DE68917578D1 (de
Inventor
Nanette Brown
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.)
Pitney Bowes Inc
Original Assignee
Pitney Bowes Inc
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 Pitney Bowes Inc filed Critical Pitney Bowes Inc
Application granted granted Critical
Publication of DE68917578D1 publication Critical patent/DE68917578D1/de
Publication of DE68917578T2 publication Critical patent/DE68917578T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/88Masking faults in memories by using spares or by reconfiguring with partially good memories
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07BTICKET-ISSUING APPARATUS; FARE-REGISTERING APPARATUS; FRANKING APPARATUS
    • G07B17/00Franking apparatus
    • G07B17/00185Details internally of apparatus in a franking system, e.g. franking machine at customer or apparatus at post office
    • G07B17/00362Calculation or computing within apparatus, e.g. calculation of postage value
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/005Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor comprising combined but independently operative RAM-ROM, RAM-PROM, RAM-EPROM cells
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07BTICKET-ISSUING APPARATUS; FARE-REGISTERING APPARATUS; FRANKING APPARATUS
    • G07B17/00Franking apparatus
    • G07B17/00185Details internally of apparatus in a franking system, e.g. franking machine at customer or apparatus at post office
    • G07B17/00314Communication within apparatus, personal computer [PC] system, or server, e.g. between printhead and central unit in a franking machine
    • G07B2017/00346Power handling, e.g. power-down routine
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07BTICKET-ISSUING APPARATUS; FARE-REGISTERING APPARATUS; FRANKING APPARATUS
    • G07B17/00Franking apparatus
    • G07B17/00185Details internally of apparatus in a franking system, e.g. franking machine at customer or apparatus at post office
    • G07B17/00362Calculation or computing within apparatus, e.g. calculation of postage value
    • G07B2017/00395Memory organization

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Devices For Checking Fares Or Tickets At Control Points (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

  • Die Erfindung betrifft elektronische Frankiermaschinen, und insbesondere die Speicherung von Daten in einem nichtflüchtigen Speicher in derartigen elektronischen Frankiermaschinen (vgl. beispielsweise die europäische Patentanmeldung Nr. EP-A-0285956).
  • Blektronische Frankiermaschinen sind wohl bekannt. Derartige Geräte arbeiten unter Mikroprozessorsteuerung, um einen Druck bei Buchungsoperationen durchzuführen, die dem Drucken eines Post-Freistemplers auf einem Umschlag zugeordnet sind. Derartige Buchungen werden gewöhnlich in einem flüchtigen Speicher ausgeführt und dann zu einem vorbestimmten Zeitpunkt an einen nicht-flüchtigen Speicher übertragen, zum Speichern für einen solchenFall, daß bei der elektronischen Frankiermaschine der Strom abgeschaltet wird.
  • Bei konventionellen Frankiermaschinen wird, wenn eine Buchung in Echtzeit durchgeführt wird, bei jedem Druck eines Portos die folgende Information normalerweise innerhalb der Speicher der Frankiermaschine aktualisiert: Aufsteigendes Register, absteigendes Register, Stückzählung, Postenzählung, und Postenmenge. Werden alle diese Daten in Bchtzeit in einem nicht-flüchtigen Speicher gespeichert und wird angenommen, daß sie in einem Puffer gespeichert werden sollen, so bedeutet dies das Aktualisieren eines Speicherpuffers mit 32 Byte für jeden Buchungszyklus. Die Anforderungen an die normale Lebensdauer 1 Maschine erfordern eine Million Buchungszyklen und 1 Million Frankiermaschinen-Arbeitsspiele. Während batteriegestützte CMOS RAMs,die beispielsweise in dem US-Patent Nr. 4 484 307 verwendet werden, keine Schwierigkeit mit den hunderttausend Schreibvorgängen pro Byte haben, welche derartige Spezifikationen erfordern, weisen EEPROMs typischerweise eine erheblich geringere Lebensdauer auf. In diesem Zusammenhang wird darauf hingewiesen, daß es zwar EEPROMs gibt, welche diese Größe der Lebensdauer erreichen, jedoch sind sie erheblich teurer als jene mit einer begrenzten Lebensdauer von 10000 Schreibvorgängen pro Byte.
  • In dem U.S. Patent Nr. 4 584 647 für Eckert mit dem Titel "Elektronische Frankiermaschine mit einem Ringzähler" ist ein Ringzähler in einem derartigen MNOS-Speicher zum Speicher eines Zählwertes beschrieben, welcher den Portowert repräsentiert. Allerdings ist in dieser Druckschrift keine Lehre enthalten, verschiedene Werte für eingestelltes Porto zu buchen. Das U.S.-Patent Nr. 4 301 507 begrenzt den Schreibvorgang in einen MNOS-Speicher einfach durch Einschreiben in den nicht-flüchtigen Speicher nur während einer Stromabschaltsequenz. In anderen Geräten wurde beispielsweise ein EEPROM-Speicher mit hoher Lebensdauer für Echtzeitbuchung in einem nicht-flüchtigen Speicher verwendet, wobei der MNOS-Speicher mit begrenzter Lebensdauer nur während der Stromabschaltung verwendet wurde.
  • Ein Ziel der Erfindung besteht darin, die Verwendung eines EEPROM-Geräts mit geringer Lebensdauer in einer Frankiermaschine zu ermöglichen, welche eine Echtzeitbuchung in beiden Speichern gestattet.
  • Ein weiteres Ziel der Erfindung besteht in der Erhöhung der Anzahl an Buchungszyklen, die in einem EEPROM mit einer bestimmten Lebensdauer aufgezeichnet werden können.
  • Es wird erwartet, daß unter normalen Umständen der Benutzer einer Frankiermaschine die Druckräder auf einen bestimmten Portowert enstellt, und dann mehrere Druckvorgänge vornimmt, bevor der Portowert geändert wird. Infolge dieses erwarteten Benutzungsmusters ist die Lebensdauer der elektronischen Frankiermaschine auf 1 Million Druckrad-Einstellungen festgelegt, und erfordert eine Buchung für 10 Millionen Frankiermaschinen-Druckarbeitsspiele.
  • Gemäß der Erfindung wird ein "Magazin" für Daten, welches zumindest einhundert Puffer enthält, die eine "kreisförmige" Organisation aufweisen, in dem EEPROM-Gerät mit niedriger Lebensdauer aufrechterhalten. Der hier verwendete Begriff "kreisförmig" soll bedeugen, daß jedesmal dann, wenn Information in einen Puffer in dem Speicherbereich eingeschrieben wird, die Pufferadresse sequentiell um 1 weitergeschaltet wird. Dieses "Magazin" für Daten wird nachstehend als "Buchungsdatenmagazin" bezeichnet und weist die folgende Information auf: Aufsteigendes Register, absteigendes Register, Stückzählung, Postenzählung, Postenmenge, und Portowert.
  • Zusätzlich zur Bereitstellung des Magazins für derartige Buchungsinformation enthält jeder Puffer in diesem Datenmagazin darüber hinaus einen Zeiger zu einem Puffer in einem kreisförmigen Magazin für einen "Druckzähler" in dem EEPROM-Speicher. Vorzugsweise weist dieses kreisförmige Datenmagazin eine Länge von zumindest 2000 Byte auf und ist aufgeteilt in zwei (2) Byte-Puffer aufgeteilt. Jeder Puffer enthält zwei (2) redundante Zähler, die jedesmal dann inkrementiert werden, wenn ein Druckzyklus auftritt.
  • Gemäß der Erfindung ist der momentane Wert der Maschinen- Register nicht direkt von dem EEPROM auslesbar. Stattdessen muß der Registerinhalt berechnet werden, unter Verwendung von Daten sowohl von dem Buchungsmagazin als auch dem Druckzählermagazin. Daher weist beispielsweise das aufsteigende Register einen Wert gleich dem aufsteigenden Register plus (Portowert mal Druckzählerwert) auf, und das absteigende Register einen Wert gleich dem absteigenden Register minus (Portowert mal Druckzählerwert).
  • Es wird darauf hingewiesen, daß in vorbestimmten Intervallen das Datenmagazin in dem EEPROM aktualisiert wird, um die Arbeitsspielzähldaten innerhalb des Buchungsdatenmagazins aufzunehmen. Jedesmal dann, wenn ein aktualisierter Puffer in das Buchungsdatenmagazin eingeschrieben wird, wird ein Zeiger innerhalb dieses Buchungsdatenmagazins gleich dem Ort zweier neuer Druckzähler gesetzt. Diese Zähler wurden vorher auf Null zurückgesetzt.
  • Vorzugsweise sind die Bedingungen, unter denen eine Aktualisierung des EEPROM-Buchungsmagazins erfolgt, folgende: 1) eine Anderung der Druckradeinstellung, 2) einige Fehler des nicht-flüchtigen Speichers, wenn ein Versuch unternommen wird, Daten in den nichtflüchtigen Speichern zu rekonstruieren, und 3) nach einer vorbestimmten Anzahl aufeinanderfolgender Buchungszyklen bei demselben Portowert, normalerweise fünfzehn aufeinanderfolgende Zyklen.
  • Weitere Merkmale und Vorteile der Erfindung lassen sich noch besser anhand der nachstehenden, erläuternden Beschreibung im Zusammenhang mit den Zeichnungen verstehen, wobei:
  • Fig. 1 eine Perspektivansicht eines Beispiels für eine elektronische Frankiermaschine gemäß der Erfindung ist;
  • Fig. 2 ein schematisches Blockschaltbild der elektronischen Frankiermaschine von Fig. 1 ist;
  • Fig. 3 ein Schaltbild eines Beispiels für das Speichermodul in der elektronischen Frankiermaschine ist;
  • Fig. 4A, 4B, 4C und 4D Tabellen nicht-flüchtiger Speicherregister zeigen;
  • Fig. 5 bis 11 ein Flußdiagramm umfassen, welches eine Frankiermaschinenbuchungs- und -zugriffsroutine auf einen nicht-flüchtigen Speicher in einer Maschine gemäß der Erfindung zeigt;
  • Fig. 12 ein Flußdiagramm ist, welches die Buchung für einen Druckvorgang einer Frankiermaschine erläutert; und
  • Fig. 13 bis 14 ein Flußdiagramm sind, welches eine Stromeinschaltprozedur der nicht-flüchtigen Speicher gemäß der Erfindung zeigt.
  • In Fig. 1 ist bei 10 eine elektronische Frankiermaschine dargestellt. Die Maschine 10 kann eine Tastatur und eine Anzeige (in dieser Figur nicht gezeigt) aufweisen, die auf geeignete Weise durche eine Tür oder eine Gleitvorrichtung (ebenfalls nicht gezeigt) abgedeckt sind. Die Maschine 10 ist so dargestellt, daß sie an einem Ort auf einer Postversandmaschine 18 angebracht ist. Wie schematisch gezeigt ist, weist die Postversandmaschine 18 eine Druckplatte 20 auf, welche durch einen Motor 22 angetrieben wird, welcher auf geeignete Weise über einen Zahnstangentrieb 24 die Platte 20 hin- und herbewegt. Die gesamte Maschine ist auf geeignete Weise in der Postversandmaschine durch den schwenkbeweglichen Deckel 26 eingeschlossen. Ein Zufuhrmodul 28 führt Poststücke der Basis 18 zu, welche wiederum Poststücke in den Raum zwischen dem Druckstempel 30 und der Platte 20 befördert, in welchem nach einer Hin- und Herbewegung der Platte ein aufgedruckter Freistempler auf das Poststück aufgebracht wird, wie anhand des Poststückes 32 gezeigt, welches dann von der Postversandmaschine 18 ausgestoßen wird.
  • Druckräder (nicht gezeigt), die durch Schrittmotoren (ebenfalls nicht gezeigt) eingestellt werden, sind so angeordnet, daß sie einen Portowert auf den Umschlag zusammen mit dem Rest des Freistemplers aufdrucken. Weitere Aspekte dieser Maschine sind im einzelnen in der veröffentlichten Patentanmeldung U.K. Nr. 2 211 468 beschrieben, mit dem Titel "Entfernbare Frankiermaschine mit einem Freistempler-Deckel".
  • Fig. 2 ist ein Blockschaltbild der elektronischen Frankiermaschine. Wie aus Fig. 2 hervorgeht, empfängt die zentrale Bearbeitungseinheit (CPU) 50, etwa ein Modell 8081, welches von Intel, Santa Clara, Kalifornien, erhältlich ist, ihren Strom von der Stromversorgung 52. Die CPU 50 überträgt Adressen- und Datensignale zusammen mit Lese- und Schreibsignalen für Speicher auf bekannte Weise an das Speichermodul 54 und an das Dekodiermodul 56. Lesesignale werden an beide auf der Leitung 58 bzw. Schreibsignale auf der Leitung 60 übertragen. Der Adressen/Daten-Multiplexbus zwischen den Modulen ist bei 62 gezeigt. Weiterhin ist ein Adressenbus 64 zwischen die CPU 50 und das Speichermodul 54 geschaltet. Die Adressenleitungen 66, 68 und 70 der drei höchsten Ordnungen sind ebenfalls an das Dekodiermodul 56 angeschlossen. NVM-Lese- und NVM-Schreib-Signale werden in dem Dekodiermodul 56 unter Befehl der CPU 50 entwickelt, und sind an das Speichermodul 54 über Leitungen 72 und 74 angeschlossen.
  • Der Dekodierer 56 empfängt ein Rücksetzsignal für die CPU von der Stromversorgung 52 auf der Leitung 76, und stellt mit geeigneter innerer Logikverarbeitung in Kombination mit anderen entwickelten Signalen in dem Dekodiermodul 56 ein CPU-Rücksetzsignal für die CPU 50 auf der Leitung 78 zur Verfügung. Beispielsweise in dem U.S.-Patent Nr. 4 547 853 ist eine geeignete Schaltung zur Bereitstellung eines Rücksetzsignals abhängig von den Stromversorgungs- und Spannungsbedingungen in der Stromversorgung gezeigt. Eine Logikschaltung zur Überwachung des Rücksetzens von der Stromversorgung und ebenso anderer Schaltungsparameter zur Entwicklung eines Rücksetzsignals für die CPU ist beispielsweise in dem U.S.-Patent Nr. 4 747 057 gezeigt. Ein Dekodierchip ist in dem U.S.-Patent Nr. 4 710 882 beschrieben. Wie dargestellt, kommuniziert die CPU 50 weiterhin mit einem LED-Treibermodul 80, zur Bereitstellung von Signalen für die verschiedenen Sensoren, die verschiedenen Schrittmotortreiber (gezeigt bei 82) zum Positionieren der Frankiermaschinen-Druckräder (gezeigt bei 83), und Magnetspulentreiber, die bei 84 gezeigt sind, zum Steuern von Druckstempel-Schutzmagnetspulen, entlang der Leitungen 86, 88 bzw. 90, durch den Dekodierer 56.
  • Das Tastatur-Anzeigemodul 92 empfängt Information für die CPU 50 und zeigt diese an, auf konventionelle Weise, auf der Leitung 94. Information wird auch von der Tastatur des Tastatur/Anzeigemoduls 92 für den Dekodierer 56 entlang der Leitung 96 in Reaktion auf einen Tastimpuls von dem Dekodierer 56 auf der Leitung 97 zur Verfügung gestellt. Externe Kommunikationen an die CPU werden kanalisiert durch das Kommunikationsmodul 98 für die CPU auf Leitung 99. Typische Merkmale und der Betrieb von Frankiermaschinen werden beispielsweise in dem U.S.-Patent Nr. 4 301 507 und dem U.S.-Patent Nr. 4 484 307 diskutiert, die beide durch Bezugnahme in den vorliegenden Text eingeschlossen werden, und werden hier nicht weiter diskutiert.
  • Fig. 3 ist ein Blockschaltbild des Speichermoduls 54 in der elektronischen Frankiermaschine. Das Speichermodul 54 weist einen Lesezugriffsspeicher (ROM) 100 auf, etwa das Modell 27C152, welches von General Instruments erhältlich ist, einen CMOS-Speicher mit wahlfreiem Zugriff (RAM) 102, beispielsweise das Modell Nr. 62C64, welches von NEC erhältlich ist, ein batteriegstütztes RAM CMOS für den nicht- flüchtigen Speicher, etwa das Modell Nr. MK4802, welches beispielsweise von Mostek erhältlich ist, bei 104, und ein EEPROM-Gerät 106, etwa ein Modell 28C64, welches beispielsweise von Atmel erhältlich ist. Für beste Ergebnisse ist das batteriegestützte RAM 104 so angeschlossen, daß es Spannungen von Batterien 108 und 110 empfängt, die jeweils durch eine Diode 112 bzw. 114 mit dem batteriegestützten RAM 104 verbunden sind. Adressendaten niedriger Ordnung werden jedem der Speicher am Eingangspunkt 120 zugeführt, und werden entlang Verbindungs-Busleitungen übertragen, die bei 122, 124, 126 und 130 gezeigt sind. Die gemultiplexte Adresse und Daten werden an das Modul am Eingangspunkt 140 übertragen, und an die verschiedenen Speichergeräte entlang Verbindungs- Busleitungen übertragen, die bei 142, 144, 146 und 148 gezeigt sind. Das Schreibsignal für das RAM 102 wird auf der Leitung 150 bereitgestellt. Ein Lesesignal wird entlang der Leitung 152 sowohl an das RAM 102 als auch auf der Leitung 154 an das batteriegestützte RAM 104 geschickt. Ein Schreibsignal für den nicht-flüchtigen Speicher von dem Dekodierer 56 wird am Punkt 160 auf Leitungen 162 und 164 bereitgestellt. Der EEPROM 106 wird unter Steuerung des Signals auf der Leitung 170 gelesen. Speicher 102, 104, 106 werden je nach Erfordernis durch Chip-Freischaltsignale auf der Leitung 180 ausgewählt.
  • Für beste Ergebnisse werden Daten innerhalb der Frankiermaschine in den zwei (2) nicht-flüchtigen Speichergeräten gespeichert. Jedes Gerät verwendet eine getrennte Speichertechnologie (CMOS und EEPROM), um einen Schutz gegen die Möglichkeit eines doppelten Geräteausfalls oder eine fehlerhafte Herstellungscharge zur Verfügung zu stellen. Sämtliche kritische Information innerhalb des Systems wird redundant sowohl in dem CMOS-batteriegestützten RAM 104 als auch in dem EEPROM 106 aufrechterhalten. Gemäß der Erfindung folgt auf jede Aktualisierung kritischer Daten innerhalb des nicht-flüchtigen CMOS-Speichers sofort eine korrespondierende Aktualisierung oder Kopie bei dem nicht- flüchtigen EEPROM-Speicher. Diese Redundanz gestattet es, Daten, die sich in einem "schlechten" Abschnitt eines der Speicher befinden, erneut aus Information in dem anderen Speichergerät zu erzeugen, wie nachstehend erläutert wird.
  • Fig. 4A und 4B sind eine Tabelle der Adressen betreffender Puffer des batteriegestützten CMOS-Speichers 104 (Fig. 3), während die Fig. 4C und 4D eine Tabelle der Adressen der Register des EEPROM 106 (Fig. 3) darstellen.
  • Wie aus den Fig. 4A bis 4D hervorgeht, ist jedes Gerät in einen Satz von Datenstrukturen unterteilt, die hier als "Magazine" bezeichnet werden. Jedes Datenmagazin weist einen oder mehrere "Puffer" auf. Jeder Puffer enthält einen Satz eines oder mehrerer zugehöriger Datenelemente. Innerhalb eines bestimmten Magazins enthält daher jeder Puffer Datenelemente desselben Typs. Die Puffer innerhalb eines bestimmten Magazins sind von der Struktur her identisch, obwohl der Informationsgehalt in den Puffern unterschiedlich sein kann.
  • Die Speicherung zugehöriger Datenelemente bedeutet, daß die Daten, die beispielsweise zur Berechnung eines bestimmten Vorgangs erforderlich sind, auf einfachere Weise zurückgewonnen werden können, als dies bislang der Fall war.
  • Jeder Datenpuffer ist vorzugsweise auf eine Länge von 32 Byte fixiert. Selbst wenn die Summe der Längen der Datenelemente in dem Magazin kleiner ist als 32 Byte, bleibt der übrigbleibende Raum unbenutzt. Gemäß der Erfindung verwendet jedes vorgegebene Datenmagazin entweder eine "kreisförmige" oder eine "ansteigende" Pufferorganisation. Wenn ein Datenmagazin eine kreisförmige Pufferorganisation verwendet, dann erfolgt vor jeder Aktualisierung ein Vorschub zum nächsten Puffer in dem Magazin. Nachdem der letzte Puffer in dem Magazin aktualisiert wurde, geht der Puffer-Zeiger in der Schleife zum ersten Puffer in dem Magazin zurück.
  • Kreisförmige Puffer werden für ein Magazin implementiert, wenn es entweder erforderlich ist, die Vorgeschichte der Datenelemente entweder in dem CMOS- oder dem EEPROM-Magazin festzuhalten, oder es erwartet wird, daß die Anzahl der Aktualisierungen eines bestimmten Datenelements in dem EEPROM-Magazin den Lebensdauerpegel des EEPROM-Chips überschreiten könnte. Es wird deutlich, daß zu dem Zweck, eine derartige kreisförmige Pufferorganisation zuzulassen, das Datenmagazin ein (1) streng zunehmendes Datenelement enthalten muß. Dies bedeutet, daß der Wert dieses Datenelements jedesmal dann zunimmt, wenn ein Puffer in das Magazin eingeschrieben wird.
  • Gemäß der vorliegenden Erfindung verwendet ein Datenmagazin eine ansteigende Pufferorganisation, immer dann, wenn ein kreisförmiger Puffer nicht erforderlich ist. Bei einem derartigen ansteigenden Puffer erfolgt ein Vorschub zu dem nächsten Puffer nur dann, wenn ein nicht überwindbarer Hardware-Fehler innerhalb eines momentanen Pufferadressenbereiches auftritt. Dies bedeutet, daß es vor einer Aktualisierung von Information keinen Vorschub zum nächsten Puffer gibt.
  • Für beste Ergebnisse wird für jeden Datenpuffer ein zugehöriger zyklischer Redundanzcode (CRC) berechnet. Ein einzelner CRC wird über sämtliche Datenelemente innerhalb des Puffers berechnet. Falls der Puffer unbenutzten Raum enthält, umfaßt die CRC-Berechnung nicht derartige unbenutzte Bytes.
  • Es wird deutlich,daß die Berechnung eines einzigen CRC für die gesamten Puffer beträchtlichen Raum spart, verglichen mit CRCs für jedes Datenelement.
  • Jedes der nicht-flüchtigen Speichergeräte 104 und 106 ist in Segmente von 32 Byte unterteilt. Jeder Puffer beginnt auf der Segmentgrenze.
  • Der unterste Adressenraum jedes Geräts wird von einem Datenmagazin für schlechte Segmente eingenommen. Es wird darauf hingewiesen, daß sich, falls gewünscht, dieses Datenmagazin auch an anderen Adressen befinden könnte. Dieses Datenmagazin enthält eine Bit-Tabelle, welche gute und schlechte Segmente innerhalb des Geräts anzeigt. Jedes Segment des Geräts weist ein korrespondierendes Bit innerhalb des Datenmagazins für schlechte Segmente auf. Dieses Bit wird ein- oder ausgeschaltet um anzuzeigen, ob das zugehörige Segment benutzt werden kann. Zur Erzielung bester Ergebnisse hält das Gerät vier (4) Kopien der Bit-Tabelle nur für das Gerät selbst aufrecht. Dies bedeutet, daß die Kopien der CMOS-Bittabelle nur in dem CMOS-Gerät gespeichert werden, und daß für das EEPROM die Bittabellenkopien nur in dem EEPROM- Gerät gespeichert werden. Die Bittabellen sind in Fig. 4A bei 200 und in Fig. 4C bei 300 gezeigt.
  • Jedes Datenmagazin weist vorzugsweise einen Eintrag in einer ROM-Tabelle auf. Es enthält Information über Datenmagazin- Zeichen. Für jedes Datenmagazin enthält die Tabelle Information wie beispielsweise: Organisation, Anzahl an Datenbytes pro Puffer, Startadresse des Magazins, Endadresse, minimale Anzahl an Segmenten, die verfügbar für das System sein muß, um einen verläßlichen Betrieb weiterzuführen, und ob das Magazin nur im CMOS-Speicher liegt, oder sowohl im CMOS- und im EEPROM-Speicher.
  • Wie nachstehend erläutert, wird für jedes Datenmagazin ein Zeiger auf den momentanen Puffer in diesem Magazin im RAM gehalten. Diese Zeiger werden bei der Stromeinschaltung initialisiert und werden jedesmal dann aktualisiert, wenn ein Puffervorschub nötig ist.
  • Jedes nicht-flüchtige Speicherdatenmagazin weist einen entsprechenden Puffer im RAM auf, zur Verwendung, wenn ein Lesen oder Einschreiben bei den Geräten vorgenommen wird. Die Puffer in den NVMs des CMOS und des EEPROM, die in Fig. 4A bis 4D gezeigt sind, zeigen die Frankiermaschinen- Arbeitsspielinformation bei 210 und 310 an, Rückgewinnungsinformations-Initialisierung 220 und 220', Wiederaufladungsinformation 230 und 330, Fehlerinformation 240 und 340, Konfigurationsinformation 250 und 350, Marken- und Gerätestatus 260 und 360, sowie Daten bezüglich der Parameter der jeweiligen Maschine, 270 und 320. Zusätzlich gibt es ein Hauptmagazin und ein alternatives Magazin in dem CMOS-Speicher, zum Speichern nicht-kritischer Daten (280 und 280'), wogegen in dem EEPROM ein Magazin mit 2560 Byte für die Arbeitsspielzählung, gezeigt bei 380, vorgesehen ist. Die Arbeitsspielinformation umfaßt sechs Byte an Vorrat in dem ansteigenden Register plus fünf Byte an Vorrat in dem absteigenden Register: Die Stückwertzählung weist vier Byte auf, die Postenzählung drei Byte, die Postenmenge sechs Byte an Vorrat, und der eingestellte Portowert erfordert drei Byte.
  • Zusätzlich dazu, daß er Buchungsinformation enthält, enthält jeder Puffer in dem Buchungsdatenmagazin darüber hinaus einen Zeiger zu einem Puffer in einem kreisförmigen "Druckzähler"- Magazin in dem EEPROM. Vorzugsweise weist dieses kreisförmige Datenmagazin eine Länge von zumindest 2000 Byte auf und ist als Puffer von 2 Byte organisiert. Jeder Puffer enthält zwei redundante Zähler. Diese Zähler werden jedesmal dann inkrementiert, wenn ein Druckzyklus auftritt.
  • Entsprechend dem hier beschriebenen Verfahren zum Aktualisieren ist der Momentanwert der Register der Maschine nicht notwendigerweise direkt aus dem EEPROM auslesbar. Stattdessen werden die Maschinenregisterinhalte berechnet, unter Verwendung von Daten sowohl von dem Buchungsmagazin als auch von dem Druckzählermagazin in dem EEPROM. Die Berechnungen, die bei der Ermittlung der Registerwerte verwendet werden sollen, sind wie folgt:
  • 1. Aufsteigender Registerwert = aufsteigender Registerwert im Datenmagazin + (Portowert x Druckzählerwert)
  • 2. Absteigendes Register = absteigender Registerwert im Datenspeicher - (Portowert x Druckzählerwert)
  • 3. Postenmenge = Postenmenge + (Portowert x Druckzählerwert)
  • 4. Stückzahl = Stückzahl + Druckzählerwert
  • 5. Postenzählwert = Postenzählwert + Druckzählerwert.
  • Es wird deutlich, daß dann, wenn der Druckzählerwert 0 beträgt, die Werte gleich jenen sind, die in dem Buchungsdatenmagazin gespeichert sind.
  • Die Fig. 5A und 5B bis Fig. 11 zeigen ein Flußdiagramm der Buchungstreiberroutine 400 in der Frankiermaschine zum Buchen von Frankiermaschinenvorräten und zum Aktualisieren nichtflüchtigen Speichers entsprechend der Arbeitsspielroutine, die im Zusammenhang mit Fig. 12 erläutert wird. Es wird darauf hingewiesen, daß andere CPU-Routinen der Frankiermaschine die Steuerung der Leistung der anderen Arbeiten übernehmen, die für Arbeiten wie beispielsweise die Einstellung der Druckräder, den Portodruck durch Energieversorgung und Energieabschaltung der Druckstempelschutzmagnetspulen, Kommunikation mit Peripheriegeräten und dergleichen erforderlich sind. Es wird darauf hingewiesen, daß diese Aufgaben in solchen Sequenzen durchgeführt werden können, wie sie in den U.S.-Patenten 4 301 507 und 4 710 883 beschrieben sind.
  • Die Fig. 5A und 5B umfassen ein Flußdiagramm, welches den Steuervorgang auf oberen Pegel für den Buchungstreiber erläutert. Die Routine untersucht eine Eingabe einer ACCT- OPERATION und gibt die Steuerung entweder an die Lesearbeitsspiel- oder Schreibarbeitsspiel-Routine ab. Wenn die Lesearbeitsspielroutine einen Status von CMOS.RECOVERY zurückbringt, so wird die Steuerung erneut an die Lesearbeitsspielroutine übertragen, um die Rückgewinnung von CMOS-Daten durchzuführen. Unter allen anderen Umständen übergibt der Status von der Lese-Arbeitsspielroutine oder der Schreib-Arbeitsspielroutine die Steuerung zurück an die Task Verarbeitung.
  • In der ACCOUNTING DRIVER-Routine 500 wird, wie in Fig. 5A gezeigt, die ACCT-OPERATION-Eingabe im Entscheidungsblock 510 untersucht. Ist ACCT-OPERATION = READ (Lesen) negativ, so wird WRITE-TYPE = ACCOUNTING OPERATION ausgewählt, Block 520, und im Block 530 wird die WRITE TRIP-Subroutine (Schreibarbeitsspiel) aufgerufen. Die WRITE TRIP-Routine wird nachstehend erläutert.
  • Wenn, erneut vom Entscheidungsblock 510 ausgehend, der TEST für ACCT-OPERATION = READ gleich JA ist, versucht die Routine ein READ (Lesen) der momentanen Auslöseinformations- Speichervorrichtung von NVM. Sie versucht zunächst, die Daten von dem CMOS-Speicher 104 zurückzuholen. Können die Daten nicht zurückgeholt werden, so versucht die Routine, die Auslösedaten von dem EPROM-Speicher 106 zu erhalten. Falls diese Art des Zurückholens erforderlich ist, werden die Buchungswerte wie voranstehend erläutert rekonstruiert durch Multiplizieren der Zälwert-Speicherwerte in dem EEPROM- Auslösezähler mit dem eingestellten Portowert, der in den Auslösedaten gespeichert ist.
  • Die Routine geht damit weiter, daß sie ein READ der Auslöseinformation von dem CMOS NVM 104 einstellt, Block 540, und dann wird die NVM DRIVER-Routine aufgerufen, Block 550, um ein READ der in den CMOS-Speicherpuffern gespeicherten Information durchzuführen. Falls nach Beendigung des Lesens eine OK-Statusrückmeldung erfolgt (Block 560), kehrt die Programmsteuerung zur Task-Bearbeitung zurück. Ist der Status für READ, der im Block 560 überprüft wird, nicht OK, dann geht die Routine dazu über, ein READ der Information von den Puffern des EEPROM-Speichers durchzuführen, Block 570, und bei 580 wird erneut NVM DRIVER aufgerufen, um ein Lesen des EEPROM durchzuführen.
  • Wenn der Status dieses Auslösevorgangs aus dem EEPROM, der im Entscheidungsblock 59 überprüft wird, nicht OK ist, wird eine Marke für einen vernichtenden Fehler eingestellt, da beide Vorrichtungen nicht gelesen werden können, und es wird die Bearbeitung der Maschine für einen vernichtenden Fehler eingeleitet, um die Frankiermaschine abzuschalten. Ist der Status dieses Lesevorgangs im Block 590 OK, dann werden die Auslesezähler in dem EEPROM-Speicher gelesen, Block 600, und das Ergebnis dieses Lesevorgangs wird im Entscheidungsblock 610 überprüft.
  • Falls das Lesen OK ist, so geht die Routine damit weiter, die Buchungsdaten in dem RAM für den CMOS-Speicher aus jenen in den EEPROM zu rekonstruieren, Block 630.
  • Ist das Lesen der Auslesezähler nicht OK, so versucht die Routine, gestörte Druckzähldaten dadurch zu reparieren, daß die in dem RAM gespeicherten Daten in einen neuen Puffer in dem EEPROM kopiert werden, Block 620. Die Reparatur wird im Entscheidungsblock 640 überprüft. War sie nicht erfolgreich, so wird ein FATAL ERROR (vernichtender Fehler) eingestellt, da erneut beide Speicher nicht gelesen werden können.
  • Wurde jedoch eine ordnungsgemäße Reparatur erzielt, so geht, wie voranstehend erläutert, die Routine ebenfalls zum Block 630 über, um CMOS-Daten zu rekonstruieren. ACCT.OPERATION wird für CMOS-RECOV eingsetellt, Block 650, und die Routine geht zur Schleife zurück.
  • Fig. 6 zeigt die Subroutine WRITE (Schreiben) für den Buchungstreiber bei 700. Im Entscheidungsblock 710 wird WRITE TYPE untersucht, und falls CMOS RECONSTRUCT eingestellt ist, so stellt der Zweig JA des Entscheidungsblockes 710 den Speicher WRITE CMOS auf "selbsttätiges Fortschreiten zum nächsten Puffer" ein, das im Block 720 auf falsch gesetzt wurde. Im Block 730 wird die Routine NVM DRIVER aufgerufen, um die CMOS-Buchungsdaten zu überschreiben, wie vorangstehend erläutert, mit der Buchungstreiber-Routine. Das Programm kehrt dann zur Buchungstreiberroutine zurück.
  • Wenn wiederum in bezug auf den Entscheidungsblock 710 der WRITE-TYPE nicht gleich dem rekonstruierten CMOS ist, so wird der NEIN-Zweig ausgewählt, und die Routine untersucht, ob der WRITE-TYPE eine Nicht-Auslösung ist, Block 740. Eine derartige Nicht-Auslösebuchung wird beispielsweise dann aufgerufen, wenn es erforderlich ist, ein Stapelregister zu löschen, Portowiederaufladeinformation einzustellen, und dergleichen. Im JA-Zweig des Entscheidungsblockes 740, also wenn der WRITE-TYPE gleich Nicht-Auslösung ist, geht die Routine damit weiter, daß sie die Auslösezähler in dem EEPROM-Speicher überprüft, Block 750. Sind die Auslösezähler auf Null eingestellt, so geht der JA-Zweig damit weiter, den WRITE-TYPE auf OVER-WRITE (Überschreiben) einzustellen, Block 760, und kehrt zur Hauptzeile der WRITE- Buchungstreiberroutine zurück. Falls der Auslösezähler nicht gleich Null ist, so stellt der NEIN-Zweig den WRITE-TYPE gleich EEPROM-Speicher-Aktualisierung ein, Block 770, um die Datenspeicherwerte im EEPROM vor dem nächsten Schritt zu aktualisieren.
  • Falls bezüglich des Entscheidungsblockes 740 die Abfrage, ob der Schreibtypus (WRITE-TYPE) gleich einer Nicht-Auslösung ist, NEIN ergibt, so geht der NEIN-Zweig direkt damit weiter, zu untersuchen, ob der WRITE-TYPE gleich OVER-WRITE ist, im Entscheidungsblock 780. Ist der WRITE-TYPE gleich OVER-WRITE, so geht der JA-Zweig damit weiter, die OVER-WRITE-Subroutine aufzurufen, Block 790. Ist der WRITE-TYPE nicht gleich OVER- WRITE, so geht der NEIN-Zweig des Entscheidungsblocks 780 damit weiter, daß er 800 blockiert, um zu überprüfen, ob der WRITE-TYPE gleich ACCOUNT (Buchen) ist. Ist der WRITE-TYPE gleich ACCOUNT, so geht der JA-Zweig des Entscheidungsblocks 100 dazu über, die ACCOUNT-Routine aufzurufen, Block 810. Ist der WRITE-TYPE nicht gleich ACCOUNT, so geht der NEIN-Zweig des Blocks 800 dazu über, die Routine (EEPROM MEMORY UPDATE) aufzurufen, Block 820.
  • Fig. 7 erläutert die Routine OVER-WRITE bei 900. Diese Routine dient dazu, einfach Daten von RAM-Puffern in die Datenspeichervorrichtung in einem bestimmten, nicht- flüchtigen Speicher zu kopieren. Diese Routine beginnt am Block 910 damit, den Auslösezählerzeiger in die RAM-Puffer zu bringen. Das Programm stellt im Block 920 für das Einschreiben (WRITE) in den CMOS-Speicher die Marke für selbständiges Fortschreiten auf falsch ein. Daher werden die Puffer in dem CMOS-Speicher einfach durch die Daten in entsprechenden RAM-Puffern überschrieben.
  • Dann wird im Block 930 die Routine NVN DRIVER aufgerufen, um die Daten in das CMOS einzuschreiben, und wenn eine erfolgreiche Rückkehr erfolgt, wird bei 940 eine Aktualisierungs-Rückgewinnungsadresse gelöscht, die vorher eingestellt wurde. Der Zweck dieses Blockes 940 wird nachstehend erläutert, im Zusammenhang mit TRIP ACCOUNTING und dem Einschalten des nicht-flüchtigen Speichers. Die Routine geht zum Block 950 über, zur Vorbereitung auf das Einschreiben in den EEPROM-Speicher, wobei wiederum das selbständige Fortschreiten auf falsch eingestellt ist. Bei 960 wird der Treiber für den nicht-flüchtigen Speicher aufgerufen, und im Block 970 wird die Rückgewinnungsadresse gelöscht. Die Routine kehrt dann zu der Routine ACCOUNTING DRIVER zurück.
  • Fig. 8 erläutert die Routine ACCOUNT, die bei 1000 beginnt. Die Routine wird damit begonnen, daß der Auslösezählzeiger in den RAM-Puffer gebracht wird, Block 1010, und geht damit weiter, daß sie sich auf das Einschreiben in den CMOS- Speicher vorbereitet, wobei in diesem Fall das selbständige Fortschreiten auf Wahr eingestellt wird, Block 1020. Der Treiber für den nicht-flüchtigen Speicher wird aufgerufen, um ein WRITE für den CMOS-Block 1030 durchzuführen, und nach erfolgreicher Beendigung des Schreibvorgangs wird im Block 1040 die Rückgewinnungsadresse gelöscht. Das Programm geht damit weiter, die Auslösezähler in dem EEPROM zu inkrementieren, Block 1050, und die Auslösezähler werden untersucht, um zu ermitteln, ob der Auslösezähler eine vorbestimmte Anzahl erreicht hat, beispielsweise 15, für den EEPROM, der in der momentanen Frankiermaschine verwendet wird. Falls die Auslöse-Zählwerte den Wert 15 erreicht haben, schickt der JA-Zweig einen Status "Aktualisierung des EEPROM- Speichers erforderlich" zum aufrufenden Modul zurück, Block 1080, und das Programm kehrt dazu zurück, die Routine UPDATE EEPROM aufzurufen. Ist der Auslösezählerwert nicht gleich 15, so kehrt der NEIN-Zweig des Entscheidungsblocks 1070 zum TRIP ACCOUNTING zurück, mit einem Status, der eine erfolgreiche Erledigung anzeigt.
  • Die Routine für das Aktualisieren des EEPROM, UPDATE OF EEPROM, ist in Fig. 9 gezeigt und beginnt bei 1100. Diese Routine geht im Block 1110 damit weiter, den nächsten Auslösezählerzeiger zu berechnen, und neue Auslösezähler auf Null zurückzusetzen, Block 1120. Dann wird der nächste Auslösezählerzeiger in dem RAM-Puffer gespeichert, Block 1130, und es erfolgt die Einstellung des WRITE CMOS-Speichers mit dem Wert Falsch für selbständiges Fortschreiten, Block 1140. Im Block 1150 wird der NVM DRIVER aufgerufen, um ein Einschreiben in den CMOS-Speicher durchzuführen, und im Block 1160 erfolgt ein Aktualisieren zur Wiedergewinnungsadresse mit dem Aktualisieren für Stromausfall-Buchungs-EEPROM, nach einer erfolgreichen Beendigung des Einschreibens in dem CMOS- Speicher. Das Einschreiben vom RAM in den EEPROM-Speicher, wobei das selbständige Fortschreiten auf TRUE (wahr) eingestellt ist, wird im Block 1170 ausgeführt, im Block 1180 wird der NVM DRIVER aufgerufen, und schließlich wird im 1190 der Rückgewinnungsadresenpuffer gelöscht. Die Routine kehrt dann zu "TRIP ACCOUNTING" zurück. In Fig. 10 ist bei 1200 die Routine NVM DRIVER gezeigt. Eine Routine, die NVM DRIVER genannt wird, kann auswählen, Information von dem CMOS- Speicher zu lesen, von dem EEPROM-Speicher, oder von beiden Speichern. Wie aus Tabelle 1 hervorgeht, sind die NVM-Geräte numeriert. In dieser Routine ist im Block 1210 der nicht- flüchtige Speicher des Speichergerätes gleich der Geräteanzahl. Diese Zahl wird im Block 1220 untersucht, und wenn die Zahl ausgewählt ist, die "beiden Geräten" enspricht, geht der JA-Zweig des Blockes damit weiter, die Gerätenummer auszusuchen, die gleich CMOS ist, im Block 1230, um die Routine einzuleiten.
  • Als nächstes wird im Block 1240 die Betriebsmarke untersucht, um festzustellen, ob ein Lesevorgang angefordert wird, und falls nicht, ruft der NEIN-Zweig des Entscheidungsblockes 1240 die Schreibroutine (für den Treiber für den nicht- flüchtigen Speicher) im Block 1250 auf. Der JA-Zweig des Entscheidungsblockes 1240 geht damit weiter, zu überprüfen, ob der zu lesende Puffer als schlecht (BAD) markiert ist, im Entscheidungsblock 1260. Der NEIN-Zweig dieses Entscheidungsblockes 1260 zeigt an, daß der Puffer nicht schlecht ist, und das Programm geht damit weiter, im Block 10270 die Daten aus dem ausgewählten, nicht-flüchtigen Speichergerät zu lesen.
  • Das Lesen wird im Entscheidungsblock 1280 untersucht, und wenn es OK ist, so kehrt der JA-Zweig zum Programm ACCOUNTING DRIVER zurück. War das Lesen nicht OK, so wird der Puffer als schlecht markiert, im Block 1290, und es erfolgt eine Untersuchung, ob im Block 1300 genügend gute (GOOD) Puffer verblieben sind. Gibt es ausreichend Puffer, so stellt der JA-Zweig einen nicht vernichtenden Fehlercode bei 1310 ein. Sind nicht genügend gute Puffer verblieben, so geht der NEIN- Zweig damit weiter, bei 1320 einen vernichtenden Fehlercode einzustellen, und dann gehen beide Zweige zum Entscheidungsblock 1330 über, in welchem die SAVE DEVICE NUMBER (Nummer des Speichergeräts) erneut untersucht wird, ob sie darauf eingestellt war "beide Geräte" zu lesen.
  • Wenn sich im Entscheidungsblock 1260 die Antwort ergibt, daß der Puffer als schlecht markiert war, so wird im Block 1340 ein Fehlercode gesetzt, und es erfolgt wie voranstehend eine Rückkehr zur Hauptzeile, um im Block 1330 zu untersuchen, ob NVM für das Gerät gleich "beide" ist. Der NEIN-Zweig dieses Entscheidungsblockes 1330 schickt einen Fehlercode zurück. Ist die Antwort gleich JA, so wird die Gerätenummer überprüft, um festzustellen, ob sie gleich CMOS ONLY (nur CMOS) ist, im Entscheidungsblock 1345. Falls NEIN, so wird die DEVICE NUMBER (Gerätenummer) überprüft, um festzustellen, ob sie gleich EEPROM ist, im Entscheidungsblock 1350.
  • Der NEIN-Zweig des Entscheidungsblockes 1350 verzweigt zum Block 1360, in welchem das Gerät auf EEPROM eingestellt wird, und es erfolgt ein Rücksprung, um zu überprüfen, ob der Puffer als schlecht markiert ist, im Entscheidungsblock 1260. Ist der ausgewählte Zweig im Entscheidungsblock 1350 gleich JA, so wird ein vernichtender Fehlercode im Block 1370 eingestellt, und der Fehlercode zurückgeschickt.
  • Wenn im Entscheidungsblock 1345 die Antwort gleich JA ist, so geht der JA-Zweig zum Entscheidungsblock 1380 über, um zu ermitteln, ob das Alternieren des CMOS-Speichers eingestellt ist. Falls ja, kehrt die Routine zurück. Falls NEIN, so geht der NEIN-Zweig damit weiter, das Gerät auf CMOS ALT einzustellen, im Block 1390, und kehrt in der Schleife zurück, um die Daten zu lesen.
  • Die Routine WRITE für den nicht-flüchtigen Speichertreiber ist in Fig. 11 bei 1400 gezeigt. Wenn WRITE aufgerufen wird, so wird der Speichercode im Block 1410 untersucht, um festzustellen, ob die Speichervorrichtung kreisförmig ist. Ist die Speichervorrichtung kreisförmig, so führt der JA- Zweig zu einer Untersuchung im Entscheidungsblock 1420, ob das selbsttätige Fortschreiten auf Wahr eingestellt ist. Ist im Block 1420 das selbsttätige Fortschreiten auf Wahr eingestellt, so schickt JA den Zeiger vorwärts zum nächsten Puffer, Block 1430, und kehrt zur Hauptzeile zurück. Entsprechend, wenn die Untersuchung des selbsttätigen Fortschreitens im Block 1420 das Ergebnis NEIN ergibt, oder wenn die Speichervorrichtung nicht kreisförmig ist, geht der NEIN-Zweig zur Hauptzeile über, zum Entscheidungsblock 1440, um festzustellen, ob der Puffer als schlecht markiert ist, Entscheidungsblock 1440.
  • Ist der Puffer nicht schlecht, so geht der NEIN-Zweig im Entscheidungsblock 1440 zum WRITE-Datenblock 1450 über. Ist der Puffer als schlecht markiert, so geht der JA-Zweig zum Block 1460 über, welcher den Zähler zum nächsten Puffer vorschiebt, Block 1460, und geht in der Schleife zurück, um den Puffer im Block 1440 zu untersuchen.
  • WRITE wird im Entscheidungsblock 1470 untersucht, und falls das Ergebnis nicht gut ist, verzweigt der NEIN-Zweig zum Block 1480, um den Puffer als schlecht zu markieren, und im Block 1490 erfolgt eine Untersuchung zur Feststellung, ob für den Betrieb ausreichend viele gute Puffer übriggeblieben sind. Der JA-Zweig des Entscheidungsblockes 1490 geht zurück zum Start des Programms WRITE.
  • Falls es nicht genügend viele gute Puffer gibt, so verzweigt der NEIN-Zweig zur Einstellung eines vernichtenden Fehlercodes im Block 1500, und vereinigt sich erneut mit der Hauptzeile im JA-Zweig vom Entscheidungsblock 1470. In jedem Fall wird die Nummer für SAVE DEVICE NVM überprüft, um fstzustellen, ob sie gleich "beide Geräte" ist, Block 1510, und wenn die Antwort NEIN ist, so kehrt der NEIN-Zweig zur Routine NVM DRIVER zurück. Ist die Antwort im Enscheidungsblock 1510 gleich JA, so geht der JA-Zweig zum Entscheidungsblock 1515 über, um festzustellen, ob die Speicherung für "CMOS MEMORY ONLY" nur für den CMOS-Speicher gedacht ist. Ist "CMOS MEMORY ONLY" eingestellt, so verzweigt der JA-Zweig des Entscheidungsblockes 1515 zum Entscheidungsblock 1540, um zu untersuchen, ob CMOS.ALT gesetzt ist. Falls ja, so kehrt die Routine zurück, und falls nein, so stellt der NEIN-Zweig vom Block 1540 das Gerät gleich "CMOS ALTERNED" (CMOS alternierend) ein, Block 1450, und springt zurück.
  • Wenn im Entscheidungsblock 1515 die Antwort gleich NEIN ist, so geht die Routine zum Entscheidungsblock 1520 über, um zu untersuchen, ob die Gerätenummer gleich EEPROM ist, im Block 1520. Ist die Antwort gleich JA, so kehrt die Routine erneut zur Hauptroutine NVM DRIVER zurück, und falls nicht, so wird die Gerätenummer gleich EEPROM eingestellt, Block 1530, und das Programm kehrt zum Start der Routine WRITE zurück.
  • Wir sind nun in der Lage, den tatsächlichen Arbeitsspielbuchungsvorgang zu diskutieren. Fig. 12 ist ein Flußdiagramm der Buchung und der NVM-Aktualisierung, die für jedes "Arbeitsspiel" (Auslösung) oder jeden Druck eines Portowertes erforderlich sind. Die Druckräder sind entweder in einem vorher eingestellten Zustand geblieben, oder wurden zu einer neuen Portowerteinstellung geändert, durch eine Kommunikation von dem Benutzer oder einem Peripheriegerät. Wie voranstehend erläutert, muß jedesmal dann, wenn Porto gedruckt wird, die folgende Information innerhalb der nicht- flüchtigen Speicher der Frankiermaschine aktualisiert werden, um den Druck des auf den Druckrädern eingestellten Portowertes zu berücksichtigen: Das aufsteigende Register, das absteigende Register, der Stückzählwert, der Portionszählwert, und die Portionsmenge. Das aufsteigende Register berücksichtigt die gesamte Gelmenge, die von der Frankiermaschine ausgegeben wird, wogegen das absteigende Register das in der Frankiermaschine verbleibende Kapital bucht. Stückzählung, Portionszählung und Portionsmenge werden normalerweise zu Beginn eines Laufes auf Null eingestellt, so daß die Anzahl der Umschläge berücksichtigt wird, auf welche Porto aufgebracht wird. Die Portionsmenge und die Portionszählung sind normalerweise durch den Benutzer auf Null rücksetzbar, damit der Benutzer das tatsächliche Porto verfolgen kann, das während eines momentanen Laufs verbraucht wird, und ebenso die Anzahl von Stücken in dem Lauf.
  • Ein zusätzlicher Wert, der gemäß der Erfindung gespeichert wird, ist der Wert des Portos, auf welchen die Druckräder eingestellt werden.
  • Der erste Schritt in der Arbeitsspielbuchungsroutine 1400 besteht daher darin, eine Überprüfung der Einstellung der Druckräder durchzuführen, um zu ermitteln, ob es eine Anderung des eingestellten Wertes seit der letzten Auslösung der Maschine gab, Block 1410. Falls eine Änderung aufgetreten ist, so geht der JA-Zweig, Block 1420, dazu über, eine Stromausfall-Nichtauslösungs-Rückgewinnungsadresse in einem Haupt-Puffer und einem alternativen Puffer in dem CMOS NVM 104 anzubringen. Dann wird die Routine ACCOUNTING DRIVER aufgerufen, mit einer Parametereinstellung auf NON-TRIP (keine Auslösung), Block 1430, um die Datenspeichervorrichtungen zu aktualisieren, sowohl in dem CMOS als auch in dem EEPROM. Während des Verlaufs einer erfolgreichen Speicheraktualisierung wird der Puffer für die Rückgewinnungsadresse gelöscht, und das Programm kehrt zurück, um sich mit dem Zweig NO CHANGE (keine Änderung) vom Block 1410 zu vereinigen.
  • Der nächste Schritt, Block 1440, besteht darin, eine Notizzettelbuchung in dem RAM durchzuführen. Die neu berechnete Information für das aufsteigende und absteigende Register, und so weiter, wird in RAM-Puffer gebracht, zur Übertragung an entsprechende Puffer in den NVMs.
  • Es wird deutlich, daß dies ein kritischer Moment ist, da ja dann, wenn die Stromversorgung für die elektronische Frankiermaschine verloren geht, der Inhalt dieses temporären Speichers verloren geht. Um den Verlust kritischer Information zu vermeiden, wenn sich der Status kritischer Daten ändert, wird sie nun unmittelbar an NVM übertragen. Um die Datenübertragung zu schützen, wird gemäß der Erfindung jedesmal dann, wenn eine derartige Aktualisierung für den nicht-flüchtigen CMOS-Speicher erforderlich ist, eine Stromausfall-Buchungsrückgewinnungsadresse eingestellt, wie im Block 1450 gezeigt ist. Diese Adresse ist ein Zeiger zu einem Programm im ROM, welches das Frankiermaschinenprogramm dazu veranlaßt, eine Routine aufzurufen, um beim Stromeinschalten vom ursprünglichen Punkt von TRIP ACCOUNTINT erneut zu beginnen, um einen Zyklus durch die Routine seit Beginn des Arbeitsspiels durchzuführen. Es wird kein Versuch unternommen, die Buchung seit dem exakten Zeitpunkt des Stromausfalls fortzusetzen. Für beste Ergebnisse wird die Stromausfall-Auslöserückgewinnungsadresse sowohl in einem Hauptspeicherpuffer als auch in einem alternativen Speicherpuffer im CMOS-Speicher gespeichert, zusammen mit CRC für beide.
  • Der nächste Block, 1460, ruft den ACCOUNTING DRIVER (500) für den Buchungsvorgang auf. Man erinnert sich daran, daß während der Diskussion der Routine ACCOUNTING DRIVER die Signifikanz des Löschens dieser Stromausfall-Buchungsadresse nicht im einzelnen diskutiert wurde. Es wird nunmehr deutlich, daß die Adresse, die in dieser Routine TRIP ACCOUNTING eingestellt wrude, dadurch eine Rückgewinnung gestattet, daß sie die Berechnungen zum Beginn dieser Auslösung zurückbringt, selbst wenn der Aktualisierungsvorgang nahezu vollständig beendet wurde. Die Adresse wird dann gelöscht, sobald die NVM- Speicheraktualisierung beendet ist.
  • Wenn ACCOUNT zur Auslöseroutine zurückkehrt, wird der Status des Auslösezählers überprüft, Entscheidungsblock 1470, und wenn der Zähler nicht den Wert 15 erreicht hat, kehrt der NEIN-Zweig der Routine zur Task-Bearbeitung zurück. Hat der Zähler den Wert 15 erreicht, so geht der JA-Zweig des Entscheidungsblocks 1470 damit weiter, im Block 1480 eine Adresse für Stromausfall-Auslösung-EEPROM-Aktualisierung einzustellen, und den ACCOUNTING DRIVER mit einem Parameter zu versorgen, der auf EEPROM UPDATE eingestellt ist, Block 1490. Nach einem erfolgreichen Schreiben kehrt die Routine TRIP zur Task-Bearbeitung zurück.
  • Die Fig. 13 und 14 stellen ein Flußdiagramm dar, welches den Stromeinschaltvorgang der Buchungsabschnitte des nicht- flüchtigen Speichers erläutert. In Fig. 13 ist die NVM- Stromeinschaltroutine bei 1600 gezeigt. Eine Stromeinschaltmarke wird überprüft, und die Routine initialisiert die Geräte-Bittabelle, Block 1610. Man erinnert sich daran, daß jedes Gerät vier (4) Kopien der Bittabelle in ihren unteren Adreßregistern aufrecht erhält. Die erste gute Kopie wird festgestellt, und die Bittabelle für jedes Gerät wird an das RAM übertragen. Im Block 1620 werden die Zähler, welche die Anzahl guter Puffer darstellen, aus dem nicht- flüchtigen Speicher gelesen. Daraufhin werden im Block 1630 die Startadressen für die Speichervorrichtungen an das RAM übertragen. Es wird deutlich, daß dies die ursprünglichen Adressendaten darstellt, die sich im ROM befinden. Der nächste Schritt besteht darin, die Speichervorrichtungs- Zeiger im Block 1640 zu initialisieren, auf der Grundlage des momentanten Status des nicht-flüchtigen Speichers und der Bittabellen, die im Block 1610 initialisiert wurden.
  • Die Routine geht dann im Block 1650 zur POWER FAlL (Stromausfall) -Rückgewinnungsbearbeitung über. Dann gelangt die Routine zum Block 1660, in welchem die Arbeitsspielpuffer des CMOS und des EEPROM überprüft werden, um festzustellen, ob die Puffer gleich sind. Wenn im Entscheidungsblock 1670 EEPROM und CMOS nicht gleich sind, so geht der NEIN-Zweig damit weiter, die Puffer gleichzusetzen, unter Verwendung der Kopie mit dem höchsten Zählwert für die Stückzahl, Block 1680, und kehrt zum Anwendungsprogramm zurück, und anderenfalls geht die Routine direkt zum Anwendungsprogramm im JA-Zweig zurück.
  • Fig. 14 zeigt bei 1700 die Stromausfallbearbeitung. Man erinnert sich, daß die Rückgewinnungsadressen in einem Hauptpuffer und einem alternativen Puffer im CMOS-Speicher gespeichert sind. Die Stromeinschalt-Bearbeitungsroutine liest die Rückgewinnungsdaten in den Haupt-CMOS-Speicherblock 1710 ein, und wenn CRC im Entscheidungsblock 1720 gut ist, so geht der JA-Zweig zum Block 1730 über, um die Rückgewinnungsadresse zu überprüfen. Falls im Block 1740 die Rückgewinnungsadresse gleich Null ist, so gibt es keine Anzeige für eine unvollständige Buchung, und der JA-Zweig kehrt zu dem Haupt-NVM-Stromeinscaltprogramm zurück.
  • Ergibt die Überprüfung, daß im Entscheidungsblock 1740 die Rückgewinnungsadresse nicht gleich Null ist, so veranlaßt der NEIN-Zweig einen Aufruf der Rückgewinnungsroutine an der Rückgewinnungsprogrammadresse in dem nicht-flüchtigen Speicher, Block 1750. Wenn im Entscheidungsblock 1720 CRC als nicht gut ermittelt wird, geht der NEIN-Zweig zum Block 1760 über, um die Rückgewinnungsdaten in das alternative CMOS- Register einzulesen. CRC wird im Block 1770 überprüft, und wenn es sich ebenfalls als nicht gut herausstellt, so stellt der NEIN-Zweig einen vernichtenden Fehler ein, da die Rückgewinnungsdaten keines der beiden Speicher gelesen werden können.
  • Ist alledings bei diesem Entscheidungsblock 1770 CRC gut, so geht der JA-Zweig zum Entscheidungsblock 1780 über, um festzustellen, ob die Rückgewinnungsadresse gleich Null ist. Ist die Antwort JA, so kehrt die Routine zur NVM- Stromeinschaltung zurück, da keine weitere Aktion erforderlich ist. Ist die Rückgewinnungsadresse nicht gleich Null, so veranlaßt der NEIN-Zweig einen Sprung zur Rückgewinnungsprogrammadresse, die in dem nicht-flüchtigen Speicherblock 1790 gespeichert ist.

Claims (7)

1. Frankiermaschine (10) mit:
einem unter Steuerung eines Mikrocomputerprogramms arbeitenden Mikrocomputer (50);
einem nicht-fliichtigen Speicher (106), der zum Speichern von Buchhaltungsdaten an den Mikrocomputer angeschlossen ist;
einer Druckeinrichtung (20, 22) zum Drucken eines Freistempels, welcher einen Wert enthält;
wobei die Druckeinrichtung betriebsmäßig an den Mikrocomputer angeschlossen ist; und das Drucken des Wertes durch den Mikrocomputer und die Buchhaltungsdaten gebucht wird, welche in dem nicht-flüchtigen Speicher gespeichert sind;
wobei der nicht-flüchtige Speicher eine erste Mehrzahl an Puffern aufweist, die eine Buchhaltungsdaten-Speichervorrichtung umfassen, und eine zweite Mehrzahl von Puffern, welche eine Druckzähler-Speichervorrichtung umfassen; und wobei die Buchhaltungsdaten aus Buchhaltungsdaten berechnet werden, die in der ersten Mehrzahl von Puffern gespeichert sind, und aus den Druckzählerdaten, die in der zweiten Mehrzahl von Puffern gespeichert sind.
2. Maschine nach Anspruch 1, bei welcher weiterhin eine Einrichtung zum Aktualisieren der Buchhaltungs-Speichervorrichtung durch Daten in der Druckzahler-Speichervorrichtung vorgesehen ist.
3. Maschine nach Anspruch 1, bei welcher der nicht-flüchtige Speicher ein EEPROM-Speicher (106) ist.
4. Maschine nach Anspruch 3, bei welcher der nicht-flüchtige Speicher ein nicht-flüchtiger Speicher mit geringer Lebensdauer ist, und die zweite Mehrzahl an Puffern in einer ringförmigen Pufferanordnung angeordnet ist.
5. Maschine nach Anspruch 1, bei welcher weiterhin ein zweiter, nicht-flüchtiger Speicher (104) mit hoher Lebensdauer zum Speichern von Echtzeit-Buchhaltungsinformation vorgesehen ist.
6. Maschine nach Anspruch 5, bei welcher der zweite, nicht-flüchtige Speicher ein batteriegestützter CMOS-Speicher mit wahlfreiem Zugriff (RAM) (104) ist.
7. Frankiermaschine mit einem nicht-flüchtigen Speichermodul mit einem ersten (104) und einem zweiten (106) nicht-flüchtigen Speicher, auf welche durch einen Mikrocomputer zum Buchen von Frankierwerten zugreifbar ist, wobei der erste Speicher eine Buchhaltungsdaten-Speichervorrichtung zum Speichern von Buchhaltungsinformation in bezug auf die Echtzeit-Buchung des Druckens von Frankiermaschinen-Geldsummen aufweist, und der zweite Speicher eine erste Mehrzahl an Puffern zum Halten von Buchhaltungsdaten sowie eine zweite Mehrzahl an Puffern zum Halten von Druckzählerinformation aufweist, aus welchen Daten einer momentanen Buchung berechnet werden können.
DE68917578T 1988-12-30 1989-11-29 Elektronische Frankiermaschine mit einer Verbesserung im nichtlöschbaren Speichern von Buchhaltungsdaten. Expired - Fee Related DE68917578T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/292,194 US5012425A (en) 1988-12-30 1988-12-30 EPM having an improvement in non-volatile storage of accounting data

Publications (2)

Publication Number Publication Date
DE68917578D1 DE68917578D1 (de) 1994-09-22
DE68917578T2 true DE68917578T2 (de) 1994-12-22

Family

ID=23123622

Family Applications (1)

Application Number Title Priority Date Filing Date
DE68917578T Expired - Fee Related DE68917578T2 (de) 1988-12-30 1989-11-29 Elektronische Frankiermaschine mit einer Verbesserung im nichtlöschbaren Speichern von Buchhaltungsdaten.

Country Status (6)

Country Link
US (1) US5012425A (de)
EP (1) EP0376487B1 (de)
JP (1) JP2859336B2 (de)
AU (1) AU626611B2 (de)
CA (1) CA2003377C (de)
DE (1) DE68917578T2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10150464A1 (de) * 2001-10-16 2003-04-30 Deutsche Post Ag Verfahren und Vorrichtung zur Bearbeitung von Postsendungen

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2251324B (en) * 1990-12-31 1995-05-10 Intel Corp File structure for a non-volatile semiconductor memory
GB2251323B (en) * 1990-12-31 1994-10-12 Intel Corp Disk emulation for a non-volatile semiconductor memory
US5659744A (en) * 1991-10-15 1997-08-19 International Computers Limited Data file store system with means for efficiently managing freeing of data blocks
US5369616A (en) * 1992-10-30 1994-11-29 Intel Corporation Method for assuring that an erase process for a memory array has been properly completed
US5471604A (en) * 1992-10-30 1995-11-28 Intel Corporation Method for locating sector data in a memory disk by examining a plurality of headers near an initial pointer
US5479633A (en) * 1992-10-30 1995-12-26 Intel Corporation Method of controlling clean-up of a solid state memory disk storing floating sector data
US5416782A (en) * 1992-10-30 1995-05-16 Intel Corporation Method and apparatus for improving data failure rate testing for memory arrays
US5822781A (en) * 1992-10-30 1998-10-13 Intel Corporation Sector-based storage device emulator having variable-sized sector
US5452311A (en) * 1992-10-30 1995-09-19 Intel Corporation Method and apparatus to improve read reliability in semiconductor memories
US5448577A (en) * 1992-10-30 1995-09-05 Intel Corporation Method for reliably storing non-data fields in a flash EEPROM memory array
US5341330A (en) * 1992-10-30 1994-08-23 Intel Corporation Method for writing to a flash memory array during erase suspend intervals
US5535369A (en) * 1992-10-30 1996-07-09 Intel Corporation Method for allocating memory in a solid state memory disk
US5740395A (en) * 1992-10-30 1998-04-14 Intel Corporation Method and apparatus for cleaning up a solid state memory disk storing floating sector data
FR2700043B1 (fr) * 1992-12-30 1995-02-10 Neopost Ind Machine à affranchir permettant de mémoriser un historique.
US5581723A (en) * 1993-02-19 1996-12-03 Intel Corporation Method and apparatus for retaining flash block structure data during erase operations in a flash EEPROM memory array
US5835933A (en) * 1993-02-19 1998-11-10 Intel Corporation Method and apparatus for updating flash memory resident firmware through a standard disk drive interface
US5603036A (en) * 1993-02-19 1997-02-11 Intel Corporation Power management system for components used in battery powered applications
US5740349A (en) * 1993-02-19 1998-04-14 Intel Corporation Method and apparatus for reliably storing defect information in flash disk memories
US5586285A (en) * 1993-02-19 1996-12-17 Intel Corporation Method and circuitry for increasing reserve memory in a solid state memory disk
SG49632A1 (en) * 1993-10-26 1998-06-15 Intel Corp Programmable code store circuitry for a nonvolatile semiconductor memory device
US5438549A (en) * 1994-02-28 1995-08-01 Intel Corporation Nonvolatile memory with volatile memory buffer and a backup power supply system
US5572698A (en) * 1994-04-18 1996-11-05 Rolm Company System and method for allocating memory resources where the category of a memory resource determines where on a circular stack a pointer to the memory resource is placed
US5765175A (en) * 1994-08-26 1998-06-09 Intel Corporation System and method for removing deleted entries in file systems based on write-once or erase-slowly media
US5822256A (en) * 1994-09-06 1998-10-13 Intel Corporation Method and circuitry for usage of partially functional nonvolatile memory
US5563828A (en) * 1994-12-27 1996-10-08 Intel Corporation Method and apparatus for searching for data in multi-bit flash EEPROM memory arrays
DE19650993A1 (de) * 1996-11-26 1998-05-28 Francotyp Postalia Gmbh Anordnung und Verfahren zur Verbesserung der Datensicherheit mittels Ringpuffer
US5887046A (en) * 1997-11-20 1999-03-23 Motorola Inc. Method, system, and device for accumulating data and maintaining the accumulated data
US7028014B1 (en) * 1998-03-18 2006-04-11 Ascom Hasler Mailing Systems Tamper resistant postal security device with long battery life

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1603744A (en) * 1978-02-24 1981-11-25 Pitney Bowes Ltd Resettable counter for postage meter
US4547853A (en) * 1982-10-13 1985-10-15 Pitney Bowes Inc. Electronic postage meter reset circuit
US4584647A (en) * 1983-10-17 1986-04-22 Pitney Bowes Inc. Electronic postage meter with a ring counter
JPS6162161A (ja) * 1984-08-22 1986-03-31 ピツトネイ・ボウズ・インコーポレーテツド 電子郵便料金計用リアルタイム及びパワーダウンデータ記憶能力を有する不揮発メモリ
US4710882A (en) * 1985-03-12 1987-12-01 Pitney Bowes Inc. Electronic postage meter having a nonvolatile memory selection means
DE3650330T2 (de) * 1985-10-16 1995-11-16 Pitney Bowes Frankiermaschinensystem zur nichtflüchtigen Speicherung von Daten.
US4760534A (en) * 1985-12-26 1988-07-26 Pitney Bowes Inc. Mailing system with postage value transfer and accounting capability
CA1292316C (en) * 1986-09-05 1991-11-19 Robert H. Whisker Postal meter system
FR2620249B1 (fr) * 1987-03-31 1989-12-01 Smh Alcatel Machine a affranchir a gestion de traces periodiques
FR2620246B1 (fr) * 1987-03-31 1989-11-24 Smh Alcatel Memoire non volatile a faible taux d'ecriture et machine a affranchir en faisant application

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10150464A1 (de) * 2001-10-16 2003-04-30 Deutsche Post Ag Verfahren und Vorrichtung zur Bearbeitung von Postsendungen

Also Published As

Publication number Publication date
CA2003377A1 (en) 1990-06-30
EP0376487A3 (en) 1990-12-27
EP0376487A2 (de) 1990-07-04
EP0376487B1 (de) 1994-08-17
CA2003377C (en) 1999-08-10
JPH02266487A (ja) 1990-10-31
US5012425A (en) 1991-04-30
AU4578889A (en) 1990-07-05
DE68917578D1 (de) 1994-09-22
JP2859336B2 (ja) 1999-02-17
AU626611B2 (en) 1992-08-06

Similar Documents

Publication Publication Date Title
DE68917578T2 (de) Elektronische Frankiermaschine mit einer Verbesserung im nichtlöschbaren Speichern von Buchhaltungsdaten.
DE68916927T2 (de) Elektronische Frankiermaschine mit Verbesserungen in der Sicherheit beim Aktualisieren der Buchhaltung.
DE3687344T2 (de) Verfahren zur datenumsiedlung in einem speichersystem und zur lebensdauererweiterung eines solchen systems.
EP0660269B1 (de) Verfahren zur Verbesserung der Sicherheit von Frankiermaschinen
DE3688014T2 (de) Verfahren zur Steuerung von Frankiermaschinen.
DE69122733T2 (de) Frankiermaschine
DE4447404A1 (de) Verfahren zur Dateneingabe in eine Waage
EP0762337A2 (de) Verfahren und Anordnung zur Erhöhung der Manipulationssicherheit von kritischen Daten
EP1113403A1 (de) Verfahren zur Erzeugung eines Sicherheitsabdruckes
DE3644318A1 (de) Postaufgabesystem mit portowert-uebertragung und verrechnungsfaehigkeit
DE3875270T2 (de) Frankiermaschine mit verwaltung periodischer ablaeufe.
US5946671A (en) Postage meter
DE3206113A1 (de) Elektronische frankiermaschine mit speicherschwaechen-anzeige
EP1615176A2 (de) Verfahren zur Speicherung und Verwaltung von Daten und Anordnung zur Durchführung des Verfahrens
DE2463404C2 (de) Frankiereinrichtung mit einer Frankiermaschine
DE69221538T2 (de) Ferndiagnoseverfahren für Frankiermaschine
WO1989011134A1 (en) Electronic computing and storage system for franking machines
DE69405424T2 (de) Verfahren zum Kontrollieren des täglichen Postgebührenverbrauchs einer Frankiermaschine und Frankiermaschine zur Durchführung dieses Verfahrens
DE3627124A1 (de) Frankiermaschinen-verriegelungssystem
DE69304672T2 (de) Frankiermaschine mit Geschichtsabspeicherung
EP0854425A2 (de) Anordnung und Verfahren zur Verbesserung der Datensicherheit mittels Ringpuffer
AU631580B2 (en) Epm having an improvement in non-volatile memory organization
DE4217830C2 (de) Verfahren zum Betreiben einer Datenverarbeitungsanlage
DE69015845T2 (de) Elektronische Frankiermaschine.
DE3426524C2 (de) Verfahren zur Steuerung der Abrechnungsvorgänge in einer elektronischen Frankiermaschine

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee