DE2908316A1 - Multikonfigurierbares modulares verarbeitungssystem, das mit einem vorverarbeitungssystem integriert ist - Google Patents

Multikonfigurierbares modulares verarbeitungssystem, das mit einem vorverarbeitungssystem integriert ist

Info

Publication number
DE2908316A1
DE2908316A1 DE19792908316 DE2908316A DE2908316A1 DE 2908316 A1 DE2908316 A1 DE 2908316A1 DE 19792908316 DE19792908316 DE 19792908316 DE 2908316 A DE2908316 A DE 2908316A DE 2908316 A1 DE2908316 A1 DE 2908316A1
Authority
DE
Germany
Prior art keywords
modules
cpu
module
processing
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19792908316
Other languages
English (en)
Other versions
DE2908316C2 (de
Inventor
Riccardo Cedolin
Wolmer Chiarottino
Giuseppe Giandonato
Silvano Giorcelli
Giorgio Martinengo
Giorgio Sofi
Sergio Villone
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.)
Telecom Italia SpA
Original Assignee
CSELT Centro Studi e Laboratori Telecomunicazioni SpA
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 CSELT Centro Studi e Laboratori Telecomunicazioni SpA filed Critical CSELT Centro Studi e Laboratori Telecomunicazioni SpA
Publication of DE2908316A1 publication Critical patent/DE2908316A1/de
Application granted granted Critical
Publication of DE2908316C2 publication Critical patent/DE2908316C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1654Error detection by comparing the output of redundant processing systems where the output of only one of the redundant processing components can drive the attached hardware, e.g. memory or I/O
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1633Error detection by comparing the output of redundant processing systems using mutual exchange of the output between the redundant processing components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/165Error detection by comparing the output of redundant processing systems with continued operation after detection of the error
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1675Temporal synchronisation or re-synchronisation of redundant processing components
    • G06F11/1683Temporal synchronisation or re-synchronisation of redundant processing components at instruction level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1675Temporal synchronisation or re-synchronisation of redundant processing components
    • G06F11/1691Temporal synchronisation or re-synchronisation of redundant processing components using a quantum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/177Initialisation or configuration control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8007Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/42Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
    • H04Q3/54Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
    • H04Q3/545Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme
    • H04Q3/54541Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme using multi-processor systems
    • H04Q3/5455Multi-processor, parallelism, distributed systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/42Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
    • H04Q3/54Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
    • H04Q3/545Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme
    • H04Q3/54575Software application
    • H04Q3/54591Supervision, e.g. fault localisation, traffic measurements, avoiding errors, failure recovery, monitoring, statistical analysis

Description

