DE69033360T2 - Simulation von ausgewählten Logik-Schaltungsentwürfen - Google Patents
Simulation von ausgewählten Logik-SchaltungsentwürfenInfo
- Publication number
- DE69033360T2 DE69033360T2 DE69033360T DE69033360T DE69033360T2 DE 69033360 T2 DE69033360 T2 DE 69033360T2 DE 69033360 T DE69033360 T DE 69033360T DE 69033360 T DE69033360 T DE 69033360T DE 69033360 T2 DE69033360 T2 DE 69033360T2
- Authority
- DE
- Germany
- Prior art keywords
- design
- simulation
- data
- netlist
- logic circuit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
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
- 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/318378—Generation of test inputs, e.g. test vectors, patterns or sequences of patterns for devices arranged in a network
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Tests Of Electronic Circuits (AREA)
Description
- Die vorliegende Erfindung bezieht sich auf die Hochgeschwindigkeitssimulation von logischen Schaltungsentwürfen, wie einer anwendungsspezifischen integrierten Schaltung (ASIC) und gedruckten Schaltungsplatten (pcb), und bezieht sich auch auf die Hochgeschindingkeitsprüfung von gedruckten Schaltungsplatten.
- Die Technik der Computersimulation oder der Prüfung von elektrischen Entwürfen ist gut etabliert. Ein Computermodell eines logischen Schaltungsentwurfes wird erzeugt, auf der Grundlage von integrierten Schaltungsmodellen (IC-Modellen) und ihren Verbindungen. Dieses logische Schaltungsentwurfsmodell wird dann mit Signalen induziert, die Signale emulieren, die an tatsächliche, gedruckte Schaltungsplatten angelegt werden, die nach dem vorerwähnten, elektrischen Entwurf aufgebaut sind.
- Wegen des Erfordernisses einer hohen Bearbeitungsgeschwindigkeit arbeitet die Software der Rechnerunterstützung von Ingenieuraufgaben (CAE), die elektrische Entwürfe simuliert, normalerweise an Ingenieursarbeitsplätzen, wie SUN und Apollo. Selbst diese teueren Hochleistungsarbeitsplätze können jedoch nicht mit Entwürfen von mehr als 40 000 bis 50 000 Schaltgliedern oder Zellen effizient umgehen. Da heutige Schaltgliederanordnungstechnologien die Herstellung einer integrierten Schaltung mit mehr als 100 000 Zellen und von gedruckten Schaltungsplatten mit mehr als 200 000 Schaltgliedern gestatten, ist eine neue Methode zur effizienten elektrischen Entwurfssimulation erforderlich.
- Aus D1 = US-A-4827427 ist ein Simulationssystem für Logik-Schaltungsentwürfe bekannt, enthaltend:
- eine Datentabellen-Erzeugungseinrichtung zur Erzeugung einer Entwurfselementedatentabelle und einer Netzlisten-Verknüpfungstabelle;
- eine Eingabeeinrichtung für Logik-Schaltungsentwürfe für die Eingabe von Logik-Schaltungs- Entwurfsdaten in die Datentabellen-Erzeugungseinrichtung;
- eine Testsignal- und Testvektoreingabeeinrichtung;
- eine Signaltabellen- und Speichereinrichtung, die integrierte Schaltungsmodelle als Bezug beim Simulieren ausgewählter logischer Schaltungsentwürfe speichert;
- eine Aufruftabelle, die Speicherzeiger für die integrierten Schaltungsmodelle speichert;
- eine Netzlisten-Übertragungstabelle zum Angeben der Übertragung von Signalen innerhalb der Signaltabelle entsprechend der Signalverteilung der Schaltung, die entworfen wird;
- eine Simulationseinrichtung, die die Ausgabe der Datentabellen-Erzeugungseinrichtung empfängt, wobei die Simulationseinrichtung umfaßt
- eine Ausführeinrichtung, um Simulations-Subroutinen von der Aufruftabelle und der Netzlisten- Übertragungstabelle auszuführen.
- Das Hauptproblem mit vorliegenden Simulatoren ist ihre mangelnde Kompatibilität mit dem Entwurfsvorgang. Jeder Entwurf wird in kleinen Abschnitten oder kleinen Entwurfsinkrementen entwickelt. Wenn irgendein Entwurfsproblem auftritt, dann lokalisiert und überprüft der Konstrukteur lediglich den Bereich des Entwurfsproblems. Unglücklicherweise simulieren die vorliegenden logischen Simulatoren elektrische Logikentwürfe in ihrer Gesamtheit, und sie können aufgrund ihrer Konstruktion nicht ausschließlich einen ausgewählten Entwurfsabschnitt simulieren. Selbst wenn der Konstrukteur gegenwärtig an einem kleinen Entwurfsabschnitt arbeitet, muß der Konstrukteur den gesamten Entwurf simulieren, was eine Menge Computerzeit verbraucht.
- In den letzten paar Jahren wurden die elektrischen Logikentwürfe, wie Schaltgliedanordnungen, so kompliziert, daß, um Kontrolle über die Entwurfsleistung zu haben, jeder Entwurfsabschnitt so simuliert werden muß, wie er entwickelt wurde. Da alle gegenwärtigen elektrischen Simulatoren den gesamten Entwurf simulieren, arbeiten sie langsam und sind schwierig zu benutzen. Die vorliegende Erfindung löst diese Engstelle bei der Simulation dadurch, daß sie die Simulation ausgewählter Logik-Entwurfsabschnitte gestattet. Außerdem können diese Logik-Entwurfsabschnitte gewählt und unmittelbar simuliert werden, ohne irgendeinen sichtbaren Verlust an Zeit für das Kompilieren.
- Die gegenwärtigen Simulatoren kompilieren Entwürfe in einer Sammelbetriebsart. Das bedeutet, daß jede Änderung im Entwurf, selbst eine kleine, zusammen mit dem gesamten Entwurf einige zehn Minuten lang kompiliert werden muß, bevor der Konstrukteur die Entwurfsänderung simulieren kann. Keiner der Sammelkompilatoren ist imstande, ausschließlich Entwurfsänderungen zu kompilieren.
- Die Signale, die elektrische Logik-Entwürfe hervorrufen, werden Testvektoren genannt. Um den Entwurf ordnungsgemäß durchzuführen, muß der Konstrukteur die Testvektoren oft modifizieren, um alle Kombinationen von Eingabe- und Ausgabebedingungen herauszufinden, die für die Wertung des Gesamtentwurfs notwendig sind. Unglücklicherweise sind die Änderungen der Testvektoren mit gegenwärtigen Simulatoren mühsam und zeitraubend, weil jede Änderung eines Testvektors Gegenstand einer langwierigen Sammelkompilation zusammen mit dem gesamtem Entwurf ist.
- Die gedruckten Schaltungsplatten sind so kompliziert geworden, daß ihre Überprüfung eine Menge spezialisierter Testeinrichtungen und geschultes Personal erfordert, um die hochkomplizierten Testeinrichtungen zu betreiben. Die Anwendung von Simulationswerkzeugen für die Prüfung von gedruckten Schaltungsplatten war nicht sehr erfolgreich, weil diese Simulatoren den gesamten Plattenentwurf simulieren und deshalb ungebührlich langsam im Betrieb sind.
- Es ist deshalb ein Ziel dieser Erfindung, ein neues System und Verfahren für die Hochgeschwindigkeitssimulation elektrischer Logik-Entwürfe vorzusehen, indem man die selektive Simulation von Entwurfsabschnitten gestattet.
- Ein anderes Ziel dieser Erfindung ist es, eine elektrische Simulationsumgebung auf der Grundlage eines inkrementellen Kompilators vorzusehen, der augenblicklich alle Entwurfsänderungen registriert und das Erfordernis für langwierige Sammelkompilationen von Entwurfsänderungen ausräumt. Es ist auch ein Ziel der Erfindung, langwierige Kompilationen von Testvektoränderungen auszuräumen, indem man einen neuen, inkrementellen Kompilator verwendet.
- Ein noch anderes Ziel dieser Erfindung ist es, ein billiges und schnelles System und ein billiges und schnelles Verfahren vorzusehen, um selektive Abschnitte einer gedruckten Schaltungsplatte zu testen.
- Der Zweck der Erfindung ist es, die Kosten der Entwicklung eines elektrischen Entwurfes dadurch zu senken, daß man die Simulationszeit beschneidet. Die vorliegende Erfindung erhöht auch die Zuverlässigkeit eines Entwurfes, indem sie es dem Konstrukteur erlaubt, jeden Entwurfsabschnitt feinabzustimmen. Die Werkzeuge und Techniken, die nachfolgend beschrieben werden, sind auf die hochschnelle Simulation elektrischer Logik-Entwürfe anwendbar, mit Schaltstellenanordnungen und gedruckten Schaltungsplatten. Diese Werkzeuge können in Verbindung mit billigen logischen Analyseeinrichtungen verwendet werden, um gedruckte Schaltungsplatten zu testen und bei ihnen Schwierigkeiten auszuräumen.
- Während logische Simulatoren wie etwa CADAT von Daisy Systems Corporation, HILO von GenRad Inc. und andere den gesamten Entwurf kompilieren und simulieren, simuliert der Simulator der vorliegenden Erfindung lediglich die Entwurfsabschnitte, die vom Konstrukteur ausdrücklich zur Simulation ausgewählt wurden.
- Diese Ziele und Zwecke werden von einem System erreicht, wie es im beigefügten Anspruch 1 beansprucht ist, sowie im Verfahren, wie es im beigefügten Anspruch 9 beansprucht ist.
- Das System und das Verfahren der vorliegenden Erfindung richten sich sowohl an Schaltstellenanordnungen, die elektronische Logik-Zellen benutzen, als auch an gedruckte Schaltungsplatten, die IC-Chips (integrierte Schaltungschips) benutzen. Der Einfachheit halber wird nachfolgend auf IC-Chips Bezug genommen. Es wird jedoch darauf hingewiesen, daß derselbe Vorgang, dieselbe Gesetzmäßigkeit und dieselbe Tätigkeit auch in gleicher Weise bei Schaltstellenanordnungszellen Anwendung findet.
- Ein erfindungsgemäßer Simulator beruht auf zwei dynamisch erzeugten Tabellen; eine Tabelle benutzter IC-Chips und eine Tabelle ihrer Verbindungen. Diese beiden Tabellen werden automatisch von einem inkrementellen Kompilator, der ein Teil des Simulators ist, während der Eingabe des Entwurfes erzeugt. Jede der ICs (integrierte Schaltungen) in der IC-Chiptabelle hat mehrere Flaggen. Eine der Flaggen gibt an, daß ein IC gegenwärtig durch den Simulator in Gebrauch steht. Wenn der Benutzer ICs zur Simulation hinzufügt oder von dieser wegläßt, dann werden die Flaggen dieser ICs entsprechend modifiziert. Während der Simulation werden diese Flaggen überprüft und alle IC-Chips mit "nicht benutzen"- Flagge werden übersprungen oder vom Simulationsprozeß ausgeschlossen.
- Der vorgenannte Simulator kann zur Störungssuche bei gedruckten Schaltungsplatten verwendet werden. Eine Gruppe von Signalen kann aus einem fehlerhaften Abschnitt der Platte aufgegriffen werden, beispielsweise mit Hilfe einer logischen Analyseeinrichtung, und in die entsprechenden Testpunkte und ICs eingegeben werden, die von einem computergestützten Simulator simuliert werden. Da die ICs, die mit der "nicht benutzen"-Flagge markiert sind, an der Simulation des Entwurfes nicht teilnehmen, erzeugt der Simulator Testergebnisse viel schneller. Da das System und das Verfahren der Erfindung den Plattentest um Größenordnungen beschleunigen, können billige PCs und logische Analyseeinrichtungen benutzt werden, um selbst die kompliziertesten gedruckten Schaltungsplatten zu testen.
- Die obigen und andere Merkmale der Erfindung werden aus den nachfolgenden Beschreibung und den beigefügten Zeichnungen voll verständlich, die nur beispielsweise vorgelegt sind und in denen:
- Fig. 1 ein Blockschaltbild eines Simulators nach der Erfindung ist,
- Fig. 2 ein Schema einer typischen Logikschaltung in einem RAM-Speicher (Zugriffspeicher) ist,
- Fig. 4A ein Beispiel einer Testvektoranzeige möglicher Wellenformen für die Auswahl ist,
- Fig. 4B ein Diagramm einer Zeigertabelle für Testvektoren ist,
- Fig. 4C eine Darstellung eines Abschnitts einer Testvektortabelle ist,
- Fig. 5 ein Blockschaltbild eines Systems zum Test von gedruckten Schaltungsplatten nach der Erfindung ist,
- Fig. 6 ein Flußdiagramm ist, das ein Softwareprogramm eines Datentabellengenerators zum Erzeugen von Datentabellen darstellt, und
- Fig. 7 ein Flußdiagramm eines Softwareprogramms zum Erzeugen einer ablaufbereiten Entwurfsimulations-Programmtabelle ist.
- Das Modellieren elektronischer Logikschaltungen in Software wird Simulation genannt. Der Simulator sollte alle Merkmale der echten Schaltung aufweisen, wie das funktionelle und zeitliche Verhalten. Die vorliegende Erfindung sorgt für eine beschleunigte Simulation der logischen Schaltungsentwürfe und für einen beschleunigten Test gedruckter Schaltungsplatten. Die allgemeine Besetzung mit Hardware nach der Erfindung ist in Fig. 5 gezeigt. Die Computereinrichtung 50 ist gleichartig zu bekannten Arbeitsplatzcomputern, wie dem IBM AT oder den Sun workstations, und sie umfaßt eine zentrale Verarbeitungseinheit 51, wobei ein Arbeitsspeicher (RAM-Speicher), ein Diskettenspeicher 52 (hard disc memory), eine Datenanzeige 53, eine Tastatur 54 und ein Drucker 55 zugeordnet sind. Solche Computer sind dem Fachmann so bekannt, daß hier keine detaillierte Beschreibung von ihrem Aufbau oder ihrer Wirkungsweise erforderlich ist.
- Fig. 1 stellt ein Blockschaltbild eines Simulators nach der vorliegenden Erfindung dar. Das schematische Eingangsprogramm 10a wird vom Konstrukteur für die Eingabe des Logik- Schaltungsentwurfes in Form schematischer Darstellungen verwendet. Ein Beispiel einer solchen schematischen Darstellung ist in Fig. 2 gezeigt. Netzlisten enthalten auch alle Informationen über das Systemverhalten, die für die Simulation erforderlich sind, was bedeutet, daß eine Netzlistendatei 10b eine Alternative zum schematischen Eingabeprogramm 10a sein kann.
- Der Datentabellengenerator 12 ist eine programmierte Routine, die Entwurfsdaten, die auf der Eingabe 11a oder 11b vom schematischen Eingangsprogramm 10a bzw. von der Netzlisten-Eingangsdatei 106 angeboten werden, umwandelt und eine Entwurfselemente-Datentabelle der Entwurfselemente erzeugt, die ICs, Anschlüsse bzw. Terminals, Schalter, Signalnamen und dergleichen umfaßt. So eine Tabelle für die logische Entwurfsschaltung der Fig. 2 ist in Tabelle 1A gezeigt. Nachfolgend wird der Ausdruck IC-Modell als stellvertretend für alle Entwurfselemente verwendet, die Modelle haben. Der Datentabellengenerator 12 überprüft jeden Gegenstand in den schematischen Daten, die auf der Signalleitung 11a oder von den Netzlistendaten her, die auf der Signalleitung 11b zugeführt werden, dargeboten werden, gegenüber einer Liste verfügbarer IC-Modelle, die in einem Modell-Bezugsindex 2 gespeichert sind, der ein Programmverzeichnis in einer Modell-Bezugsbibliothek 4 sein kann. Die Modell-Indextabelle 2 wird über die Signalleitung 3 in den Datentabellengenerator 12 eingegeben und sorgt für die Addresse einer Modell- Software-Subroutine, die in der IC-Modell-Bezugsbibliothek 4 gespeichert ist.
- Der Datentabellengenerator 12 vergleicht Daten auf den Signalleitungen 11a und 11b mit einer Liste von IC-Modellen im Modell-Bezugsindex 2 und erzeugt und speichert ihre Speicherzellen im Arbeitsspeicher (RAM-Speicher) in der Tabelle 1A. Wenn ein Entwurfselement auf der Signalleitung 11a oder 11b kein Modell im Modell-Bezugsindex 2 hat, dann wird seine Modellzeigerspalte auf "keines" gestellt und dieses Element wird nicht unmittelbar simuliert. Wenn das Entwurfselement ein Anschluß- oder Signalleitungsname ist, wird seine Identität in der geeigneten Spalte markiert, wie in der Entwurfselemente-Datentabelle 1A gezeigt. Die Spalte für "benutzte" oder aktive Entwurfselemente in der Tabelle ist eine Bezugsmarkierung dafür, welche Elemente an einer Entwurfssimulation teilnehmen sollten. Diese Spalte, wie später beschrieben, kann augenblicklich oder unmittelbar von einem Konstrukteur durch einen Eintritt sowohl vom schematischen Eingangsprogramm 10A her als auch vom Netzlisten-Eingangsprogramm 10b her modifiziert werden. ENTWURFSELEMENTE-DATENTABELLE 1A
- Der Datentabellengenerator 12 gibt in Tabelle 1A auch das Ende einer Gruppe von Befehlen oder Anweisungen an, die ein Makro genannt werden, wie A1 und B1. Die Verwendung dieser Information wird nachfolgend detaillierter in Bezug auf Tabelle 3 erläutert. Zusätzlich zur Entwurfselement-Datentabelle 1A, die die Liste simulierter Elemente umfaßt, erzeugt der Datentabellengenerator 12 auch aus Daten auf den Signaldatenleitungen 11a oder 11b eine Liste aller Verbindungen zwischen simulierten Elementen. Ein Beispiel solcher Konntektivitätsdaten für den Block B1 ist in Tabelle 1B gezeigt, in welcher der RAM- Zeiger A3C0 die Speicherzelle der B1-Makro-Konnektivitätsliste im RAM-Speicher angibt. NETZLISTEN-KONNEKTIVITÄTS-DATENTABELLE 1 B
- Alle ladefähigen IC-Modelle oder Software-Subroutinen sind in der IC-Modell-Bezugsbibliothek 4 gespeichert. Während der Erzeugung der Tabelle 1A sind nur Zeiger zu IC-Modellen in der Modell- Bezugsbibliothek 4 erforderlich. Diese Zeiger werden durch die Modell-Indextabelle 2 bereitgestellt, die im Modell-Bezugsindex 2 gespeichert ist.
- IC-MODELL RAM-ZEIGER
- 7400 2F0
- 7404 2F4
- 7408 2F8
- 7432 2FC
- Jeder Anschluß, jede Signalleitung und jeder IC-Anschlußstift haben eine automatisch vorbelegte RAM-Speicherzelle (Arbeits- bzw. Zugriffsspeicherzelle). Diese Vorbelegung wird vom Simulator 14 vorgenommen, wenn er die Daten von der Entwurfselemente-Datentabelle 1A abliest und das RAM- Erfordernis eines jeden Modells überprüft, das vom RAM-ZEIGER in der Modell-Indextabelle 2 bezeichnet wird. Ein Beispiel einer solchen RAM-Speicherzellenbelegung ist im Speicherdiagramm der Fig. 3 gezeigt, wo die RAM-Speicherzellenadresse 3B0 den logischen Signalwert am Anschlußstift 1 der logischen Schaltstelle B2 speichert. In gleichartiger Weise speichern die RAM-Speicherzellen 3B2 und 3B4 logische Signalwerte der Anschlußstifte 2 bzw. 3 der logischen Schaltstelle B2.
- Jedesmal, wenn ein Software-Aufruf an die IC-Modell-Subroutine in der Modell-Bezugsbibliothek 4 gemacht wird, errechnet eine Subroutine das IC-Modellverhalten und leitet neue Daten über das Verhalten an die RAM-Speicherzelle oder -Adresse zurück. Wenn eine Subroutine für das IC-Modell 7408 im Modell-Bezugsindex 2 aufgerufen wird, erhält sie ihre Eingaben von den RAM-Speicherzellen 3B0 und 3B2 und leitet den errechneten logischen Wert an die RAM-Speicherzelle 3B4 zurück. Dieser Vorgang wird für jede IC vorgenommen, die in der schematischen Aufstellung verwendet und in der Tabelle 1A aufgelistet ist. Um alle IC-Modelle auszuführen und die Ergebnisse an die empfangenden ICs zu übertragen, wird eine spezielle Tabelle 3 unter der Steuerung des Simulators 14 erzeugt. Die Technik der IC-Modellerstellung ist gut eingeführt und viele Firmen, wie ALDEC Company, 3525 Old Conejo Road, Newbury Park, Kalifornien, sorgen für große IC-Modellbibliotheken. Deshalb liegt kein Erfordernis vor, die IC-Modellstrukturen in einzelnen zu beschreiben, sondern nur deren Gebrauch.
- Der Simulator 14 empfängt Daten der Tabelle 1A und 1B vom Datentabellengenerator 12 auf der Signalleitung 13 und erzeugt automatisch die Entwurfsimulations-Programmtabelle 3, die einen Satz ausführbarer Subroutinen für IC-Modelle und Netzlisten umfaßt, wie es mehr im einzelnen noch nachfolgend beschrieben wird. Die ausführbaren Subroutinen für ICs werden von der Tabelle 1A adressiert und von der IC-Modellbibliothek 4 über die Signalleitungen 5 bereitgestellt. Die ausführbaren Subroutinen für die Netzlisten-Datenübernagungen werden von der Tabelle 1B bereitgestellt.
- Die Entwurfssimulations-Programmtabelle 3 wird unmittelbar von der Tabellen 1A und 1B erzeugt und ist ein vollständiges Entwurfs-Simulationsprogramm, das IC-Modell-Subroutinen ausführt, die in der IC-Modell-Bezugsbibliothek 4 gespeichert sind, sowie Netzlisten-Subroutinen, die in der Netzlisten- Konnektivitäts-Datentabelle 1B gespeichert sind. Die IC-Modelle werden zuerst ausgeführt. Wenn alle IC- Modelle innerhalb des schematischen Blocks 25 (B1) ausgeführt sind, wird eine Subroutine für die Datenübertragung innerhalb des schematischen Blocks 25 aufgerufen und durchgeführt. Auf diese Weise führt durch Ausführen der Programme in der Entwurfs-Simulations-Programmtabelle 3 der Simulator 14 einen Simulationszyklus durch.
- LISTE AUSFÜHRBARER SUBROUTINEN
- setze B2-Zeiger
- rufe B2-Modell auf
- setze B3-Zeiger
- rufe B3-Modell auf
- überspringe B1 ; es hat kein fertiges Modell
- setze C1-Zeiger
- rufe C1-Modell auf
- setze C2-Zeiger
- rufe C2-Modell auf
- setze C3-Zeiger
- rufe C3-Modell auf ; dies war die letzte IC im B1-Makro
- setze B1-Netzlistenzeiger ; z. B. A3C0 aus Tabelle 1B
- rufe B1-Netzliste auf ; die obige Operation führte B1- Netzlistenübertragungen durch
- setze A1-Netzlistenzeiger ; führe A1-Netzlistenübernagungen durch
- rufe A1-Netzliste auf ; ein Simulationszyklus der schematischen Darstellung in Fig. 2 ist fertiggestellt.
- Das schematische Eingangsprogramm 10A und die Netzlisten-Eingangsdatei 10B umfassen Vorkehrungen zum Markieren von ICs, die simuliert werden sollten. Die Auswahl von Entwurfselementen zur Simulation liegt durchaus innerhalb des Umfangs eingeführter Softwareprozeduren, die in der Technik bekannt sind, wie etwa LINK und SLAV von ALDEC Company, auf die oben Bezug genommen wurde, die hierin durch die Bezugnahme mit einbezogen werden und deshalb nicht detaillierter beschrieben zu werden brauchen. Wenn der Datentabellengenerator 12 die Entwurfselemententabelle 1A erzeugt, legt er in der "benutzt"-Spalte fest, ob das gegebene Entwurfselement simuliert werden sollte oder nicht. In gleichartiger Weise überprüft der Simulator 14, wenn er die ausführbare Entwurfssimulations-Programmtabelle 3 erzeugt, das BENUTZT-Feld in der Entwurfselemente-Datentabelle 1A. Wenn dieses Feld angibt, daß ein Element wie ein IC nicht benutzt wird, dann schließt es der Simulator 14 nicht in die Entwurfssimulations- Datentabelle 3 mit ein und nachfolgend wird diese IC nicht simuliert.
- Die Programmroutinen zum Erzeugen von Elemente-Datentabellen und einer Entwurfs- Simulationstabelle sind in den Fig. 6 und 7 gezeigt. Der Datentabellengenerator 12 ist ein Programm, das die Daten auf den Signalleitungen 11a oder 11b abtastet und eine Tabelle erzeugt, die bevorzugt gleichartig zur Tabelle 1A ist. Ein detailliertes Flußdiagramm des Datentabellengenerators 12 ist in Fig. 6 gezeigt. Die Subroutine 60 überprüft, ob die Eingabe des Konstrukteurs auf der Leitung 60a ein Entwurfselement ist, in welchem Fall die Subroutine 60 den Namen des Entwurfselements in die Tabelle 1A eingibt. Er kann zum Beispiel in die Spalte 1 der Tabelle 1A eingegeben werden. Die Subroutine 62 wird von einer Eingabeleitung 61 ausgelöst und überprüft mittels des Modell-Bezugsindex 2 (Fig. 1), ob die eingegebene Eingabe 60a ein Modell in der Modell-Bezugsbibliothek 4 aufweist. Wenn ein Modell zur Verfügung steht, dann wird die Speicherzelle dieses Modells im RAM-Speicher in die Spalte "Modell-RAM-Zeiger" der Tabelle 1A eingegeben. Die Eingabe auf der Leitung 60a kommt auch von der Programm-Rückkoppelungs- oder Rückführungsleitung 86 her, um auf der Signalleitung 11a oder 11b eine Überprüfung auf eine neue Eingabe vorzunehmen.
- Die Software-Subroutine 67, die von einem Signal auf der Leitung 66 ausgelöst wird, überprüft, ob die Eingabe ein Anschluß ist. Diese Information wird unmittelbar von einer Netzliste oder einem schematischen Symbol abgeleitet, das der Eingabe zugeordnet ist. Wenn die Eingabe ein Anschluß ist, wird sie in die Tabelle 1A durch die Subroutine 69 eingebracht. Ansonsten überprüft die Subroutine 72, ob sie ein Signalname ist. Wenn die Eingabe ein Signalname ist, dann wird er in die SIGNAL-Spalte der Tabelle 1A eingegeben und die Steuerung wird auf den Programmbeginn zurückgeführt, wie es im Flußdiagramm der Fig. 6 durch die Signalleitungen 75 und 86 dargestellt ist.
- Wenn das Eingabesignal 60a eine Anforderung ist, ein vorliegendes Entwurfselement zur Simulation hinzuzufügen, dann wird die zugeordnete BENUTZT-Spalte der Tabelle 1A von der Subroutine 82 mit "JA" markiert. Die Subroutine 79 überprüft, ob ein Entwurfselement von der Simulation entfernt werden sollte. Wenn die Eingabe auf der Leitung 60a ein Simulations-Löschbefehl ist, dann löscht die Programm-Subroutine 79 über die Subroutine das "JA" in der BENUTZT-Spalte der ausgewählten Entwurfselemente. Wenn es die Subroutine 84 erfaßt, daß die vom Konstrukteur eingegebene Eingabe 60a eine Anforderung ist, auf die Simulations-Betriebsart umzuschalten, dann wird die programmerzeugende Tabelle 3 über die Signalleitung 88 aktiviert. Ansonsten kehrt das Programm auf den Beginn des Flußdiagramms in Fig. 6 zurück, um eine Eingabe zu erwarten.
- Es sollte für Personen, die im Gebrauch von computerunterstützter Konstruktion bewandert sind, klar sein, wie eine Netzliste ähnlich der Tabelle 1B erzeugt wird. Solche Netzlisten werden durch eine Anzahl unterschiedlicher Firmen erzeugt, wie der ALDEC Company und der Personal CAD Systems.
- Der Simulator 14 weist zwei Programme auf; eines, das die Entwurfsimulations-Programmtabelle erzeugt und ein anderes, das das die Subroutinen in der Tabelle 3 ausführt. Der ausführende Programmteil des Simulators 14 kann durch irgendeines der bekannten Simulatorprogramme bereitgestellt werden, etwa SUSIE, das von ALDEC aus Newbury Park, Kalifornien, verfügbar ist. Das Programm zum Erzeugen der Tabelle 3 wird nachfolgend unter Bezugnahme auf Fig. 7 beschrieben.
- Das Verfahren der Erzeugung der Tabelle 3 ist in Bezug auf das Flußdiagramm der Fig. 7 beschrieben. Die Subroutine 89 überprüft, ob die Eingabe auf der Signalleitung 88 vom die Datentabellen erzeugenden Programm her entweder eine Netzliste oder ein Element ist, das ein Modell in der Modell- Bezugsbibliothek 4 hat. Wenn die Eingabe auf der Signalleitung 88 weder eine Netzliste noch ein Element mit einem Modell ist, dann wird keine Aktion ergriffen und der nächste Gegenstand 88 in der Tabelle 1A wird verarbeitet. Die Subroutine 92 überprüft, ob der Gegenstand 88 ein IC-Modell hat. Wenn er ein IC- Modell hat, dann erzeugt die Subroutine 100 automatisch einen Aufruf an die Modellbibliothek. Wenn der Eingabegegenstand 88 kein Modell hat, dann muß es eine Netzliste sein, und die Subroutine 95 schreibt einen Aufruf an die Netzlisten-Subroutine, die in Tabelle 2 gezeigt ist. Die Subroutine 97 überprüft, ob ein Ende bei der Tabelle 1A vorliegt. Wenn ein Ende gefunden wird, dann führt die Subroutine 101 die Ablaufsteuerung auf den Simulator 14 zurück, der die neuerdings erzeugte Tabelle 3 ausführen wird. Ansonsten wird die Steuerung auf den Beginn des Flußdiagramms in Fig. 7 zurückgeführt.
- Die Programmroutinen, die in den Flußdiagrammen in Fig. 6 und 7 dargestellt sind, sind nur beispielshalber vorgelegt und sorgen für ein klares Verständnis, wie die Tabelle 3 automatisch von Software-Routinen erzeugt werden kann.
- Jedesmal, wenn von einem Konstrukteur ein neues Element für die Simulation ausgewählt wird oder von der Simulation her gelöscht wird, wird eine neue Entwurfsimulations-Programmtabelle 3 durch den Simulator 14 erzeugt. Da die ausgeführte Entwurfssimulations-Programmtabelle 3 durch eine einfache Umsetzung der Entwurfs-Elemente-Datentabelle 1A, der Netzlisten-Konnektivitäts-Datentabelle 1B und der Modellindextabelle 2 erzeugt, wird die. Die Entwurfssimulations-Programmtabelle 3 innerhalb von Millisekunden erzeugt und ist augeblicklich für den Benutzer verfügbar. Als Ergebnis dieses Prozesses kann der Benutzer augenblicklich irgendeine Gruppe von ICs und Signalen zur Simulation auswählen. Da die Entwurfssimulations-Programmtabelle 3 automatisch nur die ICs umfaßt, die an der Simulation teilnehmen, liefert dies eine erhebliche Einsparung an Simulationszeit. Der Simulator 14 kann einem Simulator gleichartig sein, der von ALDEC hergestellt wird und als SUSIE bekannt ist, oder gleichartig dem DIGITAL DESIGN LABS-Simulator, der von Personal CAD Systems verfügbar ist.
- Um einen Entwurf zu simulieren, muß der Benutzer die Entwurfstimuli bzw. -Anreize zur Durchführung im Durchführungsprogramm im Simulator 14 eingeben. In einem interaktiven System können die Stimuli unmittelbar von einem zeitsteuernden Anzeigeschirm her eingegeben werden. Das Testvektor-Eintrittsprogramm 20 führt auf einer Signalleitung 21 Informationen zu, die vorgesehen sind, wie in Fig. 4A, 4B und 4C gezeigt ist. Fig. 4A zeigt graphisch die Signale, die bei der Simulation des logischen Schemas in Fig. 2 verwendet werden. Das Testvektor-Eintrittsprogramm ist ein Testvektor-Editor, der aus Quellen wie ALDEC oder anderen ohne weiteres verfügbar ist. Die Signale, die von Testvektor- Eintrittsprogramm 20 und vom Simulator 14 erzeugt werden, können wahlweise an der Simulations- Datenanzeige 16 angezeigt werden (das heißt durch ein Fenster). Alle Signale, die in Fig. 4A gezeigt sind, die als Entwurfsstimuli verwendet werden, sind in der zweiten Spalte mit einem Sternchen (*) markiert und sind automatisch in die Entwurfselemente-Datentabelle 1A mit einbezogen. Die logischen Operationsschritte bzw. Zustände dieser Signale werden im Arbeitsspeicher (RAM) gespeichert. Die Zeiger zu diesen Speicherzellen sind in Fig. 4B gezeigt. Die aktuellen RAM-Speicherzellen für diese Testvektoren sind in Fig. 4C aufgelistet.
- Alle Testvektoren, die von einem Konstrukteur in Fig. 4A mit einem "*" markiert wurden, sind schreibgeschützt. Solche Signale können können nicht von Simulationsdaten umgestoßen werden, die vom Simulator 14 erzeugt werden. Wenn beispielsweise ein "*" neben einem "schreiben"-Signal in Fig. 4A angeordnet ist, dann können die Daten, die auf der B2-3-Ausgabe erzeugt werden, nicht an der Speicherzelle des "schreiben"-Signals gespeichert werden.
- Stattdessen wird das alte "schreiben"-Signal behalten. Wenn in ähnlicher Weise der Anschlußstift 3 des Schaltglieds B2 in Fig. 4A angezeigt und mit einem "*" markiert wird, dann ist die entsprechende Speicherzelle im RAM-Speicher, der in Fig. 4C gezeigt ist, schreibgeschützt und Simulationsprodukte werden nicht an der RAM-Speicherzelle 3C00 sichergestellt. Dieses Verfahren des RAM-Schutzes ist nützlich, wenn ein Konstrukteur Simulationsergebnisse umstürzen will, indem er in einen IC-Modell- Anschlußstift seinen eigenen Testvektor eingibt. Jeder Testvektor, der in Fig. 4A gezeichnet oder eingegeben wurde und mit dem "*" markiert ist, wird nicht von den Simulationsergebnissen geändert. Stattdessen werden die Testvektordaten, die in Fig. 4C gespeichert sind, als Eingaben für den Simulator 14 benutzt.
- Fig. 5 zeigt eine logische Analyseeinrichtung 43, etwa Tektronics 1241, die Signale 42 von einer gedruckten Schaltungsplatte 41 empfängt, die sich im Test befindet. Die Signale 42 werden in das geeignete Signalformat umgewandelt, zum Beispiel in den bekannten IEEE-488-Standard, und in das Simulatocsystem anstelle des Testvektoreintritts 20 (Fig. 1) eingegeben. Die Signalleitung 42 der logischen Analyseeinrichtung 43 kann an irgendeinen Abschnitt einer gedruckten Schaltungsplatte 41 angebracht werden. Wenn die Signalleitungen 42 an den Anschlußstiften der gedruckten Schaltungsplatte angebracht sind, die den Anschlüssen 29, 30, 31 und 32 entsprechen, wie im Schema der Fig. 2 gezeigt, und in die entsprechenden Testpunkte des schematischen Blocks B1 in Fig. 2 eingespeist werden, dann kann der schematische Block B1 unter der Steuerung von Signalen 44 simuliert werden, die von der logischen Analyseeinrichtung 43 geliefert werden. Ein Testvergleicher 46 empfängt den Anschlußstift 3 der Ausgabe des Steueranschlusses C3 vom Simulatorsystem auf der Signaleitung 47 und vergleicht ihn mit einem entsprechenden Signal auf der gedruckten Schaltungsplatte 41, das auf der Signalleitung 45 von der logischen Analyseeinrichtung 43 geliefert wird. Sollte irgendeine Diskrepanz zwischen den Signalen 45 und 47 vorliegen, wird der Testvergleicher 46 sie als Fehler der gedruckten Schaltungsplatte 41 zeigen. Die Ausgabe des Simulatorsystems 1 wird auf Harddisk 52 gespeichert und kann an einer Kathodenstrahlröhrenanzeige (CRT-Anzeige) 16 (Fig. 1) oder auf einer Kopie bzw. einem Ausdruck angezeigt werden, die bzw. der auf einem Drucker 55 geliefert wird.
- Wenn es ein Konstrukteur über das schematische Eingangsprogramm 10A wählt, daß nur der schematische Block B1 simuliert werden soll, dann wird die neue Entwurfssimulations-Programmtabelle 3, die vom Simulator 14 erzeugt wird, nur den Block B1 umfassen, und andere Modellelemente werden aus der Tabelle 3 entfernt. Da die Simulation des schematischen Blocks B1 rascher ist als die Simulation des gesamten schematischen, logischen Diagramms der Fig. 2, werden die Ergebnisse vom Simulator 14 viel rascher erzeugt.
- Um die Umsetzung zwischen Entwurfs- und Simulationsdaten für den Konstrukteur zu erleichtern, ist es vorteilhaft, imstande zu sein, wahlweise die Anzeige an einem Katodenstrahlröhrenbildschirm zwischen dem Schema in Fig. 2 und den Simulationsdaten in Fig. 4C umzuschalten. Um dies zu bewerkstelligen, sorgt das automatische Eingangs- und Anzeigeprogramm 10A für die wahlweise erfolgende Betrachtung der schematischen Eingangsanzeige und der Simulationsdatenanzeige 16 auf demselben konkreten Anzeigebildschirm, der als CRT-Anzeige 53 in Fig. 5 gezeigt ist. Die Kombination von Umschaltvorgängen zwischen Anzeigen auf einem einzigen Bildschirm wird "Fensterdarstellung" ("windowing") genannt und ist für eine Person, die im Entwerfen von Computerprogrammen erfahren ist, eine bekannte Technik; deshalb ist hier keine detaillierte Erläuterung erforderlich.
- Diese Erfindung ist nicht durch die Ausführungsform zu beschränken, die in der Zeichnung gezeigt und in der Beschreibung beschrieben ist, die als Beispiel und nicht als Einschänkung vorgelegt ist, sondern ist nur in Übereinstimmung mit dem Umfang der beigefügten Ansprüche abgegrenzt.
Claims (15)
1. Simulationssystem (1) für Logik-Schaltungsentwürfe, enthaltend:
eine Datentabellen-Erzeugungseinrichtung (12) zur Erzeugung einer Entwurfselementetabelle und
einer Netzlisten-Verknüpfungstabelle;
eine Eingabeeinrichtung (10A, 10B) für Logik-Schaltungsentwürfe für die Eingabe von Logik-
Schaltungs-Entwurfsdaten in die Datentabellen-Erzeugungseinrichtung (12);
eine Modell-Referenzbibliothekseinrichtung (4), die Modelldaten des integrierten Schaltkreises
speichert;
eine Modell-Indexreferenzeinrichtung (2), die mit der Datentabellen-Erzeugungseinrichtung (12)
verbunden ist zum Auswählen von Speicherzeigern auf Modelldaten des integrierten Schaltkreises, die in der
Modell-Referenzbibliothekseinrichtung (4) gespeichert sind;
eine Simulationseinrichtung, enthaltend:
eine Testvektorsignaleingabeeinrichtung (20) für die Eingabe von Testvektoren;
eine Erzeugungseinrichtung (14) für Entwurfs-Simulationsprogramme zum Erzeugen eines
ausführbaren Entwurfs-Simulationsprogramms aus der Entwurfselemente-Tabelle, der Netzlisten-
Verknüpfungstabelle und ausgewählten Testvektoren, die in die Simulationseinrichtung eingegeben wurden;
und
eine Ausführeinrichtung für die Ausführung des Entwurfs-Simulationsprogramms,
dadurch gekennzeichnet, daß einer oder mehrere der ausgewählten Werte entweder in der
Entwurfselemente-Tabelle oder der Netzlisten-Verknüpfungstabelle oder in beiden mit für die Simulation
ausgewählten aktiven Entwurfselementen inkrementell geändert werden kann, ohne die Tabellen erneut zu
kompilieren, und ohne eine Netzlisten-Datenübertragung auszuführen.
2. System gemäß Anspruch 1, wobei die Eingabeeinrichtung für die Logik-Schaltungsentwürfe entweder
eine Eingabeeinrichtung (10A) für schematische Daten oder eine Eingabeeinrichtung (10B) für Netzlisten-
Verknüpfungsdaten, oder für beide enthält.
3. System gemäß Anspruch 2, wobei die Eingabeeinrichtung (10A) für schematische Daten eine
Anzeigeeinrichtung für die Anzeige von Daten enthält, die für die selektive Eingabe in die
Erzeugungseinrichtung (12) für die Datentabelle eingegeben wurden.
4. System gemäß Anspruch 1, wobei die Entwurfselementetabelle eine Einrichtung zur Anzeige enthält,
welche Elemente bei einer Logik-Entwurfs-Simulation verwendet werden sollen.
5. System gemäß Anspruch 4, wobei die Einrichtung für die Anzeige, welche Elemente verwendet
werden sollen, durch die Eingabeeinrichtung für die Logik-Schaltungsentwürfe verändert werden kann, wobei
ein revidiertes Entwurfs-Simulationsprogramm schnell erzeugt werden kann.
6. System gemäß Anspruch 1, wobei die Eingabeeinrichtung für das Testvektorsignal einen Logik-
Analysierer (43) enthält, wobei der Logik-Analysierer (43) Testsignale von einer Logik-Schaltung (41) zur
Eingabe in die Simulationseinrichtung (50) einfängt.
7. System gemäß Anspruch 6, wobei der Logik-Analysierer (43) direkt mit einer Logik-Schaltung auf
einer gedruckten Leiterplatte (41) zum Einfangen und Übertragen von Logik-Schaltungsdaten in das
Simulationssystem (50) verbunden ist.
8. System gemäß Anspruch 1, weiter enthaltend eine Testvektor-Editiereinrichtung zum Verändern der
Testvektoren, bevor die Testvektoren in die Simulationseinrichtung eingegeben werden.
9. Verfahren zur Simulation ausgewählter Logik-Schaltungen, enthaltend:
Eingeben von Entwurfsdaten der Logik-Schaltung;
Auswählen von Speicherzeigern auf eine Modell-Referenzbibliothek (4) für die integrierte Schaltung,
die Modelldaten der integrierten Schaltung speichert, von einer Modell-Referenzindexeinrichtung (2) für die
integrierte Schaltung aus;
Erzeugen einer Entwurfselemente-Tabelle und einer Netzlisten-Verknüpfungstabelle aus den
Entwurfsdaten der Logik-Schaltung und den Modelldaten für die integrierte Schaltung;
Simulieren des Betriebs der ausgewählten Logik-Schaltung;
wobei das Simulieren enthält:
Eingeben von Testvektor-Signalen in die Simulationseinrichtung (14);
Erzeugen eines ausführbaren Entwurfs-Simulationsprogramms aus der Entwurfselemente-Tabelle, der
Netzlisten-Verknüpfungstabelle und den Testvektoren; und
Ausführen des ausführbaren Entwurfs-Simulationsprogramms,
dadurch gekennzeichnet, daß einer oder mehrere der ausgewählten Werte in entweder der
Entwurfselemente-Tabelle oder der Netzlisten-Verknüpfungstabelle oder in beiden inkrementell verändert
werden kann, um aktive, für die Simulation ausgewählte Entwurfselemente anzuzeigen, ohne die Tabellen
erneut zu kompilieren, und ohne eine Netzlisten-Datenübertragung auszuführen.
10. Verfahren gemäß Anspruch 9, wobei das Eingeben der Entwurfsdaten für die logische Schaltung das
Eingeben von entweder schematischen Daten oder Netzlisten-Verknüpfungsdaten oder von beiden enthält.
11. Verfahren gemäß Anspruch 9, weiter enthaltend Anzeigen der eingegebenen Daten auf einer
Anzeigeeinrichtung (16) zur Veränderung derer vor ihrer Eingabe, falls gewünscht.
12. Verfahren gemäß Anspruch 9, weiter enthaltend Erzeugen einer Verwendet oder Nicht-Verwendet-
Anzeige für alle in der veränderbaren Entwurfselemente-Tabelle erzeugten Elemente.
13. Verfahren gemäß Anspruch 12, weiter enthaltend
Verändern der Verwendet-Anzeige in der Entwurfselemente-Tabelle, um ein oder mehrere
Entwurfselemente für die Simulation auszuwählen oder nicht auszuwählen.
14. Verfahren gemäß Anspruch 9, wobei das Eingeben von Testvektor-Signaldaten das Eingeben von
Datensignalen enthält, die von einem Logik-Analysierer (43) aus einer Logik-Schaltung (41) eingefangen
wurden.
15. Verfahren gemäß Anspruch 14, weiter enthaltend den Logik-Schaltungs-Analysierer mit einer
ausgewählten Logik-Schaltung auf einer gedruckten Leiterplatte (41) für die Eingabe und die Simulation in dem
Simulator (50) direkt zu verbinden.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US07/370,896 US5051938A (en) | 1989-06-23 | 1989-06-23 | Simulation of selected logic circuit designs |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE69033360D1 DE69033360D1 (de) | 1999-12-30 |
| DE69033360T2 true DE69033360T2 (de) | 2000-06-29 |
Family
ID=23461630
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE69033360T Expired - Fee Related DE69033360T2 (de) | 1989-06-23 | 1990-06-18 | Simulation von ausgewählten Logik-Schaltungsentwürfen |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US5051938A (de) |
| EP (1) | EP0404482B1 (de) |
| JP (1) | JPH03116383A (de) |
| AT (1) | ATE186999T1 (de) |
| DE (1) | DE69033360T2 (de) |
Families Citing this family (122)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5452231A (en) * | 1988-10-05 | 1995-09-19 | Quickturn Design Systems, Inc. | Hierarchically connected reconfigurable logic assembly |
| US5109353A (en) * | 1988-12-02 | 1992-04-28 | Quickturn Systems, Incorporated | Apparatus for emulation of electronic hardware system |
| US5329470A (en) * | 1988-12-02 | 1994-07-12 | Quickturn Systems, Inc. | Reconfigurable hardware emulation system |
| US5369593A (en) | 1989-05-31 | 1994-11-29 | Synopsys Inc. | System for and method of connecting a hardware modeling element to a hardware modeling system |
| US5353243A (en) | 1989-05-31 | 1994-10-04 | Synopsys Inc. | Hardware modeling system and method of use |
| EP0416669B1 (de) * | 1989-09-05 | 1998-09-09 | Lsi Logic Corporation | Logik-Kompilator zum Entwurf von Schaltungsmodellen |
| US5416717A (en) * | 1989-09-06 | 1995-05-16 | Hitachi, Ltd. | Circuit simulation method for a circuit realized by an LSI layout pattern based upon a circuit of a logic gate level realized by the layout pattern |
| 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 |
| JP2847310B2 (ja) * | 1990-01-12 | 1999-01-20 | 東京エレクトロン株式会社 | 論理シミュレーション方法 |
| EP0440553B1 (de) * | 1990-01-29 | 2001-10-17 | Fujitsu Limited | Gatter-Adressierungssystem für eine Logiksimulationsmaschine |
| US5438673A (en) * | 1990-08-17 | 1995-08-01 | Cray Research, Inc. | Automatic interface for CPU real machine and logic simulator diagnostics |
| US5345393A (en) * | 1990-08-22 | 1994-09-06 | Matsushita Electric Industrial Co., Ltd. | Logic circuit generator |
| JPH04123269A (ja) * | 1990-09-14 | 1992-04-23 | Fujitsu Ltd | Plaのシミュレーション方式 |
| US5193068A (en) * | 1990-10-01 | 1993-03-09 | Northern Telecom Limited | Method of inducing off-circuit behavior in a physical model |
| US5717928A (en) * | 1990-11-07 | 1998-02-10 | Matra Hachette Sa | System and a method for obtaining a mask programmable device using a logic description and a field programmable device implementing the logic description |
| JPH04186866A (ja) * | 1990-11-21 | 1992-07-03 | Fujitsu Ltd | 半導体装置における電源線の配線方法及び電源配線決定装置 |
| JPH04237143A (ja) * | 1991-01-22 | 1992-08-25 | Rohm Co Ltd | 論理回路のレイアウトパターン検証方法 |
| US5390320A (en) * | 1991-01-22 | 1995-02-14 | Grumman Aerospace Corporation | Automatically converting structured analysis tool database outputs into an integrated simulation model via transportable standardized metafile |
| US5251159A (en) * | 1991-03-20 | 1993-10-05 | Vlsi Technology, Inc. | Circuit simulation interface methods |
| 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 |
| EP0508620B1 (de) * | 1991-04-11 | 1998-05-20 | Hewlett-Packard Company | Verfahren und System zur automatischen Bestimmung der logischen Funktion einer Schaltung |
| EP0508619A2 (de) * | 1991-04-11 | 1992-10-14 | Hewlett-Packard Company | Stimulus-Schnittstelle mit bidirektionalem Sockel für einen Logiksimulator |
| WO1993016433A1 (en) * | 1992-02-07 | 1993-08-19 | Seiko Epson Corporation | Hardware emulation accelerator and method |
| US5331570A (en) * | 1992-03-27 | 1994-07-19 | Mitsubishi Electric Research Laboratories, Inc. | Method for generating test access procedures |
| US5418931A (en) * | 1992-03-27 | 1995-05-23 | Cadence Design Systems, Inc. | Method and apparatus for detecting timing errors in digital circuit designs |
| US5359545A (en) * | 1992-04-10 | 1994-10-25 | Itt Corporation | Dynamic video display for logic simulation systems |
| US5615356A (en) * | 1992-04-21 | 1997-03-25 | Cpu Technology, Inc. | Method and apparatus for interactively displaying signal information during computer simulation of an electrical circuit |
| DE69325770T2 (de) * | 1992-06-02 | 1999-11-18 | Hewlett-Packard Co., Palo Alto | Verfahren zum rechnergestützten entwurf für mehrschichtverbindungen-technologien |
| WO1994003901A1 (en) | 1992-08-10 | 1994-02-17 | Monolithic System Technology, Inc. | Fault-tolerant, high-speed bus system and bus interface for wafer-scale integration |
| CA2099737C (en) * | 1992-09-08 | 1997-08-19 | Terrence Kent Barrington | Communications network test environment |
| US5633812A (en) * | 1992-09-29 | 1997-05-27 | International Business Machines Corporation | Fault simulation of testing for board circuit failures |
| US5617327A (en) * | 1993-07-30 | 1997-04-01 | Xilinx, Inc. | Method for entering state flow diagrams using schematic editor programs |
| WO1994015311A1 (en) * | 1992-12-28 | 1994-07-07 | Xilinx, Inc. | Method for entering state flow diagrams using schematic editor programs |
| JPH06282599A (ja) * | 1993-03-26 | 1994-10-07 | Hitachi Ltd | 論理検証方法および装置 |
| JPH06282600A (ja) * | 1993-03-29 | 1994-10-07 | Mitsubishi Electric Corp | 論理シミュレーション装置 |
| JP2815281B2 (ja) * | 1993-04-19 | 1998-10-27 | 株式会社ピーエフユー | デジタル回路設計支援システムおよびその方法 |
| US5751592A (en) * | 1993-05-06 | 1998-05-12 | Matsushita Electric Industrial Co., Ltd. | Apparatus and method of supporting functional design of logic circuit and apparatus and method of verifying functional design of logic circuit |
| JP2768889B2 (ja) * | 1993-06-07 | 1998-06-25 | 株式会社東芝 | 論理シミュレーション装置 |
| US5442644A (en) * | 1993-07-01 | 1995-08-15 | Unisys Corporation | System for sensing the state of interconnection points |
| US5781447A (en) * | 1993-08-13 | 1998-07-14 | Micron Eletronics, Inc. | System for recreating a printed circuit board from disjointly formatted data |
| US5530643A (en) * | 1993-08-24 | 1996-06-25 | Allen-Bradley Company, Inc. | Method of programming industrial controllers with highly distributed processing |
| US5479355A (en) * | 1993-09-14 | 1995-12-26 | Hyduke; Stanley M. | System and method for a closed loop operation of schematic designs with electrical hardware |
| US5680583A (en) | 1994-02-16 | 1997-10-21 | Arkos Design, Inc. | Method and apparatus for a trace buffer in an emulation system |
| JPH07249748A (ja) * | 1994-03-14 | 1995-09-26 | Fujitsu Ltd | マスタースライス型lsiの設計装置 |
| TW421761B (en) * | 1994-04-12 | 2001-02-11 | Yokogawa Electric Corp | Verification support system |
| US5559718A (en) * | 1994-04-28 | 1996-09-24 | Cadence Design Systems, Inc. | System and method for model-based verification of local design rules |
| US5752000A (en) * | 1994-08-02 | 1998-05-12 | Cadence Design Systems, Inc. | System and method for simulating discrete functions using ordered decision arrays |
| US6208954B1 (en) * | 1994-09-16 | 2001-03-27 | Wind River Systems, Inc. | Method for scheduling event sequences |
| US5903469A (en) | 1994-11-08 | 1999-05-11 | Synopsys, Inc. | Method of extracting layout parasitics for nets of an integrated circuit using a connectivity-based approach |
| US5828580A (en) * | 1994-11-08 | 1998-10-27 | Epic Design Technology, Inc. | Connectivity-based approach for extracting parasitic layout in an integrated circuit |
| JP3986571B2 (ja) * | 1994-12-09 | 2007-10-03 | 日本テキサス・インスツルメンツ株式会社 | 歩留り予測装置とその方法 |
| US6393385B1 (en) * | 1995-02-07 | 2002-05-21 | Texas Instruments Incorporated | Knowledge driven simulation time and data reduction technique |
| US5706473A (en) * | 1995-03-31 | 1998-01-06 | Synopsys, Inc. | Computer model of a finite state machine having inputs, outputs, delayed inputs and delayed outputs |
| JP3351651B2 (ja) | 1995-04-07 | 2002-12-03 | 富士通株式会社 | 会話型回路設計装置 |
| JP2940444B2 (ja) * | 1995-08-10 | 1999-08-25 | ヤマハ株式会社 | 半導体集積回路のシミュレーション装置およびシミュレーション方法 |
| JP3161314B2 (ja) * | 1996-01-19 | 2001-04-25 | ヤマハ株式会社 | 論理シミュレーション装置および論理シミュレート方法 |
| US5745389A (en) * | 1996-04-04 | 1998-04-28 | Bull Hn Information Systems Inc. | System and mechanism for assigning pre-established electronic addresses to printed circuit boards |
| US6480995B1 (en) | 1996-04-15 | 2002-11-12 | Altera Corporation | Algorithm and methodology for the polygonalization of sparse circuit schematics |
| US5819072A (en) * | 1996-06-27 | 1998-10-06 | Unisys Corporation | Method of using a four-state simulator for testing integrated circuit designs having variable timing constraints |
| US5870311A (en) * | 1996-06-28 | 1999-02-09 | Lsi Logic Corporation | Advanced modular cell placement system with fast procedure for finding a levelizing cut point |
| US6026223A (en) * | 1996-06-28 | 2000-02-15 | Scepanovic; Ranko | Advanced modular cell placement system with overlap remover with minimal noise |
| US5870312A (en) * | 1996-06-28 | 1999-02-09 | Lsi Logic Corporation | Advanced modular cell placement system with dispersion-driven levelizing system |
| US5844811A (en) * | 1996-06-28 | 1998-12-01 | Lsi Logic Corporation | Advanced modular cell placement system with universal affinity driven discrete placement optimization |
| US5831863A (en) * | 1996-06-28 | 1998-11-03 | Lsi Logic Corporation | Advanced modular cell placement system with wire length driven affinity system |
| US6085032A (en) * | 1996-06-28 | 2000-07-04 | Lsi Logic Corporation | Advanced modular cell placement system with sinusoidal optimization |
| US6030110A (en) * | 1996-06-28 | 2000-02-29 | Lsi Logic Corporation | Advanced modular cell placement system with median control and increase in resolution |
| US5914888A (en) * | 1996-06-28 | 1999-06-22 | Lsi Logic Corporation | Advanced modular cell placement system with coarse overflow remover |
| US6067409A (en) * | 1996-06-28 | 2000-05-23 | Lsi Logic Corporation | Advanced modular cell placement system |
| US5872718A (en) * | 1996-06-28 | 1999-02-16 | Lsi Logic Corporation | Advanced modular cell placement system |
| US5892688A (en) * | 1996-06-28 | 1999-04-06 | Lsi Logic Corporation | Advanced modular cell placement system with iterative one dimensional preplacement optimization |
| US5867398A (en) * | 1996-06-28 | 1999-02-02 | Lsi Logic Corporation | Advanced modular cell placement system with density driven capacity penalty system |
| US5808899A (en) * | 1996-06-28 | 1998-09-15 | Lsi Logic Corporation | Advanced modular cell placement system with cell placement crystallization |
| US5963455A (en) * | 1996-06-28 | 1999-10-05 | Lsi Logic Corporation | Advanced modular cell placement system with functional sieve optimization technique |
| US5812740A (en) * | 1996-06-28 | 1998-09-22 | Lsi Logic Corporation | Advanced modular cell placement system with neighborhood system driven optimization |
| US5835381A (en) * | 1996-06-28 | 1998-11-10 | Lsi Logic Corporation | Advanced modular cell placement system with minimizing maximal cut driven affinity system |
| US5799172A (en) * | 1996-09-10 | 1998-08-25 | Motorola, Inc. | Method of simulating an integrated circuit |
| US5841967A (en) | 1996-10-17 | 1998-11-24 | Quickturn Design Systems, Inc. | Method and apparatus for design verification using emulation and simulation |
| US6110223A (en) * | 1996-10-28 | 2000-08-29 | Altera Corporation | Graphic editor for block diagram level design of circuits |
| US5920490A (en) * | 1996-12-26 | 1999-07-06 | Adaptec, Inc. | Integrated circuit test stimulus verification and vector extraction system |
| US6421251B1 (en) | 1997-05-02 | 2002-07-16 | Axis Systems Inc | Array board interconnect system and method |
| US6009256A (en) * | 1997-05-02 | 1999-12-28 | Axis Systems, Inc. | Simulation/emulation system and method |
| US6389379B1 (en) | 1997-05-02 | 2002-05-14 | Axis Systems, Inc. | Converification system and method |
| US6321366B1 (en) | 1997-05-02 | 2001-11-20 | Axis Systems, Inc. | Timing-insensitive glitch-free logic system and method |
| US6026230A (en) * | 1997-05-02 | 2000-02-15 | Axis Systems, Inc. | Memory simulation system and method |
| US6134516A (en) * | 1997-05-02 | 2000-10-17 | Axis Systems, Inc. | Simulation server system and method |
| US5960191A (en) | 1997-05-30 | 1999-09-28 | Quickturn Design Systems, Inc. | Emulation system with time-multiplexed interconnect |
| US5970240A (en) | 1997-06-25 | 1999-10-19 | Quickturn Design Systems, Inc. | Method and apparatus for configurable memory emulation |
| US6718534B1 (en) | 1997-07-14 | 2004-04-06 | Microsoft Corporation | System for application independent programming of controls |
| US6449659B1 (en) | 1997-07-14 | 2002-09-10 | Microsoft Corporation | System for instance customization with application independent programming of controls |
| US6102960A (en) * | 1998-02-23 | 2000-08-15 | Synopsys, Inc. | Automatic behavioral model generation through physical component characterization and measurement |
| US6212665B1 (en) | 1998-03-27 | 2001-04-03 | Synopsys, Inc. | Efficient power analysis method for logic cells with many output switchings |
| US6137546A (en) * | 1998-07-20 | 2000-10-24 | Sony Corporation | Auto program feature for a television receiver |
| US7000202B1 (en) * | 1998-07-22 | 2006-02-14 | Magma Design Automation, Inc. | Method of vector generation for estimating performance of integrated circuit designs |
| US6321363B1 (en) * | 1999-01-11 | 2001-11-20 | Novas Software Inc. | Incremental simulation using previous simulation results and knowledge of changes to simulation model to achieve fast simulation time |
| US6353915B1 (en) | 1999-04-01 | 2002-03-05 | Unisys Corporation | Methods for evaluating systems of electronic components |
| US6577992B1 (en) | 1999-05-07 | 2003-06-10 | Nassda Corporation | Transistor level circuit simulator using hierarchical data |
| US6970815B1 (en) * | 1999-11-18 | 2005-11-29 | Koninklijke Philips Electronics N.V. | Method of discriminating between different types of scan failures, computer readable code to cause a display to graphically depict one or more simulated scan output data sets versus time and a computer implemented circuit simulation and fault detection system |
| GB2364798B (en) | 1999-12-03 | 2004-04-28 | Sgs Thomson Microelectronics | A processing method |
| US7082104B2 (en) | 2001-05-18 | 2006-07-25 | Intel Corporation | Network device switch |
| US7093224B2 (en) | 2001-08-28 | 2006-08-15 | Intel Corporation | Model-based logic design |
| US7130784B2 (en) | 2001-08-29 | 2006-10-31 | Intel Corporation | Logic simulation |
| US7073156B2 (en) | 2001-08-29 | 2006-07-04 | Intel Corporation | Gate estimation process and method |
| US7107201B2 (en) | 2001-08-29 | 2006-09-12 | Intel Corporation | Simulating a logic design |
| US6983427B2 (en) | 2001-08-29 | 2006-01-03 | Intel Corporation | Generating a logic design |
| US6859913B2 (en) | 2001-08-29 | 2005-02-22 | Intel Corporation | Representing a simulation model using a hardware configuration database |
| US7197724B2 (en) | 2002-01-17 | 2007-03-27 | Intel Corporation | Modeling a logic design |
| US20050138515A1 (en) * | 2003-11-05 | 2005-06-23 | Hyduke Stanley M. | Method and apparatus for co-verification of digital designs |
| US7818646B1 (en) * | 2003-11-12 | 2010-10-19 | Hewlett-Packard Development Company, L.P. | Expectation based event verification |
| CN100426304C (zh) * | 2004-09-30 | 2008-10-15 | 华为技术有限公司 | 一种系统级电路审查方法及工具 |
| US7240310B2 (en) * | 2004-12-07 | 2007-07-03 | International Business Machines Corporation | Method, system and program product for evaluating a circuit |
| EP1691309A1 (de) * | 2005-02-09 | 2006-08-16 | Siemens Aktiengesellschaft | Kontextsensitive Benutzerhilfe in einer softwarebasierten Entwicklungsumgebung |
| US7493519B2 (en) * | 2005-10-24 | 2009-02-17 | Lsi Corporation | RRAM memory error emulation |
| US8103469B1 (en) * | 2005-12-07 | 2012-01-24 | Altera Corporation | Transceiver link bit error rate prediction |
| JP5200198B1 (ja) * | 2011-10-03 | 2013-05-15 | パナソニック株式会社 | 動作確認支援装置および動作確認支援方法 |
| US8543953B2 (en) * | 2012-01-04 | 2013-09-24 | Apple Inc. | Automated stimulus steering during simulation of an integrated circuit design |
| US9582389B2 (en) * | 2013-07-10 | 2017-02-28 | International Business Machines Corporation | Automated verification of appliance procedures |
| US9230050B1 (en) | 2014-09-11 | 2016-01-05 | The United States Of America, As Represented By The Secretary Of The Air Force | System and method for identifying electrical properties of integrate circuits |
| US10769328B2 (en) * | 2017-09-30 | 2020-09-08 | Texas Instruments Incorporated | Generating a template-driven schematic from a netlist of electronic circuits |
| US20210390396A1 (en) * | 2018-07-11 | 2021-12-16 | The Board Of Trustees Of The Leland Stanford Junior University | Systems and Methods for Generative Models for Design |
| CN111177987B (zh) * | 2019-12-20 | 2023-09-22 | 北京天下行知科技有限公司 | 对集成电路设计进行分析的方法、装置、终端及存储介质 |
| CN111221690B (zh) * | 2019-12-20 | 2023-09-22 | 北京天下行知科技有限公司 | 针对集成电路设计的模型确定方法、装置及终端 |
| US11796794B2 (en) | 2020-05-12 | 2023-10-24 | The Board Of Trustees Of The Leland Stanford Junior University | Multi-objective, robust constraints enforced global topology optimizer for optical devices |
Family Cites Families (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3961250A (en) * | 1974-05-08 | 1976-06-01 | International Business Machines Corporation | Logic network test system with simulator oriented fault test generator |
| US4587625A (en) * | 1983-07-05 | 1986-05-06 | Motorola Inc. | Processor for simulating digital structures |
| JPS6142040A (ja) * | 1984-08-03 | 1986-02-28 | Nec Corp | 論理シミユレ−タ |
| FR2578668B1 (fr) * | 1985-03-08 | 1989-06-02 | Hennion Bernard | Systeme de simulation d'un circuit electronique |
| JPH0756656B2 (ja) * | 1985-09-26 | 1995-06-14 | 株式会社日立製作所 | ゲ−ト論理自動更新方法 |
| US4744084A (en) * | 1986-02-27 | 1988-05-10 | Mentor Graphics Corporation | Hardware modeling system and method for simulating portions of electrical circuits |
| JPS62251843A (ja) * | 1986-04-25 | 1987-11-02 | Hitachi Ltd | 論理シミユレ−シヨン方法および装置 |
| US4802165A (en) * | 1986-10-08 | 1989-01-31 | Enteleki, Inc. | Method and apparatus of debugging computer programs |
| US4791357A (en) * | 1987-02-27 | 1988-12-13 | Hyduke Stanley M | Electronic Circuit board testing system and method |
| US4827427A (en) * | 1987-03-05 | 1989-05-02 | Hyduke Stanley M | Instantaneous incremental compiler for producing logic circuit designs |
| JP2877303B2 (ja) * | 1987-03-31 | 1999-03-31 | 株式会社東芝 | 集積回路の自動設計装置 |
| JP2695160B2 (ja) * | 1987-04-30 | 1997-12-24 | 株式会社日立製作所 | 任意形状抵抗体の端子間抵抗計算方法 |
| US4817093A (en) * | 1987-06-18 | 1989-03-28 | International Business Machines Corporation | Method of partitioning, testing and diagnosing a VLSI multichip package and associated structure |
| JP2609280B2 (ja) * | 1988-04-22 | 1997-05-14 | 株式会社日立製作所 | シミュレーション方法 |
-
1989
- 1989-06-23 US US07/370,896 patent/US5051938A/en not_active Expired - Lifetime
-
1990
- 1990-06-18 EP EP90306621A patent/EP0404482B1/de not_active Expired - Lifetime
- 1990-06-18 DE DE69033360T patent/DE69033360T2/de not_active Expired - Fee Related
- 1990-06-18 AT AT90306621T patent/ATE186999T1/de not_active IP Right Cessation
- 1990-06-21 JP JP2165489A patent/JPH03116383A/ja active Pending
Also Published As
| Publication number | Publication date |
|---|---|
| DE69033360D1 (de) | 1999-12-30 |
| ATE186999T1 (de) | 1999-12-15 |
| US5051938A (en) | 1991-09-24 |
| EP0404482A3 (de) | 1992-10-14 |
| JPH03116383A (ja) | 1991-05-17 |
| EP0404482A2 (de) | 1990-12-27 |
| EP0404482B1 (de) | 1999-11-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE69033360T2 (de) | Simulation von ausgewählten Logik-Schaltungsentwürfen | |
| DE3787431T2 (de) | Verfahren zur Generierung einer Kandidatenliste von fehlerhaften Schaltungselementen und Verfahren zur Isolierung von Fehlern in einer logischen Schaltung unter Verwendung dieser Kandidatenliste. | |
| DE69826659T2 (de) | Billige, leicht anzuwendende software für ein automatisches testsystem | |
| DE69720821T2 (de) | Fehlersuchsystem für Programme mit einer graphischen Benutzerschnittstelle | |
| DE69315576T2 (de) | Verfahren und testanlage zur entwicklung einer integrierten schaltung. | |
| DE69229889T2 (de) | Automatische Logikmodell-Erzeugung aus einer Schaltschema-Datenbank | |
| DE69828800T2 (de) | Herstellungschnittstelle für ein integriertes schaltungsprüfsystem | |
| DE69225527T2 (de) | Verfahren und System zur automatischen Bestimmung der logischen Funktion einer Schaltung | |
| DE3789724T2 (de) | System zur Prüfung von interaktiver Software. | |
| DE69226937T2 (de) | Prüfverfahren für Leiterplatten | |
| DE10392497T5 (de) | Herstellungsverfahren und Herstellungsvorrichtung zum Vermeiden eines Prototypen-Aufschubs bei der ASIC/SOC-Herstellung | |
| DE60314530T2 (de) | Verfahren und system zum debuggen unter verwendung duplizierter logik | |
| DE10127170A1 (de) | Fehlersuchverfahren und Fehlersuchvorrichtung | |
| DE3900750A1 (de) | Wissensbasis - verfahren - vorrichtung zum entwerfen integrierter schaltungen mittels funktionaler spezifikationen | |
| DE69717824T2 (de) | Verfahren und vorrichtung zum software-test | |
| DE19950821A1 (de) | Bewertungssystem für integrierte Halbleiterschaltungen | |
| DE10234135B4 (de) | Verfahren, System und Computerprogramm zum Steuern der Prüfung einer gedruckten Schaltungsplatine in Bezug auf Herstellungsdefekte | |
| DE60012735T2 (de) | Verfahren zur unterscheidung von verschiedenen typen von abtastfehlern, rechnerbasierte schaltungsemulation und fehlerdetektionssystem | |
| DE69609762T2 (de) | Verfahren und System zur Erstellung eines technologie-unabhängigen Entwurfs integrierter Schaltungen | |
| DE10317431A1 (de) | Verfahren zur Generierung von Testersteuerungen | |
| DE3854636T2 (de) | Automatischer Prüfprozess für logische Geräte. | |
| DE102006019292A1 (de) | Modellieren programmierbarer Einrichtungen | |
| DE112018002316T5 (de) | Codeabdeckungsverfolgung für ein mikrocontroller-programm | |
| DE102015102034A1 (de) | Verfahren zum Analysieren von Ergebnissen in einem Entwurfsautomatisierungsablauf für elektronische Systeme, Computersystem und Computerprogrammprodukt | |
| DE4100899A1 (de) | System fuer die steuerung des ablaufs von testsequenzen in einer informationsverarbeitungsvorrichtung |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 8339 | Ceased/non-payment of the annual fee |