DE4031136A1 - Fehlersimulationsverfahren - Google Patents
FehlersimulationsverfahrenInfo
- Publication number
- DE4031136A1 DE4031136A1 DE4031136A DE4031136A DE4031136A1 DE 4031136 A1 DE4031136 A1 DE 4031136A1 DE 4031136 A DE4031136 A DE 4031136A DE 4031136 A DE4031136 A DE 4031136A DE 4031136 A1 DE4031136 A1 DE 4031136A1
- Authority
- DE
- Germany
- Prior art keywords
- logic
- gate
- error
- data
- value
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
- G01R31/318342—Generation of test inputs, e.g. test vectors, patterns or sequences by preliminary fault modelling, e.g. analysis, simulation
- G01R31/318357—Simulation
-
- 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)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Quality & Reliability (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Tests Of Electronic Circuits (AREA)
Description
Die vorliegende Erfindung betrifft ein Fehlersimulationsverfahren und betrifft
insbesondere ein Fehlersimulationsverfahren, das ausgelegt ist, eine Fehlersimulation
einer Logikschaltung bei hoher Geschwindigkeit durchzuführen.
Die Logiksimulation ist als eine Technik bekannt, bei der der Betrieb einer
Logikschaltung auf einem Computer realisiert und der Betrieb der Logikschaltung
analysiert wird. Es gibt eine Technik zum Durchführen der Logiksimulation mit
hoher Geschwindigkeit, bei der ein Vektorprozessor verwendet wird, der den
Betrieb bzw. die Verarbeitung einer großen Anzahl von Vektordaten implementieren
kann. Diese Technik implementiert eine Integration von Gattern, um die
Anzahl des Ladens und Speicherns zu reduzieren, um den Vektorbetrieb mit hoher
Geschwindigkeit durchzuführen. Beim Durchführen des Vektorbetriebs durch den
Vektorprozessor ist vorzuziehen, daß eine Record-Länge von Daten als ein Objekt
für den Betrieb eine feste Länge hat, so daß eine Logikmodifikation implementiert
wird, um so die Anzahl von Eingangs- und Ausgangspins für jedes der Logikgatter
zum Durchführen der Logiksimulation festzulegen. Die Logikschaltung, die das
Objekt der Logiksimulation sein soll, wird logisch in eine Logikschaltungskonfiguration
modifiziert, und zwar durch das Logikgatter, bei dem die Anzahl der
Eingangs- und Ausgangspins konstant ist, und die Logikgatterdaten zum Beschreiben
des Logikgatters werden zu Daten festgelegter Länge gemacht, wodurch die
Länge von allen durch den Vektorprozessor zu bearbeitenden Daten auf eine
festgelegte Länge bestimmt wird.
Das Logiksimulationsverfahren der Logikschaltung dieser Art ist z. B. in der
japanischen, nicht geprüften Patentveröffentlichung von Kokai Nr. 2 21 745/1987
mit dem Titel "Method for Simulating Logic Circuit" offenbart. Dieses Logikschaltungs-Simulationsverfahren
läßt einen Logiksimulator zum Simulieren eines
Logikbetriebs der Logikschaltung die Simulation gemäß drei Schritten ausführen,
d. h. einen ersten Schritt, bei dem die Anzahl der Eingabesignale (die Anzahl von
Eingangs- und Ausgangspins) eines Gatters verarbeitet werden, das eine zu
simulierende Simulationsschaltung bildet, um mit einer vorbestimmten Basisgatterform
übereinzustimmen; der zweite Schritt, bei dem ein Ausgangssignalwert des
Gatters in Folge von einem Gatter nach dem anderen fortgepflanzt wird und alle
diese Ausbreitungsgatter in der Logikschaltung in Ziel-Einheiten der Ausbreitungsgatter
unterteilt werden; und der dritte Schritt, bei dem eine Batch-Berechnung
von Ausgabesignalwerten der gesamten unterteilten Gatter stattfindet.
Als Fehlersimulationsverfahren ist eine Technik bekannt, bei der eine Fehlersimulation
durchgeführt wird, indem ein Fehlerwert in einen Fehlerannahmeabschnitt
einer Logikschaltung eingeführt wird, die Objekt für die Fehlersimulation ist, und
eine Simulation auf eine ähnliche Weise wie bei der Logiksimulation durchgeführt
wird. Da bei diesen Fehlersimulationsverfahren die Schwierigkeit auftritt, daß sich
ein Fehler ausbreitet bzw. fortpflanzt, wenn er sich durch die Logikschaltung
erstreckt bzw. durch diese läuft, so daß eine Verfolgungsverarbeitung eines Pfades
der Fortpflanzung des Fehlers kompliziert wird, ist die Logikschaltung, die Objekt
der Fehlersimulation sein soll, in diesem Falle auf ein Ein-Eingangsgatter
beschränkt und ein Fehlerlogikwert wird an dem Pin des Gatters eingestellt,
wodurch der Fehler in die Logikschaltung eingebracht wird.
Um beim Durchführen der Logiksimulation die Verarbeitung bei hoher Geschwindigkeit
unter Verwendung des Vektorprozessors zu implementieren, wird die
Logikschaltung logisch in die Logikschaltungskonfiguration modifiziert bzw.
umgesetzt, bei der Logikgatter eine Basisgatterform erhalten, bei der die Anzahl
der Eingabe- und Ausgabepins jedes Logikgatters festgelegt ist, wobei jedoch die
Position der Pins des Gatters der aktuellen Logikschaltung, der die Logiksimulation
auszusetzen ist, nicht den Pins des Gatters nach der logischen Modifikation auf
eine 1 : 1-Weise entsprechen muß. Daher kann der Fehlerwert nicht leicht in den
Fehlerannahmeteil der betroffenen logischen Schaltung eingeführt werden, so daß
die Fehlersimulation nicht geeignet ausgeführt werden kann. Um eine 1 : 1-Korrespondenz der Positionen der Pins des Gatters bzw. der Gatter der aktuellen
Logikschaltung als das Objekt für die Logiksimulation zu den Positionen der Pins
des Gatters, das der logischen Modifikation folgt, zu erzielen, kann die Logikschaltung
logisch in Logikgatter in einer Basisgatterform modifiziert bzw. umgesetzt
werden, bei der die Anzahl von Eingabe- und Ausgabepins festgelegt ist. Diese
logische Modifikation erfordert jedoch mehr Gatter mit festgelegtem Wert und
Erzeugungsgatter, wodurch die Schwierigkeit besteht, daß die Fehlersimulation einer
großen (Lager-scale) Logikschaltung nicht mit hoher Geschwindigkeit ausgeführt
werden kann.
Es ist weiterhin anzumerken, daß das Einführen des Fehlerlogikwertes zum
Durchführen der Fehlersimulation erfordert, daß sich der Fehlerlogikwert des
Gatters oder des Pins, bei dem ein Fehler angenommen wird, während der
Fehlersimulation verändert, so daß, wenn der Fehlerlogikwert nicht leicht eingeführt
werden kann, es erforderlich ist, daß während der Fehlersimulation bei Bedingungen
auf eine komplexe Art und Weise verzweigt werden könnte. Hierbei kann
jedoch aus der Hochgeschwindigkeits-Verarbeitungsfähigkeit des Vektorprozessors
nicht hinreichend Vorteil gezogen werden.
Es ist daher eine Aufgabe der vorliegenden Erfindung, ein Fehlersimulationsverfahren
zu schaffen, mit dem eine Fehlersimulation bei hoher Geschwindigkeit unter
Verwendung des Vektorprozessors durchgeführt werden kann.
Es ist eine weitere Aufgabe der vorliegenden Erfindung, ein Fehlersimulationsverfahren
anzugeben, das ein leichtes Einführen des Fehlerlogikwertes ermöglicht und
eine Fehlersimulationsverarbeitung gestattet, die aus der Hochgeschwindigkeitsverarbeitungsfähigkeit
des Vektorprozessors hinreichend Vorteil zieht.
Um die genannten Ziele zu erreichen, schafft die vorliegende Erfindung ein
Fehlersimulationsverfahren zum Erfassen eines Fehlers in einer Logikschaltung
durch Einführen eines Fehlerlogikwertes in eine Position einer Fehlerannahme in
der Logikschaltung, die der Fehlersimulation auszusetzen ist, und durch Durchführen
einer logischen Simulation, wobei das Verfahren die folgenden Schritte
aufweist.
Durchführen einer logischen Modifikation der der Fehlersimulation auszusetzenden Logikschaltung in eine Logikschaltungskonfiguration mit Logikgattern einer vorbestimmten Grundgatterform;
Erzeugen von Pin-Managementdaten, die eine Korrespondenz von allen Pins nach der logischen Modifikation und die Position einer Fehlerannahme bei jedem der Pins von der Logikmodifikation auf die Gatter anzeigen; und
Einführen des Fehlerlogikwertes in die Position der Fehlerannahme von jedem der Pins der Logikschaltung nach der Logiksimulation entsprechend jedem der Pins vor der Logikmodifikation, wobei auf die Pin-Managementdaten Bezug genommen wird.
Durchführen einer logischen Modifikation der der Fehlersimulation auszusetzenden Logikschaltung in eine Logikschaltungskonfiguration mit Logikgattern einer vorbestimmten Grundgatterform;
Erzeugen von Pin-Managementdaten, die eine Korrespondenz von allen Pins nach der logischen Modifikation und die Position einer Fehlerannahme bei jedem der Pins von der Logikmodifikation auf die Gatter anzeigen; und
Einführen des Fehlerlogikwertes in die Position der Fehlerannahme von jedem der Pins der Logikschaltung nach der Logiksimulation entsprechend jedem der Pins vor der Logikmodifikation, wobei auf die Pin-Managementdaten Bezug genommen wird.
Es ist anzumerken, daß das Einführen des Fehlerlogikwertes gekennzeichnet ist
durch Verbinden des Gatters festgelegten Wertes und grundlegender Gatterform,
das den Fehlerlogikwert erzeugt, mit den Eingangspins des Logikgatters, in dem
der Fehlerlogikwert eingeführt wird.
Bei dieser Anordnung sind die Logikgatterdaten der der Fehlersimulation
auszusetzenden Logikschaltung Daten festgelegter Länge, so daß die Fehlersimulation
implementiert wird, indem das Logikgatter in die Logikschaltungskonfiguration
logisch umgesetzt wird, bei der das Logikgatter die grundlegende Gatterform mit
einer konstanten Anzahl von Eingangs- und Ausgangspins hat, und durch Einführen
des Fehlerlogikwertes in das Logikgatter der logisch modifizierten Logikschaltung.
Daher kann die Fehlersimulation mit hoher Geschwindigkeit verarbeitet werden,
indem die Daten festgelegter Länge mit dem Vektorprozessor verarbeitet werden.
Wenn das Logikgatter logisch modifiziert worden ist, werden die Pin-Managementdaten
erzeugt, die eine Korrespondenz von jedem der Pins des Gatters nach der
logischen Modifikation zu der Position einer Fehlerannahme von jedem der Pins
des Gatters vor der Logikmodifikation angeben, und der Fehlerlogikwert wird in
das Logikgatter der Logikschaltung eingeführt, die logisch modifiziert ist. Im
Einzelnen wird der Logikwert in die Fehlerannahmeposition von jedem der Pins
des Gatters der Logikschaltung nach der Logikmodifikation eingeführt, und zwar
entsprechend jedem der Pins vor der Logikmodifikation mit Bezug auf die Pin-Managementdaten.
Das Einführen des Fehlerlogikwertes wird implementiert, in dem
das Gatter festgelegter Länge mit dem Fehlerlogikwert zur Einführung in das
Logikgatter der logisch modifizierten Logikschaltung verbunden wird, in die der
Fehlerlogikwert injiziert wird. Die hierbei verwendeten Pin-Managementdaten sind
Daten, die die Position eines Fehlerpins managen, anzeigend das Logikgatter, in
den der Logikfehlerwert eingeführt ist, dessen Position einer Fehlerannahme vor
der Logikmodifikation entspricht. Weiterhin managen die Pin-Managementdaten das
Einführen des Fehlerlogikwertes, wobei ein Fehlerwert-Einführungsindikator zum
Aufzeichnen und Managen von allen Pinpositionen geliefert wird, von den
angenommen werden muß, daß ein Fehler der Logikschaltung vorliegt, die der
Fehlersimulation auszusetzen ist. Die Pin-Managementdaten können die Korrespondenz
der Position jedes Pins des Logikgatters mit dem Fehlerlogikwert, der bei der
Implementierung der Fehlersimulation eingeführt ist, mit der Pinposition vor der
Logikmodifikation managen und können weiterhin das Einführen des Fehlers in
Entsprechung zu jeder der Pinpositionen managen, wodurch mit der Fehlersimulation
bei hoher Effizenz verfahren wird.
Die Logikgatterdaten in dem logisch modifizierten Logikgatter haben einen Zusatz
von dem zumindest bzw. am wenigsten notwendigen Erzeugungsgatter und beschreiben
die Logikschaltung von dem Gatter mit einer festgelegten Anzahl der
Eingangs- und Ausgangspins, so daß eine große Logikschaltung mit dem Vektorprozessor
bei hoher Geschwindigkeit simuliert werden kann. Da die Pin-Managementdaten
alle Orte aufzeichnen, bei denen ein Fehler in der Logikschaltung
anzunehmen ist, die der Fehlersimulation auszusetzen ist, und zwar aus der
Beziehung zwischen Pin-Position vor und nach der Logikmodifikation, kann
die Fehlersimulation genau, ohne etwas auszulassen, durchgeführt werde. Als
Gatter mit festgelegtem Wert wird das Logikgatter der Basisgatterform verwendet,
und dieses Gatter festgelegten Werts kann auf dieselbe Weise wie das Basisgatter
oder das Erzeugungsgatter behandelt werden, so daß die Fehlersimulation für den
eingeführten Fehler durchgeführt werden kann durch Ändern der Verbindung des
Gatters mit festgelegtem Wert, wodurch die Fehlersimulation mit hoher Geschwindigkeit
realisiert wird.
Weitere Vorteile, Merkmale und Anwendungsmöglichkeiten der vorliegenden
Erfindung ergeben sich aus der nachfolgenden Beschreibung von bevorzugten
Ausführungsbeispielen in Verbindung mit der Zeichnung.
Fig. 1 ist ein Schaltungsdiagramm, das ein Beispiel von einer Fehlersimulation
auszusetzenden Logikschaltungen zeigt;
Fig. 2 ist eine schematische Darstellung, die ein Beispiel der Logikschaltungen
zeigt, die durch logisches Modifizieren der Logikschaltung nach
Fig. 1 in eine Logikschaltungskonfiguration durch das Logikgatter der
Basisgatterform erhalten sind;
Fig. 3a und 3b sind eine schematische Darstellung, die jeweils die Logikschaltungskonfiguration
zeigen, wenn der Fehler eingeführt ist, durch
Verbinden des Gatters mit festgelegtem Wert mit der Logikschaltung
nach Fig. 2;
Fig. 4 ist eine schematische Darstellung, die ein Beispiel von Formaten der
Logikgatterdaten zeigt, die das Logikgatter der Basisgatterform
beschreiben;
Fig. 5 ist eine schematische Darstellung eines Beispiels von Formaten der
Pin-Managementdaten zum Managen der Fehlerannahmepositionen,
wenn der Fehlerlogikwert in die Eingangs- und Ausgangspins des
Logikgatters eingeführt ist; und
Fig. 6 ist ein Flußdiagramm, das den Betrieb der Fehlersimulationsverarbeitung
mit dem Vektorprozessor bei Bezug auf einen Fluß von Daten
zeigt und beschreibt.
Fig. 1 ist ein Schaltungsdiagramm, das ein Beispiel der der Fehlersimulation
auszusetzenden Logikschaltung zeigt. In Fig. 1 sind Gatter 1 bis 5 gezeigt, bei
denen Gatter 1 ein Gatter mit zwei Eingängen und zwei Ausgängen ist,
wohingegen die Gatter 2 bis einschließlich 5 Gatter sind, die jeweils einen Eingang
und einen Ausgang haben. Einer der zwei Ausgänge des Gatters 1 wird am
Verzweigungspunkt 10 verzweigt und mit den Gattern 2 und 3 verbunden, während
der andere der zwei Ausgänge bei einem Verzweigungspunkt 20 verzweigt wird und
dann mit den Gattern 4 und 5 verbunden wird, so daß also vier Ausgänge
erforderlich sind, um den Ausgang des Gatters 1 zu simulieren.
Das Fehlersimulationsverfahren ist, die Verarbeitung der Fehlersimulation mit
einem Vektorprozessor bei hoher Geschwindigkeit zu implementieren, und zwar
unter Verwendung von Logikgatterdaten einer der Fehlersimulation auszusetzenden
Logikschaltung als Daten festgesetzter Länge, derart, daß die logische Modifikation
implementiert wird unter Verwendung eines Logikgatters mit beispielsweise drei
Eingängen und drei Ausgängen als Logikgatter einer Basisgatterform, bei der die
Anzahl von Eingangs- und Ausgangspins vergeben ist. Daher wird die logische
Schaltung nach Fig. 1 logisch in eine logische Schaltung gemäß Fig. 2
modifiziert bzw. umgesetzt. Basisgatter 100 bis einschließlich 104 sind derart
angeordnet, daß sie Gattern 1 bis einschließlich 5 der der Fehlersimulation
auszusetzenden Logikschaltung entsprechen. Da die logische Umsetzung hier
implementiert ist unter Verwendung des Logikgatters mit drei Eingängen und drei
Ausgängen, können drei der vier Ausgänge des Gatters 1 beschrieben werden wie
sie sind; ein Erzeugungsgatter 120 ist jedoch derart angeordnet, daß es dem
Verzweigungspunkt 20 zum Verzweigen entspricht, um einen Negationsausgang bzw.
invertierten Eingang zu erhöhen bzw. miteinzuschließen, der im Gatter 1 fehlt.
Wie zuvor beschrieben, wird die Anzahl der Eingänge und Ausgänge des Gatters
1 eingestellt, indem das Erzeugungsgatter 120 zu den Grundgattern 100 bis 104
hinzugefügt wird, und die Logikschaltung nach Fig. 1 wird logisch in eine
Schaltungskonfiguration bei Verwendung des Logikgatters einer Grundgatterform
umgesetzt. Mit dem Ausgang, der zur Beschreibung der Logikschaltung nach Fig. 1
unter den drei Eingängen von jedem der Basisgatter 100 bis 104 und des
Erzeugungsgatters 120 nicht erforderlich ist, sind die Ausgänge von Gattern 110
bis einschließlich 113 mit festgelegtem Wert zum Erzeugen eines festen logischen
Werts verbunden, der keinen Einfluß auf den Betrieb irgendeines Gatters ausübt.
Wenn z. B. die Logikfunktion des Basisgatters 100 gemäß Fig. 2 UND wäre, ist
ein Eingang 145 mit einem Gatter 110 festgelegten Werts, nämlich des logischen
Werts "1" verbunden. Jeder der Eingänge der anderen Basisgatter 101, 102, 103
und 104 als auch des Erzeugungsgatters 120 ist auf ähnliche Weise mit allen
Ausgängen von den Gattern 110 bis einschließlich 113 festgelegten Wertes
verbunden, die einen Logikwert ohne Einfluß auf den Betrieb des Gatters haben.
Die Logikschaltung nach Fig. 2, die durch die Logikmodifikation auf die zuvor
beschriebene Weise erzeugt ist, ist derart, daß jedes der Logikgatter durch
Logikgatterdaten einer festgelegten Länge beschrieben wird, und ein Zusammenschluß
der Logikgatterdaten eine Logikschaltung beschreibt.
Fig. 4 ist eine schematische Darstellung eines Beispiels eines Formats von
Logikgatterdaten, die das Logikgatter einer Basisgatterform beschreiben. Das
Basisgatter 100, das die Logikschaltung nach Fig. 2 darstellt, wird z. B. mit
Logikgatterdaten 400 festgelegter Länge beschrieben, wie es in Fig. 4 gezeigt ist.
Andererseits wird das Erzeugungsgatter 120 mit Logikgatterdaten 401 festgelegter
Länge desselben Formats wie das Basisgatter 100 beschrieben. Alle Logikgatterdaten
haben ein gemeinsames Format für alle Gatter der Basisgatter, der Erzeugungsgatter
und der Gatter festgelegten Werts, und haben Logikfunktionsdaten 402,
Logikwertdaten 403 und Gatterverbindungsdaten 406. Die Logikfunktionsdaten 402
stellen eine logische Funktion des Gatters dar, d. h. die Funktion eines logischen
Betriebs, so wie UND, ODER, Flip-Flop usw. Die Logikwertdaten 403 sind
ausgelegt, einen Ausgangswert beim Ausführen der Simulation und Fortpflanzen
eines Logikausganges zurück- bzw. beizubehalten. Die Logikwertdaten werden
offengelassen, wenn der Ausgang jedes Gatters zur Zeit der Logikmodifikation
nicht festgelegt ist. Die Gatterverbindungsdaten 406 sind derart aufgebaut, daß sie
Verbindungsdaten enthalten, die der Anzahl von Eingängen und Ausgängen des
Gatters entsprechen (in diesem Ausführungsbeispiel ist die Anzahl von Eingängen
und Ausgängen insgesamt sechs mit drei Eingängen und drei Ausgängen). Zum Beispiel
entsprechen alle Verbindungsdaten von Eingang 1, Eingang 2 und Eingang 3 der
Logikgatterdaten 400 des Basisgatters 100 einem Eingang 143, einem Eingang 144
bzw. einem Eingang 145 des Basisgatters 100 nach Fig. 2. Und alle Verbindungsdaten
von Ausgang 1, Ausgang 2 und Ausgang 3 entsprechen einem Ausgang 140,
einem Ausgang 141 bzw. einem Ausgang 142 des Basisgatters 100. Alle Verbindungsdaten
haben ein NICHT-Flag 404, das das Vorliegen oder Nicht-Vorliegen
einer Inversion des Logikwertes bei den Eingängen und den Ausgängen darstellt
("1" stellt das Vorliegen der Logikwertinversion dar, wohingehend "0" das Nicht-Vorliegen
der Logikwertinversion darstellt), und einen Verbindungsknotenzeiger
405 auf die Logikgatterdaten des Gatters, mit dem sie anzuschließen sind. Fig. 4
zeigt die Logikgatterdaten 400 des Basisgatter 100 und die Logikgatterdaten 401
des Erzeugungsgatters 120 in der Logikschaltung nach Fig. 2.
Gleichzeitig, wenn ein Zusammenschluß bzw. eine Gesamtheit der Logikgatterdaten
gemäß Fig. 4 erzeugt wird, und der Konfiguration der auf die zuvor beschriebene
Weise logisch modifizierten Logikschaltung zu entsprechen, werden Pin-Managementdaten
zum Managen bzw. Organisieren bzw. Verwalten der Position eines
Fehlerpins bei Einfügung eines Fehlerlogikwertes in den Pin des Logikgatters
erzeugt.
Fig. 5 ist eine schematische Darstellung eines Beispiels eines Formats der Pin-Managementdaten
zum Verwalten einer Fehlerannahmeposition bei Einführung des
Fehlerlogikwertes in die Eingabe- und Ausgabepins des Logikgatters. Die Pin-Managementdaten
werden erzeugt, um allen Gattern der Logikgatterdaten zu
entsprechen, die durch die Logikmodifikation erzeugt sind. Zum Beispiel werden die Pin-Managementdaten
500 erzeugt für die Logikgatterdaten 400 (Fig. 4) des
Basisgatters 100, angebend die Logikschaltung nach Fig. 2, wohingehend Pin-Managementdaten
501 für die Logikgatterdaten 401 des Erzeugungsgatter 120
erzeugt werden. Die Pin-Managementdaten 500 haben eine Fehlerannahmezahl 502
auf der Eingangsseite (Eingabefehlerannahmezahl), eine Fehlerannahmezahl 503 auf
der Ausgabeseite (Ausgabefehlerannahmezahl), Fehlerdaten 504 und 505 auf der
Eingabeseite (Eingabefehlerdaten) und Fehlerdaten 504, 506, 507 und 508 auf der
Ausgabeseite (Ausgabefehlerdaten). Die Eingabefehlerannahmezahl 502 und die
Ausgabefehlerannahmezahl 503 stellen die Anzahl von Positionen der Eingabe- und
Ausgabepins unter den Eingabe- und Ausgabepins (in dieser Ausführungsform drei
Eingabepins und drei Ausgabepins) des Logikgatters dar, und zwar von den
Positionen, von denen angenommen wird, daß sie einen Fehler in der Logikschaltung
vor der Logikmodifikation erzeugt haben. Die Eingabefehlerdaten 504 und 505
und die Ausgabefehlerdaten 504, 506, 507 und 508 stellen Fehlerannahmedaten dar,
wenn der Fehler in jedem der Eingabe- und Ausgabepins eingebaut bzw. enthalten
ist. Insbesondere bestehen die Eingabefehlerdaten aus Pindaten 504, die die
Positionen der Eingabe- und Ausgabepins darstellen, annehmend einen Fehler vor
der logischen Modifikation, und aus einer Eingabezahl 505, die die Entsprechung
zu den Positionen der Eingabe- und Ausgabepins darstellt, und zwar zu deren
Eingang des Logikgatters nach der Logikmodifikation. Die Ausgabefehlerdaten
bestehen aus den Pindaten 404 und äquivalenten Flags 506, 507 und 508, die
darstellen, welcher Ausgang des Logikgatters nach der Logikmodifikation den
Positionen der Ausgabepins äquivalent ist, von den angenommen wird, daß sie den
Fehler vor der Logikmodifikation haben. Die äquivalenten Flags 506, 507 und 508,
auf die hier Bezug genommen wird, entsprechen jedem der Ausgabepins des
Logikgatters und die äquivalenten Flags sind vorgesehen, so daß sie der Anzahl
der Ausgänge des Gatters entsprechen (in dieser Ausführungsform sind drei Flags
vorgesehen, um den drei Ausgängen zu entsprechen). Das äquivalente Flag wird
aus "1" eingestellt, wenn der entsprechende Ausgang äquivalent ist, und das
äquivalente Flag wird auf "0" eingestellt, wenn der entsprechende Ausgang nicht
äquivalent ist. Es ist anzumerken, daß die Pin-Managementdaten 500 nach Fig. 5
Pin-Managementdaten zwischen Pin-Daten des Gatters 1 (Fig. 1) vor der
Logikmodifikation und dem Pin des Basisgatters 100 (Fig. 2) beim Beschreiben
der Logikgatterdaten (Fig. 4) darstellen, wenn der Fehler für jeden Pin des
Logikgatters in der der Fehlersimulation auszusetzenden Logikschaltung angenommen
wird.
Wie zuvor beschrieben, wird die Logikmodifikation in die Schaltungskonfiguration
durch das Logikgatter der Basisgatterform durchgeführt und die Logikgatterdaten
und die Pin-Managementdaten werden erzeugt. Hiernach wird ein Fehlerlogikwert
in die Fehlerannahmeposition des Logikgatters eingebracht und dann wird die
Verarbeitung der Fehlersimulation implementiert. Das folgende ist eine Beschreibung
eines Beispiels der Verarbeitung der Fehlersimulation.
Fig. 6 ist ein Flußdiagramm zum Beschreiben des Betriebs der Fehlersimulationsverarbeitung
unter Verwendung eines Vektorprozessors, in Verbindung mit dem
Fluß von Daten. Der Vektorprozessor ermöglicht die parallele Batch-Verarbeitung
des Betriebs von jedem Vektorelement unter Verwendung eines Vektorregisters
620, wodurch die Betriebsverarbeitung bei hoher Geschwindigkeit implementiert
wird.
Zunächst wird das Verfahren der Simulation des Logikwerts von jedem Gatter in
einem Zustand vor der Aufnahme des Fehlerlogikwertes mittels der Ereignisausbreitungstechnik
in Verbindung mit Fig. 6 beschrieben. Ein Gatterdatenspeicher 611
speichert die Logikgatterdaten für alle Gatter gemäß Fig. 4. Und eine Ereignistabelle
610 speichert eine Adresse der Logikgatterdaten entsprechend dem Logikgatter
unter allen Gattern, in dem das Ereignis sich ausbreitet.
Nachdem das System im Schritt 600 gestartet worden ist, geht das Programm zum
Schritt 601 über, bei dem die Verarbeitung des Lesens der Logikfunktion der
Logikgatterdaten implementiert ist. Diese Verarbeitung involviert das Lesen der
Logikfunktionsdaten 402 aus dem Gatterdatenspeicher 611 für alle die Gatter, die
aus der Ereignistabelle 610 indiziert sind, und das Laden der Lese-Logikfunktionsdaten
in ein Vektorregister VRa. Dann geht das Programm zum Schritt 602
über, bei dem die Verarbeitung des Lesens des Eingangswertes der Logikgatterdaten
vollzogen wird, und diese Verarbeitung involviert auf ähnliche Weise das
Lesen der Logikwerte der drei Eingänge von dem Gatterdatenspeicher 611 für alle
die Gatter, die aus der Ereignistabelle 610 indiziert sind. Im einzelnen wird der
Logikwert ausgelesen, durch Geben der Logikgatterdaten, die auf ihrer Eingangsseite
angeschlossen sind, von dem Verbindungsknotenzeiger (405; Fig. 4) der
Gatterverbindungsdaten auf die Eingangsseite jeder der Logikgatterdaten (400 und
401; Fig. 4) und durch Lesen der Logikwertdaten 403. Zunächst werden die
Logikwertdaten 403 von Eingang 1 gelesen, indem die Logikwertdaten ("1", "0",
"1", . . .) 403 der Logikgatterdaten gelesen werden, die durch Zeiger (204, 205, 203, . . .)
von Eingang 1 angezeigt werden, und dann das Ergebnis in ein Vektorregister
VRb eingegeben wird. Auf ähnliche Weise werden die Logikwertdaten 403 von
Eingang 2 gelesen, indem die Logikwertdaten ("0", "1", "1", . . .) 403 der Logikgatterdaten
gelesen werden, die durch den Zeiger (205, 203, 204, . . .) von Eingang 2
angezeigt werden, und indem das Ergbnis in ein Vektorregister VRc eingegeben
wird. Weiterhin wird das Lesen der Logikwertdaten 403 von Eingang 3 inplementiert,
indem die Logikwertdaten ("1", "1", "0", . . .) 403 der Logikgatterdaten
gelesen werden, die durch Zeiger (203, 204, 206, . . .) von Eingang 3 angezeigt
werden, und indem das Ergebnis in ein Vektorregister VRd eingegeben wird.
Dieser Betrieb ermöglicht, daß die Logikwerte von Eingang 1, Eingang 2 und
Eingang 3 jedes Gatters in die jeweiligen Vektorregister VRb, VRc und VRd
geladen werden. Dann werden im Schritt 603 die in die Vektorregister VRb, VRc
und VRd geladenen Logikwerte einer logischen Operation ausgesetzt, die von dem
Vektorregister VRa instruiert wird, und das Ergebnis wird in einem Vektorregister
VRe gespeichert, wonach der Betrieb Schritt 604 übergeht, bei dem abgefragt wird,
ob der logische Wert verändert worden ist, der in dem Vektorregister VRe
gespeichert ist. Wenn im Schritt 604 entschieden ist, daß der Logikwert verändert
worden ist, d. h. daß der in dem Vektorregister VRe gespeicherte Logikwert
unterschiedlich von einem Wert der Logikwertdaten 403 ist, die in dem
Gatterdatenspeicher gespeichert sind, geht der Programmfluß zu Schritt 605 über,
bei dem eine Ereignisregistrierung derart durchgeführt wird, daß eine nächste
Ereignistabelle 612 eine Adresse desjenigen Gatters speichert, das mit dem
Ausgang desjenigen Gatters zu verbinden ist, in dem der Logikwert verändert
worden ist. Hiernach wird im Schritt 606 das Ergebnis der logischen Operation,
das in dem Vektorregister VRe gespeichert ist, dann in den Logikwertdaten 403
in dem Gatterdatenspeicher gespeichert, gefolgt von dem Ende der Verarbeitung.
Wenn andererseits im Schritt 604 entschieden wird, daß das Ergebnis der logischen
Operation oder der logische Wert nicht verändert worden ist, ist keine Verarbeitung
erforderlich, so daß die Verarbeitung endet. Dies faßt eine erste Serie der
Verarbeitung der Ereignisausbreitung zusammen. Hiernach wird die Ereignistabelle
610 durch die nächste Ereignistabelle 612 ersetzt und dieselbe Verarbeitung wird
wiederholt, wodurch die Verarbeitung der Ereignisausbreitung der Reihe nach
durchgeführt und die logische Schaltung als ganze logisch simuliert wird.
In der zuvor beschriebenen Ausführungsform sind die Anzahlen der Eingänge und
Ausgänge des Basisgatters auf jeweils drei festgelegt und derart formalisiert, daß
die Logikgatterdaten Daten festgelegter Länge sein können und der Betrieb auf
Daten festgelegter Länge ausgeführt werden kann. Daher kann die logische
Operation durch eine Vektorinstruktion implementiert werden unter Verwendung
des Vektorregisters in dem Vektorprozessor, wodurch die logische Simulation bei
einer hohen Geschwindigkeit durchgeführt werden kann. Dieses System kann auch
die Fehlersimulation mit einer hohen Geschwindigkeit verarbeiten, wobei die
logische Simulation bei Einfügen verschiedener Fehlerlogikwerte wiederholt wird.
Nachstehend wird die Fehlereinfügungsverarbeitung zum Einfügen des Fehlerlogikwertes
in die Eingangs- und Ausgangspins von jedem der Logikgatter
beschrieben, und zwar beim Durchführen der Logiksimulation auf die Weise wie
zuvor beschrieben.
Die Fig. 3a und 3b sind schematische Darstellungen der Konfiguration der
Logikschaltung beim Einfügen des Fehlers durch Verbinden des Gatters festgelegten
Wertes mit der Logikschaltung nach Fig. 2.
Es wird nun der Moment des Einfügens des Fehlers in die Ausgabeseite mit
Bezug auf Fig. 3a beschrieben. Wenn z. B. der Fehler in die Ausgabeseite des
Basisgatters 100 entsprechend dem Gatter 1 eingefügt wird, wird der Fehler mit
Logikwert "1" ("1" Degenerationsfehler) in Pin P3 des Ausgangs von Gatter 1
(Fig. 1) eingefügt, indem eine Verbindung auf der Seite einer Ausbreitung (hintere
Stufe) mit Bezug auf die Pin-Managementdaten 500 (Fig. 5) des Basisgatters 100
entsprechend dem Gatter 1 verändert wird. Mit anderen Worten wird die
Verbindung des Eingangs des Basisgatters 101 und des Basisgatters 102, der zu
dem Ausgang führt, in dem die äquivalenten Flags 506, 507 und 508 für die
Ausgabefehlerdaten der Pin-Managementdaten 500 auf 1 eingestellt sind, durch ein
Gatter 150 mit festgelegtem Wert logisch 1 für den Fehlerlogikwert verändert. Wie
zuvor beschrieben worden ist, wird der Fehlerlogikwert durch Modifizieren der
Logikschaltung nach Fig. 2 in die Logikschaltung nach Fig. 3a eingefügt, indem das
Gatter festgelegten Werts (Fehlereinfügungsgatter mit festgelegtem Wert) 150
hinzugefügt wird, das den Fehlerlogikwert an die Logikschaltung nach Fig. 2 aufgibt,
als auch durch Ändern der Verbindung unter den Basisgattern 100, 101 und 102.
Nun wird der Moment des Einfügens des Fehlers auf der Eingabeseite mit Bezug
auf Fig. 3b beschrieben, indem als Beispiel der Fall angenommen wird, bei dem
der Fehler auf die Eingabeseite des Basisgatters 100 entsprechend dem Gatter 1
eingefügt wird. In diesem Fall wird ebenfalls der Fehlerlogikwert unter Bezugnahme
auf die Pin-Managementdaten 500 (Fig. 5) des Basisgatters 100
entsprechend dem Gatter 1 eingefügt. Wenn z. B. der Fehler mit Logikwert "0" ("0"
Degenerationsfehler) und den Eingabepin P1 des Gatters 1 auf die gleiche Weise
wie zuvor beschrieben eingefügt wird, wird die Einführung durchgeführt, indem die
Verbindung auf der Seite der Ausbreitung (Vorderstufe) verändert wird - d. h.
durch Ändern der Verbindung des Eingangs 1 des Basisgatters 100, angezeigt durch
die Eingabezahl 1 des Eingangs P1 der Eingabefehlerdaten der Pin-Managementdaten
500 durch ein Gatter 151 mit festgelegtem Wert logisch "0" des Fehlerlogikwertes.
Mit anderen Worten wird der Fehlerlogikwert eingefügt, indem die
Verbindung des Eingangs 143 nach Fig. 2 so verändert wird, daß dieser mit dem
Gatter 151 mit festgelegtem Wert logisch "0" verbunden wird. In diesem Fall wird
das Einfügen des Fehlerlogikwertes durchgeführt, indem das Gatter 151 mit
festgelegtem Wert hinzuaddiert wird, das den Fehlerlogikwert an die Logikschaltung
nach Fig. 2 abgibt, als auch durch Ändern der Verbindung des Basisgatters 100,
wodurch die Modifikation der Logikschaltung gemäß Fig. 3b vollzogen werden.
Um den Logikwert zu simulieren, der von jedem Gatter nach der Einfügung des
Fehlerlogikwertes eingenommen wird, wird die Fehlersimulation durch das
Logiksimulationsverfahren gemäß der Ereignisausbreitungstechnik verarbeitet, wie
zuvor bei Fig. 6 beschrieben, indem eine Gruppe von Logikgatterdaten verwendet
wird, die die Logikschaltung gemäß Fig. 3a oder 3b beschreiben.
Wie zuvor beschrieben worden ist, gestattet die vorliegende Erfindung die
Fehlersimulation ohne Durchführen irgendeiner speziellen Verarbeitung des
eingefügten Fehlers, und zwar durch Beschreiben, der durch eine Hinzufügung der
geringstmöglichen Anzahl von Erzeugungsgattern und durch die Verwendung des
Gatters modifiziert ist, das die festgelegten Eingabe- und Ausgabepins hat, so daß
die vorliegende Erfindung die Fehlersimulation für eine große Logikschaltung bei
hoher Geschwindigkeit und mit hoher Genauigkeit durchführen kann.
Es ist hier anzumerken, daß die vorliegende Erfindung zwar anhand von
Ausführungsbeispielen beschrieben worden ist, sie jedoch nicht auf irgendeine Weise
auf diese Ausführungsform zu beschränken ist. Es ist vielmehr klar, daß die
vorliegende Erfindung verschiedene Modifikationen und Varianten innerhalb des
Schutzbereiches der Erfindung umfaßt.
Wie zuvor beschrieben worden ist, gestattet das Fehlersimulationsverfahren gemäß
der vorliegenden Erfindung eine leichte Einfügung des Fehlerlogikwertes auf der
Basis der Pin-Managementdaten in die logisch modifizierte Logikschaltung, um von
dem Vektorprozessor verarbeitet zu werden. Weiterhin gestattet die vorliegende
Erfindung die Fehlersimulation nach der Einfügung des Fehlerlogikwertes, die bei
hoher Geschwindigkeit auszuführen ist, und zwar ohne Unterscheidung zwischen
dem Vorliegen und Nicht-Vorliegen der Fehlerlogikwerteinfügung durch eine
Verbindung mit dem festen Gatter, das den Fehlerlogikwert ausgibt.
Claims (9)
1. Fehlersimulationsverfahren zum Erfassen eines Fehlers in einer Logikschaltung
durch Einfügen eines Fehlerlogikwertes in eine Position einer Fehlerannahme
in der Logikschaltung in die Logikschaltung, die der Fehlersimulation
auszusetzen ist, und durch Durchführen einer logischen Simulation, mit den
folgenden Schritten:
Durchführen einer logischen Modifikation der der Fehlersimulation auszusetzenden Logikschaltung in eine Logikschaltungskonfiguration durch ein Logikgatter einer vorbestimmten Basisgatterform;
Erzeugen von Pin-Managementdaten, anzeigend eine Entsprechung von jedem der Pins und der Position der Fehlerannahme bei jedem der Pins vor der logischen Modifikation zu dem Gatter nach der logischen Modifikation; und
Einfügen des Fehlerlogikwertes in die Position der Fehlerannahme von jedem der Pins der Logikschaltung nach der logischen Modifikation entsprechend jedem der Pins vor der logischen Modifikation, und zwar mit Bezug auf die Pin-Managementdaten.
Durchführen einer logischen Modifikation der der Fehlersimulation auszusetzenden Logikschaltung in eine Logikschaltungskonfiguration durch ein Logikgatter einer vorbestimmten Basisgatterform;
Erzeugen von Pin-Managementdaten, anzeigend eine Entsprechung von jedem der Pins und der Position der Fehlerannahme bei jedem der Pins vor der logischen Modifikation zu dem Gatter nach der logischen Modifikation; und
Einfügen des Fehlerlogikwertes in die Position der Fehlerannahme von jedem der Pins der Logikschaltung nach der logischen Modifikation entsprechend jedem der Pins vor der logischen Modifikation, und zwar mit Bezug auf die Pin-Managementdaten.
2. Fehlersimulationsverfahren nach Anspruch 1, wobei der Fehlerlogikwert
eingefügt wird durch Verbinden eines Gatters festgelegten Werts der
Basisgatterform, die den Fehlerlogikwert erzeugt, mit einem Eingangspin in der
Position der Fehlerannahme eines Logikgatters, in das der Fehlerlogikwert
eingefügt wird.
3. Fehlersimulationsverfahren nach Anspruch 1, wobei das Logikgatter einer
Basisgatterform, die als ein logisch zu modifizierendes Schaltungselement
funktioniert, ein Logikgatter ist, in dem die Anzahl von Eingängen und
Ausgängen festgelegt ist.
4. Fehlersimulationsverfahren nach Anspruch 1, wobei:
eine Gruppe von Logikgatterdaten, die aus einem Zusammenschluß von Logikgatterdaten bestehen, die jedes Logikgatter darstellen, beschreibend die Logikschaltungskonfiguration, derart erzeugt wird, daß es der Logikschaltungskonfiguration entspricht, die durch logisches Modifizieren der der Fehlersimulation auszusetzenden Logikschaltung durch das Logikgatter der Basisgatterform erhalten wird; und
Pin-Managementdaten, die die Korrespondenz von jedem der Pins eines Gatters nach der Logikmodifikation zu der Position einer Fehlerannahme von jedem der Pins vor der Modifikation angeben, erzeugt werden, um den logischen Gatterdaten zu entsprechen.
eine Gruppe von Logikgatterdaten, die aus einem Zusammenschluß von Logikgatterdaten bestehen, die jedes Logikgatter darstellen, beschreibend die Logikschaltungskonfiguration, derart erzeugt wird, daß es der Logikschaltungskonfiguration entspricht, die durch logisches Modifizieren der der Fehlersimulation auszusetzenden Logikschaltung durch das Logikgatter der Basisgatterform erhalten wird; und
Pin-Managementdaten, die die Korrespondenz von jedem der Pins eines Gatters nach der Logikmodifikation zu der Position einer Fehlerannahme von jedem der Pins vor der Modifikation angeben, erzeugt werden, um den logischen Gatterdaten zu entsprechen.
5. Fehlersimulationsverfahren zum Erfassen eines Fehlers in einer Logikschaltung
durch Einfügen eines Fehlerlogikwertes in eine Position einer Fehlerannahme
in der Logikschaltung in die Logikschaltung, die einer Fehlersimulation
auszusetzen ist, und durch Durchführen einer Logiksimulation, mit den
folgenden Schritten:
Durchführen einer Logikmodifikation der der Fehlersimulation auszusetzenden Logikschaltung in eine Logikschaltungskonfiguration durch ein Logikgatter einer vorbestimmten Basisgatterform;
Erzeugen einer Gruppe von Logikgatterdaten, bestehend aus einem Zusammenschluß von Logikgatterdaten, die jedes Logikgatter darstellen, beschreibend die Logikschaltungskonfiguration, um der Logikschaltungskonfiguration zu entsprechen, die durch die Logikmodifikation erzeugt ist;
Erzeugen von Pin-Managementdaten, die die Korrespondenz von jedem der Pins eines Gatters nach der logischen Modifikation zu der Position einer Fehlerannahme von jedem der Pins vor der logischen Modifikation angeben, um allen Logikgatterdaten der Gruppe der erzeugten Logikgatterdaten zu entsprechen;
Erzeugen von Fehlereinfügungs-Logikgatterdaten zum Verbinden eines Gatters festgelegten Werts des Logikgatters einer Basisgatterform, die den Fehlerlogikwert an einem Eingangspin in der Position einer Fehlerannahme des Logikgatters einer Basisgatterform erzeugt, und zwar zur Fehlereinfügung durch Festlegen der Position der Fehlerannahme von jedem der Pins des Gatters der Logikschaltung nach der logischen Modifikation entsprechend jedem der Pins vor der logischen Modifikation, und zwar mit Bezug auf die Pin-Managementdaten; und
Implementieren einer Logiksimulation, die auf der Basis der Gruppe der Logikgatterdaten und der Fehlereinfügungs-Logikgatterdaten arbeitet.
Durchführen einer Logikmodifikation der der Fehlersimulation auszusetzenden Logikschaltung in eine Logikschaltungskonfiguration durch ein Logikgatter einer vorbestimmten Basisgatterform;
Erzeugen einer Gruppe von Logikgatterdaten, bestehend aus einem Zusammenschluß von Logikgatterdaten, die jedes Logikgatter darstellen, beschreibend die Logikschaltungskonfiguration, um der Logikschaltungskonfiguration zu entsprechen, die durch die Logikmodifikation erzeugt ist;
Erzeugen von Pin-Managementdaten, die die Korrespondenz von jedem der Pins eines Gatters nach der logischen Modifikation zu der Position einer Fehlerannahme von jedem der Pins vor der logischen Modifikation angeben, um allen Logikgatterdaten der Gruppe der erzeugten Logikgatterdaten zu entsprechen;
Erzeugen von Fehlereinfügungs-Logikgatterdaten zum Verbinden eines Gatters festgelegten Werts des Logikgatters einer Basisgatterform, die den Fehlerlogikwert an einem Eingangspin in der Position einer Fehlerannahme des Logikgatters einer Basisgatterform erzeugt, und zwar zur Fehlereinfügung durch Festlegen der Position der Fehlerannahme von jedem der Pins des Gatters der Logikschaltung nach der logischen Modifikation entsprechend jedem der Pins vor der logischen Modifikation, und zwar mit Bezug auf die Pin-Managementdaten; und
Implementieren einer Logiksimulation, die auf der Basis der Gruppe der Logikgatterdaten und der Fehlereinfügungs-Logikgatterdaten arbeitet.
6. Fehlersimulationsverfahren nach Anspruch 5, wobei:
das Logikgatter einer Basisgatterform als ein logisch zu modifizierendes Schaltungselement ein Logikgatter ist, bei dem die Anzahl seiner Eingänge und Ausgänge festgelegt ist;
die Logikgatterdaten, die das Logikgatter darstellen, eine festgelegte Länge haben; und
Logikgatterdaten Logikfunktionsdaten, Logikwertdaten und Gatterverbindungsdaten enthalten.
das Logikgatter einer Basisgatterform als ein logisch zu modifizierendes Schaltungselement ein Logikgatter ist, bei dem die Anzahl seiner Eingänge und Ausgänge festgelegt ist;
die Logikgatterdaten, die das Logikgatter darstellen, eine festgelegte Länge haben; und
Logikgatterdaten Logikfunktionsdaten, Logikwertdaten und Gatterverbindungsdaten enthalten.
7. Fehlersimulationsverfahren nach Anspruch 5, wobei die Pin-Managementdaten,
die in Entsprechung zu den Logikgatterdaten erzeugt sind, die Anzahl der
Fehlerannahmen, Eingabefehlerdaten und Ausgabefehlerdaten der Eingabe- und
Ausgabepins des Logikgatters vor der logischen Modifikation enthalten.
8. Fehlersimulationsverfahren nach Anspruch 7, wobei die Ausgabefehlerdaten der
Pin-Managementdaten Pin-Daten und ein äquivalentes Flag enthalten; und
ein identischer Fehlerlogikwert durch eine Instruktion des äquivalenten Flags
in eine Vielzahl der Ausgabepins eingefügt wird.
9. Fehlersimulationsverarbeitung zum Implementieren einer Logiksimulationsverarbeitung
unter Verwendung eines Vektorprozessors aus einer Gruppe von
Logikgatterdaten und Fehlereinfügungs-Logikgatterdaten in dem Fehlersimulationsverfahren
nach Anspruch 5, wobei
der erste Schritt Lesen von Logikfunktionsdaten der Logikgatterdaten für alle Logikgatter ist, die eine Instruktion einer Ereignistabelle aus einem Gatterdatenspeicher empfangen, der die Gruppe der Logikgatterdaten speichert, die eine Logikschaltungskonfiguration nach der Einfügung eines Fehlerlogikwertes in ein erstes Vektorregister beschreiben;
der zweite Schritt Lesen von Eingabelogikwertdaten der Logikgatterdaten für alle Logikgatter ist, die die Instruktion der Ereignistabelle von dem Gatterdatenspeicher empfangen, der die Gruppe der Logikgatterdaten speichert, die die Logikschaltungskonfiguration nach der Einfügung des Fehlerlogikwertes in ein zweites Vektorregister beschreibt;
der dritte Schritt Durchführen einer Logikoperation der Logikfunktion ist, die in dem ersten Vektorregister gespeichert ist, und zwar für einen Eingabelogikwert, der in dem zweiten Vektorregister gespeichert ist, und Speichern des Ergebnisses der Logikoperation in ein drittes Vektorregister ist;
der vierte Schritt Registrieren des Logikgatters mit einem veränderten Logikwert in eine nächste Ereignistabelle und Speichern des veränderten Logikwertes als ein Logikwert der Logikgatterdaten des entsprechenden Logikgatters des Gatterdatenspeichers ist; und
der fünfte Schritt Wiederholen der Verarbeitung von dem ersten Schritt ist, und zwar unter Verwendung eines Inhalts der nächsten Ereignistabelle, die in dem vierten Schritt als der Inhalt einer Ereignistabelle registriert ist.
der erste Schritt Lesen von Logikfunktionsdaten der Logikgatterdaten für alle Logikgatter ist, die eine Instruktion einer Ereignistabelle aus einem Gatterdatenspeicher empfangen, der die Gruppe der Logikgatterdaten speichert, die eine Logikschaltungskonfiguration nach der Einfügung eines Fehlerlogikwertes in ein erstes Vektorregister beschreiben;
der zweite Schritt Lesen von Eingabelogikwertdaten der Logikgatterdaten für alle Logikgatter ist, die die Instruktion der Ereignistabelle von dem Gatterdatenspeicher empfangen, der die Gruppe der Logikgatterdaten speichert, die die Logikschaltungskonfiguration nach der Einfügung des Fehlerlogikwertes in ein zweites Vektorregister beschreibt;
der dritte Schritt Durchführen einer Logikoperation der Logikfunktion ist, die in dem ersten Vektorregister gespeichert ist, und zwar für einen Eingabelogikwert, der in dem zweiten Vektorregister gespeichert ist, und Speichern des Ergebnisses der Logikoperation in ein drittes Vektorregister ist;
der vierte Schritt Registrieren des Logikgatters mit einem veränderten Logikwert in eine nächste Ereignistabelle und Speichern des veränderten Logikwertes als ein Logikwert der Logikgatterdaten des entsprechenden Logikgatters des Gatterdatenspeichers ist; und
der fünfte Schritt Wiederholen der Verarbeitung von dem ersten Schritt ist, und zwar unter Verwendung eines Inhalts der nächsten Ereignistabelle, die in dem vierten Schritt als der Inhalt einer Ereignistabelle registriert ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1257236A JPH03118488A (ja) | 1989-10-02 | 1989-10-02 | 故障シミュレーション方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4031136A1 true DE4031136A1 (de) | 1991-04-11 |
DE4031136C2 DE4031136C2 (de) | 1993-07-01 |
Family
ID=17303576
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4031136A Granted DE4031136A1 (de) | 1989-10-02 | 1990-10-02 | Fehlersimulationsverfahren |
Country Status (3)
Country | Link |
---|---|
US (1) | US5184308A (de) |
JP (1) | JPH03118488A (de) |
DE (1) | DE4031136A1 (de) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9106758D0 (en) * | 1991-03-28 | 1991-05-15 | Genrad Ltd | A system for determining the operations of an integrated circuit and processor for use therein |
DE69225527T2 (de) * | 1991-04-11 | 1998-09-10 | Hewlett Packard Co | Verfahren und System zur automatischen Bestimmung der logischen Funktion einer Schaltung |
JP2781081B2 (ja) * | 1991-06-12 | 1998-07-30 | 株式会社日立製作所 | 並列演算機構による論理演算方法 |
JPH0546697A (ja) * | 1991-08-14 | 1993-02-26 | Nec Corp | 論理シミユレータ |
US5884065A (en) * | 1992-01-10 | 1999-03-16 | Nec Corporation | Logic circuit apparatus and method for sequentially performing one of a fault-free simulation and a fault simulation through various levels of a logic circuit |
US5475624A (en) * | 1992-04-30 | 1995-12-12 | Schlumberger Technologies, Inc. | Test generation by environment emulation |
JPH06194415A (ja) * | 1992-09-30 | 1994-07-15 | American Teleph & Telegr Co <Att> | 論理回路の試験方法とその装置 |
US5633813A (en) * | 1994-05-04 | 1997-05-27 | Srinivasan; Seshan R. | Apparatus and method for automatic test generation and fault simulation of electronic circuits, based on programmable logic circuits |
US5548715A (en) * | 1994-06-10 | 1996-08-20 | International Business Machines Corporation | Analysis of untestable faults using discrete node sets |
US5668816A (en) * | 1996-08-19 | 1997-09-16 | International Business Machines Corporation | Method and apparatus for injecting errors into an array built-in self-test |
US6625770B1 (en) * | 2000-06-20 | 2003-09-23 | Lsi Logic Corporation | Method of automatically generating schematic and waveform diagrams for relevant logic cells of a circuit using input signal predictors and transition times |
US6961887B1 (en) | 2001-10-09 | 2005-11-01 | The United States Of America As Represented By The Secretary Of The Navy | Streamlined LASAR-to-L200 post-processing for CASS |
US20090048945A1 (en) | 2007-08-15 | 2009-02-19 | Deline Jonathan E | Fuel dispenser |
US7870441B2 (en) * | 2008-03-18 | 2011-01-11 | International Business Machines Corporation | Determining an underlying cause for errors detected in a data processing system |
US9032266B2 (en) * | 2011-06-28 | 2015-05-12 | Terence Wai-kwok Chan | Multithreaded, mixed-HDL/ESL concurrent fault simulator for large-scale integrated circuit designs |
US10346273B2 (en) * | 2017-09-22 | 2019-07-09 | Analog Devices Global Unlimited Company | Automated analog fault injection |
CN107861005B (zh) * | 2017-11-10 | 2020-09-29 | 北京润科通用技术有限公司 | 一种供电故障模拟装置及供电故障模拟方法 |
US10969429B1 (en) * | 2019-08-13 | 2021-04-06 | Cadence Design Systems, Inc. | System and method for debugging in concurrent fault simulation |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0668756B2 (ja) * | 1985-04-19 | 1994-08-31 | 株式会社日立製作所 | 回路自動変換方法 |
JPS62221745A (ja) * | 1986-03-24 | 1987-09-29 | Hitachi Ltd | 論理回路シミユレ−シヨン方法 |
US4815016A (en) * | 1986-07-24 | 1989-03-21 | Unisys Corp. | High speed logical circuit simulator |
US4996659A (en) * | 1986-08-20 | 1991-02-26 | Hitachi, Ltd. | Method of diagnosing integrated logic circuit |
US4791578A (en) * | 1986-12-30 | 1988-12-13 | Eta Systems, Inc. | Logic gate system design |
JP2583949B2 (ja) * | 1988-03-10 | 1997-02-19 | 松下電器産業株式会社 | 論理シミュレーション方法と論理シミュレーション装置 |
US4954953A (en) * | 1988-04-07 | 1990-09-04 | Vlsi Technology, Inc. | Machine process for converting one representation of an electronic integrated circuit into another representation |
US4937765A (en) * | 1988-07-29 | 1990-06-26 | Mentor Graphics Corporation | Method and apparatus for estimating fault coverage |
-
1989
- 1989-10-02 JP JP1257236A patent/JPH03118488A/ja active Pending
-
1990
- 1990-10-01 US US07/591,148 patent/US5184308A/en not_active Expired - Fee Related
- 1990-10-02 DE DE4031136A patent/DE4031136A1/de active Granted
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
Non-Patent Citations (2)
Title |
---|
DE-Z.: messen + prüfen/automatik, Mai 1976, Jg. 12, H. 5, S. 268-277 * |
US-Z.: IEEE Transactions on Computer-Aided Design, Vol. 7, No. 12, December 1988, S. 1250-1260 * |
Also Published As
Publication number | Publication date |
---|---|
JPH03118488A (ja) | 1991-05-21 |
DE4031136C2 (de) | 1993-07-01 |
US5184308A (en) | 1993-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE4031136C2 (de) | ||
DE2311034C2 (de) | Verfahren zum Prüfen eines integrierte logische Verknüpfungs- und Speicherglieder enthaltenden Halbleiterchips | |
DE2934971C2 (de) | Nach dem Fließbandprinzip arbeitender Zentralprozessor | |
DE2346617A1 (de) | Verfahren zur pruefung der laufzeitverzoegerung einer funktionalen logischen einheit | |
DE2614000A1 (de) | Einrichtung zur diagnose von funktionseinheiten | |
DE2753062A1 (de) | Einrichtung zur durchfuehrung programmierter befehle | |
DE19510902A1 (de) | Emulation eines Mehrtor-Speichers unter Verwendung von Markierregistern | |
DE3702408C2 (de) | ||
DE3106727A1 (de) | "verfahren und vorrichtung zum automatischen pruefen elektrischer und elektronischer schaltkreise" | |
DE3832440A1 (de) | Testschaltungseinrichtung | |
DE2536625C2 (de) | Paritätsprüfschaltung für ein binär zählendes Register | |
EP0628832B1 (de) | Integrierte Schaltung mit Registerstufen | |
DE2121330C3 (de) | Verfahren und Schaltungsanordnung zum Prüfen digital arbeitender elektronischer Geräte und ihrer Bauteile | |
DE10032256C2 (de) | Chip-ID-Register-Anordnung | |
EP0283906A1 (de) | Verfahren und Schaltungsanordnung zum Prüfen eines Halbleiterspeichers | |
DE2461651B2 (de) | Zählvorrichtung zum Zählen von Mustern | |
DE2222195A1 (de) | Anordnung zur verarbeitung von operanden von programmen | |
DE2235802A1 (de) | Verfahren und einrichtung zur pruefung nichtlinearer schaltkreise | |
DE2625183C3 (de) | Datenverarbeitungseinrichtung | |
DE3535215C2 (de) | ||
DE3422287A1 (de) | Pruefanordnung fuer digitalschaltungen | |
DE10112311A1 (de) | Verfahren und Einrichtung zum Kalibrieren zur Korrektur von Impulsbreitenzeitfehlern beim Testen integrierter Schaltungen | |
DE10122703A1 (de) | Charakterisierung von Leseverstärkern | |
WO1988009554A1 (en) | Process and arrangement for self-checking of a word-oriented ram | |
DE1424756B2 (de) | Schaltungsanordnung zum fehlergesicherten Einführen oder Wiedereinführer, von Programmen in den Hauptspeicher einer datenverarbeitenden Anlage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |