-
BEREICH DER ERFINDUNG
-
Die vorliegende Erfindung bezieht
sich auf zeitliche Koordinierung bzw. Zeitsteuerung in elektronischen
Systemen und insbesondere auf Systeme, die redundante, synchrone
Verteilung eines Taktes einsetzen.
-
BESCHREIBUNG DER ARTVERWANDTEN
TECHNIK
-
Die Notwendigkeit, ein lokales Signal
zu erzeugen, das mit einem externen Bezugssignal synchronisiert
ist, ist in vielen elektronischen Anwendungen wie zum Beispiel Frequenzsynthese,
Taktwiederherstellung, Taktgenerierung und Frequenzdemodulation
von entscheidender Bedeutung. Diese Kohärenz zwischen dem Bezugssignal
und der lokalen Nachbildung wird als "Phasen-Synchronisation" bezeichnet. Dies umfaßt sowohl,
daß das
lokale Signal üblicherweise
phasengleich mit dem externen Bezugssignal ist, als auch, daß es von
dem externen Bezugssignal um eine gewisse Phasenkonstante abgesetzt
ist bzw. einen Phasenabstand von einer gewissen Phasenkonstanten
hat.
-
Im Zentrum vieler solcher Synchronisationsschaltkreise
steht eine bestimmte Form eines Phasenregelkreises (phase locked
loop, PLL). Phasenregelkreise sind Regelkreise mit Rückführung, deren geregelter
Parameter die Phase einer lokal erzeugten Nachbildung eines ankommenden
Bezugssignals ist. Phasenregelkreise haben drei Grundkomponenten:
eine Phasenvergleicherschaltung bzw. einen Phasendetektor, ein Schleifenfilter
und einen spannungsgesteuerten Oszillator.
-
Im allgemeinen generieren elektronische Systeme
wie zum Beispiel Computersysteme ein Haupttaktsignal von einem Kristall.
Das Haupttaktsignal kann in einen Phasenregelkreises eingespeist werden,
um viele identische Taktsignale (z.B. Fanout), die verwendet werden,
um die Komponenten des Computersystems zu synchronisieren, zu erzeugen.
-
Das Haupttaktsignal ist eine kritische
Komponente des Computersystems. Der Ausfall des Haupttaktsignals
kann das gesamte System lahm legen. Daher beinhalten einige Systeme
zwei Haupttaktsignale, von denen eines redundant ist, um dieses
Problem zu verringern. Bei einem Ausfall des ersten Haupttaktsignals
wird das System heruntergefahren und kann wieder initialisiert werden
unter Verwendung des zweiten Haupttaktsignals. Jedoch unterbricht
eine solche Anforderung den Systembetrieb. Demnach wäre es wünschenswert,
ein System zur Verfügung
zu stellen, das bei Ausfall von einer Taktquelle zu einer anderen
Taktquelle umschalten kann, ohne eine Unterbrechung des Systembetriebs zu
verursachen.
-
US
5.422.915 offenbart ein ausfalltolerantes System zur Taktverteilung,
um synchronisierte Taktsignale für
mehrere Lastschaltkreise zur Verfügung zu stellen, wobei das
Verteilungssystem so beschaffen ist, daß ein partieller Ausfall irgendeiner
der in Beziehung stehenden Schaltungen nicht zum Anhalten des Systems
führt.
Voneinander isolierte bzw. getrennte Stromverteilungsdomänen und
Schaltungen, Stromversorgungen, Oszillation, Synchronisation, Auswahl
und Verteilung sind alle in redundanter Form vorgesehen. Die mehrfachen
Oszillatoren sind synchronisiert, um gleichzeitig synchronisierte
Taktsignale zu erzeugen, die selektiv auf mehrere Lastschaltkreise
verteilt werden. Manueller) oder automatischer) Fehlerbehebung bzw.
Wiederanlauf im Fehlerfall wird initiiert, wenn ein Fehlerbehebungsschaltkreis
einen Synchronisationsfehler entdeckt. Um die Komplexität der Synchronisation
zu minimieren, wird ein einzelnes Taktsignal erzeugt, wobei Schaltkreise bzw.
Schaltungen an den Lastschaltkreisen vorgesehen sind, um einen mehrfachen
Phasentakt zu emulieren.
-
US
5.416.443 offenbart einen integrierten Schaltkreis mit
sehr hoher Integration (very large scale integrated circuit, VLSI),
der möglicherweise
Taktsignale benötigt,
der einen Phasenregelkreis (PLL) Schaltkreis enthält und der
auf einer Leiterplatte bzw. Platine montiert ist. Kristalloszillatoren,
die als Quellen für
feste Taktfrequenzen agieren, sind auf der Leiterplatte bzw. Platine
montiert und werden von einem Erfassungsschaltkreis bzw. Detektorschaltkreis überwacht,
der die Frequenzen der Kristalloszillatoren vergleicht. Alle Oszillatoren
sollten dieselbe Frequenz erzeugen, wenn sie richtig arbeiten. Fehlende Übereinstimmung
der Frequenzen zwischen den Kristalloszillatoren wird entdeckt und
gemeldet. Ein Gatterschaltkreis empfängt die Ausgabe des Detektorschaltkreises
und läßt nur einen
Takt an den Rest der Platine passieren, der von einem richtig funktionierenden
Kristalloszillator stammt. Programmierbare Zähler, die im PLL lokal vorgesehen
sind, erzeugen Taktimpulse in einer Frequenz, die ein Verhältnis der
vom Kristalloszillator erzeugten Impulse sind, die innerhalb der
Platine zirkulieren.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Die oben umrissenen Probleme werden
zum großen
Teil durch ein System und ein Verfahren zum Bereitstellen redundanter,
synchronisierter Takte in einem Computersystem gelöst. Bei
einem Ausfall eines Haupttaktsignals schaltet das System zu einem Nebentaktsignal
um, das mit dem Haupttaktsignal synchronisiert ist.
-
Ein Aspekt der Erfindung sieht ein
Computersystem vor, das enthält:
einen Phasenregelkreis, der geschaltet ist, ein erstes Taktsignal
und ein zweites Taktsignal zu empfangen, wobei das zweite Taktsignal
mit dem ersten Taktsignal synchron ist, wobei der Phasenregelkreis
so konfiguriert ist, daß er
das erste Taktsignal als Eingangssignal entgegennimmt, wobei der
Phasenregelkreis weiterhin so konfiguriert ist, daß er das
erste Taktsignal hinsichtlich eines Ausfalls bzw. Fehlers überwacht,
wobei im Fall, daß ein
Ausfall bzw. Fehler des ersten Taktsignals festgestellt wird, der
Phasenregelkreis darüber
hinaus so konfiguriert ist, daß er
ein zweites Taktsignal als Eingangssignal anstelle des ersten Taktsignals
entgegennimmt, und wobei der Phasenregelkreis ein lokales Taktsignal
ausgibt, das mit dem Eingabe- bzw. Eingangstaktsignal synchronisiert
ist; und ein oder mehrere lokale Lastelemente, die in Übereinstimmung
mit dem lokalen Taktsignal arbeiten. Diese Konfiguration kann es
vorteilhafterweise zulassen, daß ein
redundanter, synchronen Nebentakt einen Haupttakt auf einen Ausfall
des Haupttaktes hin ersetzt.
-
Ein weiterer Aspekt der Erfindung
sieht ein Verfahren vor, um redundante, synchrone Taktsignale in
einem Computersystem, das einen Phasenregelkreis beinhaltet, bereitzustellen,
wobei das Verfahren umfaßt:
der Phasenregelkreis empfängt
ein erstes Taktsignal und ein zweites Taktsignal, wobei das zweite
Taktsignal mit dem ersten Taktsignal synchron ist; der Phasenregelkreis
nimmt das erste Taktsignal als Eingangssignal entgegen; der Phasenregelkreis überwacht
das erste Taktsignal hinsichtlich eines Ausfalls bzw. Fehlers und
im Fall, daß ein
Ausfall bzw. Fehler des ersten Taktsignals festgestellt wird, nimmt
der Phasenregelkreis das zweite Taktsignal als Eingangssignal anstelle
des ersten Taktsignals entgegen; der Phasenregelkreis gibt ein lokales Taktsignal
aus, das mit dem Eingabe- bzw. Eingangstaktsignal synchronisiert
ist; und ein oder mehrere lokale Lastelemente arbeiten in Übereinstimmung
mit dem lokalen Taktsignal. Das Verfahren kann vorteilhafterweise
während
des Umschaltens zwischen den Taktquellen einen kontinuierlichen
Betrieb des Computersystems aufrechterhalten.
-
In bevorzugten Ausführungsformen
geschieht das Umschalten des Taktes von einem ausgefallenen Haupttakt
zu einem redundanten Nebentakt automatisch und unterbricht oder
beeinträchtigt den
Betrieb des Computersystems nicht. Kein Anhalten oder Neustarten
ist erforderlich. Der Austausch des Taktes ist für die lokalen Lastelemente
des Taktes, die das lokale Taktsignal verwenden, nicht sichtbar.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
Ausführungsformen der Erfindung
sind nachfolgend nur mittels Beispielen unter Bezug auf die beigefügten Zeichnungen
beschrieben, von denen:
-
1 ein
Blockdiagramm einer Ausführungsform
eines verallgemeinerten Computersystems ist, das zwei Taktplatinen
und eine Systemplatine enthält;
-
2 ein
Blockdiagramm einer Ausführungsform
der Taktplatinen aus 1 ist;
-
3 ein
Blockdiagramm einer Ausführungsform
der Systemplatine aus 1 ist;
-
4 ein
Blockdiagramm einer Ausführungsform
des Auswahl-Phasenregelkreises aus 3 ist.
-
5A und 5B Blockdiagramme von Ausführungsformen
des Phasendetektors aus 4 sind,
welche einen ergänzenden
Korrektur-Impuls-Generator und einen den Impuls begrenzenden Schaltkreis
enthält;
und
-
6 ein
Zeitdiagramm ist, das eine Ausführungsform
von erweiterten bzw. fortgeschrittenen Operationen des Auswahl-Phasenregelkreises
aus 4 veranschaulicht
einschließlich
Umschalten auf eine Ersatz-Taktquelle, breiten- bzw. dauerbegrenzter
Impulse des Phasenfehlersignals und eines ergänzenden Fehlerkorrektur-Impulses.
-
GENAUE BESCHREIBUNG DER
ERFINDUNG
-
1 – Verallgemeinertes
Computer System
-
In 1 ist
ein Blockdiagramm einer Ausführungsform
eines verallgemeinerten Computersystems 100 dargestellt.
Eine erste Taktquelle, dargestellt als Taktplatine-0 105A,
versorgt die Taktplatine-1 105B und die Systemplatine 120 mit
einem ersten Taktsignal 106A. Die Taktplatine-1 105B ist
als eine zweite Taktquelle dargestellt, welche die Taktplatine-0 105A und
die Systemplatine 120 mit einem zweiten Taktsignal 106B versorgt.
Eine Systemsteuerung 110 ist mit den zwei Taktplatinen 105A und 105B sowie
mit der Systemplatine 120 gekoppelt.
-
Wie unten ausführlicher beschrieben ist empfängt die
Systemplatine 120 sowohl das erste Taktsignal 106A als
auch das zweite Taktsignal 106B. Das erste Taktsignal 106A und
das zweite Taktsignal 106B sind vorzugsweise in Phase an
einer aufsteigenden Flanke, Phasen- und frequenzgeregelt, wenngleich
die Frequenzen jedes Taktsignals 106A und 106B um
ein ganzzahliges Vielfaches differieren können. Bei einem Ausfall von
einem der Taktsignale 106A und 106B, das aktuell
als das Haupttaktsignal dient, schaltet die Systemsteuerung 110 zum
anderen Taktsignal, 106A, 106B, das zuvor als
das Nebentaktsignal diente, als dem neuen Haupttaktsignal um. Daher übernimmt
das Nebentaktsignal, vielleicht von Taktplatine-1 105B,
die Rolle des Haupttaktsignals, wenn zum Beispiel Taktplatine-0 105A fehlschlägt, das
erwartete Haupttaktsignal 106A bereitzustellen.
-
Es wird darauf hingewiesen, daß die Systemsteuerung 110 oder
Teile davon in irgendeiner der Platinen Taktplatine-0 105A,
Taktplatine-1 105B, Systemplatine 120 oder irgendeiner
anderen Platine oder Komponente des Computersystems 100 je
nach Wunsch enthalten sein kann. In den Ausführungsformen, die in den 2-5 veranschaulicht sind, kann ein Teil
der Systemsteuerung 110 auf jeder abgebildeten Platine
enthalten sein, auch wenn es nicht ausdrücklich dargestellt ist. Ein
Teil der Systemsteuerung 110 kann in jedem Auswahl-PLL 300,
wie unten mit Bezug auf 3 beschrieben,
enthalten sein.
-
2 – Taktplatinen
und Taktsignale
-
In 2 werden
nun eine Ausführungsform der
zwei Taktplatinen 105A und 105B sowie die Kopplung
ihrer Taktsignale 106A und 106B veranschaulicht.
Die Taktplatine-0 105A enthält einen spannungsgesteuerten
Kristalloszillator (voltage controlled crystal oscillator, VCXO) 220A,
der angeschlossen ist, daß er
ein Steuerungssignal 205A empfängt. Wie dargestellt wird die
Quelle des Steuerungssignals 205A von einen Schalter 218A bestimmt.
Wenn der Schalter 218A in der Haupt. Position ist (aus
bzw. off in diesem Fall) und damit die Taktplatine-0 105A zur
Quelle des Haupttaktes macht, ist die Quelle des Steuerungssignals 205A vorzugsweise
eine feste Bezugsspannung. In einer Ausführungsform ist die generierte
feste Bezugsspannung eine Spannung innerhalb des Betriebsspannungsbereiches
von VCXO 220A, wobei die Steuerspannung den VCXO 220A dazu
veranlaßt,
eine Bezugsausgangsfrequenz zu erzeugen wie zum Beispiel 75 MHz.
In einer bevorzugten Ausführungsform
ist der Betriebsspannungsbereich von 0–3,30 V und die feste Bezugsspannung
ist 1,65 V.
-
Die Frequenzausgabe von VCXO 220A ist vorzugsweise
eine von mehreren Takteingaben bzw. -eingängen, die in den Schaltkreis
gemultiplext werden. Die gewählte
Ausgabe des Multiplexers wird einem Fanout-Puffer 208A zur
Verfügung
gestellt. Der Fanout-Puffer 208A gibt eine Mehrzahl von
Taktsignalen 106A an verschiedene Ziele aus, wie zum Beispiel
für die
Taktung auf der Taktplatine-0 105A, Taktplatine-1 105B,
Systemplatine 120 oder andere Platinen, Komponenten etc.
des Computersystems 100. Es wurde bereits darauf hingewiesen,
daß auch
andere Taktquellen dem Multiplexer zur Verfügung gestellt werden können. Beispiele
anderer Taktquellen umfassen VCXOs mit abweichenden Betriebsfrequenzbereichen,
feste Frequenzquellen, andere VCOs, etc.
-
Die Taktplatine-0 105A kann
auch einen Phasendetektor 210A enthalten, der so geschaltet ist,
daß er
eines der Taktsignale 106A vom Fanout-Puffer 208A empfängt. Der
Phasendetektor 210A ist auch so geschaltet, daß er ein
weiteres Taktsignal empfängt,
wie z. B. Taktsignal 106B, wie abgebildet. Der Phasendetektor 210A gibt
ein Phasenfehlersignal aus als Reaktion darauf, daß er die
beiden Taktsignale 106A und 106B empfängt. In
der dargestellten Ausführungsform
wird das Phasenfehlersignal als ein UP-Signal und/oder ein DOWN-Signal ausgegeben,
womit wiedergegeben wird, ob die Phase des ersten Eingabe- bzw.
Eingangstaktsignals hinter oder vor dem zweiten Eingabe- bzw. Eingangstaktsignal
liegt. Das Phasenfehlersignal wird von einem aktiven Filter 215A gefiltert,
das in der dargestellten Ausführungsform
gemeinsam von einem Netzwerk von Widerständen R1-R5, Kapazitäten bzw.
Kondensatoren C1-C3 und einem Operationsverstärker 216A gebildet
wird. Das Filter 215A agiert vorzugsweise als ein Tiefpaß-Filter
und Integrator des UP- und DOWN-Impulses vom Phasendetektor 210A.
-
Die Ausgabe bzw. der Ausgang von
Filter 215A kann dem Schalter 218A übergeben
werden. In der offenen Stellung oder Hauptstellung werden das rückkopplungsabhängige Signal
vom Phasendetektor 210A und dem Filter 215A nicht
an den VCXO 220A geliefert. Stattdessen wird eine konstante Spannung,
wie zum Beispiel die von einem Spannungsteiler, der von den Widerständen R6
und R7 gebildet wird, bereitgestellte Spannung, zur Verfügung gestellt,
um den VCXO 220A zu steuern.
-
Wenn der Schalter 218A in
der Nebenstellung oder geschlossenen Stellung ist, wird die Ausgabe
bzw. der Ausgang von Filter 215A dem Schalter 218A übergeben.
Es wird darauf hingewiesen, daß die
Ansteuerung oder der "Drive", die dem Filter 215A zugeordnet
ist, ausreichend ist, um die konstante Spannung, die von den Widerständen R6
und R7 aufgebaut wird, zu übersteuern,
wenn der Schalter 218A geschlossen ist. In der dargestellten
Ausführungsform
ist der Schalter 218A ein Durchgangsgatter, das mittels
eines Paares von Feldeffekt-Transistoren implementiert ist. Man
kann andere Ausführungsformen
des Schalters 218A in Erwägung ziehen, bei denen das
Signal des Filters 215A zusammen mit einer alternativen
Quelle für
das Steuerungssignal 205A selektiv den VCXO 220A steuert.
Zum Beispiel selektiert eine Ausführungsform von Schalter 218A zwischen
dem Ausgang bzw. der Ausgabe des Filters 215A und einer
Spannungsversorgung als Steuerspannung 205A.
-
Der Schalter 218A wird durch
die Bezugsauswahlsignale REF_SEL und REF_SEL_L, einem Paar von komplementären Steuerungssignalen,
gesteuert. In einer Ausführungsform
erzeugt die Steuerung 110 die Bezugsauswahlsignale.
-
In einer bevorzugten Ausführungsform
sind die Taktplatine-1 105B und die Taktplatine-0 105A Duplikate
und untereinander austauschbar, sowie in in der Länge ähnlicher
Weise zu arbeiten. In dieser Ausführungsform, in der Taktplatine-0 105A als
eine Haupttaktquelle mit dem Ausgang bzw. der Ausgabe von VCXO 220A mit
einer festen Frequenz fungiert, fungiert Taktplatine-1 105B als
eine Nebentaktquelle. Der Haupttakt 106A wird in den Phasendetektor 210B als
der Bezugstakt eingespeist, wobei der Ausgang bzw. die Ausgabe von
Taktplatine-1 105B ebenfalls in den Phasendetektor 210B eingegeben
wird als Rückkopplungstakt.
Mit Schalter 218B in der Nebenposition fungiert der abgebildete
Schaltkreis auf der Taktplatine-1 105B als ein PLL. Das
Taktsignal 106B ist kontinuierlich bezüglich der Phase ausgerichtet
bzw. synchronisiert mit dem Taktsignal 106A.
-
Wie unten mit Bezug auf 3 beschrieben wird, kann
jede Platine (z. B. Taktplatinen 105A und 105B,
Systemplatine 120, etc.) im Computersystem 100 ein
oder mehrere Auswahl-PLLs 30 enthalten, die
geschaltet bzw. gekoppelt sind, sowohl das Haupttaktsignal 106A als
auch das Nebentaktsignal 106B zu empfangen. Jedes Auswahl-PLL 300 ist
weiterhin so konfiguriert, daß die
Taktsignale für
den lokalen Gebrauch durch lokale Taktlasten bzw. -verbraucher in
Frequenzen, die Bruchteile oder Vielfache der Haupttaktfrequenz
sind, einschließlich
eines Vervielfachers von eins, ausgegeben werden.
-
In verschiedenen Ausführungsformen
stellt die Systemsteuerung 110 im Falle eines Ausfalls der Haupttaktquelle
den Ausfall fest und/oder wird über den
Ausfall benachrichtigt. Die Systemsteuerung 110 schaltet
dann um auf die Nebentaktquelle, um diese als neue Haupttaktquelle
fungieren zu lassen. Die Systemsteuerung 110 kann auch
das Computersystem 100 benachrichtigen, z. B. den Computer-Benutzer über einen
Bildschirm bzw. eine Anzeige, daß die Haupttaktquelle ausgefallen
ist. Die ausgefallene Taktquelle, z. B. eine Taktplatine, kann ersetzt
werden, ohne den Betrieb des Computersystems 100 zu unterbrechen
oder zu behindern. Das Umschalten des Taktes erfolgt demnach automatisch
und "fliegend", d.h. im laufenden
Betrieb. Vorzugsweise ist der Wechsel der Taktquelle der synchronen
Logik, die auf die Taktquelle angewiesen ist, nicht sichtbar. Sobald
eine Ersatztaktplatine zu dem Computersystems 100 hinzugefügt wurde,
schaltet die Systemsteuerung 110 vorzugsweise die Ersatztaktplatine
in den Nebenmodus, um eine neue, phasenabgestimmte, redundante Taktquelle
zur Verfügung
zu stellen.
-
Es wird darauf hingewiesen, daß der Ausfall eines
Taktsignals viele Ursachen haben kann, wie zum Beispiel Ausfall
der Taktquelle, Verdrahtungs- bzw. Verkabelungsfehler oder Verbindungsfehler bzw.
-ausfall etc. Die Ursache für
den Ausfall des Taktsignals ist weniger wichtig als die Kenntnis,
daß das
Taktsignal sich nicht korrekt durch das System ausbreitet. Es wird
auch darauf hingewiesen, daß in verschiedenen
Ausführungsformen
der VCXO 220 irgendein Typ eines VCO 220 sein
kann.
-
In einer Ausführungsform, in der VCXOs 220A und 220B verwendet
werden, kann der im Vergleich mit einem konventionellen VCO relativ
kleine Bereich der Betriebsfrequenz eines VCXO eine vorteilhafte
Arbeitsweise gewährleisten.
Beim Verlust des Eingabe- bzw. Eingangstaktsignals 106A fällt die Ausgabe
bzw. der Ausgang der VCXO 220B in der Frequenz nur um einen
relativ kleinen Betrag, wie zum Beispiel 200 PPM. Wenn der Neben-VCXO 220B beim
Ausfall umgeschaltet wird, um die Haupttaktquelle zu werden, ist
der Eingang bzw. die Eingangsgröße des VCXO 220B ein
Anstieg oder Abfall in einer Stufenfunktion hinsichtlich der Frequenz
aufgrund des Umschaltens in bzw. auf die konstante Steuerspannung,
was oben beschrieben ist. Der VCXO 220B begrenzt vorzugsweise
die Änderungsrate
der Frequenz, damit sie innerhalb des Betriebsreaktionsbereichs des
Auswahl-PLLs 300 und anderer nachgelagerter, lokaler Taktlasten
bzw. -verbraucher 350 liegt. Beides wird in 3 unten diskutiert.
-
3 – Systemplatine
-
3 veranschaulicht
eine Ausführungsform
einer Systemplatine 120. Die Taktsignale 106A und 106B werden
der Systemplatine 120 an einem Auswahl-PLL 300 zur
Verfügung
gestellt. Der Auswahl-PLL 300 ist so geschaltet, daß er auch
Zustands- und Steuerungssignale über
den Steuerbus 330 empfängt.
Der Steuerbus 330 kann zum Beispiel als ein I2C-Bus implementiert
werden. Der Steuerbus 330 stellt einen Kommunikationspfad
zwischen der Systemsteuerung 110 und den lokalen Steuermechanismen
des Auswahl-PLL 300 zur Verfügung.
-
Der Auswahl-PLL 300 erzeugt
ein Taktssignal, das mit dem entsprechenden Eingabe- bzw. Eingangstaktsignal 106 synchronisiert
ist. Der Auswahl-PLL 300 kann mehrere Taktsignale mit verschiedenen
Frequenzen ausgeben. Die Ausgabe- bzw. Ausgangstaktsignale werden
einem oder mehreren Fanout-Puffern zur Verfügung gestellt, wie zum Beispiel
den Fanout-Puffern 208C und 208D, wie abgebildet.
Die Fanout-Puffer 208C und 208D liefern mehrere
lokale Taktsignale an die lokalen Taktlasten bzw. -verbraucher 350.
Wie abgebildet liefert der Fanout-Puffer 208C eine erste
Taktfrequenz, zum Beispiel 75 MHz, an bestimmte der lokalen Taktlasten bzw.
-verbraucher 350, während
der Fanout-Puffer 208D eine zweite Taktfrequenz, zum Beispiel
150 MHz, an bestimmte andere der lokalen Taktlasten bzw. -verbraucher 350 liefert.
-
Es wird darauf hingewiesen, daß die lokalen Taktlasten
bzw. -verbraucher irgendeine Einrichtung bzw. irgendein Gerät auf der
Steuerungsplatine 120 beinhalten können, die bzw. das ein lokales
Taktsignal zur Synchronisation oder zeitlichen Koordinierung bzw.
Zeitsteuerung verwendet, einschließlich aber nicht beschränkt auf
synchrone Logik, Speicher und/oder andere elektronische Elemente.
Es wird weiterhin darauf hingewiesen, daß die Systemplatine 120 repräsentativ
für irgendeine
Platine oder Komponente im Computersystem sein kann, wie zum Beispiel
eine Eingabe/Ausgabe-Platine, Speicher-Subsystem, Taktplatine etc.
In verschiedenen Ausführungsformen
ist die Systemplatine in einem Personal Computer, einem Netzwerkcomputer
oder einem Servercomputer eingesetzt, obwohl auch andere Computersysteme
in Betracht zu ziehen sind. Zusätzliche
Details des Betriebs des Auswahl-PLL 300 werden unten mit
Bezug auf 4-6 dargestellt.
-
4 – PLL
mit Schaltungslogik und ergänzender Fehlerkorrektur
-
In 4 ist
nun ein Blockdiagramm eines Phasenregelkreis (phase locked loop,
PLL) Schaltkreises dargestellt. Vorzugsweise als ein monolithischer
integrierter Schaltkreis implementiert enthält der Auswahl-PLL einen ersten
Multiplexer, der so geschaltet ist, daß er ein erstes Eingangs- bzw. Eingabe- bzw.
Eingangstaktsignal 106A von der ersten Taktquelle und das
zweite Eingangs- bzw.
Eingabe- bzw. Eingangstaktsignal 106B von der zweiten Taktquelle
empfängt.
Der Multiplexer wird durch ein Signal von einem ODER-Block gesteuert,
der so geschaltet ist, daß er
eine Eingabe zur Taktauswahl SEL_CLK und die Ausgabe der Schaltungslogik 430 empfängt. Die
Eingabe zur Taktauswahl setzt die Identität des Haupttakteingangs bzw.
der -eingabe fest. Die Schaltungslogik
430 empfängt die
Steuerungseingaben 432 und den Eingabe- bzw. Eingangstakt 106 und
gibt die Zustandsausgaben 431 aus.
-
Die Ausgangsgröße des Eingangsmultiplexers
ist das Eingabe- bzw. Eingangstaktsignal, das an den Phasendetektor 414 und
an einen Ausgangs- bzw. -ausgabemultiplexer geliefert wird. Der
Phasendetektor 414 empfängt
das Eingabe- bzw. Eingangstaktsignal 106 vom Eingangsmultiplexer
und ein Rückkopplungssignal 421 von
einem Rückkopplungsmultiplexer.
Der Phasendetektor wird so konfiguriert, daß er ein Phasenfehlersignal 415 erzeugt, das
die Differenz zwischen dem Eingabe- bzw. Eingangstaktsignal 106 und
dem Rückkopplungssignal 421 anzeigt.
Wie abgebildet enthält
das Phasenfehlersignal 415 einen UP-Impuls und einen DOWN-Impuls,
jeder von beiden ist vorzugsweise ein digitales Signal. Der UP-Impuls
weist auf eine Phasendifferenz zwischen dem Rückkopplungssignal 421 und dem
Eingabe- bzw. Eingangstaktsignal 106 hin, wenn eine Flanke
des Rückkopplungssignals 421 nach
einer zugehörigen
Flanke des Eingabe- bzw. Eingangstaktsignals 106 auftritt.
Der DOWN-Impuls weist auf eine Phasendifferenz zwischen dem Rückkopplungssignal 421 und
dem Eingabe- bzw. Eingangstaktsignal 106 hin, wenn eine
Flanke des Rückkopplungssignals 421 vor
einer zugehörigen
Flanke des Eingabe- bzw. Eingangstaktsignals 106 auftritt.
-
Ein Schleifenfilter 416 ist
so geschaltet, daß er
das Phasenfehlersignal empfängt
und ein Fehlerkorrektursignal an einen spannungsgesteuerten Oszillator
(VCO) 418 ausgibt. In einer bevorzugten Ausführungsform
enthält
das Schleifenfilter ein aktives Tiefpaßfilter, das als ein Integrator
konfiguriert ist. Der VCO 418 ist so geschaltet, daß er das
Fehlerkorrektursignal vom Schleifenfilter 416 empfängt und Oszillationen
ausgibt, die auf das Fehlerkorrektursignal hinweisen. Das oszillierende
Signal wird als eine zweite Eingabe an den Ausgangs- bzw. Ausgabemultiplexer
gegeben. Ein PLL-Freigabe- bzw. -Einschaltsignal PLL_EN ist vorgesehen,
um entweder die Ausgabe des VCO 418 oder das Eingangstaktsignal 106A, 106B an
den Ausgang 420 zu liefern. In der dargestellten Ausführungsform
wird die Ausgabe des Ausgangsmultiplexers multipliziert oder dividiert
in einem Multiplizierer/Dividierer-Schaltkreis 410, zum Beispiel
mit bzw. durch 1, 2 oder 4, um ein oder mehrere PLL-Ausgangssignale 420A/B zu
erzeugen. Die Rückkopplungssignale 421A und 421B sind
mit den Ausgangssignalen des PLL 420A/B gekoppelt dargestellt.
-
Beispielhafte Steuerungssignale 432,
die der Schaltungslogik 430 eingegeben werden können, beinhalten
ein Rücksetzsignal
und/oder ein manuelles Überschreibsignal.
Exemplarische Zustandsignale 431, die von der Schaltungslogik 430 ausgegeben werden
können,
enthalten ein Anzeigesignal dafür, welches
Eingangstaktsignal ausgewählt
ist und/oder ein Anzeigesignal dafür, ob eines oder beide der
Eingangssignale ausgefallen sind. Als ein Beispiel kann der Auswahl-PLL 300 so
konfiguriert werden, daß der zweite
Eingangstakt 106B bei einem Ausfall des ersten Eingangstaktes 106A verwendet
wird, bis das Rücksetzsignal
empfangen wird. Das manuelle Überschreibsignal
würde die
Schaltungslogik 430 sperren, um eine manuelle Auswahl des
Eingangstaktsignals 106A oder 106B zur Verwendung
als Bezugssignal für
den lokalen Takt zu ermöglichen.
In einer Ausführungsform
des redundanten Taktsystems stellt die Schaltungslogik 430 fest,
daß der
Eingangstakt 106A ausgefallen ist und schaltet automatisch
um bzw. hinüber
zum redundanten Ersatztakt 106B. Das Umschalten bei Ausfall
sollte nur eine kleine Anzahl von Taktzyklen benötigen, idealerweise drei oder
weniger. Zu einer (vorzugsweise kurzen) Zeit nach dem Umschalten
bei Ausfall kann die Systemsteuerung 110 alle anderen Auswahl-PLLs 300 auf
den redundanten Ersatztakt 106B umschalten und auch die
Nebentaktquelle 105B in den Hauptmodus versetzen, wenn
die Haupttaktquelle 105A ausgefallen ist. Die Taktumschaltung
geschieht vorzugsweise automatisch und unterbricht oder stört bzw.
beeinträchtigt den
Betrieb des Computersystem nicht. Kein Anhalten oder Neustarten
ist notwendig. Der Wechsel des Takts ist vorzugsweise für die lokalen
Taktlasten bzw. -verbraucher, die das lokale Taktsignal verwenden, nicht
sichtbar.
-
Es wird darauf hingewiesen, daß die Schaltungslogik 430 in
verschiedenen Ausführungsformen auch
so konfiguriert werden kann, daß sie
das Phasenfehlersignal 415 oder andere Signale, je nach Wunsch, überwacht,
um einen Ausfall des Eingangstaktsignals 106A, 106B oder
des Rückkopplungssignals 421 zu
entdecken. Ähnlich
werden auch die zusätzlichen
Steuerungssignale 432 und die Zustandsignale 431 in
Betracht gezogen. Zum Beispiel können
die Zustandsignale 431 ein Taktauswahlsignal beinhalten,
das anzeigt, welches Eingangstaktsignal aktuell das lokale Haupttaktsignal
ist, und Eingangstakt-Nicht-Gültig-Signale,
die den Ausfall eines bestimmten Taktsignals anzeigen. Daher könnte vor einem
Ausfall der ausgewählte
Takt das Eingangstaktsignal 106A sein und keine Eingangstakt-Nicht-Gültig-Signale
angegeben werden. Bei einem Ausfall des Eingangstaktsignals 106A würde das
Taktauswahlsignal das Eingangstaktsignal 106B anzeigen
und das Eingangstakt-Nicht-Gültig-Signal
für Eingangstaktsignal 106A würde angegeben.
-
5 – Phasendetektor
-
In 5 ist
nun eine Ausführungsform
des Phasendetektors 414 dargestellt. In 5 werden das Eingangstaktsignal 106 und
das Rückkopplungssignal 421 an
die Phasenvergleicherlogik 520 des Phasendetektors 414 geliefert.
Die Phasenvergleicherlogik 520 liefert an die Ausgangslogik 530 ein
Signal, das die Phasendifferenz zwischen dem Eingabe- bzw. Eingangstaktsignal 106 und
dem Rückkopplungssignal 421 anzeigt.
Die Ausgangslogik 530 empfängt darüber hinaus das eine oder die
mehreren Zustandssignale 431 und ein oder mehrere Steuerungssignale 432.
In einer bevorzugten Ausführungsform
wie abgebildet enthält
die Ausgangslogik 530 einen Generator eines zusätzlichen
Korrekturimpulses 535 und einen Impulsbreitenbegrenzer-Schaltkreis 537.
Die Ausgangslogik 530 liefert das Phasenfehlersignal 415 an
den Schleifenfilter 416. Es sei darauf hingewiesen, daß in der
in 5 dargestellten Ausführungsform
das Phasenfehlersignal 415 ein digitales UP-Signal und
ein digitales DOWN-Signal beinhaltet.
-
Der Betrieb von einer Ausführungsform
des Phasendetektors 414 verhält sich wie folgt. Das Eingangstaktsignal 106 und
das Rückkopplungssignal 421 werden
an die Takteingänge
der Phasenvergleicherlogik 520 geliefert. Das Phasenfehlersignal
enthält
einen oder mehrere digitale Impulse, UP und/oder DOWN, die auf Basis
der Phasendifferenz zwischen Eingangstaktsignal 106 und
dem Rückkopplungssignal 421 erzeugt
werden. Ein minimaler UP- und ein minimaler DOWN-Impuls können bei
einer Phasendifferenz von Null erzeugt werden. Die maximale Impulsbreite
für den
UP- und/oder DOWN-Impuls
wird durch den Impulsbreitenbegrenzer-Schaltkreis 537 auf
eine vorher bestimmte Größe begrenzt.
-
Bei einem Ausfall des Eingangstaktsignals 106 wird
der Generator eines zusätzlichen
Korrekturimpulses 535 so konfiguriert, daß er einen
maximalen Impuls ausgibt, entweder UP oder DOWN wie angemessen,
wenn er die Benachrichtigung über
den Ausfall des Eingabe- bzw. Eingangstaktsignals 106 von
der aktuellen Taktquelle erhält.
Die Benachrichtigung kann von der Schaltungslogik 430,
der Systemsteuerung 110 und/oder dem Phasendetektor 414 selbst
kommen. In einer Ausführungsform
enthält
der Generator eines zusätzlichen
Korrekturimpulses 535 ein rücksetzbares Kippglied bzw.
One-Shot. Andere Schaltkreise, die einen Impuls liefern können, kommen
ebenso in Betracht.
-
In 5B wird
eine spezifische Ausführungsform
des Phasendetektors 414 als Phasendetektor 414B dargestellt.
Es wird darauf hingewiesen, daß eine
Vielfalt von Schaltkreisen und Komponenten für die abgebildeten wie in 5A vorgeschlagen substituiert
werden können.
Das Eingangstaktsignals 106 und das Rückkopplungssignal 421 werden
an die Takteingänge
von einem Paar von Flip-Flops 524A bzw. 524B geliefert,
deren Dateneingangsleitungen auf HOCH (HIGH) gehalten werden. Beim
Empfang einer entsprechenden Taktflanke gibt jeder der Flip-Flops 524A und 524B eine
logische "1" aus. Die Ausgabe
wird auf einer logischen "1" gehalten, bis beide
Ausgangsleitungen hoch sind. Die Ausgangsleitungen der Flip-Flops 524A und 524B werden
von einem logischen UND kombiniert, wobei das Ergebnis an die RESET-Eingaben
bzw. -Eingänge
der beiden Flip-Flops 524A und 524B geliefert
wird. Daher setzen die Flip-Flops 524A und 524B zurück bzw. werden
zurückgesetzt,
wenn beide Flip-Flops 524A und 524B eine logische "1" ausgeben. Die Ausgangswerte bzw. Ausgänge der
Flip-Flops 524A und 524B werden an logische UNDs
am Ausgang des Phasendetektors 414B geliefert, und zwar
sowohl beide direkt als auch über
Verzögerungselemente 512A bzw. 512B.
-
Der Generator eines zusätzlichen
Korrekturimpulses 535 ist in Serie geschaltet auf der UP-Seite des Phasendetektors 414B und
ist so konfiguriert, daß er
beim Empfang einer Benachrichtigung über einen Ausfall des Eingangstaktsignals 106 von
der aktuellen Taktquelle, entweder 106A oder 106B,
einen maximalen UP-Impuls ausgibt, Wie abgebildet empfängt der
Generator eines zusätzlichen
Korrekturimpulses 535 auch ein manuelles Überschreibsignal MAN_OVERRIDE 404 und
das bzw. die Benachrichtigungssignale) über Ausfall der Taktquelle INP#_BAD 406 als
Steuerungssignale 432. Es wird darauf hingewiesen, daß das Steuerungssignal INP#_BAD 406 eine
Mehrzahl von Signalen repräsentieren
kann, wie zum Beispiel INP0_BAD, INP1_BAD, etc. In einer Ausführungsform
enthält
der Generator eines zusätzlichen
Korrekturimpulses 535 ein rücksetzbares Kippglied bzw.
One-Shot. Andere Schaltkreise die in der Lage sind, Impulse zu liefern, kommen
auch in Betracht.
-
Die Ausgabe des Phasendetektors 414B enthält das Phasenfehlersignal 415,
das in dieser Ausführungsform
einen digitalen UP-Impuls und einen digitalen DOWN-Impuls beinhaltet.
Der UP-Impuls resultiert
aus der Taktflanke des Eingangstaktsignals 106, die dem
Phasendetektor 414B vor der entsprechenden Taktflanke des
Rückkopplungssignals 421 geliefert
wird. Folglich gibt das Flip-Flop 524A eine
logisch "1" aus, bevor das Flip-Flop 524B eine logisch "1" ausgibt. Die Länge des UP-Impulses wird durch
die Impulsbegrenzung des Verzögerungselementes 512A begrenzt.
Die minimale und maximale Impulsbreite des UP-Impulses kann zuvor
durch die Länge
der Zeitverzögerung,
die vom Verzögerungselement 512A geliefert
wird, und durch die Rücksetzdauer
des Flip-Flops 524A relativ
zu der Taktperiode des Eingangstaktsignals 106 festgelegt
werden. In einer ähnlichen
Weise resultiert der DOWN-Impuls aus der Taktflanke des Eingangstaktsignals 106,
die dem Phasendetektors 414B nach der entsprechenden Taktflanke
des Rückkopplungssignals 421 geliefert
wird. Folglich gibt das Flip-Flop 524B eine logisch "1" aus, bevor das Flip-Flop 524A eine
logisch "1" ausgibt. Die Länge des
DOWN-Impulses wird durch die Impulsbegrenzung des Verzögerungselementes 512B begrenzt.
Die minimale und maximale Impulsbreite des DOWN-Impulses kann zuvor
durch die Länge
der Zeitverzögerung,
die vom Verzögerungselement 512B geliefert
wird, und durch die Rücksetzdauer
des Flip-Flops 524B relativ zu der Taktperiode des Eingangstaktsignals 106 festgelegt
werden.
-
Es sei darauf hingewiesen, daß in einer
bevorzugten Implementierung das Phasendetektors 414B zumindest
ein minimaler UP-Impuls und ein minimaler DOWN-Impuls für jede ansteigende
Flanke des Eingangstaktsignals 106 erzeugt werden. Es sei weiter
darauf hingewiesen, daß der
Generator eines zusätzlichen
Korrekturimpulses 535 auch in Reihe mit dem DOWN-Impuls
oder in Reihe mit sowohl dem UP-Impuls als auch dem DOWN-Impuls
angeordnet werden kann. Zum Beispiel wird in einer Ausführungsform
mit dem Generator eines zusätzlichen Korrekturimpulses 535 in
Reihe mit dem DOWN-Impuls wird ein Ausreißer bzw. Aussetzer des Eingangstaktsignals 106 als
ausgefallen bestimmt. Der Generator eines zusätzlichen Korrekturimpulses 535 wird über den
Ausfall benachrichtigt und erzeugt einen DOWN-Impuls von maximaler
Impulsbreite.
-
6 – Zeitdiagramm
der Taktsignalumschaltung
-
Beispiele einiger fortschrittlicher
Arbeitsweisen des PLL 300 sind im Zeitdiagramm von 6 dargestellt. Umschalten
zu einer Ersatztaktquelle, Phasenfehlersignalimpulse mit begrenzter
Breite bzw. Dauer und ein zusätzlicher
Fehlerkorrekturimpuls sindd dargestellt. Man Kann davon ausgehen, daß eine Vielfalt
von Ausführungsformen
von PLL-Schaltkreisen entworfen bzw. konstruiert werden können, um
wie hier offenbart zu funktionieren.
-
Das erste Bezugstaktsignal REF1 ist
als Eingangstaktsignal 106A von der ersten Taktquelle dargestellt.
Das zweite Bezugstaktsignal REF2 ist als Eingangstaktsignal 106B von
der zweiten Taktquelle dargestellt. Das Rückkopplungssignal 421 und
das Eingangstaktsignal 106A werden verglichen, um das Phasenfehlersignal
zu erzeugen. Ein UP-Impuls 415A und ein DOWN-Impuls 415B sind
so abgebildet, daß sie
die Reaktion des Phasendetektors auf ein Phasenfehlersignal enthalten.
-
In der Zeitspanne 620 sind
das erste Eingangstaktsignal 106A und das Rückkopplungssignal 421 phasengleich.
Ein UP-Impuls 415A minimaler Breite und ein DOWN-Impuls 415B minimaler
Breite sind abgebildet. Es ist zu beachten, daß das erste Eingangstaktsignal 106A während der
Zeitspanne 620 ausfällt
(680). Das erste Eingabe- bzw. Eingangstaktsignal 106A wird
auf Ausfall überwacht. Dennoch
kann der Ausfall wie abgebildet bis zur Zeitspanne 621 nicht
erkannt werden, wenn drei Taktflanken ausgelassen werden (681).
Es wird auch in Betracht gezogen, daß der Aus fall früher oder
später
erkannt werden kann, und der Entwurf bzw. die Ausgestaltung eines
Phasendetektors 414, der bzw. die für diese Situationen modifiziert
ist.
-
Während
der Zeitspanne 621, in der kein Eingangstaktsignal 106A geliefert
wird, zeigt das Rückkopplungssignal 421 eine
längere
Periode als Reaktion auf das Fehlen eines UP-Impulses 415A und
den extrem breiten DOWN-Impuls 415B. Es ist zu beachten,
daß die
Impulsbreite bzw. -dauer des DOWN-Impulses 415B auf eine
zuvor festgelegte maximale Breite bzw. Dauer 690 begrenzt
wird. Die unbeschränkte
Impulsbreite bzw. -dauer ist als 691 abgebildet. Zusätzlich wird
der Ausfall der Eingangstaktquelle während der Zeitspanne 621 erkannt
und der Eingangstakt wird als Reaktion auf eine zweite Eingangstaktquelle 106B umgeschaltet. Zusätzlich wird
als Reaktion auf den Ausfall des Eingangstaktes der zusätzliche
Fehlerkorrekturimpuls 692 als ein UP-Impuls von maximaler
Länge eingespeist.
-
Während
der Zeitspanne 622 ist das Ersatzeingabetaktsignal 106B nun
das Bezugstaktsignal. Der zusätzliche
Fehlerkorrekturimpuls 692 führt zu einem Rückkopplungssignal 421,
das eine kürzere Periode
als in Zeitspanne 621 hat, näher an der korrekten Phasenausrichtung
bzw. -anpassung mit dem Bezugstaktsignal, das ohne den zusätzlichen
Fehlerkorrekturimpuls 692 aufgetreten wäre. Es ist zu beachten, daß der fehlende
UP-Impuls 415A von Zeitspanne 621 in Zeitspanne 622 erscheinen
kann. Er wird in Zeitspanne 622 wegen des zusätzlichen
Fehlerkorrekturimpulses 692 nicht gesehen. In einer Ausführungsform
tritt der zusätzliche
Fehlerkorrekturimpuls 692 zusätzlich zum UP-Impuls 415A auf.
In einer anderen Ausführungsform
ersetzt der zusätzliche
Fehlerkorrekturimpuls 692 den UP-Impuls 415A.
-
Während
der Zeitspannen 623 und 624 paßt der PLL-Schaltkreis das
Bezugstaktsignal 106B und das Rückkopplungssignal 421 aneinander
an. Es ist zu beachten, daß in
Zeitspanne 625 das Eingangstaktsignal 106B und
das Rückkopplungssignal 421 phasengleich
sind. Es wird darauf hingewiesen, daß ein Ausfall einer Taktquelle
definiert werden kann als der Verlust von so wenig wie einer Taktflanke,
entweder ansteigend oder abfallend.
-
Für
den Zweck der vorliegenden Offenbarung werden alle Taktsignale als
Niederspannungs-Pseudo-ECL-Signale
(low voltage pseudo-ECL, LVPECL) vorausgesetzt. Andere Arten von Taktsignalen
können
aber nach Wunsch verwendet werden. Mit den Taktsignalen als LVPECL
mit einer CLK- und einer CLK-Leitung
verursacht die Beendigung bzw. Terminierung im Fall, daß eine der
Leitungen bzw. Kabel unterbrochen wird, daß die unterbrochene Leitung
auf hoch gezogen wird.
-
Daher gibt es niemals ein Kreuzen
der CLK- und CLK-Leitungen
und folglich wird kein Taktsignal ausgegeben, z. B. ein steckengebliebenes
Taktsignal.
-
Zahlreiche Variationen und Modifikationen sind
für Fachleute
auf dem Gebiet offensichtlich, wenn sie die obenstehende Offenbarung
bzw. Offenlegung in vollem Umfang wahrnehmen. Die folgenden Ansprüche sollen
so interpretiert werden, daß alle
solche Variationen und Modifikationen einbezogen werden.