DE4406258C2 - Informationsverarbeitungsvorrichtung - Google Patents

Informationsverarbeitungsvorrichtung

Info

Publication number
DE4406258C2
DE4406258C2 DE4406258A DE4406258A DE4406258C2 DE 4406258 C2 DE4406258 C2 DE 4406258C2 DE 4406258 A DE4406258 A DE 4406258A DE 4406258 A DE4406258 A DE 4406258A DE 4406258 C2 DE4406258 C2 DE 4406258C2
Authority
DE
Germany
Prior art keywords
memory
read
bus
cpu
address
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
DE4406258A
Other languages
English (en)
Other versions
DE4406258A1 (de
Inventor
Masatoshi Katayama
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE4406258A1 publication Critical patent/DE4406258A1/de
Application granted granted Critical
Publication of DE4406258C2 publication Critical patent/DE4406258C2/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/74Masking faults in memories by using spares or by reconfiguring using duplex memories, i.e. using dual copies

Landscapes

  • Hardware Redundancy (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

Die Erfindung bezieht sich auf eine Informationsverarbei­ tungsvorrichtung gemäß Oberbegriff der Patentansprüche 1, 2 oder 4.
Ein bekanntes Speichersteuersystem, welches in der veröf­ fentlichten japanischen Patentanmeldung JP 1-169557 A offen­ bart ist, soll anhand von Fig. 10 erläutert werden. Die Be­ zugszeichen 101a-101d bezeichnen Zentraleinheiten, CPU, welche Arbeitsgänge und dergleichen gemäß einem verordneten Verfahren verarbeiten, welches als Programm beschrieben ist. Die Bezugszeichen 104 und 105 bezeichnen Speicher, in denen von den CPU 101a-101d verarbeitete Daten und der­ gleichen gespeichert werden. Die Speicher 104 und 105 wer­ den von einer Speichersteuereinheit 102 gesteuert. In der Speichersteuereinheit 102 ist eine Duplexschreibvorrichtung 103 zum Steuern des Doppelschreibens angeordnet.
Zu dieser Vorrichtung gehören sechzehn Gruppensteuerungen, nämlich die Gruppensteuerungen 0-15, die jeweils vier Zentraleinheiten haben und zwei Speicher gemeinsam besit­ zen.
Die Arbeitsweise ist wie folgt: Wenn ein von einer Zen­ traleinheit gegebener Befehl das Doppelschreiben der glei­ chen Information zur gleichen Zeit in zwei Speicher anord­ net, gibt eine der Zentraleinheiten CPU 101a-101d eine Anforderung auf Doppelschreiben an die Duplexschreibvor­ richtung 103 in der Speichersteuereinheit 102 ab. Wenn die Duplexschreibvorrichtung 103 das Doppelschreibanforderungs­ signal erhält, erzeugt sie eine bezeichnete Schreibadresse für den Speicher 104 sowie eine entsprechende Doppel­ schreibadresse für den anderen Speicher 105 und sendet gleichzeitig Schreibanforderungen an die Speicher 104 und 105. Folglich kann die im Speicher abzulegende Information durch einen einmaligen Schreibvorgang in beiden Speichern gespeichert werden.
Anhand von Fig. 11 soll Stand der Technik zum Steuern der Datenübertragung an ein Duplexspeichersystem erläutert wer­ den, welches in der veröffentlichen japanischen Patentan­ meldung Hei. 3-144739 offenbart ist. Mit den Bezugszeichen 201 und 204 sind Zentraleinheiten, CPU, bezeichnet, die Ar­ beitsgänge oder dergleichen entsprechend einem als Programm beschriebenen, verordneten Verfahren verarbeiten. Die Be­ zugszeichen 202 und 205 bezeichnen Speicher, in denen von den CPU 201 und 204 verarbeitete Daten oder dergleichen ge­ speichert werden. Die Bezugszeichen 203 und 209 bezeichnen Zwischensystem-Informationsübertragungsvorrichtungen zum Übertragen von Informationen zwischen den beiden Systemen mit CPU, die durch eine strichpunktierte Linie in der Figur getrennt sind. Über einen Datenbus 206 werden Daten zwi­ schen der CPU 201, dem Speicher 202 und der Zwischensystem-In­ formationsübertragungsvorrichtung 203 übertragen. Ein Da­ tenbus 207 überträgt Daten über die CPU 204, den Speicher 205 sowie die Zwischensystem-Informationsübertragungsvor­ richtung 209. In der Zwischensystem-Informationsübertra­ gungsvorrichtung 203 ist eine Zwischensystem-Informations­ übertragungsschaltung 208 vorgesehen. Zwischen den beiden Zwischensystem-Informationsübertragungsvorrichtungen 203 und 209 werden Daten über einen Zwischensystemdatenbus 212 übertragen. Von der Zwischensystem-Informationsübertra­ gungsschaltung 208 über den Zwischensystemdatenbus 212 übertragene Daten werden in eine Pufferschaltung 210 einge­ geben. Das Bezugszeichen 211 bezeichnet eine Schreibinfor­ mationsübertragungsschaltung, die Informationen von der CPU 201 in einem System in aktiviertem Zustand (nachfolgend als ACT-System bezeichnet) in den Speicher 205 der CPU 204 in einem System in nichtaktiviertem Zustand (nachfolgend als STBY-System bezeichnet) einschreibt. Das Bezugszeichen 213 bezeichnet eine Datenvergleichsschaltung, in der die aus dem ACT-System gelesenen Daten mit aus dem STBY-System ge­ lesenen Informationen verglichen werden.
Die Arbeitsweise ist wie folgt: Wenn von der CPU 201 im ACT-System ein Datenschreibzugriff für den Speicher 202 des ACT-Systems erzeugt wird, wird sowohl eine Speicheradresse, einzuschreibende Daten als auch ein Schreibsignal über den Datenbus nicht nur dem Speicher 202 mitgeteilt, sondern auch der Zwischensystem-Übertragungsvorrichtung 203 und dann in der Zwischensystem-Informationsübertragungs­ schaltung 208 zwischengespeichert. Über den Zwischensystem­ datenbus 212 werden diese Signale auch der Zwischensystem-In­ formationsübertragungsvorrichtung 201 des STBY-Systems mitgeteilt und in die Pufferschaltung 210 synchronisiert mit ACT-Systemtakten eingeschrieben. Diese Signale werden aus der Speicherschaltung 210 unabhängig vom Datenbusbe­ trieb des ACT-Systems, aber synchronisiert mit den STBY-Sy­ stemtakten gelesen und über die Schreibinformationsübertra­ gungsschaltung 211 an den Datenbus 207 ausgegeben, um in den Speicher 205 des STBY-Systems eingegeben zu werden.
Wenn ein Datenlesezugriff für den Speicher 202 des ACT-Sy­ stems von der CPU 201 des ACT-Systems erzeugt wird, wird sowohl eine Speicheradresse als auch ein Lesesignal über den Datenbus 206 an den Speicher 202 übertragen und gleich­ falls an die Zwischensystem-Informationsübertragungsvor­ richtung 203 weitergegeben und in der Zwischensystem-Infor­ mationsübertragungsschaltung 208 zwischengespeichert. Der Speicher 202 teilt die aus der empfangenen Speicheradresse gelesenen Daten des Speichers über den Datenbus 206 der CPU 201 ebenso wie der Zwischensystem-Informationsübertragungs­ vorrichtung 203 mit und dort werden sie in der Zwischensy­ stem-Informationsübertragungsschaltung 208 zwischengespei­ chert. Diese Signale werden über den Zwischensystemdatenbus 212 auch der Zwischensystem-Informationsübertragungsvor­ richtung 209 mitgeteilt und in die Pufferschaltung 210 syn­ chronisiert mit ACT-Systemtakten eingegeben. Diese Signale werden aus der Pufferschaltung 210 unabhängig vom Datenbus­ betrieb des ACT-Systems, aber synchronisiert mit STBY-Sy­ stemtakten gelesen, und die gelesenen Daten werden in der Datenvergleichsschaltung 213 zwischengespeichert. Die Spei­ cheradresse und das gelesene Signal wird über die Datenver­ gleichsschaltung 213 an den Datenbus 207 ausgegeben und in den Speicher 205 eingegeben. Da der Zugriff ein Lesezugriff ist, werden die gelesenen Daten aus dem Speicher 205 im STBY-System an den Datenbus 207 ausgegeben und in der Da­ tenvergleichsschaltung 213 zwischengespeichert. Die gelese­ nen Daten aus dem ACT-System und die gelesenen Daten aus dem STBY-System werden von der Datenvergleichsschaltung 213 verglichen, und im Fall einer Übereinstimmung wird eine Un­ terbrechungsmitteilung an die CPU des ACT-Systems ausgege­ ben.
In Fig. 12 ist ein bekanntes Mehrrechner- oder Multiprozes­ sorsystem dargestellt. Die Bezugszeichen 301a und 301b be­ zeichnen Zentraleinheiten, in denen Arbeitsgänge oder der­ gleichen gemäß einem als Programm beschriebenen, verordne­ ten Verfahren verarbeitet werden. Von den CPU 301a und 301b verarbeitete Daten oder dergleichen werden in Speichern 302a bzw. 302b abgelegt. Das Bezugszeichen 303 bezeichnet einen CPU-Bus, der die Zentraleinheiten 301a und 301b über Busschaltglieder 305a und 305b verbindet. Bezugszeichen 304 bezeichnet eine Busentscheidungsschaltung, die über die Be­ legung des CPU-Bus 303 durch eine AUF/ZU-Steuerung der Bus­ schaltglieder 305a und 305b entscheidet, welche die I/O-Da­ ten (Eingabe/Ausgabedaten) der CPUs 301a bzw. 301b an den CPU-Bus 303 übertragen oder auch nicht. Die Bezugszeichen 306a und 306b bezeichnen Adressendekodierer zum Dekodieren der Ausgabedaten der CPU 301a bzw. 301b und zur Weitergabe an die Busentscheidungsschaltung 304. Die Bezugszeichen 307a und 307b bezeichnen Anforderungssignale für Speicher­ zugriff, die von den Adressendekodierern 306a bzw. 306b ausgegeben werden. Die Bezugszeichen 308a und 308b bezeich­ nen Steuersignale für die Busschaltglieder, die von der Busentscheidungsschaltung 304 ausgegeben werden.
Die Arbeitsweise ist wie folgt: Wenn die CPU 301a zum Spei­ cher 302a oder 302b Zugriff nimmt, gibt sie eine Adresse für den Speicher 302a oder 302b aus. Der Adressendekodierer 306a dekodiert die Adresse und gibt ein Anforderungssignal 307a für Speicherzugriff an die Busentscheidungsschaltung 304 ab. Die Busentscheidungsschaltung 304 erlaubt es dann der CPU 301a, Zugriff zu einem Speicher zu nehmen und gibt ein Steuersignal 308a für ein Busschaltglied aus, es sei denn, die andere CPU 301b hat bereits Zugriff zum Speicher 302a oder 302b, das heißt außer wenn der Adressendekodierer 306b ein Anforderungssignal 307b für Speicherzugriff an die Busentscheidungsschaltung 304 ausgibt, wodurch das Bus­ schaltglied 305a geöffnet ist, um den CPU-Bus 303 zur CPU 301a auf zumachen. Wenn andererseits die CPU 301b bereits Zugriff zum Speicher 302a oder 302b hat, erlaubt es die Busentscheidungsschaltung 304 der CPU 301a nicht, Zugriff zum Speicher zu nehmen und gibt das Steuersignal 308a für das Busschaltglied nach Beendigung des Zugriffs durch die CPU 301b ab.
Das Speichersteuersystem in der bekannten Informationsver­ arbeitungsvorrichtung ist in der oben beschriebenen Weise ausgeführt, und die Duplexschreibvorrichtung muß eine Dop­ pelschreibadresse auch für den anderen Speicher entspre­ chend der Schreibadresse des Zielspeichers erzeugen. Ferner sind CPU-Busleitungen in der gleichen Anzahl wie Speicher erforderlich, was den Bedarf an Hardware erhöht.
Im Datenübertragungssteuersystem zum Übertragen von Daten an den Duplexspeicher wird bei der vorstehend beschriebenen bekannten Informationsverarbeitungsvorrichtung der aus dem Speicher des STBY-Systems gelesene Speicherinhalt nur be­ nutzt, wenn er mit dem Speicherinhalt des Speichers des ACT-Systems verglichen wird, der zeitweilig in der Puffer­ schaltung gespeichert ist, und die CPU des ACT-Systems kann nicht willkürlich den Speicherinhalt des Speichers im STBY-System lesen. Weil für das Datenübertragungssteuersystem ein Puffer benutzt wird, ist außerdem für das Schreiben in den Speicher des anderen Systems mehr Zeit erforderlich als beim Eigensystem, und außerdem ist die Identität des Spei­ cherinhalts während der Verzögerungszeit zwischen den bei­ den Systemen nicht sichergestellt, was zu einer Fehlfunk­ tion führen kann.
Schließlich ist bei der bekannten Informationsverarbei­ tungsvorrichtung das Multiprozessorsystem so aufgebaut, daß während eine CPU Zugriff zu einem Speicher hat, die andere CPU bedingungslos auf Zugriff warten muß, so daß die Verar­ beitungskapazität pro Zeiteinheit gering ist.
Aus der JP 1-259 438 (A) ist eine Steuereinrichtung bekannt, welche ein gleichzeitiges Beschreiben von an einem gemeinsa­ men Bus hängenden Speichern ermöglicht, wobei darüber hinaus ein selektives Lesen der Speicherinhalte erfolgen kann. Die dort vorhandenen Speicher werden offensichtlich aus Gründen der Fehlertoleranz im Duplexverfahren betrieben. Bei der dortigen Lehre muß jedoch die CPU separate Signale bereit­ stellen, die auf die Hardwareeinheiten gelangen, um diese um­ zuschalten, so daß das gemeinsame Beschreiben und das ge­ trennte Lesen möglich wird. Offen bleibt, inwieweit eine Bestätigung vollzogener Schreib- bzw. Lesevorgänge erfolgt, ohne daß eine Interrupt-Steuerung, die die CPU belastet vorgenommen werden muß.
Bei dem System zum gleichzeitigen Beschreiben einer Duplex-Spei­ cheranordnung gemäß JP 62-169 244 (A) sind zwei getrennte Busleitungen vorgesehen. Der Grundgedanke der dortigen Lehre liegt darin, daß dann, wenn eine aktive CPU eine simultane Schreibanfrage betreffend beide Systeme stellt, ein Adressenerzeuger in einer Busverbindungsanordnung eine Busanfrage auf einen Busanfragekreis des anderen, nämlich des Standby-Systems richtet. In diesem Falle wird über den CPU-Bus des Standby-Systems angefragt, ob ein direktes Beschreiben der Speicher, d. h. ein DMA-Betrieb möglich ist. Nachdem die Benutzung des CPU-Bus des Standby-Systems unterbunden wurde, erfolgt dann gewünschte gleichzeitige Speicherbeschreiben. Eine entsprechende Logik stellt sicher, daß der erwünschte DMA-Betrieb so lange erfolgt, bis ein Übertragungszyklusende signalisiert wird.
Mit der JP 62-182 953 (A) soll die erforderliche Verarbeitungskapazität eines Steuerprozessors, die zur Ein- und Ausgabesteuerung notwendig ist, minimiert werden. Ein dort gezeigter Zwei-Port-Speicher kann demnach einmal über einen Speicherbus sowie zum anderen über einen Ein-/Ausgabebus beschrieben werden. Die Ein-/Ausgabesteuerung ist mit einem Buskoppler am jeweiligen Speicherbus angeschlossen. Durch den symmetrischen Aufbau des Systems ist ein Beschreiben der Speicher im Duplexverfahren möglich, wobei hierfür ein Koppelbus vorgesehen ist.
Die JP 2-199 562 (A) zeigt eine Anordnung von Duplexspeichern, wobei sichergestellt werden soll, daß gleichzeitig in einem Schreibzyklus identische Inhalte in die jeweiligen Speicher eingeschrieben werden. Hierfür sind Busschaltglieder und Gattersteuereinheiten vorgesehen. Darüber hinaus besteht dort die Möglichkeit, Adressen sowie ein Adressen-Strobe-Signal zu modifizieren. Die Problematik des individuellen Auslesens aus einem der vorhandenen Speicher ist in der JP 2-199 562 (A) nicht angesprochen.
Eigenschaften und das grundsätzliche Betriebsverhalten einer DRAM-Speicherbaugruppe mit einem Controller auf der Basis ei­ nes 80 386-Prozessors werden in ELECTRONIC DESIGN, 26. Januar 1989, Seite 113 bis 119 beschrieben.
Im einzelnen wird dargelegt, daß der Prozessor diskrete Ausgänge zum Steuern jeweils für Controller-Baugruppen DRAMP1 und DRAMP2 aufweist. Über eine entsprechende Bussteuerung werden Buskollisionen von vornherein ausgeschlossen. Der DRAM-Controller ist dabei so aufgebaut, daß sogenannte CAS-Signale erzeugt werden, welche das Einschreiben von Daten im Schreibzyklus ermöglichen. Im einzelnen sind 4 separate CAS-Signale vorgesehen, welche den einzelnen DRAN-Blöcken zuge­ führt werden, wodurch sichergestellt ist, daß nur auf eine einzige Datenquelle zurückgegriffen werden kann. Die mit DRAMP1 und DRAMP2 bezeichneten Baugruppen dienen demnach zum Steuern von Schreibe-/Lesevorgängen. Eine vorhandene Gatterschaltung steht mit dem Ready-Port des 80386-Prozessors in Verbindung, wirkt jedoch nicht mit den DRAM-Modulen zusam­ men.
Es ist daher Aufgabe der Erfindung, bekannte Informationsver­ arbeitungsvorrichtungen so weiterzuentwickeln, daß an einem einzigen CPU-Bus angeschlossene Speicher einerseits mit geringem Hardwareaufwand im Duplexbetrieb beschrieben und andererseits jeweils ein Einzelspeicher willkürlich ausgelesen werden kann. Dann, wenn von einem Multiprozessorsystem ausgegangen wird, soll das Beschreiben und Lesen der Speicher in kurzer Zeit mit geringer Belastung des jeweiligen Prozessors, d. h. ohne wesentliche Einschränkung der Verarbeitungskapazität möglich sein.
Die Lösung der Aufgabe der Erfindung erfolgt mit einem Gegenstand nach den Merkmalen der nebengeordneten Patentansprüche 1, 2 oder 4. Die Unteransprüche stellen min­ destens zweckmäßige Ausgestaltungen und Weiterbildungen dar.
Gemäß einem ersten Grundgedanken der Erfindung ist das Speicherkennfeld der Speicher so ausgebildet, daß das Festlegen, ob aus einem Speicher gelesen werden soll oder nicht, allein in Anhängigkeit vom MSB der Leseadresse getrof­ fen werden kann. Ebenso kann sofort ein Doppelschreiben vor­ genommen werden, wenn das MSB der Schreibadresse einen vorge­ gebenen Wert aufweist. Die diskrete Erzeugung einer Adresse zur Doppeleingabe in den jeweils anderen Speicher ist demnach nicht mehr notwendig, da allein durch die Definition und Identifikation des MSB die entsprechenden Operationen möglich werden.
Gemäß einem weiteren Grundgedanken der Erfindung wird auf die spezielle Arbeitsweise von Gattersteuereinheiten abgestellt, die anhand der Adressenausgabe der ersten und zweiten Zentraleinheit ein Signal dekodieren, um die entsprechenden Busschaltkreise anzusteuern. Zum anderen wird auch dort das Speicherkennfeld so ausgelegt und unterteilt, daß es einen Adressenbereich für das Doppelschreiben oder Lesen des Eigensystems und einen Adressenbereich zum Lesen des jeweils anderen Systems aufweist. Die erforderliche Steuerung wird auch in Abhängigkeit vom Adressensignal durchgeführt. Hierdurch kann das Lesen des Speicherinhaltes des aktiven Systems sowie des Standby-Systems frei durchgeführt werden. Dies wiederum ermöglicht im Falle des Erkennens von Fehlern durch Summenprüfung oder dergleichen im Speicher ein schnel­ les, nahezu verzögerungsfreies Umschalten auf den jeweils fehlerfreien Speicherbereich.
Ein ergänzender Grundgedanke der Erfindung besteht darin, eine Anordnung von einer Vielzahl von Zweiwege-Gattern vorzu­ sehen, die innerhalb eines einzigen Bussystems angeordnet sind, wodurch im Zusammenwirken mit einer Vielzahl von Speichern und durch Rückgriff auf ein Steuersignal ein je­ weils definierter Speicher ausgewählt werden kann, wodurch ein entsprechender Speicherzugriff möglich wird.
Gemäß dem ersten Grundgedanken der Erfindung arbeitet also eine Informationsverarbeitungsvorrichtung mit einem Speicherkenn­ feld einer Zentraleinheit, die so ausgelegt ist, daß der Zugriff zu Speichern, das heißt die Wahl von Doppelspei­ chern beim Schreiben und die Wahl nur eines entsprechenden Speichers beim Lesen mit Hilfe einer Chipauswahlschaltung erfolgt, die das gleichzeitige Schreiben in die Duplexspei­ cher und das einzelne Lesen aus den entsprechenden Spei­ chern in Übereinstimmung mit dem Adressenbereich befiehlt, zu dem die von der CPU ausgegebene Adresse gehört. Es be­ steht also keine Notwendigkeit, eine Duplexschreibadresse für den anderen Speicher in Übereinstimmung mit einer be­ zeichneten Schreibadresse für den bezeichneten Speicher zu erzeugen, so daß das Doppelschreiben und das Einzellesen mit wenig Hardware durchgeführt werden kann.
Der Zugriff zu den jeweiligen Speichern erfolgt mittels eines Bereichaus­ wahlsignals. Die Wahl der Duplexspeicher beim Schreiben und die Wahl eines der entsprechenden Speicher beim Lesen er­ folgt mit Hilfe eines Chipauswahlsystems, und die Chipaus­ wahlschaltung zeigt das gleichzeitige Schreiben in den Du­ plexspeicher oder das individuelle Lesen der jeweiligen Speicher mit Hilfe der Schreib/Lese-Einrichtung an, wodurch der Speicherbereich vollkommen ausgenutzt wird, um das Dop­ pelschreiben und das Einzellesen durchzuführen.
In einer Ausführungsform der Erfindung wird in einem Sy­ stem, in welchem CPU-Karten, die jeweils eine Zentralein­ heit und einen Speicher enthalten, in Duplexausführung vor­ gesehen sind, bei der Eingabe von Informationen in den Speicher einer Karte, diese Informationen auch in die an­ dere Karte eingegeben werden, und der Speicherinhalt der ersten Karte sowie der Speicherinhalt der anderen Karte wird jeweils durch eine andere Adresse gelesen. Beim Schreiben auf die erste Karte erfolgt auch ein Schreiben auf die zweite Karte, und das Lesen des Speicherinhalts auf der Eigensystemkarte und des Speicherinhalts auf der ande­ ren Systemkarte erfolgt gleichfalls mittels verschiedener Adressen. Auf diese Weise können die einzelnen Systemkarten des einen Systems den Speicherinhalt der Karten des jeweils anderen Systems kennen.
Nach der Erfindung sind eine Vielzahl von CPU-Karten über ein Busschaltglied miteinander verbun­ den. Der Speicher ist in zwei Bereiche unterteilt, von denen einer dem Doppelschreiben oder Eigensystemlesen und der andere dem Lesen des anderen Systems entspricht. Dabei erzeugt ein Chipauswahlerzeugerteil ein Speicherschreibsi­ gnal oder ein Speicherlesesignal anhand des Ergebnisses der Dekodierung der Speicheradresse und des Schreibsignals. Die Wahl von Doppelspeichern beim Schreiben und die Wahl von Einzelspeichern beim Lesen erfolgt also entsprechend dem Chipansteuersignal. Die Steuerung des Chipauswahlerzeuger­ teils und des Busschaltgliedes wird von einer Gattersteuer­ schaltung in Übereinstimmung mit einem Schreibsignal oder einem Lesesignal vorgenommen, welches die Zentraleinheit entsprechender Karten ausgibt. Es ist also möglich, den Speicherinhalt des anderen Systems zu kennen, und es ist auch möglich, die gleichen Daten gleichzeitig in den Spei­ cher des Eigensystems und in den Speicher des anderen Sy­ stems einzugeben, wodurch die Identität der Speicherinhalte gewährleistet ist.
Bei einem Multiprozessorsystem, in dem mehrere Zentraleinheiten und mehrere Speicher über einen CPU-Bus miteinander verbunden sind, wird der gleichzeitige Zugriff entsprechender Zentralein­ heiten zu verschiedenen Speichern in Abhängigkeit von den Kombinationen der Speicher erlaubt, zu denen die jeweiligen Zentraleinheiten Zugriff nehmen. Auf diese Weise ist die eingeschränkte Verarbeitungskapazität pro Zeiteinheit im wesentlichen hinfällig.
Gemäß einer weiteren Ausführungsform der Erfindung ist ein in zwei Richtungen wirksames Gatter in der Mitte des CPU-Bus vorge­ sehen und außerdem zwei Adressendekodierer zum Dekodieren der von den Zentraleinheiten ausgegebenen Adressen sowie eine Busentscheidungsschaltung, die zwei Busschaltglieder und das in zwei Richtungen wirksame Gatter entsprechend den Ausgaben der Adressendekodierer öffnen oder schließen. Wenn die beiden Zentraleinheiten zur gleichen Zeit auf verschie­ dene Speicher Zugriff nehmen, werden die den jeweiligen Zentraleinheiten entsprechenden Speicher voneinander ge­ trennt. Wenn also eine Zentraleinheit eines Systems mit zwei Zentraleinheiten und zwei Speichern zum Speicher des eigenen Systems Zugriff hat, kann die andere Zentraleinheit zum Speicher des anderen Systems zur gleichen Zeit Zugriff nehmen.
Das in zwei Richtungen wirksame Gatter kann zwischen zwei bestimmten, an den CPU-Bus angeschlossenen Speichern vorgesehen sein. Außerdem sind dann zwei Adressendekodierer vorgesehen, welche von den beiden Zentraleinheiten ausgegebene Adressen dekodieren. Ein Busschaltglied führt eine Auf/Zu-Steuerung der beiden Busschaltglieder und des in zwei Richtungen wirksamen Gat­ ters in Übereinstimmung mit den Ausgaben der Adressendeko­ dierer durch, so daß bei gleichzeitigem Zugriff verschiede­ ner Speicher durch die beiden Zentraleinheiten, die Spei­ cher in zwei Gruppen unterteilt werden, welche zu den je­ weiligen Zentraleinheiten gehören. Wenn also eine CPU ge­ rade zu einem bestimmten Speicher Zugriff hat, kann die CPU der anderen Seite zur gleichen Zeit zu Speichern Zugriff nehmen, die diesem Speicher näher sind.
Im folgenden sei die Erfindung anhand schematisch dargestellter Ausführungs­ beispiele näher erläutert. In den Zeichnungen zeigt:
Fig. 1 ein Diagramm eines Speicherduplexsystems in einer Informationsverarbeitungsvorrichtung gemäß einem ersten Ausführungsbeispiel
Fig. 2 ein Diagramm eines Speicherkennfeldes in einer Zentraleinheit entsprechend Fig. 1;
Fig. 3 ein Diagramm eines Speicherduplexsystems in einer Informationsverarbeitungsvorrichtung gemäß einem zweiten Ausführungsbeispiel;
Fig. 4 ein Diagramm eines Speicherkennfeldes in einer Zentraleinheit entsprechend Fig. 3;
Fig. 5 ein Diagramm eines Duplexsteuersystems eines Spei­ chers in einer Informationsverarbeitungsvorrich­ tung gemäß einem dritten Ausführungsbeispiel;
Fig. 6 ein Diagramm des Aufbaus eines Speicherkennfeldes gemäß einem dritten Ausführungsbeispiel;
Fig. 7 ein Diagramm des Aufbaus eines Speicherkennfeldes gemäß einem vierten Ausführungsbeispiel;
Fig. 8 ein Diagramm eines Multiprozessorsystems in einer Informationsverarbeitungsvorrichtung gemäß einem fünften Ausführungsbeispiel;
Fig. 9 ein Diagramm eines Multiprozessorsystems in einer Informationsverarbeitungsvorrichtung gemäß einem sechsten Ausführungsbeispiel;
Fig. 10 ein Diagramm eines Speichersteuersystems bei einem bekannten Informationsverarbeitungssystem;
Fig. 11 ein Diagramm eines Datenübertragungs-Steuersystems zum Übertragen von Daten bei einem bekannten Du­ plexspeichersystem;
Fig. 12 ein Diagramm eines bekannten Multiprozessorsy­ stems.
1. Ausführungsbeispiel
Eine Informationsverarbeitungsvorrichtung gemäß einem er­ sten Ausführungsbeispiel der Erfindung ist in Fig. 1 darge­ stellt. Bei diesem Ausführungsbeispiel soll die Menge an Hardware bei Duplexausführung der Speichermöglichkeit ver­ ringert werden, damit die Zuverlässigkeit erhöht wird. Zur Verarbeitung von Arbeitsgängen in Übereinstimmung mit einem in einem Programm beschriebenen Verfahren ist eine Zen­ traleinheit CPU 1101 vorgesehen. Für die CPU 1101 sind Du­ plexspeicher 1104 und 1105 vorgesehen. Zur Aktivierung der Speicher 1104 und 1005 wird ein Chipansteuersignal von ei­ ner Chipauswahlerzeugerschaltung 1106 erzeugt. Als Chipaus­ wahlerzeugerschaltung 1106 dient die Schreib/Lese-Steuer­ einrichtung 1001, die das gleichzeitige Schreiben des glei­ chen Signals in die doppelten Speicher 1104 und 1105 sowie das Lesen der gleichen Informationen aus den entsprechenden Speichern ermöglicht. Daten werden zwischen der CPU 1101 und den Speichern 1104, 1105 sowie zwischen der CPU 1101 und der Chipauswahlerzeugerschaltung 1106 über einen CPU-Bus 1108 übertragen. Die Bezugszeichen 1109, 1110 bezeich­ nen Zugriffvollzugssignale, die von den Speichern 1104, 1105 ausgegeben werden, wenn der Zugriff jeweils beendet ist. Wenn der Speicher 1104, 1105 (oder beide), der von der Chipauswahlerzeugerschaltung 1106 aktiviert wurde, das Zu­ griffvollzugssignal 1109, 1110 (oder beide) abgibt, wird von einem Datenbestätigungs-Erzeugerteil 1111 ein Datenbe­ stätigungssignal 1107 abgegeben. Im Datenbestätigungssi­ gnalerzeugerteil 1111 bezeichnet das Bezugszeichen 1111a ein ODER-Gatter mit zwei Eingängen, an das das Zugriffvoll­ zugssignal 1109 vom Speicher 1104 in einer positiven Phase und das Chipansteuersignal von der Chipauswahlerzeuger­ schaltung 1106 in einer Umkehrphase angelegt wird. Das Be­ zugszeichen 1111b bezeichnet ein ODER-Gatter mit zwei Ein­ gängen, an das das Zugriffvollzugssignal 1110 vom Speicher 1105 in einer positiven Phase und das Chipansteuersignal von der Chipauswahlerzeugerschaltung 1106 in einer Umkehr­ phase angelegt wird. Bezugszeichen 1111c bezeichnet ein UND-Gatter mit zwei Eingängen, an das die Ausgabesignale der ODER-Gatter 1111a und 1111b mit den beiden Eingängen angelegt werden und das ein Datenbestätigungssignal 1107 abgibt.
Fig. 2 zeigt für dieses erste Ausführungsbeispiel ein Spei­ cherkennfeld in der CPU 1101 für den Fall einer vier Bits umfassenden Adresse. Im vorliegenden Fall gibt der Adres­ senbereich 0000-0111 das Lesen oder Doppelschreiben des Speichers 1104 wieder, während der Adressenbereich 1000-1111 das Lesen des Speichers 1005 wiedergibt.
Die Arbeitsweise ist wie folgt: Wenn die CPU 1101 die glei­ chen Daten in beide Speicher 1104, 1105 doppelt ein­ schreibt, gibt sie die Doppelschreibadresse (eine Adresse mit einem MSB (signifikantestes Bit) von "0" in Fig. 1) sowie ein Schreibsignal ab. Die Chipauswahlerzeu­ gerschaltung 1106 dekodiert diese Signale und gibt an beide Speicher ein Chipansteuersignal ab. Die Speicher 1104, 1105 empfangen dies Chipansteuersignal und schreiben Daten, die in die vom CPU-Bus 1108 empfangene Speicheradresse ge­ schrieben werden sollen, und es erfolgt eine Ausgabe von Zugriffvollzugssignalen 1109, 1110. Der Datenbestätigungs­ erzeugerteil 1111 gibt das Datenbestätigungssignal 1107 nur dann ab, wenn diese beiden Signale ausgegeben werden. Auf diese Weise erfolgt das Schreiben der gleichen Daten in beide Speicher durch einen einmaligen Schreibvorgang. Mit anderen Worten, es wird gleichzeitig geschrieben.
Wenn dann die CPU 1101 den Inhalt des Speichers 1104 liest, gibt sie die Leseadresse des Speichers 1104 (in Fig. 1 die­ jenige Adresse, die ein MSB "0" enthält) und ferner ein Le­ sesignal ab. In der Chipauswahlerzeugerschaltung 1106 wer­ den diese Signale dekodiert, und ein Chipansteuersignal wird nur für den Speicher 1104 abgegeben. In Abhängigkeit von dem Chipansteuersignal teilt der Speicher 1104 der CPU 1101 eine Leseadresse mit, die der Speicheradresse ent­ spricht, welche vom CPU-Bus 1108 empfangen wird, wobei diese über den CPU-Bus 1108 übertragen wird. Außerdem wird ein Zugriffvollzugssignal 1109 ausgegeben. Der andere Spei­ cher 1105 wird nicht aktiv, weil er das Chipansteuersignal nicht empfängt. Der Datenbestätigungserzeugerteil 1111 gibt das Datenbestätigungssignal 1107 in Abhängigkeit vom Zu­ griffvollzugssignal 1109 ab, so daß der Inhalt im Speicher 1104 gelesen werden kann.
Wenn dann die CPU 1101 den Inhalt des Speichers 1105 liest, gibt sie eine Leseadresse des Speichers 1105 (wobei die Adresse in Fig. 1 ein MSB von "1" enthält) sowie ein Lese­ signal ab. Die Chipauswahlerzeugerschaltung 1106 dekodiert diese Signale und gibt ein Chipansteuersignal nur an den Speicher 1105 ab. Der darauffolgende Vorgang ähnelt dem Le­ sevorgang des Speichers 1104, und es wird nur der Inhalt des Speichers 1105 ausgegeben.
Bei diesem ersten Ausführungsbeispiel der Erfindung ist eine Vielzahl von Speichern mit einem einzigen CPU-Bus ver­ bunden, und die Speicher werden mit einem Chipauswahlsystem für das Lesen oder Schreiben ausgewählt. Das bedeutet, daß das Speicherkennfeld der Speicher so gestaltet ist, daß die Bestimmung, ob ein Speicher zum Lesen dienen soll oder nicht, in Abhängigkeit davon getroffen wird, ob das MSB der Leseadresse "0" oder "1" ist, und daß sofort ein Doppel­ schreiben erfolgt, wenn das MSB der Schreibadresse "0" ist. Es besteht also keine Notwendigkeit, eine Adresse zur Dop­ peleingabe in den anderen Speicher zu erzeugen, die der be­ zeichneten Schreibadresse des bezeichneten Speichers ent­ spricht. Außerdem ist nur ein einziger CPU-Bus erforderlich statt eine der Anzahl Speicher entsprechende Anzahl. Infol­ gedessen wird für das Doppelschreiben weniger Hardware benötigt.
Während bei dem vorstehend beschriebenen ersten Ausfüh­ rungsbeispiel das Speicherkennfeld in zwei Bereiche unter­ teilt ist, ist auch eine Unterteilung in drei Bereiche mög­ lich, von denen einer für das Doppelschreiben, einer für das Lesen aus dem Speicher 1104 und einer für das Lesen aus dem Speicher 1105 bestimmt ist, wobei die gleichen Wirkun­ gen wie oben beschrieben erzielt werden.
2. Ausführungsbeispiel
Während bei dem vorstehend beschriebenen ersten Ausfüh­ rungsbeispiel die Leseadresse für beide Speicher in zwei Bereiche unterteilt ist, kann auch eine E/A-Anschluß-Schal­ tung vorgesehen sein, um anstatt des Chipauswahlsystems ein Bereichsumschaltsystem zu erhalten. Wenn hier ein Befehl zum Umschalten eines Bereichs erforderlich ist, kann der Speicherplatz wirksam und ausreichend genutzt werden.
Nachfolgend soll ein zweites Ausführungsbeispiel der Erfin­ dung anhand von Fig. 3 beschrieben werden. Eine Zentralein­ heit CPU 1101 dient der Verarbeitung von Arbeitsgängen ent­ sprechend einem in einem Programm beschriebenen Verfahren. Für die CPU 1101 sind Doppelspeicher 1104, 1105 vorgesehen, und eine Chipauswahlerzeugerschaltung 1106 gibt ein Chipan­ steuersignal zum Aktivieren der Speicher 1104, 1105 ab. Über einen CPU-Bus 1108 werden Daten zwischen der CPU 1101 und den Speichern 1104, 1105 sowie zwischen der CPU 1101 und der Chipauswahlerzeugerschaltung 1106 übertragen. Bei Beendigung des Zugriffs geben die Speicher 1104, 1105 Zu­ griffvollzugssignale 1109, 1110 ab. Von einem Datenbestäti­ gungserzeugerteil 1111 wird ein Datenbestätigungssignal 1107 abgegeben, wenn der von der Chipauswahlerzeugerschal­ tung 1106 aktivierte Speicher 1104, 1105 (oder beide) das Zugriffvollzugssignal 1109, 1110 (oder beide) abgibt. Das Bezugszeichen 1112 bezeichnet einen Bereichbezeichnungs-Zwi­ schenspeicher zur Bereichsschaltung aller Adressenberei­ che der Speicher 1104, 1105. Das Bezugszeichen 1002 be­ zeichnet eine Schreib/Lese-Steuereinrichtung, die den Be­ reichbezeichnungs-Zwischenspeicher 1112 und die Chipaus­ wahlerzeugerschaltung 1106 aufweist.
Fig. 4 zeigt ein Speicherkennfeld in der CPU 1101 für den Fall einer 4-Bit-Adresse bei diesem Ausführungsbeispiel der Erfindung. Wenn das Bereichbezeichnungssignal "0" ist, stellen alle Bereiche der Adresse 0000-1111 Lesen oder Doppelschreiben für den Speicher 1104 dar, und wenn das Be­ reichbezeichnungssignal "1" ist, stellen alle Bereiche der Adresse 0000-1111 Lesen oder Doppelschreiben für den Speicher 1105 dar.
Die Arbeitsweise ist wie folgt: Wenn die CPU 1101 den In­ halt des Speichers 1104 liest, führt sie einen Lesezugriff durch, nachdem sie die Information "0" in den Bereichbezei­ chnungszwischenspeicher 1112 eingegeben hat. Die Chipaus­ wahlerzeugerschaltung 1106 gibt an den Speicher 1104 ein Chipansteuersignal 1109 ab, wenn die Ausgabe des Bereichbe­ zeichnungszwischenspeichers 1112 "0" und der Zugriff ein Lesezugriff ist. Danach ist die Arbeitsweise ähnlich wie beim ersten Ausführungsbeispiel. Mit anderen Worten, der Speicher 1104 empfängt das Chipansteuersignal und teilt in Abhängigkeit davon die gelesenen Daten der Speicheradresse, die der vom CPU-Bus 1108 empfangenen Adresse entsprechen, durch Übermittlung der gleichen Daten über den CPU-Bus 1108 der CPU 1101 mit. Außerdem gibt dieser Speicher das Zu­ griffvollzugssignal 1109 aus. Da der Speicher 1105 kein Chipansteuersignal empfängt, führt er keine Operation durch. Der Datenbestätigungserzeugerteil 1111 gibt das Da­ tenbestätigungssignal 1107 bei Empfang des Zugriffvollzugs­ signals 1109 aus, so daß der Inhalt des Speichers 1104 ge­ lesen werden kann.
Wenn andererseits die CPU 1101 den Inhalt des Speichers 1105 liest, wird zunächst die Information "1" in den Be­ reichbezeichnungszwischenspeicher 1112 eingegeben und da­ nach ein Lesezugriff vorgenommen. Die Chipauswahlerzeuger­ schaltung 1106 gibt das Chipansteuersignal 1110 an den Speicher 1105 ab, weil die Ausgabe des Bereichbezeichnungs­ zwischenspeichers "1" ist und weil der Zugriff eine Le­ seadresse ist. Anschließend erfolgt eine Operation ähnlich wie beim ersten Ausführungsbeispiel.
Wenn die CPU 1101 das Doppelschreiben durchführt, besteht keine Notwendigkeit, besondere Daten in den Bereichbezeich­ nungszwischenspeicher 1112 einzugeben. Selbst wenn "0" oder "1" in den Bereichbezeichnungszwischenspeicher 1112 einge­ geben wird, gibt die Chipauswahlerzeugerschaltung 1106 an beide Speicher 1104, 1105 ein Chipansteuersignal ab, weil es sich bei dem Zugriff um einen Schreibzugriff handelt, gleichgültig, welche Ausgabe vom Bereichbezeichnungszwi­ schenspeicher 1112 zur Verfügung steht. Danach ist die Ar­ beitsweise ähnlich wie beim ersten Ausführungsbeispiel. Mit anderen Worten, die Speicher 1104, 1105 empfangen das Chipansteuersignal und schreiben die Schreibdaten in die Speicheradresse, die vom CPU-Bus 1108 empfangen wird, und geben die Zugriffvollzugssignale 1109, 1110 ab. Der Daten­ bestätigungserzeugerteil 1111 gibt das Datenbestätigungssi­ gnal 1107 erstmals ab, wenn diese beiden Signale ausgegeben werden, wodurch es möglich ist, die gleichen Daten in einem einmaligen Schreibvorgang in beide Speicher einzugeben.
Die vorstehend beschriebene Konstruktion ist besonders dann wirksam, wenn der Speicher 1104 bei einem gewöhnlichen Vor­ gang und der Speicher 1105 statt des Speichers 1104 benutzt wird, wenn eine Behinderung auftritt.
Bei diesem zweiten Ausführungsbeispiel ist, wie schon er­ wähnt, im Vergleich zum ersten Ausführungsbeispiel ein E/A-Anschluß vorgesehen, um ein Bereichsschaltsystem benutzen zu können. Durch Ausgabe eines Befehls zum Schalten eines Bereichs kann unter wirksamer und ausreichender Nutzung des Speicherplatzes doppelt geschrieben und individuell gelesen werden.
3. Ausführungsbeispiel
Fig. 5 zeigt eine Informationsverarbeitungsvorrichtung ge­ mäß einem dritten Ausführungsbeispiel der Erfindung. Mit diesem Ausführungsbeispiel wird ein individuelles Lesen des Speicherinhalts des eigenen Systems und des anderen Systems frei durchgeführt. In der Figur stellen durch strichpunk­ tierte Linien abgeteilte Bereiche einzelne CPU-Karten dar. Eine CPU-Karte bietet ein CPU-System, bei dem eine Zen­ traleinheit und Speicher oder dergleichen auf einer Leiter­ platte oder Schaltkarte enthalten sind. Im jeweiligen CPU-Kartensystem bezeichnen die Bezugszeichen 1201, 1204 je­ weils eine Zentraleinheit, die Arbeitsgänge entsprechend einem in einem Programm beschriebenen, verordneten Verfah­ ren abarbeiten. In diesen beiden Zentraleinheiten 1201, 1204 sind Speicher 1202 bzw. 1205 enthalten. Die Zen­ traleinheiten CPU 1201, 1204 sowie die Speicher 1202, 1205 sind über Datenbusse 1206, 1207 verbunden. Ein Zwischensy­ stem-Datenbus 1212 verbindet das die CPU 1201 enthaltende System mit dem die CPU 1204 enthaltenden System. Zum Ver­ binden oder Trennen des Zwischensystem-Datenbus 1212 mit dem Datenbus 1206 bzw. 1207 dienen Bus-Schaltglieder 1214, 1217. Chipansteuersignale zum Aktivieren der Speicher 1202, 1205 werden von Chipauswahlerzeugerschaltungen 1215 bzw. 1218 erzeugt. Das Öffnen und Schließen der Busschaltglieder 1214, 1217 wird von Gattersteuereinheiten 1216, 1219 ge­ steuert. Das Bezugszeichen 1003 bezeichnet eine Schreib/Lese­ einrichtung, die die Chipauswahlerzeugerschaltung 1215 und die Gattersteuereinheit 1216 aufweist und dazu dient, mit Sicherheit die gleichen Informationen in die CPU-Karte der anderen Seite einzuschreiben, wenn sie diese Informa­ tionen in den Speicher der CPU-Karte der einen Seite ein­ gibt. Dadurch erlaubt sie das unabhängige Lesen des Spei­ cherinhalts der Karte des eigenen Systems und der Karte des anderen Systems mittels getrennter Adressen. Das Bezugszei­ chen 1004 bezeichnet eine Schreib/Leseeinrichtung, welche die Chipauswahlerzeugerschaltung 1218 und die Gatter­ steuereinheit 1219 aufweist, um mit Sicherheit die gleiche Information in die CPU des anderen Systems einzuschreiben, wenn sie Information in den Speicher der CPU-Karte des ei­ genen Systems eingibt, wodurch das Lesen des Speicherin­ halts der Karte des eigenen Systems und das Lesen des Spei­ cherinhalts der Karte des anderen Systems unabhängig mit­ tels getrennter Adressen durchgeführt werden kann. Die Be­ zugszeichen 1220, 1221 bezeichnen Speicherschreibsignale, die von den Speicherauswahlerzeugerschaltungen 1215, 1218 an die Speicher 1202 bzw. 1225 abgegeben werden. Die Be­ zugszeichen 1222, 1223 bezeichnen Speicherlesesignale, die von den Chipauswahlerzeugerschaltungen 1215, 1218 an die Speicher 1202 bzw. 1205 abgegeben werden. Die Bezugszeichen 1224, 1225 bezeichnen Zugriffsignale zum anderen System, die von den Gattersteuereinheiten 1216, 1219 an die Gatter­ steuereinheiten 1219 bzw. 1216 abgegeben werden. Die Be­ zugszeichen 1226, 1227 bezeichnen Steuersignale für die Busschaltglieder, die von den Gattersteuereinheiten 1216, 1219 an die Busschaltglieder 1214 bzw. 1217 abgegeben wer­ den. Die Bezugszeichen 1228, 1229 bezeichnen Mitteilungssi­ gnale für Zugriff zum anderen System, die von den Gatter­ steuereinheiten 1216, 1219 an die Chipauswahlerzeugerschal­ tungen 1215 bzw. 1218 abgegeben werden.
Fig. 6 zeigt ein Speicherkennfeld für alle Speicher jedes Systems bei diesem dritten Ausführungsbeispiel. Dem Adres­ senbereich von X bis X+Y-1 ist das Doppelschreiben und das Lesen des eigenen Systems zugeordnet, während dem Adressen­ bereich von X+Y bis X+2Y-1 das Lesen des anderen Systems zugeordnet ist. Das bedeutet, daß das Speicherkennfeld in zwei Bereiche unterteilt ist, nämlich den Bereich zum Dop­ pelschreiben und Lesen des Eigensystems sowie den Bereich zum Lesen des anderen Systems.
Die Arbeitsweise ist wie folgt: Das Speicherkennfeld der Zentraleinheit in jedem System sieht so aus, wie in Fig. 6 dargestellt. Wenn die CPU des Systems der einen Seite (zum Beispiel CPU 1204 des STBY-Systems) eine Adresse erzeugt, die angibt, daß Daten in den Eigensystem-Speicher 1205 ei­ nes Speicherkennfeldes geschrieben werden sollen, wird die Speicheradresse und das Schreibsignal über den Datenbus 1207 in die Chipauswahlerzeugerschaltung 1218 und die Gat­ tersteuereinheit 1219 eingegeben. Die Chipauswahlerzeuger­ schaltung 1218 dekodiert diese Signale und gibt das Spei­ cherschreibsignal 1221 ab. Die Speicheradresse und Schreib­ daten werden von der CPU 1204 über den Datenbus 1207 in den Speicher 1205 eingegeben, und anhand dessen und des Spei­ cherschreibsignals 1221 erfolgt das Schreiben. Zur gleichen Zeit dekodiert die Gattersteuereinheit 1219 diese Signale und liefert das Zugriffsignal 1225 zum anderen System und schließt darüber hinaus das Busschaltglied 1217 durch Aus­ gabe des Gattersteuersignals 1227. Die Gattersteuereinheit 1216 des anderen Systems, nämlich des ACT-Systems, empfängt von der Gattersteuereinheit 1219 das Zugriffsignal 1225 für das andere System und liefert das Gattersignal 1226 zum Schließen des Busschaltgliedes 1214 unter der Annahme, daß die CPU 1201 keinen Zugriff zum Speicher 1202 nimmt. So werden die von der CPU 1204 gelieferten Speicheradressen-Schreib­ daten und das Schreibsignal über den Datenbus 1207, das Busschaltglied 1217, den Zwischensystemdatenbus 1212, das Busschaltglied 1214 und den Datenbus 1206 in die Chip­ auswahlerzeugerschaltung 1215 eingegeben. Hierdurch kann die Chipauswahlerzeugerschaltung 1215 das Speicherschreib­ signal 1220 hervorbringen und schreibt die gleichen Daten in den Speicher 1202, die auch in den Speicher 1205 einge­ geben werden. Auf diese Weise erfolgt die Duplexeingabe in den Speicher.
Wenn als nächstes die CPU 1204 den Inhalt des Speichers 1205 des eigenen Systems wissen will, gibt sie eine Adresse in einem Adressenbereich ab, dem das Lesen des Eigensystems im Speicherkennfeld gemäß Fig. 6 zugeordnet ist. Hierdurch wird die Speicheradresse und das Lesesignal über den Daten­ bus 1207 in die Schaltung 1218 zum Erzeugen des Chipansteu­ ersignals und die Gattersteuereinheit 1219 eingegeben. Zunächst dekodiert die Chipauswahlerzeugerschaltung 1218 diese Signale und gibt das Speicherlesesignal 1223 ab. Der Speicher 1205 teilt in Abhängigkeit von der Spei­ cheradresse, die über den Datenbus 1207 eingegeben wird, und das Speicherlesesignal 1223 die gelesenen Daten der CPU 1204 mit, wobei sie diese über den Datenbus 1207 überträgt. Dann nimmt die Gattersteuereinheit 1219 in ähnlicher Weise eine Dekodierung vor, kommt dabei aber zu dem Schluß, daß es sich um das Lesen des Eigensystems handelt und gibt des­ halb kein Signal ab.
Wenn andererseits die CPU 1204 den Inhalt des Speichers 1202 des anderen Systems wissen möchte, gibt sie eine Adresse in einem Adressenbereich ab, dem das Lesen des an­ deren Systems im Adressenkennfeld gemäß Fig. 6 zugeordnet ist. Hierdurch wird über den Datenbus 1207 die Spei­ cheradresse und das Lesesignal in die Chipauswahlerzeuger­ schaltung 1218 und die Gattersteuereinheit 1219 eingegeben. Die Chipauswahlerzeugerschaltung 1218 dekodiert zunächst diese Signale und erkennt folglich, daß es sich um das Le­ sen des anderen Systems handelt, so daß sie kein Signal ab­ gibt. Dann erfolgt eine ähnliche Dekodierung dieser Signale in der Gattersteuereinheit 1219, die daraufhin ein Zu­ griffsignal für das andere System 1225 an die Gatter­ steuereinheit 1216 ebenso wie das Gattersteuersignal 1227 zum Schließen des Busschaltgliedes 1217 abgibt. Die Gatter­ steuereinheit 1216 für das andere System empfängt das Zu­ griffsignal für das andere System und gibt das Gattersteu­ ersignal 1226 zum Schließen des Busschaltgliedes 1214 unter der Annahme ab, daß die CPU 1201 keinen Zugriff zum Spei­ cher 1202 nimmt. Außerdem gibt sie das Mitteilungssignal 1228 für Zugriff zum anderen System an die Chipauswahler­ zeugerschaltung 1215 ab. Die von der CPU 1204 ausgegebenen Signale, nämlich die Speicheradresse und das Lesesignal werden über den Datenbus 1207, das Busschaltglied 1217, den Zwischensystemdatenbus 1212, das Busschaltglied 1214 und den Datenbus 1206 in die Chipauswahlerzeugerschaltung 1215 eingegeben. Die Chipauswahlerzeugerschaltung 1215 gibt in Abhängigkeit von diesen Signalen und dem Mitteilungssignal 1228 für Zugriff zum anderen System von der Gatter­ steuereinheit 1216 das Speicherlesesignal 1222 ab, und der Speicher 1202 teilt der CPU 1204 die gelesenen Daten mit, wobei diese auf dem Datenbus 1206 über das Busschaltglied 1214, den Zwischensystemdatenbus 1212, das Busschaltglied 1217 und den Datenbus 1207 übertragen werden.
Bei diesem dritten Ausführungsbeispiel ist, wie schon er­ wähnt, das Speicherkennfeld so ausgelegt und unterteilt, daß es einen Adressenbereich für das Doppelschreiben oder Lesen des Eigensystems und einen Adressenbereich zum Lesen des anderen Systems hat. Die Steuerung des Öffnens und Schließens des Busschaltgliedes, welches den Zwischensy­ stemdatenbus entweder anschließt oder auch nicht und die Steuerung der Wahl der jeweiligen Speicher der Systeme wer­ den in Abhängigkeit vom Schreib- oder Lesesignal sowie vom Adressensignal durchgeführt, welche die CPU ausgibt. Hier­ durch kann das Lesen des Speicherinhalts des eigenen Sy­ stems sowie des anderen Systems frei durchgeführt werden. Es ist also möglich, zu erkennen, wo im Duplexsystem beim Summenprüfen oder dergleichen ein Fehler auftrat, so daß im Duplexsystem umgeschaltet werden kann und es nicht zu einem Stillstand kommt. Da der Speicher für die Ein- oder Ausgabe mittels eines Chipansteuersystems gewählt wird, kann zur gleichen Zeit in den Speicher des eigenen Systems und in den Speicher des anderen Systems geschrieben werden, das heißt, es ist eine gleichzeitige Eingabe möglich, wodurch die Identität des Speicherinhalts immer gewährleistet ist.
4. Ausführungsbeispiel
Bei dem vorstehend beschriebenen Ausführungsbeispiel sind der Adressenbereich für das Doppelschreiben und der Adres­ senbereich für das Lesen des Eigensystems gleich und unter­ scheiden sich durch Hardware vom Schreibsignal und Lesesi­ gnal auf dem Datenbus. Es ist aber auch möglich, ein Spei­ cherkennfeld gemäß Fig. 7 zu benutzen, bei dem die Adressen für das Doppelschreiben und die Adressen für das Lesen des Eigensystems auch voneinander getrennt sind, wobei das Sy­ stem hinsichtlich der Hardware nur durch das Lesen der Adresse verwirklicht ist.
Fig. 7 zeigt ein Speicherkennfeld für Speicher in entspre­ chenden Systemen gemäß einem vierten Ausführungsbeispiel der Erfindung. Hier ist der Adressenbereich von X bis X+Y-1 für das Doppelschreiben, der Adressenbereich von X+Y bis X+2Y-1 für das Lesen des Eigensystems und der Adressenbe­ reich von X+2Y bis X+3Y-1 für das Lesen des anderen Systems bestimmt.
Der Blockaufbau der Vorrichtung ist bei diesem vierten Aus­ führungsbeispiel ebenso wie in Fig. 5 gezeigt, außer daß es sich bei dem an die Chipauswahlerzeugerschaltung und die Gattersteuereinheit angelegten Signal nur um das Adressen­ signal handelt.
Die Betriebsweise ist wie folgt: Die Speicherkennfelder in der Zentraleinheit der jeweiligen Systeme sind so bezeich­ net, wie das in Fig. 7 dargestellt ist. Wenn die CPU der einen Seite (zum Beispiel CPU 1204 des STBY-Systems) eine Adresse erzeugt, die in den Speicher 1205 des Eigensystems in einem Speicherkennfeld zu schreibende Daten bezeichnet, wird die Speicheradresse über den Datenbus 1207 in die Chipauswahlerzeugerschaltung 1218 und die Gattersteuerein­ heit 1219 eingegeben. Die Chipauswahlerzeugerschaltung 1217 dekodiert diese Signale und gibt ein Speicherschreibsignal 1221 ab. Die Speicheradresse und die Schreibdaten werden über den Datenbus 1207 von der CPU 1204 in den Speicher 1205 eingegeben, und anhand dieser und des Speicherschreib­ signals 1221 erfolgt das Schreiben. Zur gleichen Zeit deko­ diert die Gattersteuereinheit 1219 diese Signale und gibt das Zugriffsignal 1225 zum anderen System ebenso wie das Gattersteuersignal 1227 ab, um das Busschaltglied 1217 zu schließen. Die Gattersteuereinheit 1216 des ACT-Systems, als dem anderen System, empfängt das Zugriffsignal 1225 für das andere System von der Gattersteuereinheit 1219 und gibt das Gattersignal 1226 zum Schließen des Busschaltgliedes 1214 unter der Annahme ab, daß die CPU 1201 keinen Zugriff zum Speicher 1202 hat. Hierdurch wird die Speicheradresse und die Schreibdatenausgabe von der CPU 1204 über den Da­ tenbus 1207, das Busschaltglied 1217, den Zwischensystemda­ tenbus 1212, das Busschaltglied 1214 und den Datenbus 1206 in die Chipauswahlerzeugerschaltung 1215 eingegeben. Dar­ aufhin erzeugt die Chipauswahlerzeugerschaltung 1215 ein Speicherschreibsignal 1220 und schreibt die gleichen Daten wie die in den Speicher 1205 eingegebenen Daten. Auf diese Weise wird das Doppelschreiben in die Duplexspeicher durch­ geführt.
Wenn als nächstes die CPU 1204 den Inhalt des Speichers 1205 des eigenen Systems wissen will, gibt sie eine Adresse im Adressenbereich für das Lesen des Eigensystems auf dem Speicherkennfeld gemäß Fig. 7 ab, wodurch eine Spei­ cheradresse und ein Lesesignal über den Datenbus 1207 an die Chipauswahlerzeugerschaltung 1218 und die Gatter­ steuereinheit 1219 gelangen. Daraufhin werden zunächst diese Signale von der Chipauswahlerzeugereinheit 1218 deko­ diert, um das Speicherlesesignal 1223 abgeben zu können. Und der Speicher 1205, der das Signal 1223 empfängt, stellt seinen Speicherinhalt auf dem Datenbus 1207 in Abhängigkeit von der über den Datenbus 1207 eingegebenen Speicheradresse zur Verfügung und informiert die CPU 1204 entsprechend. Dann wird eine ähnliche Dekodierung von der Gatter­ steuereinheit 1219 vorgenommen, die dabei feststellt, daß es sich um das Lesen des eigenen Systems handelt, so daß kein Signal abgegeben wird.
Wenn andererseits die CPU 1204 den Inhalt des Speichers 1202 des anderen Systems wissen will, gibt sie eine Adresse für das Lesen des anderen Systems im Speicherkennfeld gemäß Fig. 7 ab. Hierdurch wird über den Datenbus 1207 die Spei­ cheradresse und das Lesesignal an die Chipauswahlerzeuger­ schaltung 1218 und die Gattersteuereinheit 1219 angelegt. Die Chipauswahlerzeugerschaltung 1218 dekodiert zunächst diese Signale und stellt dabei fest, daß es sich um das Le­ sen des anderen Systems handelt, so daß kein Signal abgege­ ben wird. Dann nimmt die Gattersteuereinheit 1219 eine ähn­ liche Dekodierung vor und gibt das Zugriffsignal 1215 für das andere System an die Gattersteuereinheit 1216 ebenso wie das Gattersteuersignal 1227 zum Schließen des Bus­ schaltgliedes 1217 ab. Die Gattersteuereinheit 1216 des an­ deren Systems empfängt das Zugriffsignal zum anderen System und gibt das Gattersteuersignal 1226 zum Schließen des Bus­ schaltgliedes 1214 unter der Annahme ab, daß die CPU 1201 keinen Zugriff zum Speicher 1202 hat. Ferner gibt sie das Mitteilungssignal 1228 für Zugriff zum anderen System an die Chipauswahlerzeugerschaltung 1215 ab. Die Spei­ cheradresse und das Lesesignal, die von der CPU 1204 aus­ gegeben werden, sowie das Lesesignal werden über den Daten­ bus 1207, das Busschaltglied 1217, den Zwischensystemdaten­ bus 1212, das Busschaltglied 1214 und den Datenbus 1206 an die Chipauswahlerzeugerschaltung 1215 angelegt. Die Chip­ auswahlerzeugerschaltung 1215 erzeugt in Abhängigkeit von diesen Signalen und des Mitteilungssignals 1228 für Zugriff zum anderen System von der Gattersteuereinheit 1216 das Speicherlesesignal 1222, und der Speicher 1202 überträgt die gelesenen Daten über den Datenbus 1206 und informiert die CPU 1204 darüber auf dem Wege über das Busschaltglied 1214, den Zwischensystemdatenbus 1212, das Busschaltglied 1217 und den Datenbus 1207.
Bei diesem Ausführungsbeispiel ist, wie aus der Beschrei­ bung hervorgeht, das Speicherkennfeld so gestaltet und un­ terteilt, daß es einen Adressenbereich für das Doppel­ schreiben, einen Adressenbereich für das Lesen des Eigensy­ stems und einen Adressenbereich für das Lesen des anderen Systems aufweist. Die Steuerung des Öffnens und Schließens des Busschaltgliedes, das Anschließen oder Trennen des Zwi­ schensystemdatenbus sowie die Auswahlsteuerung der Speicher der jeweiligen Systeme erfolgt anhand der von der CPU aus­ gegebenen Adressensignale. Hierdurch kann der Speicherin­ halt des eigenen Systems sowie des anderen Systems frei ge­ lesen werden, und auch die Hardware ist bis zu einem gewis­ sen Grad vereinfacht.
5. Ausführungsbeispiel
Fig. 8 zeigt eine Informationsverarbeitungsvorrichtung ge­ mäß einem fünften Ausführungsbeispiel der Erfindung. Bei diesem Ausführungsbeispiel kann eine Vielzahl von Zen­ traleinheiten gleichzeitig Zugriff zu den Speichern nehmen, wenn diese Vielzahl von Zentraleinheiten sowie eine Viel­ zahl von Speichern mit einem einzigen CPU-Bus verbunden ist. Bei diesem Ausführungsbeispiel sind vorgesehen: Zen­ traleinheiten CPU 1301a, 1301b, die Arbeitsgänge entspre­ chend einem in einem Programm beschriebenen, verordneten Verfahren abarbeiten, Speicher 1302a, 1302b, welche von den CPU 1301a, 1301b verarbeitete Daten speichern, sowie Daten­ busse 1303a, 1303b, welche die Zentraleinheiten CPU 1301a, 1301b über Busschaltglieder 1305a, 1305b verbinden, welche die E/A-Daten der CPU 1301a, 1301b an die CPU-Busse 1303a, 1303b übermitteln, wenn sie geöffnet sind, Adressendekodie­ rer 1306a, 1306b zum Dekodieren der Ausgabedaten der CPU 1301a, 1301b und zum Übertragen derselben an eine Busent­ scheidungsschaltung 1304, ein in zwei Richtungen wirksames Gatter oder Zweiwegegatter 1309, welches die CPU-Busse 1303a, 1303b anschließt oder abtrennt. Die Busentschei­ dungsschaltung 1304 dient der Entscheidung über die Bele­ gung der CPU-Busse 1303a, 1303b, indem sie eine Auf/Zu-Steu­ erung der Busschaltglieder 1305a, 1305b sowie des Zwei­ wegegatters 1309 durchführt. Ferner ist eine Zugriffsteuer­ einrichtung vorgesehen, die unter Einschluß der Bus­ entscheidungsschaltung 1304 und der Adressendekodierer 1306a, 1306b es den Speichern der jeweiligen Zentraleinhei­ ten erlaubt, gleichzeitig Zugriff zu nehmen, je nach der Kombination von Speichern, zu denen die jeweiligen Zen­ traleinheiten Zugriff nehmen. Die Bezugszeichen 1307a, 1307b bezeichnen Speicherzugriffanforderungssignale, die von den Adressendekodierern 1306a bzw. 1306b beim Dekodie­ ren der Ausgabedaten der CPU 1301a, 1301b geliefert werden. Die Bezugszeichen 1308a, 1308b bezeichnen Busschaltglied-Steu­ ersignale, die von der Busentscheidungsschaltung 1304 abgegeben werden. Das Bezugszeichen 1310 bezeichnet ein Steuersignal für das Zweiwegegatter, welches die Busent­ scheidungsschaltung 1304 liefert. Die Bezugszeichen 1311a, 1311b bezeichnen Signale, welche die Speichernummer mittei­ len, und werden von den Adressendekodierern 1306a bzw. 1306b ausgegeben.
Die Betriebsweise ist wie folgt: Wenn die CPU 1301a Zugriff nimmt zum Speicher 1302a, gibt der Adressendekodierer 1306a das Speicherzugriffanforderungssignal 1307a an die Busent­ scheidungsschaltung 1304 ab und teilt dieser gleichfalls mit, daß die Speicherzugriffanforderung vom Speichernum­ mernmitteilungssignal 1311a durchgeführt wird. Die Busent­ scheidungsschaltung 1304 erlaubt der CPU 1301a Zugriff zu einem Speicher, indem sie ein Busschaltglied-Steuersignal 1308a zum Schließen des Busschaltgliedes 1305a abgibt, wäh­ rend sie das Steuersignal 1310 für das Zweiwegegatter nicht abgibt, so daß das Zweiwegegatter 1309 offen bleibt, wenn die andere CPU 1301b keinen Zugriff zum Speicher 1302a hat, das heißt wenn der Adressendekodierer 1306b das Adres­ senanforderungssignal 1307b nicht an die Busentscheidungs­ schaltung 1304 liefert oder die Zentraleinheit 1301b Zu­ griff zum Speicher 1302b hat. Wenn andererseits die Zen­ traleinheit CPU 1301b bereits Zugriff zum Speicher 1302a hat, weil das Steuersignal 1310 für das Zweiwegegatter aus­ gegeben und das Zweiwegegatter 1309 geschlossen ist, er­ laubt die Busentscheidungsschaltung 1304 der CPU 1301a kei­ nen Zugriff zum Speicher. Im Gegenteil erlaubt sie der CPU 1301a erst dann Zugriff zu einem Speicher, wenn der Zugriff durch die CPU 1301b beendet ist.
Die Kombination, gemäß der beide Zentraleinheiten gleich­ zeitig Zugriff haben dürfen, ist ein Fall, bei dem die CPU 1301a Zugriff zum Speicher 1302a und die CPU 1301b Zugriff zum Speicher 1302b hat, wie aus der nachfolgenden Tabelle 1 hervorgeht.
Tabelle 1
Bei diesem Ausführungsbeispiel handelt es sich um einen Fall, bei dem zwei Zentraleinheiten und zwei Speicher an einen einzigen CPU-Bus angeschlossen sind, in der Mitte des CPU-Bus ein Zweiwegegatter vorgesehen ist, so daß der ein­ zige CPU-Bus in zwei Abschnitte unterteilt ist. Wenn des­ halb die CPU Zugriff zum Speicher des Eigensystems hat, kann die andere CPU Zugriff zum Speicher des anderen Sy­ stems nehmen, wodurch die bisherige Einschränkung der Ver­ arbeitungskapazität pro Zeiteinheit großenteils wegfällt.
6. Ausführungsbeispiel
Bei dem vorstehend beschriebenen fünften Ausführungsbei­ spiel sind zwei Speicher an die CPU Busleitungen 1303a, 1303b angeschlossen. Es kann aber auch eine Informations­ verarbeitungsvorrichtung von ähnlichem Aufbau mit drei oder mehr Speichern versehen werden.
Fig. 6 zeigt ein sechstes Ausführungsbeispiel der Erfin­ dung, bei dem Bezugszeichen 1301a, 1301b Zentraleinheiten bezeichnen, die Arbeitsgänge entsprechend einem in einem Programm beschriebenen, vorherbestimmten Verfahren abarbei­ ten. Die Bezugszeichen 1302a, 1302b . . . 1302z bezeichnen Speicher, in denen von den CPU 1301a, 1301b verarbeitete Daten gespeichert werden. Die Bezugszeichen 1303a, 1303b . . . 1303z bezeichnen CPU-Busleitungen zum Anschluß der CPU 1301a, 1301b über Busschaltglieder 1305a, 1305b, welche Eingabe/Ausgabedaten der CPU 1301a, 1301b an die CPU-Bus­ leitungen weitergeben, wenn sie geöffnet sind. Die Bezugs­ zeichen 1306a, 1306b bezeichnen Adressendekodierer zum De­ kodieren der Ausgabedaten der CPU 1301a, 1301b und zur Wei­ tergabe des dekodierten Ergebnisses an die Busentschei­ dungsschaltung 1304. Die Bezugszeichen 1309a . . . 1309y be­ zeichnen in zwei Richtungen wirksame Schaltglieder oder Zweiwegegatter, die eine Verbindung zwischen benachbarten CPU-Bussen 1303a, 1303b . . . 1303z herstellen oder nicht. In der Busentscheidungsschaltung 1304 wird über die Belegung des CPU-Bus 1303 durch eine Auf/Zu-Steuerung der Zweiwege­ gatter 1309a, 1309b . . . 1309y entschieden. Das Bezugszei­ chen 1006 bezeichnet eine Zugriffsteuereinrichtung, welche die Busentscheidungsschaltung 1304 und die Adressendekodie­ rer 1306a, 1306b aufweist und den Zentraleinheiten einen gleichzeitigen Zugriff zu verschiedenen Speichern in Abhän­ gigkeit von der Kombination der Speicher erlaubt, zu denen die jeweiligen Zentraleinheiten Zugriff haben. Die Bezugs­ zeichen 1307a, 1307b bezeichnen Speicherzugriffanforde­ rungssignale, die von den Adressendekodierern 1306a, 1306b ausgegeben werden, wenn sie die Ausgabedaten der Zen­ traleinheiten CPU 1301a bzw. 1301b dekodieren. Die Bezugs­ zeichen 1308a, 1308b bezeichnen Steuersignale für die Bus­ schaltglieder, die von der Busentscheidungsschaltung 1304 zur Verfügung gestellt werden. Die Bezugszeichen 1310a . . . 1310y bezeichnen Zweiwegegatter-Steuersignale, die von der Busentscheidungsschaltung 1304 kommen. Die Bezugszeichen 1311a, 1311b bezeichnen Signale zur Mitteilung der Spei­ chernummer, welche von den Adressendekodierern 1306a bzw. 1306b ausgegeben werden.
Die Arbeitsweise ist wie folgt: Wenn die CPU 1301a Zugriff zum Speicher 1302a nimmt, gibt der Adressendekodierer 1306a an die Busentscheidungsschaltung 1304 ein Speicherzugriff­ anforderungssignal 1307a ab und gibt darüber Auskunft, daß es Zugriff zum Speicher 1302a mittels des Speichernummern­ mitteilungssignals 1311a sucht. Die Busentscheidungsschal­ tung 1304 erlaubt der CPU 1301a Zugriff zu einem Speicher, indem sie das Steuersignal 1308a für das Busschaltglied zum Schließen des Busschaltgliedes 1305a abgibt aber keine Zweiwegegatter-Steuersignale 1310a . . . 1310y abgibt, damit die Zweiwegegatter 1309a . . . 1309y offen bleiben, wenn die andere CPU 1301b keinen Zugriff zum Speicher 1302a hat oder, mit anderen Worten, wenn der Adressendekodierer 1306b kein Speicherzugriffanforderungssignal 1307b an die Busent­ scheidungsschaltung 1304 abgibt oder die CPU 1301b Zugriff zu einem der Speicher 1302b . . . 1302z hat. Wenn im Gegen­ satz dazu die CPU 1301b Zugriff zum Speicher 1302a hat, er­ laubt die Busentscheidungsschaltung 1304, weil es sich um einen Zustand handelt, bei dem die Zweiwegegatter-Steuersi­ gnale 1310a . . . 1310y zum Schließen der Zweiwegegatter 1309a . . . 1309y ausgegeben werden, der CPU 1301a keinen Zu­ griff zum Speicher. Statt dessen erhält die CPU 1301a erst nach Beendigung des Zugriffs der CPU 1301b Zugriff zum Speicher.
Die Kombination, bei der gemäß diesem Ausführungsbeispiel beide Zentraleinheiten gleichzeitig Zugang haben können, ist in der folgenden Tabelle 2 dargestellt.
Tabelle 2
Bei diesem Ausführungsbeispiel sind für den Fall, daß zwei Zentraleinheiten und drei oder mehr Speicher an einen ein­ zigen CPU-Bus angeschlossen sind, Zweiwegegatter zwischen den an den CPU-Bus angeschlossenen entsprechenden Speichern vorgesehen, und der CPU-Bus ist in Teilbereiche entspre­ chend den jeweiligen Speichereinheiten unterteilt. Wenn bei diesem Ausführungsbeispiel der Zustand besteht, daß eine Zentraleinheit Zugriff zu einem Speicher hat, kann die an­ dere Zentraleinheit Zugriff zu irgendeinem Speicher nehmen, der näher zu ihr als zur anderen Zentraleinheit liegt. Auch hier kann die Einschränkung der Verarbeitungskapazität pro Zeiteinheit weitgehend aufgehoben werden.

Claims (7)

1. Informationsverarbeitungsvorrichtung, umfassend
  • - eine Zentraleinheit (CPU 1101);
  • - einen ersten und einen zweiten, gleichzeitig beschreibbaren Speicher (1104, 1105);
  • - einen einzigen CPU-Bus (1108), mit dem der erste und der zweite Speicher (1104, 1105) zum Übertragen von Adressen und von Daten, die von der Zentraleinheit ausgegeben werden, ver­ bunden ist und
  • - eine Einrichtung zum Steuern von Schreiben/Lesen (1101, 1106) für den ersten und zweiten Speicher (1104, 1005),
gekennzeichnet durch
Übertragen eines Schreib/Lese-Steuersignals auf dem einzigen Bus (1108), wobei die Einrichtung zum Steuern von Schrei­ ben/Lesen (1101, 1106) die jeweilige Speicheradresse und das Schreib/Lese-Steuersignal decodiert, um sowohl den ersten als auch den zweiten Speicher (1104, 1105) in einen Zustand zu versetzen, in dem Schreiben möglich ist, oder nur entweder den ersten oder den zweiten Speicher in einen Zustand zu verset­ zen, in dem Lesen möglich ist;
eine Gatterschaltung (1111a-c), die einerseits mit dem ersten und zweiten Speicher (1104, 1105) verbunden ist und der ande­ rerseits das Schreib/Lese-Steuersignal zugeführt ist, um ein ausgeführtes Schreiben/Lesen zu erkennen und der Zentralein­ heit (1101) zu bestätigen und wobei
die von der Zentraleinheit (1101) ausgegebenen Speicheradres­ sen für den ersten und zweiten Speicher (1104, 1105) unter­ schiedliche Adressen sind,
die Schreib/Lese-Steuereinrichtung (1001, 1106) sowohl den ersten als auch den zweiten Speicher (1104, 1105) dann in einen Zustand versetzt, in dem Schreiben möglich ist, wenn die gelieferte Speicheradresse zu einem vorgegebenen ersten Schreibadressenbereich gehört und das Schreib/Lese-Steuersi­ gnal Schreiben anzeigt,
der erste Speicher (1104) in einen Zustand versetzt wird, in dem Lesen möglich ist, wenn die Speicheradresse zu einem er­ sten vorgegebenen Leseadressenbereich gehört und das Schreib/Lese-Steuersignal Lesen anzeigt,
und der zweite Speicher (1105) in einen Zustand versetzt wird, in dem Lesen möglich ist, wenn die Speicheradresse zu einem zweiten vorgegebenen Leseadressenbereich gehört und das Schreib/Lese-Steuersignal Lesen anzeigt.
2. Informationsverarbeitungsvorrichtung, umfassend
  • - eine erste und eine zweite CPU-Karte (1003, 1004), jeweils mit einer Zentraleinheit (1201, 1204), einem Speicher (1202, 1205) und einem die Zentraleinheit (1201, 1204) mit dem jewei­ ligen Speicher (1202; 1205) verbindenden internen Datenbus (1206, 1207), sowie auf der jeweiligen CPU-Karte (1003, 1004) angeordnete und untereinander verbundene Gattersteuereinheiten (1216, 1219),
  • - einen Zwischensystemdatenbus (1212), der die erste und zweite CPU-Karte (1003, 1004) miteinander verbindet,
  • - ein erstes und ein zweites Busschaltglied (1214, 1217) zum Verbinden/Trennen des Zwischensystemdatenbus (1212) mit dem oder von dem entsprechenden ersten oder zweiten internen Da­ tenbus (1206, 1207),
  • - ein Decodieren der Adressenausgabe der entsprechenden ersten und zweiten Zentraleinheit mittels erster und zweiter Gatter­ steuereinheiten (1216, 1219), um die ersten und zweiten Bus­ schaltglieder (1214, 1217) in den gesperrten Zustand zu brin­ gen, wenn entweder von der ersten oder der zweiten Zentralein­ heit (1201, 1204) in beide Speicher (1202, 1205) Daten ge­ schrieben werden sollen; sowie
    um das erste und das zweite Busschaltglied (1214, 1217) in ge­ sperrten Zustand zu bringen, wenn entweder die erste und die zweite Zentraleinheit (1201, 1204) Daten im Speicher der CPU-Karte der anderen Seite lesen soll, und um das erste und zweite Busschaltglied (1214, 1217) in den geöffneten Zustand zu bringen, wenn mindestens eine der beiden Zentraleinheiten aus dem Speicher der CPU-Karte des eigenen Systems lesen soll,
gekennzeichnet durch
erste und zweite Schreib/Lese-Steuereinrichtungen (1215, 1218), die auf der ersten und zweiten CPU-Karte (1003, 1004) angeordnet sind, um die Adressenausgabe der entsprechenden ersten und zweiten Zentraleinheit (1201, 1204) zu decodieren und um beide Speicher (1202, 1205) in einen Zustand zu verset­ zen, in dem Schreiben möglich ist, wenn das decodierte Ergeb­ nis anzeigt, daß von der einen oder anderen Zentraleinheit Da­ ten in beide Speicher geschrieben werden sollen, um den Spei­ cher der anderen Seite in einen Zustand zu versetzen, in dem Lesen möglich ist, wenn das decodierte Ergebnis anzeigt, daß eine der beiden Zentraleinheiten Daten in den Speicher der CPU-Karte des anderen Systems lesen soll, und um den Speicher des jeweils eigenen Systems zum Lesen zu aktivieren, wenn das decodierte Ergebnis anzeigt, daß mindestens eine der beiden Zentraleinheiten Daten aus dem Speicher der CPU-Karte des eigenen Systems lesen soll, so daß jeweils nur aus einem ein­ zigen Speicher gelesen werden kann,
wobei jeweils der erste und zweite Speicher einen ersten Adressenbereich zum Durchführen des Doppelschreibens und des Lesens im eigenen System und einen zweiten Adressenbereich zum Durchführen des Lesens der anderen Adresse enthalten, weiter­ hin die erste und zweite Zentraleinheit ein Schreib/Lese-Steu­ ersignal zusätzlich zur Speicheradresse ausgeben,
die Gattersteuereinheiten das erste und zweite Busschaltglied in den gesperrten Zustand bringen und die Schreib/Lese-Steuer­ einrichtungen beide Speicher in einen Zustand versetzen, in dem Schreiben möglich ist, wenn die von der einen oder anderen Zentraleinheit ausgegebene Speicheradresse zum ersten Adres­ senbereich gehört und das Schreib/Lese-Steuersignal, welches die erste oder zweite Zentraleinheit ausgibt, Schreiben an­ zeigt, wobei die Gattersteuereinheiten das erste und zweite Busschaltglied in geöffneten Zustand bringen und die Schreib/Lese-Steuereinrichtungen nur die Karte des eigenen Systems in einen Zustand versetzt, in dem Schreiben möglich ist, wenn die von der ersten oder zweiten Zentraleinheit aus­ gegebene Speicheradresse zum ersten Adressenbereich gehört und die Schreib/Lese-Steuereinrichtung Lesen anzeigt, wobei die Gattersteuereinheit das erste Busschaltglied und das zweite Busschaltglied in geschlossenen Zustand bringt und die Schreib/Lese-Steuereinrichtung nur den Speicher des anderen Systems in einen Zustand versetzt, in dem Lesen möglich ist, wenn die Speicheradresse zum zweiten Adressenbereich gehört und die Schreib/Lese-Steuereinrichtung Lesen anzeigt.
3. Informationsverarbeitungsvorrichtung nach Anspruch 2, dadurch gekennzeichnet,
daß der erste und zweite Speicher die gleichen Adressenberei­ che haben, die in einen ersten, zweiten und dritten Adressen­ bereich unterteilt sind, daß die Gattersteuereinheiten das erste und zweite Busschaltglied in gesperrten Zustand bringen und die Schreib/Lese-Steuereinrichtung die Speicher beider CPU-Karten in einen Zustand versetzt, in dem Schreiben möglich ist, wenn die Speicheradresse zum ersten Adressenbereich ge­ hört, daß die Gattersteuereinheiten mindestens das Busschalt­ glied des eigenen Systems in geöffneten Zustand bringen und die Schreib/Lese-Steuereinrichtungen nur den Speicher der Karte des eigenen Systems, wenn die Speicheradresse zum zwei­ ten Adreßbereich gehört, und
daß die Gattersteuereinheiten beide Busschaltglieder in ge­ sperrten Zustand bringen und die Schreib/Lese-Steuereinrich­ tungen nur den Speicher der CPU-Karte des anderen Systems, wenn die Speicheradresse zum dritten Adressenbereich gehört.
4. Informationsverarbeitungsvorrichtung, umfassend
eine erste und eine zweite Zentraleinheit (1301a, b), einen einzigen CPU-Bus, welcher die erste und die zweite Zentralein­ heit (1301a, b) verbindet, ein erstes Busschaltglied und ein zweites Busschaltglied (1305a, b), das die erste bzw. die zweite Zentraleinheit (1301a, 1301b) mit dem einzigen CPU-Bus verbindet oder von diesem trennt,
einen ersten und einen zweiten Speicher (1302a, 1302b), die jeweils mit dem einzigen CPU-Bus verbunden sind, wobei die Speicher (1302a, 1302b) unterschiedlich adressierbar sind,
eine Buszugriffs-Steuereinrichtung, die mit dem ersten und dem zweiten Busschaltglied (1305a, b) in Verbindung steht und ein Zweiwegegatter (1309), das einen gemeinsamen Speicherzugriff auf der Basis eines Steuersignals (1310) der Buszugriffs-Steu­ ereinrichtung (1304) ermöglicht oder unterbindet,
gekennzeichnet durch eine Vielzahl von Speichern (1302a-z), die mit dem einzigen CPU-Bus verbunden sind, eine Vielzahl von Zweiwegegattern (1309a-y), die zwischen die Verbindungsknoten des CPU-Bus mit der Vielzahl von Speichern geschaltet sind, wobei die Buszu­ griffs-Steuereinrichtung die Zweiwegegatter (1309a-y) nach Aufruf durch eine der beiden CPUs so ansteuert, daß nur das Zweiwegegatter, welches zwischen einem ausgewählten Speicher und dem Speicher geschaltet ist, der dem ausgewählten Speicher auf der Seite der anderen Zentraleinheit am nächsten ist, sich in einem offenen Zustand befindet, und alle anderen Zweiwege­ gatter im gesperrten Zustand befindlich sind.
5. Informationsverarbeitungsvorrichtung nach Anspruch 4, gekennzeichnet durch einen ersten bis n-ten Speicher, (n-1) Zweiwegegatter, die zwischen n Verbindungsknoten geschaltet sind, welche den CPU-Bus mit den n Speichern verbinden, wobei die Buszugriffs- Steuereinrichtung einen ersten Adressendecodierer und einen zweiten Adressendecodierer aufweist, welche die von der ersten bzw. der zweiten Zentraleinheit ausgegebenen Adressen decodie­ ren und eine Busentscheidungsschaltung umfaßt, die eine AUF/ZU-Steuerung des ersten und zweiten Busschaltgliedes (1305a, 1305b) und der n-1 Zweiwegegatter in Übereinstimmung mit der Ausgabe des ersten und zweiten Adressendecodierers vornimmt.
DE4406258A 1993-02-26 1994-02-25 Informationsverarbeitungsvorrichtung Expired - Fee Related DE4406258C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5037203A JPH06250931A (ja) 1993-02-26 1993-02-26 情報処理装置

Publications (2)

Publication Number Publication Date
DE4406258A1 DE4406258A1 (de) 1994-09-08
DE4406258C2 true DE4406258C2 (de) 1998-01-29

Family

ID=12491034

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4406258A Expired - Fee Related DE4406258C2 (de) 1993-02-26 1994-02-25 Informationsverarbeitungsvorrichtung

Country Status (4)

Country Link
US (1) US6308244B1 (de)
JP (1) JPH06250931A (de)
DE (1) DE4406258C2 (de)
FR (1) FR2702061B1 (de)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11259372A (ja) * 1998-03-09 1999-09-24 Fujitsu Ltd 二重化メモリ制御装置
AU2001239988A1 (en) * 2000-03-03 2001-09-17 Appleby Spurling & Kempe Computerized provision of professional and administrative services
US7295443B2 (en) * 2000-07-06 2007-11-13 Onspec Electronic, Inc. Smartconnect universal flash media card adapters
DE10040389A1 (de) 2000-08-18 2002-03-07 Infineon Technologies Ag Hochgeschwindigkeitsprozessor
EP1456757B1 (de) * 2001-12-20 2010-08-04 TELEFONAKTIEBOLAGET LM ERICSSON (publ) Adressendecodierungsschema ohne kostenfaktor
KR100525677B1 (ko) * 2002-07-09 2005-11-03 학교법인 두원학원 통신제어모듈의 이중화 장치 및 방법
KR100444703B1 (ko) * 2002-10-01 2004-08-16 삼성전자주식회사 네트워크 상 높은 버스 효율을 갖는 메모리 장치 및 그동작 방법, 그리고 이를 포함하는 메모리 시스템
DE102006019426B4 (de) * 2006-04-26 2008-03-13 Qimonda Ag Speichermodulsteuerung, Speichersteuerung und entsprechende Speicheranordnung sowie Verfahren zur Fehlerkorrektur
CN101131857B (zh) * 2006-08-25 2010-10-06 安国国际科技股份有限公司 硅储存装置及其控制器与运作方法
WO2009131542A1 (en) * 2008-04-23 2009-10-29 Drone Technology Pte Ltd Module for data acquisition and control in a sensor/control network
KR20130136811A (ko) * 2012-06-05 2013-12-13 에스케이하이닉스 주식회사 반도체 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 동작 방법
KR101564174B1 (ko) * 2014-10-13 2015-10-28 엘에스산전 주식회사 Plc 내 mpu와 메모리 사이의 데이터 송수신 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62169244A (ja) * 1986-01-22 1987-07-25 Hitachi Ltd 二重化メモリの両系同時書込方法
JPH02199562A (ja) * 1989-01-30 1990-08-07 Oki Electric Ind Co Ltd 二重化メモリコピー方式

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4394728A (en) * 1980-06-26 1983-07-19 Gte Automatic Electric Labs Inc. Allocation controller providing for access of multiple common resources by a duplex plurality of central processing units
US4375678A (en) * 1980-08-25 1983-03-01 Sperry Corporation Redundant memory arrangement providing simultaneous access
JPS5922297A (ja) 1982-07-29 1984-02-04 Hitachi Ltd 二重化装置における保存内容書込方式
JPS5998365A (ja) * 1982-11-27 1984-06-06 Shigeto Suzuki 複数同時アクセス型記憶装置
US4630197A (en) * 1984-04-06 1986-12-16 Gte Communication Systems Corporation Anti-mutilation circuit for protecting dynamic memory
US4747047A (en) * 1985-12-06 1988-05-24 Unisys Corporation Data transfer system using two peripheral controllers to access dual-ported data storage units
JPS62182953A (ja) 1986-02-07 1987-08-11 Nec Corp メモリアクセス制御方式
CA1330596C (en) * 1986-11-19 1994-07-05 Yoshiaki Nakanishi Memory cartridge and data processing apparatus
JPS63143689A (ja) * 1986-12-06 1988-06-15 Tokyo Electric Co Ltd メモリカ−ドの容量検出装置
US4905182A (en) * 1987-03-13 1990-02-27 Apple Computer, Inc. Self-configuring memory management system with on card circuitry for non-contentious allocation of reserved memory space among expansion cards
US5056060A (en) * 1987-03-13 1991-10-08 Apple Computer, Inc. Printed circuit card with self-configuring memory system for non-contentious allocation of reserved memory space among expansion cards
JP3066753B2 (ja) 1987-12-24 2000-07-17 富士通株式会社 記憶制御装置
JPH01259438A (ja) 1988-04-11 1989-10-17 Nec Corp 制御装置
US5150328A (en) * 1988-10-25 1992-09-22 Internation Business Machines Corporation Memory organization with arrays having an alternate data port facility
JPH02216573A (ja) 1989-02-17 1990-08-29 Hitachi Ltd 2重化メモリ構成方法
JPH03134712A (ja) 1989-10-19 1991-06-07 Yaskawa Electric Mfg Co Ltd プログラマブルコントローラ
JP2946561B2 (ja) 1989-10-25 1999-09-06 株式会社安川電機 マルチプロセッサシステム
JPH03144739A (ja) 1989-10-30 1991-06-20 Nec Corp 二重化記憶装置へのデータ転写制御方式
JP2572292B2 (ja) * 1990-05-14 1997-01-16 株式会社小松製作所 非同期データ伝送装置
US5276900A (en) * 1990-12-14 1994-01-04 Stream Computers Master connected to common bus providing synchronous, contiguous time periods having an instruction followed by data from different time period not immediately contiguous thereto
JP2561398B2 (ja) * 1991-06-14 1996-12-04 日本電気株式会社 二重化ディスク制御装置
US5430859A (en) * 1991-07-26 1995-07-04 Sundisk Corporation Solid state memory system including plural memory chips and a serialized bus
GB2269247A (en) * 1992-07-28 1994-02-02 Rhythm Watch Co Interfacing an IC memory card to a central processing unit of a computer
US5386517A (en) * 1993-01-26 1995-01-31 Unisys Corporation Dual bus communication system connecting multiple processors to multiple I/O subsystems having a plurality of I/O devices with varying transfer speeds
JP3144739B2 (ja) 1993-10-04 2001-03-12 日本電信電話株式会社 光ファイバカプラ製造装置および製造方法
JP3134712B2 (ja) 1995-05-22 2001-02-13 三菱自動車工業株式会社 メタノールエンジン用グロープラグの制御装置
JP3138750B2 (ja) 1999-03-05 2001-02-26 株式会社先進材料利用ガスジェネレータ研究所 繊維プリフォーム成形法およびその装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62169244A (ja) * 1986-01-22 1987-07-25 Hitachi Ltd 二重化メモリの両系同時書込方法
JPH02199562A (ja) * 1989-01-30 1990-08-07 Oki Electric Ind Co Ltd 二重化メモリコピー方式

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JP 1-259438 (A) In: Patents Abstr. of Japan, Sect. P, Nr. 988, Vol. 14/Nr. 11 (11. Jan. 1990) *
JP 61-182953 (A) In: Patents Abstr. of Japan, Sect. P, Sect.Nr. 660, Vol. 12/No. 29 (28.1.1988) *
US-Z.: Electronic Design, 26. Jan. 1989, S. 113-119 *

Also Published As

Publication number Publication date
JPH06250931A (ja) 1994-09-09
FR2702061B1 (fr) 1998-08-21
US6308244B1 (en) 2001-10-23
DE4406258A1 (de) 1994-09-08
FR2702061A1 (fr) 1994-09-02

Similar Documents

Publication Publication Date Title
DE4222043C1 (de)
DE3300260C2 (de)
DE4204119C2 (de) Multiprozessorsystem
DE4111483A1 (de) Dual-port-speicher
DE4406258C2 (de) Informationsverarbeitungsvorrichtung
CH620306A5 (de)
DE3508291A1 (de) Realzeit-datenverarbeitungssystem
DE2360505A1 (de) Datenverarbeitungsanlage mit einer anordnung zur uebertragung von daten zwischen zwei funktionseinheiten
DE2844357A1 (de) Speichererweiterung
DE10003465A1 (de) Halbleiterspeichervorrichtung mit Mehrfachanschluß (Multiple-Port Semiconductor Memory Device)
DE2727876B2 (de) Steuereinrichtung mit einem Mikroprozessor
DE19737838B4 (de) Halbleiterspeichereinrichtung
DE68927795T2 (de) Übertragungssystem mit einem gemeinsamen Speicher
DE19614237C1 (de) Kommunikationssystem mit einer Meisterstation und mindestens einer Sklavenstation
DE4010311C2 (de) Datenprozessor
DE19614238C1 (de) Kommunikationssystem mit einer Meisterstation und mindestens einer Sklavenstation
DE2912073C2 (de)
DE68928840T2 (de) Synchroner dynamischer Speicher
EP0069829B1 (de) Bussystem
DE69033416T2 (de) Hauptspeicherkarten mit Einzelbit-Setz- und Rücksetz-Funktion
DE10136853B4 (de) Verfahren zur Datenkommunikation mehrerer Halbleiterspeicherbausteine mit einem Controllerbaustein und dafür eingerichteter Halbleiterspeicherbaustein
DE19983975B3 (de) Programmierbares Steuersystem und Rücksetz-Steuerverfahren für das programmierbare Steuersystem
DE4137336A1 (de) Ic-karte
DE10105627B4 (de) Mehrfachanschlussspeichereinrichtung, Verfahren und System zum Betrieb einer Mehrfachanschlussspeichereinrichtung
DE69333792T2 (de) Halbleiteranordnung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8125 Change of the main classification

Ipc: G06F 12/16

D2 Grant after examination
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)
8339 Ceased/non-payment of the annual fee