DE69308868T2 - Duplizierte steuer- und verarbeitungseinheit für telekommunikationsanlage - Google Patents
Duplizierte steuer- und verarbeitungseinheit für telekommunikationsanlageInfo
- Publication number
- DE69308868T2 DE69308868T2 DE69308868T DE69308868T DE69308868T2 DE 69308868 T2 DE69308868 T2 DE 69308868T2 DE 69308868 T DE69308868 T DE 69308868T DE 69308868 T DE69308868 T DE 69308868T DE 69308868 T2 DE69308868 T2 DE 69308868T2
- Authority
- DE
- Germany
- Prior art keywords
- processing unit
- control
- peripheral
- active
- duplicated
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000012545 processing Methods 0.000 title claims abstract description 130
- 230000002093 peripheral effect Effects 0.000 claims abstract description 74
- 230000015654 memory Effects 0.000 claims abstract description 25
- 101710190443 Acetyl-CoA carboxylase 1 Proteins 0.000 claims abstract description 10
- 102100021334 Bcl-2-related protein A1 Human genes 0.000 claims abstract description 10
- 238000011084 recovery Methods 0.000 claims abstract description 3
- 101150037847 MES1 gene Proteins 0.000 claims description 27
- 101100097991 Schizosaccharomyces pombe (strain 972 / ATCC 24843) rar1 gene Proteins 0.000 claims description 27
- 230000001360 synchronised effect Effects 0.000 claims description 16
- 238000000034 method Methods 0.000 claims description 12
- 101000579484 Homo sapiens Period circadian protein homolog 1 Proteins 0.000 claims description 11
- 101001126582 Homo sapiens Post-GPI attachment to proteins factor 3 Proteins 0.000 claims description 11
- 102100028293 Period circadian protein homolog 1 Human genes 0.000 claims description 11
- 101100191136 Arabidopsis thaliana PCMP-A2 gene Proteins 0.000 claims description 10
- 101100048260 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) UBX2 gene Proteins 0.000 claims description 10
- 230000002457 bidirectional effect Effects 0.000 claims description 10
- 230000000737 periodic effect Effects 0.000 claims description 10
- 238000012423 maintenance Methods 0.000 claims description 7
- 101100004933 Arabidopsis thaliana CYP79F1 gene Proteins 0.000 claims description 6
- 230000006854 communication Effects 0.000 claims description 6
- 238000004891 communication Methods 0.000 claims description 6
- 238000001514 detection method Methods 0.000 claims description 6
- 230000006870 function Effects 0.000 claims description 5
- 230000004913 activation Effects 0.000 claims description 3
- 230000009977 dual effect Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 8
- 238000012544 monitoring process Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 102100036305 C-C chemokine receptor type 8 Human genes 0.000 description 5
- 101000837299 Euglena gracilis Trans-2-enoyl-CoA reductase Proteins 0.000 description 5
- 101000716063 Homo sapiens C-C chemokine receptor type 8 Proteins 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 101000685881 Bos taurus Heterogeneous nuclear ribonucleoprotein A1 Proteins 0.000 description 2
- 101000777301 Homo sapiens Uteroglobin Proteins 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 101150102923 MSM1 gene Proteins 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000001693 membrane extraction with a sorbent interface Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 238000004092 self-diagnosis Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2043—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share a common memory address space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1012—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
- G06F11/1016—Error in accessing a memory location, i.e. addressing error
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1012—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
- G06F11/1032—Simple parity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1666—Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
- G06F11/167—Error detection by comparing the memory output
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2033—Failover techniques switching over of hardware resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2097—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1608—Error detection by comparing the output signals of redundant hardware
- G06F11/1625—Error detection by comparing the output signals of redundant hardware in communications, e.g. transmission, interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1629—Error detection by comparing the output of redundant processing systems
- G06F11/1641—Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/74—Masking faults in memories by using spares or by reconfiguring using duplex memories, i.e. using dual copies
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Monitoring And Testing Of Exchanges (AREA)
- Hardware Redundancy (AREA)
- Telephonic Communication Services (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Exchange Systems With Centralized Control (AREA)
- Safety Devices In Control Systems (AREA)
Description
- Die vorliegende Erfindung bezieht sich auf das Gebiet der Prozeßsteuerungs- Systeme und besonders auf eine duplizierte Steuer- und Verarbeitungseinheit für Telekommunikations-einrichtungen.
- Zur Vereinfachung wird die Verarbeitungs- und Steuereinheit im folgenden nur mit Steuereinheit bezeichnet.
- Bekanntlich hat der große Erfolg der Mikroprozessoren die Konstruktion von Steuereinheiten für Telekommunikationseinrichtungen, selbst von erheblicher Komplexität, wie z.B. Telefonanlagen, sehr erleichtert. Man kann ebenfalls sagen, daß Dank der Mikroprozessoren die Hardwareauslegung einer Steuereinheit heute von den Besonderheiten der von der Steuereinheit überwachten Einrichtungen fast unabhängig ist. Tatsächlich enthält die Steuereinheit im Großteil der bekannten Mikroprozessoren, die in Anlagen einer gewissen Komplexität betrieben werden, im allgemeinen folgende Elemente:
- - eine Verarbeitungseinheit, die die für Betrieb und Steuerung einer Anlage notwendige Verarbeitung vornimmt,
- - eine RAM-Bank, die die charakteristischen Kenndaten der Anlage sowie die während des normalen Betriebs verarbeiteten Daten enthält,
- - Periphere Schaltkreise, die die Verarbeitungseinheit vervollständigen und die Schnittstellen zwischen der Verarbeitungseinheit und dem Rest der Anlage enthalten. Die letztere kann wiederum ganz oder teilweise dupliziert sein.
- Die Verarbeitungseinheit kann mehr oder weniger hochentwickelt sein, enthält aber im allgemeinen folgendes: natürlich einen Mikroprozessor mit geeigneten integrierten Schaltkreisen die mit ihm in gewissen Funktionen zusammenarbeiten, wie z.B. die Verwaltung von Interrupts, direkten Speicherzugriff, usw.; eine RAM, die die Programme zur Verarbeitung der gesamten Anlage enthält; einen wahlfreien Schaltkreis zur Erzeugung von Paritätsbits in den den Mikroprozessor durchlaufenden Signalen; und schließlich einen Diagnoseschaltkreis, der Zugriffsfehler des Prozessors erkennt und die im Störungsfall erzeugten Alarme der Anlage verarbeitet. In einigen Fällen enthält die Verarbeitungseinheit wahlweise zwei oder mehr synchronisierte Mikroprozessoren.
- Die Bezeichnung 'Peripheriegeräte' wird bekanntlich auf alle Einheiten ausgedehnt, mit denen die Verarbeitungseinheit ausgerüstet ist und diese zu einer aktiven Steuereinheit machen, d.h.:
- - Massenspeicher und zugehörige Schnittstellen zur Verarbeitungseinheit,
- - Eingangs/Ausgangsendstellen für Daten und zugehörige Schaltkreise für Schnittstellen und Erweiterungen des Prozessor-Busses,
- - Schnittstellenschaltkreise zu den restlichen Teilen des Systems, die einen Gerätetyp mehr im einzelnen charakterisieren, wie z.B. Fernsprecher oder PCM Multiplex für Telefonvermittlungen.
- - Bei der oben gegebenen Definition eines peripheren Schaltkreises ist es deshalb gerechtfertigt, die oben genannte Daten-RAM ebenfalls mit einzuschließen, zusammen mit den zugehörigen Schnittstellen in Richtung Verarbeitungseinheit.
- Es ist ebenfalls bekannt, daß eine Mikroprozessor-Steuereinheit den Steuervorgang für die verschiedenen Geräte mit Hilfe selektiver Einlesevorgänge besonderer Bitkonfigurationen in spezielle Steuerregister für die Geräte durchführt, die 'Steuerpunkte' genannt werden, sowie selektive Auslesevorgänge aus speziellen Steuerzustandsregistern, die 'Erfassungspunkte' genannt werden. Einlesen der Steuerpunkte ermöglicht die Steuerung gewisser Betriebsarten der verschiedenen Teile einer Anlage, während das Auslesen der Erfassungspunkte es der Steuereinheit ermöglicht, den Betriebszustand der Anlage zu erkennen.
- Im letzten Jahrzehnt waren, besonders in der Telekommunikationsindustrie, mehr und mehr Geräte hoher Zuverlässigkeit und Verfügbarkeit gefragt, die bekanntlich durch die Einführung von Redundanzkriterien erstellt wurden. Eines der genannten Kriterien mit größerer praktischer Anwendung besteht in der Duplizierung der gesamten Steuereinheit. Die Duplizierung schließt notwendigerweise auch den Code und die Daten ein, mit denen die einzelnen Prozessoreinheiten arbeiten.
- Die Duplizierung der Steuereinheit trägt zwar zur größeren Zuverlässigkeit einer solchen Einrichtung bei, führt jedoch zu einigen Problemen, die bei einer nicht duplizierten Steuereinrichtung nicht auftreten. Diese Probleme sind in erster Linie auf die Tatsache zurückzuführen, daß zwei Prozessoren verfügbar sind und daß es unerläßlich ist, ihre Rollen, die Kriterien, die die Aufgabenteilung regeln und die Umschaltmodalitäten beim Auftreten einer Strömung zu regeln, um sicherzustellen, daß ein Prozessor die Arbeit übernimmt, die bis zu diesem Zeitpunkt von einem anderen Prozessor ausgeführt wurde.
- Ein weiteres Problem, das auf die Duplizierung der Steuereinheit zurückzuführen ist, besteht darin, daß die Verbindung der beiden Prozessoren mit dem übrigen Teil der Einrichtung definiert werden muß.
- Bei den meisten bekannten Beispielen wird eines der beiden Exemplare der Steuereinheit als aktives Exemplar ausgewählt und diesem dann die Aufgabe zugeteilt, den übrigen Teil der Einrichtung zu überwachen, während das andere Exemplar in Reserve (Standby) gehalten wird und im Falle einer Störung der ersten Steuereinheit diese ersetzt.
- Dieses Ersetzen erfolgt mit Hilfe eines Wählers, der bei einer Störung in geeigneter Weise gesteuert wird und verhindert, daß das gestörte Exemplar der Steuereinheit auf den übrigen Teil der Einrichtung zugreift, während dem zuvor in Reserve gehaltenen Exemplar der Zugriff ermöglicht wird.
- US-A-3544777 beschreibt ein fehlertolerantes Speichersystem für die Verwendung in Verarbeitungssystemen. Das genannte Speichersystem besteht aus einem oder mehreren Speichern, deren Ausgänge untereinander verglichen werden, um den einwandfreien Betrieb des Speichersystems zu überwachen. Falls keine Übereinstimmung vorliegt, wird das System auf die Betriebsart Fehleranalyse umgeschaltet.
- Aus alledem lassen sich bereits einige Nachteile der duplizierten Steuereinheiten bekannter Art erkennen. Ein erster Nachteil ist darauf zurückzuführen, daß auch die bloße Störung eines gewissen Teils, deren negative Auswirkung von Seiten der Software nicht zeitgerecht neutralisiert werden kann, die Möglichkeit ausschließt, den Betrieb mit einer vollständigen Steuereinheit fortzusetzen.
- Ein zweiter Nachteil ist auf den Verlust an realer Verarbeitungszeit des aktiven Prozessors nach Umschaltung zwischen den beiden Exemplaren aufgrund eines Fehlers zurückzuführen. Unmittelbar nach dem Zeitpunkt des Umschaltens tritt nämlich das Problem auf, daß die Strukturen der in den Daten- RAMS der beiden Exemplare vorhandenen Daten synchronisiert werden müssen, um eine Umschaltung zwischen den beiden Exemplaren mit geringst möglichem Informationsverlust zu bewerkstelligen. Zu diesen Zweck liest bei dem bekannten Beispiel ein geeignetes Unterprogramm die Daten aus, die in dem zuvor aktiven RAM vorhanden sind und kopiert diese in das Daten-RAM, das anschließend aktiv wird. Dies bedeutet offensichtlich einen Verlust an realer Verarbeitungszeit. Dieser Nachteil fällt besonders schwer ins Gewicht, weil er in einem für die Funktion der Einrichtung kritischen Zeitpunkt auftritt.
- Die vorangehenden Betrachtungen zeigen die Grenzen des Betriebs und die Nachteile auf, mit denen die erwähnten Einheiten bekannter Art behaftet sind.
- Es ist deshalb das Ziel der vorliegenden Erfindung, eine duplizierte Steuer- und Verarbeitungseinheit für ebenfalls ganz oder teilweise duplizierte Telekommunikationseinrichtungen anzugeben, bei der die oben beschriebenen Nachteile nicht auftreten.
- Zur Erreichung dieses Ziels ist der Gegenstand der vorliegenden Erfindung eine duplizierte Steuer-. und Verarbeitungseinheit für Telekommunikationseinrichtungen, die aus zwei identischen Steuereinheiten besteht, die in geeigneter Weise untereinander und mit den übrigen Geräten verbunden sind. Jede Steuereinheit besteht aus: einer Verarbeitungseinheit, die in der Lage ist, die notwendige Verarbeitung für den gesamten Gerätesatz vorzunehmen, einschließlich einer Funktion, die entscheidet, ob die genannte Verarbeitungseinheit als Betriebs- oder Reserveeinheit betrachtet werden muß; einer Daten-RAM, die die für den Betrieb der Geräte erforderlichen Daten sowie die während des Betriebs erstellten Daten enthält; außerdem verschiedene periphere Schaltkreise der Verarbeitungseinheit, einschließlich der jeweiligen Schnittstellen zwischen der Verarbeitungseinheit und den übrigen Schaltkreisen und Bausteinen einer Anlage.
- Die Daten-RAMS und Peripherieschaltkreise beider Steuereinheiten schließen die entsprechenden doppelten Zugriffsschnittstellen ein, an denen die Busse
- beider Verarbeitungseinheiten ankommen. Die genannten Schaltkreise enthalten einen im Fehlerfall auf geeignete Weise gesteuerten Wähler, der einen Zugriff der außer Betrieb gesetzten Einheit auf die übrigen Geräte verhindert, und den Zugriff auf die vorher in Reserve gehaltene Einheit möglich macht.
- Die aktive Verarbeitungseinheit führt das periodische Einlesen in die Daten- RAM synchron in beiden duplizierten Daten-RAMS durch, was nach einer Umschaltung zwischen den beiden Verarbeitungseinheiten auf Grund einer Störung eine sofortige Rückgewinnung der für die Weiterführung des Vorgangs erforderlichen Daten erlaubt, wie es in Patentanspruch 1 besser beschrieben ist.
- Ein anderer Gegenstand der vorliegenden Erfindung ist eine Variante der duplizierten Steuereinheit, Gegenstand der vorliegenden Erfindung, wobei die aktive Verarbeitungseinheit das periodische Ein/Auslesen synchron in beiden Daten-RAMS vornimmt. Zusätzlich werden die beiden synchron ausgelesenen Worte miteinander verglichen und im Falle einer Differenz ein Alarmsignal für den Mikroprozessor erzeugt, der daraufhin die erforderlichen Wartungsarbeiten einleitet.
- Die Steuereinheit erlaubt in dieser Variante eine weitere Einsparung realer Verarbeitungszeit durch Vereinfachung der periodischen Überprüfung der Übereinstimmung der Inhalte der beiden duplizierten Daten-RAMS, eine Überprüfung, die unmittelbar nach der Umschaltung einer der beiden Verarbeitungseinheiten auf Grund einer Störung absolut notwendig ist.
- Eine duplizierte Steuereinheit mit dieser Variante ist in den zugehörigen Patentansprüchen besser beschrieben.
- In Anbetracht der obigen Bemerkungen sind die Vorteile einer duplizierten Steuereinheit in Übereinstimmung mit der vorliegenden Erfindung und ihrer Varante klar ersichtlich. Ein erster Vorteil besteht in der besonderen Zuverlässigkeit im Falle einer Störung eines ihrer Teile, da sie in allen ihren Teilen rasch neukonfiguriert werden kann. Genauer gesagt, die aktive Prozessoreinheit kann beliebig auf einen peripheren Block der eigenen Steuereinheit oder aber auf das homologe Duplikat zugreifen. Ein zweiter Vorteil besteht in der erheblichen Ersparnis an realer Verarbeitungszeit, insbesondere
- nach einer Umschaltung zwischen den beiden Prozessoreinheiten. Dies ist auf den Synchronismus der Schreib- und Lesevorgänge in beiden Exemplaren der duplizierten Daten-RAMS zurückzuführen.
- Zusätzliche Zwecke und Vorteile der vorliegenden Erfindung werden in der folgenden eingehenden Beschreibung einer Realisierung sowie den anliegenden, jedoch nur als nicht begrenzendes Beispiel angegebenen Zeichnungen, wie folgt klargestellt:
- - BILD 1 zeigt ein allgemeines Blockschaltbild für Telekommunikationseinrichtungen, einschließlich der duplizierten Steuereinheit der vorliegenden Erfindung, die aus zwei mit UCO und UC1 bezeichneten identischen Steuereinheiten besteht, die in geeigneter Weise untereinander sowie mit dem die übrigen Geräte darstellenden Block TEL verbunden sind;
- - BILD 2 zeigt das Blockschaltbild der duplizierten Steuereinheit von BILD 1 mit mehr Einzelheiten zur Erklärung der oben angegebenen Blöcke UP0 und UP1, deren Verbindungen untereinander und der Verbindungen zwischen den genannten Blöcken und den übrigen zu den Steuereinheiten UC0 und UC1 gehörenden Blöcken;
- - BILD 3 zeigt das Schaltbild eines zu UP0 gehörenden Blocks, der in Bild 2 mit CPU0 bezeichnet ist;
- - BILD 4 zeigt ein Schaltbild sequentieller logischer Zustände, woraus die Wirkungsweise der in Bild 2 mit CCL0 bezeichneten Konfigurationssteuereinheit ersichtlich ist.
- In Bild 1 bezeichnen UC0 und UC1 zwei Steuereinheiten, die gemeinsam eine einzelne duplizierte Steuereinheit für Telekomunikationseinrichtungen bilden, die zusätzlich zu den Blöcken UC0 und UC1 den Block TEL enthält. Die Steuereinheit UC0, auch Kopie 0 genannt, besteht aus den Blöcken UP0, PER0. MES0, I/U0 und TER0. Auf ähnliche Weise besteht die Steuereinheit UC1, auch Kopie 1 genannt, aus den Blöcken UP1, PER1, MES1, I/U1 und TER1.
- Die Blöcke UP0 und UP1 stellen Verarbeitungseinheiten dar, von denen jede in der Lage ist, die Steuervorgänge des gesamten Gerätesatzes zu übernehmen. Die Blöcke MES0 und MES1 enthalten RAM-Bänke, in denen die bei normalem Betrieb einer Verarbeitungeinheit verarbeiteten Daten sowie die zugehörigen Zugriffs- und Schnittstellenschaltkreise gespeichert werden. Die Blöcke PER0 und PER1 stellen schematisch die im Vergleich zu den beiden Verarbeitungseinheiten als peripher angesehenen Einheiten dar. Die genannten Blöcke bilden ebenfalls einen Teil der duplizierten Steuereinheit, da sie wesentlich dazu beitragen, daß die Prozessoren den Rest der Geräte überwachen können. Genauer gesagt können die Blöcke PER0 und PER1 entweder einen Massenspeicher samt Zugriffs- und Schnittstellenschaltkreisen in Richtung Verarbeitungseinheit oder eine Schnittstelle zwischen den Verarbeitungseinheiten und den übrigen, nicht zur Steuereinheit gehörenden Geräten darstellen, wie z.B. den Block TEL.
- Die Blöcke I/U0 und I/U1, zusammen mit den Blöcken TER0 und TER1, formen ebenfalls Peripherieschaltkreise. Genauer gesagt stellen die Blöcke TER0 und TER1 entweder universelle Eingangslausgangs-Endstellen, wie z.B.
- Personalcomputer oder Alarm lampenfelder dar, oder aber Femwirkrelais usw. Die Blöcke I/U0 und I/U1 enthalten Zugriffs- und Schnittstellenschaltkreise für die Verarbeitungseinheiten sowie Schaltkreise zur Erweiterung des aktiven Prozessorsbusses zu den Blöcken TERO oder TERI.
- Jede der Verarbeitungseinheiten UP0 und UP1 hat ihren eigenen bidirektionalen Bus, der jeweils mit BUS0 oder BUS1 bezeichnet wird. Jeder der beiden Busse ist mit den Blöcken UP0, PER0, MES0 und I/U0 der Steuereinheit UC0 sowie parallel mit den Blöcken UP1, PER1, MES1 und I/U1 der Steuereinheit UC1 verbunden. Die Verarbeitungseinheiten UP0 und UP1 sind außerdem über eine spezielle bidirektionale Verbindung untereinander verknüpft. Die von dem Block PER0 gebildete Peripheneeinheit ist bidirektional mit dem Block TEL verbunden, der schematisch eine Gruppe universeller und für die überwachten Bausteine typischer Geräte darstellt, d.h. im vorliegenden Fall Fernsprechgeräte. Auf ähnliche Weise ist der Block PER1 bidirektional mit dem gleichen Block TEL verbunden.
- In Bild 2 sind die gleichen Elemente von Bild 1 mit den gleichen Symbolen bezeichnet und man erkennt die Verarbeitungseinheiten UP0 und UP1, die beide mit den mit BLOC0 und BLOC1 bezeichneten Blöcken verbunden sind, die jeweils einen beliebigen Block MES0, PER0, I/U0 oder MES1, PER1, I/U1 repräsentieren.
- Der Block UP0 besteht seinerseits aus den Blöcken CPU0, LOCMEM0, PERSEL0, BURDR0, IPC0, ALDET0 und CCL0. Auf ähnliche Weise besteht der Block UP1 aus den Blöcken CPU1, LOCMEM1, PERSEL1, BUSDR1, IPC1, ALDET1 und CCL1,
- die unter jedem Gesichtspunkt den entsprechenden Blöcken von UP0 gleichen. in den Blöcken BLOC0 und BLOC1 erkennt man die beiden entsprechenden logischen Gate-Schnittstellen der mit OR0 und OR1 bezeichneten OR- Schaltung, sowie zwei Zugriffsschaltungen mit Doppelschnittstelle, die mit ACC0 und ACC1 bezeichnet werden.
- Der Bus BUS0 ist ein paralleler asynchroner Bus, auf dem die nicht im Multiplex gebündelten Daten- und Adressensignale zusammen mit den zugeordneten notwendigen Steuersignalen vom Typ 'read/write' und 'ready', die von den peripheren Blocks kommenden lnterrupts usw., sowie verschiedene für den Typ des verwendeten Prozessors typische Zustandssignale übertragen werden. Die integritätsüberwachung für BUS0 erfolgt durch Zuordnung eines entsprechenden Paritätsbits zu jedem Informationsbyte für Daten oder Adressen.
- In Bild 2 ist der Bus BUS0 als bidirektional bezeichnet, aber in Wirklichkeit sind nur die für die Daten repräsentativen Signais bidirektional, während Adressen-, Steuer- und Statussignale immer die Richtung vom Prozessor zu den peripheren Schaltkreisen haben, mit Ausnahme der Signale 'ready' und 'interrupt', die in entgegengesetzter Richtung verlaufen.
- Der vom Block CPU0 kommende Bus BUS0 ist mit den Blöcken LOCMEM0, PERSEL0, IPC0, ALDET0 und dem Block BUSDR0 verbunden, der einen bidirektionalen Bustreiber bekannten Typs darstellt, einschließlich Sender/Empfänger. Vor Erweiterung zu den peripheren Blöcken ist der Block BUS0 in zwei identische Busse aufgeteilt, die mit BUS0L und BUS0R bezeichnet werden. Die Busse BUS0L und BUS0R sind mit der ersten Schnittstelle der Zugriffsschaltkreise ACC0 und ACC1 verbunden, sodaß UP0 auf die Blöcke BLOC0 und BLOC1 zugreifen kann.
- Auf ähnliche Weise ist BUS1 von Block CPU1 mit den Blöcken LOCMEM1, PERSEL1, IPC1, ALDET1 und dem Block BUSDR1 verbunden, der einen bidirektionalen Bustreiber bekannten Typs darstellt. Vor Erweiterung zu den peripheren Blöcken wird BUS1 in zwei identische Busse aufgeteilt, die mit BUS1L und BUS1R bezeichnet werden. Die Busse BUS1L und BUS1R werden mit der zweiten Gate-Schnittstelle der Zugriffsschaltkreise ACC1 und ACC0 verbunden&sub1; sodaß UP1 auf die Blöcke BLOC0 und BLOC1 zugreifen kann.
- Zur Vereinfachung beziehen sich die nachfolgenden Bemerkungen nur auf die zur Verarbeitungseinheit UP0 gehörigen Blöcke. Es versteht sich, daß die gleichen Bemerkungen auch für die zur Verarbeitungseinheit UP1 gehörigen Blöcke gelten, da die Einheiten UP0 und UP1 identisch sind.
- Der Block CPU0 stellt einen Mikroprozessor dar, der zusammen mit Bild 3 noch gründlicher besprochen wird. An die beiden Eingänge des Blocks CPU0 gelangt ein vom Block ALDETO kommendes nicht maskierbares lnterrupt-Signal, sowie das von Block CCL0 kommende Rückstellsignal RES0. An einem Ausgang des genannten Blocks kann das an den Block ALDETO gerichtete Alarmsignal MSM0 erscheinen.
- Der Block LOCMEM0 enthält hauptsächlich eine EPROM und eine RAM. In der EPROM werden die Selstdiagnose- und Startroutineprogramme der UP0 Einheit gespeichert. in der RAM wird das aktuelle Softwareprogramm zum Betrieb der Verarbeitungseinheit UP0 gespeichert, sowie örtliche Daten, die für die Verarbeitungseinheit UP1 nicht erforderlich sind, falls diese aktiv wird.
- Zur Decodierung der in BUS0 enthaltenen Information enthält der Block PERSEL0 logische Schaltkreise, die für jeden von der CPU0 in den peripheren Blöcken durchgeführten Einlauslesezugriff eine geeignete Kombination der Signale B0SEL0, B1SEL0 usw. bilden, die dann an die Blöcke BLOC0, BLOC1 usw. übertragen werden, damit diese selektiv aktiviert werden können. An einem Freigabeeingang von PERSEL0 kommt das vom Block CCL0 kommende Kopiewahisignal SEL0 an. Der Block PERSEL0 enthält auch einen (im Bild nicht gezeigten) synchronen Wiederholungsschaltkreis für die periodischen Einlesevorgänge in die peripheren Datenspeicher, deren Arbeitsweise weiter unten erklärt wird.
- Der Block ALDET0 ermöglicht die Wartung der Verarbeitungseinheit UP0 und enthält zu diesem Zweck spezielle Fehlererkennungsschaltkreise für die in dem Block UP0 auftretenden Störungen sowie zur Erzeugung der entsprechenden Alarme. Die genannten Schaltkreise sind mit normalen logischen Decodiererschaltungen aufgebaut, die für Experten in der Materie leicht zugänglich sind und deshalb in den Bildern nicht gezeigt werden. Der Block ALDET0 ist mit Hilfe einer bidirektionalen und von BUS0 verschiedenen Verbindung an den Bus BUS0 sowie den entsprechenden Block ALDET1 von UP1 angeschlossen. Die genannte Verbindung erlaubt es dem Block ALDET0, über alle in der gesamten Steuereinheit aufgetretenen Alarme informiert zu sein. Falls einer oder mehrere Alarme erkannt oder erfaßt werden, erzeugt der Block ALDET0 das nicht maskierbare lnterrupt-Signal NMI0, das an den Block CPU0 übertragen wird. Der Block ALDET0 ist über eine von AL0 angegebene unidirektionale Verbindung ebenfalls an den Block CCL0 angeschlossen.
- Der Block CCL0 enthält einen EPROM zur Wahl der Kopie mit Hilfe von Firmware, die ihn in die Lage setzt, sich wie ein asynchroner logischer periodischer Schaltkreis zur Erkennung der aktiven Kopie UP0 oder UP1 zu verhalten, wie aus den Erklärungen zu Bild 4 besser ersichtlich ist. Der genannte Block enthält außerdem einen Oszillator, der ein von dem im Block CPU0 erzeugten Taktsignal unabhängiges örtliches Taktsignal erzeugt, sowie einen Zähler, der ein Taktsignal von 16 ms zur Filterung verschiedener von ALDET0 kommender Alarme erzeugt.
- Ein von Block CCL1 erzeugtes Kopiewahisignal SEL1 und auch andere weiter unten beschriebene Signale erreichen über die Verbindung AL0 den Block CCL0. Der Block CCL0 erzeugt zur Wahl der aktiven Verarbeitungseinheit das Kopiewahlsignal SEL0, das an den Schalteingang der doppelten Gate- Schnittstelle des Zugriff-Schaltkreises ACC0 sowie an den Eingang von Block CCL1 übertragen wird. Das Signal SEL0 geht außerdem dem Block PERSEL0 zu. Unter bestimmten Voraussetzungen, die bei der Analyse von Bild 4 geklärt werden, erzeugt der Block CCL0 das Rückstell-Signal RES0, das an den Block CPU0 übertragen wird.
- Die Verarbeitungeeinheit UP0 ist über einen speziellen festen synchronen Kommunikationskanal direkt mit der Verarbeitungseinheit UP1 verbunden und umgekehrt. Die zum Aufbau des genannten Kanals erforderlichen Schaltkreise sind in den Blocks IPC0 und IPC1 untergebracht. Zusätzliche Einzelheiten für den Aufbau eines synchronen Kommunikationskanals sind nicht erforderlich, da die Konstruktion eines synchronen Kommunikationskanals den Experten in der Materie bekannt ist.
- Was die anderen Blöcke der duplizierten und von UP0 und UP1 unterschiedlichen Steuereinheit von Bild 2 betrifft, so muß man sich erinnern, daß wie oben bereits erwähnt, die Blöcke BLOC0 und BLOC1 jeweils schematisch einen der peripheren Blöcke MES0, PER0, I/U0 und MES1, PER1, I/U1 darstellen. Die genannte schematische Darstellung betrifft hauptsächlich nur die doppelten Gate-Schnittstellen der Zugriffsschaltkreise, die Schnittstellen zu den beiden Verarbeitungseinheiten UP0 und UP1 sowie verschiedene Schaltkreise zur Betriebssteuerung der genannten peripheren Blöcke.
- Zur Vereinfachung wird in der Folge nur der Block BLOC0 erklärt mit dem Verständnis, daß die gleichen Bemerkungen auch auf den Block BLOC1 anwendbar sind.
- Der Block BLOC0 enthält die logische Schnittstelle des OR-Schaltkreises OR0 mit zwei Eingängen, an dem das Einschaltsignal BOSEL0 sowie das ähnliche, vom Block PERSELL kommende Einschaltsignal BOSEL1 anliegen. Am Ausgang von OR0 erscheint das Einschaltsignal BOSEL, das an die duplizierte Zugriffsschnittstelle ACC0 übertragen wird. Diese erlaubt selektiven Zugriff auf die eine oder andere der beiden Verarbeitungseinheiten UP0 und UP1. Zu diesem Zweck enthält ACC0 bidirektionale (in den Bildern nicht gezeigte) Eingangswähler an denen jeweils BUS0L und BUS1R ankommen. Der Ausgang der Wähler ist mit den (in ACC0 enthaltenen und in den Bildern ebenfalls nicht gezeigten) Sendern/Empfängern verbunden, die eine Buserweiterung der aktiven Verarbeitungseinheit nach BLOC0 ermöglichen. Das von Block CCL0 erzeugte Kopiewahisignal erreicht den Wahleingang des Wählers. An dem in dem Block ACC0 enthaltenen Freigabeeingang des Senders/Empfängers erscheint das Einschaltsignal BOSEL.
- Der Block BLOC0 enthält außerdem einen Steuerschaltkreis, der einige wichtige weiter unten definierte und zur Integritätsüberwachung des genannten Blocks erforderliche Verfahren durchführt. im Falle einer schweren Störung eines oder mehrerer Schaltkreise des Blocks BLOC0 erzeugt der Steuerschaltkreis einen lnterrupt in Richtung des aktiven Prozessors. Der genannte Steuerkreis von BLOC0 ist mit normalen logischen Schaltkreisen aufgebaut, kann von Experten der Materie leicht zusammengestellt werden und wird deshalb in den Bildern nicht gezeigt.
- In Bild 3, wo alle gemeinsamen Elemente von Bild 1 und 2 mit den gleichen Symbolen bezeichnet werden, erkennt man die Blöcke CPU0 und BUSDR0 mit mehr Einzelheiten. Der Block CPU0 besteht im wesentlichen aus den Blöcken OSC, :2, MICm und MICs, PARGEN, COMP, FF0, FF1, FF2, TR1 und TR2. Der Block BUSDR0 enthält die Blöcke T1, T2, TR3 und TR4. In Bild 3 erkennt man ebenfalls den Block LOCMEM0.
- Der Block OSC stellt einen Lokaloszillator hoher Stabilität dar, der das Taktsignal für die Verarbeitungseinheit UP0 zur Verfügung stellt. Block :2 ist ein einfacher Teiler, der das von OSC erzeugte Taktsignal durch zwei teilt, bevor es den Takteingang der Blöcke MICm, MICs, FF0 und COMP erreicht. Die Blöcke MICm und MICs enthalten zwei identische Mikroprozessoren INTEL 80C186 samt zugehörigen VLSIs, die die Prozessorvorgänge unterstützen.
- Der Block FF0 stellt eine Baugruppe mit flip-flops dar, an deren Eingang das nicht maskierbare lnterruptsignal NMI0, verschiedene maskierbare lnterruptsignale INT0, verschiedene Signale DMA0 für direkten Zugriff auf den Speicherblock LOCMEM0 und das von den periheren Blocks ausgehende Bereitschaftssignal DRY0 anstehen. Die genannten Signale werden durch den Block FF0 synchronisiert und dann an die Eingänge von MICm und MICs weitergeleitet. An den letzteren steht auch das Signal RES0 an.
- Der Block COMP stellt einen Schaltkreis dar, der das einwandfreie Arbeiten des Mikroprozessoren MICm, MICs sowie des Lokaloszillators überwacht und im Fehlerfall das interne Alarmsignal MSM0 erzeugt. Zu diesem Zweck werden die beiden Busse der mit Bm und Bs bezeichneten Mikroprozessoren MICm und MICs an den Eingang von COMP weitergeleitet.
- Die Daten- und Adressenleitungen nur des Busses Bs gehen an den Eingang des Blocks PARGEN weiter, der einen Paritätsbitgenerator darstellt, dessen Ausgang ein Bus BS' ist, der sich von dem Bus Bs nur dadurch unterscheidet, daß er zusätzliche Zeilen für Daten- und Adressenparitätsbits enthält.
- Die Adressenzeilen der Busse Bm und Bs' sind mit den Eingängen der Blöcke FF1 und FF2 verbunden, die verschiedene Register zur Speicherung der genannten Adressen während eines Ein/Auslesevorgangs darstellen. Die Datenzeilen der Busse Bm und Bs' sind mit einem ersten Ende der Blöcke TR1 und TR2 verbunden, die gewöhnliche Sender/Empfänger darstellen. Am Ausgang der Blöcke FF1 und FF2 werden die Adressenzeilen parallel untereinander verbunden und formen einzelne Adressenzeilen des Busses BUS0, einschließlich der Zeilen für Paritätsbits im Bus Bs'. Auf ähnliche Weise werden die Datenzeilen am zweiten Ende der Sender/Empfänger TR1 und TR2 parallel miteinander verbunden und formen einzelne Adressenzeilen des Busses BUS0, einschließlich der Zeilen für Paritätsbits im Bus Bs'. Zur Vereinfachung werden in der Darstellung von BUS0 die Zeilen für Steuerungsund Zustandssignale des Mikroprozessors nicht gezeigt, sind aber vorhanden.
- Die Adressenzeilen von BUS0 sind mit dem Eingang der Blöcke T1 und T2 verbunden, die einen Satz von Treibern für die Busse BUS0L und BUS0R darstellen. Die Datenzeilen von BUS0 sind mit dem Eingang der Blöcke TR3 und TR4 verbunden, die einen Satz von Sendern/Empfängern für die genannten Busse BUS0L und BUS0R darstellen. Die Steuer- und Zustandssignale des Busses Bm bestimmen die richtige Arbeitsrichtung der Sender/Empfänger TR1, TR2, TR3 und TR4 in Übereinstimmung mit dem von CPU0 durchgeführten Typ von Ein/Auslesezugriff.
- Bei Betrieb der duplizierten Verarbeitungseinheit in dem Beispiel von Bild 1, 2 und 3 kann jeder der beiden Steuerkanäle UC0 und UC1 entweder als aktive Kopie oder als Reservekopie konfiguriert werden. Die Wahl der Konfiguration wird im wesentlichen von den Blöcken CCL0 und CCL1 vorgenommen.
- Die aktive Verarbeitungseinheit steuert alle anderen Blöcke der Anlage, einschließlich der Kopie zur Reservesteuerung, während gleichzeitig der Zugriff der Reservesteuerung auf periphere Blöcke verhindert wird. Wie man in Bild 1 erkennen kann, ist dies deswegen möglich, weil die beiden Steuereinheiten UC0 und UC1, obwohl sie zwar als zwei individuelle Einheiten angegeben sind, in Wirklichkeit durch die Querverbindungen der peripheren Blöcke zu beiden Verarbeitungseinheiten als eine einzige Steuereinheit konfiguriert sind, die aus individuellen Blöcken besteht, die alle dupliziert sind und auf die die z.Zt. aktive Verarbeitungseinheit selektiv zugreifen kann.
- Diese Schaltkreisstruktur macht die duplizierte Einheit extrem zuverlässig, da im Störungsfall ein beliebiger Teil rasch ersetzt werden kann, ohne daß die gesamte individuelle Steuereinheit wie vorher umgeschaltet werden muß. Die übrigen Blöcke der mit der duplizierten Steuereinheit verbundenen Anlage können der Reihe nach dupliziert werden oder nicht. In Bild list nur der Block TEL nicht dupliziert. Andernfalls würde die Bestückung eines weiteren Paars peripherer Einheiten vom PER0/PER1 Typ als Schnittstelle zu den duplizierten Blöcken notwendig werden.
- Was den Block CPU0 anbetrifft, so arbeiten die beiden darin enthaltenen Mikroprozessoren INTEL 80C186 in einer mikrosynchronisierten Betriebsart und stellen das Herz der Verarbeitungseinheit UP0 dar. Um die Mikrosynchronisierung sicherzustellen, haben die Pfade der Taktsignale vom Oszillator OSC zu den beiden Mikroprozessoren die gleiche Länge. Zusätzlich überprüft ein geeigneter Schaltkreis innerhalb des Blocks COMP ständig das Vorhandensein des Taktsignals. Außerdem werden alle an den Eingängen zum Mikroprozessor anliegenden Steuersignale, mit Ausnahme von RES0, zuerst mit dem genannten Taktsignal synchronisiert. Die einwandfreie Mikrosynchronisierung der beiden Mikroprozessoren wird von dem Block COMP gesteuert, der Schaltkreise enthält, die die Identität der von von den beiden Bausteinen erzeugten Adressen, Daten und Steuersignalen ständig überprüfen. Eine fehlende Übereinstimmung der genannten Signale wird als Störung interpretiert. Der Block COMP enthält außerdem einen Überwachungszeitgeber, der den Zustand 'offene Schleife' erkennen kann.
- Die verschiedenen Störungssignale werden innerhalb COMP in eine OR- Schaltung eingelesen. Daraufhin wird das Signal MSM0 erzeugt, das den internen Alarm des Blocks CPU0 bildet, der zunächst an den Block ALDET0 gelangt und danach an die Blöcke CCL0 und ALDET1 weitergegeben wird.
- Die in dem Block LOCMEM. enthaltenen RAMs und EPROMs sind so dimensioniert, daß die Speicherung eines zusätzlichen Paritätssignals für jeweils 8 gespeicherte Worte möglich ist. Die genannten Speicher sind auch durch einen anderen Redundanzcode geschützt, der eine lntegritätsprüfung ihres inhaltes ermöglicht. Dieser Redundanzcode schützt die Integrität von jeweils 64 Code- oder Datenbytes.
- Bei Betrieb des Blocks ALDET0 muß bedacht werden, daß er es der Verarbeitungseinheit AP0 ermöglicht, Wartungsverfahren für den gesamten Gerätesatz durchzuführen. Zu diesem Zweck sind in dem Block ALDET0 die folgenden hauptsächlichen Schaltkreise zur Störungserkennung enthalten, die jedoch in den Bildern nicht gezeigt sind, da sie von einem Experten in der Materie leicht aufgebaut werden können:
- - ein Schaltkreis zur Erkennung von Paritätsfehlern bei der Durchführung von Auslesevorgängen durch Adressierung der im Block LOCMEM0 enthaltenen Speicher oder Adressierung eines beliebigen peripheren Blocks BLOC0 oder BLOC1;
- - ein Schaltkreis, der den Ausfall des normalerweise zur aktiven Verarbeitungseinheit übertragenen Bereitschaftssignals RDY0 erkennt;
- - ein OR-Schaltkreis für alle in dem Block ALDET0 erkannten oder dort ankommenden Alarme, dessen Ausgang das an den Mikroprozessor CPU0 gerichtete nicht maskierbare lnterruptsignal NMI0 ist.
- - geeignete Fangschaltungen, die im Alarmfall die auf dem BUS0 herrschende Bitkonfiguration in einem speziellen Fangregister speichern, sodaß der bei Auftreten des Alarms existierende Vorgangstyp erkennbar ist. Außerdem werden die Einzelheiten des von ALDET0 erkannten Alarms im Fangregister gespeichert.
- An den verschiedenen Schaltkreisen des Blocks ALDET0 trifft die gesamte Information für Störungen und Zugriffsfehler ein, die in einem oder mehreren Blöcken der gesamten duplizierten Einheit oder in den restlichen Blöcken der Anlage (TEL) einen Alarmzustand ausgelöst haben. Diese Information wird wie folgt weitergeleitet: im Falle eines Fehlers in der Verarbeitungsschaltung mit Hilfe des Signals MSM0; durch Decodierung der auf BUS0 vorhandenen Daten bei gleichzeitigem Empfang eines Interrupt-Signals; und schließlich über eine bidirektionale Verbindung mit dem Block ALDET1, falls ein Block der Einheit UP1 gestört ist.
- Bei Auftreten bestimmter Fehler in einem peripheren Block kann es vorkommen, daß die Verarbeitungseinheit UP0 sich blockiert, weil sie auf ein Ereignis wartet, das niemals eintritt. Die Erkennung des Bereitschaftssignals RDY0 macht es dem Prozessor jedoch möglich, diesen schwerwiegenden Nachteil zu beseitigen. Nach Erkennung von einem oder mehreren Alarmen erzeugt der Block ALDET0 das nicht maskierbare lnterruptsignal NMI0, das an den Prozessor CPU0 übertragen wird. Dieser erkennt die Einzelheiten des Alarmtyps durch Auslesen der zugehörigen Information aus den Fangregistern von ALDET0 oder direktes Auslesen der BUS0-Daten.
- Bei Betrieb des Konfigurationskontrollblocks CCL0 sollte man sicherstellen, daß die folgenden von Block ALDET0 kommenden Signale über die Verbindung AL0 übertragen werden:
- - die Signale MSM0 und MSM1, die die Signale für interne Störungen der entsprechenden Prozessoren CPU0 und CPU1 darstellen;
- - ein Alarmsignal für Störungen in der Stromversorgung von Verarbeitungseinheit UP1;
- - zwei der über BUS0 laufenden Bits, die in codierter Form die Software- Anfragen für den für UP0 gewünschten Betriebszustand, aktiv oder Reserve, darstellen;
- - ein 'power-up reset' genanntes Signal, das nach Einschalten der zur Verarbeitungseinheit UP1 gehörigen Stromversorgung erzeugt wird und die Initialisierung der internen Logik des Blockes CCL0 einleitet.
- Der Block CCL0 analysiert alle genannten Signale und entscheidet, ob seine eigene Verarbeitungseinheit aktiv oder in Reserve sein soll, und erzeugt zu diesem Zweck das Signal SEL0, das zur Steuerung der Wahl, ob die aktive Kopie oder die Reservekopie der Verarbeitungseinheit UP0 oder UP1 arbeiten soll, nur an die peripheren Blöcke von UC0 weitergeleitet wird. Eine andere Funktion des Blockes CCL0 ist die Filterung von möglichen Störungen auf dem Eingangssignal durch Verwendung eines vom internen Taktsignal des Blocks abgeleiteten geeigneten Taktsignals. Der Hauptzweck der genannten Filterung ist es, den Ablauf eines Zeitintervalis von 16 ms möglich zu machen, bevor die im EPROM zur Wahl der Kopie gespeicherte Firmware auf einen von CPU0 kommenden Alarm reagieren kann. Während dieses Zeitintervalis versucht die Software, den Alarm zu löschen.
- Der zu CCLO gehörende EPROM zur Wahl der Kopie simuliert, wie bereits erwähnt, einen asynchronen sequentiellen logischen Schaltkreis. Zu diesem Zweck stehen an dem Adressenbus des EPROM die für den Block CCL0 bestimmten Signale an. Die im EPROM enthaltenen und bei vorherbestimmten Konfigurationen der Adressenbits ausgelesenen Worte stellen die von dem Block CCL0 ausgehenden Signale dar. Bekanntlich ist es gute Konstruktionspraxis, den EPROM vqllständig und auf geeignete Weise aufzufüllen, sogar bei solchen Adressenbitkonfigurationen, die keinem logischen Betriebszustand der duplizierten Einheit entsprechen. Der Grund dafür ist, daß besonders bei Übergängen des Signals auf die Adressenzeilen theoretisch ein vorübergehendes Auslesen jeden EPROM-Wortes möglich ist. Es ist absolut erforderlich, daß die genannten vorübergehend ausgelesenen Worte kein Ausgangssignal des CCL0 erzeugen, weil dadurch die bereits existierende Konfiguration modifiziert werden könnte.
- Eine ins einzelne gehende Erklärung für die Arbeitsweise der Firmware für Kopiewahl findet sich in den Illustrationen für das Diagramm sequentieller logischer Zustände in Bild 4.
- Hierbei muß bedacht werden, daß die von Block CCL0 getroffene Entscheidung durch das Signal SEL0 aktiviert wird, das ausschließlich an die zur Steuereinheit UC0 gehörenden peripheren Blöcke vom BLOC0-Typ ausgesendet wird. Bei duplizierter Betriebart wird die Entscheidung des Blocks CCLI dadurch aktiviert, daß das Signal SEL1 nur an die zur Steuereinheit UC1 gehörenden peripheren Blöcken ausgesendet wird. Dadurch ist es möglich, die beiden Kopien der duplizierten Steuereinheit physisch voneinander getrennt zu halten, und dadurch die Zuverlässigkeit der Anlage zu erhöhen. Die logischen Werte der Signale SEL0 und SEL1 müssen deckungsgleich sein, um den Zugriff der aktiven Verarbeitungseinheit auf die peripheren Blöcke beider Steuereinheiten zu ermöglichen.
- Für den Block PERSEL0 muß spezifiziert werden, daß der synchrone duplizierte Schaltkreis für das periodische Einlesen in den periheren Datenspeicher im wesentlichen aus den oben genannten logischen Decodierschaltkreisen für die Information BUS0 sowie einem Hilfsregister besteht, in das CPU0 eine Steuerkonfiguration aus zwei Bits einlesen kann, die die folgende Bedeutung haben:
- "00" Durchführung eines Einlesevorgangs in die beiden peripheren Datenspeicher MES0 und MES1, sowie eines Auslesevorgangs nur im Speicher MES0;
- "01" Durchführung eines periodischen Ein/Auslesevorgangs im peripheren Datenspeicher MES0;
- "10" Durchführung eines periodischen Ein/Auslesevorgangs im peripheren Datenspeicher MES1;
- "11" Durchführung eines Einiesevorgangs in die periheren Datenspeicher MES0 und MES1 sowie eines Auslesevorgang nur im Speicher MES1.
- Die oben genannten logischen Schaltkreise decodieren den Inhalt des Hilfsregisters zusammen mit den auf BUS0 vorhandenen Signalen&sub3; wobei jedesmal eine geeignete Signalkombination vom Typ B0SEL0 und B1SEL0 zur Aktivierung der vorgewählten peripheren Schaltkreise entsteht, einschließlich der Dateien MES0 und/oder MES1. Genauer gesagt erzeugt der Block PERSEL0 ein Paar von Freigabesignalen für die beiden Speicher MES0 und MES1, falls das Register die Konfiguration 00 oder 11 enthält. Falls der Zugriff von MES0 und/oder MES1 unterschiedliche periphere Schaltkreise betrifft, wird der Inhalt der Hilfsregister nicht in Betracht gezogen.
- Der Decodiervorgang von PERSEL0 wird durch das Wahlsignal SEL0 für die aktive Kopie eingeschaltet, um zu vermeiden, daß SEL0 weiterhin den Zugriffsschaltkreis ACC0, ACC1 der peripheren Blöcke BLOC0 und/oder BLOC1 steuert, wenn die Verarbeitungseinheit auf Reserve geschaltet ist.
- Aus den oben gemachten Bemerkungen kann man ableiten, daß die Erzeugung der Signale SEL0 und SEL1 eine unzweideutige Definition der Rollen der beiden Verarbeitungseinheiten ermöglicht. Genauer gesagt, die auf Reserve geschaltete Einheit bleibt solange in Reserve, bis wegen eines Fehlers in der aktiven Kopie eine Anfrage zum Ersatz der bisher aktiven Kopie verlangt wird. Eine solche Auslegung, die auf den ersten Blick unwirtschaftlich erscheinen könnte, da ein Betriebselement bei Normalbetrieb unbenutzt gelassen wird, erlaubt in Wirklichkeit eine wirksame und zuverlässige Steuerung des gesamten Gerätesatzes mit einer einzelnen Verarbeitungseinheit.
- Der bidirektionale Kommunikationskanal zwischen den Blöcken IPC0 und IPC1 wird von der aktiven Verarbeitungseinheit während bestimmter in der Reserveeinheit durchzuführender Vorgänge verwendet. Er wird z.B. für die Überwachungsvorgänge bei der Übertragung verschiedener Programme und zur Aktivierung von Fehlerdiagnoseverfahren benutzt. Der Kommunikationskanal benutzt das HDLC Protokoll, da dieses zum Schutz der zwischen den Steuereinheiten UC0 und UC1 übertragenen Information besonders geeignet ist.
- Bei Betrieb der Blöcke BLOC0 und BLOC1, die schematisch die peripheren Blöcke I/U0, PER0, MES0 und I/U1, PERI, MESI darstellen, muß man beachten, daß diese die Zugriffs- und Schnittstellenschaltkreise in Richtung der Verarbeitungseinheiten UP0, UP1 und der Steuer- und Wartungseinheiten für die genannten peripheren Blöcke bereits enthalten.
- Aus Bild 2 ist ersichtlich, daß jeder Block vom Typ BLOC0 und BLOC1 mit den beiden Verarbeitungseinheiten über zwei physisch getrennte Zugriffspfade verbunden ist, wobei ein erster Pfad durch die Busse BUS0L und BUS0R dargestellt wird, und ein zweiter Pfad durch die Busse BUS1R und BUS1L. Auf diese Weise haben Ereignisse beliebigen Typs, auch transitorische Ereignisse, die irgendwo in der Anlage erscheinen, keine Möglichkeit, gleichzeitig beide Zugriffspfade zu beeinflussen, und folglich können diese Ereignisse nur mit größten Schwierigkeiten die Blöcke BLOC0 und BLOC1 vollständig außer Betrieb setzen und damit den gesamten Gerätesatz paralysieren.
- Zur Vereinfachung gelten die folgenden Bemerkungen nur für den Block BLOC0, sind aber analogerweise auch auf den Block BLOC1 anwendbar, da diese Blöcke ja gleichwertig sind.
- Wie bereits oben erwähnt, wählt das Kopiewahisignal SEL0 eines der von der einen oder anderen Verarbeitungseinheit kommenden Signale, der gewählte Bus kann aber nur dann bis in den Block BLOC0 erweitert werden, wenn das Signal BOSEL aktiv ist, d.h. wenn die Verarbeitungeinheit zu diesem Zeitpunkt eines der beiden Signale BOSEL0 oder BOSEL1 erzeugt und damit den Zugriff zum peripheren Block ermöglicht. In diesem Fall aktiviert BOSEL zusammen mit dem auf dem gewählten Bus vorhandenen Steuer- und Zustandssignal die richtige Richtung der Sender/Empfänger von ACC0, je nach dem Typ des Ein/Auslesezugriffs.
- Die Hauptaufgaben des in BLOC0 vorhandenen Steuerschaltkreises zur Integritätsüberwachung sind:
- - Überprüfung einwandfreier Parität der Adressenbits während der Ein/Auslesevorgänge, wobei im Falle eines Paritätsfehlers das Einlesesignal zur Vermeidung unvorhergesehener Vorgänge blockiert wird,
- -Überprüfung einwandfreier Parität der Datenbits nach Einlesevorgängen, und
- -Überprüfung der Folgerichtigkeit der von der Verarbeitungseinheit abgegebenen Steuersignale sowie der zugehörigen Signale, die den Zugriffstyp angeben, den der Prozessor verwenden will.
- Bei schwerwiegenden Fehlern eines oder mehrerer BLOC0-Schaltkreise erzeugt der interne Steuerschaltkreis einen lnterrupt in Richtung aktiver Prozessor und die den Fehlertyp betreffende Information wird in einem Register von BLOC0 gespeichert, wo sie in der Folge vom aktiven Prozessor ausgelesen werden kann.
- Mit Bezug auf die spezifischen Verfahren der individuellen peripheren Blöcke in Bild 1 muß erwähnt werden, daß die Blöcke I/U0, MES0 und PER0 mit den Blöcken I/U1, MES1 und PER1 identisch sind und das deswegen eine für alle gültige einzelne Beschreibung gegeben wird.
- Die Blöcke MES0 und MES1 enthalten jeweils eine RAM-Bank zur Speicherung von grundsätzlichen Daten, d.h. derjenigen Information, die es der aktiven Verarbeitungseinheit ermöglicht, alle Funktionen der Anlage zu steuern. Die genannte Information enthält z.B. Konfigurationsdaten des Systems und Zwischendaten von Verarbeitungsvorgängen
- Bei Normalbetrieb, d.h. wenn die Blöcke MES0 und MES1 voll arbeitsfähig sind, ist die Verarbeitungseinheit UP0 dem Block MES0 und die Einheit UP1 dem Block MES1 zugeordnet. Angenommen, daß die Einheit UP0 aktiv ist, liest der Mikroprozessor von UP0 die notwendigen Daten synchron aus MES0 aus und in MES1 und MES0 ein. Im Falle einer Umschaltung wegen Störungen in UP0 liest die Ersatzverarbeitungseinheit die Daten synchron aus MES1 aus und in MES1 und MES0 ein. Diese Betriebsart erlaubt bemerkenswerte Ersparnisse realer Verabeitungszeit der aktiven Verarbeitungseinheit, besonders in dem Zeitraum unmittelbar nach ihrer Aktivierung. Tatsächlich findet der gerade aktivierte
- Prozessor in seiner peripheren Datenspeicherbank bereits die zur Fortführung seiner Tätigkeit erforderlichen auf den letzten Stand gebrachten Daten vor.
- Die peripheren Blöcke I/U0 und I/U1 enthalten identische Schnittstellen in Richtung der Blöcke TER0 und TER1. Der letztere enthält entweder Standard Eingangs/Ausgangs-schnittstellen, z. B. für Personalcomputer, Anzeige- oder Warnlampenfelder, Fernwirkrelais oder anderes. Auf jeden Fall ist in Abhängigkeit von dem durch TER0 oder TER1 repräsentierten Geräte- oder Bausteintyp die Erstellung der genannten Schnittstellen für Experten in der Materie problemlos und erfordert deshalb keine gesonderte Beschreibung.
- Die peripheren Blöcke PER0 und PER1 enthalten identische Schnittstellen in Richtung des Blocks TEL, der in nicht begrenzender Weise eine Anzahl Fernsprechgeräte darstellt. Die genannten Schnittstellenschaltungen sind den Experten in der Materie bereits bekannt und werden deshalb nicht gezeigt.
- In Bild 4 wird das Ablaufdiagramm der hauptsächlichen sequentiellen logischen Zustände der in Block CCL0 enthaltenen EPROM für die Kopiewahl der gespeicherten Firmware gezeigt. Man erhält ein entsprechendes Diagramm für die im Block CCL1 enthaltene Kopiewahl-Firmware, wenn man in Bild 4 die Ausdrücke UP0, CPU0. SEL0 durch UP1, CPU1 und SEL1 ersetzt. Das Diagramm ist nicht weiter mit der Einführung logischer Zustände mit widersprüchlichen Konfigurationen belastet, die jedenfalls nur während sehr kurzer Übergangsvorgänge möglich sind, z.B. diejenigen Konfigurationen, in denen beide Verarbeitungseinheiten UP0 und UP1 aktiv oder in Reserve sind. Die Firmware sieht natürlich die genannten Situationen vor und reagiert entsprechend.
- Im Diagramm werden im wesentlichen drei logische Zustände gezeigt, d.h. 'Einschaltung', 'UP0-Einheit aktiv' und 'UP0-Einheit in Reserve'. Das Signal SEL0 hat für 'UP0 aktiv' den Wert '0' und für 'UP0 in Reserve' den Wert '1'. Ausgehend von dem Einschaltzustand ist der nächst folgende Zustand 'UP0 aktiv', falls die Zustände 'Einheit UP1 abgeschaltet' oder 'Einheit UP1 in Reserve' auftreten. Falls die Einheit UP1 aktiv ist, ist der auf die Einschaltung folgende Zustand 'Einheit UP0 in Reserve'. In allen Fällen erzeugt die Firmware vor der Umschaltung von dem Einschaitzustand auf die beiden nachfolgenden Zustände das Rückstellsignal RES0 des Prozessors CPU0. Angenommen, der nächste Zustand sei 'UP0 aktiv'. Falls kein Alarm in der Einheit UP0 vorliegt, bleibt in diesem Fall die genannte Einheit auf unbestimmte Zeit in diesem Betriebszustand. Falls aber ein Alarm in UP0 erkannt wird, geht die Einheit in den Zustand über, in welchem sie nach Rückstellung von CPU0 in Reservestellung sein wird.
- Die Einheit UP0 bleibt auf unbestimmte Zeit im Reservezustand, falls kein Alarm in der aktiven Einheit UP1 auftritt. Falls in UP1 ein Alarm auftritt, geht die Einheit UP0 nach Rückstellung von CPU0 in den aktiven Zustand über. Falls UP0 auf Reserve geschaltet ist, in der aktiven UP1 kein Alarm besteht und in der auf Reserve geschalteten UP0 ein Alarm erkannt wird, bleibt die Einheit UP0 in Reserve, aber die Firmware erzeugt ein Rückstellsignal für den Prozessor CPU0.
- Falls in keiner der beiden Einheiten UP0 und UP1 ein Alarm aufgetreten ist, kann die in der Verarbeitungseinheit enthaltene Software die Firmware von CCL0 veranlassen, die Einheit UP0 nach Rückstellung von CPU0 von 'aktiv' auf 'Reserve' umzuschalten oder umgekehrt. Diese Anfrage wird so durchgeführt, daß man die beiden oben genannten beiden Zustandsbits an die Adressenzeile des EPROMS für das Kopiewahisignal weiterleitet.
- Die in dem nicht begrenzenden Beispiel beschriebene duplizierte Steuereinheit dupliziert zwar die Information in der Einlesephase, führt aber keine Überwachung der Datensynchronisierung in den beiden Kopien der peripheren Datenspeicher durch. Dabei muß definiert werden, daß unter Datensynchronisierung die perfekte Übereinstimmung des Inhalts der beiden Speicher zu verstehen ist. Die genannte Überprüfung ist unmittelbar nach dem Umschalten einer Verarbeitungseinheit von 'Reserve' auf 'aktiv' absolut erforderlich. Die Überprüfung fällt notwendigerweise in die Verantwortung eines geeigneten Unterprogramms zur Überprüfung, ob der Inhalt der beiden Speicher übereinstimmt. Deshalb entlastet der Typ von Realisierung des Beispiels die Software nicht vollständig von allen mit der lnformationsduplizierung zusammenhängenden Vorgängen. Die genannte Realisierung ist das Ergebnis eines Kompromisses zwischen der Erfordernis, reale Verarbeitungszeit zu ersparen und der Erfordernis, die Hardware der duplizierten Steuereinheit nicht übermäßig kompliziert zu gestalten.
- Bild 2 und die obige Beschreibung zeigen deshalb eine Variante der duplizierten Steuereinheit, die den Gegenstand der vorliegenden Erfindung bildet und darin besteht, den Schaltkreis zur synchronen Duplizierung des periodischen Einlesevorganges der in den Blöcken PERSEL0 und PERSEL1 enthaltenen peripheren Datenspeicher so zu modifizieren, daß jedesmal, wenn die aktive Verarbeitungseinheit einen Auslesezugriff in ihrer eigenen peripherischen Daten-RAM durchführt, synchron der gleiche Typ von Zugriff in der anderen Kopie der gleichen peripherischen Datei durchgeführt wird. Die ausgelesenen Worte werden ebenfalls untereinander verglichen und im Falle einer Differenz wird ein Alarmsignal erzeugt, das über die Böcke ALDET0 oder ALDET1 an den jeweiligen Prozessor übertragen wird, der daraufhin die erforderlichen Wartungsarbeiten anlaufen läßt.
- Eine auf geeignete Weise modifizierte synchrone Duplilkationsschaltung für die in Frage kommende Variante unterscheidet sich von der in dem nicht begrenzenden Beispiel beschriebenen Variante hauptsächlich in einigen leichten Veränderungen in den logischen Decodierschaltkreisen der Blöcke PERSEL0 und PERSEL1 und durch einen zusätzlichen Vergleicher für die ausgelesenen Worte.
- Genauer gesagt, die genannte modifizierte Decodierschaltung erkennt einen Auslezugriff der aktiven Verarbeitungseinheit auf ihren eigenen peripheren Daten-RAM und erzeugt aus diesem Grund das Signalpaar BOSEL0, BISEL0, die beide die Datenspeicher MES0 und MES1 aktivieren. Diese Modifizierungen sind den Experten in der Materie bekannt und weitere Einzelheiten sind deshalb nicht erforderlich.
- Eine in Übereinstimmung mit der in Frage kommenden Variante duplizierte Steuereinheit erlaubt eine weitere Ersparnis realer Verarbeitungszeit des aktiven Prozessors. Tatsächlich ist es nicht länger notwendig, durch die Software die Datensynchronisierung in den beiden peripheren Datenspeichern MES0 und MES1 nach jedem Umschalten zwischen den beiden Verarbeitungseinheiten wegen einer Störung überprüfen zu lassen.
- Aus der gegebenen Beschreibung und der Information bezüglich des benutzten speziellen Mikroprozessors, den man ohne weiteres in der vom Hersteller zur Verfügung gestellten Literatur findet, sollten Experten in der Materie ohne weiteres in der Lage sein, sowohl die Hardware als auch die Software für die duplizierte Steuereinheit zur Verfügung zu stellen, die den Gegenstand der vorliegenden Erfindung bildet.
Claims (6)
1. Duplizierte Steuer- und Verarbeitungseinheit für
Telekommunikations-einrichtungen, bestehend aus zwei identischen, mit dem
übrigen Teil der Einrichtung verbundenen Steuereinheiten, wobei jede
Steuereinrichtung eine Verarbeitungseinheit enthält, die die für den Betrieb und
die Steuerung der Einrichtung erforderlichen Verarbeitungen vornimmt, sowie
mehrere, mit dem Bus der Verarbeitungseinheit verbundene periphere
Schaltungen, die letztere bei der Abwicklung ihrer Steuerfunktion unterstützen,
wobei die Verarbeitungseinheit einen Taktsignalgenerator, zwei miteinander
'mikrosynchronisierte', parallelgeschaltete periphere Schaltungen, einen
einzigen zusammenfassenden Leitungsbus für die Paritätsprüfung sowie eine
die Steuersoftware enthaltende Daten-RAM aufweist, sowie die genannten
peripheren Schaltkreise einschließlich Schnittstellen zwischen der
Verarbeitungseinheit und den übrigen, nicht zur genannten duplizierten
Steuereinheit gehörenden Teilen der Einrichtung, wobei die genannten
peripheren Schaltkreise wenigstens eine Daten-RAM enthalten, die die für den
Betrieb der Einrichtung erforderlichen Daten sowie die während des Betriebs
erarbeiteten Daten enthält, sowie einen Massenspeicher und Schnittstellen zu
I/O-Schaltkreisen, dadurch gekennzeichnet:
- daß jede Verarbeitungseinheit (UP0, UP1) eine Schaltung (CCL0,
CCL1) zur Konfigurationssteuerung aufweist, die ein Auswahlsignale (SEL0,
SEL1) zur Konfigurationswahl erzeugt, das den zur eigenen Steuereinheit (UC0,
UC1) gehörenden peripheren Schaltungen (BLOC0, BLOC1) zugeführt wird und
dessen logischer Wert die Wahl der aktiven Verarbeitungseinheit (UP0, UP1)
bestimmt, die die Steuerung der gesamten Einrichtung übernimmt;
- daß jede periphere Schaltung (I/U0, PER0. MES0. I/U1, PER1,
MES1) eine Zugriffsschaltung mit doppeltem Zugang (ACC0, ACC1) umfaßt, mit
deren Zugängen die Busse (BUS0, BUS1) beider Verarbeitungseinheiten (UP0.
UP1) verbunden sind, wobei die genannte Zugriffsschaltung außerdem einen
Steuereingang besitzt, an dem das genannte Kopiewahlsignal (SEL0, SEL1)
anliegt, das den elektrischen Durchgang der Busleitungen der aktiven
Verarbeitungseinheit sowie die Unterbrechung der Busleitungen der auf
Reserve geschalteten Verarbeitungseinheit steuert,
- daß die aktive Verarbeitungseinheit (UP0, UP1) auf eine beliebige
periphere Schaltung der eigenen Steuereinheit (UC0, UC1) oder
unterschiedslos auf die entsprechende duplizierte Einheit zugreift, wobei sie der
peripheren Schaltung, auf die sie zugreifen möchte, ein Aktivierungssignal
(BOSEL.., B1SEL0 ..) zusendet, das von der genannten Zugriffsschaltung
(ACC0, ACC1) zur Erweiterung des Busses der aktiven Verarbeitungseinheit
verwendet wird, und
- daß die aktive Verarbeitungseinheit synchrone periodische
Einlesezyklen in den den beiden Steuereinheiten (UC0, UC1) zugehörenden
Daten-RAMS (MES0, MES1) durchführt, sodaß die auf Reserve geschaltete
Verarbeitungseinheit nach Umschaltung auf aktiven Betrieb eine rasche
Rückgewinnung des Betriebssynchronismus durchführen kann.
2. Duplizierte Steuer- und Verarbeitungseinheit in Übereinstimmung mit
Anspruch 1, dadurch gekennzeichnet:
- daß die genannte aktive Verarbeitungseinheit sowohl in den
Auslese- als auch in den Einlesezyklen ein Paar der genannten peripheren
Wahisignale (BOSEL.., B1SEL..) erzeugt, die an den Zugriffsschaltkreis (ACC0,
ACC1) der genannten, zu den beiden Steuereinheiten (UC0, UC1) gehörenden
peripheren Daten-RAMs (MES0, MES1) gerichtet sind, wo daraufhin synchrone
Einlesezyklen und synchrone Auslesezyklen in den beiden peripheren Daten-
RAMS durchgeführt werden, sodaß die auf Reserve geschaltete
Verarbeitungseinheit nach Umschaltung auf aktiven Betrieb eine rasche
Rückgewinnung des Betriebssynchronismus durchführen kann; und
- daß die von den duplizierten Daten-RAMs (MES0, MES1) synchron
ausgelesenen Worte miteinander verglichen werden, sodaß im Falle einer
Differenz ein Alarmsignal erzeugt wird, das dazu verwendet wird, mit Hilfe der
aktiven Verarbeitungseinheit die erforderlichen Wartungsarbeiten einzuleiten.
3. Duplizierte Steuer- und Verarbeitungseinheit in Übereinstimmung mit
Anspruch 1 oder 2, dadurch gekennzeichnet:, daß jede der genannten
Verarbeitungseinheiten außerdem folgendes enthält:
- einen peripheren Wählerschaltkreis (PERSEL0, PERSEL1) der die
vorhandene Information auf dem Bus (BUS0, BUS1) der Verarbeitungseinheit
decodiert, die das genannte Wahlsignal (B0SEL.., B1SEL..) für die
Zugriffsschaltungen (ACC0, ACC1) der peripheren Schaltkreise erzeugt;
- einen Schaltkreis zur Erkennung von Störungen und Erzeugung
eines Alarms (ALDET0, ALDET1), der die Verarbeitungseinheit, von der er
einen Teil bildet, über das Vorhandensein eines internen Alarmzustandes in der
eigenen Verarbeitungseinheit oder in den wichtigeren Schaltkreisen des
gesamten Satzes von Telekommunikationseinrichtungen informiert, sodaß die
aktive Verarbeitungseinheit Wartungsarbeiten einleiten kann; und
- einen Kommunikationsschaltkreis (IPC0, IPC1), der einen
bidirektionalen synchronen Kommunikationskanal zwischen den genannten
beiden Verarbeitungseinheiten (UP0, UP1) zur Verfügung stellt, sodaß ein
Informationsaustausch zwischen den beiden möglich ist.
4. Duplizierte Steuer- und Verarbeitungseinheit in Übereinstimmung mit
Anspruch 3, dadurch gekennzeichnet:,
daß jeder der genannten peripheren Wählerschaltkreise (PERSEL0,
PERSEL1) außerdem ein Hilfsregister enthält, in das die jeweilige
Verarbeitungseinheit eine von vier möglichen Bitkombinationen einliest, sodaß
ein entsprechendes Verfahren für den Zugriff auf die genannten peripheren
Daten-RAMS in Übereinstimmung mit den folgenden Kriterien aufgestellt werden
kann:
- eine erste Bitkombination zur Durchführung eines synchronen
Einlesezyklus in beide peripheren Daten-RAMS (MES0, MES1) und eines
Auslesezyklus nur in dem zur eigenen Steuereinheit gehörigen Speicher;
- eine zweite Bitkombination zur Durchführung eines Ein- und
Auslesezyklus nur in dem zur eigenen Steuereinheit gehörigen peripheren
Daten-RAM;
- eine dritte Bitkombination zur Durchführung eines Ein- und
Auslesezyklus nur in dem duplizierten peripheren Daten-RAM; und schließlich
- eine vierte Bitkombination zur Durchführung eines synchronen
Einlesezyklus in den beiden peripheren Daten-RAMS (MES0, MES1) sowie
eines Auslesezyklus nur in dem duplizierten peripheren Daten-Ram;
daß die genannten peripheren Wählerschaltkreise durch das genannte
jeweilige Kopiewahlsignal (SEL0, SEL1) in den aktiven logischen
Betriebszustand überführt werden, wodurch verhindert wird, daß die auf
Reserve geschaltete Verarbeitungseinheit die Steuerung der genannten
Zugriffsschaltkreise (ACC0, ACC1) übernehmen kann; und
daß der aktive periphere Wählerschaltkreis (PERSEL0, PERSEL1) den
Inhalt des der jeweiligen Hilfsregister zusammen mit den auf den Bussen der
jeweiligen Verarbeitungseinheit (BUS0, BUS1) vorhandenen Signale decodiert,
sodaß eine entsprechend geeignete Kombination des genannten Wahlsignais
(B0SEL.., B1SEL..) der peripheren Schaltkreise erzeugt werden kann.
5. Duplizierte Steuerungs- und Verarbeitungseinheit in
Übereinstimmung mit einem beliebigen der vorhergehenden Ansprüche,
dadurch gekennzeichnet, daß jeder der genannten
Konfigurationssteuerschaltkreise (CCL0, CCL1) eine EPROM für die Kopiewahl
enthält, an deren Adresseneingang ein von der zur duplizierten
Verarbeitungseinheit gehörigen Konfigurationswahlschaltung (CCL0, CCL1)
kommendes Kopiewahlsignal (SEL1, SEL0), ein erstes logisches OR-Signal der
von der eigenen Verarbeitungseinheit erkannten Alarmsignale und ein zweites
logisches OR-Signal der von der duplizierten Verarbeitungseinheit erkannten
Alarmsignale, sowie Bits gelangen, die eine Anfrage zur Aktivierung oder
Reserveschaltung der Verarbeitungseinheit darstellen, von der die genannten
EPROMs einen Teil bilden, sowie die für jede Adressenkonfiguration
ausgelesenen Worte, die einem wahren oder negierten logischen Wert des
genannten Kopiewahlsignals (SEL0, SEL1) entsprechen.
6. Duplizierte Steuerungs- und Verarbeitungseinheit in
Übereinstimmung mit Anspruch 5, dadurch gekennzeichnet, daß die
genannten Signale auf den Adressenleitungen der genannten EPROMs für die
Kopiewahl zum Zwecke der Ausmerzung beliebiger Störungen auf geeignete
Weise gefiltert werden, sodaß es der Steuer-Software möglich ist, Versuche zur
Eliminierung der Alarmursache einzuleiten.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
ITMI922261A IT1255618B (it) | 1992-09-30 | 1992-09-30 | Unita' di controllo e di elaborazione duplicata per apparati di telecomunicazioni |
PCT/EP1993/002496 WO1994008292A1 (en) | 1992-09-30 | 1993-09-15 | Duplicate control and processing unit for telecommunications equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69308868D1 DE69308868D1 (de) | 1997-04-17 |
DE69308868T2 true DE69308868T2 (de) | 1997-09-04 |
Family
ID=11364038
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69308868T Expired - Fee Related DE69308868T2 (de) | 1992-09-30 | 1993-09-15 | Duplizierte steuer- und verarbeitungseinheit für telekommunikationsanlage |
Country Status (12)
Country | Link |
---|---|
US (1) | US5784551A (de) |
EP (1) | EP0663086B1 (de) |
CN (1) | CN1086364A (de) |
AT (1) | ATE150192T1 (de) |
BR (1) | BR9307149A (de) |
DE (1) | DE69308868T2 (de) |
ES (1) | ES2099473T3 (de) |
GR (1) | GR3023113T3 (de) |
IT (1) | IT1255618B (de) |
NO (1) | NO951204L (de) |
WO (1) | WO1994008292A1 (de) |
ZA (1) | ZA936351B (de) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100195065B1 (ko) * | 1996-06-20 | 1999-06-15 | 유기범 | 데이타 통신망 정합장치 |
KR100195064B1 (ko) * | 1996-06-20 | 1999-06-15 | 유기범 | 데이타 통신망 정합장치 |
US7805756B2 (en) * | 1996-11-29 | 2010-09-28 | Frampton E Ellis | Microchips with inner firewalls, faraday cages, and/or photovoltaic cells |
US7634529B2 (en) * | 1996-11-29 | 2009-12-15 | Ellis Iii Frampton E | Personal and server computers having microchips with multiple processing units and internal firewalls |
US7506020B2 (en) | 1996-11-29 | 2009-03-17 | Frampton E Ellis | Global network computers |
US7926097B2 (en) * | 1996-11-29 | 2011-04-12 | Ellis Iii Frampton E | Computer or microchip protected from the internet by internal hardware |
US8312529B2 (en) | 1996-11-29 | 2012-11-13 | Ellis Frampton E | Global network computers |
US20050180095A1 (en) * | 1996-11-29 | 2005-08-18 | Ellis Frampton E. | Global network computers |
US8225003B2 (en) | 1996-11-29 | 2012-07-17 | Ellis Iii Frampton E | Computers and microchips with a portion protected by an internal hardware firewall |
US6167428A (en) | 1996-11-29 | 2000-12-26 | Ellis; Frampton E. | Personal computer microprocessor firewalls for internet distributed processing |
US6725250B1 (en) * | 1996-11-29 | 2004-04-20 | Ellis, Iii Frampton E. | Global network computers |
US6209051B1 (en) | 1998-05-14 | 2001-03-27 | Motorola, Inc. | Method for switching between multiple system hosts |
DE19832060C2 (de) * | 1998-07-16 | 2000-07-06 | Siemens Ag | Doppelbare Prozessoreinrichtung |
US6427213B1 (en) * | 1998-11-16 | 2002-07-30 | Lucent Technologies Inc. | Apparatus, method and system for file synchronization for a fault tolerate network |
JP2001044910A (ja) * | 1999-07-30 | 2001-02-16 | Nec Corp | 装置内高速信号の伝送方式 |
DE19950131C1 (de) | 1999-10-18 | 2000-11-02 | Siemens Ag | Integrierter Schaltkreis mit gedoppelten synchronen und asynchronen Komponenten |
DE19951541C1 (de) * | 1999-10-26 | 2000-10-26 | Siemens Ag | Integrierter elektronischer Baustein mit duplizierter Kernlogik und Hardware-Fehlereinspeisung für Prüfzwecke |
US6622246B1 (en) * | 1999-11-12 | 2003-09-16 | Xerox Corporation | Method and apparatus for booting and upgrading firmware |
US7213167B1 (en) * | 2000-01-18 | 2007-05-01 | Verso Technologies, Inc. | Redundant state machines in network elements |
US6931568B2 (en) * | 2002-03-29 | 2005-08-16 | International Business Machines Corporation | Fail-over control in a computer system having redundant service processors |
FI115015B (fi) * | 2002-04-22 | 2005-02-15 | Metso Automation Oy | Menetelmä ja järjestelmä väylän varmistamiseksi sekä ohjauspalvelin |
KR100474704B1 (ko) * | 2002-04-29 | 2005-03-08 | 삼성전자주식회사 | 데이터의 버스트 동시쓰기가 가능한 프로세서 이중화 장치 |
US6885973B1 (en) * | 2003-01-28 | 2005-04-26 | Sprint Communications Company L.P. | Alarm facilitator and method for analyzing computer hardware alarms |
CN1318562C (zh) * | 2004-09-27 | 2007-05-30 | 彭全生 | 富含锌元素的白酒的制备方法 |
US8256147B2 (en) | 2004-11-22 | 2012-09-04 | Frampton E. Eliis | Devices with internal flexibility sipes, including siped chambers for footwear |
US8125796B2 (en) | 2007-11-21 | 2012-02-28 | Frampton E. Ellis | Devices with faraday cages and internal flexibility sipes |
US8429735B2 (en) | 2010-01-26 | 2013-04-23 | Frampton E. Ellis | Method of using one or more secure private networks to actively configure the hardware of a computer or microchip |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3544777A (en) * | 1967-11-06 | 1970-12-01 | Trw Inc | Two memory self-correcting system |
IT1209258B (it) * | 1980-08-26 | 1989-07-16 | Sits Soc It Telecom Siemens | Disposizione circuitale atta a gestire lo scambio di dati tra una coppia di elaboratori, operanti secondo il principio master-slave, ed un elaboratore di supporto. |
DE3328405A1 (de) * | 1983-08-05 | 1985-02-21 | Siemens AG, 1000 Berlin und 8000 München | Steuerorgane eines fehlertoleranten mehrrechnersystems |
US5251299A (en) * | 1985-12-28 | 1993-10-05 | Fujitsu Limited | System for switching between processors in a multiprocessor system |
JP2560510B2 (ja) * | 1990-03-06 | 1996-12-04 | 日本電気株式会社 | ネットワーク管理マネージャ切り替え方式 |
-
1992
- 1992-09-30 IT ITMI922261A patent/IT1255618B/it active IP Right Grant
-
1993
- 1993-08-30 ZA ZA936351A patent/ZA936351B/xx unknown
- 1993-09-15 BR BR9307149A patent/BR9307149A/pt not_active Application Discontinuation
- 1993-09-15 WO PCT/EP1993/002496 patent/WO1994008292A1/en active IP Right Grant
- 1993-09-15 EP EP93920731A patent/EP0663086B1/de not_active Expired - Lifetime
- 1993-09-15 AT AT93920731T patent/ATE150192T1/de active
- 1993-09-15 US US08/411,686 patent/US5784551A/en not_active Expired - Fee Related
- 1993-09-15 DE DE69308868T patent/DE69308868T2/de not_active Expired - Fee Related
- 1993-09-15 ES ES93920731T patent/ES2099473T3/es not_active Expired - Lifetime
- 1993-09-30 CN CN93118454A patent/CN1086364A/zh active Pending
-
1995
- 1995-03-29 NO NO951204A patent/NO951204L/no unknown
-
1997
- 1997-04-11 GR GR970400775T patent/GR3023113T3/el unknown
Also Published As
Publication number | Publication date |
---|---|
NO951204D0 (no) | 1995-03-29 |
EP0663086B1 (de) | 1997-03-12 |
BR9307149A (pt) | 1999-03-30 |
IT1255618B (it) | 1995-11-09 |
GR3023113T3 (en) | 1997-07-30 |
WO1994008292A1 (en) | 1994-04-14 |
ITMI922261A0 (it) | 1992-09-30 |
ZA936351B (en) | 1994-05-19 |
ITMI922261A1 (it) | 1994-03-30 |
DE69308868D1 (de) | 1997-04-17 |
US5784551A (en) | 1998-07-21 |
EP0663086A1 (de) | 1995-07-19 |
ATE150192T1 (de) | 1997-03-15 |
NO951204L (no) | 1995-05-22 |
ES2099473T3 (es) | 1997-05-16 |
CN1086364A (zh) | 1994-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69308868T2 (de) | Duplizierte steuer- und verarbeitungseinheit für telekommunikationsanlage | |
DE2655827C3 (de) | Datenverarbeitungssystem mit Konfigurationssteuerung | |
DE2908316C2 (de) | Modular aufgebaute Multiprozessor-Datenverarbeitungsanlage | |
DE3486257T2 (de) | Synchrones dezentralisiertes Verarbeitungssystem. | |
DE3781486T2 (de) | Verfahren zur stossfreien umschaltung von aktiven einheiten zu ersatzeinheiten in datenverarbeitungsanlagen und datenverarbeitungsanlage zur durchfuehrung dieses verfahrens. | |
DE3486130T2 (de) | Uebertragungsleitungssteuerung. | |
DE69615611T2 (de) | Externes Speichersystem mit redundanten Speichersteuerungen | |
DE2416609C2 (de) | Datenverarbeitungsanlage mit einer zentralen Verarbeitungseinheit und Multiprogrammierung mit mehreren Programmunterbrechungs-Prioritätsstufen | |
EP0952520B1 (de) | Vorrichtung zur fehlertoleranten Ausführung von Programmen | |
DE60004365T2 (de) | System und verfahren zur überwachung von einem verteilten fehlertoleranten rechnersystem | |
EP0228559A1 (de) | Fehlertolerante Mehrrechneranordnung | |
DE4317729A1 (de) | Programmierbare Steuereinheit | |
DE3301628A1 (de) | Schaltungsanordnung fuer den datenaustausch zwischen zwei rechnern | |
DE69032708T2 (de) | Protokoll für Lese- und Schreibübertragungen | |
DE69031782T2 (de) | Verfahren zum Ersetzen von Speichermodulen in einem Computersystem und Computersystem zur Durchführung des Verfahrens | |
DE10324380B4 (de) | Programmierbare Steuerung mit CPU und Kommunikationseinheiten sowie Verfahren zur Steuerung derselben | |
DE2755616A1 (de) | Asymmetrischer multiprozessor | |
DE2350229A1 (de) | Datenverarbeitungsanlage, insbesondere als steuereinrichtung fuer fernsprechvermittlungsanlagen | |
DE3780306T2 (de) | Adapterbusschalter zur verbesserung der verfuegbarkeit einer steuereinheit. | |
DE2325137C3 (de) | Speichereinrichtung mit Bereitschaftsspeicherelementen | |
WO2004034261A1 (de) | Verfahren zur ereignissynchronisation, insbesondere für prozessoren fehlertoleranter systeme | |
EP0104490A2 (de) | Verfahren und Vorrichtung zur Synchronisation von Datenverarbeitungsanlagen | |
DE2807321A1 (de) | Spannungsueberwachung in einem datenverarbeitungssystem | |
DE69523509T2 (de) | Dezentralisiertes System und Mehrrechnersystem | |
DE2530887C3 (de) | Steuereinrichtung zum Informationsaustausch |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |