DE4410731A1 - Logiksimulator - Google Patents

Logiksimulator

Info

Publication number
DE4410731A1
DE4410731A1 DE4410731A DE4410731A DE4410731A1 DE 4410731 A1 DE4410731 A1 DE 4410731A1 DE 4410731 A DE4410731 A DE 4410731A DE 4410731 A DE4410731 A DE 4410731A DE 4410731 A1 DE4410731 A1 DE 4410731A1
Authority
DE
Germany
Prior art keywords
logic
feedback
sequential circuit
circuit device
simulation
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.)
Withdrawn
Application number
DE4410731A
Other languages
English (en)
Inventor
Michio Komoda
Naoko Omori
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE4410731A1 publication Critical patent/DE4410731A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking

Description

Die vorliegende Erfindung bezieht sich auf einen Logiksimulator für integrierte Halbleiterschaltungsvorrichtungen
Fig. 14 ist ein Schaltbild einer beispielhaften Logikschaltung, die in einem Logiksimulator in ihrer Logik zu simulieren (zu lo­ giksimulieren) ist.
Wie Fig. 14 zeigt, wird ein Eingabesignal SI an einen ersten Eingang eines UND-Gatters 31 angelegt. Ein zweiter Eingang des UND-Gatters 31 empfängt die Ausgabe eines Exklusiv-ODER-Gatters 30, und die Ausgabe des UND-Gatters 31 wird an einen D-Eingang eines DFF (D Flip-Flop) 33 angelegt.
Der DFF 33 weist einen Takteingang, der ein Taktsignal CLK emp­ fängt, auf und gibt eine Q-Ausgabe Q1 nach außerhalb aus. Die Q-Ausgabe Q1 wird auch an die ersten Eingänge des Exklusiv-ODER- Gatters 30 und eines Exklusiv-NOR-Gatters 32 angelegt. Ein DFF 34 weist einen Takteingang, der das Taktsignal CLK empfängt, und einen D-Eingang, der die Ausgabe des Exklusiv-NOR-Gatters 32 emp­ fängt, auf und gibt eine Q-Ausgabe Q0 nach außerhalb aus. Die Q-Ausgabe Q0 wird auch an die zweiten Eingänge des Exklusiv-ODER-Gatters 30 und des Exklusiv-NOR-Gatters 32 gemeinsam angelegt. Ein Rücksetzsignal RST wird an die Rücksetzeingänge R der DFFs 33 und 34 angelegt.
Die zu simulierende Schaltung, die wie oben beschrieben aufgebaut ist, hat die Eigenschaft, daß sie, wenn das Eingabesignal SI auf "H" gesetzt ist, die Q-Ausgabe Q1 auf "H" und die Q-Ausgabe Q0 auf "L" nach der Eingabe von zwei Pulsen des Taktsignals CLK un­ abhängig von dem anfänglichen Wert der Q-Ausgaben Q1 und Q0 der DFFs 33 und 34 ausgibt.
Bei der Logiksimulation durch den herkömmlichen Logiksimulator weist die Ausgabe konstant einen undefinierten bzw. unbestimmten Wert X auf, wo das Eingabesignal den unbestimmten Wert X auf­ weist. Derart bleiben, wenn die Logikschaltung, die wie oben auf­ gebaut ist, zu simulieren ist, wobei die D-Eingabe des DFF 33 oder des DFF 34 unbestimmt X ist, die Q-Ausgabe Q1 oder die Q-Ausgabe Q0 undefiniert X. Das heißt, daß das Signal, welches im praktischen Betrieb einen definierten bzw. bestimmten Wert auf­ weist, bei der Logiksimulation unbestimmt ist.
Um einen solchen Nachteil zu überwinden, weist der herkömmliche Logiksimulator ein Mittel zum Einstellen eines bestimmten Wertes zum Zwingen des DFF 33 oder des DFF 34 zur Rückkehr zu einem be­ stimmten Wert durch das Rücksetzsignal RST zur Logiksimulation, unabhängig von der Notwendigkeit desselben in der praktischen bzw. tatsächlichen Schaltung.
Der herkömmliche Logiksimulator ist dahingehend nachteilhaft, daß die zu simulierende Schaltung, wenn sie einmal einen unbestimmten Wert ausgegeben hat, in der Logiksimulation fortfährt, den unbe­ stimmten Wert auszugeben, obwohl sie im praktischen Betrieb, nachdem nach der Ausgabe des unbestimmten Wertes ein vorbestimm­ ter Zeitraum vergangen ist, sicher einen bestimmten Wert ausgibt.
Zur Lösung dieses Problemes ist es notwendig, zusätzlich das Mit­ tel zur Einstellung des bestimmten Wertes zum Zwingen der Ausgabe der Logikschaltung zur Zurückkehr zu einem bestimmten Wert vor­ zusehen, wie zum Beispiel die oben erwähnte Rücksetzschaltung.
Das Ergebnis ist die Herstellung des Mittels zum Einstellen des bestimmten Wertes bei der Herstellung der zu simulierenden Schal­ tung als tatsächliche logische Schaltung, das nur bei der Logik­ simulation benötigt wird. Dieses resultiert in einer vergrößerten Schaltungsgröße und einem lästigen Schritt des Anlegens eines externen Signals zur Steuerung des hinzugefügten Mittels zum Ein­ stellen des bestimmten Wertes, was zu einer Reduzierung des Inte­ grationsgrades und einer Reduzierung der Effizienz der tatsäch­ lich hergestellten Logikschaltung führt.
Es ist Aufgabe der vorliegenden Erfindung, einen Logiksimulator zu ermöglichen, der zur Ausführung einer Logiksimulation ohne Reduzierung des Integrationsgrades und der Effizienz der tatsäch­ lich herzustellenden Logikschaltung in der Lage ist.
Diese Aufgabe wird gelöst durch einen Logiksimulator nach An­ spruch 1 oder 6 oder 11.
Weiterbildungen der Erfindung sind in den Unteransprüchen gekenn­ zeichnet.
Ein Logiksimulator weist auf: ein Netzlistenliefermittel zum Lie­ fern einer Netzliste, die die Vorrichtungen, die eine zu simulie­ rende Schaltung bilden, und die Verbindung zwischen den Vorrich­ tungen spezifiziert; ein Makrozellendatenliefermittel zum Liefern von Makrozellendaten, die die Makrozellen, die die grundlegenden logischen (Booleschen) Tätigkeiten ausführen, spezifiziert; ein Testmusterliefermittel zum Liefern eines Eingabetestmusters mit Zeitreihendaten eines externen Eingabesignals zur Logiksimula­ tion; und ein Simulationsausführmittel, das die Netzliste, die Makrozellendaten und das Eingabetestmuster empfängt, zum Ausfüh­ ren der Logiksimulation der Schaltung für jede Makrozelle auf der Basis des Eingabetestmusters, wobei das Simulationsausführmittel eine Eingabe einer Makrozelle in der Form eines logischen (Boo­ leschen) Ausdrucks zum Ausführen einer logischen Operation, wenn die Eingabe einen unbestimmten Wert aufweist, empfängt.
Bevorzugterweise weist das Simulationsausführmittel auf: ein Si­ gnaländerungsdetektionsmittel, das die Netzliste und das Eingabe­ muster empfängt, zum Erkennen einer Änderung des externen Einga­ besignals, das von dem Eingabetestmuster gegeben wird, und eine Änderung eines internen Signals zwischen den Makrozellen in der Schaltung zur Ausgabe einer Signalerkennungsinformation; und ein Logiktätigkeitsanalysiermittel, das die Netzliste, die Makrozel­ lendaten und die Signalerkennungsinformation empfängt, zum Analy­ sieren einer logischen Tätigkeit für jede Makrozelle, die durch die Makrozellendaten spezifiziert ist, für die Schaltung auf der Basis der Signaländerungen, die durch die Signalerkennungsinfor­ mation gegeben werden, wobei das Logiktätigkeitsanalysiermittel eine Eingabe einer Makrozelle in der Form eines logischen Aus­ drucks basierend auf einem Eingabesignal von der dieser direkt vorhergehenden Makrozelle zum Ausführen einer logischen Opera­ tion, wenn die Eingabe einen unbestimmten Wert aufweist, emp­ fängt.
Das Simulationsausführmittel des Logiksimulators akzeptiert die Eingabe einer Makrozelle in der Form des logischen Ausdrucks zum Ausführen der logischen Operation, falls die Eingabe den unbe­ stimmten Wert während der Ausführung der Logiksimulation auf­ weist. Die logische Operation basierend auf dem logischen Aus­ druck erlaubt eine vorbestimmte Wahrscheinlichkeit der Lieferung eines bestimmten Wertes.
Als ein Ergebnis wird die Notwendigkeit eliminiert, eine zusätz­ liche Schaltung wie eine Rücksetzschaltung vorzusehen, die zum Zwingen der Ausgabe einer Makrozelle, die den unbestimmten Wert ausgibt, zur Einstellung auf einen bestimmten Wert vorgesehen ist. Dies erhöht den Integrationsgrad und die Effizienz der tat­ sächlich herzustellenden Logikschaltung nach der Logiksimulation.
Nach einer anderen Ausführungsform weist der Logiksimulator auf: ein Netzlistenliefermittel zum Liefern einer Netzliste, die die Vorrichtungen, die eine zu simulierende Schaltung bilden, und die Verbindung zwischen den Vorrichtungen spezifiziert; ein Makrozel­ lendatenliefermittel zum Liefern von Makrozellendaten, die ver­ schiedene Makrozellen, die grundlegende logische Tätigkeiten aus­ führen, spezifiziert, wobei das Makrozellendatenliefermittel min­ destens eine sequentielle Schaltungsvorrichtung als eine Makro­ zelle spezifiziert; ein Testmusterliefermittel zum Liefern eines Eingabetestmusters mit Zeitreihendaten (Zeitablaufsdaten) eines externen Eingabesignals zur Logiksimulation; ein Suchmittel für sequentielle Schaltungsvorrichtungen, das die Netzliste und die Makrozellendaten empfängt, zum Absuchen der Schaltung nach einer sequentiellen Schaltungsvorrichtung zur Ausgabe eines Suchergeb­ nisses in der Form einer Information über sequentielle Schal­ tungsvorrichtungen; ein Extraktions- bzw. Herausziehmittel für eine sequentielle Schaltungsvorrichtung mit Rückkopplung, das die Netzliste und die Information über sequentielle Schaltungsvor­ richtungen empfängt, zum Herausziehen bzw. Heraussuchen einer se­ quentiellen Schaltungsvorrichtung, die durch die Information über sequentielle Schaltungsvorrichtungen gegeben ist und eine Rück­ kopplungsschleife aufweist, zur Ausgabe einer Information über eine sequentielle Schaltungsvorrichtung mit Rückkopplung, die die herausgesuchte sequentielle Schaltungsvorrichtung als eine se­ quentielle Schaltungsvorrichtung mit Rückkopplung spezifiziert; und ein Simulationsausführmittel, das die Netzliste, die Makro­ zellendaten, das Eingabetestmuster und die Information über die sequentielle Schaltungsvorrichtung mit Rückkopplung empfängt, zum Ausführen einer Logiksimulation bei der Schaltung für jede Makro­ zelle auf der Basis des Eingabetestmusters, wobei das Simula­ tionsausführmittel, wenn eine Ausgabe der sequentiellen Schal­ tungsvorrichtung mit Rückkopplung einen unbestimmten Wert auf­ weist, den unbestimmten Wert durch n geteilte bestimmbare virtu­ elle bestimmte Werte (n 2) ersetzt und die Logiksimulation ba­ sierend auf den n virtuellen bestimmten Werten parallel zur Be­ stimmung der Resultate der logischen Operation ausführt, zur Aus­ gabe der Ergebnisse der logischen Operation an die Ausgabe der sequentiellen Schaltungsvorrichtung mit Rückkopplung, wenn alle Ergebnisse der logischen Operation basierend auf den n geteilten virtuellen bestimmten Werten gleich sind.
Nach einer dritten Ausführungsform weist der Logiksimulator auf: ein Netzlistenliefermittel zum Liefern einer Netzliste, die die Vorrichtungen, die eine zu simulierende Schaltung bilden, und die Verbindung zwischen den Vorrichtungen spezifiziert; ein Makrozel­ lendatenliefermittel zum Liefern von Makrozellendaten, die ver­ schiedene Makrozellen, die grundlegende logische Tätigkeiten aus­ führen, spezifizieren, wobei das Makrozellendatenliefermittel mindestens eine sequentielle Schaltungsvorrichtung als eine Ma­ krozelle spezifiziert; ein Testmusterliefermittel zum Liefern eines Eingabetestmusters mit Zeitreihendaten eines externen Ein­ gabesignals zur Logiksimulation; ein Liefermittel für eine Infor­ mation zu einer sequentiellen Schaltungsvorrichtung mit Rückkopp­ lung zum Liefern einer Information zu einer sequentiellen Schal­ tungsvorrichtung mit Rückkopplung, die eine sequentielle Schal­ tungsvorrichtung, die die Schaltung bildet und eine Rückkopp­ lungsschleife aufweist, als eine sequentielle Schaltungsvorrich­ tung mit Rückkopplung spezifiziert; und ein Simulationsausführ­ mittel, das die Netzliste, die Makrozellendaten, das Eingabetest­ muster und die Information zu einer sequentiellen Schaltungsvor­ richtung mit Rückkopplung empfängt, zum Ausführen einer Logiksi­ mulation bei der Schaltung für jede Makrozelle auf der Basis des Eingabetestmuster, wobei das Simulationsausführmittel, wenn eine Ausgabe der sequentiellen Schaltungsvorrichtung mit Rückkopplung einen unbestimmten Wert aufweist, den unbestimmten Wert durch n geteilte bestimmbare virtuelle bestimmte Werte (n 2) ersetzt und die Logiksimulation basierend auf den n virtuellen bestimmten Werten parallel zur Bestimmung der Ergebnisse der logischen Ope­ ration ausführt, um die Ausgabe der sequentiellen Schaltungsvor­ richtung mit Rückkopplung auf die Ergebnisse der logischen Opera­ tion zu setzen, wenn alle Ergebnisse der logischen Operation ba­ sierend auf den n geteilten virtuellen bestimmten Werten gleich sind.
Bevorzugterweise weist das Simulationsausführmittel auf: ein Si­ gnaländerungsdetektionsmittel, das die Netzliste und das Eingabe­ muster empfängt, zum Erkennen einer Änderung des externen Einga­ besignals, das durch das Eingabetestmuster gegeben wird, und ei­ ner Änderung eines internen Signals zwischen den Makrozellen in der Schaltung zur Ausgabe einer Signalerkennungsinformation; ein Zustandseinstellmittel für eine sequentielle Schaltungsvorrich­ tung, das die Signaländerungsinformation und die Information zu einer sequentiellen Schaltungsvorrichtung mit Rückkopplung emp­ fängt, zum Teilen, auf die Erkennung einer sequentiellen Schal­ tungsvorrichtung mit Rückkopplung mit unbestimmter Wertausgabe unter den sequentiellen Schaltungsvorrichtungen mit Rückkopplung, die einen unbestimmten Wert ausgibt, des unbestimmten Wertes von der sequentiellen Schaltungsvorrichtungen mit Rückkopplung mit unbestimmter Wertausgabe in n ersetzbare virtuelle bestimmte Wer­ te, um dadurch n virtuelle Zustände zu setzen; ein Logiktätig­ keitsanalysiermittel, das die Netzliste, die Makrozellendaten und die Signalerkennungsinformation empfängt, zum Analysieren einer logischen Tätigkeit für jede Makrozelle, die durch die Makrozel­ lendaten spezifiziert ist, für die Schaltung auf der Basis der Signaländerungen, die durch die Signaländerungsinformation gege­ ben werden, wobei das Logiktätigkeitsanalysiermittel die logische Tätigkeit für die n virtuellen Zustände der sequentiellen Schal­ tungsvorrichtung mit Rückkopplung mit unbestimmter Wertausgabe analysiert, falls diese gefunden ist; und ein Bestimmungsmittel für die Ausgabe einer sequentiellen Schaltungsvorrichtung, das die Ergebnisse der Analyse der logischen Tätigkeit für die n vir­ tuellen Zustände der sequentiellen Schaltungsvorrichtung mit Rückkopplung mit unbestimmter Wertausgabe durch das Logiktätig­ keitsanalysiermittel empfängt, zum Einstellen der Ausgabe der se­ quentiellen Schaltungsvorrichtung mit Rückkopplung mit unbestimm­ ter Wertausgabe auf die Ergebnisse der Analyse der logischen Tä­ tigkeit, wenn alle Ergebnisse der Analyse der logischen Tätigkeit für die n virtuellen Zustände gleich sind.
Das Simulationsausführmittel des Logiksimulators der zweiten und der dritten Ausführungsform ersetzt, wenn die Ausgabe der sequen­ tiellen Schaltungsvorrichtung mit Rückkopplung einen unbestimmten Wert aufweist, den unbestimmten Wert durch n geteilte bestimmbare virtuelle bestimmte Werte (n 2) und führt eine Logiksimulation für die n virtuellen bestimmten Werte parallel aus, um die Ergeb­ nisse der logischen Operationen zu bestimmen. Wenn alle Ergebnis­ se der logischen Operation für die n geteilten virtuellen be­ stimmten Werte gleich sind, werden die Ergebnisse der logischen Operation als die Ausgabe der sequentiellen Schaltungsvorrichtung mit Rückkopplung eingestellt. Da die sequentielle Schaltungsvor­ richtung mit Rückkopplung die Eigenschaft aufweist, daß sie einen bestimmten Wert ausgibt, nachdem ein vorbestimmter Zeitraum ver­ strichen ist, nachdem sie irgendeinen Wert (z. B. einen unbestimm­ ten Wert) ausgegeben hat, wird einem unbestimmten Wert, der von der sequentiellen Schaltungsvorrichtung mit Rückkopplung ausgege­ ben wird, erlaubt, zu einem bestimmten Wert zurückzukehren.
Als ein Ergebnis wird die Notwendigkeit eliminiert, eine zusätz­ liche Schaltung wie eine Rücksetzschaltung vorzusehen, die zum Zwingen der Ausgabe der sequentiellen Schaltungsvorrichtung, die einen unbestimmten Wert ausgibt, zum Einstellen auf einen be­ stimmten Wert vorgesehen ist, wodurch der Integrationsgrad und die Effizienz der tatsächlich herzustellenden Logikschaltung nach der Logiksimulation erhöht wird.
Der Logiksimulator der dritten Ausführungsform weist das Informa­ tionsliefermittel für die sequentielle Schaltungsvorrichtung mit Rückkopplung auf, das die Information über die sequentielle Schaltungsvorrichtung mit Rückkopplung liefert, die die sequen­ tielle Schaltungsvorrichtung, die die zu simulierende Schaltung bildet und die Rückkopplungsschleife aufweist, als die sequen­ tielle Schaltungsvorrichtung mit Rückkopplung spezifiziert. Dieses erlaubt den vorherigen Ausschluß der gruppierten sequentiellen Schaltungsvorrichtungen in der Rückkopplungsschleife aus der Be­ trachtung, die nicht irgendwelche bestimmten Werte ausgeben wer­ den, wodurch eine Logiksimulation in einer kürzeren Zeit erreicht wird.
Weitere Merkmale und Zweckmäßigkeiten der Erfindung ergeben sich aus der Beschreibung von Ausführungsbeispielen anhand der Figu­ ren.
Von den Figuren zeigen:
Fig. 1 ein Blockdarstellung eines Logiksimulators nach einer ersten Ausführungsform;
Fig. 2 und 3 Ablaufdiagramme, die den Betrieb des Logiksi­ mulators der ersten Ausführungsform illu­ strieren;
Fig. 4 ein Schaltbild zum Beschreiben des Betriebes des Logiksimulators der ersten Ausführungs­ form;
Fig. 5 eine Blockdarstellung des Logiksimulators nach einer zweiten Ausführungsform;
Fig. 6 eine Blockdarstellung, die Details eines Si­ mulationsausführabschnittes des Logiksimula­ tors der zweiten Ausführungsform zeigt;
Fig. 7 bis 9 Ablaufdiagramme, die den Betrieb des Logiksi­ mulators der zweiten Ausführungsform illu­ strieren;
Fig. 10 ein Schaltbild zur Beschreibung des Betriebes des Logiksimulators der zweiten Ausführungs­ form;
Fig. 11 eine Wellenformdarstellung zur Beschreibung des Betriebes des Logiksimulators der zweiten Ausführungsform;
Fig. 12 eine Blockdarstellung des Logiksimulators entsprechend einer dritten Ausführungsform;
Fig. 13 eine Blockdarstellung, die Details des Simu­ lationsausführabschnittes des Logiksimulators der dritten Ausführungsform zeigt; und
Fig. 14 ein Schaltbild einer beispielhaften zu simu­ lierenden Schaltung.
Erste Ausführungsform
Fig. 1 ist eine Blockdarstellung eines Logiksimulator entspre­ chend einer ersten Ausführungsform.
Wie Fig. 1 zeigt, weist ein Simulationsausführabschnitt 10 einen Signaländerungsdetektor 1, einen Analysator 2 für logische (Boolesche) Tätigkeit (Logiktätigkeitsanalysator) und einen Detektor 3 für eine Simulationsendebedingung auf. Ein Liefermittel für eine Netzliste, das nicht gezeigt ist, legt eine Netzliste 4 mit In­ formationen, die die Vorrichtungen, die eine logische Schaltung bilden, die in ihrer Logik zu simulieren ist (zu logiksimulie­ ren), und die Verbindung zwischen den Vorrichtungen spezifiziert bzw. beinhaltet, an den Signaländerungsdetektor 1, den Logiktä­ tigkeitsanalysator 2 und den Simulationsendebedingungsdetektor 3.
Ein nicht gezeigtes Liefermittel für Makrozellendaten liefert an den Logiktätigkeitsanalysator 2 Makrozellendaten 5, die Informa­ tionen über logische Funktionsblöcke (Makrozellen) zum Ausführen grundlegender logischer (Boolescher) Tätigkeit spezifizieren. Ein Liefermittel für ein Eingabetestmuster, das nicht gezeigt ist, liefert ein Eingabetestmuster 6 mit Zeitreihendaten von externen Eingabesignalen zur Logiksimulation an den Signaländerungsdetek­ tor 1 und den Simulationsendebedingungsdetektor 3. Das Makrozel­ lendatenliefermittel kann ein Speichermittel (eine Speichervor­ richtung) sein, das die Makrozellendaten 5 in der Form einer Da­ tenbasis bzw. Datenbank enthält.
Der Signaländerungsdetektor 1 empfängt die Netzliste 4 und das Eingabetestmuster 6 und detektiert eine Änderung der externen Eingabesignale, die durch das Eingabetestmuster 6 gegeben werden, und eine Änderung eines internen Signals zwischen den Makrozellen in der Schaltung, die zu simulieren ist, während einer laufenden Simulationszeit, um eine Information über eine Signalerkennung (Signalerkennungsinformation) D1 an den Logiktätigkeitsanalysator 2 auszugeben.
Der Logiktätigkeitsanalysator 2 empfängt die Netzliste 4 und die Makrozellendaten 5 und führt eine Analyse der logischen Tätigkeit der Schaltung, die zu simulieren ist, mit einem Rechenbetrieb logischer (Boolescher) Ausdrücke, der später im Detail beschrie­ ben wird, auf der Basis der Signaländerungen, die durch die Si­ gnalerkennungsinformation des Signaländerungsdetektors 1 gegeben werden, aus.
Der Simulationsendebedingungsdetektor 3 ist in der Lage, eine Lo­ giksimulationsendzeit auf der Basis der Netzliste 4 und des Ein­ gabetestmusters 6 zu berechnen, oder die Logiksimulationsendezeit unter Berücksichtigung einer Signalfortpflanzungszeit basierend auf der Netzliste 4 aus dem Ende der Eingabe des Eingabetestmu­ sters zu erhalten. Der Simulationsendebedingungsdetektor 3 aktua­ lisiert (updated) eine Simulationszeit zur Erkennung, ob die neue Simulationszeit gleich der Logiksimulationsendezeit ist oder nicht. Falls beurteilt wird, daß die erneuerte Simulationszeit gleich der Logiksimulationsendezeit ist, ist die Logiksimulation vollendet. Falls nicht, legt der Simulationsendebedingungsdetektor 3 die aktualisierte Simulationszeit an den Signaländerungsdetek­ tor 1 an, und die Logiksimulation wird fortgesetzt.
Fig. 2 ist ein Ablaufdiagramm, das die Logiksimulation des Lo­ giksimulators der ersten Ausführungsform erläutert.
Wie Fig. 2 zeigt, erkennt in Schritt S1 der Signaländerungsde­ tektor 1 die Änderung des externen Eingabesignals und die Ände­ rung des internen Signals bei der laufenden Simulationszeit auf der Basis der Netzliste 4 und des Eingabetestmusters 6, um das Signalerkennungssignal D1 an den Logiktätigkeitsanalysator 2 aus­ zugeben.
In Schritt S2 analysiert der Logiktätigkeitsanalysator 2 die logi­ sche Tätigkeit einer Makrozelle, die ein geändertes Eingabesignal aufweist, auf der Basis der Signalerkennungsinformation, die von dem Signaländerungsdetektor 1 gegeben wird.
Fig. 3 ist ein Ablaufdiagramm, das die Details der Logikanalyse aus Schritt S2 zeigt. Fig. 4 ist ein Schaltbild einer beispiel­ haften kombinatorischen Schaltung zur Beschreibung der Logikana­ lyse. Die kombinatorische Schaltung aus Fig. 4 wird im folgenden beschrieben.
Wie in Fig. 4 gezeigt, empfängt ein 4-Eingabe-UND-Gatter 121 Eingabesignale a bis d zur Ausgabe eines Signals SA, welches auch an einen ersten Eingang eines ODER-Gatters 123 angelegt wird. Ein UND-Gatter 122 empfängt die Eingabesignale a bis c und ein Ein­ gabesignal , welches das invertierte Signal des Signals d ist, zur Ausgabe eines Signals SC, welche ebenfalls an einen zweiten Eingang des ODER-Gatters 123 angelegt wird. Das ODER-Gatter 123 gibt ein Signal SB aus. Es sollte bemerkt werden, daß die UND- Gatter 121, 122 und das ODER-Gatter 123 aus Fig. 4 kombinatori­ sche Schaltungen sind.
Unter Bezugnahme auf Fig. 3 wird nun die Beschreibung der Analy­ se der logischen Tätigkeit durch den Logiktätigkeitsanalysator 2 unter Verwendung der kombinatorischen Schaltung aus Fig. 4 als ein Beispiel gegeben. Die Analyse wird für jede Makrozelle durch­ geführt, das heißt für jedes Gatter 121, 122, 123 in der kombina­ torischen Schaltung aus Fig. 4.
Die Anwesenheit eines unbestimmten Wertes X in dem Eingabesignal einer Makrozelle wird in Schritt S11 verifiziert. Der Ablauf schreitet zu Schritt S12 fort, falls ein unbestimmter Wert X vor­ handen ist, und der Ablauf schreitet zu Schritt S13 fort, falls er nicht vorhanden ist.
In Schritt S12 wird ein sich fortpflanzender logischer (Boole­ scher) Ausdruck (der später im Detail beschrieben wird) zusammen mit dem unbestimmten Wert X der vorhergehenden Makrozelle ausge­ geben. Zum Beispiel, wenn das ODER-Gatter 123 von momentanem In­ teresse für die Analyse der logischen Tätigkeit ist, wird eines der Eingabesignale SA bzw. SC derselben, welches den unbestimmten Wert X aufweist, durch einen sich fortpflanzenden logischen Aus­ druck, der von der vorhergehenden Makrozelle (dem UND-Gatter 121 oder dem UND-Gatter 122) ausgegeben wird, ersetzt.
Die logische Operation wird bei der Zielmakrozelle der Analyse der logischen Tätigkeit in Schritt S13 durchgeführt. Zu diesem Zeitpunkt, wenn es einen unbestimmten Wert X in der Eingabe der Makrozelle gibt, wird die Operation basierend auf dem sich fort­ pflanzenden logischen (Booleschen) Ausdruck, der für den unbe­ stimmten Wert X eingesetzt wird, ausgeführt.
In Schritt S14 wird verifiziert, ob die Ausgabe der Makrozelle (Ergebnis der Operation) bestimmt ist. Falls sie bestimmt ist, wird der bestimmte Wert in Schritt S17 ausgegeben, und die Ver­ arbeitung bzw. der Verarbeitungsablauf ist vervollständigt. Falls sie unbestimmt ist, schreitet der Ablauf zu Schritt S15 fort.
In Schritt S15 wird der sich fortpflanzende logische (Boolesche) Ausdruck für die Makrozelle des Ziels der Analyse der logischen Tätigkeit berechnet. Zum Beispiel wird der sich fortpflanzende logische Ausdruck des UND-Gatters 121 in der Form eines logischen (Booleschen) Ausdrucks d berechnet, wobei das UND-Gatter 121 das Ziel ist, und die Eingabesignale a bis c "1" sind, während das Eingabesignal d unbestimmt X ist.
In Schritt S16 wird verifiziert, ob die Ausgabe des sich fort­ pflanzenden logischen Ausdrucks, der in Schritt S15 berechnet wurde, bestimmt ist. Falls sie bestimmt ist, wird der bestimmte Wert in Schritt S17 ausgegeben, und der Verarbeitungsablauf ist vervollständigt.
Falls sie in Schritt S16 unbestimmt ist, wird ein Satz aus dem unbestimmten Wert X und dem in Schritt S15 bestimmten sich fort­ pflanzenden logischen Ausdruck als die Ausgabe der Makrozelle an die nachfolgende Makrozelle ausgegeben, und der Verarbeitungsab­ lauf ist vervollständigt.
Ein Beispiel der Analyse der logischen Tätigkeit für die Schal­ tung aus Fig. 4 wird im folgenden diskutiert, wobei die Eingabe­ signale a bis c "1" sind, während das Eingabesignal d () unbe­ stimmt X ist und die Reihenfolge der Analyse das UND-Gatter 121, das UND-Gatter 122 und das ODER-Gatter 123 ist. Der sich fort­ pflanzende logische Ausdruck des Eingabesignals d wird als d dar­ gestellt, und der sich fortpflanzende logische Ausdruck des in­ vertierten Eingabesignals wird als dargestellt.
Eine erste der Analyse der logischen Tätigkeit zu unterwerfende Makrozelle ist das UND-Gatter 121.
Da es einen unbestimmten Wert X in dem Eingabesignal d des UND-Gatters 121 gibt, bewegt sich der Ablauf von Schritt S11 zu Schritt S12, in welchem der sich fortpflanzende logische Ausdruck d des Eingabesignals d angeführt bzw. zitiert wird.
Die logische Operation des UND-Gatters 121 wird in Schritt S13 ausgeführt. Das Ergebnis der logischen Operation ist unbestimmt X, da das Eingabesignal d den unbestimmten Wert X hat.
Dann schreitet der Ablauf von Schritt S14 zu Schritt S15 fort, in welchem der sich fortpflanzende logische Ausdruck berechnet wird, so daß der sich fortpflanzende logische Ausdruck des UND-Gatters 121 wie oben beschrieben der logische Ausdruck d ist.
Der Ablauf schreitet von Schritt S16 zu Schritt S18 fort, da der logische Ausdruck d unbestimmt ist. In Schritt S18 wird ein Satz aus dem unbestimmten Wert X und dem sich fortpflanzenden logi­ schen Ausdruck d als die Ausgabe des UND-Gatters 121 ausgegeben, und die Prozedur ist vollendet.
Das UND-Gatter 122 ist dann die zweite der Analyse der logischen Tätigkeit zu unterwerfende Makrozelle.
Da es einen unbestimmten Wert X in dem invertierten Eingabesignal des UND-Gatters 122 gibt, schreitet der Ablauf von Schritt S11 zu Schritt S12 fort, in welchem der sich fortpflanzende logische Ausdruck des invertierten Eingabesignals zitiert wird.
Die logische Operation des UND-Gatters 122 wird in Schritt S13 ausgeführt. Das Ergebnis der logischen Operation ist unbestimmt X, da das invertierte Eingabesignal d den unbestimmten Wert X hat.
Dann schreitet der Ablauf von Schritt S14 zu Schritt S15 fort, in welchem der sich fortpflanzende logische Ausdruck berechnet wird, so daß der sich fortpflanzende logische Ausdruck des UND-Gatters 122 der logische Ausdruck ist, in derselben Art und Weise wie bei dem UND-Gatter 121.
Da der logische Ausdruck unbestimmt ist, schreitet der Ablauf von Schritt S16 zu Schritt S18 fort, in welchem der unbestimmte Wert X und der sich fortpflanzende logische Ausdruck als die Ausgabe des UND-Gatters 122 ausgegeben werden, und die Prozedur ist vervollständigt.
Das ODER-Gatter 123 ist dann eine dritte der Analyse der logi­ schen Tätigkeit zu unterwerfende Makrozelle.
Da es einen unbestimmten Wert X in der ersten und der zweiten Eingabe des ODER-Gatters 123 gibt, schreitet der Ablauf von Schritt S11 zu Schritt S12 fort, in welchem der sich fortpflan­ zende logische Ausdruck d für die erste Eingabe zitiert bzw. an­ geführt wird, wohingegen der sich fortpflanzende logische Aus­ druck für die zweite Eingabe zitiert wird.
Die logische Operation des ODER-Gatters 123 wird in Schritt S13 ausgeführt. Dann ist die logische Summe (ODER-Verknüpfung) des logischen (Booleschen) Ausdrucks d für die erste Eingabe und des logischen (Booleschen) Ausdrucks für die zweite Eingabe ein bestimmter Wert "1".
Der Ablauf schreitet demzufolge von Schritt S14 zu Schritt S17 fort, in welchem der bestimmte Wert "1" als die Ausgabe des ODER- Gatters 123 ausgegeben wird, und die Prozedur ist vervollstän­ digt.
Es gibt eine vorbestimmte Wahrscheinlichkeit des bestimmten Wer­ tes, der durch die logische Operation mit dem sich fortpflanzen­ den logischen Ausdruck in Reaktion auf die Eingabe des unbestimm­ ten Wertes X bestimmt wird.
Wie erneut Fig. 2 zeigt, folgt der Schritt S3 dem Schritt S2.
In Schritt S3 erneuert bzw. aktualisiert (updaten) der Simula­ tionsendebedingungsdetektor 3 die Simulationszeit zum Erkennen, ob die aktualisierte Simulationszeit gleich der Logiksimulationsen­ dezeit ist. Falls beurteilt wird, daß die aktualisierte Simula­ tionszeit gleich der Logiksimulationsendezeit ist, ist die Logik­ simulation vervollständigt. Falls nicht, beurteilt der Simula­ tionsendebedingungsdetektor 3, daß das die Fortsetzung der Logik­ simulation anzeigt und legt die aktualisierte Simulationszeit an den Signaländerungsdetektor 1 an. Dann kehrt der Ablauf zu Schritt S1 zurück.
Die Schritte S1 bis S3 werden wiederholt bis in Schritt S3 das Logiksimulationsende bestimmt bzw. erkannt wird.
Die Ausführung der logischen Operation, die den sich fortpflan­ zenden logischen Ausdruck anstelle des unbestimmten Wertes X ver­ wendet, wenn die Makrozelle das Eingabesignal mit dem unbestimm­ ten Wert X empfängt, erlaubt bzw. ermöglicht die vorbestimmte Wahrscheinlichkeit der Bestimmung der logischen Operation in Re­ aktion auf die unbestimmte Eingabe, was zuvor nicht erreichbar war.
Als Folge ist die Notwendigkeit eliminiert, eine zusätzliche Schaltung wie eine Rücksetzschaltung zum Zwingen der Ausgabe der Makrozelle, welche unbestimmt X ist, auf einen bestimmten Wert für die Logiksimulation vorzusehen.
Dies ermöglicht, daß die Logiksimulation der logischen Schaltung mit den tatsächlichen notwendigen Komponenten ausgeführt wird, wodurch ein Anstieg des Integrationsgrades und der Effizienz er­ reicht wird, was aus der reduzierten Schaltungsgröße und weniger externen Signalen der Logikschaltung, die für die Verwendung nach der Logiksimulation tatsächlich herzustellen ist, resultiert.
Zweite Ausführungsform
Fig. 5 ist eine Blockdarstellung des Logiksimulators nach einer zweiten Ausführungsform.
Wie Fig. 5 zeigt, liefert das nicht gezeigte Netzlistenliefer­ mittel die Netzliste 4 mit der Information, die die Vorrichtun­ gen, die die zu simulierende Schaltung bilden, und die Verbindung zwischen den Vorrichtungen spezifiziert, an einen Sucher 11 für eine sequentielle Schaltungsvorrichtung, einen Gruppierungsab­ schnitt 12 für sequentielle Schaltungen und einen Simulationsaus­ führabschnitt 13. Das nicht gezeigte Makrozellendatenliefermittel liefert die Makrozellendaten 5, die die Makrozelleninformation inklusive der Information über sequentielle Schaltungsvorrichtun­ gen spezifiziert, an den Sucher 11 für eine sequentielle Schal­ tungsvorrichtung und den Simulationsausführabschnitt 13. Das nicht gezeigte Eingabetestmusterliefermittel liefert das Eingabe­ testmuster 6 an den Simulationsausführabschnitt 13. Das Makrozel­ lendatenliefermittel kann ein Speichermittel (Speichervorrich­ tung) mit den Makrozellendaten 5 in der Form einer Datenbasis sein.
Der Sucher 11 für eine sequentielle Schaltung sucht die Netzliste 4 nach einer sequentiellen Schaltungsvorrichtung wie einem Flip- Flop unter Bezugnahme auf die Makrozellendaten 5 ab und gibt die resultierende Information D11 über eine oder mehrere sequentielle Schaltungsvorrichtungen an den Gruppierungsabschnitt 12 für se­ quentielle Schaltungsvorrichtungen aus. Eine Referenzinformation zur Beurteilung, ob Makrozellen, die die zu simulierende Schal­ tung bilden, sequentielle Schaltungsvorrichtungen sind oder nicht, wird von den Makrozellendaten 5 gegeben.
Der Gruppierungsabschnitt 12 für sequentielle Schaltungen akzep­ tiert bzw. empfängt die sequentiellen Schaltungsvorrichtungen, die durch die Information D11 für sequentielle Schaltungsvorrich­ tungen gegeben werden und gruppiert eine oder mehrere sequentiel­ le Schaltungsvorrichtungen oder Sätze von sequentiellen Schal­ tungsvorrichtungen mit derselben Rückkopplungsschleife zur Aus­ gabe einer Information D12 über gruppierte sequentielle Schal­ tungsvorrichtungen an den Simulationsausführabschnitt 13. Das heißt, daß der Gruppierungsabschnitt 12 für eine sequentielle Schaltungsvorrichtung einen Satz sequentieller Schaltungsvorrich­ tungen mit einer Mehrzahl von sequentiellen Schaltungsvorrichtun­ gen, welche eine Rückkopplungsschleife teilen, genauso wie eine einzelne sequentielle Schaltungsvorrichtung mit einer Rückkopp­ lungsschleife in eine Gruppe bringt bzw. eine solche bildet. Der Gruppierungsabschnitt 12 für eine sequentielle Schaltungsvorrich­ tung gibt dann an den Simulationsausführabschnitt 13 die Informa­ tion D12 für gruppierte sequentielle Schaltungsvorrichtungen aus, die die einzelne sequentielle Schaltungsvorrichtung mit einer Rückkopplungsschleife und den Satz von sequentiellen Schaltungs­ vorrichtungen, die eine Rückkopplungsschleife teilen bzw. gemein­ sam aufweisen, als gruppierte sequentielle Schaltungsvorrichtun­ gen spezifiziert.
Der Simulationsausführabschnitt 13 führt die Logiksimulation der Schaltung, die durch die Netzliste 4 spezifiziert ist, auf der Basis des Eingabetestmusters 6 aus. In diesem Fall wird eine ge­ teilte (aufgeteilte) Logiksimulation, die später beschrieben wird, für die gruppierten sequentiellen Schaltungsvorrichtungen, die durch die Information D12 für die gruppierten sequentiellen Schaltungsvorrichtungen spezifiziert sind, ausgeführt.
Fig. 6 ist eine Blockdarstellung, die die Details des Simula­ tionsausführabschnitts 13 aus Fig. 5 zeigt.
Wie Fig. 6 zeigt, liefert das nicht gezeigte Netzlistenliefer­ mittel die Netzliste 4 an einen Signaländerungsdetektor 15, einen Logiktätigkeitsanalysator 17 und einen Simulationsendebedingungsde­ tektor 19.
Das nicht gezeigte Makrozellendatenliefermittel liefert die Ma­ krozellendaten 5 an den Logiktätigkeitsanalysator 17. Das nicht gezeigte Eingabetestmusterliefermittel liefert das Eingabetestmu­ ster 6 an den Signaländerungsdetektor 15, den Logiktätigkeitsana­ lysator 17 und den Simulationsendebedingungsdetektor 19.
Der Signaländerungsdetektor 15 empfängt die Netzliste 4 und das Eingabetestmuster 6 und detektiert eine Änderung der externen Eingabesignale von dem Eingabetestmuster 6 und eine interne Si­ gnaländerung zwischen den Makrozellen in der zu simulierenden Schaltung während der laufenden Simulationszeit, um die Signal­ änderungsinformation an einen FF-Zustandseinstellabschnitt 16 aus zugeben.
Der FF-Zustandseinstellabschnitt 16 detektiert bzw. erkennt die sequentielle Schaltungsvorrichtung (FF, z. B. ein Flip-Flop), wel­ che den unbestimmten Wert X ausgibt, aus den gruppierten sequen­ tiellen Schaltungsvorrichtungen als ein unbestimmt haltendes FF (ein einen unbestimmten Wert haltendes FF) auf der Basis der Si­ gnalerkennungsinformation D15 und der Information D12 für die gruppierten sequentiellen Schaltungsvorrichtungen, und führt eine geteilte (aufgeteilte) Verarbeitung aus, so daß der unbestimmte Wert X, der von dem erkannten unbestimmt haltenden FF ausgegeben wird, mit allen Zuständen der bestimmbaren bestimmten Werte der Ausgabe des unbestimmt haltenden FF ersetzt wird. Dann gibt FF-Zustandseinstellabschnitt 16 eine Information D16 über bzw. für eine geteilte sequentielle Schaltungsvorrichtung an den Logiktä­ tigkeitsanalysator 17 aus.
Der Logiktätigkeitsanalysator 17 empfängt die Signalerkennungsin­ formation D15, die Information D16 für die geteilte sequentielle Schaltungsvorrichtung, die Netzliste 4 und die Makrozellendaten 5 und führt die Analyse der logischen Tätigkeit der simulierenden Schaltung auf der Basis der Signalerkennungsinformation D15 aus. Für den unbestimmt haltenden FF wird die Analyse der logischen Tätigkeit unter Verwendung aller geteilten bestimmten Werte auf der Basis der Information D16 für die geteilte sequentielle Schaltungsvorrichtung ausgeführt.
Ein FF-Zustandsanalysator 18 analysiert die geteilten Ausgabezu­ stände des unbestimmt haltenden FF aus dem Analyseergebnis der logischen Tätigkeit des Logiktätigkeitsanalysators 17 und verifi­ ziert, ob alle die geteilten Ausgabesignale des unbestimmt hal­ tenden FF gleich sind oder nicht. Falls sie alle gleich sind, wird die Einstellung des Teilens (der Aufteilung der Simulation) für den unbestimmt haltenden FF aufgehoben und der gleiche Si­ gnalwert wird danach verwendet. Falls sie nicht einmal teilweise gleich sind, wird die Einstellung des Teilens beibehalten.
Der Simulationsendebedingungsdetektor 19 ist in der Lage die End­ zeit der Logiksimulation (Logiksimulationendzeit) auf der Basis der Netzliste 4 und des Eingabetestmusters 6 zu berechnen, oder die Logiksimulationsendzeit unter Berücksichtigung der Signalaus­ breitungs- bzw. Fortpflanzungszeit basierend auf der Netzliste 4 aus dem Ende der Eingabe des Eingabetestmusters zu erhalten. Der Simulationsendebedingungsdetektor 19 aktualisiert die Simulations­ zeit zum Erkennen, ob die aktualisierte Simulationszeit gleich der Logiksimulationsendzeit ist oder nicht. Falls beurteilt wird, daß die aktualisierte Simulationszeit gleich der Logiksimula­ tionsendzeit ist, wird die Logiksimulation beendet. Falls nicht, wird die aktualisierte Simulationszeit an den Signaländerungsde­ tektor 15 angelegt, und die Logiksimulation wird fortgesetzt.
Die Fig. 7 bis 9 sind Ablaufdiagramme, die die Logiksimulation des Logiksimulators der zweiten Ausführungsform zeigen. Fig. 10 ist ein Schaltbild einer beispielhaften zu simulierenden Schal­ tung mit den DFFs, die sequentielle Schaltungsvorrichtungen sind. Das Schaltbild aus Fig. 10 wird im folgenden beschrieben.
Ein Eingabesignal SI wird an die ersten Eingänge von UND-Gattern 207 und 208 gemeinsam angelegt, wie in Fig. 10 gezeigt, und ein Eingabesignal SJ wird an einen zweiten Eingang des UND-Gatters 207 angelegt. Ein Taktsignal CLK wird an die Takteingänge der DFFs 211 bis 213 gemeinsam angelegt.
Die Ausgabe des UND-Gatters 207 wird an einen D-Eingang des DFF 211 angelegt. Eine Q-Ausgabe Q2 des DFF 211 wird nach außerhalb ausgegeben. Die Ausgabe des UND-Gatters 208 wird an einen D-Ein­ gang des DFF 212 angelegt. Eine Q-Ausgabe Q3 des DFF 212 wird nach außerhalb ausgegeben und außerdem an die ersten Eingänge eines Exklusiv-ODER-Gatters 209 und eines Exklusiv-NOR-Gatters 210 gemeinsam angelegt. Eine Q-Ausgabe Q4 des DFF 213 wird nach außerhalb ausgegeben und außerdem an die zweiten Eingänge des Exklusiv-ODER-Gatters 209 und des Exklusiv-NOR-Gatters 210 ge­ meinsam angelegt. Die Ausgabe des Exklusiv-ODER-Gatters 209 wird an einen zweiten Eingang des UND-Gatters 208 angelegt, und die Ausgabe des Exklusiv-NOR-Gatters 210 wird an einen D-Eingang des DFF 213 angelegt.
Unter Bezugnahme auf die Fig. 7 bis 9 wird die Beschreibung der Logiksimulation der zu simulierenden Logikschaltung aus Fig. 10 gegeben.
In Schritt S21 sucht der Sucher 11 für die sequentielle Schal­ tungsvorrichtung die Netzliste 4 nach einer sequentiellen Schal­ tungsvorrichtung wie einem Flip-Flop unter Berücksichtigung der Makrozellendaten 5 ab, um die resultierende Information D11 über die sequentielle Schaltungsvorrichtung an den Gruppierungsab­ schnitt 12 für sequentielle Schaltungen auszugeben.
Für die zu simulierende Schaltung aus Fig. 10 werden zum Bei­ spiel die DFFs 211 bis 213 als die sequentiellen Schaltungsvor­ richtungen erkannt. Derart ist die Information, die die DFFs 211 bis 213 als die sequentiellen Schaltungsvorrichtungen in der Schaltung aus Fig. 10 spezifiziert, die Information D11 für die sequentielle Schaltungsvorrichtung.
In Schritt S22 formt bzw. gruppiert der Gruppierungsabschnitt 12 für die sequentielle Schaltung die sequentielle Schaltungsvor­ richtung oder den sequentiellen Schaltungsvorrichtungssatz mit derselben Rückkopplungsschleife in eine Gruppe als die gruppierte sequentielle Schaltungsvorrichtung zur Ausgabe der Information D12 über gruppierte sequentielle Schaltungsvorrichtungen an den Simulationsausführabschnitt 13.
Für die zu simulierende Schaltung aus Fig. 10 wird zum Beispiel der DFF 211, der keine solche Rückkopplungsschleife aufweist, daß die Q-Ausgabe Q2 in den D-Eingang zurückgeführt bzw. rückgekop­ pelt wird, nicht gruppiert. Das ist so, da der DFF 211 fortfährt, die Q-Ausgabe Q2 mit dem unbestimmten Wert X auszugeben, bis ein bestimmter Wert an den D-Eingang desselben angelegt wird.
Bei dem DFF 212 andererseits wird die Q-Ausgabe Q3 in den D-Ein­ gang desselben über das Exklusiv-ODER-Gatter 209 und das UND-Gat­ ter 208 zurückgeführt bzw. rückgekoppelt, so daß er eine Rück­ kopplungsschleife aufweist und zu gruppieren ist. Zusätzlich weist der DFF 212 eine andere Rückkopplungsschleife auf, die durch den DFF 213 läuft, da die Ausgabe des DFF 212 in seine ei­ gene D-Eingabe über das Exklusiv-NOR-Gatter 210, den DFF 213, das Exklusiv-ODER-Gatter 209 und das UND-Gatter 208 zurückgeführt bzw. rückgekoppelt wird.
Der DFF 213, dessen Q-Ausgabe Q4 in den D-Eingang desselben über das Exklusiv-NOR-Gatter 210 rückgekoppelt wird, weist eine Rück­ kopplungsschleife auf und ist zu gruppieren. Zusätzlich weist der DFF 213 eine andere Rückkopplungsschleife auf, die durch den DFF 212 läuft, da die Ausgabe des DFF 213 in seinen eigenen D-Eingang über das Exklusiv-ODER-Gatter 209, das UND-Gatter 208, den DFF 212 und das Exklusiv-NOR-Gatter 210 rückgekoppelt wird.
Es wird beurteilt bzw. erkannt, daß die DFFs 211 und 213 in einem solchen Fall eine Rückkopplungsschleife teilen, da der DFF 213 auf der Rückkopplungsschleife des DFF 212 und der DFF 212 auf der Rückkopplungsschleife des DFF 213 liegt. Die DFFs 212 und 213 werden zusammen in einen gruppierten FF-Satz 214 gruppiert.
In Schritt S23 wird die Logiksimulation der zu simulierenden Schaltung auf der Basis des Eingabetestmusters 6 ausgeführt. Die geteilte bzw. Teilungs-Logiksimulation wird bei den gruppierten sequentiellen Schaltungsvorrichtungen, die durch die Information D12 für die gruppierten sequentiellen Schaltungsvorrichtungen spezifiziert sind, ausgeführt.
Die Details des Betriebs des Schrittes S23 werden im folgenden unter Bezugnahme auf Fig. 8 beschrieben.
In Schritt S31 erkennt der Signaländerungsdetektor 15 die Ände­ rungen der externen Eingabesignale und eines internen Signales während der laufenden Simulationszeit auf der Basis der Netzliste 4 und des Eingabetestmusters 6 zur Ausgabe der Signalerkennungs­ information D15 an den FF-Zustandseinstellabschnitt 16 und den FF-Zustandsanalysator 18.
In Schritt S32 führen der FF-Zustandseinstellabschnitt 16, der Logiktätigkeitsanalysator 17 und der FF-Zustandsanalysator 18 die logische Analyse mit der FF-Teilungsfunktion bei einer Makrozelle mit einem geänderten Eingabesignal auf der Basis der Signalerken­ nungsinformation D15 des Signaländerungsdetektors 15 aus.
Fig. 9 ist ein Ablaufdiagramm, das die Details der logischen Analyse mit der FF-Teilungsfunktion aus Schritt S32 zeigt. Unter Bezugnahme auf Fig. 9 wird die Beschreibung der Analyse der lo­ gischen Tätigkeit zum Beispiel für die zu simulierende Schaltung aus Fig. 10 durch den FF-Zustandseinstellabschnitt 16, den Lo­ giktätigkeitsanalysator 17 und den FF-Zustandsanalysator 18 gege­ ben.
In Schritt S41 detektiert der FF-Zustandseinstellabschnitt 16 die sequentielle Schaltungsvorrichtung (FF), die den unbestimmten Wert X ausgibt, aus den gruppierten sequentiellen Schaltungsvor­ richtungen als das unbestimmt haltende (den unbestimmten Wert haltende) FF auf der Basis der Signalerkennungsinformation, die in Schritt S31 gegeben wird, und der Information D12 für die gruppierten sequentiellen Schaltungsvorrichtungen. Falls ein un­ bestimmt haltendes FF detektiert wird, schreitet der Ablauf zu Schritt S42 fort. Falls keines detektiert wird, schreitet der Ab­ lauf zu Schritt S44 zum weiteren Ablauf durch den Logiktätigkeits­ analysator 17 fort.
Zum Beispiel für die zu simulierende Schaltung aus Fig. 10 ist aufgrund der Anwesenheit des gruppierten FF-Satzes 214 die Beur­ teilung in Schritt S41 gleich JA, wenn die Q-Ausgabe Q3 des DFF 212 oder die Q-Ausgabe Q4 des gruppierten FF-Satzes 214 unbe­ stimmt X ist.
Der FF-Zustandseinstellabschnitt 16 verifiziert, ob das unbe­ stimmt haltende FF der geteilten Verarbeitung in Schritt S42 un­ terworfen wurde. Falls nicht, wird in Schritt S43 die geteilte Verarbeitung so ausgeführt, daß der unbestimmte Wert X, der durch das unbestimmt haltende FF ausgegeben wird, durch virtuelle be­ stimmte Werte inklusive aller Zustände von bestimmbaren bestimm­ ten Werten der Ausgabe des unbestimmt haltenden FF ersetzt wird. Der FF-Zustandseinstellabschnitt 16 gibt dann die Information D16 für die geteilte sequentielle Schaltung aus. Der Ablauf schreitet dann zu Schritt S45 fort. Falls die geteilte Verarbeitung in Schritt S42 auf das unbestimmt haltende FF angewendet wurde, schreitet der Ablauf direkt zu Schritt S45 fort, ohne den Schritt S43 auszuführen.
Zum Beispiel für die zu simulierende Schaltung aus Fig. 10 lie­ fern die Q-Ausgaben Q3 und Q4 der DFFs 212 und 213 des gruppier­ ten FF-Satzes 214, falls sie den unbestimmten Wert X aufweisen, vier bestimmbare bestimmte Wertzustände (Q3, Q4) = (0, 0), (0, 1), (1, 0), (1, 1) während eines Zeitraumes T1 entsprechend der laufenden Simulationszeit, wie in Fig. 11 gezeigt. Demzufolge werden die Q-Ausgaben Q3 und Q4 dem geteilten Verarbeitungsablauf in den folgenden Zuständen unterworfen: C1 {=(0, 0)}, C2 {=(0, 1)}, C3 {=(1, 0)}, C4 {=(1, 1)} in der Form der virtuellen defi­ nierten Werte in Schritt S43.
In Schritt S45 akzeptiert der Logiktätigkeitsanalysator 17 die Netzliste 4 und Makrozellendaten 5 und führt die Analyse der lo­ gischen Tätigkeit der zu simulierenden Schaltung auf der Basis der Signalerkennungsinformation D15 von dem Signalerkennungsde­ tektor 15 aus. Zu diesem Zeitpunkt wird das unbestimmt haltende FF der Analyse der logischen Tätigkeit unter Verwendung aller der geteilten definierten Werte auf der Basis der Information D16 für die geteilte sequentielle Schaltungsvorrichtung unterworfen.
Zum Beispiel bei der Schaltung aus Fig. 10 wird, wenn die Q-Aus­ gaben Q3 und Q4 der DFFs 212 und 213 des gruppierten FF-Satzes 214, welche die unbestimmt haltenden FF sind, in die Zustände C1 bis C4 während des Zeitraums T1 geteilt werden, wie in Fig. 11 gezeigt, die Analyse der logischen Tätigkeit parallel für die Zustände C1 bis C4 ausgeführt.
Falls die Beurteilung in Schritt S41 NEIN ist, schreitet der Ab­ lauf zu Schritt S44 fort. Da es hier keine unbestimmt haltenden FF zur laufenden Simulationszeit gibt, akzeptiert der Logiktätig­ keitsanalysator 17 die Netzliste 4 und die Makrozellendaten 5 und führt die herkömmliche Analyse der Logiktätigkeit der zu simulie­ renden Schaltung aus. Der Ablauf schreitet dann zu Schritt S49 fort.
In Schritt S46 direkt auf den Schritt S45 folgend, analysiert der FF-Zustandsanalysator 18 die geteilten Ausgabezustände des unbe­ stimmt haltenden FF auf der Basis des Ergebnisses der Analyse der logischen Tätigkeit aus Schritt S45 und verifiziert, ob alle ge­ teilten Ausgabesignale des unbestimmt haltenden FF gleich sind oder nicht.
Falls in Schritt S46 die Beurteilung JA ist, dann ersetzt der FF-Zustandsanalysator 18 den gleichen Wert des Ausgabesignals (der Ausgabesignale) durch den aktuellen bestimmten Wert, der durch das unbestimmt haltende FF in Schritt S47 ausgegeben wird, und stellt ein, daß die Teilung aufgehoben wird. Dies vervollständigt die Prozedur bzw. den Ablauf.
Falls in Schritt S46 die Beurteilung NEIN ist, dann behält der FF-Zustandsanalysator 18 den aktuellen Ausgabezustand des unbe­ stimmt haltenden FF mit den unbestimmten Wert X und behält außer­ dem die Einstellung der Teilung. Dies vervollständigt die Proze­ dur.
In der zu simulierenden Schaltung aus Fig. 10 zum Beispiel ist für die Zustände C1 und C4 (Q3, Q4) = (0, 1) und für die Zustände C2 und C3 ist (Q3, Q4) = (1, 0), während die laufende Simula­ tionszeit die Zeitperiode T2 ist. Die Signaländerungen (Zustände) basierend auf den geteilten bestimmten Werten sind nicht alle gleich, so daß die Beurteilung in Schritt S46 NEIN ist. Dann wer­ den der aktuelle unbestimmte Wert X der Q-Ausgaben Q3 und Q4 und die Einstellung der Teilung in die Zustände C1 bis C4 in Schritt S48 beibehalten.
Während der laufenden Simulationszeit in der Zeitperiode T3 ist (Q3, Q4) = (1, 0) für alle Zustände C1 bis C4 in der Schaltung aus Fig. 10. Alle der geteilten Ausgabesignale des unbestimmten FF sind gleich. In Schritt S46 ist die Beurteilung JA, und der aktuelle unbestimmte Wert X der Q-Ausgaben Q3 und Q4 wird durch (1,0) in Schritt S47 ersetzt, und die Einstellung der Teilung in die Zustände C1 bis C4 wird aufgehoben.
In Schritt S49, der direkt auf Schritt S44, gibt der FF-Zustands­ analysator 18 das Ergebnis der Logikanalyse aus Schritt S44 aus wie es ist, und die Prozedur (der Ablauf) ist vervollständigt.
Wie erneut Fig. 8 zeigt, folgt der Schritt S33 auf den Schritt S32.
In dem Schritt S33 aktualisiert der Simulationsendebedingungsde­ tektor 19 die Simulationszeit und erkennt, ob die aktualisierte Simulationszeit gleich der Logiksimulationsendezeit ist oder nicht. Falls er beurteilt, daß die aktualisierte Simulationszeit gleich der Logiksimulationsendzeit ist, ist die Logiksimulation beendet. Falls nicht, führt die Beurteilung zur Fortsetzung der Logiksimulation und der Simulationsendebedingungsdetektor 19 legt die aktualisierte Simulationszeit an den Signaländerungsdetektor 15 an. Der Ablauf kehrt zu Schritt S31 zurück.
Die Schritte S31 bis S33 werden wiederholt bis in Schritt S33 das Logiksimulationsende bestimmt wird.
Wie oben beschrieben wird der unbestimmte Wert X, falls er von der sequentiellen Schaltungsvorrichtung (FF) mit einer Rückkopp­ lungsschleife ausgegeben wird, durch alle bestimmbaren (mögli­ chen) bestimmten (definierten) Werte für den unbestimmten Wert X durch die geteilte Verarbeitung (das heißt parallel läuft jeder den möglichen Zuständen entsprechende Verarbeitungsablauf ab) ersetzt, und die Logikanalyse wird parallel für die entsprechen­ den geteilten Zustände durchgeführt. Dies ermöglicht eine vorbe­ stimmte Wahrscheinlichkeit der logischen Überprüfung, die basie­ rend auf einer unbestimmten Eingabe bestimmt wird, was zuvor nicht erreichbar war.
Als ein Ergebnis gibt es die Notwendigkeit nicht mehr, eine zu­ sätzliche Schaltung wie eine Rücksetzschaltung für die Logiksimu­ lation vorzusehen, die zum Zwingen der Ausgabe der sequentiellen Schaltungsvorrichtung, die unbestimmt X ist, in einen vorbestimm­ ten Wert vorgesehen ist.
Die Logiksimulation kann an der Logikschaltung mit allen tatsäch­ lich bzw. praktisch notwendigen Komponenten ausgeführt werden, wodurch der Integrationsgrad und die Effizienz erhöht werden, was aus der Reduzierung der Schaltungsgröße und der Reduzierung der Anzahl der externen Signale für die Logikschaltung, die tatsäch­ lich herzustellen ist, nach der Logiksimulation resultiert.
Dritte Ausführungsform
Fig. 12 ist eine Blockdarstellung des Logiksimulators entspre­ chend einer dritten Ausführungsform.
Wie Fig. 12 zeigt, liefert das nicht gezeigte Mittel zum Liefern der Netzliste die Netzliste an einen Simulationsausführabschnitt 13′. Das nicht gezeigte Mittel zum Liefern der Makrozellendaten liefert die Makrozellendaten 5 an den Simulationsausführabschnitt 13′. Das nicht gezeigte Mittel zum Liefern des Eingabetestmusters liefert das Eingabetestmuster 6 an den Simulationsausführab­ schnitt 13′.
Das nicht gezeigte Mittel zum Liefern der FF-Gruppierungsinforma­ tion liefert die FF-Gruppierungsinformation 7 an den Simulations­ ausführabschnitt 13′.
Die FF-Gruppierungsinformation 7 wird ursprünglich manuell oder anderweitig geliefert, indem eine oder mehrere sequentielle Schaltungsvorrichtungen mit einer Rückkopplungsschleife gruppiert werden, die einen definierten Wert ausgeben könnten, nachdem ein vorbestimmter Zeitraum abgelaufen ist, nachdem sie den unbestimm­ ten Wert X in der zu simulierenden Schaltung, die durch die Netz­ liste 4 spezifiziert ist, ausgegeben haben. Die Basis des Grup­ pierens der dritten Ausführungsform ist dieselbe wie die des Gruppierens in dem Gruppierungsabschnitt 12 für sequentielle Schaltungsvorrichtungen der zweiten Ausführungsform.
Der Simulationsausführabschnitt 13′ führt die Logiksimulation der Schaltung, die durch die Netzliste 4 spezifiziert ist, auf der Basis des Eingabetestmusters 6 aus. Zu diesem Zeitpunkt wird die geteilte Logiksimulation der gruppierten sequentiellen Schal­ tungsvorrichtungen, die durch die FF-Gruppierungsinformation 7 spezifiziert sind, in derselben Art und Weise wie bei dem Simula­ tionsausführabschnitt 13 der zweiten Ausführungsform ausgeführt.
Fig. 13 ist eine Blockdarstellung, die die Details des Simula­ tionsausführabschnittes 13′ aus Fig. 12 zeigt.
Wie Fig. 13 zeigt, liefert bzw. legt das nicht gezeigte Mittel zum Liefern der FF-Gruppierungsinformation die Gruppierungsinfor­ mation 7 an einen FF-Zustandseinstellabschnitt 16′.
Der FF-Zustandseinstellabschnitt 16′ detektiert die sequentielle Schaltungsvorrichtung (FF) mit dem unbestimmten Wert X aus den gruppierten sequentiellen Schaltungsvorrichtungen, die auf der Basis der Signalerkennungsinformation und der FF-Gruppierungsin­ formation 7 gesetzt sind, als die unbestimmt haltende FF und führt den geteilten Verarbeitungsablauf so aus, daß der unbe­ stimmte Wert X, der von der erkannten unbestimmt haltenden FF ausgegeben wird, durch alle bestimmbaren Zustände für die Ausgabe der unbestimmt haltenden FF als die virtuellen bestimmten Zustän­ de ersetzt werden. Der FF-Zustandseinstellabschnitt 16′ gibt dann die Information D16 über die geteilte sequentielle Schaltungsvor­ richtung an den Logiktätigkeitsanalysator 17 aus.
Andere Anordnungen des Simulationsausführabschnittes 13′ der dritten Ausführungsform sind vergleichbar zu denen des Simula­ tionsausführabschnittes 13 der zweiten Ausführungsform, und die Beschreibung derselben wird hier weggelassen.
Der Betrieb der Logiksimulation der dritten Ausführungsform ist im wesentlichen identisch mit dem der zweiten Ausführungsform, der durch die Ablaufdiagramme der Fig. 7 bis 9 dargestellt ist, ausgenommen, daß die Schritte S21 und S22 aus Fig. 7 wegge­ lassen werden und daß der FF-Zustandseinstellabschnitt 16′ die FF-Gruppierungsinformation 7 anstelle der Information D12 für die gruppierten sequentiellen Schaltungsvorrichtungen in Schritt S41 aus Fig. 9 verwendet.
Der Logiksimulator der dritten Ausführungsform ist daher in der Lage, die Logiksimulation der Logikschaltung mit den tatsächlich notwendigen Komponenten in derselben Art wie der Logiksimulator der zweiten Ausführungsform auszuführen, wodurch der Integra­ tionsgrad und die Effizienz erhöht werden, was aus der Reduzie­ rung der Schaltungsgröße und der Anzahl der externen Signale für die tatsächlich herzustellende logische Schaltung nach der Logik­ simulation resultiert.
Zusätzlich erlaubt es der Logiksimulator der dritten Ausführungs­ form, bei dem die FF-Gruppierungsinformation 7 die der Informa­ tion D12 für die gruppierten sequentiellen Schaltungsvorrichtun­ gen der zweiten Ausführungsform entspricht, im voraus geliefert wird, im voraus die gruppierten sequentiellen Schaltungsvorrich­ tungen in der Rückkopplungsschleife, welche keine bestimmten Wer­ te ausgeben werden, aus der Betrachtung auszuschließen, wodurch die Logiksimulationszeit effektiv reduziert wird.

