DE69528468T2 - Verfahren und vorrichtung für fehlertoleranten taktgeber mit dynamischer rekonfiguration - Google Patents
Verfahren und vorrichtung für fehlertoleranten taktgeber mit dynamischer rekonfigurationInfo
- Publication number
- DE69528468T2 DE69528468T2 DE69528468T DE69528468T DE69528468T2 DE 69528468 T2 DE69528468 T2 DE 69528468T2 DE 69528468 T DE69528468 T DE 69528468T DE 69528468 T DE69528468 T DE 69528468T DE 69528468 T2 DE69528468 T2 DE 69528468T2
- Authority
- DE
- Germany
- Prior art keywords
- clock
- module
- output
- signal
- voting
- 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
- 238000000034 method Methods 0.000 title claims description 13
- 239000004065 semiconductor Substances 0.000 claims abstract description 12
- 238000001514 detection method Methods 0.000 claims abstract description 11
- 230000001360 synchronised effect Effects 0.000 claims description 14
- 230000004044 response Effects 0.000 claims description 9
- 238000012544 monitoring process Methods 0.000 claims description 6
- 230000000737 periodic effect Effects 0.000 claims description 3
- 230000008878 coupling Effects 0.000 claims 3
- 238000010168 coupling process Methods 0.000 claims 3
- 238000005859 coupling reaction Methods 0.000 claims 3
- 238000004519 manufacturing process Methods 0.000 claims 1
- 238000002955 isolation Methods 0.000 abstract description 8
- 230000003139 buffering effect Effects 0.000 abstract description 2
- 239000013078 crystal Substances 0.000 description 36
- 239000000872 buffer Substances 0.000 description 29
- 238000010586 diagram Methods 0.000 description 17
- 238000013461 design Methods 0.000 description 11
- 230000000295 complement effect Effects 0.000 description 6
- 239000003990 capacitor Substances 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000009977 dual effect Effects 0.000 description 3
- 230000001939 inductive effect Effects 0.000 description 3
- 230000010363 phase shift Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 2
- 239000000969 carrier Substances 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000003071 parasitic effect Effects 0.000 description 2
- MEGPURSNXMUDAE-RLMOJYMMSA-N scopoline Chemical compound C([C@H](O1)C2)[C@@H]3N(C)[C@H]2[C@H]1[C@H]3O MEGPURSNXMUDAE-RLMOJYMMSA-N 0.000 description 2
- 229910052710 silicon Inorganic materials 0.000 description 2
- 239000010703 silicon Substances 0.000 description 2
- 230000035882 stress Effects 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- RZVHIXYEVGDQDX-UHFFFAOYSA-N 9,10-anthraquinone Chemical compound C1=CC=C2C(=O)C3=CC=CC=C3C(=O)C2=C1 RZVHIXYEVGDQDX-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000032683 aging Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000005865 ionizing radiation Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 230000010355 oscillation Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000007704 transition 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
-
- 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/1604—Error detection or correction of the data by redundancy in hardware where the fault affects the clock signals of a processing unit and the redundancy is at or within the level of clock signal generation hardware
-
- 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/18—Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
- G06F11/183—Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
Description
- Die vorliegende Erfindung bezieht sich auf einen elektronischen Taktgeber, und im Besonderen auf einen in hohem Maße zuverlässigen, synchronisierten fehler- bzw. störungstoleranten Taktgeber, der ein mitlaufendes Ersatztaktgebermodul verwendet.
- Es gibt zahlreiche Anwendungen mit den Forderungen nach Rechensystemen von extrem hoher Zuverlässigkeit. Eine solche Anwendung ist diejenige von in der Luft befindlichen elektronischen (luftfahrtelektronischen) Systemen, worin eine Fehler- bzw. Störungstoleranz durch die Verwendung von redundanten Systemen, speziell in Flugsteuer- bzw. -regelanwendungen erreicht wird.
- Ein wesentlichen Element eines Rechensystems ist der Taktgeber. Der Taktgeber liefert die Zeitsteuerungssignale, welche den Betrieb des Computers steuern. Die Datenverteilung und verschiedene andere Funktionen basieren typischerweise auf Flanken von synchronen Taktsignalen. Demgemäß werden, um eine hohe Zuverlässigkeit zu erreichen, oft redundante Taktgeber verwendet. Jedoch ist es, um einen stabilen Computerbetrieb sicherzustellen, wichtig, dass das gelieferte Taktsignal unabhängig von Schaltübergangsvorgängen oder asynchronem Betrieb, welche bzw. welcher aus dem Hinein- oder Herausschalten der redundanten Taktsignale resultieren könnte, ist.
- Existierende fehler- bzw. störungstolerante Taktgeberausbildungen können grob dahingehend klassifiziert werden, dass sie entweder auf Software oder auf Hardware basieren. Eine durch Software unterstützte Architektur benutzt eine Synchronisation von großem Zeitrahmen im Mikrosekunden- oder Millisekundenbereich. Sie erfordert es weiter, dass die individuellen Taktgebermodule ihre Signale zur erneuten Synchronisation der unabhängigen Taktimpulse austauschen. Durch Software unterstützte Systeme nehmen Zeit in Anspruch, um die Zeitversatze zwischen den Taktgeberkanälen zu lesen und zu mitteln, bevor sie die Taktgeber in synchrone Übereinstimmung bringen. Die Daten werden ignoriert, wenn der Takt- bzw. Taktgeberzeitversatz über einen vorbestimmten Schwellwert hinaus wächst. Der Softwarealgorithmus maßt sich einen großen Zusatz auf den bzw. zu dem Systemdurchsatz an. Die Softwarealgorithmen sind nicht bitsynchron und sind nicht für Anwendungen hoher Leistungsfähigkeit oder zeitkritische Anwendungen geeignet.
- Konventionelle Hardware-Architekturen, die Techniken der phasenstarren Schleife benutzen, sind kompliziert und langsam. Die meisten der existierenden Ausbildungen von fehler- bzw. störungstoleranten Taktgebern sind von dieser Art. Jeder Taktgeberkanal empfängt Taktsignale von den anderen Kanälen, um ein Bezugssignal für seine eigene phasenstarre Schleife zu erzeugen. Das Bezugssignal wird einem Phasendetektor zugeführt, wo es mit dem lokalen Taktsignal verglichen wird. Die Phasendifferenz wird in ein Spannungsniveau umgewandelt, das dazu benutzt wird, den lokalen Oszillator einzustellen. Da jeder Kanal seine eigenen Bezugssignale und lokalen Signale bildet, leidet der Taktgeber an Phasenzittern bzw. Phasenschwankungen. Die phasenstarre Schleife kann nur langsam variierende Signale verfolgen bzw. sich nur langsam mit variierenden Signalen im Gleichlauf befinden und versagt bzw. setzt aus in der Gegenwart von abrupten Änderungen oder von Signalen, die ihren Einrastbereich überschreiten.
- Sowohl die Software als auch die Architekturen der phasenstarren Schleife erfordern 3m + 1 Kanäle, um m Fehler bzw. Störungen zu tolerieren.
- Eine andere Klasse von Hardware-Architektur, die m Fehler bzw. Störungen unter Benutzung von nur m plus einem Kanal tolerieren kann, ist die ersetzende Reservearchitektur. Hier wird der Haupttaktgeber ausgeschaltet, und ein Ersatz (1 oder mehr Taktsignale) wird hineingeschaltet. Das Schalten wird durch unabhängiges Überwachen hinsichtlich eines fehlenden Taktimpulses gesteuert. Dieses stellt keine 100%-ige Fehler- bzw. Störungsdetektion zur Verfügung, da es nicht Phasenzittern bzw. Phasenschwankungen und Phasendrift sowie kleine Änderungen im Arbeitszyklus bzw. Tastverhältnis detektieren kann. Diese Architektur ist außerdem insofern beschränkt, als der empfangende Computer Übergangsvorgänge der Taktumschaltung behandeln muss.
- Auf dem Fachgebiet sind Techniken zum Kombinieren von N-modularer Redundanz mit Ersetzen durch Reserve bekannt, aber solche Techniken können nur für Daten und nicht für den Taktgeber verwendet werden. Solche Ausbildungen benutzen ein zentralisiertes schaltendes Netzwerk, das als ein integrativer Zellengruppierungsschalter bekannt ist. Die Zellengruppierung ist kompliziert, weist eine lange Fortpflanzungsverzögerung durch viele Niveaus von Toren auf und erfordert einen externen Taktgeber für das synchrone Schalten der Module.
- Um m Fehler bzw. Störungen zu tolerieren, erfordert die Lehre gemäß dem Stand der Technik die Verwendung von 3m + 1 Taktgeberkanälen, 2m + 2 Taktgeberkanälen oder 2m + 1 Taktgeberkanälen.
- Demgemäß ist in Übereinstimmung mit den Lehren des Standes der Technik, um einen einzigen Fehler bzw. eine einzige Störung zu tolerieren, ein Minimum von drei Modulen (dreifache modulare Redundanz) erforderlich. Um zwei stochastische Fehler bzw. Störungen zu tolerieren (operationelles Versagen/operationelles Versagen) benutzten frühere fehler- bzw. störungstolerante Taktgeberausbildungen fünf oder mehr Module, die drei-von-fünf Abstimmungssystemen verwenden. Diese Architekturen erfordern übertriebene Hardware.
- Ausbildungen, welche vier Module mit drei-von-vier Abstimmungsschemata benutzen, können nur einen stochastischen Fehler tolerieren sowie beschränkte Kompensation von milden Fehlern bzw. Störungen. Drei-von-vier Abstimmungsschemata leiden außerdem an zwei-von-zwei Geteiltsituationen. Zum Beispiel gibt es keine Majorität zum davon Wählen bzw. darüber Abstimmen, wenn zwei Kanäle außer Phase mit den anderen beiden sind. Rekonfigurierbare Überwachungsgeräte mit Mehrheitsauswahl, die vier Kanäle benutzen, um zwei Fehler bzw. Störungen zu tolerieren, leiden auch an diesem Nachteil.
- Das Dokument WO-A-89 08883 offenbart ein fehler- bzw. störungstolerantes Datenverarbeitungssystem, das ein mitlaufendes Ersatzmodul verwendet, während das Dokument US-A-5 404 363 einen konventionellen fehler- bzw. störungstoleranten Taktgeber offenbart, der vier identische Taktgebermodule hat.
- Es ist daher ein Ziel der vorliegenden Erfindung, ein Verfahren und eine Einrichtung für einen fehler- bzw. störungstoleranten Taktgeber zur Verfügung zu stellen, welches bzw. welche die oben angegebenen Nachteile von früheren fehler- bzw. störungstoleranten Taktgeberausbildungen überwindet. Dieses Ziel wird in einer vorteilhaften Art und Weise durch Anwenden der Merkmale gelöst, welche in den unabhängigen Ansprüchen niedergelegt sind. Weitere Verbesserungen werden durch die abhängigen Ansprüche zur Verfügung gestellt.
- Im Besonderen verwendet ein fehler- bzw. störungstoleranter Taktgeber gemäß der Erfindung einen Abstimmungs- bzw. Mehrheitswahlkern, der aus einer Mehrzahl von redundanten Taktgebermodulen besteht, wobei jedes Taktgebermodul ein Ausgangstaktsignal erzeugt. Ein vorgesehenes schwimmendes, mitlaufendes Ersatztaktgebermodul erzeugt auch ein Ausgangstaktsignal. Das fehler- bzw. störungstolerante Taktgebersystem umfasst weiter ein Überwachungsgerät mit Mehrheitsauswahl zum Erzeugen eines gewählten Ausgangstaktsignals aus den vom red- undanten Taktgebermodul des Abstimmungs- bzw. Mehrheitswahlkerns erzeugten Ausgangstaktsignalen heraus. Außerdem ist ein einen Fehler bzw. eine Störung detektierendes, synchronisierendes und schaltendes Mittel zum Detektieren eines Fehlers bzw. einer Störung in wenigstens einem der redundanten Taktgebermodule des Abstimmungs- bzw. Mehrheitswahlkerns vorgesehen und das in Ansprechung hierauf synchron das vom schwimmenden, mitlaufenden Ersatztaktgebermodul erzeugte Signal für das Signal substituiert, welches von dem defekten redundanten Taktgebermodul des Abstimmungs- bzw. Mehrheitswahlkerns erzeugt worden ist, wodurch das gewählte Ausgangssignal von dem fehler- bzw. störungstoleranten Taktgeber trotz eines Fehlers bzw. einer Störung in einem Taktgebermodul des Abstimmungs- bzw. Mehrheitswahlkerns stabil bleibt.
- In einem weiteren Aspekt der Erfindung empfängt ein vorgesehenes Takt- bzw. Taktgeberüberwachungsgerät mit Mehrheitsauswahl die Ausgangstaktsignale von den Taktgebermodulen des Abstimmungs- bzw. Mehrheitswahlkerns und gibt in Übereinstimmung mit einem vorbestimmten Wahlalgorithmus ein gewähltes Taktsignal aus. Ein vorgesehener Oszillator erzeugt ein periodisches Ausgangssignal. Ein vorgesehener Multiplexer, der ein Paar Eingangsanschlüsse, einen Ausgangsanschluss und einen Steueranschluss hat, spricht auf ein Steuersignal an seinem Steueranschluss dahingehend an, dass er einen ausgewählten von seinen Eingangsanschlüssen auf dem Ausgangsanschluss schaltet. Das Ausgangssignal, welches von dem eigenen Oszillator des Moduls erzeugt wird, ist an den ersten Eingangsanschluss des Multiplexers angekoppelt, und das Ausgangssignal von dem Oszillator des schwimmenden, mitlaufenden Ersatztaktgebermoduls ist an den zweiten Eingangsanschluss des Multiplexers angekoppelt. Das vorgesehene Fehler- bzw. Störungsdetektions-, -identifikations- und -rekonfigurationsmittel überwacht das Ausgangstaktsignal von jedem Taktgebermodul und erzeugt in Ansprechung auf das Detektieren eines Fehlers bzw. einer Störung in seinem eigenen Taktgebermodul ein Steuersignal zum Umschalten des Multiplexers aus einem Zustand des Ausgebens des Signals, das von dem eigenen Oszillator des Taktgebermoduls erzeugt wird, zum Ausgeben des Signals, welches von dem Oszillator des schwimmenden, mitlaufenden Ersatztaktgebers erzeugt wird.
- In einem weiteren Aspekt der Erfindung ist der Oszillator von jedem Taktgebermodul so angeordnet bzw. eingerichtet, dass er mit dem vom Modul gewählten Taktsignal derart einrastet, dass alle Taktgebermodulausgangssignale die Tendenz haben, synchron zu laufen.
- In einem weiteren Aspekt der Erfindung wird ein Prozessortakt- bzw. -taktgebergenerator zum vorbestimmten Verarbeiten des gewählten Ausgangssignals, um ein Taktsignal zu erzeugen, das für die Anwendung bei einem Datenprozessor geeignet ist, zur Verfügung gestellt.
- In einem weiteren Aspekt der Erfindung sind alle Taktgebermodule auf einem einzigen Halbleiterchip hergestellt. Leistung bzw. Strom wird über unabhängige Leistungs- bzw. Stromverbindungen zu jedem Taktgebermodul geliefert. Der Halbleiterchip umfasst vorbestimmte Schutzringe, die um jedes Taktgebermodul herum ausgebildet sind, um eine Fortpflanzung des Einrast- bzw. Latch-up-Stroms von einem Taktgebermodul zu irgendeinem anderen Taktgebermodul zu verhindern. Der Halbleiterchip umfasst außerdem ein Eingangs- und Ausgangsanschlussfeld bzw. Eingangs- und Ausgangsanschlussfelder für jedes Taktgebermodul, und der Chip ist mit vorbestimmten Schutzringen um jedes Eingangs- und Ausgangsanschlussfeld des Taktgebermoduls ausgebildet, um eine Fortpflanzung von Latch-up- bzw. Einraststrom von einem Anschlussfeld zu irgendeinem anderen Anschlussfeld zu verhindern. Ein Datenbus ist auf dem Halbleiterchip zum gegenseitigen Verbinden des Taktgebermoduls ausgebildet, und ausgewählte gegenseitige Verbindungen zwischen den Taktgebermodulen sind pufferisoliert und mit Punkt-zu- Punkt-Verdrahtung hergestellt, derart, dass mehrere Fehler bzw. Störungen auf dem Datenbus toleriert werden können.
- Fig. 1 ist ein Blockdiagramm, das die prinzipiellen Komponenten der bevorzugten Ausführungsform des Abstimmungs- bzw. Mehrheitswahlkernmoduls und des schwimmenden, mitlaufenden Ersatzes veranschaulicht;
- Fig. 2 ist ein schematisches Diagramm, welches die bevorzugte Ausführungsform von einem der Taktgebermodule veranschaulicht, die in Fig. 1 gezeigt sind;
- Fig. 3 ist ein ausführliches schematisches Diagramm des Taktgeberüberwachungsgeräts mit Mehrheitsauswahl, wie es in Fig. 2 gezeigt ist;
- Fig. 4 bildet Zeitsteuerungsdiagramme ab, welche die enge Synchronisation veranschaulichen, die durch die bevorzugte Ausführungsform der vorliegenden Erfindung realisiert wird;
- Fig. 5 ist ein ausführliches schematisches Diagramm des Prozessortakt- bzw. -taktgebergenerators;
- Fig. 6 ist ein ausführliches schematisches Diagramm der Fehler- bzw. Störungsdetektions-, -identifikations- und -rekonfigurationssteuer- bzw. -regeleinrichtung;
- Fig. 7 ist ein ausführliches schematisches Diagramm des dualen Multiplexers;
- Fig. 8 ist ein ausführliches schematisches Diagramm des Kristalloszillators;
- Fig. 9 veranschaulicht die Frequenzansprechcharakteristika des in Fig. 8 gezeigten Kristalloszillators;
- Fig. 10 ist ein Blockdiagramm, das die Schutzringe veranschaulicht, die in der bevorzugten Ein-Chip-Ausführungsform der Erfindung ausgebildet sind; und
- Fig. 11-15 sind Wellenformendiagramme, die die Operation des fehler- bzw. störungstoleranten Taktgebers unter verschiedenen Versagensbedingungen veranschaulichen.
- Fig. 1 ist ein ausführliches Blockdiagramm, das die bevorzugte Ausbildung des erfindungsgemäßen fehler- bzw. störungstoleranten Taktgebers veranschaulicht. Vorzugsweise ist das gesamte System als eine einzige für die Anwendung spezifische integrierte Schaltung (ASIC) ausgebildet, die generell bei 20 gezeigt ist. Das System umfasst den Abstimmungs- bzw. Mehrheitswahlkern, der aus einer dreifachen modularen Redundanzanordnung von Taktgebermodulen 30, 40 und 50 besteht. Außerdem ist ein schwimmendes, mitlaufendes Ersatztaktgebermodul 60 vorgesehen. Jedes der vier Taktgebermodule ist mit Isolationsschutzringen 32, 42, 52 und 62 versehen, welche, wie vollständiger mit Bezug auf Fig. 10 beschrieben wird, verhindern, dass Einraststrom, der in einem der Module auftreten könnte, irgendeines der anderen Module beeinflusst bzw. beeinträchtigt. Außerdem hat jedes Modul sein eigenes Leistungs- bzw. Stromversorgungspaar 34, 44, 54 und 64.
- Jedes Modul 30, 40, 50, 60 erzeugt vier redundante Ausgangssignale, die über einen Bus, der generell bei 70 gezeigt ist, an die anderen Module angekoppelt sind. Demgemäß erzeugt das Modul 30 vier redundante Ausgangsignale, die als 0-3 identifiziert sind, das Modul 40 erzeugt vier redundante Signale, die als 4-7 identifiziert sind, das Modul 50 erzeugt vier redundante Ausgangssignale, die als 8-11 identifiziert sind, und das schwimmende, mitlaufende Ersatzmodul 60 erzeugt vier Ausgangssignale, die als 12-15 identifiziert sind. Jedes Modul empfängt als einen Eingang eines der Ausgangssignale. Demgemäß empfängt das Modul 30 als Eingänge die Ausgangsignale 0, 4, 8 und 12. Das Modul 40 empfängt als Eingänge die Ausgangssignale 1, 5, 9 und 13. Das Modul 50 empfängt als Eingangssignale die Ausgangssignale 2, 6, 10 und 14, und das schwimmende, mitlaufende Ersatzmodul 60 empfängt als Eingangssignale die Ausgangssignale 3, 7, 11 und 15.
- Jedes der Abstimmungs- bzw. Mehrheitswahlkernmodule 30, 40 und 50 hat eine gleiche bzw. gleichartige innere Schaltungsanordnung, so dass demgemäß nur die Komponenten des Moduls 30 hier unten beschrieben werden. Im Einzelnen ist jedes der Eingangssignale 0, 4, 8 und 12 durch einen von vier Isolationspuffern, die generell bei 80 gezeigt sind, angekoppelt. Der Ausgang von den Isolationspuffern 80 ist sowohl an den Eingang eines Fehler- bzw. Störungsdetektions-, -identifikations-, -rekonfigurationsblock (FDIR) 82 angekoppelt, wobei jedes der drei Signale von den Abstimmungs- bzw. Mehrheitswahlkernmodulen über die Leitung 0, 4 und 8 an den Eingang eines Takt- bzw. Taktgeberüberwachungsgeräts mit Mehrheitsauswahl (CLKVTR) 84 angelegt ist. Der Ausgang von dem FDIR- Block 82, welcher hier unten unter Bezugnahme auf die Fig. 3 und 6 vollständiger beschrieben ist, umfasst ein Fehler- bzw. Störungsstatussignal (FSTS), welches durch einen Puffer 86 angekoppelt ist und als ein den Fehler- bzw. Störungsstatus angebendes Signal verwendet wird, wie hier unten vollständiger beschrieben ist.
- Außerdem sind als Steuerausgangssignale von dem FDIR-Block 82 ein Paar Steuersignale vorgesehen, welche an die Steuereingänge eines Ausgangsmultiplexers 88 angelegt werden.
- Der Ausgang von dem CLKVTR-Block 84 ist, wie hier unten unter Bezugnahme auf die Fig. 2 und 3 vollständiger beschrieben wird, das gewählte Taktsignal, das hier als der Haupttakt bzw. -taktimpuls MCLK identifiziert ist, welcher auch durch einen Ausgangspuffer 90 gepuffert ist. Das gewählte Taktsignal MCLK wird außerdem als ein Eingang sowohl zu einem Prozessortakt- bzw. -taktgebergeneratorblock (PCLKGEN) 92 als auch zu einem Kristalloszillator (XTLOSC)-Block 94 geliefert. Der PCLKGEN-Block 92, welcher hier unten unter Bezugnahme auf die Fig. 2 und 5 vollständiger beschrieben ist, verarbeitet das gewählte Signal MCLK, um ein Quadraturphasentaktsignal PCLK zu erzeugen, das über einen Ausgangspuffer 96 geliefert wird. Das Signal PCLK ist in dieser, der bevorzugten Ausführungsform, ein in Phase gebrachtes Quadraturtaktsignal bei mit einem Viertel der Frequenz des Signals MCLK und mit 25% Tastverhältnis, was für das Treiben eines zugeordneten zentralen Prozessors (nicht gezeigt) geeignet ist. PCLK kann, wenn man es an einem unterschiedlichen Abgriffspunkt in Fig. 5 nimmt, auch ein Taktsignal von 50% Tastverhältnis mit einhalb der Frequenz von MCLK sein.
- Wie es hier unten vollständiger mit Bezug auf die Fig. 2 und 8 beschrieben ist, erzeugt der XTLOSC-Block 94 ein frei laufendes Taktsignal, welches an den einen Eingang des Multiplexers 88 angekoppelt ist. Außerdem wird das Taktsignal aus dem XTLOSC-Block 94 zu einem Puffer 98 geleitet, welcher sicherstellt, dass die Belastung des Oszillators 94 die gleiche wie für alle anderen Taktgebermodule 40, 50 und im Besonderen das mitlaufende, schwimmende Ersatzmodul 60 ist.
- Wie hier unten mit einem Bezug auf die Fig. 2 und 7 vollständiger beschrieben ist, ist der übrige Eingang zu dem Multiplexer 88 der Ausgang von einem Puffer 100, welcher als seinen Eingang das Signal empfängt, das von dem Kristalloszillatorblock (XTLOSC) 106 des schwimmenden, mitlaufenden Ersatzmoduls 60 her angekoppelt ist.
- Der Ausgang des Multiplexers 88 wird zu einer Bank von vier Puffern, die generell bei 108 gezeigt sind, durchgelassen, welche die vier oben beschriebenen Leitungen 0-3 speisen, die an den Bus 70 angekoppelt sind.
- Wie oben erwähnt, sind die Abstimmungs- bzw. Mehrheitswahlkernmodule 40 und 50 im wesentlichen identisch mit jenem, was oben mit Bezug auf das Modul 30 beschrieben ist.
- Das schwimmende, mitlaufende Ersatzmodul 60 unterscheidet sich nur wenig von den Abstimmungs- bzw. Mehrheitswahlkernmodulen 30, 40 und 50 in der Art und Weise, in der es zusammengeschaltet ist. Hier puffert das schwimmende, mitlaufende Ersatzmodul 60 die Eingangssignale über die Leitungen 3, 7, 11 und 15 durch bzw. über eine Bank von vier Pufferverstärkern, die generell bei 108 gezeigt sind. Diese vier gepufferten Signale werden zu dem Eingang eines Fehler- bzw. Störungsdetektions-Identifikations-Rekonfigurations (FDIR)-Blocks 110 durchgelassen. Als die drei Eingänge zu einem Takt- bzw. Taktgeberüberwachungsgerät (CLKVTR)-Modul 112 mit Mehrheitsauswahl werden die drei Eingangssignale durchgelassen, die über 3, 7 und 11 liegen.
- Wie bei dem Taktgebermodul 30 umfasst der Ausgang von dem FDIR-Block 110 ein Fehler- bzw. Störungsstatussignal (FSTS), welches über einen Puffer 114 gepuffert wird, und ein Paar Steuersignale, welche auf den Steuereingang des Ausgangsmultiplexers 116 gegeben werden.
- Der Ausgang von dem Takt- bzw. Taktgeberüberwachungsgerät (CLKVTR)-Block 112 mit Mehrheitsauswahl wird über den Puffer 18 gepuffert und als ein Taktsignal MCLK des Überwachungsgeräts mit Mehrheitsauswahl geliefert. Das Signal MCLK wird als ein Eingang sowohl zu einem Prozessortaktgenerator (PCLKGEN) 120 als auch als der Eingang zu dem Kristalltaktgeber- bzw. -taktmodul 6 geliefert. Der Ausgang von dem Prozessortaktgenerator 120 wird über den Puffer 122 gepuffert und als ein Ausgangssignal PCLK geliefert. Anders als bei den Abstimmungs- bzw. Mehrheitswahlkernmodulen 30, 40 und 50 wird der Ausgang von dem Kristalloszillator 106 des schwimmenden, mitlaufenden Ersatzmoduls als ein Eingang an den Multiplexer von jedem Modul über einen Ausgangspuffer 124 angelegt. Im Ergebnis wird das gleiche Signal durch einen Puffer 126 zurück gekoppelt und an den übrigen Eingang des Multiplexers 116 angelegt.
- Der Ausgang von dem Multiplexer 116 wird über eine Bank von vier Puffern, die generell bei 128 gezeigt sind, gepuffert und liefert die jeweiligen Ausgangssignale 12-15 von dem schwimmenden, mitlaufenden Ersatzmodul 160.
- Die gegenseitige Verbindung zwischen den Modulen benutzt eine direkte Punkt-zu-Punkt-verdrahtung zwischen den Isolationspuffern. Es gibt N² gegenseitige Verbindungen (16 Leitungen für die vier Kanäle). Das Isolationspuffernetzwerk trägt dazu bei, mehrere Fehler bzw. Störungen auf dem Bus 70 zu tolerieren und verhindert einen einzelnen Modulfehler bzw. eine einzelne Modulstörung, der bzw. die den Bus abstürzen lassen könnte. Ohne die Puffer würde ein Brückenfehler, der irgendwelche zwei Taktgeberleitungen von irgendwelchen zwei Modulen kurzschließt, beide Module zum Ausfall bringen.
- Fig. 2 ist ein erweitertes, detailliertes Blockdiagramm, welches die inneren Komponenten des Kernmoduls 30, wie es in Fig. 1 gezeigt ist, veranschaulicht. Hier wird jedes der vier Eingangssignale durch die vier Eingangspuffer, die generell bei 80 gezeigt sind, gepuffert. Alle vier gepufferten Eingangssignale werden als Eingänge an den Fehler- bzw. Störungsdetektions-Identifikations-Rekonfigurations (FDIR)-Block 82 angelegt, wobei die drei Signale von allen den drei Kernmodulen an den Eingang des Takt- bzw. Taktgeberüberwachungsgerät (CLKVTR)-Blocks 84 mit Mehrheitsauswahl angekoppelt sind. Der FDIR-Block 82, der vollständiger hier unten mit Bezug auf Fig. 6 beschrieben ist, erzeugt ein Ausgangssignal, welches den Systemfehler- bzw. -störungsstatus FSTS angibt, das durch einen Puffer 86 ausgekoppelt ist. Außerdem liefert der FDIR-Block 82 ein Paar Ausgangssteuersignale, welche auf die Steuereingangsanschlüsse des Ausgangsmultiplexers 88 gegeben werden.
- Der CLKVTR-Block 84, der hier unten mit Bezug auf die Fig. 3 vollständiger beschrieben ist, erzeugt ein gewähltes Taktausgangssignal MCLK, das durch einen Ausgangspuffer 90 gepuffert wird. Das Signal MCLK wird als ein Eingang sowohl an einen Kristalloszillator (XTLOSC) 94 als auch an einen Prozessortaktgenerator (PCLKGEN) 92 geliefert. Das gewählte Taktsignal MCLK wirkt in einer Art und Weise, die hier unten mit Bezug auf die Fig. 8 und 9 vollständiger beschrieben ist, dahingehend, dass es eine Phaseneinrastung mit dem frei laufenden Kristalloszillator erzeugt, der in dem XTLOSC-Block 94 vorgesehen ist. Das frei laufende Ausgangssignal von dem XTLOSC- Block 94 ist als ein Eingang zu dem Ausgangsmultiplexer 66 vorgesehen. Als ein übriger Eingang zu dem Multiplexer 88 ist der Ausgangs von dem Kristalloszillator (106 von Fig. 1) von dem schwimmenden, mitlaufenden Ersatzmodul (nicht gezeigt) her vorgesehen. Ein Pufferverstärker 98 bildet eine Verbindung zu dem Ausgang des XTLOSC-Blocks 94, um eine gleichartige bzw. ähnliche Belastung des Kristalloszillators 94 vorzusehen, worauf man in den anderen Modulen trifft.
- Das Prozessortaktgeneratormodul 92 erzeugt, wie in näheren Einzelheiten mit Bezug auf die Fig. 5 unten beschrieben ist, ein Ausgangssignal PCLK, welches durch den Puffer 96 dazu geeignet ist, einen zugeordneten Prozessor (nicht gezeigt) zu betreiben.
- In einem Überblick über die Systemoperation dient das schwimmende, mitlaufende Taktgebermodul 60 als ein schwimmender, mitlaufender Ersatz für jedes der Abstimmungs- bzw. Mehrheitswahlkernmodule 30, 40 und 50. Wenn eines der Abstimmungs- bzw. Mehrheitswahlkernmodule 30, 40, 50 versagt, wird das Signal des schwimmenden, mitlaufenden Ersatzmoduls 60 automatisch hinein geschaltet, und die Abstimmungs- bzw. Mehrheitswahlebene des Abstimmungs- bzw. Mehrheitswahlkerns wird wieder hergestellt, alles ohne Schalterüberverzögerung und Defekte (Schaltübergangsvorgänge). Obwohl sich die Eingangs- und Ausgangserfordernisse des schwimmenden, mitlaufenden Ersatzmoduls 60 ein wenig von den Abstimmungs- bzw. Mehrheitswahlkernmodulen 30, 40 und 50 unterscheiden, sind alle die Module in einer solchen Art und Weise ausgebildet und miteinander verbunden, dass die Installation (Reproduktion) von identischen Siliciumblöcken eine Anpassung zwischen den red- undanten Modulen sicherstellt. Jedes der Module 30, 40, 50 und 60 identifiziert sich selbst und seine erforderlichen Funktionen durch die Art und Weise, in der es verbunden ist, d. h. durch die Überleiteinrichtung. Das schwimmende, mitlaufende Ersatzmodul 60 ist total transparent für irgendeinen Hauptrechner, der mittels des fehler- bzw. störungstoleranten Taktgebers unterstützt wird. Außerdem gibt es keinen Effekt auf die Abstimmungs- bzw. Mehrheitswahlkernmodule, wenn das schwimmende, mitlaufende Ersatzmodul 60 zuerst ausfällt.
- Es ist zu sehen, dass die Abstimmungs- bzw. Mehrheitswahlkernmodule 30, 40 und 50 eine dreifache modulare Redundanzanordnung von Oszillatoren verwenden, jede mit einem Majoritätsüberwachungsgerät mit Mehrheitsauswahl und einer Rückkopplungsschleife. Die Taktgebermodule 30, 40, 50 und 60 kommunizieren durch ein Isolationspuffernetzwerk, um eine Situation zu verhindern, in der ein Modul zwei oder mehr seiner Takteingänge kurzschließen und dadurch das gesamte System zum Absturz bringen könnte. Wenn sie straff synchronisiert ist, kann die Abstimmungs- bzw. Mehrheitswahl, die durch das System bewerkstelligt wird, irgendeinen Fehler bzw. irgendeine Störung, der bzw. die in der Oszillatorschaltungsanordnung auftritt, einschließlich von byzantinischen Fehlern bzw. Störungen, ausblenden. Ein byzantinischer Fehler bzw. eine byzantinische Störung ist ein heimtückischer Fehler bzw. eine heimtückische Störung, der bzw. die unterschiedliche Signale zu unterschiedlichen Modulen schickt (oder die unterschiedlich durch unterschiedliche Module verstanden werden). Ein byzantinischer Fehler bzw. eine byzantinische Störung kann für ein konventionelles Majoritätsüberwachungsgerät mit Mehrheitsauswahl mit asynchronen oder einem losen synchronen Eingang bzw. Eingängen verheerend bzw. vernichtend sein.
- Das Abstimmen, wie es durch die Überwachungsgeräte mit Mehrheitsauswahl des vorliegenden Systems vorgesehen wird, kann identische treibende Signale für jeden der Kristalloszillatoren vorsehen. Wenn die Kristalloszillatoren so ausgebildet sind, dass sie einen gemeinsamen Mitnahme- bzw. Ziehbereich haben, werden Phasendifferenzen zwischen den Modulen dynamisch und kontinuierlich durch die Kristalle innerhalb jedes Taktzyklus kompensiert. Für zentrale Verarbeitungsanwendungen, worin eine kleine Frequenzverschiebung (weniger als 100 ppm oder 0,01%) belanglos ist, können billige Kristalle verwendet werden und häufiges Ziehen kann die Differenzen in der Kristallalterung, Temperaturvariation und die Schaltungsabweichung (Prozess und Komponenten) kompensieren. Wenn ein endlicher Zeitversatz der Prozessvariation gegeben ist, können die Systemtaktausgänge innerhalb weniger Nanosekunden synchronisiert werden.
- Es sollte außerdem bemerkt werden, dass Kreuz- bzw. Querkanalabstimmung innerhalb des Systems, das in Fig. 1 angegeben ist, nur in dem dreifach redundanten Kern ausgeführt wird. Wohingegen die Ausgänge der Multiplexer in den Abstimmungs- bzw. Mehrheitswahlkernmodulen zu ihren Überwachungsgeräten mit Mehrheitsauswahl rückkoppeln, wobei der Multiplexerausgang des schwimmenden, mitlaufenden Ersatzmoduls 60 nur zu den FDIR-Steuer- bzw. Regeleinrichtungen von allen den Abstimmungs- bzw. Mehrheitswahlkernmodulen 30, 40 und 50 zum Zweck der Fehler- bzw. Störungsdetektion und -identifikation geht. Wenn es nicht hineingeschaltet ist, empfängt das schwimmende, mitlaufende Ersatzmodul 60 seine Eingänge von den Abstimmungs- bzw. Mehrheitwahlkernmodulen 20, 30 und 50, um synchron mit dem Abstimmungs- bzw. Mehrheitswahlkern zu bleiben und dadurch keine Rückkopplungsschleife auf sich selbst zu bilden. Wenn das schwimmende, mitlaufende Ersatzmodul 60 hineingeschaltet ist, wird es Teil des Kerns und dadurch wird eine direkte Rückkopplungsschleife gebildet.
- In dem Herz des vorliegenden fehler- bzw. störungstoleranten Taktgeberaufbaus ist die FDIR-Steuer- bzw. -Regeleinrichtung. Die FDIR-Steuer- bzw. -Regeleinrichtung in jedem Modul empfängt die Taktsignale von allen vier Modulen 30, 40 und 50. Jede FDIR-Steuer- bzw. Regeleinrichtung detektiert, identifiziert und registriert autonom die Quelle eines Fehlers bzw. einer Störung. Wenn der Fehler bzw. die Störung von innerhalb seines eigenen Moduls kommt, sperrt eine selbstüberwachende Schaltung den fehlerhaften Taktgeber und schaltet den Ersatztaktgeber hinein. Jedes Modul verwendet ein komplementäres Paar von Steuersignalen für den dual redundanten Multiplexer. Ein nicht kodiertes Wort führt dahin, dass der Multiplexerausgang auf dem "0"-Niveau ist und daher detektiert wird. Jeder Multiplexer ist strategisch innerhalb der Rückkopplungsschleife des Oszillators positioniert, um Vorteil aus dem bevorstehenden bzw. zur Verfügung stehenden Abstimmungsstadium zu ziehen, worin die Umschaltverzögerungs- und Schaltvorgangssignale effektiv ausgeblendet werden. Die FDIR-Steuer- bzw. -Regeleinrichtung gibt eine Warnung an das System nur aus, nachdem zwei Module ausgefallen sind und der nächste Fehler bzw. die nächste Störung die Integrität der raschen Erledigung des Systems beeinflussen bzw. beeinträchtigen kann.
- Wenn die gesamte aktive Schaltungsanordnung auf einem einzigen Halbleiterchip integriert ist, enthält die nicht auf dem Chip befindliche Kristallrückkopplungsschleife die am wenigstens zuverlässigen Komponenten. Die Abstimmungslogik und die Rekonfigurationslogik sind so ausgebildet, dass sie diese speziellen Komponenten abdecken, um zwei aufeinanderfolgende Oszillatorausfälle zu überleben. Irgendein Fehler, der außerhalb der Rückkopplungsbelastungsschleife auftritt, wird als ein Empfängerfehler betrachtet. Fehler in den Taktgeberausgangspuffern, Ausgangstaktgeberstiften oder dem Ausgangstaktgeberleitweg bzw. der Ausgangstaktgeberlenkung, sowie der Prozessortakt- bzw. -taktgeberzustandmaschine und irgendwelche anderen Signale, die von dem Kernoszillator abgeleitet sind, sind Beispiele von diesem Fall.
- Die fehler- bzw. störungstolerante Taktgeberausbildung, wie sie hier angegeben ist, kann zwei statistische Fehler bzw. Störungen (nicht gleichzeitig) und mehrere kompensierende Fehler bzw. Störungen in allen vier Modulen aushalten. Kompensierende Fehler bzw. Störungen sind Fehler bzw. Störungen, die keine Wirkung auf die Majoritätsabstimmungsregel haben. Zum Beispiel sind alle drei Taktgeberausgänge noch gut, wenn der Ersatztaktgeber zuerst ausfällt, der zweite festsitzend- auf-niedrig ausfällt und der dritte Taktgeber festsitzend- auf-hoch ausfällt. Ein anderes Beispiel ist der Fall, in dem jedes der vier Module einen Taktgebereingang (irgendeinen Taktgebereingang) hat, der statistisch ausfällt. Da jeder aktive Kanal durch den gleichen schwimmenden, mitlaufenden Ersatz ersetzt wird, sind alle Taktgeberausgänge noch funktionell, wenn alle drei Oszillatoren der Abstimmungs- bzw. Mehrheitswahlkernmodule ausfallen. Beim Einschalten bzw. Hochfahren werden alle Ressourcen automatisch neu verhandelt.
- Die Fig. 3 ist ein detailliertes schematisches Diagramm, das eine bevorzugte Ausführungsform des Taktgeberüberwachungsgeräts mit Mehrheitsauswahl, wie z. B. den CLKVTR-Block 84 der Fig. 1 und 2, veranschaulicht.
- Das Takt- bzw. Taktgeberüberwachungsgerät mit Mehrheitsauswahl ist ein Überwachungsgerät mit Mehrheitsauswahl der Majoritätsregel 2-aus-3. Wenn zwei der Eingänge bzw. Eingangsgrößen eng miteinander synchronisiert sind, kann der dritte Eingang bzw. die dritte Eingangsgröße heimtückisch ausfallen, ohne den gewählten Ausgang bzw. die gewählte Ausgangsgröße zu beeinflussen. Wie es oben mit Bezug auf Fig. 1 beschrieben worden ist, wird in der bevorzugten Ausführungsform der Kreuz- bzw. Querkanalabstimmung das Abstimmen nur über die aktiven Module des Abstimmungs- bzw. Mehrheitswahlkerns ausgeführt. Wenn das schwimmende, mitlaufende Ersatzmodul hereingeschaltet ist, wird es ein Teil des Abstimmungs- bzw. Mehrheitswahlkerns.
- Als Eingänge zu dem Taktgeber- bzw. Taktüberwachungsgerät mit Mehrheitsauswahl sind drei Signale gezeigt, die mit 1, 2 und 3 bezeichnet sind. Die drei Taktsignale sind an die Eingänge von drei NAND-Toren 200, 202 und 204 angekoppelt. Das Signal 1 ist an einen Eingang des NAND-Tors 200 und einen Eingang zu dem NAND-Tor 202 angekoppelt. Das Signal 2 ist an einen Eingang des NAND-Tors 200 und einen Eingang des NAND 204 angekoppelt. Schließlich ist das Signal 3 an einen Eingang des NAND-Tors 202 und einen Eingang des NAND-Tors 204 angekoppelt.
- Die logischen Ausgangsniveaus von den NAND-Toren 200, 202 und 204 sind an drei Eingänge eines Ausgangs-NAND-Tors 206 angekoppelt. Der Ausgang vom NAND-Tor 206 bildet das gewählte Ausgangssignal von dem Takt- bzw. Taktgeberüberwachungsgerät mit Mehrheitsauswahl.
- Die Fig. 4 ist ein Wellenformdiagramm, welches veranschaulicht, was einem Majoritätsüberwachungsgerät mit Mehrheitsauswahl mit lose synchronisierten Eingängen geschehen könnte. Auf der vertikalen Achse ist die Amplitude in Volt veranschaulicht, und auf der horizontalen Achse die Zeit in Inkrementen von fünf Nanosekunden.
- Die Wellenformen 4A-4D veranschaulichen eine lose synchronisierte Ausbildung. Hier veranschaulichen die Fig. 4A-4C die drei Eingangssignale 1, 2 und 3, wie sie in Fig. 3 gezeigt sind. Bei loser Synchronisation existiert ein Versetzungsfenster von 5 Nanosekunden zwischen den beiden Taktimpulsflanken 4A und 4B. Während dieses Intervalls folgt der Ausgang von dem Taktgeber- bzw. Taktüberwachungsgerät mit Mehrheitsauswahl, wie in 4D gezeigt ist, dem dritten Eingang, der in 4C gezeigt ist, welcher in diesem Beispiel ein Übergangs- bzw. Schaltvorgang ist.
- Diese lose synchronisierte Situation sollte mit der engen bzw. straffen Synchronisation verglichen werden, die durch die vorliegende Erfindung geboten wird, wie in den Wellenformen 4E-4H gezeigt ist. Hier wird, wenn die Taktsignale straff bzw. eng innerhalb von zwei Nanosekunden synchronisiert sind, wie in 4E und 4F gezeigt ist, ein heimtückisches drittes Taktsignal, das in 4G gezeigt ist, effektiv aus dem Ausgang des Überwachungsgeräts mit Mehrheitsauswahl ausgefiltert, wie in der Wellenform 4H gezeigt ist.
- Fig. 5 ist eine detaillierte Schaltungsschematik des Prozessortaktgenerators, wie z. B. des PCLKGEN-Blocks 92 der Fig. 1 und 2. Der PCLK-Generator ist eine Zustandsmaschine, die das gewählte Taktsignal MCLK an ihrem Eingang empfängt und ein Taktsignal erzeugt, das ein Viertel der Eingangstaktfrequenz bei 25% des Eingangstaktimpulstastverhältnisses an ihrem Ausgang hat. Dieses Signal ist für die Anwendung auf einen zugeordneten Prozessor (nicht gezeigt) geeignet. Bei der Rückstellung wird die Zustandsmaschine gelöscht, und der PCLK-Ausgang wird auf einen niedrigen Zustand gesetzt. Optionell kann von dem Flip-Flop 250 ein Taktsignal mit 50% Tastverhältnis bei der Hälfte der Frequenz des gewählten Taktsignals MCLK abgegriffen werden. Im Einzelnen wird das gewählte Taktsignal MCLK als der Taktgeber- bzw. Takt (CLK)- Eingang an jedes von vier Flip-Flops 250, 252, 254 und 256 angekoppelt. Auf den Lösch- bzw. Rückstell (CLR)-Eingang von jedem der Flip-Flops 250, 252, 254 und 256 wird ein Systemlösch- bzw. -rückstell (CIR)-signal gegeben. In Abhängigkeit von den Systemerfordernissen sind MCLK und PCLK (entweder 50% oder 25% Tastverhältnisversion) beide für das Antreiben eines Mikroprozessors geeignet.
- Auf den Dateneingang (D) des Flip-Flops 252 wird der Ausgang von einem NAND-Tor 260 angewandt. Jeder der Eingänge zu dem NAND-Tor 260 wird von dem Ausgang des NAND-Tors 262 und 264 geliefert.
- Als der Eingang (D) des Flip-Flops 254 wird der Ausgang von einem NAND-Tor 270 angewandt. Das NAND-Tor 270 hat drei Eingänge entsprechend den Ausgängen der NAND-Tore 272, 274 und 276.
- Der Eingang (D) zu dem Flip-Flop 256 kommt von dem Ausgang eines NAND-Tors 280. Jeder Eingang des NAND-Tors 280 wird von dem Ausgang von einem Paar von NAND-Toren 282 und 284 her zugeführt. Der Q-Ausgang von dem Flip-Flop 256 umfasst das Prozessortaktsignal PCLK.
- Der Dateneingang (D) zu dem Flip-Flop 250 steht in Verbindung mit dem Q-Ausgang des Flip-Flops 250. Dieses Signal wird seinerseits als ein Eingangssignal zu den NAND-Toren 262, 272, 282 und 284 angewandt. Der Q-Ausgang von dem Flip-Flop 250 ist als ein Eingangssignal an die NAND-Tore 264 und 276 angekoppelt.
- Der Q-Ausgang von dem Flip-Flop 252 wird als ein Eingang an die NAND-Tore 264 und 274 geliefert. Der Q-Ausgang vom Flip- Flop 252 wird als ein Eingang an die NAND-Tore 262, 272, 282 und 284 geliefert.
- Der Q-Ausgang von dem Flip-Flop 254 wird als ein Eingang an die NAND-Tore 274, 276 und 284 geliefert. Der Q-Ausgang vom Flip-Flop 254 wird als ein Eingang zu den NAND-Toren 272 und 282 geliefert.
- Fig. 6 ist ein detailliertes schematisches Diagramm der Fehlerdetektions-, -identifikations- und -rekonfigurationssteuer- bzw. -regeleinrichtung, wie sie z. B. als Block 82 in Fig. 2 gezeigt ist. Die FDIR-Steuer- bzw. -Regeleinrichtung empfängt die Ausgänge von den drei Abstimmungs- bzw. Mehrheitswahlkernmodulen, die hier als FDINR 1 bzw. FDIN 2 bzw. FDIN 3 bezeichnet sind. Sie empfängt außerdem den Ausgang von dem schwimmenden, mitlaufenden Ersatzmodul, der hier als FDIN 4 bezeichnet ist. Die FDIR-Steuer- bzw. -Regeleinrichtung führt einen gegenseitigen Vergleich und eine Abstimmung über die Eingänge aus, um einen Fehler bzw. eine Störung zu detektieren und zu identifizieren. Es gibt fünf Stufen (von links nach rechts) in fünf Scheiben bzw. Schnitten (von der Oberseite zur Unterseite) der Schaltungsanordnung in der FDIR- Steuer- bzw. -Regeleinrichtung.
- Die erste Stufe besteht aus einer Reihe von acht (8) exklusiven oder (XOR)-Toren 301-308. Diese Tore sind so angeordnet bzw. eingerichtet, dass sie die Eingangssignale verarbeiten und irgendwelche Amplituden- bzw. Phasendifferenzen detektieren. Die zweite Stufe besteht aus sieben (7) UND-Toren 311- 317, wobei die UND-Tore 315-317 alle die Eingänge des ODER- Tors 318 antreiben. Die UND-Tore 311-317 und das ODER-Tor 318 sind zum Identifizieren, welches der verschiedenen Taktgebermodule einen Fehler- bzw. Störungssignalzustand aufweist, angeordnet bzw. eingerichtet.
- Die dritte Stufe besteht aus fünf (5) D-Flip-Flops 321-325. Jedes Flip-Flop wird über fünf (5) Pufferpaare 331-335 mit einem verzögerten Signal versorgt. Ein Torausgang wird über die UND-Tore 341-345 geliefert. Auf diese Art und Weise filtert die dritte Stufe Übergangs- bzw. Schaltvorgänge mit einer Toleranz von angenähert 2 Nanosekunden Taktzeitversatz aus.
- Die vierte Stufe besteht aus fünf (5) Latchs bzw. Signalspeichern 351-355. Jeder Latch bzw. Signalspeicher, wie z. B. 351, umfasst ein Paar Eingangs-UND-Tore 356, 357, deren Ausgänge ein ODER-Tor 358 speisen. Die Latchs bzw. Signalspeicher registrieren einen fehlerhaften Status, wenn ein Taktgeber versagt oder um mehr als eine Toleranz von 2 Nanosekunden außer Phase ist. Die Ausgänge von den Latchs bzw. Signalspeichern 351-355 sind über Latchs bzw. Signalspeicher 361-365 jeweils gepuffert. Die gepufferten Ausgänge von den Latchs bzw. Signalspeichern 351 und 352 bilden ein selbstüberwachendes komplementäres Paar von Ausgängen NSWTCH bzw. SWTCH, welche an den Multiplexer angekoppelt sind, wie in Fig. 7 gezeigt ist.
- Die gepufferten Ausgänge von den Latchs bzw. Signalspeichern 352-355 werden auf die kombinatorischen Logikblöcke 371 und 372 der fünften Stufe angewandt. Jeder kombinatorische Logikblock, wie z. B. der Logikblock 371, umfasst drei (3) NAND- Tore 381-383, deren Ausgänge an das ODER-Tor 385 angekoppelt sind. Die Ausgänge von den kombinatorischen Logikblöcken 371 und 372 werden auf die Eingänge eines ODER-Tors 390 gegeben, dessen Ausgang einen Wartungsvorwarnungsausgang FSTS erzeugt, wenn zwei Taktgebermodule ausgefallen sind und ein dritter die Operation des Systems gefährden könnte.
- Wie in Fig. 6 zu sehen ist, sehen die oberen beiden Scheiben bzw. Schnitte der FDIR-Steuer- bzw. Regeleinrichtung ein selbstüberwachendes, komplementäres Paar von Steuer- bzw. Regelsignalen zum Freigeben des Multiplexers vor. Die Eingänge zu dem Steuer- bzw. Regeleinrichtungsblock sind derart angeordnet, dass FDIN 1 von dem Oszillatorausgang von dem partikulären Kanal her kommt. Die mittlere drei Scheiben bzw. Schnitte führen die FDIR-Funktion an den Abstimmungs- bzw. Mehrheitswahlkernmodulen aus. Die untere Scheibe bzw. der untere Schnitt führt unabhängig die Fehler- bzw. Störungsdetektion und -identifikation für das schwimmende, mitlaufende Ersatzmodul durch.
- Fig. 7 ist ein detailliertes schematisches Diagramm des Multiplexers, wie z. B. des Multiplexers 88 in Fig. 2. Als Eingänge zu diesem System werden die Ausgänge von dem eigenen Kristalloszillator der Module angewandt, hier bezeichnet als OSCIN, und der Ausgang von dem Kristalloszillator des schwimmenden, mitlaufenden Ersatzes, hier als SPOSC bezeichnet. Als gesteuerte Eingänge werden die komplementären Steuersignale NSWTCH und SWTCH, wie sie aus der FDI-Steuereinrichtung geliefert werden, die im Detail in Fig. 6 gezeigt ist, angewandt.
- Der Multiplexer enthält ein Paar kombinatorische Logikblöcke 401 und 402. Jeder kombinatorische Logikblock, wie z. B. der Block 401, enthält ein Paar von drei Eingangs-UND-Toren 411 und 412, deren Ausgänge ein ODER-Tor 413 speisen. Die Ausgänge von dem ODER-Tor 413 umfassen die ausgewählten Ausgänge von dem Multiplexer und werden in vier Puffern 421-424 gepuffert, um die vier gepufferten Ausgangssignale MUX0-MUX3 vorzusehen.
- Das Eingangsoszillatorsignal OSCIN ist als ein Eingang an das erste der beiden UND-Tore, wie z. B. das UND-Tor 411, in den kombinatorischen Blöcken 401 und 402 angekoppelt. Das Oszillatorsignal des schwimmenden, mitlaufenden Ersatzes ist als ein Eingang an das zweite der beiden UND-Tore, wie z. B. das UND-Tor 412, in den Blöcken 401 und 402, angekoppelt. Das Steuersignal NSWTCH wird als ein Eingang auf das erste UND- Tor, wie z. B. das UND-Tor 411, in den Modulen 401 und 402, angewandt. Das Signal NSWTCH wird über Inverter 441 und 442 invertiert, bevor es an die Eingänge der zweiten UND-Tore, wie z. B. des UND-Tors 412, in den kombinatorischen Logikblöcken 401, 402 angekoppelt wird. Das Steuersignal SWTCH wird als ein Eingang an das zweite NAND-Tor, wie z. B. das NAND-Tor 412, in den Logikblöcken 401 und 402 geliefert und es wird durch Inverter 451 und 452 invertiert, bevor es als ein zweiter Eingang an das erste NAND-Tor, wie z. B. das NAND-Tor 411, in den kombinatorischen Logikblöcken 401, 402 geliefert wird.
- Der Multiplexer ist eine duplizierte Ausbildung, so dass das Signal des schwimmenden, mitlaufenden Ersatztaktgebers noch zu zwei anderen Taktgebermodulen des Abstimmungs- bzw. Mehrheitswahlkerns hereingeschaltet und übertragen werden kann, wenn einer der Multiplexer ausfällt. Der Multiplexer verwendet ein komplementäres Paar von Steuersignalen für seine Steuereingänge. Da das Steuersignal SWTCH zu dem Multiplexer nicht Teil der Oszillatorschleife ist, wird ein Fehler bzw. eine Störung an diesem Signal nicht detektiert. Wenn mehrere Fehler bzw. Störungen an allen SWTCH-Signalen auftreten, derart, dass das Signal des schwimmenden, mitlaufenden Ersatzmoduls nicht hereingeschaltet werden kann, dann können zwei Abstimmungs- bzw. Mehrheitswahlkernmoduloszillatorfehler bzw. -störungen den fehlertoleranten Taktgeber ohne Warnung auslöschen. Um zu verhindern, dass diese Situation auftritt, wird das SWTCH-Signal so ausgebildet, dass es selbstprüfend ist. Ein nicht kodiertes (d. h. kodiert = 01 oder 10) Signal würde dazu führen, dass der Multiplexerausgang auf einem Nullzustand ist und daher detektiert wird.
- Fig. 8 ist ein detailliertes schematisches Diagramm der bevorzugten Ausführungsform des Kristalloszillators gemäß der vorliegenden Erfindung. Der auf dem Chip befindliche Verstärker des Kristalloszillators benutzt einen CMOS-Inverter mit hohem Verstärkungsfaktor und einziger Stufe, der in seinem mittleren Bereich so vorgespannt ist, dass er als ein linearer Verstärker für das Taktsignal wirkt. Der Oszillator startet von selbst durch statistisches (thermisches) Schaltungsrauschen, und das Signal wird positiv zurückgekoppelt, bis die Sättigung erreicht ist. Der Verstärker liefert eine nominelle 180º-Phasenverschiebung zusätzlich zu den 180º Phasenverschiebung, die in der Rückkopplungsschleife vorgesehen ist. Wie in Fig. 8 gezeigt ist, ist der grundlegende Kristalloszillator eine parallele resonante Konfiguration, die einen Kristall (XTAL) benutzt, der eine Kapazität CO hat, zu welcher ein Reihenwiderstand und -kondensator RS, CS mit einem Reiheninduktor LS parallel geschaltet sind. Parallel zu dem Verstärker liegt ein Widerstand RF. Die entgegengesetzten Enden des Kristalls sind über Kondensatoren C1 und C2 an Erde verankert. Alle parasitischen Schaltungselemente auf dem Chip oder außerhalb des Chips sind, wie angegeben, in die Volumen- bzw. Großkondensatoren zusammengeworfen. Die Tankschaltung ist an den Inverter angekoppelt, bestehend aus komplementären CMOS-Transistoren M1-M4. RIN und ROUT repräsentieren die Verstärkungseingangsimpedanz bzw. -ausgangsimpedanz. Strom wird an die Inverterstufe durch eine Stromleitung Vdd angelegt.
- Der Ausgang von der Inverterstufe ist an den Multiplexer angekoppelt, wie es in den Fig. 1, 2 und 7 gezeigt ist. Der Eingang zu dem Kristalltankkreis ist das gewählte Taktsignal MCLK.
- Der Kristall ist so ausgebildet, dass er bei der Resonanzfrequenz ein sehr scharfes Ansprechen der Phase gegen die Frequenz hat. Der Widerstand RIN trägt dazu bei, die Phase in der Rückkopplungsschleife einzustellen und isoliert außerdem den Kristall von dem Eingang zu dem Verstärker M1-M4. Die Volumen- bzw. Großkondensatoren C1, C2, die parallel zu der inneren Kapazität des Ausgangsverstärkers sind, tragen dazu bei, den Effekt der Verstärkervariation zu reduzieren. Der Kristall wird in einem Bereich betrieben, in dem er eine induktive Reaktanz aufweist, die in Parallelresonanz mit den externen Volumen- bzw. Großkondensatoren ist, um eine hohe Impedanzspitze bei der Frequenz der Schwingung zu erzeugen. Der Kristall im parallelen Resonanzkreis arbeitet in seinem induktiven Bereich zwischen der Resonanz- und der Antiresonanzfrequenz, innerhalb dessen seine Phase um einen großen Bereich bei sehr kleiner Änderung in der Frequenz variiert. Mit anderen Worten heißt das, dass extrem kleine Frequenzverschiebungen (weniger als 0,01% oder 100 ppm) genügend sind, die Impedanz des Kristalls zum Kompensieren von Phasenabweichungen um die Schleife herum zu ändern sind. Die Frequenzebenencharakteristik des Kristalls ist derart, dass eine zusätzliche Phasenverzögerung, die durch das Multiplexen und das Puffern in den Abstimmungsnetzwerken erlitten wird, toleriert und in eine kleine Frequenzverschiebung übersetzt werden kann. Da das Überwachungsgerät mit Mehrheitsauswahl in jedem Modul identische Sätze von Eingangssignalen empfängt, wird, solange wie die Kristalle einen gemeinsamen Zieh- bzw. Mitnahmebereich haben, die Frequenzverschiebung aufgrund von Phasenabweichung und Umweltänderungen, wie z. B. der Temperatur, unter den Modulen gemeinsam bzw. üblich sein.
- Fig. 9 veranschaulicht das entsprechende Amplituden- (9A), Reaktanz- (9B) und Phasen- (9C) Ansprechen, wie es durch die Kristalle aufgewiesen wird, wenn sie in der Schaltung in Fig. 8 benutzt werden. Beachte, dass die Reaktanz den gemeinsamen Zieh- bzw. Mitnahmebereich zwischen der Serienresonanz- und Parallelresonanzfrequenz zeigt, wo die Reaktanz induktiv ist. Außerdem ist die große Phasenverschiebung bei sehr kleiner Frequenz, welche die Resonanz ändert, bemerkenswert. Demgemäß ist zu sehen, dass der in Fig. 8 gezeigte Kristalloszillator in der Phase mit dem hereinkommenden MCLK-Signal in allen Modulen einrastet, so dass dadurch eine straffe bzw. enge Synchronisation realisiert wird.
- Fig. 10 veranschaulicht die Schutzringe, die in dem einzelnen bzw. einzigen Halbleiterchip der bevorzugten Ausführungsform der Erfindung ausgebildet sind. Das Einrasten kann in einer CMOS-Einrichtung wegen des Vorhandenseins des parasitischen bipolaren Transistors in ihrer Struktur auftreten. Der bipolare Transistor kann kollektiv als ein gesteuerter Siliciumgleichrichter (SCR) wirken. Unter Überspannungsbeanspruchung oder ionisierender Strahlung kann ein lateraler Strom zwischen der Mulde und dem Substrat den SCR einschalten, wodurch große Ströme gezogen und die Logik verriegelt oder sogar die Schaltung beschädigt wird.
- Um die redundanten Taktgebermodule in dem Fall zu isolieren, in dem ein Modul einrastet, werden P+ und N+ Schutzringe um jedes Modul herum angewandt. Der P+ Ring wird zu bzw. auf Erde vorgespannt, und der N+ Ring wird auf die Vorspannung Vdd vorgespannt. Für das Substrat vom P-Typ wird der P+ Ring die Majoritätsträger (Löcher) sammeln, und der N+ wird die Minoritätsträger (Elektronen) sammeln, um eine Fortpflanzung des Einraststroms zu den anderen Modulen zu verhindern.
- Fig. 10 veranschaulicht den N+ Schutzring. Der Einrastschutz für die Eingangs-/Ausgangs-Anschlussfelder wird dadurch erreicht, dass jede Anschlussfeldzelle duale Schutzringe um ihre NMOS- und PMOS-Transistoren aufnimmt.
- Fig. 11-15 sind repräsentative Signalwellenformen für die bevorzugte Ausführungsform des fehler- bzw. störungstoleranten Taktgebers, die verschiedene Fehler- bzw. Störungsmodi veranschaulichen und die Fehler- bzw. Störungstoleranz demonstrieren. In den gezeigten Wellenformen ist ein Fehler bzw. eine Störung bzw. ein Ausfall eines Taktgebermoduls dadurch getestet worden, dass dessen Kristall entfernt wird und ein statistischer Fehler bzw. eine statistische Störung in den Eingang des Verstärkers des Kristalls injiziert wird. Wie in jeder der Fig. 11-15 demonstriert ist, sind die Ausgangstaktsignale MCLK und PCLK frei von Umschaltübergangsvorgängen, und das Wartungsvorwarnungssignal FSTS wird geltend gemacht, nachdem zwei der Module versagt haben bzw. ausgefallen sind. Zu Zwecken des Verständnisses der Fig. 11-15 sind den drei Abstimmungstaktgebermodulen Zusätze A, B und C gegeben worden, wobei ein Zusatz S das mitlaufende Ersatzmodul bezeichnet. Die identifizierten Signale sind:
- ACLKA - der Ausgang von dem Kristalloszillator, Modul A;
- MCLKA - der Systemtakt (gewählt)- Taktgeberausgang vom Modul A;
- PCLKA - der Prozessortakt- bzw. -taktgeberausgang vom Modul A;
- SFSTSA - der Falschstatusausgang vom Modul A.
- Fig. 11 veranschaulicht einen Fall von doppelten Taktgeberfehlern bzw. -störungen bzw. -ausfällen. Hier versagt das Modul A, dann versagt sequenziell der schwimmende, mitlaufende Ersatz. Beachte, dass alle Taktgeberausgänge operativ sind.
- Fig. 12 veranschaulicht einen anderen Fall von doppelten Taktgeberfehlern bzw. -störungen bzw. -ausfällen. Hier versagt zuerst das mitlaufende, schwimmende Ersatzmodul, was, wie gezeigt ist, keine Wirkung auf die Abstimmungs- bzw. Mehrheitswahlkernmodule hat. Die Module A versagen dann, und wieder sind alle Taktgeberausgänge operativ.
- Fig. 13 veranschaulicht den Fall, dass alle Taktgeber aller Abstimmungs- bzw. Mehrheitswahlkernmodule einen Fehler bzw. eine Störung bzw. einen Ausfall haben. Hier versagen ein Modul A, dann ein Modul B und dann ein Modul C aufeinanderfolgend. Das schwimmende, mitlaufende Ersatzsignal wird automatisch für jedes Auftreten eines Fehlers bzw. einer Störung eingeschaltet. Alle Taktgeber- bzw. Taktausgänge sind operativ und werden durch den Oszillator des schwimmenden, mitlaufenden Ersatzmoduls erzeugt.
- Fig. 14 veranschaulicht die Situation, in welcher ein heimtückischer byzantinischer Fehler auftritt. Hier versagt das Modul A in einer solchen Art und Weise, dass es unterschiedliche Signale an unterschiedliche Module repräsentiert - ein hohes Signal, ein niedriges Signal und ein Signal hoher Impedanz. Beachte, dass alle Taktgeber- bzw. Taktausgänge operativ sind. Dann versagt das schwimmende, mitlaufende Ersatzmodul. Beachte, dass alle Taktgeber- bzw. Taktausgänge noch operativ sind.
- Fig. 15 veranschaulicht einen anderen Fall von drei Taktgeberfehlern bzw. -störungen bzw. -ausfällen. Hier versagt das schwimmende, mitlaufende Ersatzmodul zuerst, dann versagt das Modul A festsitzend auf einem hohen Niveau, und dann versagt das Modul B festsitzend auf einem niedrigen Niveau. Die Module A und B bringen es in diesem Fall nicht fertig, einander zu kompensieren, derart, dass das Modul C noch in Betrieb ist und alle gewählten Taktgeber- bzw. Taktausgänge noch funktionell sind.
- Zusammenfassend sind ein verbessertes Verfahren und eine verbesserte Einrichtung zum Zur-Verfügung-Stellen eines fehler- bzw. störungstoleranten Taktgebers mit dynamisch rekonfigurierbarer Taktgeberarchitektur im Detail beschrieben worden. Die offenbarte fehler- bzw. störungstolerante Taktgebergestaltung wird im Besonderen mit Bezug auf die Implementation auf einem einzigen Halbleiterchip beschrieben, die eine Verminderung in der Teilzahl bietet und noch in einer solchen Art und Weise aufgebaut ist, dass eine hohe Fehler- bzw. Störungstoleranz sichergestellt wird.
- Obwohl eine bevorzugte Ausführungsform der Erfindung im Detail beschrieben worden ist, sollte es ersichtlich sein, dass Modifikationen und Variationen daran möglich sind, die alle in den Bereich der Erfindung fallen.
Claims (8)
1. Fehler- bzw. störungstoleranter Taktgeber, umfassend:
- einen Abstimmungs- bzw. Mehrheitswahlkern, umfassend eine
Mehrzahl von redundanten Taktgebermodulen (30, 40, 50), wobei
jedes Taktgebermodul ein Ausgangstaktsignal erzeugt, wobei
jedes der redundanten Taktgebermodule (30, 40, 50) folgendes
umfasst:
i) einen Oszillator (94) zum Erzeugen eines
periodischen Ausgangssignals;
ii) ein Abstimmungs- bzw. Mehrheitswahlmittel,
umfassend ein Taktgeber- bzw.
Taktüberwachungsgerät (84) mit Mehrheitsauswahl zum Empfangen der
Ausgangstaktsignale von den Taktgebermodulen
(30, 40, 50) des Abstimmungs- bzw.
Mehrheitswahlkerns und zum Ausgeben, in Übereinstimmung
mit einem vorbestimmten Abstimmalgorithmus,
eines gewählten Taktsignals, wobei der Oszillator
(94) von jedem Taktgebermodul so angeordnet bzw.
eingerichtet ist, dass er mit dem von dem Modul
gewählten Taktsignal einrastet;
iii) einen Multiplexer (88), der ein Paar von
Eingangsanschlüssen, einen Ausgangsanschluss und
einen Steuer- bzw. Regelanschluss hat;
iv) Mittel zum Ankoppeln des von dem eigenen
Oszillator (94) eines Moduls erzeugten Ausgangssignals
an den ersten Eingangsanschluss von dessen
Multiplexer (88); und
- ein einen Fehler bzw. eine Störung detektierendes,
synchronisierendes und schaltendes Mittel zum Detektieren eines
Fehlers in wenigstens einem der redundanten Taktgebermodule des
Abstimmungs- bzw. Mehrheitswahlkerns,
gekennzeichnet durch:
- ein schwimmendes, mitlaufendes Ersatztaktgebermodul (60),
das ein Ausgangstaktsignal erzeugt, wobei das einen Fehler
detektierende, synchronisierende und schaltende Mittel
synchron das von dem schwimmenden, mitlaufenden
Ersatztaktgebermodul (60) erzeugte Signal für das Signal, welches von dem
fehler- bzw. störungsbehafteten redundanten Taktgebermodul
(30, 40, 50) des Abstimmungs- bzw. Mehrheitswahlkerns erzeugt
worden ist, in Ansprechung auf einen detektierten Fehler bzw.
eine detektierte Störung substituiert, wodurch das gewählte
Ausgangssignal von dem fehler- bzw. störungstoleranten
Taktgeber trotz eines Fehlers bzw. einer Störung in einem
Taktgebermodul des Abstimmungs- bzw. Mehrheitswahlkerns stabil
bleibt;
- Mittel zum Ankoppeln des Ausgangssignals von dem Oszillator
(106) des schwimmenden, mitlaufenden Ersatztaktgebermoduls
(106) an den zweiten Eingangsanschluss von jedem Multiplexer
(88, 116); und
- ein Fehler- bzw. Störungsdetektions-, -identifikations- und
-rekonfigurationsmittel (82, 110) zum Überwachen der
Ausgangstaktsignale (0-15) von jedem Taktgebermodul (30, 40, 50,
60) und ansprechend auf das Detektieren eines Fehlers bzw.
einer Störung in seinem eigenen Taktgebermodul, erzeugend ein
Steuer- bzw. Regelsignal zum Schalten des Multiplexers von
einem Zustand des Ausgebens des Signals, das von dem eigenen
Oszillator des Taktgebermoduls erzeugt worden ist, zum
Ausgeben des Signals, das von dem Oszillator (106) des
schwimmenden, mitlaufenden Ersatztaktgebers (106) erzeugt wird,
derart, dass alle Taktgebermodulausgangssignale synchron laufen.
2. Fehler- bzw. störungstoleranter Taktgeber nach Anspruch
1, worin jedes Taktgebermodul weiter folgendes umfasst:
- einen Prozessortaktgenerator (92, 120) zum vorbestimmten
Verarbeiten des gewählten Ausgangssignals zum Erzeugen eines
Taktsignals, das für die Anwendung auf einen Datenprozessor
geeignet ist.
3. Fehler- bzw. störungstoleranter Taktgeber nach Anspruch
1, worin alle Taktgebermodule auf einem einzigen
Halbleiterchip hergestellt sind.
4. Fehler- bzw. störungstoleranter Taktgeber nach Anspruch
3, worin:
Leistung bzw. Strom über unabhängige Leistungs- bzw.
Stromverbindungen zu jedem Taktgebermodul geliefert wird.
5. Fehler- bzw. störungstoleranter Taktgeber nach Anspruch
3 oder 4, worin:
der Halbleiterchip vorbestimmte Schutzringe (32, 42, 52, 62)
umfasst, die um jedes Taktgebermodul (30, 40, 50, 60) herum
ausgebildet sind, um eine Fortpflanzung des Latch-up- bzw.
Einraststroms von einem Taktgebermodul zu irgendeinem anderen
Taktgebermodul zu verhindern.
6. Fehler- bzw. störungstoleranter Taktgeber nach Anspruch
3, 4 oder 5, worin:
ein Datenbus (70) auf dem Halbleiterchip zum Verbinden der
Taktgebermodule (30, 40, 50, 60) miteinander ausgebildet ist;
und
ausgewählte gegenseitige Verbindungsstellen unter bzw.
zwischen den Taktgebermodulen pufferisoliert sind und mit einer
Punkt-zu-Punkt-Verdrahtung hergestellt sind, derart, dass
mehrere Fehler bzw. Störungen auf dem Datenbus (70) toleriert
werden können.
7. Verfahren zum Erzeugen eines fehler- bzw.
störungstoleranten Taktsignals, umfassend die folgenden Schritte:
a) Vorsehen eines Abstimmungs- bzw. Mehrheitswahlkerns, der
aus einer Mehrzahl von redundanten Taktgebermodulen (30,
40, 50) besteht, wobei jedes Taktgebermodul ein
Ausgangstaktsignal erzeugt;
wobei jedes der redundanten Taktgebermodule (30, 40, 50)
folgendes zur Verfügung stellt:
i) einen Oszillator (94) zum Erzeugen eines
periodischen Ausgangssignals;
ii) ein Abstimmungs- bzw. Mehrheitswahlmittel,
umfassend ein Taktgeber- bzw. Taktüberwachungsgerät
(84) mit Mehrheitsauswahl, das die
Ausgangstaktsignale von den Taktgebermodulen (30, 40, 50)
des Abstimmungs- bzw. Mehrheitswahlkerns
empfängt und in Übereinstimmung mit einem
vorbestimmten Abstimmungs- bzw. Wahlalgorithmus ein
gewähltes Taktsignal ausgibt, wobei das Signal,
das von dem Oszillator jedes Taktgebermoduls
erzeugt worden ist, mit dem gewählten Taktsignal
eingerastet wird;
iii) einen Multiplexer (88), der ein Paar
Eingangsanschlüsse, einen Ausgangsanschluss und einen
Steuer- bzw. Regelanschluss hat;
und wobei jedes der redundanten Taktgebermodule außerdem
ein Ausgangssignal, das von dem eigenen Oszillator des
Moduls erzeugt worden ist, an den ersten
Eingangsanschluss seines Multiplexers ankoppelt;
b) Vorsehen eines einen Fehler bzw. eine Störung
detektierenden, synchronisierenden und schaltenden Mittels (82)
für das Detektieren eines Fehlers bzw. einer Störung in
wenigstens einem der redundanten Taktgebermodule (30,
40, 50) des Abstimmungs- bzw. Mehrheitswahlkerns
wobei das Verfahren durch die folgenden zusätzlichen Schritte
gekennzeichnet ist:
1) Vorsehen eines schwimmenden, mitlaufenden
Ersatztaktgebermoduls (60), welches ein Ausgangstaktsignal erzeugt,
wobei das einen Fehler bzw. eine Störung detektierende,
synchronisierende und schaltende Mittel synchron das
Signal, welches von dem schwimmenden, mitlaufenden
Ersatztaktgebermodul (60) erzeugt wird, für das fehler- bzw.
störungsbehaftete Signal, welches von einem redundanten
Taktgebermodul des Abstimmungs- bzw. Mehrheitswahlkerns
erzeugt worden ist, in Ansprechung auf einen
detektierten Fehler bzw. eine detektierte Störung substituiert,
wodurch das gewählte Ausgangssignal von dem fehler- bzw.
störungstoleranten Taktgeber trotz eines Fehlers bzw.
einer Störung in einem Taktgebermodul des Abstimmungs-
bzw. Mehrheitswahlkerns stabil bleibt;
2) Ankoppeln des Ausgangssignal von dem Oszillator (106)
des schwimmenden, mitlaufenden Ersatztaktgebers an den
zweiten Eingangsanschluss jedes Multiplexers;
3) Überwachen der Ausgangstaktsignale (0-15) von jedem
Taktgebermodul (30, 40, 50, 60) und Erzeugen in
Ansprechung auf das Detektieren eines Fehlers bzw. einer
Störung in dessen eigenem Taktgebermodul, eines Steuer-
bzw. Regelsignals zum Schalten von dessen Multiplexer
(88, 116) aus einem Zustand des Ausgebens des Signals,
das von dem eigenen Oszillator des Taktgebermoduls
erzeugt worden ist, zum Ausgeben des Signals, das von dem
Oszillator (106) des schwimmenden, mitlaufenden
Ersatztaktgebermoduls erzeugt wird, derart, dass alle
Taktgebermodulausgangssignale synchron laufen.
8. Verfahren nach Anspruch 7, weiter umfassend den Schritt
des:
Herstellens aller der Taktgebermodule auf einem einzigen
Halbleiterchip.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/280,974 US5537583A (en) | 1994-10-11 | 1994-10-11 | Method and apparatus for a fault tolerant clock with dynamic reconfiguration |
PCT/US1995/009321 WO1996011439A1 (en) | 1994-10-11 | 1995-07-20 | Method and apparatus for a fault tolerant clock with dynamic reconfiguration |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69528468D1 DE69528468D1 (de) | 2002-11-07 |
DE69528468T2 true DE69528468T2 (de) | 2003-02-06 |
Family
ID=23075431
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69528468T Expired - Fee Related DE69528468T2 (de) | 1994-10-11 | 1995-07-20 | Verfahren und vorrichtung für fehlertoleranten taktgeber mit dynamischer rekonfiguration |
Country Status (5)
Country | Link |
---|---|
US (1) | US5537583A (de) |
EP (1) | EP0787324B1 (de) |
AU (1) | AU3104195A (de) |
DE (1) | DE69528468T2 (de) |
WO (1) | WO1996011439A1 (de) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3502216B2 (ja) * | 1995-07-13 | 2004-03-02 | 富士通株式会社 | 情報処理装置 |
US5774705A (en) * | 1995-09-28 | 1998-06-30 | Emc Corporation | Dual oscillator clock pulse generator |
SE506739C2 (sv) * | 1995-09-29 | 1998-02-09 | Ericsson Telefon Ab L M | Drift och underhåll av klockdistributionsnät med redundans |
TW325608B (en) * | 1996-04-17 | 1998-01-21 | Toshiba Co Ltd | Timing signal generation circuit and a display device using such a circuit |
SE9702176L (sv) * | 1997-06-06 | 1998-12-07 | Ericsson Telefon Ab L M | En maskinvarukonstruktion för majoritetsval, samt test och underhåll av majoritetsval |
DE69835767T2 (de) * | 1997-12-11 | 2006-12-28 | Telefonaktiebolaget Lm Ericsson (Publ) | Redondanter abschluss zur dynamischer fehlerisolierung |
US6085350A (en) * | 1998-03-04 | 2000-07-04 | Motorola, Inc. | Single event upset tolerant system and method |
US6272647B1 (en) * | 1998-11-20 | 2001-08-07 | Honeywell Inc. | Fault tolerant clock voter with recovery |
US6317804B1 (en) * | 1998-11-30 | 2001-11-13 | Philips Semiconductors Inc. | Concurrent serial interconnect for integrating functional blocks in an integrated circuit device |
US6631483B1 (en) * | 1999-06-08 | 2003-10-07 | Cisco Technology, Inc. | Clock synchronization and fault protection for a telecommunications device |
US7350116B1 (en) | 1999-06-08 | 2008-03-25 | Cisco Technology, Inc. | Clock synchronization and fault protection for a telecommunications device |
US6757350B1 (en) | 1999-06-12 | 2004-06-29 | Cisco Technology, Inc. | Redundant clock generation and distribution |
US6801951B1 (en) * | 1999-10-08 | 2004-10-05 | Honeywell International Inc. | System and method for fault-tolerant clock synchronization using interactive convergence |
US6732300B1 (en) | 2000-02-18 | 2004-05-04 | Lev Freydel | Hybrid triple redundant computer system |
US6550018B1 (en) | 2000-02-18 | 2003-04-15 | The University Of Akron | Hybrid multiple redundant computer system |
US6711513B2 (en) | 2002-05-02 | 2004-03-23 | Ivensys Systems, Inc. | Fault tolerant apparatus and method for determining a revolution rate of a gear |
US20040153700A1 (en) * | 2003-01-02 | 2004-08-05 | Nixon Mark J. | Redundant application stations for process control systems |
US20070255875A1 (en) * | 2004-10-25 | 2007-11-01 | Reinhard Weiberle | Method and Device for Switching Over in a Computer System Having at Least Two Execution Units |
US7898937B2 (en) * | 2006-12-06 | 2011-03-01 | Cisco Technology, Inc. | Voting to establish a new network master device after a network failover |
DE102010003551A1 (de) * | 2010-03-31 | 2011-10-06 | Robert Bosch Gmbh | Timermodul und Verfahren zur Überprüfung von Ausgangssignalen eines Timermoduls |
US8955157B2 (en) | 2012-07-03 | 2015-02-10 | Honeywell International Inc. | Method and apparatus for differential power analysis protection |
CN104917498B (zh) * | 2015-06-05 | 2017-08-04 | 中国航天科技集团公司第九研究院第七七一研究所 | 一种基于相差的三模时钟产生电路 |
US9665421B2 (en) | 2015-09-01 | 2017-05-30 | Nxp Usa, Inc. | Safe secure bit storage with validation |
US10356203B2 (en) | 2016-12-15 | 2019-07-16 | The Charles Stark Draper Laboratory, Inc. | Fault-tolerant operational group on a distributed network |
US10326643B2 (en) | 2016-12-27 | 2019-06-18 | The Charles Stark Draper Laboratory, Inc. | Self-configuring fault-tolerant operational group |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4239982A (en) * | 1978-06-14 | 1980-12-16 | The Charles Stark Draper Laboratory, Inc. | Fault-tolerant clock system |
NL8502768A (nl) * | 1985-10-10 | 1987-05-04 | Philips Nv | Dataverwerkingsinrichting, die uit meerdere, parallel-werkende dataverwerkingsmodules bestaat, multipel redundante klokinrichting, bevattende een aantal onderling zelf-synchroniserende klokschakelingen voor gebruik in zo een dataverwerkingsinrichting, en klokschakeling voor gebruik in zo een klokinrichting. |
GB8612454D0 (en) * | 1986-05-22 | 1986-07-02 | Inmos Ltd | Redundancy scheme for multi-stage apparatus |
US4868826A (en) * | 1987-08-31 | 1989-09-19 | Triplex | Fault-tolerant output circuits |
DE68913629T2 (de) * | 1988-03-14 | 1994-06-16 | Unisys Corp | Satzverriegelungsprozessor für vielfachverarbeitungsdatensystem. |
US4907232A (en) * | 1988-04-28 | 1990-03-06 | The Charles Stark Draper Laboratory, Inc. | Fault-tolerant parallel processing system |
JPH0797328B2 (ja) * | 1988-10-25 | 1995-10-18 | インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン | フオールト・トレラント同期システム |
US4984241A (en) * | 1989-01-23 | 1991-01-08 | The Boeing Company | Tightly synchronized fault tolerant clock |
US4979191A (en) * | 1989-05-17 | 1990-12-18 | The Boeing Company | Autonomous N-modular redundant fault tolerant clock system |
US5404363A (en) * | 1991-11-27 | 1995-04-04 | Honeywell Inc. | Two-fail-operational fault-tolerant multiple clock system |
US5377206A (en) * | 1993-02-03 | 1994-12-27 | Honeywell Inc. | Multiple-channel fault-tolerant clock system |
US5377205A (en) * | 1993-04-15 | 1994-12-27 | The Boeing Company | Fault tolerant clock with synchronized reset |
-
1994
- 1994-10-11 US US08/280,974 patent/US5537583A/en not_active Expired - Fee Related
-
1995
- 1995-07-20 DE DE69528468T patent/DE69528468T2/de not_active Expired - Fee Related
- 1995-07-20 AU AU31041/95A patent/AU3104195A/en not_active Abandoned
- 1995-07-20 WO PCT/US1995/009321 patent/WO1996011439A1/en active IP Right Grant
- 1995-07-20 EP EP95926776A patent/EP0787324B1/de not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US5537583A (en) | 1996-07-16 |
AU3104195A (en) | 1996-05-02 |
EP0787324A1 (de) | 1997-08-06 |
EP0787324B1 (de) | 2002-10-02 |
DE69528468D1 (de) | 2002-11-07 |
WO1996011439A1 (en) | 1996-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69528468T2 (de) | Verfahren und vorrichtung für fehlertoleranten taktgeber mit dynamischer rekonfiguration | |
DE69415090T2 (de) | Taktgeneratorsystem mit Mehrfachfrequenz am Ausgang | |
DE68923845T2 (de) | Synchronisierte fehlertolerante Uhren für Multiprozessorsysteme. | |
DE60002068T2 (de) | Redundante, synchrone taktverteilung für rechnersysteme | |
DE3889525T2 (de) | Zwangsmässige Synchronisation zweier Impulsfolgen. | |
DE69633539T2 (de) | Taktverteilungsschaltung | |
DE3632205C2 (de) | Aus mehreren parallel arbeitenden Datenverarbeitungsmoduln bestehende Datenverarbeitungsanordnung mit einer mehrfach redundanten Taktanordnung | |
DE3785327T2 (de) | Taktgeber-regelsystem und verfahren fuer ein paralleles energievesorgungssystem mit konstanter frequenz. | |
US4984241A (en) | Tightly synchronized fault tolerant clock | |
DE69223990T2 (de) | Auch gegen mehrfachfehler sicherer, fehlertoleranter taktgeber | |
DE102007005708A1 (de) | Takt- und Datenrückgewinnungsschaltung, die erste und zweite Stufen umfasst | |
DE69409296T2 (de) | Mehrkanaliger fehlertoleranter taktgeber | |
DE69317507T2 (de) | Fehlertolerantes Rechnersystem mit einem in jedem Prozessormodul vorgesehenen Fehlerdetektor | |
DE69508766T2 (de) | Genauer digitaler, fehlertoleranter taktgeber | |
WO2008061915A2 (de) | Integrierte schaltung mit strahlungsschutz | |
DE3889140T2 (de) | On-chip, On-line-Wechselstrom und Gleichstromfehlererkennungssystem für Taktbaum. | |
DE2651314C2 (de) | Sicherheits-Ausgabeschaltung für eine Binärsignale abgebende Datenverarbeitungsanlage | |
DE69425494T2 (de) | Auf gleichzeitiger prüfung basierte stark ausfallsichere schnittstelle | |
DE60035373T2 (de) | Vorrichtung und verfahren in einer halbleiterschaltung | |
US4276645A (en) | Receiver for simultaneously transmitted clock and auxiliary signals | |
DE69718129T2 (de) | Redundantes Datenverarbeitungssystem | |
DE69931512T2 (de) | Phasendifferenzvergrösserer | |
DE10310065A1 (de) | Verfahren und Vorrichtung für eine Verzögerungsverriegelungsschleife | |
DE68913926T2 (de) | Elektronisches System mit mehreren abnehmbaren Einheiten. | |
EP0246218B1 (de) | Fehlertolerantes Datenverarbeitungssystem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |