DE2817757A1 - Datenverarbeitungssystem - Google Patents
DatenverarbeitungssystemInfo
- Publication number
- DE2817757A1 DE2817757A1 DE19782817757 DE2817757A DE2817757A1 DE 2817757 A1 DE2817757 A1 DE 2817757A1 DE 19782817757 DE19782817757 DE 19782817757 DE 2817757 A DE2817757 A DE 2817757A DE 2817757 A1 DE2817757 A1 DE 2817757A1
- Authority
- DE
- Germany
- Prior art keywords
- read
- computer
- memory
- data
- write
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/74—Masking faults in memories by using spares or by reconfiguring using duplex memories, i.e. using dual copies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/20—Point-of-sale [POS] network systems
- G06Q20/201—Price look-up processing, e.g. updating
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07G—REGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
- G07G1/00—Cash registers
- G07G1/12—Cash registers electronically operated
Landscapes
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Hardware Redundancy (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Cash Registers Or Receiving Machines (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
B.A.Fairnian 2-1-1
DATENVERARBEITUNGS SYSTEM
Die Erfindung betrifft ein Datenverarbeitungssystem mit
einer Anzahl von örtlich verteilten und mit einer Zentrale verbundenen Datenstationen, wobei die Zentrale ein Paar
paralleler Rechner aufweist, von denen jeder zumindest einen Schreib-Lese-Speicher, eine Ein-/Ausgabesch"altung und
eine zentrale Verarbeitungseinrichtung aufweist und wobei die Schreib-Lese-Speicher beider Rechner normalerweise konstante
und dynamische Daten enthalten.
Eine typische Anwendung für ein derartiges Datenverarbeitungssystem
ist in einem Kassensystem mit einem zentralen Rechner gegeben, bei dem die Kassen die Datenstationen sind.
Bei einigen Kassensystemen, beispielsweise dem System nach der US-PS 3 946 220, ist eine Anzahl von Kassenstationen mit
einer zentralen Verarbeitungseinheit, d.h. einem Rechner, verbunden, der die von den Kassenstationen empfangenen Daten verarbeitet,
indem er Unterprogramme verwendet, die in einem Festwertspeicher gespeichert sind, und dynamische Daten, die
in einem Schreib-Lese-Speicher gehalten werden. Der Rechner berechnet End- und Zwischensummen und führt andere Berechnungen
durch, die von den Kassenstationen verlangt werden, und gibt
809851/0609
B.A.Fairman 2-1-1
Daten an die Kassenstationen, die die Bedienungsperson dort direkt ablesen kann. Außerdem druckt der Rechner die Endsummen
an einer zentralen Kontrolleinheit aus. Wenn ein solches Kassensystem bei einer großen Ladenkette mit einem schnellen
Warenabsatz verwendet werden soll, so ist es äußerst wichtig, daß ein Ersatzrechner vorgesehen ist, für den Fall, daß der
erste Rechner während des Betriebs ausfällt. Das Datenverarbeitungssystem
weist also zwei zentrale Rechner auf. Der eine Rechner ist aktiv und bedient die Datenstationen, wogegen
der andere Rechner inaktiv ist und einfach als Ersatzrechner dient. Falls der erste Rechner ausfällt, so muß der Ersatzrechner
in Betrieb gesetzt werden, um die Steuerung und Bedienung der Datenstationen zu übernehmen. Diese Datenstationen
sind sowohl mit dem aktiven als auch mit dem inaktiven Rechner verbunden.
Obwohl die Festwertspeicher beider Rechner die gleichen Daten enthalten, hat der Schreib-Lese-Speicher des aktiven Rechners
vor dessen Ausfall hinsichtlich der Datenstationen die neuesten Daten enthalten. Dies sind Daten, die bei dem zur Zeit des
Ausfalls des Rechners gerade ablaufenden Transaktionen auftreten. Da der Ersatzrechner, wenn er aktiviert wird, die unmittelbar
zuvor von dem anderen Rechner durchgeführten Berechnungen übernehmen sollte, muß der Ersatzrechner, wenn er aktiviert wird,
die neuesten und gültigen Daten zur Verfügung haben.
Die bekannten Datenverarbeitungssysteme sind nicht vor dieses Problem gestellt. In typischer Weise ist dort eine
Redundanz der Speicher dadurch vorgesehen, daß der aktive Speicher und der Ersatzspeicher parallel betrieben werden.
809851/0609
B.A.Fairnian 2-1-1
Ein Nachteil dieser Anordnung besteht darin, daß bei einem Ausfall des aktiven Teils der Ersatzspeicher gleichzeitig
betroffen und sein Inhalt möglicherweise ungültig wird. Dies kann sich als Folge eines defekten Bauteils im aktiven Rechner
unmittelbar vor dessen Ausfall ereignen.
Es ist daher die Aufgabe der Erfindung, ausgehend von dem eingangs genannten Datenverarbeitungssystem ein solches Datenverarbeitungssystem
anzugeben, das diese Nachteile vermeidet.
Diese Aufgabe wird mit den im Patentanspruch 1 angegebenen
Mitteln gelöst. Weiterbildungen ergeben sich aus den Unteransprüchen.
Die Erfindung wird nun anhand der Zeichnungen beispielsweise näher erläutert.
Es zeigen:
Fig.1 ein Blockschaltbild des erfindungsgemäßen Datenverarbeitungssystems;
Fig.2 ein genaueres Blockschaltbild zur Erläuterung der
redundanten Speicher des Systems nach Fig.1;
Fig.3 ein Flußdiagramm, das die Schritte des Systems
zeigt, die zur Bestimmung, welcher der zwei Schreib-
Lese-Speicher die neuesten und gültigen Daten enthält,
erfolgen;
8 0 9 8 5 1 / 0 G 0 9
B.A.Fairman 2-1-1
Fig.4 ein Diagramm zur Erläuterung der in Fig. 3
gezeigten Schritte;
Fig.5 ein Flußdiagramm, das einen Teil der in Fig.3
gezeigten Schritte deutlicher erläutert;
Fig.6 ein Flußdiagramm, das einige der in Fig.5 gezeigten
Schritte näher erläutert;
Fig. 7 ein Flußdiagramm, das einige der in Fig.6 gezeigten
Schritte näher erläutert;
Fig.8 und 9 zwei zusammengehörige Flußdiagramme, die die
Schritte zeigen, die bei der zum Auslesen des jeweils
anderen Schreib-Lese-Speichers dienenden Steuerungsschaltung nach Fig.2 erfolgen;
8 0 9 8 5 1/0609
B.A.Fairman 2-1-1
Die Fig.1 zeigt ein Blockschaltbild des Datenverarbeitungssystems
oder Kassensystems gemäß der Erfindung. Eine Bedienungsperson
gibt die Daten wie z.B. die Menge der zu bestellenden Ware usw. an ihrer Datenstation 10, von denen es etwa 12 im
vorliegenden System gibt, über die Eingabetastatur ein. Darauf wird der Preis der Ware sowie die Steuer berechnet und an der
Station eine Endsumme angezeigt. Die zur Durchführung dieser Berechnung notwendigen Daten werden von jeder Datenstation
einer Zwischenschaltung 12 zugeführt. Die Datenstationen sind mit zwei vollständig getrennten Rechnern verbunden. Der erste
Rechner, in Fig.1 mit A bezeichnet, wird im folgenden als der aktive Rechner bezeichnet, um die Beschreibung des Systems zu
vereinfachen. Aktiv bedeutet, daß dieser Rechner derjenige sein wird, der die von den Datenstationen empfangenen Daten aktiv
verarbeitet. Der andere Rechner, mit B bezeichnet, dient zunächst als Ersatzrechner. Solange er als Ersatzrechner betrieben wird,
empfängt er keine Daten von den Datenstationen und unternimmt keine datenverarbeitenden Funktionen. Die beiden Rechner enthalten
identische Bauteile. Es werden nun die Bauteile des Rechners A beschrieben, wobei die gestrichenen entsprechenden
Bezugszeichen die gleichen Elemente des Rechners B bezeichnen,
das nicht eigens beschrieben wird.
Die Zwischenschaltung 12 ist mit einem Mikroprozessor 14 über eine doppelt gerichtete Datenbusleitung und eine Adressenbusleitung,
die in Fig.1 im Prinzip als eine einzige Busleitung 16 gezeigt sind, verbunden, über diese Busleitung 16 ist auch
ein programmierter Festwertspeicher 18 (PROM) und ein Schreib-Leseapeicher
(RAM) 20, die nachstehend als ein Schreib-Lese-Speicher bezeichnet werden, mit dem Mikroprozessor 14 verbunden. Mit
diesem Mikroprozessor 14 ist ferner eine Drucker-Zwischen-
809851/0609
B.A.Fairman 2-1-1
schaltung 22 verbunden, die einen Drucker 24 steuert.
Wie später noch genauer erläutert wird, besteht ein wesentliches Merkmal der Erfindung darin, daß der Mikroprozessor 14 des
aktiven Rechners unter gewissen Bedingungen den Schreib-Lese-Speicher 20' des inaktiven Rechners adressieren kann. Damit
dies geschehen kann, ist die Busleitung 16 des Rechners A selektiv mit der Busleitung 16' des Rechners B verbunden.
Dies erfolgt über eine zum Auslesen des jeweils anderen Speichers dienende Steuerungsschaltung 26, die über eine
Busleitung 28 mit einer ebenfalls zum Auslesen des jeweils anderen Speichers dienenden Steuerungsschaltung 26' im Rechner
B verbunden ist*
Jeder der programmierten Festwertspeicher 18 und 18' enthält
Programmnachrichten, die den Bedienungspersonen an den Daten-Stationen
12 mitteilen, welche Operationen gerade ablaufen und welche Tasten gedrückt werden müssen. Der programmierte
Festwertspeicher 18 enthält außerdem das Programm für den Mikroprozessor 14. Der Schreib-Lese-Speicher 20 enthält dynamische
Prozessdaten, die sich im aktiven Rechner im Verlauf der Rechenoperationen ändern. Die Daten, die im Schreib-Lese-Speicher
20' des inaktiven Rechners stehen, sind dagegen konstant während seiner inaktiven Periode, werden jedoch im
Speicher aufgefrischt. Die im inaktiven Schreib-Lese-Speicher 20' enthaltenen Daten sind nicht nur die Zwischen- und Endsummen
der vor dem Umschalten in den inaktiven Zustand abgelaufenen Operationen, sondern auch bestimmte andere Daten, die konstant
und beiden Schreib-Lese-Speichern 20 und 20' gemeinsam sind,
wie noch genauer erklärt wird.
809851/0609
B.A.Fairman 2-1-1
Bei dem vorliegenden System ist es möglich, manuell von dem einen auf den anderen Rechner umzuschalten. Wenn beispielsweise
der Rechner A zusammenbricht, so wird manuell auf den Rechner B umgeschaltet, so daß der Rechner A außer
Betrieb gesetzt wird und der Rechner B zum aktiven Rechner wird. Wie genauer erklärt wird, ist es manchmal möglich, die
Umschaltung beispielsweise am Ende eines Betriebstages vorzunehmen.
In einer anderen Situation, bei einem Stromausfall, schaltet
sich der Rechner selbst ab und schreibt eine kodierte Nachricht in den aktiven Schreib-Lese-Speicher, daß das Abschalten
erfolgreich abgelaufen ist. Diese Routine wird durch den Mikroprozessor durchgeführt.
Da es bei einem Start nach einem Abschalten, gleichgültig aus welchen Gründen, erwünscht ist, den aktiven Rechner mit
Daten zu betreiben, die die neuesten Daten und gültig sind, muß der Rechner feststellen können, welcher der beiden Schreib-Lese-Speicher
20 und 20' die neuesten und gültigen Daten enthält. Der Schreib-Lese-Speicher des Rechners, der zuletzt aktiv
war, würde theoretisch die neuesten und gültigen Daten enthalten. Jedoch trifft dies in der Praxis nicht notwendigerweise
zu. Falls das Abschalten wegen einer Fehlfunktion im aktiven Rechner erfolgt, so können die Daten im Schreib-Lese-Speicher
dieses Rechners vollständig durcheinander geraten und alle ungültig werden.
809851/0609
B.A.Fairman 2-1-1
Wie in Fig.2 gezeigt, wird über einen Schalter 30 Wechselstrom
entweder einer Hauptstromversorgungseinheit 32 für den Rechner A oder einer Hauptstromversorgungseinheit 32'
für den Rechner B zugeführt. Ebenso wird eine Hilfsstrom-Versorgungseinheit
34 für den Rechner A und eine Hilfsstromversorgungseinheit 34' für den Rechner B von Wechselstrom
gespeist. Der an den Stromversorgungen 34 und 34' liegende Wechselstrom hängt nicht von der Stellung des Schalters 30
ab, sondern fließt fortwährend, so lange wie der Wechselstrom dem gesamten Rechner zugeführt wird. Die Hilfsstromversorgungseinheiten
34 und 34' enthalten außerdem Batterien, um im Falle eines totalen Ausfalls des Versorgungsstroms des Rechners den
notwendigen Strom zu liefern. Die Hauptstromversorgungseinheit 32 ist mit dem Mikroprozessor 14 und mit einer Steuerungseinheit
36 verbunden. In entsprechender Weise ist die Stromversorgungseinheit 32' mit dem Mikroprozessor 14 und der
Steuerungseinheit 36' des Rechners B verbunden. Die Stromversorgungseinheit
34 ist mit dem Schreib-Lese-Speicher 20 und der zum Auslesen des jeweils anderen Schreib-Lese-Speichers
dienenden Steuerungsschaltung 26 des Rechners A verbunden, wogegen die Stromversorgungseinheit 34" mit dem Schreib-Lese-Speicher 20'
und der entsprechenden Steuerungsschaltung 26' des Rechners B verbunden ist. Somit erhalten die Schreib-Lese-Speicher 20
und 20' und die zum Auslesen des jeweils anderen Speichers dienenden Steuerungsschaltungen 26 und 26' ihren Versorgungsstrom andauernd. Die Busleitungen 16 und 16' bestehen aus
getrennten doppelt gerichteten Adressen-,Daten- und Steuerungsbusleitungen,
die in den Figuren bezeichnet sind. Die Arbeitsweise von solchen Busleitungen in Verbindung mit dem Mikro-
809851/0609
B.A.Fairman 2-1-1
prozessor ist an sich wohl bekannt und wird daher nicht mehr erläutert. Es wird auf das Buch "Microprocessors and
Mikrocomputers" von Branko Soucek, veröffentlicht von
John Wiley and Sons, 1976, insbesondere auf die Seiten 251-298 verwiesen.
Der im vorliegenden System verwendete Mikroprozessor ist von der Art des unter der Bezeichnung 8080 bekannten Mikroprozessors,
der von verschiedenen Herstellern wie z.B. Intel Corp., Santa Clara, Kalifornien, hergestellt wird. Der Schreib-Lese-Speicher
20 besteht aus einer Gruppe von dynamischen Speicherchips mit 4 K Bits. Drei Sätze von 8 solcher Chips
sind Seite an Seite zusammengesteckt, so daß sie einen Speicher mit der Breite von 8 Bits und der Tiefe von 4 K Bits
pro Satz, d.h. einen Speicher mit 12 K Bytes, bilden. Solche Speicherchips können von der Art sein, die im Handel unter
der Bezeichnung TMS 4050-2 bekannt ist. Der Festwertspeicher hat 16 K Bytes und kann der Standardtyp 82S115 sein, der
von der Firma Signetics hergestellt wird.
Wie bereits erwähnt, kann der Mikroprozessor 14 des aktiven Rechners selektiv den Schreib-Lese-Speicher 2o seines eigenen
Rechners oder unter bestimmten Bedingungen den Schreib-Lese-Speicher 20' des inaktiven Rechners adressieren. Der Mechanismus,
durch den dies ermöglicht ist, wird nun anhand von Fig.2 beschrieben. Da es nicht möglich ist, mit einer einzigen
Busleitung 16 auszukommen, die beide Rechner verbindet, wegen Geräuschproblemen sowie anderer Probleme hinsichtlich einer
vollständigen Isolation der beiden Rechner, ist es notwendig, die Zwischen-Busleitung 28 zum Verbinden der beiden Schreib-Lese-Speicher
zu verwenden. Die zum Auslesen des jeweils
809851/0609
B.A.Fairman 2-1-1
anderen Schreib-Lese-Speichers dienende Steuerungsschaltung und der Schreib-Lese-Speicher 20 schließen sich normalerweise
in ihrem Betrieb gegenseitig aus. Wenn also der Mikroprozessor gerade den Schreib-Lese-Speicher 20 adressiert, wird die
Steuerungsschaltung 26 gesperrt. Wenn der Mikroprozessor über die zum Auslesen des jeweils anderen Speichers dienende
Steuerungsschaltung 26 gerade den Schreib-Lese-Speicher 20' des inaktiven Rechners adressiert, ist der Schreib-Lese-Speicher
20 gesperrt. Der Mechanismus, der dies bewirkt, wird nun erläutert. Eine Steuerungseinheit 36 ist mit der
Busleitung 16 verbunden. Diese Steuerungseinheit 36 hat viele Funktionen. Die meisten berühren die vorliegende Erfindung
jedoch nicht und werden daher nicht beschrieben. Es genügt zu sagen, daß die Steuerungseinheit 36, wenn sie über die
Ädreß-Busleitung 16 eine bestimmte Adresse von dem Mikroprozessor
14 erhält, ein Signal an ein Auswählflipflop 38 abgibt, das zu der zum Auslesen des jeweils anderen Speichers
dienenden Steuerungsschaltung 26 gehört. Mit diesem Siqnal wird das Auswählflipflop 38 entweder gesetzt oder rückgesetzt,
abhängig von der Information, die über die Datenbusleitung vom Mikroprozessor 14 geliefert wird.
Wenn das Auswählflipflop 38 gesetzt ist, liefert es ein Sperrsignal (INHCEN) über eine Leitung 40 an den Schreib-Lese-Speicher
20 und sperrt, eine
Torschaltung , die den Schreib-Lese-Speicher 20 daran hindert,
auf irgendwelche anderen von dem Mikroprozessor 14 über die Adreff -Busleitung 16 ankommenden Adressen zu reagieren.
Gleichzeitig ermöglicht es ein Signal EXTRAM von einem Ausgang des Auswählflipflops 38, das die zum Auslesen des jeweils
809851/0609
B.A.Fairman 2-1-1
anderen Speichers dienende Steuerschaltung 26 den gleichen Satz von Adressen aus dem Mikroprozessor 14 erhält und diese
Adressen auf die Adreßleitungen der Busleitung 28 gibt.
Die Steuerungsschaltung 26 zum Auslesen des jeweils anderen Speichers empfängt außerdem ein Signal 42, das in der Figur
mit KOR bezeichnet ist, von der Hauptstromversorgungseinheit 32, welches angibt, daß die Steuerungsschaltung 26 im aktiven
Rechner arbeitet. Die Adressen, die die Steuerungsschaltung
über die Adreßleitung der Busleitung 16 empfängt, werden über
^0 die Adreßleitung der Busleitung 28 an die zum Auslesen des
jeweils anderen Speichers dienende Steuerungsschaltung 26' des inaktiven Rechners weitergeleitet. In ähnlicher Weise
wird im inaktiven Rechner die Steuerungseinheit 26', da sie nicht das mit POOR bezeichnete Signal 42' empfängt, in
den Zustand gebracht, in dem sie nur auf Adressen, die auf der Adreßbusleitung ankommen, anspricht.
Wenn die Adresse vom inaktiven Rechner über die Steuerungsschaltung 26' auf der Adreß-Busleitung 16' empfangen wird,
wird diese Adresse an den Schreib-Lese-Speicher 20' über die Adreßleitungen der Busleitung 16' gegeben. Die mit dieser
Adresse abgerufenen Daten erscheinen darauf auf den Datenleitungen der Busleitung 16 ' und werden über die Steuerungsschaltung 26', die Datenleitungender Busleitung 28' und die
Steuerungsschaltung 26 auf die Datenleitung-nder Busleitung 16'
gegeben, von wo diese Daten von dem Mikroprozessor 14 verarbeitet werden. Der Mechanismus, der diese Aktivität bewirkt, ist
etwas kompliziert und wird nachstehend genauer beschrieben.
809851/0609
B.A.Fairman 2-1-1
Der Mikroprozessor 14 war also im Stande, seinen eigenen
Schreib-Lese-Speicher 20 zu ignorieren und zu dem Schreib-Lese-Speicher 20' des inaktiven Rechners über die Steuerungsschaltungen 26 und 26' und die Busleitung 28 zuzugreifen.
Die Fig.2 zeigt die Schaltung, mit Hilfe derer der Mikroprozessor des aktiven Systems unter bestimmten Bedingungen
Zugriff zu beiden Schreib-Lese-Speichern 20 und 20' hat. Die Reihenfolge der Steuerungssignale, die zum Betrieb dieser
Schaltung notwendig sind, werden nun anhand von Fig.3 und beschrieben, die zusammen ein Flußdiagramm der in Fig.2
gezeigten Schaltung darstellen.
Wie bereits erwähnt, muß der Mikroprozessor nach dem Start des aktiven Rechners zuerst feststellen, welcher der beiden
Schreib-Lese-Speicher Information enthält, die überhaupt gültig ist. Wenn er feststellt, daß beide Schreib-Lese-Speicher
eine gültige Information enthalten, dann muß er darüberhinaus bestimmen, welche dieser beiden gültigen
Speicherinhalte die neueste Information darstellt. Die überprüfung
der Gültigkeit der Information erfolgt mit Hilfe eines Zählers 44, dessen Zählerstand nachstehend mit dem
Buchstaben V bezeichnet wird. Der Zähler 44 gehört zu einem Teil des Schreib-Lese-Speichers 20, der als Arbeitsbereich
bezeichnet wird. Zum Arbeitsbereich gehört ein Anzeigebereich 46 und ein Pufferteil 48. Es versteht sich, daß der Anzeigebereich,
der Zählbereich und der Pufferteil tatsächlich vorgegebene Speicherbits des Schreib-Lese-Speichers darstellen,
die durch den Mikroprozessor 14 adressierbar sind (Fig.4).
809851/0609
B.A.Fairman 2-1-1
Das Flußdiagramm nach Fig.3 zeigt die Folge der Operationen,
welche die Kombination aus MikroprozessorjiRechnersteuerung,
Steuerungsschaltung zum Auslesen des jeweils anderen Speichers und aus den beiden Schreib-Lese-Speichern bewirkt. Dabei gibt
dieses Flußdiagramm nur prinzipiell an, was tatsächlich geschieht. Die genaueren Unterprogramme und Schaltungen, die
notwendig sind, um diese Ergebnisse zu erreichen, sind in mehr Einzelheiten in den Figuren 5, 6, 7 und 8 dargestellt.
Nach dem Start des Datenverarbeitungssystems wird der Zähler 44 im aktiven
Schreib-Lese-Speicher 20 beim Schritt 46 nach Fig.3 auf Null gesetzt. Dieser Schritt erfolgt, wenn das die Einschaltung der
Stromversorgung angebende Signal 42 (POOR) erscheint. Der Mikroprozessor 14 wird darauf durch die Programmbefehle im
programmierten Festwertspeicher (PROM) 18 veranlaßt, den Inhalt des Schreib-Lese-Speichers 20 beim Schritt 48 zu
überprüfen. Er überprüft dies, indem er konstante Daten, die im Schreib-Lese-Speicher 20 gespeichert sind, mit Daten
vergleicht, die im programmierten Festwertspeicher 18 stehen.
Solche Daten sind die Systemidentifikationsnummer, Reihen von
Datenadressen für die Datenstationen innerhalb des Schreib-Lese-Speichers 20 und ein Abschaltkode, der dem Mikroprozessor
mitteilt, ob der Rechner im gültigen Zustand abgeschaltet wurde bevor er gestartet wurde. Unter der Annahme, daß der Inhalt
des Schreib-Lese-Speichers 20 bei Schritt 50 ungültig ist, prüft der Recher den Inhalt des anderes Schreib-Lese-Speichers 20'
bei Schritt 54. Wäre der Inhalt des Schreib-Lese-Speichers 20 gültig gewesen, so hätte der Rechner den Zählerstand des
Zählers 44 beim Schritt 52 um 1 erhöht, bevor er mit dem Schritt fortgefahren wäre. Falls beim Schritt 56 festgestellt wird, daß
8098 5 1/0609
ß.A.Fairraan 2-1-1
der Speicherinhalt des Schreib-Lese-Speichers 20' gültig
ist, so wird der Zählerstand des Zählers 44 bei Schritt 58 um 2 erhöht. Der Schritt 58 wird übersprungen, falls der
Inhalt des Schreib-Lese-Speichers 20' nicht gültig ist.
Nachdem der Rechner die Gültigkeit der Inhalte der Speicher und 20' überprüft hat, beginnt er bei Schritt 60, den Zählerstand
des Zählers 44 zu untersuchen. Falls dieser Zählerstand gleich Null ist, weiß der Rechner, daß keiner der Schreib-Lese-Speicher
20 und 20' gültige Daten enthält. Der
Mikroprozessor 14 muß nun unter Anweisungen aus dem programmierten
Festwertspeicher 18 seinen eigenen Schreib-Lese-Speicher
20' in Betrieb setzen, indem er bestimmte konstante Daten aus dem Festwertspeicher 18 in den Schreib-Lese-Speicher
20 schreibt. Dieser Schritt ist der Anfangs-
Start-Schritt 62. Nach diesem Schritt 62 startet der Mikroprozessor
14 bei Schritt 64 den Rechner.
Falls der Mikroprozessor 14 feststellt, daß der Zählerstand V des Zählers 44 gleich 1 ist, so weiß er, daß der Inhalt seines
eigenen Schreib-Lese-Speichers gültig und daß der Inhalt des anderen Schreib-Lese-Speichers 20" ungültig ist. Er startet
darauf das System bei Schritt 66.
Falls der Mikroprozessor 14 feststellt, daß der Zählerstand V
des Zählers 44 gleich 2 ist, so weiß er, daß sein eigener Scheib-Lese-Speicher 20 ungültige Daten enthält und daß aber
2 rj der Schreib-Lese-Speicher 20' des inaktiven Rechners oder
hreatzrechners gültige Daten enthält. Der Mikroprozessor wird
803851/0609
B.A.Fairman 2-1-1
darauf von Anweisungen aus dem programmierten Festwertspeicher 18 veranlaßt, den Inhalt des Speichers 2O1 bei
Schritt 68 in den Schreib-Lese-Speicher 20 zu kopieren. Der Mikroprozessor muß außerdem eine Art Spur von diesem
Kopiervorgang hinterlassen, damit er bei darauffolgenden Startoperationen weiß, wie neu der Inhalt seines eigenen
Speichers ist. Er tut dies, indem er einen Zähler 70 (Fig.4),
der nachstehend als Generationszähler bezeichnet wird, und zum Schreib-Lese-Speicher 20 gehört, um einen Schritt erhöht.
Der Zählerstand G des Generationszählers wird bei Schritt 68 um 1 erhöht,und darauf wird der Rechner bei Schritt 72
gestartet. Es sei bemerkt, daß jeder Schreib-Lese-Speicher 20 und 20' seine eigenen Generationszähler 70 und 70" enthält,
die voneinander getrennt sind und unabhängige Generations-Zählerstände G und GT aufweisen. Nur der Generationszähler
im aktiven Schreib-Lese-Speicher wird zu irgend dner vorgegebenen Zeit um einen Schritt vorwärts gaschaltet. Bei
Schritt 68 wird der gesamte Inhalt des Schreib-Lese-Speichers 20' in den Schreib-Lese-Speicher 20 kopiert. Dazu gehört der
Generationszählerstand G des GenerationsZählers 70'. Dadurch,
daß darauf der Generationszählerstand GA des GenerationsZählers
70 um 1 erhöht wird, wird eine Hierarchie zwischen den Schreib-Lese-Speichem20
und 20' eingehalten, die auf der relativen Neuheit ihres Dateninhaltes beruht.
Die Beschreibung fährt nun mit dem Flußdiagramm nach Fig. 3 fort.
Falls der Mikroprozessor 14 feststellt, daß der Zählerstand V des Zählers 44 gleich 3 ist, so weiß er, daß beide Schreib-Lese-Speicher
20 und 20' gültige Daten beinhalten. Er weiß jedoch nicht, welcher der Schreib-Lese-Speicher die neuesten
809851/0609
B.A.Fairman 2-1-1
Daten enthält. Beispielsweise habe die Bedienperson beim
Start des Betriebes den Stromversorgungsschalter 3O vom Rechner B auf den Rechner A umgeschaltet. Der Mikroprozessor
würde dann wissen, daß sein eigener Schreib-Lese-Speicher gültige Daten enthalten kann, er weiß aber nicht, ob der
Inhalt des Schreib-Lese-Speichers 20 die neuesten Daten darstellt oder nicht. Wenn man annimmt, daß während des
Betriebs des Rechners B am vorhergehenden Tag keine Fehlfunktion aufgetreten ist, so ist der Inhalt seines Schreib-Lese-Speichers
20' in aller Wahrscheinlichkeit der neueste Inhalt, mit dem der Rechner A arbeiten sollte. Wenn man wieder annimmt,
daß der Rechner A der aktive und der Rechner B der inaktive ist, und daß der Mikroprozessor 14 beim Schritt 74 festgestellt
hat, daß der Zählerstand V des Zählers 44 gleich 3 ist, so weiß der Mikroprozessor 14, daß der Inhalt beider Schreib-Lese-Speicher
20 und 20' gültig ist. Er muß dann den Generationszählerstand GA des GenerationsZählers 70 des Schreib-Lese-Speichers
20 mit dem Generations Zählers tand G3. des Generationszählers 70' des Schreib-Lese-Speichers 20' vergleichen. Ange-
nommen, daß der Generationszählerstand G. gleich dem Generations Zählerstand G1 ist, so weiß der Mikroprozessor, daß
der Inhalt jedes der beiden Schreib-Lese-Speicher 20 und 20' nicht nur gültig sondern auch der neueste ist. Er könnte also
mit dem Inhalt irgendeines dieser Speicher arbeiten. Der Mikroprozessor 14 erhöht dann den Generationszählerstand G^
des Generationszählers 70 des Schreib-Lese-Speichers 20' bei Schritt 76 um 1 und startet bei Schritt 78 den Rechner.
Falls der Mikroprozessor 14 bei Schritt 74 festgestellt hat, daß die Zählerstände G und G3. nicht gleich sind, so fährt
er mit dem Schritt 80 fort. Bei Schritt 80 vergleicht der Mikroprozessor 14 die Zahl G +1 mit der Zahl G . Wenn diese
8O9851/0S09
ß.A.Fairman 2-1-1
Zahlen gleich sind, weiß der Mikroprozessor, daß der Inhalt des Schreib-Lese-Speichers 20' nicht nur gültig ist,
sondern auch der neueste. Er fährt dann damit fort, bei Schritt 82 den Inhalt des Schreib-Lese-Speichers 20' zusammen
mit dem GenerationsZählerstand G1 in seinen eigenen Schreib-Lese-Speicher
20 zu kopieren und den neuen GenerationsZählerstand GA(vorher G3.) des Zählers 70 des Schreib-Lese-Speichers
20 um 1 zu erhöhen, um die Speicherhierarchie beizubehalten. Darauf startet er bei Schritt 84 den Rechner.
Falls bei Schritt 80 eine Ungleichheit festgestellt wird, weiß der Mikroprozessor 14, daß der Schreib-Lese-Speicher 20
nicht nur gültige sondern auch die neuesten Daten enthält und fährt damit fort, den Rechner unmittelbar beim Schritt 86
zu starten. Es sei bemerkt, daß die verschiedenen in den Flußdiagrammen
von Fig.3 gezeigten Schritte nicht nur eine Folge von Anweisungen darstellen, unter denen der Mikroprozessor 14
oder 14' arbeitet, sondern auch symbolhaft für verschiedene logische Bausteine stehen.
So ist beispielsweise eine Entscheidung, ob die Generationszahl G gleich der Generationszahl
G1 oder nicht ist (Schritt 74), ein einfacher Vergleich,
der eine logische UND-Funktion ist. Die Erhöhung der Zählerstände geschieht einfach dadurch, daß die zur Erhöhung geeigneten
Daten unter der Adresse in den Schreib-Lese-Speicher eingeschrieben werden, die den Zähler darstellt. Da diese Einzelheiten
an sich bekannt sind, wird darauf verzichtet, sie hier vollständig zu erwähnen, da dies nichts zum Verständnis der
Erfindung beitragen würde.
809851/0609
B.A.Fairman 2-1-1
Anhand der Fig.5 werden nun die in Fig.3 gezeigten Überprüfungsschritte
48 und 56 eingehender erläutert. Das Programm für den Mikroprozessor vom Typ 8080 hat bestimmte
Unterprogramme. Eines dieser Unterprogramme ist das Unterprogramm MOVLR, das den Mikroprozessor veranlaßt, den Inhalt
des Teils des aktiven Schreib-Lese-Speichers 20, dessen Adresse ein Registerpaar HL innerhalb des Mikroprozessors
angibt, in den Arbeits-Pufferbereich 48 des Schreib-Lese-Speichers
20 zu schreiben, dessen Adresse ein Registerpaar BC des Mikroprozessors angibt. Dabei bleibt der Inhalt des
übrigen Teils des Schreib-Lese-Speichers 20 unverändert. Es ist klar, daß die Register B, D, H und L in den Mikroprozessor
vom Typ 8080 eingebaut sind, und daß die Adressen in das Register durch Anweisungen aus dem Festwertspeicher
"'S einprogrammiert sind.
Zur Durchführung der Schritte 48 und 54 verwendet der Mikroprozessor
14 ein Unterprogramm, das als MRVER bezeichnet wird.
Dieses Speicherprüfprogramm verwendet wiederum ein Unterprogramm, das als Speicheranforderungsprogramm MRREQ bezeichnet
wird. Dieses Speicheranforderungsprogramm ist in Fig.6 gezeigt und wird später eingehender erläutert. Hier genügt
es zunächst zu sagen, daß während der Speicheranforderung die Daten von einem der Schreib-Lese-Speicher 20 und 20'
in den Arbeits-Pufferbereich 48 des aktiven Schreib-Lese-Speichers
20 übertragen werden. Ob die Daten aus dem Schreib-Lese-Speicher 20 oder aus dem Schreib-Lese-Speicher 20' übertragen
werden, hängt vom Zustand eines Anzeigefeldes 46 ab, das einen Teil des Schreib-Lese-Speichers 20 darstellt, der
809851/0 6 09
B.A.Fairman 2-1-1
für die überprüfung dieses Schreib-Lese-Speichers eine
Rolle spielt. Der Zustand dieses Anzeigefeldes gibt an, ob der zu adressierende Schreib-Lese-Speicher der des
aktiven oder der des inaktiven Rechners ist. Der Zustand des Anzeigefeldes wird durch eine Anweisung bestimmt,
die der Mikroprozessor 14 herausgibt.
Nachdem das Unterprogramm MRREQ die geeigneten Daten aus dem Schreib-Lese-Speicher in den Pufferbereich 48 des
aktiven Schreib-Lese-Speichers 20 übertragen hat, vergleicht
^0 es diese Daten mit entsprechenden im programmierten Festwertspeicher
18 gespeicherten Daten. Anhand von Fig.6 wird beschrieben, auf welche Weise die Daten übertragen werden.
Bei den Daten, die geprüft werden, handelt es sich um konstante Daten, wie z.B. die Systemidentifikationsnummer,
eine Reihe von Adressen, die im Schreib-Lese-Speicher für die Datenstationen 10 gespeichert sind, den Code, der angibt,
ob der Rechner auf erfolgreiche Weise abgeschaltet worden ist und um andere konstante Daten, von denen nicht erwartet wird,
daß sie sich während eines normalen Betriebsablaufes verändern.
Diese Daten können als Teil des Unterprogrammes des Mikroprozessors
ausgewählt werden. Beim vorliegenden Beispiel vergleicht das Speicherüberprüfungs-Unterprogramm die Systemidentifikationsnummer
,die Reihe der Adressen für jeden Datenstation-Steuerbereich und den Abschaltkode. Für jeden
Schritt der Gültigkeitsüberprüfung hat der Rechner die Möglichkeit, den Inhalt des Speichers als ungültig zu erklären
oder, falls er gültig ist, mit dem nächsten Schritt im Flußdiagramm nach Fig.3 fortzufahren. Das gleiche Unterprogramm
wird auch bei den Schritten 48 und 54 verwendet.
809851/0609
B.A.Fairman 2-1-1
Anhand der Figuren 6 und 7 soll nun das Flußdiagramm für
die Folge von Anweisungen, die während des Speicher-Anforderungs-Unterprogramms MRREQ ausgeführt werden, erläutert
werden. Wie oben erwähnt, ist das erste, das der Mikroprozessor überprüft, wenn er das Speicheranforderungsunterprogramm
aufruft, der Anzeigebereich 46 innerhalb des Schreib-Lese-Speichers, der überprüft wird. Wenn der Speicher, dessen
Inhalt überprüft wird»der Schreib-Lese-Speicher 20 ist, so
teilt der Anzeigebereich dem Mikroprozessor mit, daß er direkt beim Schritt 90 auf das Unterprogramm MOVLR übergehen
kann. Wie bereits erwähnt, werden während des Unterprogramms MOVLR die konstanten Daten des Schreib-Lese-Speichers 20 in
den Pufferbereich 48 kopiert. Dies geschieht dadurch, daß die untere Adresse der Daten und die Anzahl der Bytes der
Daten, die zu kopieren sind, angegeben und in einen Zähler innerhalb des Mikroprozessors eingegeben werden. Die Daten
werden darauf Byte für Byte in den Pufferbereich 48 übertragen, bis der Zähler angibt, daß alle Daten kopiert worden sind.
Angenommen, der Mikroprozessor hatte festgestellt, daß der Anzeigebereich 46 angibt, daß der Schreib-Lese-Speicher 20'
überprüft werden sollte, so ruft das Unterprogramm ein weiteres Unterprogramm CMTM zum wechselweisen Übertragen des Speicherinhaltes
auf (92). Während dieses Unterprogramms CMTl wird das Auswählflipflop 38 bei Schritt 94 auf "inaktiv" gesetzt.
Dieses Setzen erfolgt unter der Steuerung des Mikroprozessors 14, Es sei daran erinnert, daß das Auswählflipflop 38 in seinem
Zustand "inaktiv" ein Sperrsignal 40 (INHCEN) an den Schreib-Lese-Speicher 20 abgibt, der diesen Schreib-Lese-Speicher
809 8 51/G609
B.A.Fairman 2-1-1
daran hindert, auf irgendwelche anderen Adressen aus dem Mikroprozessor anzusprechen. Entsprechend spricht dann
die zum Auslesen des jeweils anderen Speichers dienende Steuerungsschaltung 26 auf diese Adresse an und leitet
sie über die Busleitung 28 auf die Steuerungsschaltung 26' des Rechners B, der diese Adressen wiederum über die Busleitung
16' an den Schreib-Lese-Speicher 20' weitergibt.
Der Mikroprozessor fährt dann damit fort, beim Schritt 96 ein Byte der Daten zu holen. Während des Holens dieses
Bytes wird ein Byte der Daten aus dem Schreib-Lese-Speicher 20'
über die Busleitung 16' des Rechners B, die Steuerungsschaltungen 26 und 26' und die Busleitung 28 auf die
Busleitung 16 des Rechners A und schließlich auf ein eingebautes Register E des Mikroprozessors 14 übertragen.
Der Mikroprozessor setzt darauf über die Rechner-Steuerungsschaltung
36 das Auswählflipflop 38 beim Schritt 98 in den Zustand "aktiv". Dieses Rücksetzen des Flipflops ist
notwendig, damit der Mikroprozessor beim Schritt 99 den Inhalt seines Registers E in den Pufferbereich 48 des
aktiven Schreib-Lese-Speichers 20 einspeichern kann. Dieses · Unterprogramm läuft so lange, bis ein Zähler innerhalb des
Mikroprozessors festgestellt hat, daß die erforderliche Anzahl von Bytes der Daten übertragen worden ist. Wie beim
Unterprogramm MOVLR wird zum Übertragen der Daten die untere Adresse der zu übertragenen Daten angegeben. Die Anzahl der
Bytes der zu übertragenen Daten gibt ein Zählerinhalt des Mikroprozessors an. Bei Schritt 100 fragt der Mikroprozessor
dann: "Ist der Zählerstand 0 erreicht?"/ d.h. ist die notwendige Anzahl der Bytes der Daten übertragen und empfangen worden?
Falls die Antwort auf nein lautet, so wird die Sende- und die Empfangsadresse um 1, d.h. ein Byte der Daten, erhöht
809351/0609
B.A.Fairman 2-1-1
und der Zählerstand des Zählers um 1 vermindert und der Prozess wiederholt.
Anhand der Figuren 8 und 9 wird nun die Reihenfolge der Schritte der zum Auslesen des jeweils anderen Speichers
dienenden Steuerungsschaltungen 26 und 26' genauer beschrieben. Fig.8 zeigt die Reihenfolge der von der Steuerungsschaltung
unternommenen Schritte und die Fig.9 die Reihenfolge der von der Steuerungsschaltung 26' unternommenen Schritte. Es sei
bemerkt, daß jede dieser beiden Steuerungsschaltungen auch die entgegengesetzten Schritte unternehmen kann. Dies hängt
davon ab, ob die Steuerungsschaltung zum aktiven oder zum inaktiven Rechner gehört, was durch das mit POOR bezeichnete
Signal 42 bestimmt wird. Die Beschreibung geht wieder davon aus, daß der Rechner A aktiv und der Rechner B inaktiv ist.
Zunächst bleibt die Steuerungsschaltung 26 passiv, bis sie aus dem Mikroprozessor über eine Steuerleitung der Busleitung
einen Befehl EXTMREQ erhält, einen externen Speicher auszulesen. Dieses Abfragen stellt der Schritt 102 in Fig.8 dar.
Wenn das Signal EXTRMREQ vorliegt, geht die Steuerungsschaltung 26 zum nächsten Schritt 104 über, der darin besteht,
die Busleitung 16 des Rechners A mit der Busleitung 28 zu verbinden. Darauf fragt die Steuerungsschaltung 26 bei
Schritt 106, ob ein Signal EXTRAM vorliegt oder nicht. Das Signal EXTRAM wird vom Auswählflipflop 38 abgegeben, wenn
es in dem Zustand gesetzt ist, in dem es den Zugriff zum
809851/0609
B.A.Fairman 2-1-1
aktiven Schreib-Lese-Speicher 20 sperrt. Wenn das Auswählflipflop 38 nicht in den Zustand gesetzt ist, bei dem es
ein Sperrsignal 40 für den Schreib-Lese-Speicher abgibt, dann liegt das Signal EXTRAM nicht vor,und die Steuerungsschaltung
26 kehrt zum Beginn dieser Prozedur zurück.
Falls bei Schritt 106 das Signal EXTRAM vorliegt, startet die Steuerungsschaltung 26 eine mit FACK bezeichnete Zeitschaltung
109 bei Schritt 108. Diese Zeitschaltung 109 ist eine einfache RC-Zeitschaltung mit einer Zeitkonstanten
von 7 ys. Der Ausdruck FACK bedeutet "schnelle Bestätigung" (fast acknowledge). Dieses Signal FACK wird zum Mikroprozessor
gesendet, um ihm mitzuteilen, daß im Speicher eine Information zur Abfrage und Übernahme in den MikroprozessorVbefeit^steten wird.
Die zum Auslesen des jeweils anderen Speichers dienende Steuerungsschaltung erzeugt ihre eigene Version des Signals EXTMREQ,
die an der Ausgangs-Steuerleitung der Busleitung 28 mit OEXTMREQA bezeichnet ist. Das gleiche Signal ist bei der
Steuerungsschaltung 26 mit IEXCMREQA bezeichnet.
Nach der Abgabe des Signals OEXTMREQA fährt die Steuerungsschaltung
26 mit dem Schritt 110 fort, der darin besteht, auf das Auftreten einas Signals IEXFACK vom Rechner B zu
warten. Dieses Signal IEXFACK bedeutet, daß der Rechner B seinen Schreib-Lese-Speicher 20* mit der Busleitung 16' in
Kontakt gebracht hat, und daß die Steuerungsschaltung 26'
die Busleitung 16' des Rechners B mit der Busleitung 28 verbunden hat. Im Falle, daß das Signal IEXFACK nicht vorliegt,
geht die Steuerungsschaltung 26 zum Schritt 112 über,
809851/0609
B.A.Fairman 2-1-1
bei dem sie fragt:"Ist die Zeitschaltung FACK, die beim
Schritt 108 gestartet wurde, abgelaufen?". Falls nicht, so geht die Steuerungsschaltung 26 zurück zum Schritt 110,
bei dem sie prüft, ob das Signal IEXFACK erschienen ist. Wenn die Zeitschaltung FACK abgelaufen ist oder wenn das
Signal IEXFACK erschienen ist, geht die Steuerungsschaltung zum nächsten Schritt 114 über. Bei Schritt 114 verbindet die
Steuerungsschaltung die Datenbusleitung 28 mit der Datenleitung
der Busleitung 16 und gibt ein Signal FACK an den Mikroprozessor 14, das angibt, daß der Mikroprozessor mit
den auf der Datenbusleitung 16 gerade ankommenden Daten weiterrechnen soll. Die Steuerungsschaltung 26 geht zum Schritt
116 über, der darin besteht zu fragen, ob das Signal EXTMREQ noch vorliegt oder nicht. Falls es noch vorliegt, so bleibt
die Steuerungsschaltung 26 einfach in einer Schleife. Falls
es nicht vorliegt, geht sie zum Schritt 108 über, bei dem sie das Signal OEXTMREQA verschwinden läßt, die Datenbusleitung
28 von der Datenleitung der Busleitung 16 abtrennt, das Signal FACK verschwinden läßt, die Zeitschaltung FACK
zurücksetzt und darauf zum Ausgangspunkt dieses Unterprogramms zurückkehrt. Bei Schritt 116 verschwindet das Signal EXTMREQ
sobald der Mikroprozessor 14 das Signal FACK hat, das beim Schritt 114 erzeugt wurde, und er die Daten empfangen hat.
Anhand der Fig.9 wird nun das Unterprogramm, nach dem die
Steuerungsschaltung 26' arbeitet, gleichzeitig mit dem Unterprogramm
nach Fig.8 näher beschrieben, nach dan die Steuerungsschaltung 26 arbeitet. Zu Anfang ist die Steuerungsschaltung 26'
passiv, bis bei Schritt 120 das Signal IEXTMREQA empfangen wird. Es sei daran erinnert, daß das Signal IEXTMREQA dem
signal OEXTMREQA, das bei Schritt 108 in Fig.8 erzeugt wird,
80 9 6 5-1 /0 6 09
B.A.Fairman 2-1-1
entspricht. Falls das Signal nicht vorliegt, findet ein passiver Umlauf in der Steuerungsschaltung 26' statt.
Falls das Signal vorliegt, fragt die Steuerungsschaltung 26', ob das Signal 42' (POOR) vorliegt und angibt, daß die
Steuerungsschaltung 26' tatsächlich die Ersatzeinheit ist.
Angenommen die Antwort auf diese Frage bei Schritt 122 lautet
ja, so stellt diese Ersatzeinheit bei Schritt 124 die nächste Frage: "Werden die Daten im Schreib-Lese-Speicher 20' gerade
aufgefrischt?". Falls ja, so wartet die Steuerungsschaltung 26' bis das Auffrischen gestoppt ist. Darauf geht sie bei Block
126 zur nächsten Folge von Schritten über.
Während der Folge von Schritten, die bei Block 126 ablaufen, startet die Steuerungsschaltung 26' eine zu ihr gehörige
Folgeschaltung. Diese Folgeschaltung sperrt in einer Folge von mit 1 bis 5 numerierten Schritten das Auffrischen des
Schreib-Lese-Speichers 20', verbindet die Adreßleitungen der
Busleitung 28 mit den Adreßleitungai der Busleitung 16'
und somit mit dem Schreib-Lese-Speicher 20'. Die Folgeschaltung zur Steuerung des Auslesens des anderen
Speichers erzeugt eine Reihe von Steuersignalen für den Schreib-Lese-Speicher, die als Signale MEMREQ, RDCYC und
DBIN bekannt sind. Die Folgeschaltung der zum Auslesen des jeweils anderen Speichers dienenden Steuerungsschaltung 26'
verbindet außerdem die Datenleitung=nder Busleitung 16' mit
den Datenleitungsnder Busleitung 28 und gibt auf der Steuerleitung
der Busleitung 28 das Signal OEXFACK ab. Es sei
80 98 51/0B09
B.A.Fairman 2-1-1
daran erinnert, daß das Signal OEXFACK,das auf der Ausgangssteuerleitung
der Busleitung 28 übertragen wird, als das bei Schritt 110 in Fig.8 mit IEXFACK bezeichnete Signal
auftritt und bedeutet, daß die verlangten Daten im Schreib-Lese-Speicher
20' nun für den Mikroprozessor 14 zum Auslesen bereit stehen.
Nachdem der Schritt 126 abgeschlossen ist, prüft die
Steuerungsschaltung 26' nun nochmals das Signal IEXTMREQA, das dem bei Schritt 108 erzeugten Signal OEXTMREQA entspricht.
Dieses Signal liegt solange vor, bis der Mikroprozessor die bei Schritt 126 übertragenen Daten empfangen hat, darauf
läßt der Mikroprozessor das Signal verschwinden. Die Reserve-Einheit geht dann zum Schritt 128 über, bei dem die Folgeschaltung
der Steuerungsschaltung 26' zurückgesetzt wird, bei dem das Auffrischen des Schreib-Lese-Speichers 20'
möglich ist, und bei dem die Signale für die Unterschritte 2, 3, 4 und 5 des Schrittes 126 verschwinden. Die Steuerungsschaltung 26' kehrt damit zu ihrem passiven Zustand wieder
zurück.
809051/0009
Leerseite
Claims (1)
- Dipl.-Phys.Leo Thul
Kurze Str.8
7 Stuttgart 30B.A.Fairman -G.R.Durney-R.G.Taylor 2-1-1INTERNATIONAL STANDARD ELECTRIC CORPORATION, NEW YORKPatentansprüche(Iy Datenverarbeitungssystem mit einer Anzahl von örtlich verteilten und mit einer Zentrale verbundenen Datenstationen, wobei die Zentrale ein Paar paralleler Rechner aufweist, von denen jeder zumindest einen Schreib-Lese-Speicher, eine Ein-/Ausgabeschaltung und eine zentrale Verarbeitungseinheit aufweist, wobei die Schreib-Lese-Speicher beider Rechner normalerweise konstante und dynamische Daten enthalten, dadurch gekennzeichnet, daß Mittel zum Auswählen vorhanden sind, welcher Rechner aktiv und welcher inaktiv sein soll, und daß Mittel vorhanden sind, die bei jedem Start des aktiven Rechners feststellen, ob der Schreib-Lese-Speicher des aktiven oder der des inaktiven Rechners die neuesten gültigen dynamischen Daten enthält, und, falls der Schreib-Lese-Speicher des inaktiven Rechners die neuesten gültigen dynamischen Daten enthält, den Inhalt dieses Schreib-Lese-Speichers in den Schreib-Lese-Speicher des aktiven Rechners übertragen.Kg/Sch17.04.1978 80935 1/OiO 9B.A.Fairman 2-1-12. Datenverarbeitungssystem nach Anspruch 1, dadurch gekennzeichnet, daß jeder Rechner für Adressen, Daten und Steuerzeichen jeweils eigene Busleitungen aufweist, die die Elemente jedes Rechners mit einer zum Auslesen des jeweils anderen Schreib-Lese-Speichers dienenden Steuerungsschaltung verbinden, daß Busleitungen vorhanden sind, welche die zum Auslesen des jeweils anderen Schreib-Lese-Speichers dienenden Steuerungsschaltungen des aktiven und des inaktiven Rechners miteinander verbinden und daß die zum Auslesen des jeweils anderen Schreib-Lese-Speichers dienenden Steuerungsschaltungen unter der Steuerung der zentralen Verarbeitungseinheit des aktiven Rechners die Busleitungen für Adressen, Daten und Steuerzeichen des aktiven Rechners mit den entsprechenden Busleitungen des inaktiven Rechners verbinden.■i. Datenverarbeitungssystem nach Anspruch 2, dadurch gekennzeichnet, daß jede zum Auslesen des jeweils anderen Schreib-Lese-Speichers dienende Steuerungsschaltung Schaltmittel enthält, um selektiv den Zugriff der zentralen Verarbeitungseinheit desselben Rechners zu dessen Schreib-Lese-Speicher zu sperren.4. Datenverarbeitungssystem nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß nach einer Übertragung der neuesten gültigen dynamischen Daten von dem Schreib-Lese-Speicher des inaktiven Rechners in den des aktiven Rechners eine Information in den Schreib-Lese-Speicher des aktiven Rechners eingeschrieben wird, die angibt, daß dieser nunmehr die neuesten gültigen dynamischen Daten enthält.8 0 9 3 5 1 / 0 G 0 9B.A.Fairman 2-1-15. Datenverarbeitungssysteni nach Anspruch 4, dadurch gekennzeichnet, daß jeder Schreib-Lese-Speicher einen Zähler (70) enthält, dessen Zählerstand nach dem Start des aktiven Rechners um eins erhöht wird, wenn entweder die dynamischen Daten zusammen mit dem entsprechenden Zählerstand des inaktiven Schreib-Lese-Speichers in den aktiven Schreib-Lese-Speicher übertragen werden oder diese Zählerstände der beiden Schreib-Lese-Speicher gleich sind.6. Datenverarbeitungssystem nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß jeder Rechner einen Festwertspeicher aufweist zur Speicherung von festen Daten und von Programmanweisungen für die zentrale Verarbeitungseinheit dieses Rechners und daß die Mittel zum Feststellen der Gültigkeit des Speicherinhaltes bestimmte feste Daten aus jedem der Schreib-Lese-Speicher seriell mit entsprechenden konstanten Daten aus dem Festwertspeicher des aktiven Rechners vergleichen, um den Inhalt eines der beiden Schreib-Lese-Speicher als gültig zu bestimmen.8098 5 1/0 6 09
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/791,139 US4169288A (en) | 1977-04-26 | 1977-04-26 | Redundant memory for point of sale system |
Publications (1)
Publication Number | Publication Date |
---|---|
DE2817757A1 true DE2817757A1 (de) | 1978-12-21 |
Family
ID=25152808
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19782817757 Withdrawn DE2817757A1 (de) | 1977-04-26 | 1978-04-22 | Datenverarbeitungssystem |
Country Status (9)
Country | Link |
---|---|
US (1) | US4169288A (de) |
JP (1) | JPS5452429A (de) |
AU (1) | AU513459B2 (de) |
BE (1) | BE866375R (de) |
CA (1) | CA1103774A (de) |
DE (1) | DE2817757A1 (de) |
ES (1) | ES469189A1 (de) |
GB (1) | GB1600174A (de) |
NZ (1) | NZ187068A (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0026734A1 (de) * | 1979-09-28 | 1981-04-08 | Licentia Patent-Verwaltungs-GmbH | Sichere Datenverarbeitungseinrichtung |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4872106A (en) * | 1983-04-06 | 1989-10-03 | New Forney Corp. | Industrial process control system with back-up data processors to take over from failed primary data processors |
US4564922A (en) * | 1983-10-14 | 1986-01-14 | Pitney Bowes Inc. | Postage meter with power-failure resistant memory |
EP0198455A3 (de) * | 1985-04-16 | 1989-12-13 | Siemens Nixdorf Informationssysteme Aktiengesellschaft | Datenerfassungssystem mit mehreren mikroprozessorgesteuerten Bedienplätzen |
JPS62226271A (ja) * | 1986-03-27 | 1987-10-05 | Tokyo Electric Co Ltd | Posル−プ自動切換装置 |
US4896256A (en) * | 1986-05-14 | 1990-01-23 | Kabushiki Kaisha Toshiba | Linking interface system using plural controllable bidirectional bus ports for intercommunication amoung split-bus intracommunication subsystems |
JP2924905B2 (ja) * | 1988-03-25 | 1999-07-26 | エヌシーアール インターナショナル インコーポレイテッド | フアイル・バツクアツプ・システム |
JPH0823911B2 (ja) * | 1989-06-30 | 1996-03-06 | シャープ株式会社 | 複数の電子式金銭登録機を備える装置 |
US5126889A (en) * | 1989-11-22 | 1992-06-30 | At&T Bell Laboratories | Technique for information protection on fault-tolerant redundant information storage devices |
US5921373A (en) * | 1994-09-15 | 1999-07-13 | Smart Carte, Inc. | Cart management system |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3377623A (en) * | 1965-09-29 | 1968-04-09 | Foxboro Co | Process backup system |
DE1549397B2 (de) * | 1967-06-16 | 1972-09-14 | Chemische Werke Hüls AG, 4370 Mari | Verfahren zur automatischen steuerung chemischer anlagen |
US3866182A (en) * | 1968-10-17 | 1975-02-11 | Fujitsu Ltd | System for transferring information between memory banks |
US3864670A (en) * | 1970-09-30 | 1975-02-04 | Yokogawa Electric Works Ltd | Dual computer system with signal exchange system |
US3898621A (en) * | 1973-04-06 | 1975-08-05 | Gte Automatic Electric Lab Inc | Data processor system diagnostic arrangement |
US3921141A (en) * | 1973-09-14 | 1975-11-18 | Gte Automatic Electric Lab Inc | Malfunction monitor control circuitry for central data processor of digital communication system |
US3882455A (en) * | 1973-09-14 | 1975-05-06 | Gte Automatic Electric Lab Inc | Configuration control circuit for control and maintenance complex of digital communications system |
US3946220A (en) * | 1974-06-10 | 1976-03-23 | Transactron, Inc. | Point-of-sale system and apparatus |
CH584488A5 (de) * | 1975-05-05 | 1977-01-31 | Ibm |
-
1977
- 1977-04-26 US US05/791,139 patent/US4169288A/en not_active Expired - Lifetime
-
1978
- 1978-04-22 DE DE19782817757 patent/DE2817757A1/de not_active Withdrawn
- 1978-04-24 AU AU35394/78A patent/AU513459B2/en not_active Expired
- 1978-04-25 GB GB16253/78A patent/GB1600174A/en not_active Expired
- 1978-04-25 JP JP4837778A patent/JPS5452429A/ja active Pending
- 1978-04-25 CA CA301,929A patent/CA1103774A/en not_active Expired
- 1978-04-26 ES ES469189A patent/ES469189A1/es not_active Expired
- 1978-04-26 NZ NZ187068A patent/NZ187068A/xx unknown
- 1978-04-26 BE BE2056915A patent/BE866375R/xx active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0026734A1 (de) * | 1979-09-28 | 1981-04-08 | Licentia Patent-Verwaltungs-GmbH | Sichere Datenverarbeitungseinrichtung |
Also Published As
Publication number | Publication date |
---|---|
ES469189A1 (es) | 1979-01-01 |
US4169288A (en) | 1979-09-25 |
JPS5452429A (en) | 1979-04-25 |
GB1600174A (en) | 1981-10-14 |
NZ187068A (en) | 1981-10-19 |
CA1103774A (en) | 1981-06-23 |
AU513459B2 (en) | 1980-12-04 |
AU3539478A (en) | 1979-11-01 |
BE866375R (fr) | 1978-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69801418T2 (de) | Datenaufteilung und -dupliziering in einem verteilten datenverarbeitungssystem | |
DE2656546C2 (de) | Datenblock-Austauschanordnung | |
DE3781486T2 (de) | Verfahren zur stossfreien umschaltung von aktiven einheiten zu ersatzeinheiten in datenverarbeitungsanlagen und datenverarbeitungsanlage zur durchfuehrung dieses verfahrens. | |
DE69530776T2 (de) | Zweiwege set-assoziativer cache-speicher | |
DE2629459C2 (de) | ||
DE2463200C2 (de) | ||
DE3131341A1 (de) | "pufferspeicherorganisation" | |
DE2523414A1 (de) | Hierarchische speicheranordnung | |
CH654943A5 (de) | Pruefeinrichtung fuer mikroprogramme. | |
DE1524239A1 (de) | Verfahren zur Lokalisierung eines Fehlers in einer Anlage mit mindestens zwei parallel arbeitenden Rechengeraeten | |
DE1279980B (de) | Aus mehreren miteinander gekoppelten Datenverarbeitungseinheiten bestehendes Datenverarbeitungssystem | |
DE1524130B1 (de) | Datenverarbeitende Mehrfachanlage | |
DE1931966B2 (de) | Datenverarbeitungsanlage mit Assoziativspeichern | |
DE2054830B2 (de) | Informationsverarbeitungsanlage mit mitteln zum zugriff zu speicher-datenfeldern variabler laenge | |
DE1524111C3 (de) | Elektronische Datenverarbeitungsanlage | |
DE3046912C2 (de) | Schaltungsanordnung zum selektiven Löschen von Cachespeichern in einer Multiprozessor-Datenverarbeitungsanlage | |
EP0764906A2 (de) | Verfahren zum Betreiben eines durch ein Realzeit-Betriebssystem gesteuerten Realzeit-Computersystems | |
DE2817757A1 (de) | Datenverarbeitungssystem | |
DE2336020B2 (de) | Adressen-berechnungsschaltung fuer paritaetsfehler-korrekturprogramme | |
DE19804784A1 (de) | Chipkarte mit integrierter Schaltung | |
DE3327874C2 (de) | ||
DE2311503A1 (de) | Datenverarbeitungsanlage mit mehreren zentraleinheiten | |
CH495584A (de) | Datenverarbeitungsanlage | |
EP0265636A1 (de) | Multiprozessor mit mehreren mit Cache-Speichern ausgerüsteten Prozessoren und einem gemeinsamen Speicher | |
DE3854859T2 (de) | Unterbrechungsabwicklung in einem parallelen Datenverarbeitungssystem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8139 | Disposal/non-payment of the annual fee |