Multikonfigurierbares modulares Verarbeitungssystem, das mit einem Vorverarbeitungssystem integriert ist
Die Erfindung bezieht sich auf ein multikonfigurierbares modulares Verarbeitungssystem nach dem Oberbegriff des Anspruchs 1, das insbesondere als mit einem Fernmelde-Vorverarbeitungssystem verbundenes elektronisches Verarbeitungssystem verwendbar ist.
Unter den Bedingungen der gegenwärtigen Technologie werden elektronische Verarbeitungssysteme auf vielen technischen Gebieten in zunehmender Breite angewandt. Diese Systeme können entsprechend den speziellen Anforderungen, die sie zu erfüllen haben, sehr unterschiedliche Charakteristiken haben. Bei der Wahl eines Verarbeitungssystems sind zunächst drei grundsätzliche Eigenschaften zu berücksichtigen:
- die Verarbeitungsleistung, also die Kapazität, eine bestimmte Menge von Daten innerhalb einer Zeiteinheit zu verarbeiten;
- die Speicherkapazität; und
- die Zuverlässigkeit, und zwar sowohl die Fähigkeit, einen Fehler zu erkennen, als auch die Selbstheilungsfähigkeit im Fall eines solchen Fehlers.
Für jede dieser drei beschriebenen Eigenschaften sind die bekannten Verarbeitungssysteme in der Regel starr dimensioniert oder können zumindest nicht leicht an vorgegebene Werte angepaßt werden. Außerdem sind sie so entworfen, daß sie in Ab-
909836/083^
hängigkeit von ihrer Dimensionierung in einem bevorzugten Aufbau wirksam werden, und können nicht diversifizierte Konfigurationen wie "Multiprozessor", "Multirechner", "Monorechner", "dupliziert mit Parallelismus-Überprüfung" usw. annehmen. Ein Verarbeitungssystem, das alle diese Anforderungen vollkommen zufriedenstellt', ist kommerziell nicht erhältlich. Es können nur Systeme mit Charakteristiken gewählt werden, die die Anforderungen annähern. Dies führt im allgemeinen entweder zur Verwendung von im Vergleich zu den tatsächlichen Anforderungen überdimensionierten Systemen oder gelegentlich zur Verwendung von Verarbeitungssystemen, denen entsprechend entworfene Logiken hinzugefügt sind.
Im ersteren dieser Fälle ergeben sich eine nutzloserweise schwerere Anordnung und höhere Kosten sowie eine höhere Fehlerwahrscheinlichkeit, die mit der erhöhten Systemkomplexität einhergeht; im letzteren Fall ist es notwendig, stets bei neuen Anforderungen sowohl das Verarbeitungssystem als auch die verschiedenen zusätzlichen Logiken zu ändern, was dann zu erhöhten Kosten führt.
Auf vielen technischen Gebieten, beispielsweise im Fernmeldewesen, stellt unter den speziellen Aufgaben der Verarbeitungssysteme die Daten-Vorverarbeitung die am meisten geforderte Verarbeitungsweise dar. Vorverarbeitungsprobleme ergeben sich stets dann, wenn außer einer Hauptverarbeitung eine Gruppe einfächer Operationen, die alle von gleich Art sind, oder eine Folge von sehr repetitiven Operationen mit niedrigem Entscheidungsgehalt an einer großen Zahl von Daten durchzuführen sind. Beispielsweise kann Vorverarbeitung bei der Feststellung der Signalübergänge von Fernsprechsignalen, insbesondere von Wählkennzeichen, angewandt werden. Solche Übergangsfeststellungen werden durch das Auftreten .zahlreicher Spitzen und Rausch-Übergänge erschwert. Außerdem bildet in den meisten Fällen erst eine gegebene Anzahl elementarer übergänge einen bedeutungsvollen übergang für die Steuerung einer Fernsprechverbindung.
/10 909836/083:
Bei den bekannten Systemen sind die Vorverarbeitungsprobleme im allgemeinen durch die Verwendung eines zusätzlichen Datenverarbeiters gelöst worden, der für diese Aufgabe spezialisiert ist und als "Vorverarbeiter", beispielsweise front- oder eingangsseitiger Vorverarbeiter, Signal-Vorverarbeiter usw. bezeichnet wird und über eine geeignete Schnittstelle mit dem Hauptverarbeiter verbunden ist. Eine derartige Organisation bringt jedoch eine Anzahl von Nachteilen aufgrund der Verwendung zweier grundsätzlich unterschiedlicher Apparate mit sich, nämlich des Hauptverarbeiters und des Vorverarbeiters. Zunächst ergibt sich eine höhere Fehlerwahrscheinlichkeit, die durch die Verwendung spezieller Kommunikations-Schnittstellenschaltungen, die nach dem Gesichtspunkt der Zuverlässigkeit eine Verschlechterung darstellen, zwischen den beiden Apparaten noch schwerwiegender wird. Weiterhin sind die Aufrechterhaitungs- und Betriebskosten sehr hoch. In technischer Hinsicht ergeben sich erhebliche Schwierigkeiten für die Installationen und die Anlagen aufgrund der Notwendigkeit, von Natur aus unterschiedliche Systeme aneinander anzupassen, sowie Steuerschwierigkeiten aufgrund der Notwendigkeit, zwei unterschiedliche tiberprüfungssysteme zu schaffen, eines für den Vorverarbeiter und eines für den Hauptverarbeiter.
Diese und andere Schwierigkeiten, deren Verständnis durch die spätere Beschreibung noch vertieft wird, werden durch die im Anspruch 1 gekennzeichnete Erfindung eines multikonfigurierbaren, modularen Verarbeitungssystems gelöst, das durch Verwendung einer begrenzten Anzahl von auf bestimmte Funktionen spezialisierten elementaren Moduln die Realisierung komplexer, vielgestaltiger, modularer Verarbeitungsstrukturen ermöglicht, die genau auf die speziellen Anforderungen an die Verarbeitungskapazität, die Speicherkapazität und die Zuverlässigkeit ausgelegt werden können und stets ein optimales Verhältnis der Kosten zur Leistungsfähigkeit erreichen.
909836/083 3
Das erfindungsgemäße Verarbeitungssystem kann weiterhin zu einer Integration der Vorverarbeitungs- und der Steuervorgänge, mit folgenden Konsequenzen für das System führen:
- es ist aufgrund der durchgehenden erheblichen Schaltungs-Einfachheit zuverlässiger;
- es ist hinsichtlich Steuerungs-, Wartungs- und Installationsproblemen billiger;
- es kann von einem einzigen Überprüfungssystem kontrolliert werden;
- es ist auch aufgrund der Parallelisierung einiger Vorverarbeitungsoperationen durch ein besonderes, neues Vorgehen, das später beschrieben wird, sehr effizient.
Die Erfindung ist je nach zu errichtendem Systemaufbau mit der begrenzten Zahl von drei bis sieben Typen elementarer Moduln darstellbar, wobei sich jede der Verarbeitungseinheiten aufgrund der darin enthaltenen Schaltungen insbesondere zur Vorverarbeitung von Fernsprechsignalen in Realzeit eignet.
Weitere Einzelheiten, Vorteile und Weiterbildungen ergeben sich aus der folgenden Beschreibung bevorzugter Ausführungsbeispiele unter Bezugnahme auf die Zeichnung. Es zeigen:
Fig. 1 ein Beispiel eines "Multiprozessor"-Aufbaus des erfindungsgemäßen Verarbeitungssystems;
Fig.2a einen ins einzelne gehenden Schaltplan eines Moduls CPU in der Schaltung nach Fig. 1;
Fig.2b ein den Betrieb des Moduls CPU veranschaulichendes Zeitdiagramm;
Fig.2c den Verlauf einiger Signale beim Betrieb des Moduls CPU;
Fig. 3 einen ins einzelne gehenden Schaltplan eines Moduls MEI in der Schaltung nach Fig. 1 ;
90 9836/0832
Fig. 4 einen ins einzelne gehenden Schaltplan eines Moduls MAC in der Schaltung nach Fig. 1 ;
Fig. 5 ein Beispiel für einen "Monoprozessor"-Aufbau des Verarbeitungssystems;
Fig. 6 ein Beispiel des Verarbeitungssystems als "Monoprozessor" mit getrenntem "Vorverarbeiter";
Fig. 7 ein Beispiel des Verarbeitungssystems mit einem Aufbau "dupliziert mit P.arallelismusüberprüfung";
Fig. 8 ein Beispiel des Verarbeitungssystems mit einem Aufbau "dupliziert mit Parallelismusüberprüfung und getrennter Vorverarbeitung";
Fig. 9 ein Beispiel des Verarbeitungssystems mit einem Aufbau als Multiprozessor mit getrennter Vorverarbeitung";
Fig.10 ein Beispiel eines Aufbaus mit einer Mehrzahl hierarchischer Niveaus mit angrenzenden Einheiten;
Fig.11 einen Aufbau mit einer Mehrzahl hierarchischer Niveaus mit entfernten Einheiten.
Wie erwähnt, sind die Hauptcharakteristiken des erfindungsgemäßen Verarbeitungssystems seine spezielle Modularität und seine Flexibilität, die durch Verwendung einer begrenzten Anzahl elementarer Moduln die Darstellung sowohl unterschiedlicher Aufbaue wie Multiprozessor, Multirechner, Monorechner usw. als auch die Anpassung der Charakteristiken der Verarbeitungs- und Speicherkapazität und der Zuverlässigkeit jedes der gewählten Aufbaue an die Erfordernisse ermöglicht.
Im folgenden werden zur klareren Beschreibung der Charakteristiken des Verarbeitungssystems einige der wichtigsten typischen Aufbauweisen oder Strukturen beschrieben, die das System durch Verwendung der elementaren Moduln, aus denen es zusammengesetzt ist, einzeln oder in mehrfacher Zuordnung annehmen kann.
909836/0833
Hierbei können die Moduln oder zumindest die wichtigsten unter ihnen vollständig durch Bezugnahme auf die speziellen Operationen, die sie durchzuführen haben, beschrieben werden.
Die Schaltung nach Fig. 1 umfaßt k Speicherbanken BM, nämlich BM1, BM2, ..., BMk, die einander gleichen und die folgenden drei Gruppen mit unterschiedlich gegebenen Funktionen zugeteilt werden können:
- primäre Speicherbanken die aus kp Banken der'vorhandenen k Banken bestehen;
- sekundären Speicherbanken, die aus ks Banken der vorhandenen k Banken bestehen;
- Reservebanken, die aus kr Banken der k vorhandenen Banken bestehen.
Hierbei gilt ersichtlich k = kp + ks + kr. Die Zuordnung der einzelnen Speicherbanken zu einer der drei Gruppen ändert sich mit der Zeit entsprechend den Anforderungen des Verarbeitungssystems, wie noch beschrieben wird.
Jede der Speicherbanken besteht aus folgenden Einzelschaltungen:
- aus einem oder einer Anzahl von Speichermoduln M von an sich bekannter Art;
- aus einem Modul MAC, das ein Verknüpfungs-Schaltnetz mit Eingangs- und Entscheidungsfunktionen für die Befehle für Zugriff zur Speicherbank bildet und später im einzelnen unter Bezugnahme auf Fig. 4 beschrieben wird.
Zur Schaltung gehören weiterhin η einander gleichende Verarbeitungseinheiten UP, nämlich UPI, UP2, ..., UPn. Entsprechend der beschriebenen Einteilung der Speicherbanken BM kann jede der Verarbeitungseinheiten als "Primäreinheit" bzw. "Sekundäreinheit" eingeteilt werden. Diese Einteilung kann dynamisch in Realzeit durch ein Programm geändert werden; die Gründe hierfür werden später bei der Beschreibung der Arbeitsweise erläutert. Jede der Verarbeitungseinheiten UP besteht aus
folgenden Einzelschaltungen:
/14
909836/0 83 i
- aus einem oder einer Mehrzahl von Moduln I, die als Eingangs-Ausgangs-Schnittstellenschaltung dienen und deren Ausführung im einzelnen für den Fachmann nicht problematisch ist, so daß sie hier nicht beschrieben zu werden braucht;
- aus einer Mehrzahl von Moduln M der gleichen Art wie die Speicher-Moduln M in den Speicherbanken BM;
- aus einem Modul CPU, das in sich dupliziert sein kann, als Verarbeitungseinheit arbeitet und später im einzelnen unter Bezugnahme auf Fig. 2a beschrieben wird;
- aus einem Modul MEI, das ein Verknüpfungs-Schaltnetz darstellt und als Sammelleitungsvervielfacher dient und dessen Aufbau und Funktionen später im einzelnen unter Bezugnahme auf Fig.
3 beschrieben wird.
In der Schaltung nach Fig. 1 verbinden in zwei Richtungen wirksame Sammelleitungen C11 , CI2 ... C1k; C21, C22 ..., C2k; .... Cn1, Cn2 ..., Cnk jede der η Verarbeitungseinheiten UP mit jeder der k Speicherbanken BM über drahtmäßig unabhängige Wege. Auf diese Weise kann zu jedem beliebigen Zeitpunkt eine Verbindung zwischen jedem der Moduln MEI und jedem der Moduln MAC hergestellt werden.
Wie schematisch in der Zeichnung dargestellt ist, sind innerhalb jeder der η Verarbeitungseinheiten UP die verschiedenen Moduln, nämlich I, M, CPU und MEI, in beiden Richtungen über interne Sammelleitungen b1 , b2, ..., bn miteinander verbunden. Analog sind innerhalb jeder der k Speicherbanken BM die Moduln M und MAC in beiden Richtungen über interne Sammelleitungen 11, 12, ..., l'k verbunden.
Ersichtlich werden Informationen und Nachrichten von den und zu den Verarbeitungseinheiten des Systems allgemein über die Schnittstellen-Moduln I übertragen. Was die Verbindung des Moduls CPU mit den anderen Moduln der Verarbeitungseinheit UP betrifft, kann CPU entweder einzeln oder auch in sich dupliziert sein. Fig. 2a zeigt den Schaltplan eines einzigen Elements
/15
909836/0833
- 15 eines möglichen Paars identischer Moduln CPU.
Es sei hierbei angenommen, daß Fig. 2a sich auf den Modul CPU in der Einheit UPn (Fig.1) bezieht, der an die Sammelleitung bn (Fig.1,2a,3) angeschlossen ist, welche Verbindungen 31, 32, 33, 39, 282 und 310 umfaßt. Fig. 2c zeigt außer weiteren, später noch beschriebenen Signalen die Funktion des Signals auf der Verbindung 31, wobei die in der Zeichnung eingetragenen Symbole
folgende Bedeutung haben:
- TS = die der Schreiboperation zugeordnete Zeit;
- TL = die der Leseoperation zugeordnete Zeit;
- iS = die Zeit, während der die Adressenbits zum Schreiben
gesendet werden;
- dS = die Zeit, während der die Datenbits zum Schreiben gesendet werden;
- iL = die Zeit, während der die Adressenbits zum Lesen gesendet werden;
- dL = die Zeit, während der die Datenbits zum Lesen gesendet
werden.
Die Schaltung nach Fig. 2a enthält drei Paare von Treiber- oder Sender-Empfängern BR2, BD2; BR3, BD3; und BR4, BD4 von an sich bekannter Art, die die von den vor diesen Paaren geschalteten Schaltungen kommenden booleschen Pegel in von der Sammelleitung bn, die hinter diesen Paaren angeordnet ist, akzeptierbare boolesche Pegel verschiebt und umgekehrt.
Eine Zeitsteuereinrichtung BT1 von an sich bekannter Art besteht im wesentlichen aus einem Taktempfänger und aus einer einfachen Selbstprüfungsschaltung, die beide in der Zeichnung nicht dargestellt sind. Der Empfänger verteilt ein periodisches Signal t(Fig.2b), das er auf einem Leiter-214 von einem üblichen (nicht dargestellten) Taktgeber empfängt, wobei die Periode T des Signals t als die Zeitbasis des elementaren Betriebszyklus des Moduls CPU in dem Sinne anzusehen ist, daß während der Periode T einer der vielen vorgegebenen Mikrobefehle vollständig ausgeführt wird. Die Schaltung mit den Selbst-
/16 90 98 36/083?
Überprüfungseigenschaften kann den korrekten Betrieb der Zeitsteuereinrichtung BT1 sicherstellen und ist aufgrund an sich bekannter Techniken dargestellt. Sie kann beispielsweise im Grundsätzlichen aus einer monostabilen Schaltung der Art "Auf der . Flanke wiedertriggerbar" bestehen, also mit der Möglichkeit eines erneuten Starts während der gesamten Dauer seines aktivierten Zustands. Das von dieser Schaltung mit den selbstüberprüfenden Eigenschaften erzeugte Signal wi«rd über einen Leiter 216 zum ersten Eingang eines NOR-Glieds 01 geleitet.
Die Zeitsteuereinrichturig BT1 gibt weiterhin ein Signal te (Fig.2b) ab, das aus dem Signal t folgendermaßen erhalten wird: wird ein Signal 26 (Fig.2b) auf einem Leiter 26 (Fig.2a) am entsprechenden Eingang von BT1 durch Annehmen seines hohen Pegels aktiv, so wird der Signalverlauf von te im Vergleich zum Signal t dadurch abgewandelt, daß ihm diejenigen Übergänge entzogen werden, die sich auf die Periode beziehen, die derjenigen Periode, während derer das Signal am Leiter 26 aktiv geworden ist, folgt, wie in Fig. 2b veranschaulicht ist.
Gemäß Fig. 2b wird im Fall, daß das Signal 26 aktiv bleibt (gestrichelt eingezeichnet), das Signal te, das dann als t'c bezeichnet wird, mit einer Periode von 2T, also der doppelten Periode des Signals t, periodisch.
Am anderen Eingang des ODER-Glieds 01 liegt das Signal a an, dessen Erzeugung in einem später beschriebenen Register RMI jedesmal dann erfolgt, wenn im Modul CPU ein Fehler festgestellt wird, der in den Modul selbst oder seinen nicht dargestellten duplizierten Zwilling eingehen kann.
Die Ausgangsklemme des NOR-Glieds 01 ist über einen Leiter 215 mit der Ausgangsklemme eines dem Glied 01 analogen Glieds in der gekoppelten identischen Einheit, das in der Zeichnung nicht gezeigt ist, verbunden, desgleichen mit dem sperrenden Steuereingang des Treibers oder Senders BD2. Liegt am Leiter 215 der
/17 909836/083?
niedrige Pegel, so wird BD2 gesperrt und werden folglich auch die Moduln CPU hinsichtlich aller möglichen Operationen auf der Sammelleitung bn angehalten.
Eine Recheneinheit ULAR von an sich bekannter Art, die mit internen Registern ausgestattet ist, führt boolesch-arithmetische Operationen an Operandenpaaren aus, die aus Wörtern aus s" Bits bestehen. Die Operanden des Paars können sowohl in den inneren Registern von ULAR gespeicherte als auch von außen über eine Verbindung 217 empfangene Wörter sein. Die Angabe der Art des zu berücksichtigenden Paars und der an den Operanden des selben Paars durchzuführenden boolesch-arithmetischen .Operationen liegt in codierter Form an einer Verbindung 21 vor, die ULAR mit dem später beschriebenen Register RMI verbindet. Am Ende jeder Periode T des von ULAR empfangenen Signals te wird das Ergebnis der Operationen auf einer Verbindung 218, die an einen ersten Ausgang von ULAR anschließt, an drei Register RU, RA und RS abgegeben, in denen dieses Ergebnis entsprechend dem Vorhandensein oder NichtVorhandensein eines vom Register RM1 kommenden Schreibbefehls W3, W4, W5 gespeichert wird. An einen zweiten Ausgang von ULAR ist eine Verbindung 211 angeschlossen, über die die Information über das erhaltene Ergebnis übertragen wird, die beispielsweise anzeigt, daß dieses Ergebnis den Wert O hat oder negativ ist.
Ein Festwertspeicher MMP von an sich bekannter Art speichert einen geordneten Satz von Mikrobefehlen, die die normalen Operationen des Moduls CPU realisieren, sowie einen georderten Satz von Mikrobefehlen, die sich auf die Fernsprech-Vorverarbeitung beziehen und im besonderen die Befehle für das Vorgehen zur Parallelisierung der Vorverarbeitungsoperationen umfassen. Mit dem Ausgang des Festwertspeichers MMP ist das schon erwähnte konventionell aufgebaute Pufferregister RMI verbunden, das zu jedem Betriebszyklus T auf der Basis der Zeitsteuerung durch das Signal te den Mikrobefehl speichert, dessen Ausführung im
909836/083
Ablauf ist. Die verschiedenen Ausgangsklemmen des Registers RMI machen es für die Durchführung einer gleichen Anzahl von Teilen des Mikrobefehls geeignet, wie in der folgenden Beschreibung erläutert ist.
Ausgangsklemmen ¥1, ¥2, ¥3 und ¥4 führen geeignete jeweils gleichnamige Schreibbefehle, eine Ausgangsklemme S1 gibt einen codierten Befehl- ab, der im folgenden beschrieben wird, und die Ausgangsklemme S2 führt ein Ansteuersignal zum Ansteuern der Sender BD3 und BD4.-SO, daß diese, wie noch gezeigt wird, die Daten und Adressen an die Verbindung 31 der Sammelschiene bn übergeben.
Das an einer Klemme a des Registers RMI auftretende Ausgangssignal führt einen booleschen Pegel, der durch das Mikroprogramm in MMP in Abhängigkeit von noch erläuterten Regeln aktiviert oder nicht aktiviert werden kann. Das Signal an der Ausgangsklemme a hat die Funktion, über das NOR-Glied 01 den Sender BD2 am Senden zu hindern.
Der mit der Verbindung 21 verbundene Ausgang von RMI führt den Code der elementaren Operationen zwischen den Registern, die die Einheit ULAR innerhalb des gerade ablaufenden Zyklus durchführen muß. Der an eine Verbindung 22 angeschlossene Ausgang von RMI führt die Befehle, Speicherelemente innerhalb eines booleschen Verknüpfungsschaltnetzes LCB, das später beschrieben wird, zu aktivieren und auf Null zu setzen. Ein Ausgang, an dem eine Verbindung 278 angeschlossen ist, führt einen booleschen Pegel, der, wenn er aktiv wird, einen später beschriebenen Zähler CTR auf Null setzt. Ein Ausgang, an den eine Verbindung 29 angeschlossen ist, führt einen "Wählcode" des Signals, dessen Zustand das Fortschreiten von einem Mikrobefehl zum nächsten steuert und dessen Funktion später beschrieben wird. Schließlich führt ein Ausgang, an den eine Verbindung angeschlossen ist, eine Information über zwei mögliche nachfolgende Mikrobefehle zu einem Sequenzer SEQ9 der im wesentli-
/19 909836/08 33
chen aus einem booleschen Verknüpfungsschaltnetz und einem Register, das den gespeicherten internen Zustand von CPU enthält, besteht, so daß der Sequenzer SEQ den auszuführenden nachfolgenden Mikrobefehl auswählen kann.
Diese Auswahl führt zu einer geeigneten vom Sequenzer SEQ zum Festwertspeicher MMP über eine Verbindung 24 gesendeten Adresse. Sie erfolgt im Grundsätzlichen aufgrund des booleschen Werts auf einer an einen Eingang von SEQ angeschlossenen Leitung 277 und als Folge hiervon aufgrund der Information auf der bereits beschriebenen Verbindung 23, eines an einem Eingang e von SEQ anliegenden Signal e und schließlich der auf einer Verbindung 25 eintreffenden Information. Das Sigftäl e besteht aus einer Fehleranzeige, die, wie noch beschrieben wird, von einem von vier Komparatoren CF2, CF3* CF4 un'd CF5 erzeugt sein kann.
Auf der Verbindung 25 liegt die Startadresse für den Block von Mikrobefehlen, die sich auf den Befehl beziehen, den der Modul CPU gerade auszuführen beginnt. Diese Startadresse wird von einem. Festwertspeicher MDI auf der Basis der von der Verbindung 31 der Sammelleitung bn kommenden Daten erzeugt, die über den Empfänger BR3 zum Festwertspeicher MDI übertragen werden.
Sofern der Modul CPU dupliziert ist, dienen Leitungen 27 und der gegenseitigen Verbindung der beiden gekoppelten Elementarmoduln. Die Leitung 27 sendet zu einem analogen Sequenzer des (nicht dargestellten) gekoppelten CPU den booleschen Wert des Signals auf der Leitung 277» aufgrund dessen der Sequenzer SEQ die Entscheidung zwischen den beiden von der Verbindung 23 geführten Folgefunktionen durchführt. Umgekehrt empfängt der Sequenzer SEQ über die Leitung 28 das analoge von dem nicht dargestellten gekoppelten CPU kommende Signal.
Aufgrund dieser Verbindungen zwischen den gekoppelten elementaren Moduln CPU kann der Sequenzer SEQ, wenn auf der Verbin-
/20 909836/0833
dung 23 ein vorgegebener Code vorhanden ist, die nachfolgende Mikroadresse berechnen, indem er einen konstanten Vert, der vom • Festwertspeicher'MMP selbst über das Register RMI stets über die Verbindung 23 geliefert wird, und den Status zweier boolescher .Pegel auf den Leitungen 27 und 28 zusammenfügt. Von den vier möglichen Zweigen entsprechen zwei ("00" und "11") dem Vorgang, bei"dem die beiden elementaren Moduln CPU über den Status der durch die Verbindung 29 gewählten Leitung ,übereinstimmen, und die verbleibenden beiden ("01" und "10") dem entgegengesetzten Vorgang.
Mit den Leitungen 27 und 28 ist eingangsseitig ein normaler Komparator CF1 verbunden, der ausgangsseitig· am Leiter 26 dann, wenn seine Eingangssignale sich voneinander unterscheiden, einen geeigneten booleschen Pegel abgibt, um den Sequenzer SEQ davon zu informieren, daß ein Synchronismusverlust zwischen den beiden gekoppelten Moduln CPU stattgefunden hat, daß also der boolesche Pegel auf der Leitung 277, auf dessen Grundlage der ?> Sequenzer SEQ den Wert der Adresse des nächsten Mikrobefehls berechnet, nicht mit dem analogen booleschen Wert im gekoppelten Modul CPU übereinstimmt.
Hierbei ist darauf hinzuweisen, daß der Sequenzer SEQ, der Festwertspeicher MMP und das Register RMI zusammen die typische Organisation einer logischen Folgeschaltung bilden, die in der Fachtechnik an sich bekannt ist. Der Betrieb dieser Folgeschaltung wird deshalb nicht weiter im einzelnen beschrieben.
Ein Multiplexer MXB mit einer Mehrzahl von Eingängen und einem einzigen Ausgang ist ausgangsseitig über die Leitung 227 mit dem Sequenzer SEQ und dem Komparator CF1 verbunden, während an seine Eingänge Verbindungen 210, 211, 227 und 279 angeschlossen sind. Auf der Verbindung 227 ist ein festgelegter boolescher Pegel ip verdrahtet, der in den beiden miteinander gekoppelten elementaren Moduln CPU unterschiedlich ist. Dieser boolesche Pegel kann einerseits vom Mikroprogramm geprüft werden, da er
/21 9 09836/083 3
am Eingang des Multiplexers MXB erscheint, und sperrt andererseits die Sender BD3 und BD4, so daß nur einer der beiden gekoppelten elementaren Moduln CPU in die Lage versetzt ist, auf die Sammelleitung bn zu senden, und somit in diesem Sinne als "heiß" anzusehen ist.
Der an den Leiter 279 angeschlossene Eingang des Multiplexers MXB empfängt ein vom Zähler CTR erzeugtes Zeitsignal. Der Zähler CTR zählt eine gegebene Anzahl N von Mikrözyklen und signalisiert das Ende des Zählvorgangs durch die Aktivierung des Leiters 279. Bei üblicher Bauart ist er außerdem in der Lage, die Zähloperation jedesmal bei Aktivierung des Leiters _279 fortzusetzen, und außerdem, diesen Leiter zu desaktivieren, wenn die an seinen Eingang angeschlossene, vom Register RMI kommende Verbindung 278 durch den gerade ablaufenden Mikrobefehl aktiviert 1-n.rd. Der Multiplexer empfängt schließlich noch ein Signal sd, das später beschrieben wird.
Vom Register RMI kommt über die Verbindung 29 ein besonderer Stellbefehl für den Multiplexer MXB, aufgrund dessen er nur einen festgelegten Leiter von einer der beiden Verbindungen 210 und 211 wählt.
Eine Gruppe von zwei in Kaskade geschalteten Registern, die insgesamt mit RSY bezeichnet sind, wird durch das periodische Signal t zeitlich gesteuert und synchronisiert die von der Verbindung 310 der Sammelleitung bn über einen Sammelleitungsempfänger BR1, der den bereits beschriebenen Empfängern BR2, BR3 und BR4 vollkommen gleicht, empfangenen asynchronen Signale mit der Periode T- des Betriebs des Moduls CPU.
Das Verknüpfungs-Schaltnetz LCB, das eingangsseitig über die Verbindung 22 die bereits beschriebenen, vom Register RMI kommenden Startbefehle empfängt, gibt über eine Verbindung 212, den Treiber oder Sender BD2 und eine Verbindung 213 an die Verbindung 32 der Sammelleitung bn folgende Signale gemäß Fig. 2c ab:
9 0 9 8 3 8/0833
- ein Signal oc, das es aufgrund seiner abfallenden Flanke den außerhalb des Moduls CPU befindlichen, an die Sammelleitung bn angeschlossenen Einheiten ermöglicht, die am Ausgang des Senders BD4, der an die Verbindung 31 angeschlossen ist, vorliegende Adresse zu speichern;
- ein Signal ß, das die von der Recheneinheit ULAR bewirkte Phase des Lesens von Daten auf der Verbindung 31, auf die sie durch irgendeine Einheit mit Zugang zur Sammelleitung bn gesendet worden sind, zeitlich begrenzt;
- ein Signal v- , das dadurch, daß es sich auf einem hohen Pegel befindet, die Schreibphase in der mit Hilfe der abfallenden Flanke vonot adressierten Einheit von Daten, die von ULAR erzeugt sind und vorübergehend in einem Register RU gespeichert sind, identifiziert.
Der Speichermodul M (Fig.1), der Schnittstellenmodul I und allgemein alle an die Sammelleitung bn angeschlossenen Moduln antworten auf die Signale ß und y- auf einer Leitung der Verbindung 310 (Fig.2a) durch Abgabe eines Signals rpl mit der Bedeutung "durchgeführte Operation". Dieses typischerweise asynchrone Signal ist offensichtlich einer Zeitsteuerung durch den Modul CPU unterworfen.
Vor dem Sender BD2 und nach dem Empfänger BR2 sind zwei Eingänge des !Comparators CF2 angeschlossen, die somit Zyklus um Zyklus die Übereinstimmung zwischen dem Signal auf der Verbindung 212, das vom Verknüpfungs-Schaltrietz LCB kommt, und dem Signal auf der Verbindung 213, das dem Signal auf der Verbindung 32 der Sammelleitung bn entspricht, überprüfen kann. Stimmen diese Signale nicht überein, so aktiviert der Komparator CF2 das beschriebene Fehlersignal e , das im Sequenzer SEQ die Abgabe einer Mikroadresse an den Festwertspeicher MMP über die Verbindung 24 zum Einleiten eines Überprüfungs- und Selbstdiagnoseprozesses bewirkt, wie noch beschrieben wird. Dieser Vergleich und die darauf bezogenen Folgen ermöglichen es, sicherzustellen, daß der in Fig. 2a dargestellte Modul CPU und der
909836/0833
nicht dargestellte damit gekoppelte Modul Zyklus um Zyklus, also in jedem Intervall der Ausführung "eines Mikrobefehls, in jeder abgegebenen'Signalkonfiguration übereinstimmen. .
Unabhängig von den verarbeiteten Signalen wird diese gleiche Art des Vergleichs, gefolgt von einer möglichen Emission des Fehlersignals e an den Sequenzer SEQ, von den Komparatoren CF3 und CF4 durchgeführt, die vor den Sendern BD3 bzw. BD4 und
hinter den Empfängern BR3 bzw. BR4 angeordnet sind.
Eine Dehn- oder Expandereinheit UEA der Adressen besteht im wesentlichen aus einer Bank schneller Register und aus Verknüpfungsschaltungen, die den Ausgängen dieser Register zugeordnet sind. Die Einheit UEA empfängt eingangsseitig über eine Verbindung 219 die eine Adresse bildende σ-Bit-Information, die vorher auf den Befehl ¥4 von der gleichnamigen Ausgangsklemme des Registers RMI hin in einem Register RA gespeichert worden ist. UEA speichert die Information auf Empfang des Schreibbefehls ¥2 hin in seinen eigenen Registern und wandelt sie in eine T -Bit-Adresse (t*>6*) um. Diese letztere Adresse besteht aus einem Teil T^ von Bits geringerer ¥ertigkeit, die ausgangsseitig über eine Verbindung 220 an eine Rückformungseinheit RIC abgegeben werden, die später beschrieben wird, und aus einem Teil T2 von Bits höherer Wertigkeit, die ausgangsseitig über eine Verbindung 221 zum Komparator CF4 und zum Sender BD4 abgegeben werden. Hierbei XSfC=T1 +T?'
Es ist darauf hinzuweisen, daß die Umwandlung der e*-Bit-Adresse in die T-Bit-Adresse (T>0) durch die Inhalte der internen Register der Expandereinheit UEA bestimmt wird/ in denen die auf der Verbindung 219 liegenden Daten zuvor gespeichert worden sind, und ferner durch einen auf einer Verbindung 222, die den Ausgang des Registers RS mit einem weiteren Eingang von UEA verbindet, liegenden Code bestimmt wird. Die Umwandlung ist notwendig, um im über 2 Zellen liegenden Speicherraum eine Adressiermöglichkeit zu schaffen.
909836/083 3
Wie beschrieben, werden im Register RS zum Zeitpunkt eines Befehls ¥5 von der gleichnamigen Klemme des Registers RMI die aus /der Recheneinheit ULAR ausgehenden Daten gespeichert. Diese Daten betreffen folgendes:
- den inneren Zustand des Moduls CPU, codiert in den Bits, die ausgangsseitig über die Verbindung 222 der Einheit UEA zur Verfugung gestellt werden;
- die Qualifikation "primäre Einheit UP" oder ,"sekundäre Einheit UP", die an die Einheit UP (Fig.1) und als Folge hiervon an die beiden gekoppelten elementaren Moduln CPU, die zu ihr gehören, gegeben wird.
Diese Qualifikation kann praktisch durch Angabe der booleschen Werte auf den vier die Verbindung 225 (Fig.2a) zusammensetzenden Leitungen oder Leitern am Ausgang des Registers RS ausgedrückt werden. Diese Leiter sind sämtlich mit den Eingängen eines normalen Fünfwege-Multiplexers MXC verbunden. Jeder Leiter entspricht einem der folgenden Operationen: Lesen eines Datums, Schreiben eines Datums, Lesen und Schreiben eines sich auf spezielle Befehle der allgemein als "Test und Set" bezeichneten Art beziehenden Datums. Jeder der Leiter führt die Angabe, welche Gruppe der Speicherbanken BM (Fig.1), die primäre oder die sekundäre, in die gerade ablaufende Operation einbezogen werden muß.
Gemäß einem allgemein akzeptierten Brauch wird zwischen primären und sekundären Einheiten UP gemäß dem booleschen Wert auf einem der vier Leiter unterschieden, nämlich auf dem, der sich auf das Lesen· von Befehlen bezieht. Im einzelnen sind die primären Einheiten UP diejenigen, die beim Lesen der Befehle Zugriff zu den primären Banken haben, während die sekundären Einheiten UP diejenigen sind, die bei der gleichen Art von Operation Zugriff zu den sekundären Banken BM haben.
Das Bit eines Signals sd gibt durch seinen booleschen Wert codiert die Regeln an, gemäß denen der Schreibvorgang durchge-
909836/0833
führt werden soll, nämlich ob er nur in der primären Bank BM, statt dupliziert zu werden, ausgeführt wird oder erst in der primären Bank und nachher in der sekundären Bank ausgeführt wird. Das Signal sd v/ird auch an den Eingang des Multiplexers MXB angelegt und kann somit durch das Mikroprogramm geprüft v/erden, um die Wahl zwischen den beiden erwähnten Alternativen zu ermöglichen.
Ist im einzelnen das Bit des Signals sd in der Einzelstellung s, so führt das Mikroprogramm nur eine einzige Schreiboperation in der Primärbank aus, hat andererseits das Bit des Signals sd die Duplikationsstellung d, so betreibt das Mikroprogramm, soweit es am Signal S1 wirkt, ein erstes Schreiben in der primären Bank, indem es das auf das Schreiben bezogene Oualifikationsbit, das am entsprechenden Leiter der Verbindung 225 auftritt, verwendet, und betreibt dann eine zweite Schreiboperation in der Sekundärbank, indem es dieses Bit, nachdem es von einem üblichen Inverter IN invertiert worden ist, nochmal verwendet.
Die der Re konfiguration dienende Rückformungseinheit RIC empfängt von der Verbindung 220 den Teil niedrigerer Wertigkeit Teil ^1 der Adresse und wandelt ihn in ein am Ausgang über eine Verbindung 223 zur Verbindung 33 der Sammelleitung bn abgegebenes codiertes Signal um. Diese Einheit RIC besteht aus einem schnellen Speicher aus 2 n Wörtern. In diesen Speicher wird von der Recheneinheit ULAR über das Register RU dann eingeschrieben, wenn das vom Festwertspeicher MMP kommende Befehlssignal ¥1 aktiviert ist. In den Zellen der Rückformungseinheit RIC sind die Codes der Speicherbanken BM1, ..., BMk (Fig.1) gespeichert, und zwar in Übereinstimmung mit den Konfigurationen der Adressenbits f-t , die von der Expandereinheit UEA (Fig.2a) erzeugt werden und in Übereinstimmung mit der "Qualifikation" des Moduls CPU angeordnet sind, die von der booleschen Konstellation auf der Verbindung 225 ableitbar ist. Die Wahl der zu adressierenden Speicherbank und damit des ent-
/26 909836/083 2
sprechenden Codes unter den in der Rückformungseinheit RIC gespeicherten 2 1 Codes, der auf die Verbindung 223 gegeben werden muß, erfolgt durch Adressierung des Speichers der Schaltung RIC. Die Adresse besteht aus den T- Bits, die von der Expandereinheit UEA über die Verbindung 220 kommen, und einem zusätzlichen Bit, das von dem durch das Mikrobefehlssignal S1 gesteuerten Multiplexer MXC eingeschoben wird. Das Signal S1 ermöglicht es dem Mikroprogramm, die Einheit RIC,entsprechend dem im Register RS gespeicherten Qualifikationsbit, das der durchzuführenden Speicheroperation entspricht, zu adressieren. Im einzelnen wird jede dieser erwähnten Funktionen, nämlich Lesen des Befehls, Lesen der Daten, Lesen der Daten in den Befehlen "Test und Set", mit einem derjenigen Codes korreliert, die auf der Verbindung möglich sind, die das Signal S1 führt, während für die Schreiboperation das im Festwertspeicher MMP gespeicherte Mikroprogramm mit Hilfe zweier verschiedener Codes von S1 sowohl das auf das Schreiben bezogene Qualifikationsbit, das in RS gespeichert ist, als auch seinen komplementierten booleschen Wert, der mit Hilfe des mit einem der Eingänge des Multiplexers MXC verbundenen Inverters IN erhalten wird, wählen kann.
Das Ausgangssignal der Einheit RIC, das auf die Verbindung 223 gegeben wird, hängt davon ab, ob das am mit einem Leiter 280 verbundenen Eingang vorhandene Signal aktiv ist oder nicht. Der auf diesem Leiter liegende boolesche Pegel wird dann aktiv, wenn eine eingangsseitig an die Verbindung 221, die die T2 ^ereits beschriebenen Adressenbit führt, angeschlossene normale Decoderschaltung D findet, daß die Adresse einen höheren Wert als den einer in der Schaltung D fest verdrahteten vorgegebenen Stellenwert hat.
Die Verbindung mit dem in der Zeichnung nicht dargestellten gekoppelten Modul CPU, die, wie beschrieben, über die Leitungen 27, 28, 214 und 215 und die Verbindungen 31, 32, 310 in der Sammelleitung bn gegeben ist, ist so entworfen, daß sie eine Selbstdiagnose der in den duplizierten Moduln CPU fehlerhaft funktio-
/27 909836/083:·
nierenden Schaltung ermöglicht. Hinsichtlich des Effekts nach außen wird das Paar der Moduln als eine einzige Funktionseinheit angesehen.
Die Selbstdiagnose wird mit Hilfe von zwei Arten von Vergleichen durchgeführt: ein erster, zur Zeit des Mikrobefehls durchgeführter Vergleich betrifft die von einem einzigen der Moduln CPU erzeugten, auf die Verbindung 32 der Sammelleitung bn gegebenen Befehle; ein in jedem Speicherzyklus durchgeführter zweiter Vergleich betrifft die Information, die jeder der beiden Moduln zur Verbindung 31' überträgt, und zwar sowohl als Adresse als auch als Schreibdaten. Der erste Vergleich wird vom Komparator CF2 durchgeführt und der zweite wird, soweit es die Adresse betrifft, vom Komparator CF4, und soweit es die Schreibdaten betrifft, vom Komparator CF3 durchgeführt. Indem diese Vergleiche mit den gegebenen Rhythmen, die so schnell als möglich sind, im Hinblick auf die Änderungen der zu überprüfenden Signale und Daten durchgeführt werden, ist eine sofortige Feststellung irgendeines Fehlers, der in den gekoppelten Moduln CPU auftreten könnte, sichergestellt. Hierbei wird unter Zugrundelegung der bekannten Wahrscheinlichkeitstheorien davon ausgegangen, daß ;ein sich möglicherweise auf viele Schaltungen beziehender Fehler auf nur einen der beiden gekoppelten Moduln CPU begrenzt ist. Tatsächlich ist gemäß dieser Theorie die Wahrscheinlichkeit eines Fehlers in beiden Moduln CPU wahrscheinlichkeitsmäßig sehr selten.
Das Auftreten eines Fehlers macht das Fehlersignal e aktiv, das an den Sequenzer SEQ gegeben wird, wo es Unabhängig von dem inneren Zustand und vom Zustand der an seinen Eingängen liegenden Signale die Erzeugung einer zum Festwertspeicher MMP gerichteten vorgegebenen Mikroadresse bewirkt, die sich auf ein bestimmtes mikroprogrammiertes Vorgehen bezieht, das später beschrieben wird.
909838/083
Zur Sicherstellung eines richtigen Betriebs der Komparatoren CF2, CF3 und CF4 sendet das in MMP enthaltene Mikroprogramm periodisch geeignete Bitkonfigurationen auf die Verbindungen 31, 32 und 310. Diese Konfigurationen werden von jedem der angeschlossenen Moduln CPU auf absichtlich nicht übereinstimmende Weise emittiert, und zwar in Abhängigkeit von der Identität, die durch den verdrahteterweise auf der Verbindung 227 liegenden booleschen Pegel ip geliefert wird.
Wird von den beiden elementaren Moduln CPU derjenige, der aufgrund seiner Identität nicht zum Senden auf die Sammelleitung bn in die Lage versetzt ist, als "kalter" Modul CPU bezeichnet, und derjenige Modul CPU, der aufgrund des entsprechenden booleschen Pegels am Leiter 227 zum Senden in die Lage versetzt ist, als "heißer" Modul CPU bezeichnet, so gilt: vor den Treiber-■'schaltungen oder Sendern BD2, BD3 und BD4 des "kalten" Moduls CPU herrscht eine Binärkonfiguration, die mit Sicherheit in einem und nur in einem Bit von der auf der selben Sammelleitung bn liegenden Konfiguration, also der vom "heißen" Modul CPU auf die Sammelleitung bn gesendeten Konfiguration unterschiedlich ist. In einer4 Situation wie soeben beschrieben wird das Fehlersignal e wenigstens am "kalten" Modul aktiv gemacht, und aufgrund des Austauschs dieses Signals über einen Leiter 228 zwischen den beiden gekoppelten elementaren Moduln CPU durch einen "verdrahtet-ODER"-Leiter ("wired-or") setzt diese Aktivierung das entsprechende Mikroprogrammvorgehen in Gang. Der Ausdruck "verdrahtet-ODER" beschreibt hierbei die Verbindung zweier boolescher Verknüpfungsglieder, die an ihren jeweiligen Ausgängen miteinander verbunden sind, die somit von der Art mit offenem Kollektor sein müssen.
Das mikroprogrammierte Vorgehen läuft folgendermaßen ab:
- zunächst wird der Zustand eines internen Registers der Recheneinheit ULAR überprüft. In Abhängigkeit von seinem Wert wird zwischen einem realen und einem vorübergehenden Fehler
unterschieden;
/29
909836/0835
- im Fall eines vorübergehenden Fehlers endet der Vorgang durch die Rückkehr zu einer festen Stelle des Mikroprogramms, an der der normale Betrieb des Moduls CPU wieder aufgenommen wird;
- im Falle eines realen Fehlers setzt zunächst das Mikroprogramm alle vom Verknüpfungs-Schaltnetz LCB erzeugten Signale aufgrund entsprechender Befehle auf der Verbindung 22 auf Null und führt schließlich einen Sprung zu einem Mikrobefehl durch, der als Folgefunktion einen Sprung zu seiner eigenen Mikroadresse enthält. Dieser Mikrobefehl aktiviert auch ein Signal a an der gleichnamigen Ausgangsklemme des Registers RMI. Analog zum Fehlersignal e wird auch das Signal a zwischen den beiden miteinander gekoppelten elementaren Moduln entsprechend einer "verdrahtet-ODER"-Technik ausgetauscht. Hierbei bleibt das duplizierte Modul CPU unbegrenzt im fehlerhaften Zustand angehalten.
Ein solcher Zustand, der der beschriebenen aus einem einzigen Mikrobefehl zusammengesetzten Mikroprogramm-"Schleife" entspricht, ist durch folgende Merkmale identifiziert:
- die Aktivierung des Leiters 215 und damit des Leiters der Verbindung 282 der Sammelleitung bn, wobei dieser Wert dann in verschiedener Weise außerhalb des Moduls CPU ausgewertet werden kann, beispielsweise zur Sichtbarmachung des Fehlerzustands, für einen Alarm an eine oder eine Mehrzahl von Moduln CPU, die mit dem beschriebenen Modul bei der Prozessteuerung zusammenwirken, seine Initialisierung zu peripheren Einheiten usw;
- Isolierung des Moduls CPU selbst in Bezug zur Sammelleitung bn, wobei diese Isolierung jedenfalls durch den einen der beiden Moduln, welcher als nicht von Fehlern befallen vorausgesetzt wird, sichergestellt wird.
Auf diese Weise sind die vom Fehler herkommenden Wirkungen auf ein Minimum begrenzt, da der duplizierte Modul CPU seine Aufgabe nach dem Fehler nicht weiter vollführen kann. Diese Charakteri-
90983S/0833
stik läßt die Verwendung des Moduls CPU mit interner Duplikation beispielsweise in der Umgebung eines Multiprozessor als bevorzugenswert erscheinen und stellt sicher, daß ein physikalischer Fehler, der in einem einzigen Modul auftritt, nicht das gesamte System beeinträchtigen kann.
Die Art der soeben beschriebenen inneren Duplizierung und die Modalitäten des stetigen Vergleichs zwischen den beiden gekoppelten elementaren Moduln werden durch die später beschriebenen Schaltungen und Vorgehensweisen möglich. Sie sind aufgrund der asynchronen Natur der Sammelleitung bn notwendig.
Jedenfalls ist diese Charakteristik der Sammelleitung bn zwangsläufig, da eine Kommunikation zwischen jedem beliebigen Modul CPU der Verarbeitungseinheiten UP (Fig.1) und jedem Speichermodul M der Speicherbanken BM über sämtliche beteiligten Sammelleitungen (b,c,l) notwendig ist, ohne daß das Vorhandensein eines sämtlichen Einheiten UP und Speicherbanken BM gemeinsamen Zeitgebers erforderlich ist, der aufgrund des Gesichtspunkts der Zuverlässigkeit ein Risiko darstellen würde; die Kommunikation erfolgt also über ein typisch asynchrones Vorgehen. Die Verwendung asynchroner Sammelleitungen für die Sammelleitungen b und 1 erbringt ohnehin eine Anzahl von dem Fachmann an sich bekannten Vorteilen.
Darüberhinaus wird ein derartiger Fehlerstatus mit den beiden beschriebenen Folgen innerhalb einer Zeit erreicht, die gleich einem Mikrozyklus oder der Dauer eines Lese- oder Schreibzyklus ist, so daß eine Fehlerfortpflanzung vom Anfang an verhindert ist.
Wie erläutert, sind die Zeitpunkte, zu denen die auf der Sammelleitung bn vorhandenen Signale'geschaltet werden, nicht mit der Periode T des Mikrozyklus korreliert, so daß die so realisierte innere Duplizierung zwischen den beiden gekoppelten Moduln CPU das Risiko mit sich bringt, daß ein auf der Verbindung 310 der Sammelleitung bn liegendes Signal, das in die Moduln CPU einge-
/31 9 0 9 8 3 6/0833
speist wird, von einem dieser Moduln als boolesche 0 und vom anderen als boolesche 1 abgetastet wird. In diesem Fall könnten die beiden Moduln CPU sich voneinander in der Entwicklung ihrer Mikroadressen und folglich im logischen Fluß ihrer Mikroprogramme unterscheiden. Zur Verhinderung der Konsequenzen eines solchen Vorgangs dienen die Leitungen 27 und 28, der Komparator CF1 und das von der Zeitsteuereinrichtung BT1 kommende Signal te (Fig.2b).
Es sei angenommen, daß erstens ein solcher Vorgang eintritt und zweitens während eines Mikrozyklus ΈΤ (Fig.2b) der gerade in Ausführung begriffene Mikrobefehl den. Sequenzer SEQ (Fig.2a) zwingt, die nachfolgende Mikroadresse zu berechnen, nämlich auf der Basis des von der Verbindung 310 der Sammelleitung bn empfangenen Leiterstatus. Auf den beiden Leitungen 27 und 28 liegen dann zwei entgegengesetzte boolesche Werte, die zwischen den gekoppelten Moduln CPU ausgetauscht werden. Als Folge hiervon wird das Signal am Leiter 26 aktiv, wodurch die beiden in Duplikation geschalteten Moduln CPU außerstande gesetzt werden, in ihren jeweiligen Registern RMI, die vom Signal te zeitgesteuert werden, zwei unterschiedliche Mikrobefehle zu speichern und damit unwiderruflich auseinanderzulaufen. Da außerdem die Recheneinheit ULAR, der Sequenzer SEQ und das Verknüpfungs-Schal tnetz LCB an die Zeitsteuerung durch das Signal te gekettet sind, können sie den auf den Zyklus ΈΤ bezogenen Mikrobefehl nicht ausführen, wohl hingegen als Folge einer anschließenden Abtastung des selben Signals im Register RSY, das vom nicht gesperrten - Signal t betrieben wird. Hierbei sind, wenn keine Fehler vorliegen, die auf den Leitungen 27 und 28 vorliegenden booleschen Werte wieder in Übereinstimmung. Das am Leiter 26 liegende Signal wird wieder "desaktiviert" und der im Zyklus H1 nicht ausgeführte Mikrobefehl wird ohne Informationsverlust im Zyklus Έ^ ausgeführt.
Liegt andererseits ein Fehler vor, beispielsweise im Empfänger BR1, im Register RSY oder im Multiplexer MXB, so daß also auch
909836/083$
während t"2 das Signal am Leiter 26 im aktiven Zustand verbleibt, so setzen die beiden gekoppelten Moduln ihre Verarbeitungsoperationen ohne Übereinstimmung fort und der Fehler wird von den Kömparatoren CF2, CF3, CF4 festgestellt, sobald die logische Konsequenz des eingangsseitig erfolgten Verlusts des Synchronismus an den ausgangsseitigen Sendern BD2, BD3, BD4 der Moduln CPU nicht in Erscheinung tritt.
Die Organisation des Sequenzers SEO und des im* Festwertspeicher MMP gespeicherten Mikroprogramms ermöglicht es außerdem, die Folgen eines möglichen Synchronisationsverlusts, also hinsichtlich der Eingangssignale des Multiplexers MXB, zwischen den beiden duplizierten Moduln CPU zu vermeiden, so daß dieser Verlust bei der Höhe des Mikroprogramms sichtbar gemacht wird und das Einsetzen eines möglichen Wiederherstellungsvorgangs möglich ist.
Dies wird durch den Signalaustausch zwischen den Sequenzern SEQ der beiden Moduln CPU über die Leitungen 27 und 28 und durch die Möglichkeit, während eines einzigen Mikrozyklus wie erwähnt Zweige mit vier Ausgangswegen in Abhängigkeit von den booleschen Werten auf den Leitungen 27 und 28 herzustellen, ermöglicht. Sofern die vom Sequenzer SEO berechneten Mikroadressen diejenigen sind, die den Situationen "OT' oder "10" auf den Leitungen 27 und 28 entsprechen, und sofern in den durch diese Mikroadressen adressierten Speicherstellen in MMP eine Verarbeitung des Vorgangs selbst begonnen wird, kann das Problem des Synchronismusverlusts im duplizierten System auf Mikroprogrammpegel gelöst werden. Es ergibt sich also der Vorteil, den Prozeß der Wiederherstellung der Signalidentität auf das Signal zu spezialisieren, das unter all den an den Eingängen des Multiplexers MXB anliegenden Signalen den Synchronismusverlust verursacht hat.
Es ist zu beachten, daß durch das beschriebene Vorgehen eine innere Duplizierung der gekoppelten Moduln CPU realisiert ist, die die jeweilige Prüfung mitumfaßt und im wesentlichen nur drei Leitungen zur gegenseitigen Verbindung der beiden Moduln CPU be-
909836/083 %
nötigt, nämlich die Leitungen 27, 28 und den Leiter 228. Dieser Tatbestand erweist sich als besonders nützlich, wenn jeder der beiden Moduln CPU in einen eigenen integrierten Schaltkreis integriert werden soll. In solchen Fällen stellt das Gewicht aufgrund der Zahl der möglichen Klemmen das bedingende Kriterium dar.
Im folgenden wird kurz das Vorgehen bei der Optimierung der Funktionen der zentralen Verarbeitungseinheit'beschrieben, soweit der bereits erläuterte Modul CPU, die Vorverarbeitung und hauptsächlich die Vorverarbeitung von Fernsprechsignalen betroffen sind- Die Vorgehensregel ist ein Ergebnis von Untersuchungen, die zur Erfindung geführt haben. Sie beruht auf zwei streng miteinander verbundenen Prinzipien.
Das erste Prinzip besteht in der Aufteilung der an einem gegebenen Abtastergebnis von Daten auszuführenden Operationen in eine Reihe von solchen rein booleschen Operationen, die von der Recheneinheit ULAR (Fig.2a) durchgeführt werden können. Diese Aufteilung ist bei den mit den Verarbeitungsoperationen verbundenen Problemen praktisch immer möglich. Im einzelnen ist sie bei -der Vorverarbeitung von Fernsprechsignalen zweckmäßig, bei der bekanntlich häufig Zählungen der Dauer alternierender Vorgänge und von Übergängen von Binärsignalen stattfinden.
Das zweite Prinzip beruht auf einer nicht horizontalen, sondern vertikalen Organisation der die Vorverarbeitung betreffenden Daten soitfohl in jedem beliebigen Modul I, der die Eingangs-Ausgangs-Schnittstellenschaltung darstellt (Fig.1) und von dem die Daten extrahiert und zu dem sie zurückgeführt werden, und in jedem beliebigen Speicher-Modul M, und schließlich in die internen Register der Recheneinheit ULAR (Fig.2a).
Die vertikale Datenorganisation bedeutet, daß der Wert des zu verarbeitenden Signals und die auf die Vorverarbeitung bezogenen Parameter im Speicherbereich, der, wie beschrieben wurde,
/34
909836/0832
/j»
aus 2 Wörtern von β* Bits besteht, an übereinstimmenden Bits einer Mehrzahl von Wörtern plaziert werden. Auf diese Weise wird jedes vom Modul CPU gelesene Speicherwort der Recheneinheit ULAR auf der Verbindung 217 gleichzeitig mit sämtlichen Daten der Arbeit so vieler Abtastungen geliefert, als Bits (G*) die Speicherstelle zusammensetzen, beabsichtigt als Menge elementarer Daten, die durch eine Adresse zurückgerufen werden können. (
Die die Vorverarbeitung betreffenden booleschen Operationen werden von der Recheneinheit ULAR aufgrund dieser beiden Prinzipien gleichzeitig für sämtliche G* Signale durchgeführt.
Am Ende der Folge dieser Operationen stehen deren Ergebnisse, stets in vertikaler Organisation, in einer oder in mehreren Positionen des Speichers M (Fig.1) zur Verfügung.
Zur besseren Veranschaulichung der durchgeführten Operation wird im folgenden ein spezielles, einfaches Beispiel beschrieben, das insbesondere für Anwendungen bei der Vorverarbeitung von Fernsprechsignalen Bedeutung hat, bei der das Signal durch eine Integration von möglichen überlagerten Störsignalen gefiltert werden muß. In der Regel wird diese Integration so durchgeführt, daß die Dauer des booleschen Pegels in einem gegebenen Zustand mit Hilfe von Aufwärts-Abwärts-Zählern gezählt wird. Im Rahmen des Beispiels werden folgende Voraussetzungen angenommen :
1. es ist eine Gruppe von 16 2-Bit-Zählern der beschriebenen Art zu steuern, von denen jeder einem Leiter zugeordnet ist, auf dem ein boolesches Binärsignal liegt;
2. die 16 Leiter sind abzutasten und für jeden Leiter müssen die folgenden Operationen ausgeführt werden:
- ist der am Leiter abgetastete Wert eine boolesche O, so muß der Zähler abwärts zählen. Steht er bereits auf dem Zählwert 00, so bleibt er unverändert;
909836/083:
- ist der am Leiter abgetastete Wert eine boolesche 1, so muß der Zähler aufwärts zählen. Steht er bereits auf dem Zählwert 11, so bleibt er unverändert.
3. Das Abtasten der Leiter findet in 16er Gruppen in einer Position von 16 Bits (G- = 16) statt.
Zur Lösung dieser Anforderung mit Hilfe eines 16-Bit-Wörter verarbeitenden Prozessors könnten an sich in üblicher Weise die 16 Zähler in zwei Wörtern angeordnet werden, wobei horizontal jedem Wort acht Zähler zugeordnet sind. Die Operationen könnten dann ausgeführt werden, indem in geordneter Reihenfolge für jeden der 16 Leiter der entsprechende Zähler gewählt wird. Dies würde mehrfache Verschiebungsoperationen, nämlich um zwei Stellen, der von den beiden Wörtern belegten Speicherpositionen erfordern. Darüberhinaus würde bei jedem vertikalen Schritt gemäß den beschriebenen Bedingungen ein Abwärtszählen oder ein Aufwärtszählen des Zählers bewirkt. Alles dies könnte etwa 90 elementare boolesche Operationen der von marktüblichen Rechnern durchgeführten Operationsarten erfordern.
Bei dem hier gewählten Vorgehen werden hingegen die erforderlichen Operationen analog zu booleschen Gleichungen abgewickelt. Im beschriebenen Beispiel seien:
F = Abtastwert von einem allgemeinen Leiter χ (x=0,...,15);
A = niedrigerwertiges Bit als der vom Zähler x, der dem Leiter χ zugeordnet ist, angenommene Wert, vor dem Abtasten;
B = höherwertiges Bit als der vom Zähler χ angenommene Wert, vor dem Abtasten;
A' = niedrigffeVtiges Bit als der Wert, den der Zähler χ nach dem Abtasten annehmen muß;
B1 = höherxtfertiges Bit als der Wert, den der Zähler χ nach dem Abtasten annehmen muß.
9098 56/083
V1 = F15' F14' * ·· Fx ... F0
V2 = A15, A14' * ·· AX ... Aq
V3 = B15, B14, . ·· Bx .'. . B0
- 36 -
Die dem Aufwärtszählen des Zählers entsprechenden booleschen Gleichungen, die praktisch das Vorgehen und damit die Reihe von möglicherweise beim beschriebenen Beispiel im Festwertspeicher MMP gespeicherten Mikrobefehle bestimmen, sind:
A'x=Bx iJx + Fx> +AxFx . <1>
B'x = AxBx + Fx (Ax + V <2>
Darüberhinaus muß der Zustand der Leiter und 'ihrer Zähler in drei Speicherpositionen V1 , V2 und V3 gemäß dem folgenden Schema organisiert sein:
(3)
Den Gleichungen (1) und (2) entsprechende boolesche Operationen, die auf diese Weise an den gesamten Speicherpositionen V1, V2, V3 durchgeführt werden, liefern automatisch die 16 Ergebnisse gleichzeitig. Dieses Resultat wird beim speziellen hier beschriebenen Fall mit Hilfe 'von 10 elementaren booleschen Operationen erreicht, von denen jede angenähert die Zeit T eines Mikrozyklus in Anspruch nimmt.
Das Schalten des Moduls CPU (Fig.2a) von seiner normalen Tätigkeit zur Ausführung von Vorverarbeitungsvorgängen erfolgt periodisch, beispielsweise auf Anforderung, entweder über normale "Unterbrechungs"-Prozeduren ("Interrupt")» die vom Modul I durchgeführt werden, oder auf Befehl des Moduls CPU jedesmal dann, wenn das Signal am Leiter 279 aktiv wird. Da dieses Signal von einem sich selbst zurückstellenden Zähler erzeugtwird, findet diese Schaltoperation mit einer Periode NT statt. Das entgegengesetzte Schalten von Vorverarbeitungsfunktionen zur normalen Verarbeitung findet asynchron statt, wenn sämtliche auf diese Zeitphase bezogenen Vorverarbeitungsoperationen durchgeführt worden sind. Das Ergebnis der während der Vorverarbeitung durchgeführten Arbeiten resultiert in Messun-
/37 909836/0833
gen, die für die nächste unmittelbar im Speicher-Modul M (Fig.1) betriebene Verarbeitung zugänglich sind.
Es bringt eine erhebliche Vereinfachung und Geschwindigkeitsvorteile beim Informationsaustausch mit sich, daß der selbe Speicher für die Arbeitsbereiche der Vorverarbeitung, für den gegenseitigen Austausch von Nachrichten zwischen den Vorverarbeitungs- und den Verarbeitungsoperationen und schließlich für die normale Verarbeitung verwendet wird, und ist außerdem aus dem Gesichtspunkt der leichten Diagnostizierbarkeit der für die Vorverarbeitung veri-zendeten Speicherbereiche vorteilhaft.
Das die Lehre der angegebenen Gleichungen verwirklichende Vorgehen verschafft dem Modul CPU einen Parallelismus der Ordnung S*beim Verarbeiten der zu verarbeitenden Signale, und aufgrund der Tatsache, daß die entsprechenden Verarbeitungsoperationen in möglichst kurzen Zeitspannen durchgeführt werden, also nicht in Zeitbereichen von für ein Modul CPU typischen Befehlen sondern in Zeitbereichen von Mikrobefehlen, kann das beschriebene Modul CPU mit ausreichender Effizienz in Realzeit sowohl die normalen Operationen jeder beliebigen Verarbeitungseinheit gleicher Art als auch die für die Vorverarbeitung von Signalen, insbesondere von typischen Fernsprechsignalen, erforderlichen Operationen durchführen.
Der als Sammelleitungsvervielfacher arbeitende Modul MEI (Fig.1) besteht gemäß Fig. 3 aus einer Schaltung mit k Sender-Empfänger-Blöcken DR5 nämlich DR1, DR2, ..., DRk, die jeweils beim Senden und beim Empfangen als Treiber seiner eigenen Sammelleitung Xifirken. Wird angenommen, daß der Schaltplan nach Fig. 3 sich auf den Modul MEI der Verarbeitungseinheit UPn (Fig.1) bezieht, so sind die bidirektionell mit den Sender-Empfängern DR1, DR2, , DRk verbundenen Sammelleitungen die
Sammelleitungen Cn1, Cn2, ..., bzw. Cnk (Fig.1,3). Die Schaltung nach Fig. 3 umfaßt weiterhin einen Block BB1, der vorüber-
909836/0833-
gehend die auf der Sammelleitung bn liegenden Adressen und Daten speichert, wobei diese Sammelleitung am Block BB1 mit der Verbindung 31 anschließt. Diese Adressen und dazugehörigen Daten werden zwischen den k Sender-Empfängern DR und der Sammelleitung bn vom und zum mit dieser verbundenen Modul CPU (Fig.1) bidirektionell durch eine Anzahl von Verknüpfungsschaltungen über eine Verbindung 313 übertragen. Eine Ausführungsform des Blocks BB1 kann bei Kenntnis der von ihm auszuführenden Funktionen durch den Fachmann erstellt werden.
Ein Verknüpfungs-Schaltnetz LS1 empfängt die vom Modul CPU (Fig.1) kommenden Befehle über die Sammelleitung bn und eine Verbindung 320 und überträgt diese Befehle später über Verbindungen 314 zu sämtlichen Sender-Empfängern DR. Außerdem gibt es an die übrigen Blöcke über eine Verbindung 315 Befehle ab, die später beschrieben werden. An den Modul CPU sendet das Schaltnetz LS1 über eine Verbindung 38 und die Sammelleitung bn ein Steuersignal für die Durchführung der Operationen. Genauer dargestellt, dient das vom Schaltnetz LS1 über einzelne Leiter der Verbindung 315 zum Block BB1 übertragene Signal als Taktsignal für das Register. Weiterhin geht vom Schaltnetz LS1 über die Verbindung 315 ein Befehl an einen Decoder DC von an sich bekannter Bauart, der über die Verbindung 33 der Sam-
de
melschiene bn ein bestimmtes codiertes Signal empfängt, es so codiert, daß die Identität des beteiligten Sender-Empfängers DR festgestellt wird-, und an diesen Sender-Empfänger auf den Befehl von LS1 hin über einen von Leitern r„ , r?, ..., r, ein Betätigungssignal sendet. Andererseits sendet der Decoder DC rückwärts über die Verbindung 39 und die Sammelschiene bn an den Modul CPU (Fig.1) ein Signal, das der Überprüfung der soeben durchgeführten Decodieroperation dient.
Eine Schaltung IT (Fig.3) sendet an die k Sender-Empfänger DR, mit denen sie getrennt über Leiter S1 , S2, ..., sk verbunden ist, "Unterbrechungs"-Signale ("Interrupf-Signale), die sie bei Empfang geeigneter Befehle erzeugt, die der Sammelleitung
/39 809836/0833
bn über eine Verbindung 34 und weiterer Befehle vom Verknüpf ungs-Schaltnetz LSI über die Verbindung 315 eintreffen. Die Schaltung IT sendet dann an den Modul CPU über einen Leiter 319 und die Sammelleitung bn ein Bestätigungssignal für die durchgeführte Operation. Bauteile wie die Schaltung IT sind in der Technik an sich bekannt.
Von den k Sender-Empfängern DR kommen über Leiter U1, u2, ..., uk bzw. V1, v2, ..., vk "Unterbrechungs"-Signale zu Schaltungen IR1 und IR2, die diese Signale empfangen und speichern. Bei Empfang dieser Signale informieren die Schaltungen IRI und IR2 den Modul CPU über Leiter 321 bzw. 322 und die Sammelleitung bn. Anschließend senden auf eine spezielle vom Modul CPU über die Sammelleitung bn und Verbindungen 35.und 36 kommende Anforderung hin die Schaltungen IR1 und IR2 an den Modul CPU über Verbindungen 311 bzw. 312 codierte Signale u bzw. v. Im einzelnen beziehen sich die von der Schaltung IR1 empfangenen Unterbrechungs-Signale auf Kommunikationsanforderungen zwischen irgendeinem Modul CPU und irgendeinem anderen Modul CPU und die von der Schaltung IR2 empfangenen auf Fehlfunktionen in den Speicherbanken BM (Fig.1). Schaltungen wie IRI und IR2 sind dem Fachmann an sich bekannt.
Sin normales boolesches Verknüpfungsschaltnetz RM ist so ent- */orfen, daß es die möglichen Unterbrechungs-Signale, die von einem der Moduln CPU als unrichtig oder irgendwie unerwünscht erkannt worden sind, aus_..blendet. Die so ausgeblendeten oder maskierten Unterbrechungs-Signale werden von den Schaltungen IR1 und IR2 nicht mehr berücksichtigt. Zur Durchführung dieser Funktionen empfängt das Schaltnetz RM von seinem Modul CPU über die Sammelleitung bn und eine Verbindung 37, nachdem vom Schaltnetz LS1 über die Verbindung 315 ein Ansteuersignal gekommen ist, geeignete Maskierungsbefehle, die sich auf bestimmte Unterbrechungs-Signale beziehen. Das Schaltnetz RM speichert die entsprechenden Sperrsignale und sendet sie über Leiter 316 bzw. 317 zu den Schaltungen IR1 und IR2.
909836/0833
Die Moduln MAC gemäß Fig. 1, die in den Speicherbanken BM1 als Verknüpfungs-Schaltnetz dienen, enthalten gemäß Fig. 4 η Sender-Empfänger DR, nämlich DR1, DR2," ..., DRn, deren Senderteil auch als Treiber bezeichnet werden kann und deren Aufbau gleich demjenigen der Sender-Empfänger DR1, DR2, ..., DRk gemäß Fig. ist. Wird beispielsweise angenommen, daß sich der Schaltplan nach Fig. 4 auf den Modul MAC in der Speicherbank BMk nach Fig. 1 bezieht, so dienen die Sender-Empfänger« DR1 , DR2, ..., DRn gemäß Fig. 4 als Empfänger bzw. Sender-Treiber für die Sammelleitungen C1k, C2k, , Cnk.
Ein Block BB2 und ein Verknüpfungs-Schaltnetz LS2 haben einen gleichen Aufbau wie der Block BB1 bzw. das Verknüpfungs-Schaltr netz LS1 nach Fig. 3, und zwar ist der Block BB2 bidirektionell über eine Verbindung 42 mit den η Sender-Empfängern DRi, DR2, ..., DRn und über eine Verbindung 43 mit der Sammelleitung Ik verbunden, während das Schaltnetz LS2 mit der Sammelleitung Ik bidirektionell über eine Verbindung 44 und mit den verschiedenen Sender-Empfängern DR über eine Verbindung 45 verbunden ist. Das Verknüpfungs-Schaltnetz LS2 sendet über einen Leiter 46 an den Block BB2 ein Aktivierungssignal, das die Richtung des Datendurchgangs durch den Block BB2 bestimmt.
Eine übliche Zeitschaltung TO begrenzt zeitlich die gerade ablaufende Operation, um mögliche durch Fehler verursachte Blokkierungen zu vermeiden. Diese Zeitschaltung empfängt vom Verknüpfungs-Schaltnetz LS2 über eine Verbindung 47 ein Aktivie- . rungssignal in Übereinstimmung mit dem Anfang einer gegebenen Operation. In einer eventuellen Anhaltesituation signalisiert sie diese über die selbe Verbindung 47 und sendet ein "Unterbrechungs"-Signal über einen Leiter 43 zu sämtlichen Sender-Empfängern DR.
Welche der Sender-Empfänger DRI, DR2, .... DRn für eine Kommunikation mit dem Schaltnetz LS2 und dem Block BB2 angesteuert werden müssen, entscheidet eine logische Schaltung ARB, die
/41 9098 36/083 5
- 41 zu diesem Zweck von jedem der Sender-Empfänger DR1, DR2, ... DRn über Leiter p1, p2, .... bzw. pn eine mögliche Kommunikationsanforderung empfängt. Diese Leiter werden periodisch abgetastet, bis sie das Vorliegen eines oder mehrerer Anforderungen erkennen lassen, woraufhin die weitere Abtastung angehalten wird und der Zugang entsprechend einem vorgegebenen Prioritätsgesetz vergeben wird.
Die weitere Abtastung der Leiter p1, p2, . .., pn wird erst wieder aufgenommen, nachdem alle bei der ersten Abtastung vorgefundenen Anforderungen bedient worden sind, so daß verhindert wird, daß aufgrund von Fehlern ein Anhalten erfolgt und daß ein Modul CPU mit hoher Priorität für die Zugänge bevorzugt wird.
Nachdem die logische Schaltung ARB entschieden hat, welcher der Sender-Empfänger zu verbinden ist, sendet sie an diesen Sender-Empfänger ein Ansteuerungssignal über einen von Leitern SV1, SW2, ..., SWn, über die zu diesem Zweck die Schaltung ARS mit den Sender-Empfängern DR verbunden ist. An das Verknüpfungs-Schaltnetz LS2 meldet die logische Schaltung ARD über eine Verbindung 49 den Anfang und das Ende der Verbindung mit den einzelnen Sender-Empfängern DR.
Der Modul umfaßt einen üblichen Taktgeber BT2, der über eine Verbindung 41 elementare Taktsignale erzeugt, die für den Betrieb der logischen Schaltung ARB, des Schaltnetzes LS2 und der Zeitschaltung TO, mit denen er über die Verbindung 41 verbunden ist, benötigt werden.
Fig. 5 zeigt das System in einer AusfUhrungsform als "Monoprozessor", mit einem der als Eingangs-Ausgangs-Schnittstellenschaltung dienenden Moduln I, einem der als Speicher dienenden Moduln M und einem der als Verarbeitungs-Einheit dienenden Moduln CPU mit der gleichen Bedeutung wie .in Fig. 1 , wobei der Modul CPU ebenfalls allein oder in sich dupliziert sein kann. Monoprozessoranordnungen wie diejenigen nach Fig. 5 sind in der
/42
909836/0833
Technik an sich bekannt und brauchen hier, nachdem die spezielle Betriebsweise des Moduls CPU bereits beschrieben ist, nicht mehr weiter im einzelnen beschrieben zu werden.
Auch die in Fig. 6 dargestellte Anordnung als "Monoprozessor mit getrennter Vorverarbeitung11 umfaßt die Modulnp, M und CPU wie in den zuvor beschriebenen Schaltungen, jedoch mit der Besonderheit, daß der Modul CPU in der linken Zeichnungshälfte speziell für die Vorverarbeitungsoperationen bestimmt werden kann, während der andere vollständig zum Durchführen der normalen Verarbeitungsoperationen bestimmt werden kann. Auf diese Weise kann die Verarbeitungskapazität der "Monoprozessor"-Struktur stets durch die Hinzufügung weiterer Moduln des gleichen Typs erhöht werden. Mit einer derartigen Konfiguration muß jedoch das Ergebnis der vom hierfür spezifischen Modul CPU durchgeführten Vorverarbeitung dem anderen Modul CPU für die nachfolgenden" Verarbeitungsoperationen zugänglich gemacht werden.
Zu diesem Zweck ist ein normaler Speicher MB mit zwei Eingängen, die mit zwei Sammelleitungen d-, d~, die jeweils einem der Moduln CPU zugeordnet sind, verbunden. Derartige Speicher wie der Speicher MB mit zwei Eingängen, die als "bi-port" bezeichnet werden, bestehen aus einem normalen Speicher von an sich bekannter Art und einer internen Logik, die die Zugriffsanforderungen auswählt bzw. entscheidet. Die Zugänge zum Speicher, nämlich zu lesende oder zu schreibende Daten, Adressen, Schreibbefehle und Lesebefehle, können unmittelbar und unabhängig durch die beiden asynchronen Sammelleitungen d.. und d2 erreicht werden, die von der gleichen Art sind wie die bereits beschriebene Sammelleitung bn (Fig.1). Die die Zugriffsanforderungen entscheidende Logik entscheidet aufgrund der zeitlichen Priorität des Eintreffens der Anforderungen, welchem Zugriff zu verwenden ist, und entscheidet im Fall gleichzeitigen Eintreffens auf der Grundlage eines Alternier-Kriteriums. Der Aufbau nach Fig. 6 kann dann verwendet werden, wenn eine höhere Zuverlässigkeit verlangt wird, als sie die einfache Monoprozessor-Struktur nach Fig. 5 liefern
/40 909836/0833
Das erfindungsgemäße System dupliziert mit Parallelismus-Überprüfung ist in Fig. 7 anhand zweier Verarbeitungseinheiten U1, Up veranschaulicht, von denen jede im wesentlichen aus den Moduln I, M und CPU, die bereits im Zusammenhang mit Fig. 5 beschrieben wurden, und einem Modul IOP besteht, das aus einer parallelen Eingang-Ausgang-Schnittstellenschaltung von an sich bekannter Art besteht, in der jedoch einige Veränderungen durchgeführt sind, wie noch beschrieben wird.
Die verschiedenen Moduln jeder der beiden Verarbeitungseinheiten U1 und U2 sind miteinander jeweils über eine Sammelleitung Z1 bzw. Z2 von gleicher Art wie die Sammelleitung bn (Fig.2a) verbunden. Die beiden Moduln IOP (Fig.7) sind miteinander über eine Verbindung 81 verbunden. Die beiden Einheiten U1 und U2 verarbeiten die eingangsseitig empfangenen Daten in gleicher Weise, jedoch gilt nur eine der beiden Einheiten als selbstständige, führende Einheit ("master") und ist vom Programm in die Lage versetzt, die Ergebnisse ausgangsseitig abzugeben. Gemäß den Operationsmodalitäten der verschiedenen über die Schnittstellenschaltungs-Moduln I an die Schaltung nach Fig. 7 angeschlossenen peripheren Einheiten können die Eingangsdaten entweder beiden Einheiten U1 und U2 parallel eingegeben werden, oder können nur einer von ihnen eingegeben werden, nämlich der zu diesem Zeitpunkt als führende Einheit dienenden Einheit.
Im ersteren Fall werden die parallel am Eingang empfangenen Daten vor der Durchführung der Datenverarbeitung über die Schnittstellenschaltung-Moduln IOP zur Sicherung ihrer Übereinstimmung ausgetauscht und verglichen. Im letzteren Fall werden die von der führenden Einheit empfangenen Daten über den Modul IQP vor der Durchführung der Datenverarbeitung zur anderen, geführten Einheit ("slave") gesendet. Wenn es während der Verarbeitung erforderlich ist, die Daten über die Schnittstellenschaltung-Moduln I nach außen abzugeben, so müssen diese Daten vorher zur Überprüfung der Richtigkeit der von den beiden Einheiten U1 und
/44 909836/0833 "
U2 durchgeführten Verarbeitungen ausgetauscht und verglichen werden, was ebenso wie bei den Eingangsdaten über die Schnittstellenschaltung-Moduln IOP und die Verbindung 81 erfolgt.
Ersichtlich bringen diese bei einem duplizierten Aufbau mit Parallelismus-Überprüfung notwendigen Austausche hinsichtlich einer einfachen Datenverarbeitung eine gewisse "Kopflastigkeit" mit sich, wenn sie mit Hilfe von Schnittstellenschaltungs-Moduln IOP von bekannter Bauart durchgeführt werden. Zur Vermeidung dieses Nachteils können im Rahmen der Erfindung diese Moduln in besonderer Weise ausgebildet sein, um die durch sie hindurch stattfindenden Datenaustausche zu beschleunigen.
Bekannte parallele Schnittstellenschaltungen sehen in der der Verbindung 81 entsprechenden Verbindungsleitung sowohl für die Sendekanäle als auch für die Empfangskanäle das Vorhandensein von zwei Signalen vor, die im folgenden als dr, und dp bezeichnet werden, dr, ist die von der peripheren Einheit, die mit dem Sendekanal verbunden ist, gegebene Antwort, daß ein Datum gespeichert worden ist, und dp ist im Empfangskanal die von der peripheren Einheit kommende Signalisierung, daß ein Datum gesendet worden ist. Diese Signale bewirken in bekannter Weise eine an den Modul CPU, der der an der Operation beteiligten Schnittstellenschaltung zugeordnet ist, gesendete Anforderung nach Unterbrechung.
Bei einer parallelen Schnittstellenschaltung bekannter Art, die mit dem Modul CPU verbunden ist, wird das bereits beschriebene Signal rp1! innerhalb der Schnittstellenschaltung- als ODER-Verknüpfungsresultat von zwei Signalen rpl und rpl. erzeugt. Diese Signale sind die Antwort der Schnittstellenschaltung auf Signale ß und y (Fig.2c), die es dem Modul CPU (Fig.7) ermöglichen, die zu den Schnittstellenschaltungen gehörenden Empfangs- und Sende-Puffer zu lesen und in sie zu schreiben.
/45
909836/0833
Die hier beschriebene Besonderheit bezieht sich auf die Erzeugung des Signals rpl innerhalb des Schnittstellenschaltungs-Moduls IOP und besteht darin, daß das Signal rpl, beim Senden mit Hilfe des Signals dr. und das Signal rpl beim Empfangen mit Hilfe des Signals dp bedingt, also konditioniert wird. Entsprechend der booleschen Formel entspricht dies der Erzeugung der Antwort rpl nach der Formel:
rpl = rplt . drt + rplr . dpr (4)
anstelle der Formel
rpl = rplt + rplp - (5)
Die schaltungstechnische Verwirklichung der Formel kann dem Fachmann überlassen bleiben. Sie erlaubt die Beschleunigung des Datenaustauschs zwischen den Schnittstellenschaltungs-Moduln IOP, da sie verhindert, daß der Modul CPU unter Programmsteuerung vor jedem ausgetauschten Datum die Anwesenheit der Signale dxv und dp in Registern "Überprüfung und Zustand", die allgemein in Schnittstellenschaltungen wie IOP vorhanden sind, überprüft.
Sofern während der Verarbeitung keines der die beiden Einheiten U1 und U2 steuernden logischen Schaltnetze der Moduln CPU einen Fehler festgestellt hat und desungeachtet die Übereinstimmungs-Überprüfung der Ausgangsnachrichten ein negatives Ergebnis erbracht hat, werden diese letzteren Nachrichten nicht abgegeben und die beiden Einheiten U1, U2 beginnen ein Programm-Rekonfigurations-Vörgehen, das dazu dienen soll, die aufgrund eines unentdeckten Ausfalls den Fehler verursacht habende Einheit festzustellen und abzusondern.
Es ist beachtenswert, daß dann, wenn der Modul CPU jeder der Einheiten U1 und U2 intern dupliziert ist und so Selbstdiagnosefähigkeiten hat, dieses Rekonfigurationsvorgehen dadurch ver-
/46 909836/0833
einfacht ist, daß es die Verarbeitungskorrektheit der Moduln CPU nicht zu überprüfen braucht.
Stellen andererseits während der Verarbeitung die der Steuerung und Kontrolle dienenden logischen Schaltnetze im Modul CPU in einer der beiden Einheiten U1 und U2 einen Fehler fest, so wird diese Tatsache durch einen Unterbrechungs-Vorgang über die Schnittstellenschaltung-Moduln IOP an die andere Einheit gemeldet. Als Folge hiervon wird die Einheit, die 'den Fehler gemeldet hat, aus der Operation herausgenommen und die Verarbeitung setzt sich ohne Verlust.der Kontinuität in Einzelkonfiguration fort.
Die zur Meldung eines Fehlerauftretens über die Moduln IOP angewandten Modalitäten sind in Abhängigkeit davon unterschiedlich, ob der Fehler außerhalb oder in dem Modul CPU festgestellt wird. Im ersteren Fall wird der Signalisierungsvorgang vom Modul CPU programmgesteuert, während im letzteren Fall, in dem der Modul CPU offensichtlich nicht mehr in der Lage ist, die Befehle zu bewirken, der Meldevorgang der zur Sammelleitung bn gehörenden Selbstdiagnose-Verbindung 282 (Fig.2a) des Moduls CPU selbst überlassen wird. Dies sieht im einzelnen folgendermaßen aus:
Es sei angenommen, daß die Verarbeitungseinheit U1 die Einheit mit Fehler ist. Der mit der Sammelleitung z1 verbundene Modul IOP greift dann den Zustand auf der Verbindung 282 der Sammelleitung z1 ab und gibt ihn an die Verbindung 81. Dieses Signal trifft bei dem mit der Sammelleitung z2 verbundenen Modul IOP ein und bewirkt dort einerseits die Erzeugung eines Unterbrechungssignals, das an den Modul CPU der Einheit U2 aufgrund der Übertragungsmodalitäten, die beim normalen Datenaustausch zwischen U1 und U2 angewandt werden, gesendet wird, und bewirkt andererseits die Aktivierung eines gegebenen Bits des "Steuerung und Zustand"-Registers des Moduls IOP. Auf diese Weise kann der Modul CPU der Einheit U2, nachdem er ein Eingangssig-
/47 909836/0833
nal empfangen hat, den Zustand dieses Registers überprüfen und das Auftreten eines Fehlers in der Einheit U1 bemerken.
Eine Ausführungsform mit dem Aufbau "duplizierte Anordnung mit Parallelismus-Überprüfung und getrennter Vorverarbeitung" gemäß Fig. 8 arbeitet weitgehend gleich wie der Aufbau nach Fig. 7, jedoch sind die beiden duplizierten Einheiten nicht von der Art nach Fig. 5, sondern von der Art nach Fig. 6, so daß die Operation mit getrennter Verarbeitung und die Operation in dupliziertem Aufbau miteinander kombiniert sind.
Der Schaltungsaufbau nach Fig. 9 gleicht im wesentlichen demjenigen nach Fig. 1, er ist jedoch insofern abgeändert, als die dort verwendeten Verarbeitungseinheiten UP1 , ..., UPn (Fig.1) nun durch eine gleiche Zahl von Verarbeitungseinheiten der in Fig. 6 dargestellten Art ersetzt sind, die, da es sich um eine Multiprozessor-Anordnung handelt, mit Moduln MEI integriert sind, um Zugriff zum gemeinsamen Speicher zu erhalten. Ersichtlich ist in diesem Fall ebenso wie bei den Schaltungen nach den Fig. 6 und 8 die Verarbeitungskapazität der einzelnen Verarbeitungseinheiten erhöht, ohne daß deren Anzahl erhöht ist, was sonst zu einer Überlastung des Verbindungs-Netzwerks mit dem gemeinsamen Speicher führen würde. Der Betrieb der Schaltungsanordnung nach Fig. 9 stimmt mit dem Betrieb der Schaltungsanordnung nach Fig. 1 überein, soweit er hier noch beschrieben wird.
Die bisher beschriebenen Schaltungsanordnungen stellen Grundstrukturen von Verarbeitungseinheiten dar, die leicht in komplizierteren Aufbauweisen miteinander verbunden werden können, und zwar sowohl mit gleichgeschalteter Organisation, also ohne funktionelle Unterscheidung zwischen den verschiedenen Einheiten, als auch In hierarchischer Organisation, also mit einer Verteilung der verschiedenen Einheiten in verschiedenen einander untergeordneten Ebenen, wobei jede Einheit durch eine spezifische Funktion charakterisiert ist. Die Verwirklichung eines
-■--.- /48 909836/083?
solchen Aufbaus wird durch ausschließliche Verwendung der anhand der verschiedenen Aufbaue beschriebenen elementaren Moduln realisiert. Im einzelnen dargestellt, genügt es dann, wenn der körperliche Abstand zwischen den verschiedenen Grundstrukturen eines gegebenen Aufbaus verhältnismäßig klein ist, die Verbindung zwischen den Strukturen durch Verwendung der anhand der Fig. 6, 8 und 9 beschriebenen "bi-port"-Speicher MB herzustellen, während es andernfalls erforderlich ist, die bereits beschriebenen Schnittstellenschaltungs-Moduln I zu verwenden.
Als Beispiel seien zwei Aufbaue der hierarchischen Art, die sicherlich bezeichnender ist als die gleichgeschaltete ("demokratische") Art, beschrieben.
Fig. 10 zeigt ein Beispiel eines Aufbaus hierarchischer Organisation, mit zwei Ebenen zwischen benachbarten Verarbeitungseinheiten und Verwendung nur von "bi-port"-Speichern MB für die gegenseitige Verbindung. Bei diesem Aufbau wird das Ergebnis der von den Vorverarbeitungseinheiten der unteren Ebene (in der Zeichnung links) für die Einheit der höheren Ebene (in der Zeichnung rechts) mit Hilfe des gemeinsamen Zugriffs zum selben "bi-port"-Speicher MB zugänglich gemacht. Es ist zu beachten, daß die Einheit der höheren Ebene auch aus Einheiten der anhand der Fig. 1, 5 und 7 beschriebenen Art bestehen kann.
Fig. 11 zeigt ein weiteres Beispiel eines Aufbaus mit einer in zwei hierarchischen Ebenen organisierten Schaltung der Art nach Fig. 10, jedoch mit entfernten Einheiten, die über Schnittstellenschal tungs-Moduln der Art I angeschlossen sind. In diesem Fall müssen die Verarbeitungsergebnisse zur Einheit der höheren Ebene mit einer geeigneten Austauschregel gesendet werden, die auch eine Überprüfung der Fehlerfreiheit ermöglicht. Beim dargestellten Beispiel besteht die Einheit der höheren Ebene aus einem Multiprozessoraufbau wie demjenigen nach Fig. .1... <
909836/0832
Ersichtlich ist zur Sicherstellung der Funktionsfähigkeit des gesamten Systems, insbesondere der Einheiten der niedrigeren Ebene, im Fall eines Fehlers einer der Verarbeitungseinheiten (UP) des Multiprozessor eine Duplikation der von jeder Einheit der unteren Ebene ausgehenden Verbindungsleitungen und somit der Schnittstellenschaltungs-Moduln I notwendig sowie auch die Verbindung der Ausgangsklemmen mit zwei verschiedenen Verarbeitungseinheiten (UP), wie es in der Zeichnung dargestellt ist.
Hinsichtlich der Verbindung der zum erfindungsgemäßen System zusammengestellten Einzelschaltungen untereinander wird, soweit diese Verbindungen nicht bereits beschrieben worden sind, zur Entlastung der Beschreibung auf die Zeichnung verwiesen.
Im folgenden wird der Betrieb des erfindungsgemäßen Verarbeitungssystems unter spezieller Bezugnahme auf den Multiprozessoraufbau nach Fig. 1 näher beschrieben. Der Betrieb der in den Fig. 5, 6, 7, 8, 9, 10 und 11 dargestellten Aufbaue ist bereits beschrieben worden und hierzu bedarf es keiner weiteren Erläuterung.
Wie erwähnt, arbeitet das System im Fall nach Fig. 1 in einem Aufbau als "Multiprozessor" mit η Verarbeitungseinheiten UP und k Speicherbanken BM. Bekanntlich besteht ein· Multiprozessorsystem prinzipiell"aus zwei oder mehr als zwei zentralen Verarbeitungseinheiten, von denen jede Zugang zum gemeinsamen Speicher auf unabhängige Weise hat. Beim beschriebenen Multiprozessor sind die zentralen Verarbeitungseinheiten die Einheiten UP1, UP2, ..., UPn und besteht der zentrale Speicher aus den Speicherbanken BM1, ΒΜ2, ..., BMk.
Die Anpassung der Verarbeitungskapazität, der Speicherkapazität und der Zuverlässigkeit des Multiprozessorsystems an die praktischen Anforderungen wird durch Verbindung einer geeigneten Anzahl von zentralen Verarbeitungseinheiten und von Speicherbanken bewerkstelligt.
/50 909836/083:
Der als zentrale Verarbeitungseinheit dienende Modul CPU kann in Einzelkonfiguration oder in intern duplizierter Konfiguration sowohl unmittelbar zum internen Speicher M als auch über die logischen Moduln MEI und MAC zu den Speicherbanken BM des gemeinsamen externen Speichers Zugriff haben. Ersichtlich ist der Zugriff der Moduln CPU zum mit den Sammelleitungen b verbundenen internen Speicher schneller als derjenige zum mit den Sammelleitungen 1 verbundenen äußeren Speicher, so daß also der interne Speicher, außer daß er die auf die Verarbeitungseinheit UP1 zu der er gehört, bezogenen spezifischen Daten enthält, auch, in jeder Verarbeitungseinheit UP wiederholt, denjenigen Teil des Programms enthalten kann, der häufiger verwendet wird.
Das Auswahlkriterium zwischen den beiden Speichern wird durch den Wert der physikalischen Adresse bestimmt, die am Ausgang der Adressen-Expandereinheit UEA (Fig.2a) auf der Basis der von der Decoderschaltung D bewirkten Decodierung der T2 Bits bewirkt wird, vorhanden sind: für Adressen, die niedriger als eine gegebene Schwelle sind, wird der Zugriff unmittelbar beim internen Speicher bewirkt, der durch Decodierung der auf der Sammelleitung b liegenden Adresse die Anforderung nach einem Zugriff bei sich selbst erkennt; für die Schwelle überschreitende Adressen wird hingegen die Rückformungseinheit RIC beteiligt. Diese Einheit RIC meldet aufgrund des Inhalts ihrer eigenen Register an den als Sammelleitungsvervielfacher dienenden Modul MEI die Identität der am Zugriff·beteiligten Speicherbank BM. Als Ergebnis wird nur diejenige Sammelleitung aktiviert, die unmittelbar die betreffende Verbindungseinheit UP mit der ausgewählten Speicherbank BM verbindet, beispielsweise die Sammelleitung C12, die die Verarbeitungseinheit UP1 mit der Speicherbank BM2 verbindet.
Die Verbindung zwischen den zentralen Einheiten UP und .den Speicherbanken BM.durch die Moduln MEI und MAC und die Sammelleitungen C löst im wesentlichen Verkehrs- und Zuverlässigkeits-
/51 909836/083:'
29Q8316
Probleme, da sie einerseits ohne Verstopfung einen schnellen Zugriff der zentralen Einheit UP zu den Speicherbanken BM ermöglicht und andererseits im Fall eines Fehlers die fehlerhafte Einheit, die ent\\reder eine Verarbeitungseinheit UP oder eine Speicherbanlc BM sein kann, zu beschränken und abzutrennen erlaubt, ohne daß der Betrieb des gesamten Verarbeitungssystems fehlerhaft wird.
Der gemeinsame Speicher ist in die getrennten Speicherbanken BM1, BM2, ..., BMk unterteilt, indem eine Teilung nach den physikalischen Adressen angewandt wird; hierbei wird aufeinanderfolgenden Adressen die Speicherstelle in verschiedenen Banken gemäß einer bekannten Technik zu__ordnet, die im Fremdwort gewöhnlich als "memory interleaving" bezeichnet wird.
Das im beschriebenen Fall befolgte Gesetz kombiniert die Zuordnung der selben Speicherbank zu all den Adressen, die bei der Teilung durch die gegebene Zahl kp primärer Banken den selben Rest aufweisen. Beispielsweise liegen im einfachen Fall, daß kp = 4, mit primären Banken BMI, BM2, BM3 und BM4, die Adressen 0, 4, 8, ... in der Bank BM1, die Adressen 1, 5» 9 ... in der Bank BM2, die Adressen 2, 6, 10 ... in der Bank BM3 und schließlich die Adressen 3, 7, 11 ... in der Bank BM4. Auf diese Weise ist der Verlust der gesamten Verarbeitungskapazität aufgrund der Warteschlange der Verarbeitungseinheit UP in Bezug zum Zugang zum Speicher vermieden, da die Befehle eines Programms im allgemeinen durch aufeinanderfolgende Adressen ausgeführt werden.
Die Banken BM können entweder in Einzelanordnung oder aus Gründen der Zuverlässigkeit in duplizierter Anordnung sein. Für einige Anwendungen wie beispielsweise Steuerungen des Fernsprechdienstes ist es besonders wichtig, daß das System durch Verwendung automatischer Rekonfigurationsmöglichkeiten selbst beim Auftreten aufeinanderfolgender Fehler, die nicht sogleich repariert werden, weiterläuft. '
909838/083:
Es sind folglich im ersteren Fall, also bei Einzelkonfiguration, die k Speicherbanken in kp primäre Banken und kr zusätzliche,also Reserve-Banken unterteilt (ks =0). Im letzteren Fall, also mit duplizierter Konfiguration, sind die k Banken in kp primäre Banken, ks = kp sekundäre Banken und kr zusätzliche Banken unterteilt. Die ks sekundären Banken enthalten unter stetiger Fortschreibung die gleiche Information, wie sie in den Primärbanken enthalten ist. Die operative Konfigurationsweise mit Speicherbanken in einzelner oder duplizierter Konfiguration ist in jeder Verarbeitungseinheit UP (Fig.1) in das Bit des Signals sd codiert, das im Register RS (Fig.2a) des betreffenden Moduls CPU enthalten ist.
Im Fall des Betriebs in Einzelkonfiguration sind nur die kp primären Banken beteiligt, während die zusätzlichen kr Banken nur im Fall von Fehlern beteiligt werden. Die Verarbeitung an den primären Banken wird in einer dem Fachmann an sich bekannten Art und Weise durchgeführt, so daß sich weitere Erklärungen erübrigen.
Der Ersatz einer fehlerhaften primären Bank durch eine zusätzliche Bank erfolgt in sehr einfacher Weise durch Ersatz der Codierung der fehlerhaften primären Bank durch die Codierung der vom Programm für den Ersatz gewählten zusätzlichen Bank in der RUckformungseinheit RIC (Fig.2a) gemäß dem bereits beschriebenen Vorgehen.
Im Fall eines Betriebs mit duplizierter Konfiguration sind sowohl die kp primären Banken als auch die ks sekundären Banken beteiligt, während die kr zusätzlichen Banken nur im Fall eines Ausfalls sowohl einer Primärbank als auch einer Sekundärbank beteiligt werden. Die Rückformungseinheit RIC teilt auf der Grundlage der vom Register RS über die Verbindung 225 und den Multiplexer MXC erhaltenen Information die Zugriffsadressen zum gemeinsamen Speicher BM der primären Bank, der sekundären Bank oder beiden entsprechend der gewünschten Funktion zu.
/53 909836/0833
Da die Funktion des Einholens von Befehlen, im technischen Fremdwort als "instruction fetch" bezeichnet, hinsichtlich der im gemeinsamen Speicher BM (Fig.1) gespeicherten Programme von der einzelnen Einheit UP beispielsweise durch Arbeiten an der primären Bank oder an ihrer in der entsprechenden sekundären Bank vorhandenen Kopie durchgeführt werden kann, ist es durch Teilung der Einheiten UP in zwei Gruppen und Qualifizierung jeder Einheit UP von jeder Gruppe als "primär oder sekundär" möglich, eine Teilung der Belastung der Zugriffsanforderungen für den "instruction fetch" des Programms im gemeinsamen Speicher durchzuführen. Da andererseits die Funktion, Daten in den gemeinsamen Speicher zu schreiben, jedenfalls sowohl an der primären Bank als auch an der in der entsprechenden sekundären Bank vorhandenen Kopie durchgeführt werden muß, ist es möglich, aufgrund des am Ausgang des Registers RS (Fig.2a) vorhandenen qualifizierenden Bits des Signals sd, das gegenwärtig im Duplikationszustand d ist, das selbe Datum mit der selben Adresse zuerst an der primären Bank und dann an der sekundären Bank zu schreiben. Da die Funktion, Daten vom Speicher BM (Fig.1) zu' lesen, von der einzelnen Einheit UP durch indifferentes Arbeiten entweder an der primären oder an der entsprechenden sekundären Bank durchgeführt werden kann, ist es im normalen Betrieb möglich, analog zum vorherigen Vorgehen für den "instruction fetch", eine Teilung der Belastung der Anforderungen durch Teilung der Einheiten UP in primäre und sekundäre Einheiten UP zu erreichen.
Im Fall von Operationen des Lesens und Schreibens eines Datums bezüglich eines Befehls "test und set" muß, da wie beschrieben das Schreiben der Daten in der zeitlichen Folge zuerst auf der primären Bank und dann auf der sekundären Bank erfolgt, ein Lesen dieser Daten stets nur in der primären Bank durchgeführt werden, um sicherzustellen, daß die Information eindeutig ist, so daß also während der Funktion "test und set" das Lesen der Daten entsprechend dem Mikroprogramm auf der primären Bank dadurch bewirkt wird, daß über den Multiplexer MXC (Fig.2a), der vom Signal S1 gesteuert wird, das dieser Funktion entsprechende qualifizierende Bit gewählt wird, das am Ausgang des Registers
909836/0833 /54
- 54 RS auf der Verbindung 225 liegt.
Sollte eine primäre oder sekundäre Bank ausfallen, so findet der Ersatz durch die zusätzlichen Banken entsprechend den im Zusammenhang mit dem Fall der Operation in Einzelkonfiguration beschriebenen Regeln statt.
Der spezielle Aufbau der logischen Schaltung der Rückformungseinheit RIC erlaubt es dem System, auch dann weiterzulaufen, wenn aufeinanderfolgende nicht reparierte Fehler sämtliche zusätzlichen anfangs vorhandenen kr Banken verbraucht haben. In diesem Fall ist es tatsächlich möglich, eine nachfolgende Degradierung des Systems zu einer Einzelkonfiguration durchzuführen, und zwar in aufeinanderfolgenden Phasen, bis die Gesamtzahl der verbleibenden Banken niedriger wird als die anfangs vorgesehene Anzahl kp von primären Banken. Im einzelnen ist es, wenn einmal sämtliche zusätzlichen Banken schon verbraucht sind, immer noch möglich, daß, sobald ein Fehler entweder in einer primären oder einer sekundären Bank BM (Fig.1) auftritt, die fehlerhafte Bank durch eine Bank, die ihre Kopie ist, ersetzt wird, indem einfach in der Einheit RIC (Fig.2a) der Code der fehlerhaften Bank durch den Code der Bank, die ihre Kopie darstellt, ersetzt wird. Ersichtlich ist in diesem Fall eine der Banken nicht mehr dupliziert.
Tritt ein weiterer Fehler in einer der noch duplizierten Banken auf, so gleicht die Vorgehensweise der beschriebenen mit der Konsequenz, daß es nun zwei Banken ohne Duplikation gibt. Tritt andererseits der Fehler in der nicht mehr duplizierten Bank auf, so ist eine automatische Rekonfiguration immer noch möglich, indem wiederum die Codes der Banken in der Einheit RIC so zugeordnet werden, daß einer der noch duplizierten Banken die Duplikation entzogen wird und die fehlerhafte Bank durch die so zur Verfugung gestellte Bank ersetzt wird. Auf diese Weise kann im Fall weiterer nicht reparierter Fehler fortgeschritten werden» bis sich sämtliche Banken in Einzelkonfiguration befinden.
~~ 909836/083-3- - -
Es ist bemerkenswert', daß in allen diesen Fällen mit Ausnahme des letzten Falles aufgrund der Vielseitigkeit der Rückformungseinheit RIC die Rekonfiguration sehr schnell erfolgen kann, also ohne Austausche mit äußeren nicht flüchtigen Großspeichern und ohne jeden Informationsverlust. Bekanntlich sind solche Fähigkeiten insbesondere im Fall von Verarbeitungssystemen wichtig, die der Steuerung von Fernsprechoperationen dienen.
Zusätzlich zu den soeben beschriebenen Einzelkonfigurationen und duplizierten Konfigurationen ist es auch möglich, auf hybride Weise zu arbeiten, also in keiner von beiden Konfigurationen ausschließlich, wie sich aus dem folgenden Beispiel ergibt.
Ein erster Fall tritt ein, wenn es in der duplizierten Konfiguration aus Gründen der erforderlichen Fortschreibung der Systemtätigkeiten notwendig ist, gleichzeitig das Programm mit den alten Tätigkeiten und das neue fortgeschriebene Programm durchzuführen. Dieses Erfordernis tritt sehr oft auf, beispielsweise bei der Steuerung von Fernsprech-Vermittlungsstellen mit gespeichertem Programm.
In diesem Fall wird eine der Verarbeitungseinheiten UP (Fig.1) aus der normalen Verarbeitung herausgenommen und dem Testen des neuen Programms zugewiesen. Während also alle Einheiten UP mit Ausnahme der gewählten Einheit Zugriff zu den kp primären Banken, die das alte Programm enthalten, haben, hat die gewählte Einheit UP Zugang zu den ks sekundären Banken, in denen das neue Programm zuvor gespeichert worden ist. Sobald die Richtigkeit des neuen Programms überprüft ist, werden die verbleibenden Einheiten UP aufeinanderfolgend zum Arbeiten auf das neue Programm geschaltet, unter ständigem Zugriff zu den ks sekundären Banken, die neue Programme enthalten. Nachdem die .letzte der Einheiten UP auf das neue Programm umgeschaltet ist, wird dieses neue Programm wiederum auch in die kp primären Banken kopiert, so daß Anfangsbedingungen der duplizierten
/56 9 0 98 36/083 2 -.
- 56 Konfiguration hergestellt sind.
Es ist für diesen Zweck hervorzuheben, daß die soeben beschriebene Operation des Fortschreibens der Programme ohne Bewirkung irgendeiner Unterbrechung im normalen Dienst durchgeführt wird, und zwar aufgrund der operativen Vielseitigkeit der Rückformungseinheit'RIC (Fig.2a).
Im folgenden wird beschrieben, wie die Kommunikationen unter den Verarbeitungseinheiten UP (Fig.1) stattfinden, und zwar unter spezieller Bezugnahme auf die Modalitäten zum Übertragen des "Unterbrechungssignals" von einer der Einheiten UP zu allen anderen. Der Informationsaustausch unter den Verarbeitungseinheiten erfolgt über den gemeinsamen Speicher BM gemäß einer allgemein als "Briefkasten" ("mail box") bezeichneten Technik, die im wesentlichen daraus besteht, daß für die zu kommunizierende Information nahe spezialisierte Speicherstellen zugänglich gemacht werden. Hierbei lesen dann die beteiligten Verarbeitungseinheiten diese Information entweder periodisch (Datenabruftechnik) oder nach einer Anregung (Unterbrechungstechnik). Beide Verfahren können im Rahmen der Erfindung angewandt werden. Die Datenabruftechnik läuft nach in der Technik an sich bekannten Regeln ab und braucht deshalb hier nicht mehr im einzelnen beschrieben zu werden. Die Unterbrechungstechnik wird hingegen in neuer Weise angewandt und wird im folgenden genauer untersucht.
Die Einheit UP, die in ihrem Speicher die zu übertragende Nachricht speichert und die nachfolgenden Einheiten zu informieren wünscht, sendet ein "Unterbrechungssignal" an alle anderen Einheiten UP, indem sie die bereits existierenden physikalischen Wege,;bestehend aus MEI, MAC und den Sammelleitungen C, ohne weitere Verbindung zwischen den Verarbeitüngseinheiten verwendet. Das "Unterbrechungs-Signal" wird in der Schaltung IT (Fig.3) des Moduls MEI der Verarbeitungseinheit auf Empfang eines vom zugehörigen Modul CPU (Fig.2a) über die Verbindungen
/57 909836/083 3*
31, 32 und 34 eintreffenden Befehls hin erzeugt und wird dann über die Sender-Empfänger DR (Fig.3) und die dazugehörigen Sammelleitungen C (Fig.1) zu den vom Programm für die Zuteilung des Signals selbst gewählten Speicherbanken BM übertragen. Jede dieser Banken empfängt über sein Modul MAC das "Unterbrechungs-Signal11 an seinen Sender-Empfänger DR (Fig.4), der sich auf diejenige Einheit UP bezieht, die die "Unterbrechungs"-Prozedur eingeleitet hat.
Das gleiche Signal wird über die Verbindung 42 (Fig.4) allen Sender-Empfängern DR eingespeist und von dort zu allen Einheiten UP (Fig.1) gesendet. Auf diese Weise erreicht man durch die Unterbrechung ein Vorgehen des vollständigen Austauschs der Information zwischen den verschiedenen Verarbeitungseinheiten UP, indem die einzige bereits existierende Netzwerkverbindung mit dem gemeinsamen Speicher verwendet wird, ohne daß zusätzliche weitere Sammelleitungen außer den k.n Sammelleitungen C vorhanden sind.

Claims (14)

  1. Patentansprüche
    ([/ Multikonfigurierbares modulares Verarbeitungssystem, das mit einem Vorverarbeitungssystem integriert ist, dadurch gekennzeichnet, daß es aus einer beschränkten Anzahl von Typen elementarer Moduln (I,M,CPU,MEI,MAC,MB,IOP) besteht, die für jeweilige Funktionen spezialisiert sind und jeweils so optimiert sind, daß sie in sowohl hinsichtlich der Zahl der elementaren Komponenten als auch hinsichtlich ihrer Organisation in Funktion von der geforderten Zuverlässijkeit, Verarbeitungsleistung und Speicherkapazität unterschiedlich konfigurierbaren Verarbeitungsaufbauen zusammenschließbar sind und von denen ein als Verarbeitungseinheit dienender Modul (CPU) durch nur einen weiteren identischen Modul intern duplizierbar ist, und daß in jedem der als Verarbeitungseinheit dienenden Moduln Einrichtungen (MMP, RMI,CTR,MXB,SEQ) enthalten sind, die außer der normalen Verarbeitung in Realzeit die Vorverarbeitung der Signale durchführen.
  2. 2. Verarbeitungssystem nach Anspruch 1, dadurch gekennzeichnet, daß die innere Duplikation der als Verarbeitungseinheit dienenden Moduln (CPU) durch Verbindung zweier identischer derartiger Moduln (CPU) über eine asynchrone Sammelleitung (b) zu einem
    909836/083 3
    2S08318
    _ ο
    "inneren Modulpaar'1 verwirklicht ist, das mit asynchronen externen Vorrichtungen schnittstellenmäßig verbunden werden kann, wobei eine Einrichtung (27,28.CF1,tc,BT1,01) den Synchronismus der beiden Moduleinheiten des inneren Modulpaars aufrechterhält und/oder wiederherstellt und eine weitere Einrichtung (CF2,CF3,CF4) während jedes Mikrobefehlszyklus eine Selbstdiagnose zwischen den Moduleinheiten des inneren Modulpaars ausführt.
  3. 3. Verarbeitungssystem nach Anspruch 1 oder 2, das in einem Verarbeitungsaufbau der Multiprozessorart, bei dem eine oder mehrere Verarbeitungseinheiten über physikalisch voneinander unabhängige Wege mit einer oder mehreren gemeinsamen Speicherbanken verbunden ist bzw. sind, organisiert ist, dadurch gekennzeichnet, daß diese Wege aus einem Netzwerk von Sammellei_tungen (C) bestehen, das mit den Verarbeitungseinheiten (UP) mit Hilfe ebensovieler elementarer Moduln (MEI) verbunden ist, die als Sammelleitungs-Expander-Moduln spezialisiert sind, als Verarbeitungseinheiten (UP) vorhanden sind, und das mit den gemeinsamen Speicherbanken (BM) mit Hilfe ebensovieler elementarer Moduln (MAC) verbunden ist, die als Eingangs- und Entscheidungs-Moduln spezialisiert sind, als Banken des gemeinsamen Speichers (BM) vorhanden sind.
  4. 4. Verarbeitungssystem nach Anspruch 3, dadurch gekennzeichnet, daß das Netzwerk der Sammelleitungen (C), die Sammelleitungs-Expander-Moduln (MEI) und die der Entscheidung dienenden Moduln (MAC) so zusammenwirken, daß sie die auf den Speicher-Sammelleitungen (11,12,1k) der Banken (BM1,BM2,...,BMK) des gemeinsamen Speichers liegenden Signale an die gleichen Vorgänge der entsprechenden auf den asynchronen Sammelleitungen (b1,b2,...bn) der Verarbeitungseinheiten (UP1,UP2,...,UPn) liegenden Signale ketten, wodurch die Verwendung identischer Speicher sowohl an den Speicher-Sammelleitungen (1) als auch an den asynchronen Sammelleitungen (b) möglich ist.
    909836/083 3
  5. 5. Verarbeitungssystem nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß der als Verarbeitungseinheit dienende Modul (CPU) eine Rückformungseinheit (RIC) enthält, die grundsätzlich mit einem Register (RS) und einem Multiplexer (MXC), die zu diesem Modul (CPU) gehören, so zusammenarbeitet, daß sie dynamisch auf der Basis der verschiedenen operativen Funktionen (Lesen, Schreiben, Befehlswiederherstellung usw.) rechtzeitig die Übereinstimmung zwischen der Adresse der Speicherstelle des gemeinsamen Speichers (BM) und der Bank (BM1,BM2,...,BMk), in der sie angeordnet ist, herstellen, wobei diese Übereinstimmung durch Verwendung des niedrigstwertigen Teils (T^) dieser Adresse zum Wählen einer Speicherstelle dieser Rückformungseinheit (RIC) erzielt wird, in der der Identifizierer einer der Speicherbanken (BM1,BM2,—,BMk) enthalten ist, der in Funktion sowohl von eventuell auftretenden Fehlern als auch von speziellen operativen Anforderungen dynamisch modifizierbar ist.
  6. 6. Verarbeitungssystem nach Anspruch 3 oder 4 und ggfs. noch nach Anspruch 5, dadurch gekennzeichnet, daß ein "Unterbrechungs-Netzwerk" für den Austausch von Information zwischen den Verarbeitungseinheiten (UP1,UP2,...UPn) die selben physikalischen Wege des Netzwerks der Sammelleitungen (c) verwendet, wobei die Informationsaustausche durch "Reflexion" an einem oder einer Mehrzahl der Entscheidungs-Moduln (MAC) des Unterbrechungssignals erfolgt, das von irgendeiner der Verarbeitungseinheiten (UP1,UP2,...,UPn) erzeugt und an alle Verarbeitungseinheiten abgegeben wird.
  7. 7. Verarbeitungssystem nach Anspruch 1 oder 2, das in einem Verarbeitungsaufbau der Art "dupliziert mit Parallelismus-Überprüfung" organisiert ist, mit zwei miteinander verbundenen Verarbeitungseinheiten, dadurch gekennzeichnet, daß die Verbindung über zwei elementaren Modulen (IOP), die als parallele Schnittstellenschaltungs-Moduln spezialisiert sind, verläuft, von denen jeder an eine der beiden Verarbeitungseinheiten (U1,U2) angeschlossen ist; und daß zum Bewirken des Datenaustauschs zwi-
    /4 909836/083:
    2908311
    sehen den beiden Verarbeitungseinheiten (U1,U2) der einzelne parallele Schnittstellenschaltungs-Modul (IOP) eine Einrich-• tung zum Konditionieren der Rücksendung eines Signals "Operation bewirkt" (rpl) zum sendenden Verarbeitungseinheit-Modul (CPU), wobei die Bedingung die Anwesenheit eines Signals (dr.) ist, das die tatsächliche Aneignung der Daten selbst durch die Empfangsseite des Verarbeitungseinheit-Moduls (CPU) bedeutet, und zum Konditionieren des Sendens des Signals"Operation bewirkt" an die empfangende Verarbeitungseinheit, wobei die Bedingung die Anwesenheit eines Signals (dp ) ist, das die tatsächliche Übertragung der Daten durch die Sendeseite des Verarbeitungseinheit-Moduls (CPU) bedeutet, enthält.
  8. 8. Verarbeitungssystem nach Anspruch 2 und ggfs. nach einem der Ansprüche· 3 bis 7, dadurch gekennzeichnet, daß die Einrichtung (27,28,CF1,tc,BT1,01) zum Erhalten oder Wiederherstellen des Synchronismus zwischen den beiden Verarbeitungseinheit-Moduln (CPU) des inneren Modulpaars so koordiniert sind, daß sie für sämtliche Schaltungen des Verarbeitungseinheit-Moduls mit Ausnahme von Synchronismus-Registern (RSY) den Zeittakt (T) des elementaren Operationszyklus der Verarbeitungseinheit-Moduln des Modulpaars dupliziert, wenn das gleiche von den beiden das innere Paar bildenden Moduln kommende an der asynchronen Sammelleitung (b) liegende Signal bei unterschiedlichen booleschen Pegeln abgetastet worden ist.
  9. 9. Verarbeitungssystem nach Anspruch 2 und ggfs. nach einem der Ansprüche 3 bis 8, dadurch gekennzeichnet, daß die bei jedem Mikrobefehlzyklus die Selbstdiagnose ausführende Einrichtung (CF2,CF3,CF4) aus die Information, die jeder Verarbeitungseinheit-Modul (CPU) auf die asynchrone Leitung (b) sendet, mit der gleichzeitig auf der selben Leitung (b) vorhandenen Information vergleichenden Komparatoren besteht.
  10. 10. Verarbeitungssystem nach Anspruch 3, dadurch gekennzeichnet, daß jeder der Sammelleitungs-Expander-Moduln (MEI) aus folgenden Einzelschaltungen besteht:
    909836/0833
    23Ü8316
    aus ebensovielen Sender-Empfängern (DR1,...,DRk), als in beiden Richtungen wirksame Sammelleitungen (Cn1, ,Cnk) diese
    Samraelleitungs-Expander-Moduln mit den Speicherbanken (BMI,...,BMk) verbinden, wobei die Sender-Empfänger jeweils eine der Leitungen (Cni,...,Cnk) sowohl beim Smpfang als auch beim Senden steuern;
    aus einem ersten Register (BB1), das gleichzeitig auf der asynchronen Leitung (b) liegende Daten und Adressen speichert und sie gleichzeitig an alle Sender-Empfänger (DR1,...,DRk) überträgt,und umgekehrt;
    aus einem ersten Verknüpfungs-Schaltnetz (LSI), das über die asynchrone Leitung (b) Befehle vom Verarbeitungseinheit-Modul (CPU) oder vom inneren Modulpaar, der bzw. das mit der selben asynchronen Leitung (b) verbunden ist, empfängt und sie wiederum an alle Sender-Empfänger (DR1,...,DRk) abgibt; aus einem Decoder (DC), der auf der Basis des Decodierens eines auf der asynchronen Leitung (b) vorhandenen Signals die Identität des an diesem Signal beteiligten Sender-Empfängers entnimmt und diesem einen Operationsbefehl sendet; aus einer Schaltung (IT) zum Senden von "Unterbrechungssignalen" (Interrupt) an die Sender-Empfänger (DRI,...,DRk) auf der Grundlage entsprechender Befehle, die sie von der asynchronen Leitung (b) empfängt;
    aus einer ersten, die Unterbrechungssignale, die von den Sender-Empfängern (DR1,...,DRk) kommen und sich auf eine Anforderung nach einem Dialog zwischen einem beliebigen Paar der Verarbeitungseinheit-Moduln (CPU) oder Modulpaaren beziehen, empfangenden Schaltung (IR1);
    aus einer zweiten, die Unterbrechungssignale, die von den Sender-Empfängern (DR1,...,DRk) kommen und sich auf eine Fehlfunktion einer der Speicherbanken (BM) beziehen, empfangenden Schaltung (IR2); und
    aus einem zweiten Verknüpfungs-Schaltnetz (RM), das mit der ersten (IR1) und der zweiten (IR2) die Unterbrechungssignale empfangenden Schaltung verbunden ist und als inkorrekt er-
    /6 909836/0833'
    kannte Unterbrechungssignale aufgrund eines entsprechenden über die asynchrone Leitung (b) vom mit der Leitung verbundenen Verarbeitungseinheit-Modul (CPU) oder inneren Modulpaar kommenden Befehls die Unterbrechungssignale maskiert.
  11. 11. Verarbeitungssystem nach Anspruch 3 oder 10, dadurch gekennzeichnet, daß jeder der als Entscheidungsmoduln spezialisierten Moduln (MAC) aus folgenden Einzelschaltungen besteht:
    - aus ebensovielen Sender-Empfängern (DR1,...,DRn), als in beiden Richtungen wirksame Sammelleitungen (CIk,...,Cnk) diese entscheidenden Moduln mit den Verarbeitungseinheiten (UP1,..., UPn) verbinden, wobei die Sender-Empfänger jeweils eine der in beiden Richtungen wirksamen Leitungen (C1k,...,Cnk) sowohl beim Empfang als auch beim Senden steuern;
    - aus einer entscheidenden Schaltung (ARB), die die Anforderungen nach Zugriff zum Speicher entsprechend dem Kriterium, die vorliegenden Anforderungen in regelmäßigen Zeitabständen festzustellen und sie in Aufeinanderfolge zu senden, abtastet, wobei die Anforderungen nach Zugriff an die entscheidende Schaltung (ARB) über die Sender-Empfänger (DRi,...,DRn) gesendet werden;
    - aus einem zweiten Register (BB2), das von den Sender-Empfängern (DRi,...,DRn), zu beliebiger Zeit von der entscheidenden Schaltung (ARB) ausgewählt, die an eine Sammelleitung (1) eines Speichers, mit dem es verbunden ist, zu übertragende Information empfängt, und umgekehrt;
    - einem zweiten Verknüpfungs-Schaltnetz (LS2), das über eine der bidirektionellen Sammelleitungen (C1k,...,Cnk) die von einem der Verarbeitungseinheit-Moduln (CPU) oder inneren Mo,-dulpaaren, die zu dieser Verarbeitungseinheit (UP1,...,UPn) gehören, kommende Befehle empfängt und sie zur Sammelleitung (1) des Speichers sendet, und das außerdem eine umgekehrte Operation ausführt;
    /7
    909836/0833
    - aus einer Zeitschaltung (TO), die die gerade ablaufenden Operationen bezüglich jedes einzelnen Zugriffs zur Leitung (1) des Speichers zeitlich begrenzt und damit Blockierungen aufgrund von Ausfällen verhindert;
    - aus einem Zeitgeber (BT2), der sämtliche für die Operation des entscheidenden Moduls (MAC) notwendigen Zeitsignale erzeugt.
  12. 12. Verarbeitungssystem nach Anspruch 2, dadurch gekennzeichnet, daß der Verarbeitungseinheit-Modul (CPU) Einrichtungen (MMP,RM1, 01) zum Sperren der die Befehle zur asynchronen Leitung (b) sendenden Schaltung (BD2) dann, wenn in einem der beiden elementaren Moduln (CPU) des inneren Modulpaars ein Fehler auftritt, enthält.
  13. 13. Verarbeitungssystem nach Anspruch 2, dadurch gekennzeichnet, daß in jeden elementaren Verarbeitungseinheit-Modul (CPU) der inneren Modulpaare am Eingang des Sequenzers (SEQ) sowohl das Signal, nach dem der nachfolgende Mikrobefehl gewählt wird, als auch das analoge von dem anderen Verarbeitungseinheit-Modul (CPU) des Modulpaars kommende Signal eingegeben werden.
  14. 14. Verarbeitungssystem nach einem der Ansprüche 1 bis 13, dadurch gekennzeichnet, daß die Vorverarbeitung vollständig innerhalb des Verarbeitungseinheits-Moduls (CPU) über die Ausführung entsprechender in einem Mikroprogrammspeicher (MMP) gespeicherter Mikroprogramme mit einer entsprechenden vertikalen Datenorganisation hinsichtlich er Eingangsleitern, die eine parallele Datenverarbeitung ermöglicht, durchführbar ist.
    909836/083
DE2908316A 1978-03-03 1979-03-03 Modular aufgebaute Multiprozessor-Datenverarbeitungsanlage Expired DE2908316C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
IT67447/78A IT1111606B (it) 1978-03-03 1978-03-03 Sistema elaborativo modulare multiconfigurabile integrato con un sistema di preelaborazione

Publications (2)

Publication Number Publication Date
DE2908316A1 true DE2908316A1 (de) 1979-09-06
DE2908316C2 DE2908316C2 (de) 1984-10-25

Family

ID=11302453

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2908316A Expired DE2908316C2 (de) 1978-03-03 1979-03-03 Modular aufgebaute Multiprozessor-Datenverarbeitungsanlage

Country Status (12)

Country Link
US (1) US4366535A (de)
JP (1) JPS5935057B2 (de)
BE (1) BE873220A (de)
BR (1) BR7901049A (de)
CA (1) CA1121513A (de)
DE (1) DE2908316C2 (de)
ES (1) ES478130A1 (de)
FR (1) FR2418989B1 (de)
GB (1) GB2016176B (de)
IT (1) IT1111606B (de)
NL (1) NL184297C (de)
SE (1) SE439701B (de)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3028407A1 (de) * 1980-07-26 1982-04-29 Siemens AG, 1000 Berlin und 8000 München Datennetz mit erweiterter durchschaltekapazitaet fuer die durchschaltung von kanaelen mit groesserer bandbreite
DE3325791A1 (de) * 1983-07-16 1985-01-31 Telefonbau Und Normalzeit Gmbh, 6000 Frankfurt Schaltungsanordnung fuer mit einer zentralen steuereinrichtung zusammenarbeitende periphere einheiten
DE4438941A1 (de) * 1994-10-31 1996-05-02 Sel Alcatel Ag Verfahren zur Steuerung einer Vermittlungsstelle sowie Steuereinrichtungen und Programm-Module dafür und Vermittlungsstelle und Vermittlungssystem damit
DE19837216A1 (de) * 1998-08-17 2000-02-24 Siemens Ag Fehlerbehebung in einer Vermittlungseinrichtung eines Kommunikationssystems

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2486269B1 (fr) * 1980-07-04 1986-03-28 Thomson Csf Systeme de traitement et de memorisation de donnees numeriques, notamment pour tomodensitometre, et tomodensitometre comportant un tel systeme
US4412281A (en) * 1980-07-11 1983-10-25 Raytheon Company Distributed signal processing system
FR2494010B1 (fr) * 1980-11-07 1986-09-19 Thomson Csf Mat Tel Dispositif d'arbitration decentralisee de plusieurs unites de traitement d'un systeme multiprocesseur
EP0054187B1 (de) * 1980-12-15 1988-09-07 Texas Instruments Incorporated Mehrfaches Digital-Prozessor-System
USRE37496E1 (en) * 1981-01-21 2002-01-01 Hitachi, Ltd Method of executing a job
JPS57121750A (en) * 1981-01-21 1982-07-29 Hitachi Ltd Work processing method of information processing system
DE3266636D1 (en) * 1981-05-29 1985-11-07 Gen Electric Co Plc Telecommunications system
JPS5856277A (ja) * 1981-09-29 1983-04-02 Toshiba Corp 情報処理装置ならびに方法
US4965825A (en) * 1981-11-03 1990-10-23 The Personalized Mass Media Corporation Signal processing apparatus and methods
JPS58221453A (ja) * 1982-06-17 1983-12-23 Toshiba Corp 多重系情報処理装置
US4509120A (en) * 1982-09-30 1985-04-02 Bell Telephone Laboratories, Inc. Variable cycle-time microcomputer
US6414368B1 (en) * 1982-11-26 2002-07-02 Stmicroelectronics Limited Microcomputer with high density RAM on single chip
IT1161467B (it) * 1983-01-21 1987-03-18 Cselt Centro Studi Lab Telecom Interfaccia di tipo parallelo per la gestione del colloquio tra un bus asincrono e un bus sincrono collegato a piu terminali dotati ognuno di un proprio segnale di sincronizzazione
JPS59154564A (ja) * 1983-02-24 1984-09-03 Hitachi Ltd プログラマブルコントロ−ラ
US4638453A (en) * 1983-03-28 1987-01-20 Motorola, Inc. Signal processing unit
US4912698A (en) * 1983-09-26 1990-03-27 Siemens Aktiengesellschaft Multi-processor central control unit of a telephone exchange system and its operation
NL8303536A (nl) * 1983-10-14 1985-05-01 Philips Nv Geintegreerde schakeling op grote schaal welke verdeeld is in isochrone gebieden, werkwijze voor het machinaal ontwerpen van zo een geintegreerde schakeling, en werkwijze voor het machinaal testen van zo een geintegreerde schakeling.
AU3746585A (en) * 1983-12-12 1985-06-26 Parallel Computers Inc. Computer processor controller
US4736317A (en) * 1985-07-17 1988-04-05 Syracuse University Microprogram-coupled multiple-microprocessor module with 32-bit byte width formed of 8-bit byte width microprocessors
US4825404A (en) * 1985-11-27 1989-04-25 Tektronix, Inc. Interface system which generates configuration control signal and duplex control signal for automatically determining the configuration of removable modules
EP0232859A3 (de) * 1986-01-27 1989-08-30 International Business Machines Corporation Übertragungsnetzwerk für Prozessoren
DE3774309D1 (de) * 1986-03-12 1991-12-12 Siemens Ag Fehlergesicherte, hochverfuegbare multiprozessor-zentralsteuereinheit eines vermittlungssystemes und verfahren zum speicherkonfigurationsbetrieb dieser zentralsteuereinheit.
EP0236803B1 (de) * 1986-03-12 1992-01-15 Siemens Aktiengesellschaft Verfahren zum Betrieb einer fehlergesicherten hochverfügbaren Multiprozessor-Zentralsteuereinheit eines Vermittlungssystemes
US4754396A (en) * 1986-03-28 1988-06-28 Tandem Computers Incorporated Overlapped control store
US4816990A (en) * 1986-11-05 1989-03-28 Stratus Computer, Inc. Method and apparatus for fault-tolerant computer system having expandable processor section
US4860196A (en) * 1986-12-01 1989-08-22 Siemens Aktiengesellschaft High-availability computer system with a support logic for a warm start
AU616213B2 (en) * 1987-11-09 1991-10-24 Tandem Computers Incorporated Method and apparatus for synchronizing a plurality of processors
US4943969A (en) * 1988-11-28 1990-07-24 Unisys Corporation Isolation for failures of input signals supplied to dual modules which are checked by comparison
US4965717A (en) * 1988-12-09 1990-10-23 Tandem Computers Incorporated Multiple processor system having shared memory with private-write capability
NL8900549A (nl) * 1989-03-07 1990-10-01 Philips Nv Vergelijkschakeling bevattende een maskeermechanisme voor transiente verschillen, vergelijkschakelingssysteem, en verwerkingsinrichting bevattende zulke vergelijkschakelingen.
US5295258A (en) * 1989-12-22 1994-03-15 Tandem Computers Incorporated Fault-tolerant computer system with online recovery and reintegration of redundant components
DE69123987T2 (de) * 1990-01-31 1997-04-30 Hewlett Packard Co Stossbetrieb für Mikroprozessor mit externem Systemspeicher
JPH05220285A (ja) * 1992-02-12 1993-08-31 Sanei Kk ミシンにおける被縫製物送り装置
JP3132744B2 (ja) * 1995-05-24 2001-02-05 株式会社日立製作所 二重化cpu保守交換時の動作一致検証方式
US7272703B2 (en) * 1997-08-01 2007-09-18 Micron Technology, Inc. Program controlled embedded-DRAM-DSP architecture and methods
US6173357B1 (en) * 1998-06-30 2001-01-09 Shinemore Technology Corp. External apparatus for combining partially defected synchronous dynamic random access memories
GB9920015D0 (en) * 1999-08-25 1999-10-27 Cedardell Ltd Automatic installation process for wireless communication system
US6735715B1 (en) 2000-04-13 2004-05-11 Stratus Technologies Bermuda Ltd. System and method for operating a SCSI bus with redundant SCSI adaptors
US6708283B1 (en) 2000-04-13 2004-03-16 Stratus Technologies, Bermuda Ltd. System and method for operating a system with redundant peripheral bus controllers
US6633996B1 (en) 2000-04-13 2003-10-14 Stratus Technologies Bermuda Ltd. Fault-tolerant maintenance bus architecture
US6820213B1 (en) 2000-04-13 2004-11-16 Stratus Technologies Bermuda, Ltd. Fault-tolerant computer system with voter delay buffer
US6687851B1 (en) 2000-04-13 2004-02-03 Stratus Technologies Bermuda Ltd. Method and system for upgrading fault-tolerant systems
US6691257B1 (en) 2000-04-13 2004-02-10 Stratus Technologies Bermuda Ltd. Fault-tolerant maintenance bus protocol and method for using the same
US6691225B1 (en) 2000-04-14 2004-02-10 Stratus Technologies Bermuda Ltd. Method and apparatus for deterministically booting a computer system having redundant components
US6802022B1 (en) 2000-04-14 2004-10-05 Stratus Technologies Bermuda Ltd. Maintenance of consistent, redundant mass storage images
US6862689B2 (en) 2001-04-12 2005-03-01 Stratus Technologies Bermuda Ltd. Method and apparatus for managing session information
US6901481B2 (en) 2000-04-14 2005-05-31 Stratus Technologies Bermuda Ltd. Method and apparatus for storing transactional information in persistent memory
US6718474B1 (en) 2000-09-21 2004-04-06 Stratus Technologies Bermuda Ltd. Methods and apparatus for clock management based on environmental conditions
US6948010B2 (en) 2000-12-20 2005-09-20 Stratus Technologies Bermuda Ltd. Method and apparatus for efficiently moving portions of a memory block
US6886171B2 (en) * 2001-02-20 2005-04-26 Stratus Technologies Bermuda Ltd. Caching for I/O virtual address translation and validation using device drivers
US6766479B2 (en) 2001-02-28 2004-07-20 Stratus Technologies Bermuda, Ltd. Apparatus and methods for identifying bus protocol violations
US6766413B2 (en) 2001-03-01 2004-07-20 Stratus Technologies Bermuda Ltd. Systems and methods for caching with file-level granularity
US6874102B2 (en) 2001-03-05 2005-03-29 Stratus Technologies Bermuda Ltd. Coordinated recalibration of high bandwidth memories in a multiprocessor computer
US7065672B2 (en) 2001-03-28 2006-06-20 Stratus Technologies Bermuda Ltd. Apparatus and methods for fault-tolerant computing using a switching fabric
US6971043B2 (en) * 2001-04-11 2005-11-29 Stratus Technologies Bermuda Ltd Apparatus and method for accessing a mass storage device in a fault-tolerant server
US6928583B2 (en) * 2001-04-11 2005-08-09 Stratus Technologies Bermuda Ltd. Apparatus and method for two computing elements in a fault-tolerant server to execute instructions in lockstep
US6996750B2 (en) 2001-05-31 2006-02-07 Stratus Technologies Bermuda Ltd. Methods and apparatus for computer bus error termination
JP4617847B2 (ja) * 2004-11-04 2011-01-26 株式会社日立製作所 情報処理システム及びアクセス方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2364082A1 (de) * 1973-01-04 1974-07-18 Int Standard Electric Corp Speicherprogrammierte datenverarbeitungsanlage fuer die steuerung externer anlagen
DE2502516A1 (de) * 1974-01-24 1975-07-31 Cit Alcatel Verbindungs- und ueberwachungssystem fuer fernmeldevermittlungsstelle
GB1414095A (en) * 1972-04-24 1975-11-19 Linformatique Comp Int Data processing system
DE2406195B2 (de) * 1973-03-21 1975-12-04 International Business Machines Corp., Armonk, N.Y. (V.St.A.) Fernmelde-Vermittlungsanlage
DE2601702A1 (de) * 1975-01-22 1976-07-29 Cit Alcatel Verbindungs- und ueberwachungssystem fuer fernmeldevermittlungsstelle

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3252149A (en) * 1963-03-28 1966-05-17 Digitronics Corp Data processing system
US3641505A (en) * 1969-06-25 1972-02-08 Bell Telephone Labor Inc Multiprocessor computer adapted for partitioning into a plurality of independently operating systems
US3768074A (en) * 1972-05-12 1973-10-23 Burroughs Corp Multiprocessing system having means for permissive coupling of different subsystems
US3828321A (en) * 1973-03-15 1974-08-06 Gte Automatic Electric Lab Inc System for reconfiguring central processor and instruction storage combinations
US3898621A (en) * 1973-04-06 1975-08-05 Gte Automatic Electric Lab Inc Data processor system diagnostic arrangement
US4099241A (en) * 1973-10-30 1978-07-04 Telefonaktiebolaget L M Ericsson Apparatus for facilitating a cooperation between an executive computer and a reserve computer
US3889237A (en) * 1973-11-16 1975-06-10 Sperry Rand Corp Common storage controller for dual processor system
IT1014277B (it) * 1974-06-03 1977-04-20 Cselt Centro Studi Lab Telecom Sistema di controllo di elaboratori di processo operanti in parallelo
US4015246A (en) * 1975-04-14 1977-03-29 The Charles Stark Draper Laboratory, Inc. Synchronous fault tolerant multi-processor system
US4044337A (en) * 1975-12-23 1977-08-23 International Business Machines Corporation Instruction retry mechanism for a data processing system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1414095A (en) * 1972-04-24 1975-11-19 Linformatique Comp Int Data processing system
DE2364082A1 (de) * 1973-01-04 1974-07-18 Int Standard Electric Corp Speicherprogrammierte datenverarbeitungsanlage fuer die steuerung externer anlagen
DE2406195B2 (de) * 1973-03-21 1975-12-04 International Business Machines Corp., Armonk, N.Y. (V.St.A.) Fernmelde-Vermittlungsanlage
DE2502516A1 (de) * 1974-01-24 1975-07-31 Cit Alcatel Verbindungs- und ueberwachungssystem fuer fernmeldevermittlungsstelle
DE2601702A1 (de) * 1975-01-22 1976-07-29 Cit Alcatel Verbindungs- und ueberwachungssystem fuer fernmeldevermittlungsstelle

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3028407A1 (de) * 1980-07-26 1982-04-29 Siemens AG, 1000 Berlin und 8000 München Datennetz mit erweiterter durchschaltekapazitaet fuer die durchschaltung von kanaelen mit groesserer bandbreite
DE3325791A1 (de) * 1983-07-16 1985-01-31 Telefonbau Und Normalzeit Gmbh, 6000 Frankfurt Schaltungsanordnung fuer mit einer zentralen steuereinrichtung zusammenarbeitende periphere einheiten
DE4438941A1 (de) * 1994-10-31 1996-05-02 Sel Alcatel Ag Verfahren zur Steuerung einer Vermittlungsstelle sowie Steuereinrichtungen und Programm-Module dafür und Vermittlungsstelle und Vermittlungssystem damit
US5761199A (en) * 1994-10-31 1998-06-02 Alcatel Sel A.G. Method of controlling an exchange, its control facilities, program modules, and switching system
DE19837216A1 (de) * 1998-08-17 2000-02-24 Siemens Ag Fehlerbehebung in einer Vermittlungseinrichtung eines Kommunikationssystems
DE19837216C2 (de) * 1998-08-17 2000-06-08 Siemens Ag Fehlerbehebung in einer Vermittlungseinrichtung eines Kommunikationssystems

Also Published As

Publication number Publication date
SE7901812L (sv) 1979-09-04
BR7901049A (pt) 1979-11-20
US4366535A (en) 1982-12-28
NL184297C (nl) 1989-06-01
CA1121513A (en) 1982-04-06
JPS5935057B2 (ja) 1984-08-27
DE2908316C2 (de) 1984-10-25
SE439701B (sv) 1985-06-24
ES478130A1 (es) 1979-05-16
BE873220A (fr) 1979-04-17
JPS54124652A (en) 1979-09-27
GB2016176B (en) 1982-08-25
IT1111606B (it) 1986-01-13
FR2418989B1 (fr) 1987-11-13
FR2418989A1 (fr) 1979-09-28
NL7901708A (nl) 1979-09-05
IT7867447A0 (it) 1978-03-03
GB2016176A (en) 1979-09-19
NL184297B (nl) 1989-01-02

Similar Documents

Publication Publication Date Title
DE2908316A1 (de) Multikonfigurierbares modulares verarbeitungssystem, das mit einem vorverarbeitungssystem integriert ist
DE2321260C2 (de) Multiprozessor-Datenverarbeitungsanlage mit mehreren rekonfigurierbaren Datenverarbeitungsgruppen
DE3300263C2 (de)
DE3300260A1 (de) Schaltungsanordnung zur zuteilung des zugriffs zu einer auf anforderungsbasis gemeinsam benutzten sammelleitung
DE2626838B2 (de) Prüf-Schaltungsanordnung für eine Fernmeldeinstallation
DE3508291A1 (de) Realzeit-datenverarbeitungssystem
WO2001013230A1 (de) Verfahren zum erzwingen der fail-silent eigenschaft in einem verteilten computersystem und verteilereinheit eines solchen systems
DE2751106A1 (de) Automatisches mehrprozessor-schaltsystem fuer telegrafenleitungen
DE3247801A1 (de) Schaltungsanordnung zum verbinden mehrerer rechnerpaare
DE19780639C2 (de) Arbeitsübernahmesystem
DE2517525C3 (de) Verfahren und Signalisierungsidentifizierer zum Erkennen von Fernmelde-Signalisierungskriterien
DE2647367A1 (de) Redundante prozessteueranordnung
EP1366416B1 (de) Fehlertolerante Rechneranordnung und Verfahren zum Betrieb einer derartigen Anordnung
EP0239827B1 (de) Verfahren zum Ansteuern eines gemeinsamen Speichers eines aus einzelnen Mikroprozessorsystemen bestehenden Mehrprozessorsystems
EP0135931A2 (de) Zentralsteuereinheit eines Vermittlungssystems insbesondere Fernsprech-Vermittlungssystems
DE2708244B2 (de) Anordnung und Verfahren zur Steuerung eines Vermittlungssystems mit einer Gruppe von Kleinrechnern
DE3324504C1 (de) Verfahren zur Informationsuebertragung zwischen Mikrorechnern in einem dezentralen Prozesssteuersystem,insbesondere fuer Fernsprechanlagen
EP1399818B1 (de) Verfahren und vorrichtung zur kommunikation in einem fehlertoleranten verteilten computersystem
DE2034423B2 (de) Verfahren zur Fehlersuche in einem programmgesteuerten Vermittlungssystem
EP0036960B1 (de) Verfahren und Schaltungsanordnung zum Aufnehmen und Abgeben von Datenblöcken, insbesondere für Eisenbahnanlagen
DE2446101C2 (de) Schaltungsanordnung zur Sicherung von Verbindungen in Fernsprechvermittlungsanlagen
DE3139729A1 (de) &#34;schaltungsanordnung fuer alarm- und/oder antwortmeldungen eines pcm-zeitmultiplex-fernmeldesystems&#34;
DE1474094C (de) Programmgesteuerte Datenverarbeitungsanlage
DE19534757C1 (de) Verfahren zum Betreiben eines Telekommunikationssystems
EP3800517A1 (de) Redundantes automatisierungssystem, verfahren zur erstellung eines solchen automatisierungssystems, computerprogramm und computerlesbares medium

Legal Events

Date Code Title Description
OAP Request for examination filed
OD Request for examination
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee