DE3688437T2 - Verfahren zur Umwandlung einer MOS-Schaltung von Schaltebenedarstellung in eine boolesche Darstellung und Verfahren zur Fehlersimulation in einer auf der Schaltebene dargestellten MOS-Schaltung durch das Verwenden seiner booleschen Darstellung. - Google Patents
Verfahren zur Umwandlung einer MOS-Schaltung von Schaltebenedarstellung in eine boolesche Darstellung und Verfahren zur Fehlersimulation in einer auf der Schaltebene dargestellten MOS-Schaltung durch das Verwenden seiner booleschen Darstellung.Info
- Publication number
- DE3688437T2 DE3688437T2 DE86102276T DE3688437T DE3688437T2 DE 3688437 T2 DE3688437 T2 DE 3688437T2 DE 86102276 T DE86102276 T DE 86102276T DE 3688437 T DE3688437 T DE 3688437T DE 3688437 T2 DE3688437 T2 DE 3688437T2
- Authority
- DE
- Germany
- Prior art keywords
- output
- gate
- switch
- tree
- boolean
- 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
- 238000004088 simulation Methods 0.000 title claims description 20
- 238000000034 method Methods 0.000 title claims description 14
- 230000000295 complement effect Effects 0.000 claims description 28
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 230000007704 transition Effects 0.000 claims description 3
- 230000002950 deficient Effects 0.000 claims 1
- 238000012360 testing method Methods 0.000 description 34
- 238000011156 evaluation Methods 0.000 description 9
- 238000013461 design Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000005094 computer simulation Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000010304 firing Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 101000694017 Homo sapiens Sodium channel protein type 5 subunit alpha Proteins 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000013598 vector Substances 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/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/261—Functional testing by simulating additional hardware, e.g. fault simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Tests Of Electronic Circuits (AREA)
Description
- Diese Erfindung bezieht sich im allgemeinen auf integrierte Schaltungen und im besonderen auf ein Verfahren zur Darstellung von Differential-Cascode-Spannungsschaltern durch Bool'sche Glieder, insbesondere zum Zweck einer Fehlersimulation.
- In der Herstellung von integrierten Schaltungen ist normalerweise die Wahrscheinlichkeit sehr hoch, daß ein bestimmter Chip nicht genau so funktioniert, wie er in der ausgelegt wurde. Minimale Schwankungen in der Präzision der hergestellten Chips können zu inkorrekten Ausgangswerten bei einem gegebenen Satz an Eingaben führen. Solche Störungen treten nach dem Zufallsprinzip von einem zum nächsten Chip ein. Entsprechend vergleicht man jeden neu hergestellten Chip mit einem Testmuster und mißt dann den Ausgang. Im U.S.-Patent 3,927,371 wenden Pomeranz et al das Testmuster an einer physikalischen Schaltung und außerdem in einer Computer-Simulation der Schaltung an und vergleichen die Ergebnisse. Es ist jedoch normal, daß ein Fehler nur bei einem bestimmten Testmuster auftritt. Bei relativ einfachen integrierten Schaltungen, beispielsweise bei Flip-Flops, wäre es möglich, eine ganze Reihe von Testmustern anzuwenden, die sämtliche möglichen Kombinationen an Eingangsmustern testen können. Auf diese Weise wird ein einfacher Chip vollständig getestet. Ausgereifte integrierte Schaltungen können jedoch eine sehr große Anzahl an Eingangsvariablen verwenden. Dies ist besonders dann der Fall, wenn die integrierte Schaltung Speicherelemente enthält, so daß die Eingänge eines Zyklus erst in nachfolgenden Zyklen getestet werden. Auch wenn es theoretisch möglich ist, alle Eingangsmuster vollständig zu testen, wären selbst die schnellsten automatisierten Testeinrichtungen nicht in der Lage, die Tests innerhalb einer einigermaßen akzeptablen Zeitdauer und mit einem geringen Kostenaufwand durchzuführen. Daher ist es wünschenswert, daß bereits in der Planungsphase einer integrierten Schaltung eine Folge an Testmustern erzeugt wird, die sämtliche möglichen Fehler innerhalb einer Schaltung erkennt. Die Anzahl der Testmuster soll dabei so klein wie möglich sein, um die Kosten dieser Tests gering zu halten. Diese Art der Fehlersimulation zur Bestimmung der Durchführbarkeit von Tests wird im U.S.-Patent 3,775,598 von Chao et al. beschrieben. Die Erzeugung dieser Testmuster erfordert das Verständnis der Auslegung der Schaltung sowie der in der Schaltung möglichen Fehler.
- Für die Fehlersimulation benötigt man ein realistisches Modell der integrierten Schaltung; mögliche Fehler werden dann entsprechend der möglichen Fehler im echten Chip in dieses Modell eingebaut. Anschließend wird ein Testmuster erzeugt, das den entsprechenden Fehler zu erkennen in der Lage ist, das heißt, das Testmuster erzeugt einen Ausgang im fehlerfreien Modell und ein weiterer Ausgang, wenn das Modell den Fehler enthält. Dieses Muster wird zum Testen der echten integrierten Schaltung verwendet, um zu bestimmen, ob die Schaltung fehlerhaft ist. Die Erzeugung des erforderlichen Testmusters ist von großer Bedeutung, da bei zahlreichen Störungen auf einen Großteil der Eingangsmuster korrekte Ausgänge erfolgen. Im U.S.-Patent 4,204,633 beschreibt Goel ein Verfahren zur Erzeugung eines Testmusters, das einen eingebauten Fehler an den Ausgängen erkennbar macht. Daher liegt es auf der Hand, daß immer noch eine große Anzahl an Testmustern erforderlich ist, um alle oder zumindest die allermeisten Fehler zu erkennen. Eine richtig ausgewählte Folge an Testmustern kann jedoch die Kosten der Tests beträchtlich senken oder aber den Anteil der erkannten Fehler bezüglich einer gegebenen Anzahl an Testmustern erhöhen.
- Beim Schaltungsmodell gibt es unterschiedliche Ebenen der Abstraktion, die in der Fehlersimulation verwendet werden können. Eine allgemeine Beschreibung solcher Simulatoren unterschiedlicher Ebenen ist in einem Fachartikel mit folgendem Titel enthalten: "A System Engineer's Guide to Simulators" von Werner et al., erschienen in "VLSI Design", Februar 1984, Seiten 27-31. Ein solcher Simulatortyp wird von Timoc im U.S.-Patent 4,308,616 beschrieben, der physikalischen Schaltungen einen Fehlereinsetzer hinzufügt.
- Die vom Aufbau her einfachste Form ist wohl die Schaltebene. Die Schaltebenendarstellung einer Schaltung ist die Verbindung mehrerer Transistoren und ähnlicher Einheiten untereinander. Der erforderliche Transistortyp, bipolar oder MOS, ist abhängig von der in der integrierten Schaltung verwendeten Technik. In die Schaltebenendarstellung lassen sich Fehler relativ leicht einbauen. Sobald jedoch alle Transistoren in Übereinstimmung mit der Auslegung dem Chips miteinander verbunden sind, entsteht eine sehr komplexe nicht-lineare Schaltung. Eine solche Schaltebenenschaltung läßt sich nur schwer hinsichtlich des Verhältnisses zwischen Eingängen und Ausgängen auswerten.
- Eine andere Art der Darstellung ist ein Bool'sches Modell, in dem Bool'sche Glieder, beispielsweise UND- oder ODER-Glieder, verwendet werden. Eine Bool'sche Schaltung läßt sich wesentlicher einfacher mathematisch auswerten. Das Bool'sche Modell ist zwar komplexer als das entsprechende Schaltebenenmodell, doch sobald das Bool'sche Modell einmal eingerichtet ist, sind ausgereiftere und effektivere Computer-Simulationen möglich.
- Viele bipolare Schaltungselemente lassen sich mühelos in ihre Bool'schen Entsprechungen umwandeln. MOS-Schaltungselemente jedoch können nicht so leicht in eine Bool'sche Darstellung mit der richtigen Simulation der MOS-Fehler umkonvertiert werden.
- Ein in jüngster Zeit entwickelter MOS-Schaltungstyp ist ein Differential-Cascode-Spannungsschalter (DCVS). Dieser Schaltungstyp wird von Heller et al in einem Fachartikel mit dem Titel "Cascode Voltage Switch Logic Family" beschrieben und erschien anläßlich der Konferenz "Proceedings of IEEE International Solid-State Circuits Conference", die vom 22. bis 24. Februar 1984 in San Francisco, Kalifornien, stattfand. Dieser Schaltungstyp wird außerdem in der Patentanmeldung mit der Seriennummer 554,146, Datum 21. November 1983, von W. R. Griff in et al. beschrieben.
- DCVS-Schaltungen weisen viele Vorteile auf. Jedoch haben sie auch den Nachteil, daß sie aus MOS-Schaltern bestehen und sich daher nur schwer als Bool'sche Glieder simulieren lassen. In "Proceedings of the International Conference on Computer Design, ICCD'84", Oktober 1984, Seiten 42-47 (Barzilai et al) wird ein Verfahren zur Erzeugung einer Modelldarstellung von SCVS- Schaltungen (SCVS= Single-ended Cascode Voltage Switch; zu deutsch: Cascode-Spannungsschalter mit Einzelende) beschrieben. Hierzu wird ein fehlerhaftes Modell verwendet, das alle einzelnen, durch Hängenbleiben offene und durch Hängenbleiben geschlossene Fehler in den Transistoren mit nMOS-Logik sowie die meisten der einzelnen, durch Hängenbleiben offene Fehler in Vorlade-/Puffer-Transistoren abdeckt. Die Simulationsleistung wird verstärkt durch Ausnutzen der strukturellen Eigenschaften von SCVA-Schaltungen, die sich von der allgemeineren MOS- Schaltung ganz erheblich unterscheidet.
- Bei der SCVS-Schaltung ist das Modell zur Fehlersimulation einfach, da das Verhalten durch eine einfache Analyse des Transistornetzwerks leicht nachvollzogen werden kann. Bei der DCVS-Schaltung jedoch, die Gegenstand der vorliegenden Erfindung ist, sind Fehler vorhanden; daher ist es möglich, daß Pfade, die normalerweise ignoriert werden, in der fehlerhaften Schaltung plötzlich aktiv werden. Bei jeder dieser beiden Technologien stellt man sich die Information in jedem Baum (ein Begriff, der in dieser Patentbeschreibung verwendet wird) so vor, daß sie von unten (Boden) nach oben verläuft. Während diese Annahme bei der SCVS-Schaltung sowohl in der fehlerfreien als auch in der fehlerhaften Schaltung zutrifft, ist sie in der fehlerhaften DCVS-Schaltung nicht zutreffend. Aufgrund dieser Tatsache ist ein komplexeres Modell für die DCVS-Schaltung erforderlich, das auch dann noch anwendbar ist, wenn die Fehler "Schleichpfade" erzeugen, die die Information in die entgegengesetzte Richtung führen. Deshalb sind für SCVS- und DCVS-Schaltungen völlig unterschiedliche Lösungen in Betracht zu ziehen.
- Ein großer Vorteil der vorliegenden Erfindung besteht darin, daß sie ermöglicht, geringfügige Auswirkungen in unserem Modell zu berücksichtigen, ohne auf niedrigere Ebenen von Simulationsmodellen zu gehen. Im bisherigen Verfahren hätte man ein Modell auf niedrigerer Ebene (z. B. ASTAP oder Schaltebene) verwendet, um dieselbe Information zu erzielen. Dies wäre vergleichsweise nachteilhaft, da ein Absteigen auf ein Modell niedrigerer Ebene zusätzliche Einzelheiten und Berechnungen erforderte. Unsere Erfindung führt unter Verwendung eines Modells auf einer wirksameren höheren Ebene zum richtigen Ergebnis.
- In Übereinstimmung mit der vorhergehenden Beschreibung besteht das Ziel dieser Erfindung darin, eine Bool'sche Ebenendarstellung einer DCVS-Schaltung zu liefern.
- Ein weiteres Ziel dieser Erfindung ist die Simulation von Fehlern, die den tatsächlich möglichen Fehlern im echten Chip in einer Bool'schen Ebenendarstellung einer DCVS-Schaltung entsprechen.
- Die vorliegende Erfindung wird durch die beiliegenden Ansprüche definiert.
- Die Erfindung kann als Bool'sche Darstellung einer DCVS- Schaltung zusammengefaßt werden, in der jeder Logikbaum der Schaltebene durch einen Bool'schen Logikbaum mit drei Abschnitten ersetzt wird. Jeder logische Schalter wird durch ein UND- Glied ersetzt, von dem einer der Eingänge durch das Hauptschaltnetzsignal des Glieds, welches es repräsentiert, gesteuert wird. Im ersten Abschnitt des Baums werden die anderen Eingänge der UND-Glieder an die Eingänge des Differentialpaares angeschlossen, die Ausgänge der AND-Glieder werden an die Ausgänge der Differentialpaare angeschlossen. Die beiden Ausgänge des ersten Baumabschnitts werden als zwei Eingänge an den zweiten Baumabschnitt angeschlossen. Die anderen Eingänge an die UND-Glieder im zweiten Abschnitt sind die entsprechenden Ausgänge des Differentialpaares. Die beiden Ausgänge der gepaarten UND- Glieder werden in einem ODER-Glied zusammengeführt, dessen Ausgang an die Eingangsverbindung des Differentialpaares angeschlossen wird. Der eine bedeutende Ausgang des zweiten Abschnitts wird an den einen Eingang des dritten Abschnitts angeschlossen. Der dritte Abschnitt ähnelt dem ersten Abschnitt, jedoch wird der Eingang des dritten Abschnitts an ein Differentialpaar an den Eingang eines ODER-Glieds geleitet, dessen anderer Eingang an den Ausgang des entsprechenden ODER-Glieds im zweiten Abschnitt angeschlossen wird. An allen entsprechenden Stellen in den drei Abschnitten werden Fehler eingefügt. Bei manchen Fehlerklassen wird lediglich der erste Abschnitt benötigt.
- Fig. 1 ist eine schematische Darstellung einer DCVS-Schaltung.
- Fig. 2 ist eine schematische Darstellung eines Logikbaumes und seiner dazugehörigen Puffer- und Vorladeschaltung für eine DCVS- Schaltung.
- Fig. 3 ist eine schematische Darstellung einer exemplarischen DCVS-Baumlogik.
- Fig. 4 ist eine schematische Darstellung eines Differentialpaares.
- Fig. 5 ist eine schematische Darstellung eines Bool'schen Modells der Puffer- und Vorladeschaltung in Übereinstimmung mit der Erfindung.
- Fig. 6 ist eine schematische Darstellung eines Bool'schen Modells eines Differentialpaares in Übereinstimmung mit der vorliegenden Erfindung.
- Fig. 7 ist eine schematische Darstellung, die die gegenseitigen Verbindungen der Bool'schen Modelle aus Fig. 5 und Fig. 6 zeigt.
- Fig. 8 ist ein ausführliches Bool'sches Modell einer exemplarischen Schaltebenenschaltung aus Fig. 3.
- Fig. 1 beschreibt ein Beispiel eines Differential-Cascode- Spannungsschalters (DCVS). Die Schaltung besteht aus einer beliebigen Anzahl an Logikbäumen 10, von denen jeder einer Puffer- und Vorladeschaltung 11 zugeordnet ist. Die Kombination aus einem Logikbaum 10 und seiner Puffer- und Vorladeschaltung 11 wird als logisches Modul bezeichnet. Die Puffer- und Vorladeschaltungen 11 sind im allgemeinen identisch, doch kann die interne Struktur der Logikbäume 10 unterschiedlich sein. Die DCVS-Schaltung ist abhängig von zusätzlichen Signalen an allen Punkten. Jeder Primäreingang besitzt eine komplementäre und echte Version PI0i und PI1i. Der Ausgang eines logischen Moduls, das den Baum Fi enthält, besteht aus einer komplementären Version F0i und einer echten Version F1i desselben Logiksignals. Die Eingänge an die Logikbäume 10 sind entweder die Komplementärversionen der Primäreingänge PI0i und PI1i oder die Komplementärversionen der Ausgänge F0i und F1i verschiedener Bäume; zusammenfassend werden diese als Hauptschaltnetzsignale bezeichnet. Die in Fig. 1 dargestellte gegenseitige Verbindung ist lediglich eine beispielhafte Veranschaulichung der unterschiedlichen Möglichkeiten.
- Die Einzelheiten der Puffer- und Vorladeschaltung 11 werden in Fig. 2 dargestellt; ihre Wirkung auf den Logikbaum 10 wird nachfolgend beschrieben. Der Logikbaum hat einen komplementären Baumausgang T0 und einen echten Baumausgang T1. Zwei obere Vorlade-p-Kanäle 12 und 14 trennen die komplementären Ausgänge T0 und den echten Ausgang T1 von einer positiven Spannungsquelle. Ein niedrigerer n-Kanal-Vorladeschalter 16 trennt den Masseknoten R des Logikbaums 10 von der Masse. Während einer Vorladeperiode sinkt das Vorladesignal, welches die Vorladeschalter 12 bis 16 steuert, ab und trennt so den Logikbaum 10 von der Masse, verbindet ihn jedoch mit der positiven Spannungsquelle. Auf diese Weise werden die beiden Baumausgänge T0 und T1 geladen.
- Der echte Baumausgang T1 wird über einen CMOS-Inverter eines p- Kanal-Schalters 18 und eines n-Kanal-Schalters 20 an einen echten Ausgangsknoten F1 angeschlossen. Das Signal am echten Ausgangsknoten F1 wird über einen p-Kanal-Rückmeldeschalter 22, der an die positive Spannungsquelle angeschlossen ist, an den echten Baumausgang T1 zurückgeführt. Der Rückmeldeschalter 22 ist ein schwaches Glied, dies hat zur Folge, daß jedes kräftige Signal am Baumausgang T1 die Rückmeldeschaltung dazu veranlaßt, diesem Signal zu folgen. Die Rückmeldeschaltung 22 gleicht Kriechströme vom Baumausgang T1 an die Masse sowie Signalfluktuationen aus. Auf diese Weise bewirkt das hohe Signal auf dem vorgeladenen Baumausgang T1 während der Vorladeperiode, daß der echte Ausgangsknoten F1 absinkt.
- Der komplementäre Baumausgang T0 veranlaßt, daß eine ähnliche Schaltung diese an einen komplementären Ausgangsknoten F0 anschließt. In einer normal funktionierenden Schaltung sind die Signale auf den Baumausgängen T0 und T1 komplementär zueinander; dies ist auch bei den Ausgangsknoten F0 und F1 der Fall. Die CMOS-Inverter bewirken, daß die Ausgangsknoten F0 und F1 zu ihren dazugehörigen Baumausgängen T0 und T1 komplementär sind.
- Der Logikbaum 10 wird in NMOS implementiert, das heißt, mit n- Kanal MOS-Schaltern. Der Logikbaum 10 wird durch die Hauptschaltnetzsignale G0&sub1;, G1&sub1;, G0&sub2; und G1&sub2; jeder geraden Zahl gesteuert. Im Normalbetrieb ist G0&sub1; komplementär zu G1&sub1; und G0&sub2; ist komplementär zu G1&sub2;. Wie bereits beschrieben wurde, können die Hauptschaltnetzsignale entweder die Primäreingänge PI0i und PI1i für die DCVS-Schaltung sein oder an die Ausgangsknoten F0 und F1 eines anderen Logikbaums angeschlossen werden.
- Die Struktur des Logikbaumes 10 ist abhängig davon, welche logische Funktion seiner Hauptschaltnetzsingale er repräsentieren soll. Ein Beispiel für einen Logikbaum ist in Fig. 3 enthalten. Man sieht, daß der Logikbaum 10 aus drei miteinander verbundenen Differentialpaaren 24 besteht, von denen jedes durch die komplementären Hauptschaltnetzsignale G0i und G1i gesteuert wird. Diese spezielle Baumstruktur wurde lediglich zum Zweck einer übersichtlichen Darstellung gewählt. Die Hauptschaltnetzsignale zu den verschiedenen Differentialpaaren 24 können dieselben sein. Wichtig ist, daß in einer normalen Schaltung für jeden beliebigen Signalwert auf einem Hauptschaltnetzsignal nur ein einziger Schalter in einem Differentialpaar 24 leitend ist. Des weiteren gilt, wie dies durch Verfolgen der Pfade vom Masseknoten R aufwärts ersichtlich wird, daß es für jede beliebige Kombination aus Signalen auf den Hauptschaltnetzsignalen G0i und G1i nur einen leitenden Pfad gibt; dieser verläuft entweder vom komplementären Baumausgang T1 oder vom echten Baumausgang T0 zum Masseknoten R. Diese Fakten sind in einer fehlerfreien Schaltung, für die die Schalter richtig funktionieren und das Hauptschaltnetzsignal G0i komplementär zum Hauptschaltnetzsignal G1i ist, wahr.
- Der grundlegende Baustein eines Logikbaumes 10 ist also das Differentialpaar 24, das in Fig. 4 ausführlich dargestellt ist. Das Differentialpaar 24 besteht aus zwei n-Kanal-Schaltern 26 und 28, dessen Gliedelektroden durch die komplementären Hauptschaltnetzsignale G0 und G1 gesteuert werden. Die Quellen der beiden Schalter 26 und 28 werden zusammen an eine gemeinsame Eingangsquelle S angeschlossen. Die Drains der beiden Schalter 26 und 28 sind die Ausgangsdrains D0 und D1. Unabhängig vom Wert des Hauptschaltnetzsignals G0 ist unter normalen Betriebsbedingungen einer der beiden Schalter 26 und 28 leitend, während der andere nicht-leitend ist.
- Wenn die Baumausgangsknoten T0 und T1 richtig vorgeladen wurden, wird, sobald der untere Vorladeschalter 16 geschlossen ist, abhängig von den Werten der Hauptschaltnetzsignale entweder der Baumausgangsknoten T0 oder der Baumausgangsknoten T1 entladen. Diese Entladung erfolgt in der sogenannten Auswertungsphase. Nach der Auswertung ist das Signal auf dem Baumausgangsknoten TO normalerweise komplementär zum Signal auf dem Knoten T1.
- Für die gegenseitigen Verbindungen der Differentialpaare 24 gelten folgende Regeln: Die Hauptschaltnetzsignale G0i und G1i sind entweder Primäreingänge oder werden von den Baumausgängen T0 und T1 anderer Bäume abgeleitet. Die Hauptschaltnetzsignale G0 und G1 müssen echte und komplementäre Formen einer einzelnen Variablen sein. Die Ausgänge D0 und D1 eines Differentialbaumes können nur auf einer höheren Ebene im Baum 10 an den Eingang S eines einzelnen Differentialpaares 24 oder an einen einzelnen Baumausgang T0 oder T1 angeschlossen werden.
- Der Eingang S eines Differentialpaares 24 kann nur an die Ausgänge D0 oder D1 eines oder mehrerer niedrigerer Differentialpaare im Baum 10 oder an den Masseknoten R angeschlossen werden.
- Auch können die Ausgänge D0 und D1 unterschiedlicher Differentialpaare 24 kombiniert oder durch Verteilung miteinander verbunden werden. Diese Verteilung wird verwendet, um untergeordnete Bäume gemeinsam zu nutzen und so die Anzahl der Differentialpaare 24 zur Durchführung der erforderlichen Logikfunktion zu reduzieren. Es wird darauf hingewiesen, daß die Verteilung an den Baumausgängen T0 und T1 und möglicherweise an anderen internen Knoten zu einer Struktur führt, die nicht nur eine Baumstruktur ist, zumindest in einem graphisch-theoretischen Sinn.
- Weil die Baumausgänge T0 und T1 beide an der positiven Spannungsquelle gehalten werden, sind die Ausgangsknoten F0 und F1 während der Vorladephase beide niedrig oder logisch Null. Folglich sind während der Vorladephase alle Schalter im Logikbaum nicht-leitend.
- Das Bool'sche Modell des Differential-Cascode-Spannungsschalters (DCVS) wird für diese Erfindung ausgewählt, um mehrere Fehlerarten zu simulieren. Diese Fehler gehören zu den wichtigsten innerhalb einer DCVS-Schaltung. Die ausgewählten Fehler befinden sich sowohl im Logikbaum 10 als auch in der Puffer- und Vorladeschaltung 11. Das Modell stützt sich auf die Annahme, daß in der gesamten DCVS-Schaltung nur ein einziger Simulationsfehler auftritt. Die ausgewählten Simulationsfehler sind:
- 1. Ein Schalter 26 oder 28 in einem Logikbaum 10 ist, unabhängig vom Signal G0 oder G1 auf dessen Gliedern, durch Hängenbleiben offen oder nicht-leitend.
- 2. Ein Schalter 26 oder 28 in einem Logikbaum 10 ist, unabhängig vom Signal G0 oder G1 auf dessen Gliedern, durch Hängenbleiben geschlossen oder leitend.
- 3. Das Signal auf einem Ausgangsknoten F0 oder F1 einer Puffer- und Vorladeschaltung 11 sinkt nur langsam. Das heißt, wenn ein Ausgangsknoten F0 oder F1 so ausgelegt ist, daß er von einer 1 zu einer 0 übergeht, tut er dies zwar, benötigt dafür aber eine sehr lange Zeit.
- 4. Signal am Ausgangsknoten F0 oder F1 einer Puffer- und Vorladeschaltung 11, die, unabhängig vom Wert des entsprechenden Signals am Baumausgang T0 oder T1, an 0 hängenbleibt.
- 5. Ein Signal an einem Ausgangsknoten F0 oder F1, das, unabhängig von den Signalen an T0 oder T1, an einem der Knoten hängenbleibt.
- Die Simulationsfehler in der Puffer- und Vorladeschaltung 11 können verwendet werden, um eine ganze Anzahl unterschiedlicher physikalischer Fehler in den Schaltern dieser Schaltung zu simulieren. Der obere Teil der Puffer- und Vorladeschaltung 11 kann in zwei symmetrische Hälften unterteilt werden, wobei die eine den komplementären Ausgangsknoten F0 und die andere den echten Ausgangsknoten F1 treibt. Nachfolgend werden Fehler ausschließlich für die Hälfte analysiert, die den echten Ausgangsknoten F1 treibt, wobei die andere Hälfte einer Erläuterung bedarf.
- Tabelle 1 zeigt die Reation des Moduls bei Vorhandensein dieses Fehlers. Der erste eingebaute Fehler besteht darin, daß der Schalter 14 durch Hängenbleiben offen ist. Der Fehler kommt nur dann zur Geltung, wenn die an den Logikbaum 10 eingehenden Hauptschaltnetzsignale am echten Ausgangsknoten F1 versuchen, eine logische 1, gefolgt von einer logischen 0, zu erzeugen. Es wird darauf hingewiesen, daß der Ausgang während der Vorladephase nicht als feststellbare Quantität betrachtet werden kann. Dieser Fehler wird am echten Ausgangsknoten F1 als langsam abfallender Fehler simuliert. Zwar weist diese Simulation einige Ungenauigkeiten auf, die nachfolgend beschrieben werden, jedoch eignet sich das Modell dennoch zur Simulation des Sequenzverhaltens, das von den durch Hängenbleiben offenen Schaltern verursacht wird. Tabelle 1 Reaktion des Moduls (Schalter 14 durch Hängenbleiben offen) F1 Alter Wert F1 fehlerfrei (Strom) F1 fehlerhalft (Strom) Vorladung Nachfeuerung Fehler eingebaut? Nein Ja
- Der zweite physikalische Fehler, der im Modell eingebaut werden soll, ist der durch Hängenbleiben offene Schalter 20. Der Ausgang aller aufeinanderfolgender Kombinationen logischer Baumeingänge wird in Tabelle 2 dargestellt. Auch hier kann der Fehler als ein langsam abfallender Fehler am echten Ausgangsknoten F1 simuliert werden. Tabelle 2 Reaktion des Baumes (Schalter 20 durch Hängenbleiben offen) F1 Alter Wert F1 fehlerfrei (Strom) F1 fehlerhalft (Strom) Vorladung Nachfeuerung Fehler eingebaut? Nein Ja
- Die dritte zu simulierende Fehlerart besteht darin, daß der Schalter 18 durch Hängenbleiben offen ist. Die Reaktion des echten Knotenausgangs F1 bei Vorhandensein dieses Fehlers wird in Tabelle 3 dargestellt. Dieser Fehler kann als Hängenbleiben an 0 am echten Ausgangsknoten F1 simuliert werden. Ein einziges Eingangsmuster aus Primäreingängen, die normalerweise am echten Ausgangsknoten F1, der sich wiederum an die Ausgänge verbreitet, eine logische 1 erzeugen würden, ist für die Erkennung dieses Fehlers ausreichend. Der echte Ausgangsknoten F1 wird stattdessen auf den hängengebliebenen Wert von Null gezwungen. Die Vorladephase dient lediglich als ein Initialisierungsmuster und wird in der tatsächlichen Fehlersimulation nicht benötigt. Tabelle 3 Reaktion des Baumes (Schalter 18 durch Hängenbleiben offen) F1 Alter Wert F1 fehlerfrei (Strom) F1 fehlerhalft (Strom) Vorladung Nachfeuerung Fehler eingebaut? Nein Ja
- Der Fehler des Rückmeldeschalters 22, der durch Hängenbleiben offen ist, wird nicht simuliert. Der Schalter 22 wird zu der Puffer- und Vorladeschaltung 11 hinzugefügt, um Störspitzen zu beseitigen, die sonst aufgrund der gemeinsamen Verwendung der Vorladung unter vielen internen Knoten innerhalb des Logikbaumes 10 auftreten könnten.
- Ein Fehler des durch Hängenbleiben offenen Schalters 22 würde wieder zu dem Problem der Störspitzen führen.
- Der untere Vorladeschalter 16 verhindert Entladungen durch Kriechströme während der Vorladephase. Wenn dieser Schalter 16 durch Hängenbleiben geschlossen oder leitend ist, bewirkt dieser Fehler, daß eine Entladung durch Kriechströme auftreten kann. Diese Entladung kann dazu führen, daß die beiden Ausgangsknoten F0 und F1 in einigen Situationen, jedoch nicht in allen, eine logische 1 annehmen. Dieser problematische Fehler wird nicht simuliert.
- Wenn der untere Vorladeschalter 16 durch Hängenbleiben offen ist, verhindert dieser Fehler eine Entladung in beiden Baumausgängen T0 und T1. Die Folge ist, daß beide Ausgangsknoten F0 und F1 bei Null hängenbleiben. Dieser Fehler braucht nicht simuliert zu werden, weil er am echten Ausgangsknoten F1 durch den Fehler "Hängenbleiben bei Null" und am komplementären Ausgangsknoten F0 durch den Fehler "Hängenbleiben bei Null" überlagert wird.
- Der Effekt von Fehlern, die auf durch Hängenbleiben geschlossene Schaltungen der Schalter 14, 18, 20 und 22 zurückzuführen sind, ist etwas komplexer und muß unter Berücksichtigung der unterschiedlichen Schaltergrößen und -abmessungen analysiert werden. Diese Fehler werden nicht simuliert. Die modellhafte Darstellung eines Schalters, der von einem langsam abfallenden Fehler am Ausgangsknoten F0 oder F1 durch Hängenbleiben offen ist, bedarf einer ausführlichen Erläuterung. Wie bereits beschrieben wurde, wird der langsam abfallende Fehler durch Erzeugung zweier Muster von Primäreingängen getestet. Das erste Muster treibt den Ausgangsknoten F1 auf 1. Das zweite Muster treibt normalerweise den Ausgangsknoten F1 auf 0. Wenn der Ausgangsknoten anstattdessen für das zweite Muster auf 1 bleibt und sich diese Variation auf einen Ausgang der DCVS-Schaltung verbreitet, dann wird der Fehler im Test erkannt. Somit besteht die Simulation zum Test des Schalters 14, der durch Hängenbleiben offen ist, darin, eine Sequenz zweier Muster zu programmieren, die den Ausgangsknoten F1 zu einem bestimmten Zeitpunkt T auf 1 und in einer bestimmten Zeit T+1 auf 0 treibt, und anschließend den Ausgangsknoten F1, der zum Zeitpunkt T+1 an 1 hängenbleibt, zu testen.
- Das Modell mit langsam abfallendem Fehler macht es erforderlich, daß der eigentliche Chiptest in Zeitintervallen entsprechend der Zeit, in der das Signal nicht abfällt, ausgeführt wird. Wenn jedoch der obere Vorladeschalter 14 durch Hängenbleiben offen ist, bedeutet das, daß die echte Baumausgabe T1 nicht vorgeladen wird. Diese Unfähigkeit, den Baumausgang T1 vorzuladen, bedeutet, daß der echte Ausgangsknoten F1 sich eine beträchtliche Zeit "Hängenbleiben bei 1" verhält, nachdem er richtigerweise 1 war. Wie lange sich der Ausgangsknoten F1 "Hängenbleiben bei 1" verhält, ist nur schwer zu bestimmen.
- Die Verwendung des langsam abfallenden Modells zeugt von Pessimismus. Die tatsächlichen Fehler, beispielsweise das durch Hängenbleiben offene obere Vorladeglied 14, lassen sich leichter einem physikalischen Test unterziehen als die Fehler im Modell, beispielsweise der langsam abfallende Ausgangsknoten F1. Ein pissimitisch ausgelegtes Modell kann jedoch sehr nützlich sein, da das Hauptanliegen in der Modelldarstellung von Fehlern darin besteht, ein Testprotokoll zu simulieren und dafür zu sorgen, daß eine möglichst große Fehlererkennungsquote erzielt wird. Ein pessimistisches Modell berechnet eine geringere Fehlererkennungsquote als die im physikalischen Test erzielte Quote. Entsprechend wissen wird, daß die tatsächliche Fehlererkennungsquote mindestens so hoch ist wie die im pessimistischen Modell erzielte Quote. Des weiteren werden im pessimistischen Modell Fehler erkannt, die für den Test durch das Testprotokoll entsprechend dem pessimistischen aber einfachen Modell nicht vorgesehen sind. Die verbleibenden relativ wenigen Fehler, deren Test nicht bekannt ist, können in einem realistischeren und aufwendigeren Modell simuliert werden, um zu bestimmen, ob das Testprotokoll sie tatsächlich testet. Das realistische Modell ist den wenigen Fehlern vorbehalten, für die ein realistischeres und aufwendigeres Modell erforderlich ist.
- Das Bool'sche Modell für die Puffer- und Vorladeschaltung 16 wird im Puffer und Vorlademodell 30 in Fig. 5 dargestellt. Ein Fehlereinfüger 32 wird zwischen den komplementären Baumausgang T0 und den komplementären Ausgangsknoten F0 gesetzt; ein weiterer Fehlereinfüger 32 wird in ähnlicher Weise zwischen den echten Ausgang T1 und den echten Ausgangsknoten F1 gesetzt. In einer fehlerfreien Schaltung läßt der Fehlereinfüger 32 jedes ankommende Signal einfach durchlaufen. Ein Fehler kann jedoch durch den Fehlereinfüger 32 selektiv in ein Netz eingefügt werden; der Fehlereinfüger 32 hält seinen Ausgang unabhängig vom Wert seines Eingangs auf dem fehlerhaften Wert. In der Simulation eines einzigen Fehlers wird nur ein Fehlereinfüger 32 gleichzeitig aktiviert. Beim eingefügten Fehler kann es sich entweder um einen Fehler "Hängenbleiben bei Null", einen Fehler "Hängenbleiben bei Eins" oder um einen langsam abfallenden Fehler handeln. Auf einen bestimmten Punkt soll an dieser Stelle eingegangen werden. Der Fehlereinfüger 32 kehrt kein fehlerfreies Signal um, wie dies auch beim CMOS-Inverter der Schalter 18 und 20 der Fall ist. Der fehlende Inverter wird jedoch durch die Auswahl der Darstellung des Werts des Masseknotens R. Die Massespannung wird durch 1 oder echt auf der Bool'schen Ebene dargestellt. Daher sind die Bool'schen Werte für die Baumausgaben T0 und T1 umgekehrt zu den schalterebenen werten.
- Die Modelldarstellung des Logikbaums 10 ist ein wesentlich schwierigeres Problem. Der Logikbaum kann jede beliebige Form einnehmen, solange er mit den geltenden Regeln für eine DCVS- Schaltung übereinstimmt. Die resultierenden Logikbäume weisen nicht nur eine allgemeine Konfiguration auf, sondern können auch relativ groß sein. Die Komplexität einer Bool'schen Darstellung einer allgemein gehaltenen Schaltung, bei der es sich nicht notwendigerweise um eine DCVS-Schaltung handeln muß, wächst sehr schnell mit der Anzahl der Schalter innerhalb dieser Schaltung. Diese Erfindung nutzt jedoch die Vorteile einiger einzigartiger Eigenschaften der DCVS-Schaltung, um die Ebene der Komplexität zu senken.
- Zwei Arten an physikalischen Fehlern innerhalb des Logikbaumes 10 werden modellhaft dargestellt.
- 1. Der erste modellhaft darzustellende Fehler ist ein Schalter 26 oder 28, der durch Hängenbleiben offen oder nicht-leitend ist. Befindet sich der fehlerhafte Schalter im Entladepfad zwischen dem Nasseknoten R und entweder dem komplementären oder echten Baumausgang T0 oder T1 für die Kombination aus gelieferten Hauptschaltnetzsignalen, die an den Baum 10 geleitet werden, dann tritt keine Entladung auf, und aufgrund des CMOS-Inverters sind sowohl der komplementäre als auch der echte Ausgangsknoten F0 und F1 auf logisch 0. Der Logikbaum 10 erzeugt die korrekten Werte an den Ausgangsknoten F0 und F1 für alle Hauptschaltnetzsignaleingänge, für die der fehlerhafte Schalter nicht im normalen Entladepfad 2 ist. Der zweite modellhaft darzustellende Fehler ist für einen Schalter 26 oder 28 im Logikbaum 10, der durch Hängenbleiben geschlossen ist. Betrachtet wird ein Eingangsmuster aus Hauptschaltnetzsignalen, das normalerweise dazu führt, daß der echte Baumausgangsknoten F1 logisch 1 (0) ist. Das bedeutet, daß dieses spezielle Eingangsmuster zu einem Entladepfad zwischen dem Masseknoten R und dem Baumausgang T1 (T0) führt. Der fehlerhafte durch Hängenbleiben geschlossene Schalter kann einen zweiten Entladepfad zum anderen Baumausgang T0 (T1) verursachen. Wenn es Entladepfade an beide Baumausgänge T0 und T1 gibt, dann sind beide Ausgangsknoten F0 und F1 auf logisch 1. Wenn das bestimmte Eingangsmuster keinen zweiten Entladepfad an die anderen Baumausgänge T0 (T1) erzeugt, so erzeugt das Logikmodul die richtigen funktionalen Ausgänge an den Ausgangsknoten F0 und F1 und zwar auch bei Vorhandensein dieses Fehlers.
- Im vorliegenden Modell werden keine anderen Fehlerarten berücksichtigt. Insbesondere wird von der Annahme ausgegangen, daß die gegenseitigen Verbindungen zwischen den Schaltern und zwischen den Modulen fehlerfrei sind, so daß der Eingang an einen Schalter gleichgesetzt werden kann mit dem Ausgang des Schalters, mit dem er verbunden ist. Die Fehler "durch Hängenbleiben offen" und "durch Hängenbleiben geschlossen" im Logikbaum werden mit ihren Gliedeingängen identifiziert, die auf einem Wert hängen. Aus Fig. 4 geht hervor, daß der n-Kanal- Schalter 26, der durch Hängenbleiben offen ist, zum Hauptschaltnetzsignaleingang G0 auf seinem Glied, das auf 0 hängt, äquivalent ist. In ähnlicher Weise gilt, daß der Schalter 26, der durch Hängenbleiben geschlossen ist, zum Hauptschaltnetzsignal G0, das auf 1 hängt, äquivalent ist. Deshalb wird, wie dies auch im Puffer- und Vorlademodell 30 der Fall ist, der Fehler in die gegenseitige Verbindungsleitung eingefügt. In diesem Fall wird der Fehler am Hauptschaltnetzsignaleingang zum fehlerhaften Schalter eingefügt. Solche Fehler nennt man 0-Fehler und 1- Fehler für "Hängenbleiben auf Null" bzw. "Hängenbleiben auf 1".
- Ein B-Fehler ist eine Verallgemeinerung, die einen 0-Fehler oder einen 1-Fehler bezeichnet, je nachdem, ob B=0 oder B=1 ist.
- Das Modell für Fehler innerhalb des Logikbaums basiert auf einer Reihe von mathematischen Theoremen. Diese mathematische Betrachtungsweise ist aufgrund der nahezu unendlichen Varietät an Logikbäumen sehr wahrscheinlich erforderlich. Die Erfinder haben die Beweise zu diesen Theoremen erbracht, jedoch werden diese Beweise hier nicht aufgeführt. Wo dies möglich ist, wird eine intuitive Rechtfertigung zur Gültigkeit des aufgeführten Theorems geliefert.
- Wenn eine DCVS-Schaltung nur B-Fehler für fixe B=0 oder B=1 aufweist, dann liegen die Signalwerte der Hauptschaltnetze in der fehlerhaften DCVS-Schaltung nahezu in Übereinstimmung mit den korrekten Werten. Nahezu Übereinstimmung bedeutet, daß die einzige Art eines fehlerhaften Wertes, der auf einem Hauptschaltnetzsignal auftauchen kann, B ist, wenn der korrekte Wert NICHT (B) ist. Jedes Hauptschaltnetzsignal, das B aufweisen muß, weist trotz des Fehlers B auf.
- Eine grundlegende Eigenschaft einer fehlerlosen DCVS-Schaltung wird beschrieben wie folgt: Zur Bestimmung der Signalwerte an den Ausgangsknoten F0 und F1 nach der Auswertungsphase muß der Zustand der Vorladung auf dem entsprechenden Baumausgang T0 oder T1 bestimmt werden. Besteht die Vorladung auch nach der Auswertungsphase noch oder wird sie durch einen leitenden Pfad zum Masseknoten R des Logikbaums 10 auf ein Nullsignal entladen. Beginnend am Masseknoten R und aufsteigend zu den Baumausgängen T0 und T1 (wobei die Aufwärtsbewegung Schritt hält mit der Aufwärtsbewegung in Fig. 3) wird ein leitender Pfad durch den Logikbaum 10 gekennzeichnet. Immer wenn der Quelleingang S eines Differentialpaares 24 als von einem leitenden Pfad vom Masseknoten R erreicht gekennzeichnet ist, wird einer der Drainausgänge D0 oder D1 als in einem leitenden Pfad vorhanden gekennzeichnet, abhängig von den Werten der Hauptschaltnetzsignale Gb und -1. Schließlich erreicht der leitende Pfad einen der Baumausgänge T0 oder T1. Dieser gekennzeichnete Baumausgang ist ein Teil eines leitenden Pfads zum Masseknoten R, so daß das Signal auf diesem gekennzeichneten Baumausgang T0 oder T1 entladen wird. Das Signal auf dem anderen oder nicht gekennzeichneten Baumausgang T0 oder T1 besitzt keinen leitenden Pfad und wird daher nicht entladen. Ein einziger Aufwärtsdurchlauf durch den Logikbaum 10 genügt zur Berechnung des Stadiums jedes Hauptschaltnetzsignals in der fehlerfreien DCVS-Schaltung. Das folgende Theorem weitet diese Beobachtung auf fehlerhafte Schaltungen aus.
- Wenn eine DCVS-Schaltung fehlerfrei ist oder nur 0-Fehler aufweist, kann das Ergebnis der Auswertungsphase jedes beliebigen Moduls in einem einzigen Durchlauf aufwärts durch den Logikbaum 10 des Moduls berechnet werden. Andererseits gilt, daß, wenn eine Schaltung lediglich 1-Fehler aufweist, das Ergebnis der Auswertungsphase jedes beliebigen Moduls in den drei Phasen aufwärts-abwärts-aufwärts berechnet werden kann. Diese Eigenschaft von DCVS-Schaltungen ist in anderen Netzwerkarten mit bidirektionalen Transistoren nicht vorhanden. Im allgemeinen steigt die Anzahl der erforderlichen Durchläufe ungefähr proportional zur Anzahl der Transistoren im Schaltnetzwerk. In großen Netzwerken ist daher eine große Anzahl an Durchläufen vorzusehen. Im Gegensatz dazu wurde beschrieben, daß DCVS-Schaltungen höchstens drei Durchläufe erfordern. Das Theorem zwei wurde unter Verwendung der folgenden fünf Lemmas bewiesen.
- Fi sei einer der Ausgangsknoten F0 oder F1 des Moduls, und Ti sei der entsprechende Logikbaumausgang T0 oder T1. Bei der Auswertung des Moduls wird der Wert von Fi auf 1 gesetzt, wenn Fi nicht an 0 hängt und wenn eine der folgenden Bedingungen zutrifft: (a) ein leitender Pfad zum Masseknoten R, zum Ausgangsknoten Ti im Logikbaum 10 ist vorhanden, (b) der Ausgangsknoten Fi hängt an 1, oder (c) der Ausgangsknoten Fi ist langsam abfallend und Bedingung (a) war für die vorhergehende Befeuerung wahr. In allen anderen Fällen wird der Wert des Ausgangsknotens Fi auf 0 gesetzt, wenn das Modul ausgewertet wird.
- Bezüglich der Auswertung eines beliebigen Moduls in einer fehlerfreien oder mit 0-Fehler versehenen DCVS- Schaltung gilt, daß, wenn ein leitender Pfad vom Masseknoten R zu einem der Logikbaumausgänge Ti läuft, es einen Pfad gibt, der nur nach oben läuft. Dieses Lemma läßt sich intuitiv begreifen. Soll ein leitender Pfad vorhanden sein, der nach unten und nach oben läuft, dann muß der leitende Pfad an einem der Drainausgänge D0 oder D1 in ein Differentialpaar hineinlaufen und dasselbe Differentialpaar 21 am anderen Drainausgang D1 oder D0 wieder verlassen. Daher müssen die Schalter 26 und 28 beide leitend sein. Wenn die Schaltung fehlerfrei ist, dann ist G0 zu G1 komplementär und nur ein einziger der beiden Schalter 26 und 28 ist leitend. Wenn nur 0-Fehler vorhanden sind, dann zeigt sich das darin, daß beide Schalter 26 nicht-leitend sind. Nur die Anwesenheit von 1-Fehlern gestattet die Rückkehr eines Pfads von unten nach oben.
- Betrachtet wird die Auswertung eines beliebigen Moduls in einer fehlerfreien oder mit 1-Fehlern versehenen DCVS- Schaltung. Von jedem internen Knoten im Logikbaum 10 aus gibt es einen Baumausgang Ti (entweder T0 oder T1), für den es einen leitenden Pfad vom internen Knoten zum Logikbaumausgang Ti gibt, so daß dieser leitende Pfad nur aufwärts verläuft.
- Betrachtet wird die Auswertung eines beliebigen Moduls in einer mit 1-Fehlern versehenen DCVS-Schaltung. Gibt es einen leitenden Pfad vom Masseknoten R zu einem der Baumausgänge T0 oder T1, dann verläuft dieser Pfad lediglich aufwärtsabwärts-aufwärts.
- Die Bedeutung von Lemma vier liegt darin, daß selbst in einer mit 1-Fehler versehenen Schaltung der fehlerhafte leitende Pfad durch einen Pfad aus drei unidirektionalen Unterpfaden ersetzt werden kann. Durch geeignete gegenseitige Verbindungen zwischen den Durchläufen können alle möglichen erforderlichen Kombinationen von Unterpfaden mit drei Durchläufen durch den Logikbaum 10 modellhaft dargestellt werden. Dabei spielt es keine Rolle, ob es zusätzliche parallele leitende Pfade mit einer größeren Anzahl an Knicken zwischen aufwärts und abwärts laufenden Unterpfaden gibt, da der leitende Pfad mit zwei Knicken und drei Unterpfaden am Baumausgang den Status liefert.
- Betrachtet wird die Auswertung eines beliebigen Moduls in einer mit 1-Fehlern versehenen DCVS-Schaltung. Wenn es einen leitenden Pfad vom Masseknoten R zu einem der Baumausgänge Ti gibt, dann verläuft dieser Pfad lediglich aufwärts-abwärtsaufwärts. Darüberhinaus kann der auf-ab-auf-Pfad so gewählt werden, daß sich das letzte auf-Unterpfadende an einem Baumausgang befindet.
- Da Lemma 3 sicherstellt, daß von jedem internen Knoten innerhalb eines Logikbaums zu einem Baumausgang ein leitender Pfad ist, kann die erste Wende im auf-ab-auf-leitenden Pfad nach oben zu diesem Baumausgang bewegt werden.
- Auf der Grundlage der vorhergehenden Theoreme wird das folgende Modell, das in Fig. 6 abgebildet ist, dargestellt. Die Schaltebenendarstellung des Differentialpaares wird durch die drei Bool'schen Schaltungen 40, 42 und 44 ersetzt, je nachdem, ob es der erste, zweite oder dritte Durchlauf im Bool'schen Baum ist. Durchlauf 1 ist ein Aufwärtsdurchlauf und die Gliederschalter und 28 werden durch die entsprechenden UND-Glieder 46 und 48 ersetzt. Die gegenseitigen Verbindungen zwischen den Bool'schen Schaltungen des ersten Durchlaufs sind dieselben wie die gegenseitigen Verbindungen zwischen den Schaltebenen-Differentialpaaren 24, ob die gegenseitigen Verbindungen zwischen den Differentialpaaren desselben Logikbaums 10 oder ob die gegenseitigen Verbindungen die Hauptschaltnetzsignale der Primäreingänge oder die Zwischenbaumverbindungen der Baumausgänge T0 und T1 sind. Das heißt, wird das Hauptschaltnetzsignal G0 oder G1 von einem Ausgangsknoten F0 oder F1 eines anderen Logikbaums 10 in der Schaltebenen-DCVS-Schaltung angeschlossen, dann wird in der Bool'schen Darstellung das Hauptschaltnetzsignal G0 oder G1 durch denselben Ausgang F0 und F1 getrieben wie der andere Logikbaum. Der erste Durchlauf sorgt für die Auswertung des leitenden Pfads vom Masseknoten R zu den Baumausgängen T0 und T1.
- Der zweite Durchlauf verläuft nach unten und die Schaltebenen- Schaltung 24 wird durch das Bool'sche Differentialpaar 42 für den zweiten Durchlauf ersetzt. Weil der Pfad nach unten verläuft, sind die Drains D0#2 und D1#2 Eingänge zu den UND- Gliedern 50 und 52, in Übereinstimmung mit den Schaltern 26 und 28. Die Ausgänge der UND-Glieder 50 und 52 sind in einem ODER- Glied 54 kombiniert, dessen Ausgang S#2 mit dem Quelleingang S des Schaltebenen-Differentialpaares 24 übereinstimmt.
- Auch hier sind die gegenseitigen Verbindungen der Drains D0#2 und D1#2 und der Quelle S#2 dieselben gegenseitigen Verbindungen wie für die Drains D0 und D1 und die Quelle S des Schaltebenen- Differentialpaares 24. Zusätzlich jedoch wird der Ausgang des ODER-Glieds 54 separat in die entsprechende Bool'sche Schaltung 44 des dritten Durchlaufs geleitet. Diese zusätzliche Verbindung wird benötigt, weil der abwärts-Unterpfad des auf-ab-auf-Pfads sich nicht notwendigerweise zum Masseknoten R erstreckt.
- Die Bool'sche Schaltung 44 für den dritten Durchlauf ähnelt der Bool'schen Darstellung 40 des ersten Durchlaufs. Die Schalter 26 und 28 werden durch die UND-Glieder 56 und 58 ersetzt. Der Quelleingang S#3 ist jedoch in einem ODER-Glied 60 mit dem Ausgang des ODER-Glieds 54 der entsprechenden Bool'schen Schaltung 42 des zweiten Durchlaufs kombiniert. Wie bereits an vorhergehender Stelle beschrieben wurde, ist diese zusätzliche Verbindung erforderlich, um an einem internen Knoten des Logikbaums 10 einen abwärts-aufwärts-Übergang zu ermöglichen.
- Die gegenseitigen Verbindungen zwischen den drei Durchläufen ist in Fig. 7 dargestellt. Es wird nur ein einziger Schalter 26 oder 28 modellhaft dargestellt. Ähnliche UND- und ODER-Glieder sind für jeden Schalter 26 und 28 im Logikbaum 10 vorhanden. Es gibt drei Bool'sche Bäume 70, 72 und 74 für den ersten, zweiten bzw. dritten Durchlauf. Die Eingänge an den Masseknoten R#1 des Bool'schen Baums 70 des ersten Durchlaufs sind an die entsprechenden Bool'schen Ausgänge T0#2 und T1#2 des zweiten Ausgangs, die hier als logische Eingänge verwendet werden, angeschlossen. Der Masseknoten R#2 des zweiten Durchlaufs ist ein Ausgang des Bool'schen Baums 72 des zweiten Durchlaufs und wird als einer der logischen Eingänge an das ODER-Glied 60 der unteren Ebene des Differentialpaares 44 des Bool'schen Baums 74 des dritten Durchlaufs verwendet. Der andere Eingang an dieses ODER-Glied 60 ist der Bool'sche Masseknoten R#3 und wird ebenso wie R#1 auf 0 eingestellt. Außerdem haben die ODER-Glieder 54 und 60 für jeden Schalter 26 und 28 des modellhaft dargestellten Schaltebenen- Logikbaums 10 separate Verbindungen zwischen dem Bool'schen Baum 72 des zweiten Durchlaufs und dem Bool'schen Baum 74 des dritten Durchlaufs. Die drei Ausgänge T0#3 und T1#3 werden zusammen mit ihren zwei Fehlereinfügern 32 an die Bool'sche Puffer- und Vorladeschaltung 30 angeschlossen.
- Es wird darauf hingewiesen, daß das vollständige Modell mit drei Durchläufen selbst dann erforderlich ist, wenn der Fehler nicht im Logikbaum ist, wenn ein Hauptschaltnetzsignaleingang ein 1- Fehler ist.
- Wenn der modellhaft dargestellte Schalter 26 oder 28 durch ein Hauptschaltnetzsignal Gi einem Glied zugeführt wird, dann wird zwischen dem Hauptschaltnetzsignal Gi und den Eingängen an die entsprechenden UND-Glieder des Bool'schen Baums 70, 72 und 74 aller drei Durchläufe ein Fehlereinfüger 76 gesetzt. Der Fehlereinfüger 76 kann einen "Hängenbleiben bei Null"-Fehler oder einen "Hängenbleiben bei Eins"-Fehler einfügen. Wenn das Hauptschaltnetzsignal Gi mehrere Schalter 26 und 28 in verschiedenen Differentialpaaren steuert, dann werden zusätzliche Fehlereinfüger 78 verwendet, um die Fehler an diesen zusätzlichen Schaltern zu simulieren. Der Fehler ist, obwohl er am Hauptschaltnetzsignal Gi eingefügt wurde, nicht ein Fehler des Hauptschaltnetzsignals, sondern ein Fehler des gesteuerten Schalters.
- Das in Fig. 6 dargestellte Modell bezieht sich auf einen einzelnen Schaltebenen-Logikbaum 10 und seine dazugehörige Puffer- und Vorladeschaltung 12. Wenn es, wie dies in Fig. 1 dargestellt ist, mehrere Logikbäume 10 gibt, dann wird jeder Logikbaum 10 durch eine zugehörige Struktur aus Fig. 6 modellhaft dargestellt. Die Verbindungen aus Fig. 1 werden zwischen den Bool'schen Ausgangsknoten F0 und F1 und den Hauptschaltnetzsignalen Gi aus Fig. 6 dupliziert.
- Die Verbindungen innerhalb der Bool'schen Logikbäume müssen die Bidirektionalität der gepunkteten Verbindungen berücksichtigen. Die Verteilung wird durch eine Kombination aus ODER-Gliedern und Ausgangsfächern (ein Ausgang, der mehrere Eingänge treibt) modellhaft dargestellt. Beispiele werden an späterer Stelle aufgeführt.
- Eine nähere Betrachtung von Fig. 6 zeigt, warum sich die Polarität der Signale auf den Bool'schen Baumausgängen von den Polaritäten der Signale auf den Schaltebenen-Baumausgängen unterscheidet. Erstens wird davon ausgegangen, daß die Polaritäten der Ausgangsknoten F0 und F1 in der Schaltebenendarstellung dieselben sind wie in der Bool'schen Darstellung. Das heißt, WAHR = 1 und FALSCH = 0. Sowohl auf der Schaltebene als auch auf der Bool'schen Ebene schließt eine 1 auf dem Hauptschaltnetzsignal den n-Kanal-Schalter oder das UND-Glied, das sie steuert. Der Masseknoten R auf der Schaltebene ist jedoch eine 0, während die Masseknoten R#1 und R#3 auf der Bool'schen Ebene auf 1 oder wahr gesetzt werden. Als Folge leiten geschlossene Schalter auf der Schaltebene eine 0 zum entsprechenden Baumausgang T0 oder T1, während ein aktiviertes UND-Glied auf der Bool'schen Ebene eine 1 zum entsprechenden Baumausgang T0#3 oder T1#3 leitet. Dasselbe gilt für die Polarität der Signale auf den Bool'schen Baumausgängen T0#1 und T1#1 des Bool'schen Baums 70 des ersten Durchlaufs. Daher wird im Puffer- und Vorlademodell 30 kein Bool'scher Inverter benötigt. Es wird außerdem darauf hingewiesen, daß das gesamte Bool'sche Modell ebenso in komplementärer Bool'scher Logik unter Verwendung der Glieder NAND und NOR implementiert werden könnte.
- Das obige Modell wurde auf den Schaltebenen-Logikbaum 10 von Fig. 3 angewandt; das resultierende Bool'sche Modell wird in Fig. 7 dargestellt. Es ist nur ein einziger Fehlereinfüger 76 zum Einfügen eines Fehlers auf dem Hauptschaltnetzsignal G0&sub2; dargestellt. Es wird darauf hingewiesen, daß jedes Hauptschaltnetzsignal einen ähnlichen Fehlereinfüger 76 hat, obwohl im Einzelfehlermodell nur ein Fehlereinfüger eingeschaltet ist. In dem in Fig. 8 dargestellten Modell werden ODER-Glieder 80 für die Verteilung oder für den Ausgangsfächer (mehrere Ausgänge, die einen Eingang treiben) in die Aufwärtsrichtung verwendet, während die ODER-Glieder 54 für die Verteilung oder für den Ausgangsfächer in Abwärtsrichtung verwendet werden. Wenn der Fehlereinfüger 76 einen 0-Fehler einfügt, sind der zweite und der dritte Durchlauf nicht nötig, so daß das Puffer- und Vorlademodell 30 direkt an die Bool'schen Baumausgänge T0#1 und T1#1 des ersten Durchlaufs angeschlossen werden kann.
- Es ist zu beachten, daß das Theorem Eins vorsieht, daß ein 0- Fehler an einem Eingang zu einem Logikbaum nicht in einem 1- Fehler am Logikbaumausgang resultieren kann. Folglich sind Hauptschaltnetzsignale in einer Schaltung mit 0-Fehler niemals 1, da hierfür das Modell mit drei Durchläufen erforderlich wäre. In ähnlicher Weise gilt, daß, wenn durch den Fehlereinfüger 32 im Puffer- und Vorlademodell 30 ein 0-Fehler eingefügt wird, nur der Bool'sche Logikbaum 70 mit einem Durchlauf benötigt wird. Wenn der Fehlereinfüger 32 jedoch einen 1-Fehler einfügt, dann erhalten alle Eingänge auf anderen Logikbäumen, die an diesen Fehlereinfüger 32 angeschlossen sind, einen 1-Fehler. Folglich ist das gesamte Modell mit drei Durchläufen erforderlich.
- Wie nur unschwer zu erkennen ist, läßt sich das in Fig. 8 dargestellte Modell vereinfachen, da mehrere der UND- und ODER- Glieder einen fixen Eingang haben, nämlich eine logische 1. Diese Glieder werden jedoch beibehalten, um die logische Struktur des Modells zu veranschaulichen. Das Bool'sche Modell wird als Anschlußdiagramm zwischen mehreren UND- und ODER- Gliedern dargestellt. Das Modell könnte mit physikalischen Logikgliedern getestet werden. Es ist jedoch wahrscheinlicher, daß die Simulation auf einem Computer unter Verwendung der Bool'schen Arithmetik durchgeführt würde. Die Erfindung und ihre Ansprüche lassen sich auf die Computersimulation ausweiten. Für eine Computer-Simulation sind die dargestellten Diagramme als grafische Darstellung der Bool'schen Berechnung gedacht. Die UND- und ODER-Glieder stellen die UND- und ODER-Operationen dar; die gegenseitigen Verbindungen geben Aufschluß darüber, welche berechneten Ausgänge als Eingänge für weitere Bool'sche Berechnungen dienen. In der Bool'schen Arithmetik bedeutet 0 = FALSCH und 1 = WAHR. Ein Beispiel eines Computerprogramms zur Fehlersimulation auf der Bool'schen Ebene wird von E. Ulrich et al in einem Fachartikel mit folgendem Titel beschrieben: "High Speed Fault Simulation With Vectors and Scalars", erschienen in "17th Design Automation Conference Proceedings", Mineapolis, Minnesota, 23., 24. und 25. Juni 1980 (ACM Bestellnummer 477800), Seiten 374 bis 380.
Claims (6)
1. Verfahren zum Umwandeln einer Schaltebenendarstellung
(Fig. 3) einer MOS-Schaltung in eine Bool'sche Darstellung
(Fig. 8) der Schaltung, wobei die Schaltebenendarstellung
einen oder mehr logische Bäume (10) enthält, jeder Baum ein
oder mehrere Differentialpaare (24) aufweist, jedes
Differentialpaar aus einem ersten Schalter (26) und einem zweiten
Schalter (28) besteht, jeder erste Schalter einen ersten
Schalteingang (G0) und einen ersten Schaltausgang (D0) und
jeder zweite Schalter einen zweiten Schaltereingang (G1) und
einen zweiten Schaltausgang (D1) besitzt, der erste und der
zweite Schalteingang eines Differentialpaares mit einem
gemeinsamen Schaltpunkt (S) verbunden sind, jeder gemeinsame
Schaltpunkt mit einem Schaltausgang zumindest eines anderen
Differentialpaares oder mit einem Schaltpotentialreferenzpunkt
(R) verbunden ist, jeder dieser Schaltausgänge entweder mit
einem gemeinsamen Schaltpunkt eines anderen Differentialpaares
oder mit einem von zwei Schaltbaumausgängen (T0, T1), jeder
Schaltbaumausgang einen Eingang für eine invertierende
Ausgangsschaltung (11) darstellt, jeder erste und jeder zweite
Schalter jedes Differantialpaares durch ein erstes bzw.
zweites Hauptschaltnetz (G0i, G1i) gesteuert wird,
entsprechend den ersten (G0) bzw. zweiten (G1) Schalteingängen,
wobei ein Hauptschaltnetz durch Eingänge an logische Bäume
(10) definiert ist, welche entweder Komplementärversionen von
Primäreingängen (PI0i, PI1i) oder Komplementärversionen von
Ausgängen (F0i, F1i) eines anderen logischen Baumes (10)
verwenden, gekennzeichnet durch die folgenden Schritte:
Darstellen jedes Differentialpaares (24) durch einen ersten
Bool'schen Block (40, Fig. 6) mit einem ersten UND-Glied (46)
und einem zweiten UND-Glied (48), wobei erste Eingänge des
ersten und zweiten UND-Gliedes zusammen mit einem gemeinsamen
Bool'schen Punkt (S#1) verbunden sind und zweite Eingänge (G0,
G1) des ersten und zweiten UND-Gliedes (40) mit ersten bzw.
zweiten Eingängen, genannt Bool'sche Hauptschaltnetze (G0, G1)
verbunden sind,
Verbinden aller die Differentialpaare repräsentierender
Bool'schen Blöcke untereinander in gleicher Weise wie die
Verbindungen der Differentialpaare in dem logischen Baum der
Schaltebenendarstellung, wobei:
eine Verbindung zu einem gemeinsamen Schaltpunkt durch eine
Verbindung zu einem gemeinsamen Bool'schen Punkt (S#) ersetzt
wird,
eine Verbindung zu einem ersten oder einem zweiten
Hauptschaltnetz (G0, G1) durch eine Verbindung zu einem ersten
bzw. zweiten Bool'schen Hauptnetz (G0i, G1i) ersetzt wird,
eine Verbindung zu einem ersten oder zweiten Schaltausgang
(D0, D1) durch eine Verbindung zu einem Ausgang (D0#1, D1#1)
eines ersten (46) bzw. zweiten (48) UND-Gliedes ersetzt wird,
und
eine Verbindung zwischen Ausgängen einer Mehrzahl von
Schaltern und einem gemeinsamen Schaltpunkt oder einem
Schalterbaumausgang ersetzt wird durch Verbindungen von
Ausgängen einer Mehrzahl von ersten (46) und zweiten (48),
diese Mehrzahl von Schaltern repräsentierender UND-Gliedern
mit Eingängen eines ersten verteilenden ODER-Gliedes (80,
Fig. 8) und durch eine Verbindung von diesem ersten
verteilenden ODER-Glied zu einem gemeinsamen Bool'schen Punkt,
welcher den gemeinsamen Schaltpunkt oder Schalterbaumausgang
repräsentiert,
Darstellen jedes Differentialpaares durch einen zweiten
Bool'schen Block (42, Fig. 6) und eine dritten Bool'schen
Block (44, Fig. 6), wobei der zweite Bool'sche Block (42) ein
drittes UND-Glied (50) und ein viertes (52) UND-Glied besitzt,
die Ausgänge des dritten und vierten ODER-Glied (54)
darstellen, der dritte Bool'sche Block ein fünftes UND-Glied
(56) und ein sechstes UND-Glied (58) besitzt, erste Eingänge
des dritten (50) und fünften (56) UND-Gliedes mit dem ersten
Bool'schen Hauptnetz (G0) verbunden sind, erste Eingänge des
vierten (52) und sechsten (58) UND-Gliedes mit dem zweiten
Bool'schen Hauptnetz (GI) verbunden sind, zweite Eingänge des
fünften und sechsten UND-Gliedes mit dem Ausgang eines zweiten
ODER-Gliedes (60) verbunden sind und ein erster Eingang des
zweiten ODER-Gliedes (60) mit einem Ausgang des ersten ODER-
Gliedes (54) verbunden ist,
Verbinden aller zweiten Differentialpaare repräsentierender
Bool'scher Blöcke untereinander in gleicher Weise wie die
Verbindungen der Differentialpaare in dem logischen Baum der
Schaltebenendarstellung, wobei:
eine Verbindung zu dem gemeinsamen Schaltpunkt (S) durch eine
Verbindung zu dem Ausgang (S#2) des ersten ODER-Gliedes (54)
ersetzt wird, und
eine Verbindung zu dem ersten oder zweiten Hauptschaltnetz
(G0, G1) durch eine Verbindung zu einem zweiten Eingang des
dritten bzw. vierten UND-Gliedes ersetzt wird,
- wobei das Verfahren weiters beinhaltet, daß alle dritten,
Differentialpaare repräsentierenden Bool'schen Blöcke
untereinander, in gleicher Weise wie die Verbindungen der
Differentialpaare in dem logischen Baum der
Schaltebenendarstellung verbunden werden, wobei;
eine Verbindung zu dem gemeinsamen Schaltpunkt durch eine
Verbindung zu einem zweiten Eingang des zweiten ODER-Gliedes
(60) ersetzt wird,
eine Verbindung zu dem ersten oder zweiten Hauptschaltnetz
(G0, G1) durch eine Verbindung zu dem ersten bzw. zweiten
Bool'schen Hauptnetz ersetzt wird,
eine Verbindung zu dem ersten oder zweiten Schaltausgang
ersetzt wird durch eine Verbindung zu einem Ausgang eines
fünften (56) oder sechsten (58), den ersten (26) oder zweiten
(28) Schalter repräsentierenden UND-Gliedes,
eine Verbindung zwischen Ausgängen einer Mehrzahl von
Schaltern und einem gemeinsamen Schaltpunkt ersetzt wird durch
Verbindungen von Ausgängen einer Mehrzahl von fünften (56)
oder sechsten (58), die Mehrzahl von Schaltern
repräsentierenden UND-Gliedern zu Eingängen eines zweiten
verteilenden ODER-Gliedes (80) und durch eine Verbindung von
einem Ausgang des zweiten verteilenden ODER-Gliedes zu einem
zweiten Eingang des zweiten verteilenden ODER-Gliedes (80),
und
eine Verbindung zwischen Ausgängen einer Mehrzahl von
Schaltern und einem Schaltbaum ersetzt wird durch Verbindungen
von Ausgängen einer Mehrzahl von fünften (56) und sechsten
(58), die Mehrzahl von Schaltern repräsentierender UND-Glieder
zu Eingängen des zweiten verteilenden ODER-Gliedes (60) und
durch eine Verbindung von einem Ausgang des zweiten
verteilenden ODER-Gliedes zu dem Schaltbaumausgang
und das Verfahren weiters aufweist;
Verbinden der Ausgängen der ersten (46) und zweiten (48) UND-
Glieder oder der ersten verteilenden ODER-Glieder, welche die
zwei Baumausgänge des ersten Bool'schen Blocks (40)
repräsentieren, mit zweiten Eingängen der dritten (50) und vierten
(52) UND-Glieder des zweiten Bool'schen Blocks (42).
2. Verfahren zur Fehlersimulation in einer
Schaltebenendarstellung einer MOS-Schaltung unter Verwendung einer durch
eine Umwandlung nach Anspruch 1 erhaltenen Bool'schen
Darstellung dieser Schaltung, welches die folgenden Schritte
aufweist:
Simulieren eines fehlerhaften, durch Hängenbleiben
geschlossenen ersten Schalters dadurch, daß die Werte des
zweiten Einganges des ersten UND-Gliedes und des ersten
Einganges der dritten und fünften UND-Glieder, welche den
fehlerhaften ersten Schalter repräsentieren, auf einem Wert
"WAHR" gehalten werden, und
Simulieren eines fehlerhaften, durch Hängenbleiben
geschlossenen zweiten Schalters dadurch, daß die Werte des zweiten
Einganges des zweiten UND-Gliedes und der ersten Eingänge der
vierten und sechsten UND-Glieder, welche den fehlerhaften
zweiten Schalter repräsentieren, auf einem Wert "WAHR"
gehalten werden.
3. Verfahren nach Anspruch 2, welches ferner enthält:
Simulieren, daß ein Ausgang des mit dem Hauptschaltnetz
verbundenen Schaltbaumes an einem hohen Wert hängengeblieben
ist, dadurch, daß der Ausgang eines fünften oder eines
sechsten UND-Gliedes oder eines dem mit der Ausgangsschaltung
verbundenen Schaltbaumausgang entsprechenden zweiten
verteilenden ODER-Gliedes auf einem Wert "WAHR" gehalten wird.
4. Verfahren nach Anspruch 3, welches weiters den Schritt
enthält:
Simulieren, daß ein Ausgang des Schaltbaumausganges einen
langsamen Schaltzustandsübergang aufweist, dadurch, daß ein
Ausgang des entsprechenden Gliedes während einer zweiten
Periode auf einem Wert "WAHR" gehalten wird, wenn sich dieser
Ausgang des entsprechenden Gliedes während einer
vorhergehenden ersten Periode auf "WAHR" befand.
5. Verfahren nach einem der Ansprüche 2 bis 4, bei welchem
weiters ein fehlerhafter, durch Hängenbleiben offener erster
Schalter dadurch simuliert wird, daß der Wert des zweiten
Einganges des ersten UND-Gliedes, welcher den fehlerhaften
ersten Schalter repräsentiert, auf einem Wert "FALSCH"
gehalten wird, und ein schadhaftes, durch Hängenbleiben
offener zweiter Schalter dadurch simuliert wird, daß der Wert
des zweiten Einganges des zweiten UND-Gliedes, welches den
fehlerhaften zweiten Schalter repräsentiert, auf einem Wert
"FALSCH" gehalten wird.
6. Verfahren nach einem der Ansprüche 2 bis 4, bei welchem
weiters simuliert wird, daß ein Ausgang des mit dem Hauptnetz
verbundene,n Schaltbaumausganges auf einem niedrigen Wert
hängengeblieben ist, indem der Wert des Ausgangs eines ersten
(26) oder eines zweiten (28) UND-Gliedes oder eines ersten, an
den Schaltbaumausgang eingeschlossenen, verteilenden ODER-
Gliedes (80), entsprechend der Verbindung mit den
Ausgangsschaltung auf einem Wert "FALSCH" gehalten wird.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/709,612 US4727313A (en) | 1985-03-08 | 1985-03-08 | Fault simulation for differential cascode voltage switches |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3688437D1 DE3688437D1 (de) | 1993-06-24 |
DE3688437T2 true DE3688437T2 (de) | 1993-12-23 |
Family
ID=24850590
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE86102276T Expired - Fee Related DE3688437T2 (de) | 1985-03-08 | 1986-02-21 | Verfahren zur Umwandlung einer MOS-Schaltung von Schaltebenedarstellung in eine boolesche Darstellung und Verfahren zur Fehlersimulation in einer auf der Schaltebene dargestellten MOS-Schaltung durch das Verwenden seiner booleschen Darstellung. |
Country Status (5)
Country | Link |
---|---|
US (1) | US4727313A (de) |
EP (1) | EP0193811B1 (de) |
JP (1) | JPH087253B2 (de) |
CA (1) | CA1244088A (de) |
DE (1) | DE3688437T2 (de) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4935646A (en) * | 1989-02-22 | 1990-06-19 | International Business Machines Corporation | Fully static CMOS cascode voltage switch logic systems |
DE69225527T2 (de) * | 1991-04-11 | 1998-09-10 | Hewlett Packard Co | Verfahren und System zur automatischen Bestimmung der logischen Funktion einer Schaltung |
US5260952A (en) * | 1991-04-30 | 1993-11-09 | Ibm Corporation | Fault tolerant logic system |
US5299136A (en) * | 1991-06-05 | 1994-03-29 | International Business Machines Corp. | Fully testable DCVS circuits with single-track global wiring |
US5815687A (en) * | 1996-09-19 | 1998-09-29 | International Business Machines Corporation | Apparatus and method for simulating domino logic circuits using a special machine cycle to validate pre-charge |
DE19710463C2 (de) * | 1997-03-13 | 1999-02-25 | Siemens Ag | Verfahren zur automatischen Differentiation auf einem Rechner insbesondere zur Simulation elektronischer Schaltungen |
US6012157A (en) * | 1997-12-03 | 2000-01-04 | Lsi Logic Corporation | System for verifying the effectiveness of a RAM BIST controller's ability to detect faults in a RAM memory using states indicating by fault severity information |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3715573A (en) * | 1971-04-14 | 1973-02-06 | Ibm | Failure activity determination technique in fault simulation |
US4204633A (en) * | 1978-11-20 | 1980-05-27 | International Business Machines Corporation | Logic chip test system with path oriented decision making test pattern generator |
DE3221819A1 (de) * | 1982-06-09 | 1984-02-23 | Siemens AG, 1000 Berlin und 8000 München | Vorrichtung zur simulation eines schaltwerks mit hilfe eines rechners |
-
1985
- 1985-03-08 US US06/709,612 patent/US4727313A/en not_active Expired - Fee Related
- 1985-12-27 JP JP60293413A patent/JPH087253B2/ja not_active Expired - Lifetime
-
1986
- 1986-01-17 CA CA000499773A patent/CA1244088A/en not_active Expired
- 1986-02-21 DE DE86102276T patent/DE3688437T2/de not_active Expired - Fee Related
- 1986-02-21 EP EP86102276A patent/EP0193811B1/de not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH087253B2 (ja) | 1996-01-29 |
CA1244088A (en) | 1988-11-01 |
DE3688437D1 (de) | 1993-06-24 |
EP0193811A2 (de) | 1986-09-10 |
EP0193811B1 (de) | 1993-05-19 |
EP0193811A3 (en) | 1989-04-26 |
US4727313A (en) | 1988-02-23 |
JPS61207976A (ja) | 1986-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3689228T2 (de) | Verfahren zur Modellierung und zur Fehlersimulation von komplementären Metalloxidhalbleiterschaltungen. | |
DE69212673T2 (de) | Prüfmustererzeugungseinrichtung | |
DE102007042752B4 (de) | Verfahren zur Analyse der Zuverlässigkeit technischer Anlagen mit Hilfe von physikalischen Modellen | |
DE3689538T2 (de) | Integrierte Schaltung und Optimierungsverfahren dafür. | |
DE69225527T2 (de) | Verfahren und System zur automatischen Bestimmung der logischen Funktion einer Schaltung | |
DE3338333A1 (de) | Logiksimulatorgeraet zur gueltigkeitspruefung einer logikstruktur | |
DE19510902A1 (de) | Emulation eines Mehrtor-Speichers unter Verwendung von Markierregistern | |
DE3702408C2 (de) | ||
DE10129329A1 (de) | Fehlersimulationsverfahren und Fehlersimulator für einen Halbleiter-IC | |
DE19815534A1 (de) | Verfahren und System zum Entwurf und zur Simulation digitaler Rechner-Hardware | |
EP0248268B1 (de) | Verfahren zur Simulation eines Verzögerungsfehlers in einer Logikschaltung und Anordnungen zur Durchführung des Verfahrens | |
DE10296464T5 (de) | Verfahren und Gerät zur Validierung des Entwurfes einer komplexen integrierten Schaltungen | |
WO1992018944A1 (de) | Verfahren zur verifikation datenverarbeitender systeme | |
EP0563597B1 (de) | Asic-Prototyper | |
DE3688437T2 (de) | Verfahren zur Umwandlung einer MOS-Schaltung von Schaltebenedarstellung in eine boolesche Darstellung und Verfahren zur Fehlersimulation in einer auf der Schaltebene dargestellten MOS-Schaltung durch das Verwenden seiner booleschen Darstellung. | |
DE10000451A1 (de) | Taktsignalanalyseeinrichtung und Taktsignalanalyseverfahren | |
DE3854636T2 (de) | Automatischer Prüfprozess für logische Geräte. | |
EP0203535B1 (de) | Verfahren zur Simulation eines Fehlers in einer logischen Schaltung und Schaltungsanordnung zur Durchführung desselben | |
DE10133375A1 (de) | Verfahren und Vorrichtung zum automatischen Erstellen eines Bayes-Netzwerks | |
DE19530669A1 (de) | Verfahren zum automatischen Auswählen eines taktsteuernden Signalpfads in umprogrammierbaren Systemen zur Hardware-Emulation | |
WO2020207519A1 (de) | Verfahren zur modellierung eines systems mittels eines quantencomputers | |
WO1999017176A1 (de) | Diagnosemodul zum erstellen einer diagnose für elektrisch ansteuerbare systeme und diagnoseeinrichtung zum erstellen einer gesamtsystemdiagnose | |
EP1364286B1 (de) | Verfahren und anordnung zur ermittlung einer gesamtfehlerbeschreibung zumindest eines teils eines technischen systems, computer programm-element und computerlesbares speichermedium | |
DE19914819A1 (de) | Entwicklungswerkzeug | |
DE3422287A1 (de) | Pruefanordnung fuer digitalschaltungen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |