DE69033360T2 - Simulation von ausgewählten Logik-Schaltungsentwürfen - Google Patents

Simulation von ausgewählten Logik-Schaltungsentwürfen

Info

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
Application number
DE69033360T
Other languages
English (en)
Other versions
DE69033360D1 (de
Inventor
Stanley M Hyduke
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Publication of DE69033360D1 publication Critical patent/DE69033360D1/de
Application granted granted Critical
Publication of DE69033360T2 publication Critical patent/DE69033360T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • G01R31/318342Generation of test inputs, e.g. test vectors, patterns or sequences by preliminary fault modelling, e.g. analysis, simulation
    • G01R31/318357Simulation
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • G01R31/318378Generation of test inputs, e.g. test vectors, patterns or sequences of patterns for devices arranged in a network
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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

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.
  • MODELL-INDEXTABELLE 2
  • 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.
  • ENTWURFSSIMULATIONSPROGRAMM TABELLE 3
  • 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.
DE69033360T 1989-06-23 1990-06-18 Simulation von ausgewählten Logik-Schaltungsentwürfen Expired - Fee Related DE69033360T2 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 株式会社日立製作所 シミュレーション方法

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