-
Diese
Erfindung bezieht sich allgemein auf einen Latchentwurf. Insbesondere
bezieht sich diese Erfindung auf das Verbessern einer Weicher-Fehler-Immunität bei Latches.
-
Energiereiche
Neutronen verlieren Energie bei Materialien hauptsächlich durch
Kollisionen mit Siliziumkernen, die zu einer Kette von Sekundärreaktionen
führen.
Diese Reaktionen lagern eine dichte Spur aus Elektronenlochpaaren
ab, wenn sie durch einen p-n-Übergang
verlaufen. Ein Teil der abgeschiedenen Ladung wird rekombiniert
und ein Teil wird an den Übergangskontakten
gesammelt. Wenn ein Partikel auf eine empfindliche Region eines
Latch trifft, könnte
die Ladung, die angesammelt wird, die Minimalladung überschreiten,
die benötigt
wird, um den Wert „umzukehren", der auf dem Latch
gespeichert ist, was zu einem weichen Fehler führt.
-
Die
kleinste Ladung, die bei einem weichen Fehler resultiert, wird die
kritische Ladung des Latch genannt. Die Rate, mit der weiche Fehler
auftreten (SER; SER = soft error rate = Rate weicher Fehler) wird üblicherweise
im Hinblick auf Ausfälle über Zeit (FIT;
FIT = failures in time = Ausfälle über Zeit)
ausgedrückt.
-
Eine
allgemeine Quelle für
weiche Fehler sind Alphapartikel, die durch Spuren von radioaktiven Isotopen
emittiert werden können,
die in Verpackungsmaterialien von integrierten Schaltungen vorhanden
sind. „Stoßfestes" Material, das bei Flip-Chip-Häusungstechniken
verwendet wird, wurde auch als eine mögliche Quelle von Alphapartikeln identifiziert.
-
Andere
Quellen von weichen Fehlern umfassen energiereiche kosmische Strahlen
und Solarpartikel. Energiereiche kosmische Strahlen und Solarpartikel
reagieren mit der oberen Atmosphäre,
wodurch energiereiche Protonen und Neutronen erzeugt werden, die
als Niederschlag auf die Erde gehen. Neutronen können besonders lästig sein,
da sie in die meisten vom Menschen hergestellten Bauten eindringen
können
(ein Neutron kann ohne weiteres durch 1 ½ Meter Beton (5 Fuß) durchtreten).
Diese Wirkung variiert sowohl mit geographischer Breite als auch
Höhe. In
London ist die Wirkung zweimal schlimmer als am Äquator. In Denver, Colorado,
auf 1600 m Höhe,
ist die Wirkung dreimal schlimmer als auf Meereshöhe in San
Francisco. In einem Industrieflugzeug kann die Wirkung 100 bis 800
Mal schlimmer sein als auf Meereshöhe.
-
Strahlungsinduzierte
weiche Fehler werden zu einem der Hauptbeiträger zu Ausfallraten bei Mikroprozessoren
und anderen komplexen ICs (integrierten Schaltungen). Verschiedene
Lösungsansätze wurden
vorgeschlagen, um diese Art von Ausfall zu reduzieren. Das Hinzufügen von
ECC (ECC = Error Correction Code = Fehlerkorrekturcode) oder Parität in Datenwegen
adressiert dieses Problem von einer Architekturebene aus. Das Hinzufügen von
ECC oder Parität
in Datenwegen kann komplex und kostspielig sein.
-
Auf
der Schaltungsebene kann die SER reduziert werden, durch Erhöhen des
Verhältnisses
der Kapazität,
die durch Oxide erzeugt wird, zu der Kapazität, die durch p/n-Übergänge erzeugt wird. Die Kapazität in einem
Latch umfasst unter anderen Typen eine Kapazität, die durch p/n-Übergänge erzeugt wird und eine Kapazität, die Oxide
erzeugt wird. Da Elektronen/Loch-Paare erzeugt werden, wenn energiereiche
Neutronen durch einen p/n-Übergang
passieren, verringert eine Reduzierung des Bereichs von p/n-Übergängen in
einem Latch üblicherweise
die SER. Eine bedeutende Anzahl von Elektronen/Loch-Paaren wird
nicht erzeugt, wenn energiereiche Neutronen durch Oxide passieren.
Folglich kann die SER üblicherweise
reduziert werden, durch Erhöhen
des Verhältnisses
der Oxidkapazität
zu der p/n-Übergangskapazität in einer
SRAM-Zelle.
-
Es
besteht ein Bedarf in der Technik zum Reduzieren der SER in Latches.
Ein Ausführungsbeispiel
dieser Erfindung reduziert die SER in Latches, während nur eine geringe Erhöhung der
physischen Größe des Latches
und eine geringe Erhöhung
der Verzögerungszeit
durch das Latch hinzugefügt
wird.
-
Aus
der
US 6,127,864 A ist
bereits ein zeitlich redundantes Latch bekannt, das zur Verwendung in
integrierten Schaltungen dient, um mehrfache unabhängige Datenabtastwerte
zu erzeugen, aus denen ein gültiger
Datenabtastwert ausgewählt
wird. Eingangsseitige Daten werden zu unterschiedlichen Zeitpunkten
abgetastet, wobei die Periodendauern zwischen den unterschiedlichen
Zeitpunkten größer gewählt sind
als die Pulsbreite eines Einzelereignisses, das durch eine Wechselwirkung
mit einer Strahlungsstörung
aus dem Weltraum auf ein mikroelektronisches System gebildet ist.
Die Abtastwerte werden zu vorgegebenen Zeitpunkten erfasst, wobei
aufgrund eines Mehrheitssystems eine Mehrheit von Abtastwerten gebildet
wird.
-
Es
ist die Aufgabe der vorliegenden Erfindung, einen dreifach redundanten
Latch zum Reduzieren weicher Fehler zu schaffen.
-
Diese
Aufgabe wird durch einen dreifach redundanten Latch gemäß Anspruch
1 gelöst.
-
Bei
einem bevorzugten Ausführungsbeispiel schafft
die Erfindung eine Schaltung und ein Verfahren für einen kleineren und schnelleren
dreifach redundanten Latch. Drei einstellbare Speicherelemente stellen
einen identischen logischen Wert in jedem einstellbaren Speicherelement
ein. Nachdem die einstellbaren Speicherelemente eingestellt sind,
bestimmt eine Wahlstruktur mit Eingängen von dem ersten einstellbaren
Speicherelement, dem zweiten Speicherelement und der Steuerung zu
den einstellbaren Speicherelementen den logischen Wert, der an dem
dritten einstellbaren Speicherelement gehalten wird. Die Ausbreitungsverzögerung durch
das dritte einstellbare Speicherelement ist die einzige Ausbreitungsverzögerung des
dreifach redundanten Latches.
-
Andere
Aspekte und Vorteile der vorliegenden Erfindung werden aus der nachfolgenden
detaillierten Beschreibung in Verbindung mit den beiliegenden Zeichnungen
offensichtlich, die beispielhaft die Prinzipien der Erfindung darstellen.
-
Bevorzugte
Ausführungsbeispiele
der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf
die beiliegenden Zeichnungen näher
erläutert.
Es zeigen:
-
1 ein
Schema eines dreifach redundanten Latches; Stand der Technik
-
2 ein
Blockdiagramm eines Ausführungsbeispiels
eines verbesserten dreifach redundanten Latches;
-
3 ein
Blockdiagramm eines verbesserten dreifach redundanten Latches;
-
4 ein
Schema eines verbesserten dreifach redundanten Latches.
-
1 ist
ein Schema eines dreifach redundanten Latches. Der Eingang 100 zu
dem dreifach redundanten Latch ist mit dem Eingang der Transfergates
TG1, TG2 und TG3 verbunden. Das Steuerungssignal 102 ist
mit den Transfergates TG1, TG2 und TG3 verbunden. Das Steuerungssignal 102 steuert,
wann das Signal an dem Eingang der Transfergates TG1, TG2 und TG3
zu den Ausgängen 104, 106 und 108 der
Transfergates TG1, TG2 bzw. TG3 übertragen
wird. Das Signal, das zu den Ausgängen 104, 106 und 108 geliefert
wird, wird in Latch1, Latch2 bzw. Latch3 gespeichert.
-
Nachdem
das Steuerungssignal 102 abgeschaltet ist, treibt das Signal
an dem Latch1 das Eingangssignal des Inverters, INV1. Nachdem das
Steuerungssignal 102 abgeschaltet ist, treibt das Signal an
dem Latch2 das Eingangssignal des Inverters INV2. Nachdem das Steuerungssignal 102 abgeschaltet
ist, treibt das Signal an Latch3 das Eingangssignal des Inverters,
INV3. Das Ausgangssignal 110 des Inverters INV1 treibt
ein Eingangssignal zu AND1 und ein Eingangssignal zu AND2. Das Ausgangssignal 112 des
Inverters INV2 treibt ein Eingangssignal zu AND1 und ein Eingangssignal
zu AND3. Das Ausgangssignal 114 des Inverters INV3 treibt
ein Eingangssignal zu AND2 und ein Eingangssignal zu AND3. Das Ausgangssignal 116 von
AND1 treibt ein Eingangssignal von OR1. Das Ausgangssignal 118 von
AND2 treibt ein Eingangssignal von OR1. Das Ausgangssignal 120 von
AND3 treibt ein Eingangssignal von OR1. Das Ausgangssignal des dreifach
redundanten Latches ist das Eingangssignal 122 von OR1.
-
Ein
dreifach redundantes Latch reduziert weiche Fehler durch Speichern
derselben Daten in drei unterschiedlichen Latches. Wenn z. B. das
Steuerungssignal 102 ein ist, kann ein logisch hoher Wert aus
den Eingängen 100 der
Transfergates TG1, TG2 und TG3 zu den Ausgängen 104, 106 und 108 der Transfergates
TG1, TG2 bzw. TG3 getrieben werden. Nach dem Ausschalten des Steuerungssignals 102 wird
ein logisch hoher Wert in den Latches Latch1, Latch2 und Latch3
gespeichert. Der gespeicherte logisch hohe Wert an Latch1 treibt
das Eingangssignal des Inverters INV1 und erzeugt einen logisch
niedrigen Wert an dem Ausgangssignal 110 des Inverters INV1.
Der gespeicherte logisch hohe Wert an dem Latch2 treibt das Eingangssignal
des Inverters INV2 und erzeugt einen logisch niedrigen Wert an dem Ausgang 112 des
Inverters INV2. Der gespeicherte logisch hohe Wert an dem Latch3
treibt das Eingangssignal des Inverters INV3 und erzeugt einen logisch
niedrigen Wert an dem Ausgang 114 des Inverters INV3.
-
Da
die Ausgangssignale 110, 112 und 114 der
Inverter INV1, INV2 bzw. INV3 niedrig sind sind alle Eingangssignale 110, 112 und 114 zu
AND1, AND2 bzw. AND3 ein logisch niedriger Wert. Da alle Eingangssignale 110, 112 und 114 zu
AND1, AND2 bzw. AND3 ein logisch niedriger Wert sind, sind die Ausgangssignale 116, 118 und 120 von
AND1, AND2 bzw. AND3 ein logisch niedriger Wert. Da das Ausgangssignal 116, 118 und 120 von
AND1, AND2 bzw. AND3 ein logisch niedriger Wert ist, sind alle Eingangssignale
von OR1 ein logisch niedri ger Wert. Da alle Eingangssignale 116, 118 und 120 zu
OR1 ein logisch niedriger Wert sind, ist das Ausgangssignal 122 ein
logisch niedriger Wert.
-
Wenn
ein weicher Fehler auftritt, z. B. in dem Latch2, und den gespeicherten
logischen Wert von einem logisch hohen Wert zu einem logisch niedrigen Wert ändert, wird
nun ein logisch niedriger Wert dem Eingangssignal 106 des
Inverters INV2 präsentiert. Das
Ausgangssignal 102 des Inverters INV2 präsentiert
einen logisch hohen Wert einem Eingangssignal von AND1 und AND3.
Da bei diesem Beispiel das andere Eingangssignal 110 zu
AND1 und das andere Eingangssignal 114 zu AND3 ein logisch
niedriger Wert sind, bleibt das Ausgangssignal 116 und 120 von
AND1 bzw. AND3 ein logisch niedriger Wert und das Ausgangssignal 122 ändert sich
nicht. Dieses Beispiel stellt dar, wie ein einzelner weicher Fehler
in einem Latch den ursprünglich
gespeicherten Wert in einem dreifach redundanten Latch nicht ändert.
-
Als
ein weiteres Beispiel sei angenommen, dass zusätzlich zu dem weichen Fehler
bei Latch2 ein zusätzlicher
weicher Fehler bei Latch3 vorliegt. Nun ist das Eingangssignal 108 zu
dem Inverter INV3 ein logisch niedriger Wert und als Ergebnis ist
das Ausgangssignal 114 des Inverters INV3 ein logisch hoher
Wert. Ein logisch hoher Wert wird nun einem Eingang 114 von
AND2 und einem Eingang 114 von AND3 präsentiert. Da ein logisch niedriger
und logisch hoher Wert an den Eingängen von AND1 präsentiert
werden, ist das Ausgangssignal 116 von AND1 weiterhin ein
logisch niedriger Wert. Da ein logisch niedriger und ein logisch
hoher Wert an den Eingängen
von AND2 präsentiert
werden, ist das Ausgangssignal 118 von AND2 weiterhin ein
logisch niedriger Wert. Da jedoch Eingangssignale 112 und 114 zu
AND3 ein logisch hoher Wert sind ist das Ausgangssignal 120 ein
logisch hoher Wert. Da das Eingangssignal 120 zu OR1 ein
logisch hoher Wert ist, ändert
sich das Ausgangssignal 122 von einem logisch niedrigen
Wert zu einem logisch hohen Wert. Dieses Beispiel stellt dar, wie
weiche Fehler in zwei Latches eines dreifach redundanten Latches
den ursprünglich
gespeicherten Wert des dreifach redundanten Latches ändern.
-
Ein
dreifach redundantes Latch verhindert, dass ein einzelner weicher
Fehler den ursprünglichen
Wert ändert,
der in dem Latch gespeichert ist. Dies erfolgt jedoch auf Kosten
einer zusätzlichen Schaltungsanordnung,
was zu einem physisch größeren Latch
führt.
Zusätzlich
dazu kann ein dreifach redundantes Latch eine Zeitverzögerung in
den Verzögerungsweg
des Latches einbringen. Als Folge ist ein dreifach redundantes Latch üblicherweise
größer und
langsamer als ein einzelnes Latch.
-
2 ist
ein Blockdiagramm eines Ausführungsbeispiels
eines verbesserten dreifach redundanten Latches. Bei diesem Ausführungsbeispiel wird
ein identischer logischer Wert 210 in das einstellbare
Speicherelement 1, SME1, das einstellbare Speicherelement 2, SME2,
und das einstellbare Speicherelement 3, SME3 eingestellt, durch
Steuern des Signal 204. Nachdem ein identischer logischer Wert 210 in
dem einstellbaren Speicherelement 1, SME1, dem einstellbaren Speicherelement
2, SME2 und dem einstellbaren Speicherelement 3, SME3 eingestellt
ist, durch Steuern des Signals 204, wird der identische
logische Wert in allen drei einstellbaren Speicherelementen SME1,
SME2 und SME3 gehalten. Die Abstimmstruktur, VS (VS = voting structure)
bestimmt, nachdem ein identischer logischer Wert 210 in
dem einstellbaren Speicherelement 1, SME1, dem einstellbaren Speicherelement
2, SME2, und dem einstellbaren Speicherelement 3, SME3, eingestellt
ist, den logischen Wert 218, der in dem einstellbaren Speicherelement
3, SME3, gespeichert wird, basierend auf den logischen Werten, die
dem Eingang 214 und dem Eingang 216 präsentiert
werden, und auf dem Steuerungssignal 204.
-
Wenn
der logische Wert 218, der in dem einstellbaren Speicherelement
3, SME3, gespeichert ist, durch ein Weicher-Fehler-Ereignis gestört wird, stellt die Abstimmstruktur
VS den ursprünglichen
logischen Wert wieder her, der in dem einstellbaren Speicherelement
3, SME3 gespeichert war. Wenn der logische Wert, der in dem einstellbaren
Speicherelement 1, SME1, gespeichert ist, durch ein Weicher-Fehler-Ereignis
gestört
wird, wird die Abstimmstruktur VS ihr Ausgangssignal 218 tristatemäßig betreiben,
wodurch der ursprüngliche
logische Wert in dem einstellbaren Speicherelement 3, SME3, gespeichert
bleibt. Wenn der logische Wert, der in dem einstellbaren Speicherelement
2, SME2, gespeichert ist, durch ein Weicher-Fehler-Ereignis gestört wird, wird
die Abstimmstruktur VS ihr Ausgangssignal 218 tristatemäßig betreiben,
wodurch der ursprüngliche logische
Wert in dem einstellbaren Speicherelement 3, SME3, gespeichert gelassen
wird. Wenn beliebige zwei einstellbare Speicherelemente durch ein
Weicher-Fehler-Ereignis gestört
werden, kann der ursprüngliche
logische Wert, der in dem dreifach redundanten Latch gespeichert
ist, ausfallen.
-
Die
Verzögerungszeit
durch das dreifach redundante Latch, das in 2 gezeigt
ist, wird durch eine geringe Kapazitätsmenge bestimmt, die durch die
Abstimmstruktur VS, und die Ausbreitungsverzögerung des einstellbaren Speicherelements
3, SME3, hinzugefügt
wird. Dieses Ausführungsbeispiel der
Erfindung verbessert die Verzögerungszeit
eines dreifach redundanten Latches bedeutend. Die Verzögerungszeit
durch den Stand der Technik, der in 1 gezeigt
ist, umfasst z. B. die Ausbreitungsverzögerung durch das langsamste
Latch unter den Latches Latch1, Latch2 und Latch3, die Ausbreitungsverzögerung durch
einen Inverter, INV2, die Ausbreitungsverzögerung durch ein AND-Gate,
AND2, und die Ausbreitungsverzögerung
durch ein OR-Gate, OR1.
-
3 ist
ein Blockdiagramm eines dreifach redundanten Latches mit verbesserter
Verzögerung und
Größe. Der
Eingang des dreifach redundanten Latches, der bei diesem Beispiel
gezeigt ist, ist mit den Eingängen 302 der
Transfergates TG1, TG2 und TG3 verbunden. Zusätzlich dazu kann ein tristatemäßig betreibbarer
Eingangsinverter, ein kreuzge koppeltes NAND-Gate und ein kreuzgekoppeltes NOR-Gate
anstelle eines Transfergates verwendet werden. Wenn die Steuerungssignale 304 und 306 ein
sind, wird das Signal an dem Eingang 302 der Transfergates
TG1, TG2 und TG3 zu dem Ausgang 308 des Transfergates TG1,
dem Ausgang 310 des Transfergates TG2 und dem Ausgang 312 des
Transfergates TG3 übertragen.
Der logische Wert, der an dem Ausgang 308 des Transfergates
TG1 präsentiert wird,
ist ebenfalls ein Eingangssignal zu Latch1, L1. Der logische Wert,
der an dem Ausgang 302 des Transfergates TG3 präsentiert
wird, ist ebenfalls ein Eingangssignal zu Latch2, L2. Der logische
Wert, der an dem Ausgang 310 des Transfergates TG2 präsentiert
wird, ist ebenfalls mit dem Ausgangssignal 310 des Majoritätsentscheiders,
MAJVT (majority voter), und dem Eingangssignal/Ausgangssignal 310 von Latch3,
L3, verbunden.
-
Das
Ausgangssignal 314 von Latch1, L1, ist mit einem Eingangssignal 314 des
Majoritätsentscheiders,
MAJVT, verbunden. Das Ausgangssignal 316 von Latch2, L2,
ist mit einem Eingangssignal 316 des Majoritätsentscheiders
MAJVT verbunden. Die Steuerungssignale 304 und 306 sind
ebenfalls mit den Eingangssignalen des Majoritätsentscheiders MAJVT verbunden.
-
Als
ein Beispiel dafür,
wie die Redundanz für dieses
Ausführungsbeispiel
zutrifft, sei angenommen, dass ein logisch hoher Wert gespeichert
wird. Speicherungsknoten 308, 310 und 312 weisen
jeweils einen logisch hohen Wert auf, der bei diesem Beispiel gespeichert
wird. Das Ausgangssignal 314 von Latch1, L1, liefert einen
logisch niedrigen Wert zu einem Eingang des Majoritätsentscheiders
MAJVT. Das Ausgangssignal 316 von Latch2, L2, liefert einen logisch
niedrigen Wert zu einem Eingang des Majoritätsentscheiders MAJVT. Die Steuerungssignale 304 und 306 liefern
einen logisch niedrigen Wert bzw. einen logisch hohen Wert zu zwei
Eingängen
des Majoritätsentscheiders
MAJVT. Als ein Ergebnis der logischen Werte, die dem Majoritätsentscheider MAJVT
präsentiert
werden, wird das Ausgangssignal 310 des Majoritätsentscheiders
MAJVT hoch getrieben, um mit dem logisch hohen Wert übereinzustimmen,
der auf dem Latch3, L3, gespeichert ist.
-
Wenn
bei diesem Beispiel ein Weicher-Fehler-Ereignis den logischen Wert ändert, der
auf dem Latch1, L1, gespeichert ist, von einem logisch hohen Wert
zu einem logisch niedrigen Wert, behält der logische Wert, der auf
Latch3, L3, gespeichert ist, seinen logisch hohen Wert bei, da das
Ausgangssignal 310 des Majoritätsentscheiders MAJVT tristatemäßig betrieben
wird. Als ein Ergebnis behält
das dreifach redundante Latch den ursprünglichen logischen Wert bei,
der auf demselben gespeichert ist, trotz eines einzelnen weichen
Fehlers.
-
Wenn
bei diesem Beispiel ein Weicher-Fehler-Ereignis den logischen Wert,
der auf Latch2, L2, gespeichert ist, von einem logisch hohen Wert
zu einem logisch niedrigen Wert ändert,
behält
der logische Wert, der auf Latch3, L3, gespeichert ist, seinen logisch
hohen Wert bei, da das Ausgangssignal 310 des Majoritätsentscheiders
MAJVT tristatemäßig betrieben
wird. Als ein Ergebnis behält
das dreifach redundante Latch den ursprünglichen logischen Wert bei,
der auf demselben gespeichert ist, trotz eines einzelnen weichen
Fehlers.
-
Wenn
bei diesem Beispiel ein Weicher-Fehler-Ereignis den logischen Wert,
der auf Latch3, L3, gespeichert ist, von einem logisch hohen Wert
zu einem logisch niedrigen Wert ändert,
treibt der Majoritätsentscheider
MAJVT das Eingangs/Ausgangs-Signal 310 von Latch3, L3,
zurück
auf einen logisch hohen Wert. Als ein Ergebnis behält das dreifach
redundante Latch den ursprünglichen
logischen Wert bei, der auf demselben gespeichert ist, trotz eines
einzelnen weichen Fehlers.
-
Wenn
jedoch bei diesem Beispiel ein Weicher-Fehler-Ereignis die Werte ändert, die
auf Knoten 308 und 312 gespeichert sind, ändert sich
das dreifach redundante Latch von seinem ursprünglichen Wert. Wenn ein Weicher-Fehler-Ereignis
die logischen Werte ändert,
die auf den Knoten 308 und 312 gespeichert sind,
von logisch hohen Werten zu logisch niedrigen Werten, ändern sich
die Eingangssignale 314 und 316 zu dem Majoritätsentscheider MAJVT
von logisch niedrigen Werten zu logisch hohen Werten. Als ein Ergebnis
von logisch hohen Werten an den Eingangssignalen 314 und 316 ist
die Majoritätsentscheidung
ein logisch niedriger Wert. Folglich wird der logische Wert, der
an dem Knoten 310 gespeichert ist, von dem ursprünglichen
logisch hohen Wert zu einem logisch niedrigen Wert geändert. Bei
diesem Beispiel wird der ursprüngliche
Wert, der in dem dreifach redundanten Latch gespeichert ist, von
einem logisch hohen Wert zu einem logisch niedrigen Wert geändert.
-
Zusätzlich zu
dem Verbessern der weichen Fehlerrate eines Latches reduziert das
dreifach redundante Latch, das in 3 gezeigt
ist, die physische Größe eines
dreifach redundanten Latches, da es weniger Transistoren verwendet.
Das dreifach redundante Latch, das in 3 gezeigt
ist, reduziert ferner die Verzögerungszeit
durch ein dreifach redundantes Latch, da die Anzahl von logischen
Verzögerungen
reduziert wird.
-
4 ist
ein Schema eines verbesserten dreifach redundanten Latches. 4 enthält dieselben
Basisblöcke,
die 3 enthält;
Transfergate 1, TG1, Transfergate 2, TG2, Transfergate 3, TG3, Latch1,
L1, Latch2, L2, Latch3, L3 und Majoritätsentscheider, MAJVT.
-
Ein
Ausführungsbeispiel
eines Transfergates 1, TG1, für
das dreifach redundante Latch, enthält einen PFET, MP2 und einen
NFET MN2. Bei diesem Ausführungsbeispiel
sind die Drains des PFET MP2 und des NFET MN2 mit dem Eingang 402 des
Transfergates 1, TG1, verbunden. Die Sources von PFET, MP2 und NFET,
MN2 sind mit dem Ausgang 408 des Transfergates 1, TG1,
verbunden. Das Gate von PFET, MP2, ist mit dem Steuerungseingang 406 des Transfergates
1, TG1, verbunden. Das Gate von NFET, MN2, ist mit dem Steuerungseingang 404 des Transfergates
1, TG1, verbunden.
-
Ein
Ausführungsbeispiel
eines Transfergates, TG2, für
das dreifach redundante Latch enthält einen PFET, MP3 und einen
NFET, MN3. Bei diesem Ausführungsbeispiel
sind die Drains des PFET, MP3 und NFET, MN3, mit dem Eingang 402 des
Transfergates 2, TG2, verbunden. Die Sources des PFET, MP3 und des
NFET, MN3, sind mit dem Ausgang 416 des Transfergates 2,
TG2, verbunden. Das Gate des PFET, MP3, ist mit dem Steuerungseingang 406 des Transfergates
2, TG2, verbunden. Das Gate des NFET, MN3, ist mit dem Steuerungseingang 404 des Transfergates
2, TG2, verbunden.
-
Ein
Ausführungsbeispiel
eines Transfergates 3, TG3, für
das dreifach redundante Latch enthält einen PFET, MP4 und einen
NFET, MN4. Bei diesem Ausführungsbeispiel
sind die Drains des PFET, MP4, und NFET, MN4, mit dem Eingang 402 des
Transfergates 3, TG3, verbunden. Die Sources des PFET, MP4, und
des NFET, MN4, sind mit dem Ausgang 412 des Transfergates
3, TG3, verbunden. Das Gate des PFET, MP4, ist mit dem Steuerungseingang 406 des
Transfergates 3, TG3, verbunden. Das Gate des NFET, MN4, ist mit
dem Steuerungseingang 404 des Transfergates 3, TG3, verbunden.
-
Ein
Ausführungsbeispiel
von Latch1, L1, für das
dreifach redundante Latch enthält
PFET, MP5, NFET, MN5, PFET, MP6 und NFET, MN6. Bei diesem Ausführungsbeispiel
sind das Gate des PFET, MP5, und das Gate des NFET, MN5, mit dem
Drain des PFET, MP6 und mit dem Drain des NFET, MN6, dem Eingang 408 von
Latch1, L1, verbunden. Der Drain von PFET, MP5 und der Drain von
NFET, MN5, sind mit dem Gate von PFET MP6 und mit dem Gate von NFET,
MN6, dem Ausgang 410 von Latch1, L1, verbunden. Die Sources
von PFET, MP5 und PFET, MP6, sind mit VDD verbunden. Die Sources
von NFET, MN5, und NFET, MN6 mit GND verbunden.
-
Ein
Ausführungsbeispiel
von Latch2, L2, für das
dreifach redundante Latch enthält
den PFET, MP7, NFET, MN7, PFET, MP8 und NFET, MN8. Bei diesem Ausführungsbeispiel
ist das Gate des PFET, MP7 und das Gate des NFET, MN7, mit dem Drain des
PFET, MP8 und dem Drain des NFET, MN8, dem Eingang 412 von
Latch2, L2, verbunden. Der Drain des PFET, MP2, und der Drain des
NFET, MN7, ist mit dem Gate des PFET, MP8 und mit dem Gate des NFET,
MN8, dem Ausgang 414 von Latch2, L2, verbunden. Die Sources
von PFET, MP7 und PFET, MP8 sind mit VDD verbunden. Die Sources
von NFET, MN7 und NFET, MN8 sind mit GND verbunden.
-
Ein
Ausführungsbeispiel
von Latch3, L3, für das
dreifach redundante Latch enthält
den PFET, MP12, NFET, MN12, PFET, MP13 und NFET, MN13. Bei diesem
Ausführungsbeispiel
ist das Gate von PFET, MP12 und das Gate von NFET, MN12, mit dem
Drain des PFET, MP13 und dem Drain dem NFET, MN13, dem Eingang/Ausgang 416 von Latch3,
L3, verbunden. Der Drain von PFET, MP12 und der Drain von NFET,
MN12, sind mit dem Gate des PFET, MP13 und mit dem Gate des NFET, MN13,
dem Knoten 426 von Latch3, L3, verbunden. Die Sources von
PFET, MP12 und PFET, MP13 sind mit VDD verbunden. Die Sources von
NFET, MN12 und NFET, MN13 sind mit GND verbunden.
-
Ein
Ausführungsbeispiel
eines Majoritätsentscheiders,
MAJVT, für
das dreifach redundante Latch enthält PFET, MP9, PFET, MP10, PFET,
MP11, NFET, MN9, NFET, MN10 und NFET, MN11. Bei diesem Ausführungsbeispiel
sind die Gates von PFET, MP10 und NFET, MN10, mit dem ersten Eingang 410 des
Majoritätsentscheiders
MAJVT verbunden. Die Gates des PFET, MN9 und NFET, MN11 sind mit
dem zweiten Eingang 414 des Majoritätsentscheiders MAJVT verbunden.
Das Gate des PFET MP11 ist mit dem dritten Eingang 404 des
Majoritätsentscheiders MAJVT
verbunden. Das Gate des NFET MN9 ist mit dem vierten Eingang 416 des
Majoritätsentscheiders MAJVT verbunden.
Die Source des PFET MP9 ist mit VDD verbunden. Die Source des NFET,
MN11 ist mit GND verbunden. Der Drain 418 des PFET MP9
ist mit der Source des PFET, MP10, 418 verbunden. Der Drain 420 des
PFET, MP10, ist mit der Source des PFET, MP11, 420 verbunden.
Der Drain des PFET, MP11 und der Drain des NFET, MN9, sind dem Ausgang 416 des
Majoritätsentscheiders
MAJVT verbunden. Die Source 422 des NFET, MP9, ist mit
dem Drain des NFET, MN10, 422, verbunden. Die Source 424 des
NFET, MN10, ist mit dem Drain des NFET, MN11, 424 verbunden.
-
4 ist
ein Schema eines verbesserten dreifach redundanten Latches. Ein
Eingangssignal treibt die Eingangssignale 402 des Transfergates
1, TG1, des Transfergates 2, TG2 und des Transfergates 3, TG3. Wenn
das Steuerungssignal 404 ein logisch hoher Wert ist und
das Steuerungssignal 406 ein logisch niedriger Wert ist,
wird das Signal an dem Eingang 402 des Transfergates 1,
TG1, des Transfergates 2, TG2, und des Transfergates 3, TG3 zu dem Ausgang 408 des
Transfergates 1, TG1, dem Ausgang 416 des Transfergates
2, TG2 und dem Ausgang 412 des Transfergates 3, TG3 übertragen.
-
Das
Signal, das zu den Knoten 408, 416 und 412 übertragen
wird, wird ferner dem Eingang 408 des Latch1, L1, dem Eingang 412 des
Latch2, L2, dem Eingang/Ausgang 416 von Latch3, L3 und
dem Ausgang 416 des Majoritätsentscheiders MAJVT präsentiert.
Die Latches L1, L2 und L3 speichern dasselbe Signal. Die Ausgangssignale 410 und 414 der Latches
L1 bzw. L2 geben den entgegengesetzten Sinn des gespeicherten Signals
aus. Die Ausgangssignale 410, 414 der Latches
L1 bzw. L2 sind zusammen mit dem ersten 404 und zweiten 406 Steuerungssignal
Eingangssignale zu dem Majoritätsentscheider
MAJVT. Die Eingangssignale 404, 406, 410 und 414 in
den Majoritätsentscheider
MAJVT verursachen, dass der Majoritätsentscheider MAJVT das Signal
verstärkt,
das an dem Ausgang 416 des Transfergates 2, TG2, präsentiert
wird.
-
Nachdem
das Steuerungseingangssignal 404 auf einen logisch niedrigen
Wert getrieben wird, wird das Steuerungseingangssignal 406 auf
einen logisch hohen Wert getrieben, Latch1, L1, Latch2, L2 und Latch3,
L3 speichern den ursprünglichen
logischen Wert, der an den Knoten 408, 412 bzw. 416 präsentiert
wird. Wenn keiner der Knoten 408, 412 und 416 gestört wird,
dann wird ein Signal desselben Sinns an dem Ausgang 416 des
Majoritätsentscheiders
MAJVT präsentiert.
-
Wenn
z. B. ein logisch hoher Wert auf den Knoten 408, 412 und 416 gespeichert
wird, dann wird ein logisch hoher Wert an dem Ausgang 416 des
Majoritätsentscheiders
MAJVT präsentiert.
Ein logisch niedriger Wert an dem Ausgang 410 des Latch
L1 wird an den ersten Eingang des Majoritätsentscheiders MAJVT angelegt.
Ein logisch niedriger Wert an dem Ausgang 414 des Latch2,
L2, wird an den zweiten Eingang des Majoritätsentscheiders MAJVT angelegt.
Da bei diesem Beispiel die Transfergates ausgeschaltet sind, ist
das Steuerungssignal 404 niedrig und das Steuerungssignal 406 ist
hoch. Da das Steuerungssignal 404 niedrig ist, wird ein
logisch niedriger Wert an den dritten Eingang des Majoritätsentscheiders
MAJVT angelegt. Da das Steuerungssignal 406 hoch ist, wird
ein logisch hoher Wert an den vierten Eingang des Majoritätsentscheiders
MAJVT angelegt. Wenn diese logischen Werte an den Majoritätsentscheider
MAJVT angelegt sind, bleibt das Ausgangssignal 416 des
Majoritätsentscheiders
MAJVT auf einem logisch hohen Wert.
-
Wenn
bei diesem Beispiel, wo ein logisch hoher Wert auf den Knoten 408, 412 und 416 gespeichert
ist, der Knoten 408 auf einen logisch niedrigen Wert durch
ein Weicher-Fehler-Ereignis
geändert wird,
wird dann ein logisch hoher Wert dem Eingang 410 des Majoritätsentscheiders
MAJVT präsentiert. Die
Eingangssignale 414 und 404 bleiben ein logisch niedriger
Wert, während
das Eingangssignal 406 ein logisch hoher Wert bleibt. Da
das Eingangssignal 410 sich von einem logisch niedrigen
Wert zu einem hohen logischen Wert geändert hat, wird der Knoten 416 nicht
mehr aktiv durch den Majoritätsentscheider MAJVT
hoch getrieben. Da das Latch3, L3, jedoch nicht gestört wurde,
hält das
Latch3, L3, aktiv den Knoten 416 auf einem logisch hohen
Wert. Folglich, obwohl Latch1, L1, durch ein Weicher-Fehler-Ereignis
auf einen logisch niedrigen Wert gestört wird, bleibt der Wert an
dem Ausgang 428 des dreifach redundanten Latches ein logisch
hoher Wert.
-
Wenn
jedoch ein Weicher-Fehler-Ereignis den Wert ändert, der auf dem Knoten 408 und
dem Knoten 412 gespeichert ist, ändert sich das dreifach redundante
Latch von seinem ursprünglichen
Wert. Wenn z. B. ein logisch hoher Wert auf den Knoten 408, 412 und 416 gespeichert
ist, wird ein logisch hoher Wert an dem Ausgangssignal 416 des
Majoritätsentscheiders
MAJVT präsentiert.
Wenn ein Weicher-Fehler-Ereignis
den logischen Wert ändert,
der auf den Knoten 408 und 412 gespeichert ist,
von einem logisch hohen Wert zu einem logisch niedrigen Wert, ändern sich
die Eingangssignale 410 und 414, in den Majoritätsentscheider
MAJVT, von logisch niedrigen Werten zu logisch hohen Werten. Da
die Eingangssignale 410 und 414 des Majoritätsentscheiders
MAJVT logisch hohe Werte sind und das Steuerungssignal 406 ein
logisch hoher Wert bleibt, wird das Ausgangssignal 416 des
Majoritätsentscheiders
auf einen logisch niedrigen Wert gezogen. Der logisch hohe Wert,
der auf dem Latch3, L3, gespeichert ist, wird dann auf einen logisch
niedrigen Wert umgekehrt. Das Ausgangssignal 428 des dreifach
redundanten Latches wird dann von einem logisch niedrigen Wert zu
einem logisch hohen Wert verändert.
-
Wenn
ein einzelnes Weicher-Fehler-Ereignis den logischen Wert temporär ändert, der
in dem Latch3, L3, gespeichert ist, setzt der Majoritätsentscheider,
MAJVT, den logischen Wert auf dem Latch3, L3, auf seinen ursprünglichen
Wert zurück. Der
logische Zustand auf dem Latch3, L3, wird auf seinen ursprünglichen
Wert zurückgesetzt,
da keines der Eingangssignale 404, 406, 310 und 414 auf
dem Majoritätsentscheider,
MAJVT, sich verändert
hat, als eine Folge daraus, dass das Latch 3, L3, seinen logischen
Wert ändert.
Daher treibt das Ausgangssignal 416 des Majoritätsentscheiders
MAJVT das Latch3, L3, zurück
zu seinem ursprünglichen
Wert.
-
Die
vorangehende Beschreibung der vorliegenden Erfindung wurde zu Zwecken
der Darstellung und Beschreibung präsentiert. Sie soll nicht ausschließend sein
oder die Erfindung auf die genaue offenbarte Form einschränken, und
andere Modifikationen und Abänderungen
könnten
im Hinblick auf die obigen Lehren möglich sein. Das Ausführungsbeispiel
wurde ausgewählt
und beschrieben, um die Prinzipien der Erfindung und ihre praktische
Anwendung bestmöglich
zu erklären,
um dadurch anderen Fachleuten auf dem Gebiet zu ermöglichen,
die Erfindung bei verschiedenen Ausführungsbeispielen und verschiedenen
Modifikationen bestmöglich
zu verwenden, wie sie für
die bestimmte erdachte Verwendung geeignet sind. Es wird darauf
hingewiesen, dass die beiliegenden Ansprüche erdacht sein sollen, um
andere alternative Ausführungsbeispiele
der Erfindung zu umfassen, außer
dieselbe ist insofern anderweitig durch den Stand der Technik eingeschränkt.