Claims (12)

1. Logiksimulator mit
einem Netzlistenliefermittel zum Liefern einer Netzliste (4), die Vorrichtungen, die eine zu simulierende Schaltung bilden, und die Verbindung zwischen den Vorrichtungen spezifiziert;
einem Makrozellendatenliefermittel zum Liefern von Makrozellen­ daten (5), die verschiedene Makrozellen, die grundlegende logi­ sche Tätigkeiten ausführen, spezifizieren;
einem Testmusterliefermittel zum Liefern eines Eingabetestmusters (6) mit Zeitreihendaten eines externen Eingabesignals zur Logik­ simulation; und
einem Simulationsausführmittel (10), das die Netzliste, die Ma­ krozellendaten und das Eingabetestmuster empfängt, zum Ausführen einer Logiksimulation der Schaltung für jede Makrozelle auf der Basis des Eingabetestmusters,
wobei das Simulationsausführmittel eine Eingabe einer Makrozelle in der Form eines logischen Ausdrucks zum Ausführen einer logi­ schen Operation, wenn die Eingabe einen unbestimmten Wert (X) aufweist, empfängt.
2. Logiksimulator nach Anspruch 1, dadurch gekennzeichnet, daß das Simulationsausführmittel aufweist:
ein Signaländerungsdetektionsmittel (1), das die Netzliste und das Eingabemuster empfängt, zum Erkennen einer Änderung des ex­ ternen Eingabesignals, das durch das Eingabetestmuster gegeben wird, und einer Änderung eines internen Signals zwischen den Ma­ krozellen in der Schaltung zur Ausgabe einer Signalerkennungsin­ formation (D1); und
einem Logiktätigkeitsanalysiermittel (2), das die Netzliste, die Makrozellendaten und die Signalerkennungsinformation empfängt, zum Analysieren einer logischen Tätigkeit für jede Makrozelle, die durch die Makrozellendaten spezifiziert ist, für die Schal­ tung auf der Basis der Signaländerungen, die durch die Signalän­ derungsinformation gegeben werden, wobei das Logiktätigkeitsanaly­ siermittel gegeben werden, wobei das Logiktätigkeitsanalysiermit­ tel eine Eingabe einer Makrozelle in der Form eines logischen Ausdrucks basierend auf einem Eingabesignal von deren direkt vor­ hergehender Makrozelle zum Ausführen einer logischen Operation, wenn die Eingabe einen unbestimmten Wert aufweist, empfängt.
3. Logiksimulator nach Anspruch 1 oder 2, gekennzeichnet durch ein Simulationsendebedingungserkennungsmittel (3) zum Erhalten einer Logiksimulationsendezeit auf der Basis der Netzliste und des Eingabetestmusters und zum Aktualisieren einer Simulations­ zeit, um das Ende der Logiksimulation, die durch durch das Simu­ lationsausführmittel ausgeführt wird, anzuzeigen, wenn die aktua­ lisierte Simulationszeit gleich der Logiksimulationsendezeit ist.
4. Logiksimulator nach Anspruch 2 oder 3, dadurch gekennzeich­ net, daß das Logiktätigkeitsanalysiermittel den unbestimmten Wert und den logischen Ausdruck, der auf dem Eingabesignal basiert, als eine Ausgabe einer Makrozelle, deren Ergebnis der Analyse der logischen Tätigkeit unbestimmt ist, ausgibt.
5. Logiksimulator nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß die Makrozelle eine kombinatorische Schaltung aufweist.
6. Logiksimulator mit
einem Netzlistenliefermittel zum Liefern einer Netzliste (4), die Vorrichtungen, die die zu simulierende Schaltung bilden, und die Verbindung zwischen den Vorrichtungen spezifiziert;
einem Makrozellenliefermittel zum Liefern von Makrozellendaten (5), die verschiedene Makrozellen, die grundlegende logische Tä­ tigkeiten ausführen, spezifizieren, wobei das Makrozellendaten­ liefermittel mindestens eine sequentielle Schaltungsvorrichtung als eine Makrozelle spezifiziert;
einem Testdatenliefermittel zum Liefern eines Eingabetestmusters (6) mit Zeitreihendaten eines externen Eingabesignals zur Logik­ simulation;
einem Suchmittel (11) für sequentielle Schaltungsvorrichtungen, das die Netzliste und die Makrozellendaten empfängt, zum Absuchen der Schaltung nach einer sequentiellen Schaltungsvorrichtung zur Ausgabe eines Suchergebnisses in der Form einer Information (D11) für sequentielle Schaltungsvorrichtungen;
einem Extraktionsmittel (12) für eine sequentielle Schaltungsvor­ richtung mit Rückkopplung, das die Netzliste und die Information für eine sequentielle Schaltungsvorrichtung empfängt, zum Heraus­ suchen einer sequentiellen Schaltungsvorrichtung, die durch die Information für eine sequentielle Schaltungsvorrichtung gegeben wird und die eine Rückkopplungsschleife aufweist, zum Ausgeben einer Information (D12) für die sequentielle Schaltungsvorrich­ tung mit Rückkopplung, die die herausgesuchte sequentielle Schal­ tungsvorrichtung als eine sequentielle Schaltungsvorrichtung mit Rückkopplung spezifiziert; und
einem Simulationsausführmittel (13), das die Netzliste, die Ma­ krozellendaten, das Eingabetestmuster und die Information für die sequentielle Schaltungsvorrichtung mit Rückkopplung empfängt, zum Ausführen einer Logiksimulation der Schaltung für jede Makrozelle auf der Basis des Eingabetestmusters,
wobei das Simulationsausführmittel, wenn eine Ausgabe der sequen­ tiellen Schaltungsvorrichtung mit Rückkopplung einen unbestimmten Wert (X) aufweist, den unbestimmten Wert durch n geteilte be­ stimmbare virtuelle bestimmte Werte (n 2) ersetzt und die Lo­ giksimulation basierend auf den n virtuellen bestimmten Werten parallel zur Bestimmung von Ergebnissen der logischen Operation ausführt, um die Ergebnisse der logischen Operation an die Aus­ gabe der sequentiellen Schaltungsvorrichtung mit Rückkopplung auszugeben, wenn alle Ergebnisse der logischen Operation basie­ rend auf den n geteilten virtuellen bestimmten Werten gleich sind.
7. Logiksimulator nach Anspruch 6, dadurch gekennzeichnet, daß das Simulationsausführmittel aufweist:
ein Signaländerungsdetektionsmittel (15), das die Netzliste und das Eingabetestmuster empfängt, zum Erkennen einer Änderung des externen Eingabesignals, das durch das Eingabetestmuster gegeben wird, und einer Änderung eines internen Signals zwischen den Ma­ krozellen in der Schaltung zur Ausgabe einer Signalerkennungsin­ formation (D15);
einem Zustandseinstellmittel (16) für eine sequentielle Schal­ tungsvorrichtung, das die Signaländerungsinformation und die In­ formation für die sequentielle Schaltungsvorrichtung mit Rück­ kopplung empfängt, zum Teilen eines unbestimmten Wertes (X), der von einer sequentiellen Schaltungsvorrichtung mit Rückkopplung mit unbestimmter Wertausgabe ausgegeben wird, in n ersetzbare virtuelle bestimmte Werte auf die Erkennung einer sequentiellen Schaltungsvorrichtung mit Rückkopplung mit unbestimmter Wertaus­ gabe, die einen unbestimmten Wert ausgibt, unter den sequentiel­ len Schaltungsvorrichtungen mit Rückkopplung, um dadurch n vir­ tuelle Zustände einzustellen;
einem Logiktätigkeitsanalysiermittel (17), das die Netzliste, die Makrozellendaten und die Signalerkennungsinformation empfängt, zum Analysieren einer logischen Tätigkeit von jeder der Makrozel­ len, die durch die Makrozellendaten spezifiziert sind, für die Schaltung auf der Basis der Signaländerungen, die durch die Si­ gnaländerungsinformation gegeben werden, wobei das Logiktätig­ keitsanalysiermittel die logische Tätigkeit für die n virtuellen Zustände der sequentiellen Schaltungsvorrichtung mit Rückkopplung mit unbestimmter Wertausgabe, falls diese gefunden wird, analy­ siert; und
einem Bestimmungsmittel (18) für die Ausgabe einer sequentiellen Schaltungsvorrichtung, das die Ergebnisse der Analyse der logi­ schen Tätigkeit für die n virtuellen Zustände der sequentiellen Schaltungsvorrichtung mit Rückkopplung mit unbestimmter Wertaus­ gabe durch das Logiktätigkeitsanalysiermittel empfängt, zum Ein­ stellen der Ausgabe der sequentiellen Schaltungsvorrichtung mit Rückkopplung mit unbestimmter Wertausgabe auf die Ergebnisse der Analyse der logischen Tätigkeit, wenn alle Ergebnisse der Analyse der logischen Tätigkeit für die n virtuellen Zustände gleich sind.
8. Logiksimulator nach Anspruch 6 oder 7, gekennzeichnet durch ein Simulationsendebedingungserkennungsmittel (19) zum Erhalten einer Logiksimulationsendezeit auf der Basis der Netzliste und des Eingabetestmusters und zum Aktualisieren einer Simulations­ zeit zum Anzeigen des Endes der Logiksimulation, die durch das Logiksimulationsmittel ausgeführt wird, wenn die aktuali­ sierte Simulationszeit gleich der Logiksimulationsendezeit ist.
9. Logiksimulator nach Anspruch 7 oder 8, dadurch gekennzeich­ net,
daß das Extraktionsmittel (12) für die sequentielle Schaltungs­ vorrichtung mit Rückkopplung eine Gruppe sequentieller Schal­ tungsvorrichtungen mit Rückkopplung, die durch Gruppieren einer Mehrzahl sequentiellen Schaltungsvorrichtungen mit Rückkopplung, die eine Rückkopplungsschleife teilen, beim Herausziehen der se­ quentiellen Schaltungsvorrichtungen mit Rückkopplung erhalten wird, identifiziert, um Information über die Gruppe sequentieller Schaltungsvorrichtungen mit Rückkopplung zu der Information über die sequentielle Schaltungsvorrichtung mit Rückkopplung hinzuzu­ fügen;
daß das Zustandseinstellmittel (16) für eine sequentielle Schal­ tungsvorrichtung auf die Erkennung einer Gruppe sequentieller Schaltungsvorrichtungen mit Rückkopplung mit unbestimmter Wert­ ausgabe, die einen unbestimmten Wert ausgeben, unter den Gruppen sequentieller Schaltungsvorrichtungen mit Rückkopplung den unbe­ stimmten Wert, der von der Gruppe sequentieller Schal­ tungsvorrichtungen mit Rückkopplung mit unbestimmter Wertausgabe ausgegeben wird, in n ersetzbare virtuelle bestimmte Werte teilt, um dadurch n virtuelle Zustände einzustellen;
daß das Logiktätigkeitsanalysiermittel (17) die logische Tätigkeit für die n virtuellen Zustände der Gruppe sequentieller Schal­ tungsvorrichtungen mit Rückkopplung mit unbestimmter Wertausgabe, falls diese gefunden wird, analysiert; und
daß das Bestimmungsmittel (18) für die Ausgabe der sequentiellen Schaltungsvorrichtung die Ergebnisse der Analyse der logischen Tätigkeit für die n virtuellen Zustände der Gruppe sequentieller Schaltungsvorrichtung mit Rückkopplung mit unbestimmter Wertaus­ gabe durch das Logiktätigkeitsanalysiermittel empfängt und die Ausgabe der Gruppe sequentieller Schaltungsvorrichtung mit Rück­ kopplung mit unbestimmter Wertausgabe auf die Ergebnisse der Ana­ lyse der logischen Tätigkeit einstellt, wenn alle Ergebnisse der Analyse der logischen Tätigkeit der n virtuellen Zustände gleich sind.
10. Logiksimulator nach einem der Ansprüche 6 bis 9, dadurch gekennzeichnet, daß die sequentielle Schaltungsvorrichtung ein Flip-Flop ist.
11. Logiksimulator mit:
einem Netzlistenliefermittel zum Liefern einer Netzliste (4), die Vorrichtungen, die eine zu simulierende Schaltung bilden, und die Verbindung zwischen den Vorrichtungen spezifiziert;
einem Makrozellendatenliefermittel zum Liefern von Makrozellenda­ ten (5), die verschiedene Makrozellen, die grundlegende logische Tätigkeiten ausführen, spezifizieren, wobei das Makrozellendaten­ liefermittel mindestens eine sequentielle Schaltungsvorrichtung als eine Makrozelle spezifiziert;
einem Testmusterliefermittel zum Liefern eines Eingabetestmusters (6) mit Zeitreihendaten eines externen Eingabesignals zur Logik­ simulation;
einem Liefermittel für Information für eine sequentielle Schal­ tungsvorrichtung mit Rückkopplung zum Liefern einer Information (7) für eine sequentielle Schaltungsvorrichtung mit Rückkopplung, die eine sequentielle Schaltungsvorrichtung, die die Schaltung bildet, und eine Rückkopplungsschleife aufweist, als eine sequen­ tielle Schaltungsvorrichtung mit Rückkopplung spezifiziert; und
einem Simulationsausführmittel (13′), das die Netzliste, die Ma­ krozellendaten, das Eingabetestmuster und die Information für die sequentielle Schaltungsvorrichtung mit Rückkopplung empfängt, zum Ausführen einer Logiksimulation der Schaltung für jede Makrozelle auf der Basis des Eingabetestmusters, wobei das Simulationsausführmittel, wenn eine Ausgabe der sequen­ tiellen Schaltungsvorrichtung mit Rückkopplung einen unbestimmten Wert (X) aufweist, den unbestimmten Wert durch n geteilte be­ stimmbare virtuelle bestimmte Werte (n 2) ersetzt und die Lo­ giksimulation basierend auf den n virtuellen bestimmten Werten parallel ausführt, zur Bestimmung der Ergebnisse der logischen Operation, um die Ausgabe der Schaltungsvorrichtung mit Rückkopp­ lung auf die Ergebnisse der logischen Operation einzustellen, wenn alle Ergebnisse der logischen Operation basierend auf den n geteilten virtuellen bestimmten Werten gleich sind.
12. Logiksimulator nach Anspruch 11, dadurch gekennzeichnet, daß das Simulationsausführmittel aufweist:
ein Signaländerungsdetektionsmittel (15), das die Netzliste und das Eingabetestmuster empfängt, zum Erkennen einer Änderung des externen Eingabesignals, das durch das Eingabetestmuster gegeben wird, und einer Änderung eines internen Signals zwischen den Ma­ krozellen in der Schaltung zur Ausgabe einer Signalerkennungsin­ formation;
ein Zustandseinstellmittel (16′) für eine sequentielle Schal­ tungsvorrichtung, das die Signalerkennungsinformation und die In­ formation für die sequentielle Schaltungsvorrichtung mit Rück­ kopplung empfängt, zum Teilen des unbestimmten Wertes, der durch eine sequentielle Schaltungsvorrichtung mit Rückkopplung mit un­ bestimmter Wertausgabe ausgegeben wird, in n ersetzbare virtuelle bestimmte Werte auf die Erkennung einer sequentiellen Schaltungs­ vorrichtung mit Rückkopplung mit unbestimmter Wertausgabe, die einen unbestimmten Wert ausgibt, unter den sequentiellen Schal­ tungsvorrichtungen mit Rückkopplung hin, um dadurch n virtuelle Zustände einzustellen;
ein Logiktätigkeitsanalysiermittel (17), das die Netzliste, die Makrozellendaten und die Signalerkennungsinformation empfängt, zum Analysieren einer logischen Tätigkeit jeder Makrozelle, die durch die Makrozellendaten spezifiziert ist, für die Schaltung auf der Basis der Signaländerungen, die durch die Signalerken­ nungsinformation gegeben werden, wobei das Logiktätigkeitsanaly­ siermittel die logische Tätigkeit für n virtuelle Zustände der sequentiellen Schaltungsvorrichtung mit Rückkopplung mit unbe­ stimmter Wertausgabe, falls diese gefunden wird, analysiert; und
ein Bestimmungsmittel (18) für die Ausgabe einer sequentiellen Schaltungsvorrichtung, das die Ergebnisse der Analyse der logi­ schen Tätigkeit für die n virtuellen Zustände der sequentiellen Schaltungsvorrichtung mit Rückkopplung mit unbestimmter Wertaus­ gabe durch das Logiktätigkeitsanalysiermittel empfängt, zum Ein­ stellen der Ausgabe der sequentiellen Schaltungsvorrichtung mit Rückkopplung mit unbestimmter Wertausgabe auf die Ergebnisse der Analyse der logischen Tätigkeit, wenn alle Ergebnisse der Analyse der logischen Tätigkeit für die n virtuellen Zustände gleich sind.
DE4410731A 1993-03-29 1994-03-28 Logiksimulator Withdrawn DE4410731A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5069557A JPH06282600A (ja) 1993-03-29 1993-03-29 論理シミュレーション装置

Publications (1)

Publication Number Publication Date
DE4410731A1 true DE4410731A1 (de) 1994-10-06

Family

ID=13406173

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4410731A Withdrawn DE4410731A1 (de) 1993-03-29 1994-03-28 Logiksimulator

Country Status (4)

Country Link
US (1) US5541861A (de)
JP (1) JPH06282600A (de)
CA (1) CA2119284C (de)
DE (1) DE4410731A1 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3124417B2 (ja) * 1993-07-13 2001-01-15 三菱電機株式会社 論理シミュレーションシステム及び論理シミュレーション方法
US5724504A (en) * 1995-06-01 1998-03-03 International Business Machines Corporation Method for measuring architectural test coverage for design verification and building conformal test
JP3161314B2 (ja) * 1996-01-19 2001-04-25 ヤマハ株式会社 論理シミュレーション装置および論理シミュレート方法
US6311146B1 (en) * 1997-12-05 2001-10-30 Lucent Technologies Inc. Circuit simulation with improved circuit partitioning
JP3848152B2 (ja) * 2001-12-20 2006-11-22 株式会社東芝 多機能icカード
KR101205325B1 (ko) 2006-05-12 2012-11-29 삼성전자주식회사 시뮬레이션 시스템 및 그 방법
CN105205191B (zh) * 2014-06-12 2018-10-12 济南概伦电子科技有限公司 多速率并行电路仿真

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0404482A2 (de) * 1989-06-23 1990-12-27 Stanley M. Hyduke Simulation von ausgewählten Logik-Schaltungsentwürfen

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63145549A (ja) * 1986-12-09 1988-06-17 Hitachi Ltd 論理回路シミユレ−シヨン方法
US4961156A (en) * 1987-10-27 1990-10-02 Nec Corporation Simulation capable of simultaneously simulating a logic circuit model in response to a plurality of input logic signals
US5164911A (en) * 1989-12-15 1992-11-17 Hewlett-Packard Company Schematic capture method having different model couplers for model types for changing the definition of the schematic based upon model type selection
US5177440A (en) * 1989-12-27 1993-01-05 Lsi Logic Corporation Testing of integrated circuits using clock bursts
US5220512A (en) * 1990-04-19 1993-06-15 Lsi Logic Corporation System for simultaneous, interactive presentation of electronic circuit diagrams and simulation data
US5278769A (en) * 1991-04-12 1994-01-11 Lsi Logic Corporation Automatic logic model generation from schematic data base
US5363319A (en) * 1990-09-29 1994-11-08 Kabushiki Kaisha Toshiba Logic simulator
US5325309A (en) * 1991-04-30 1994-06-28 Lsi Logic Corporation Method and apparatus for integrated circuit diagnosis

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0404482A2 (de) * 1989-06-23 1990-12-27 Stanley M. Hyduke Simulation von ausgewählten Logik-Schaltungsentwürfen

Also Published As

Publication number Publication date
US5541861A (en) 1996-07-30
CA2119284C (en) 1998-06-30
CA2119284A1 (en) 1994-09-30
JPH06282600A (ja) 1994-10-07

Similar Documents

Publication Publication Date Title
DE69838835T2 (de) Verfahren zur Prüfung und zur Darstellung einer Hardware durch Zerlegung und Aufteilung
DE4108590C2 (de) Verfahren zum Benchmark-Testen der Arbeitsgeschwindigkeit eines Computersystem
DE3900750A1 (de) Wissensbasis - verfahren - vorrichtung zum entwerfen integrierter schaltungen mittels funktionaler spezifikationen
DE10039538A1 (de) Vorrichtung und Methode zum Analysieren der Leistung eines Computerprogramms
DE19937232A1 (de) Entwicklungs- und Bewertungssystem für integrierte Halbleiterschaltungen
DE102004036813A1 (de) Verfahren zum Erzeugen eines Schaltungsmodells
DE60012735T2 (de) Verfahren zur unterscheidung von verschiedenen typen von abtastfehlern, rechnerbasierte schaltungsemulation und fehlerdetektionssystem
DE112021002883T5 (de) Automatisierte rückmeldung und kontinuierliches lernen zur abfrageoptimierung
EP0580663A1 (de) Verfahren zur verifikation datenverarbeitender systeme.
DE10000451A1 (de) Taktsignalanalyseeinrichtung und Taktsignalanalyseverfahren
DE60110811T2 (de) Verfahren zur bereitstellung von bitweisen einschränkungen während einer test-generierung
DE4410731A1 (de) Logiksimulator
DE4327660C2 (de) Vorrichtung zum Herstellen einer und Herstellungsverfahren für eine integrierte Halbleiterschaltungsvorrichtung und elektronische Schaltungsvorrichtung
DE19530669A1 (de) Verfahren zum automatischen Auswählen eines taktsteuernden Signalpfads in umprogrammierbaren Systemen zur Hardware-Emulation
EP1008067A1 (de) Verfahren und system zur rechnergestützten ermittlung einer relevanz eines elektronischen dokuments für ein vorgebbares suchprofil
DE10213582B4 (de) Datenberechnungsvorrichtung und Verfahren zur Anwendung der Datenberechnungsvorrichtung zur Einstellung einer elektronischen Steuereinrichtung
EP3812949A1 (de) Konfigurierbarer digitaler zwilling
EP1771798B1 (de) Verfahren der bewertung der güte eines computerprogramms
WO2005109196A1 (de) Verfahren zur bestimmung von verklemmungen in nebenläufigen prozessen
EP1297425B1 (de) Verfahren und vorrichtung für die optimierung eines testprogramms
DE10300699A1 (de) Analyseverfahren für eine integrierte Schaltung und Programmprodukt
DE112018006331B4 (de) Testfallgenerierungsvorrichtung, Testfallgenerierungsverfahren und Testfallgenerierungsprogramm
DE19924242C2 (de) Vektorrestauration mit beschleunigter Validation und Verfeinerung
DE10200833A1 (de) Gerät und Verfahren für eine Teststimuliverdichtung
DE102020215589A1 (de) Steuern eines deep-sequence-modells mit prototypen

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8139 Disposal/non-payment of the annual fee