DE19740543C1 - Verfahren zum Testen eines integrierten Schaltkreises sowie Verfahren und Datenverarbeitungsanlage zum Erzeugen von Testdaten - Google Patents

Verfahren zum Testen eines integrierten Schaltkreises sowie Verfahren und Datenverarbeitungsanlage zum Erzeugen von Testdaten

Info

Publication number
DE19740543C1
DE19740543C1 DE19740543A DE19740543A DE19740543C1 DE 19740543 C1 DE19740543 C1 DE 19740543C1 DE 19740543 A DE19740543 A DE 19740543A DE 19740543 A DE19740543 A DE 19740543A DE 19740543 C1 DE19740543 C1 DE 19740543C1
Authority
DE
Germany
Prior art keywords
simulation
integrated circuit
cycle
test
switching
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
DE19740543A
Other languages
English (en)
Inventor
Hans-Joachim Last
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.)
Fujitsu Technology Solutions GmbH
Original Assignee
Wincor Nixdorf International GmbH
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 Wincor Nixdorf International GmbH filed Critical Wincor Nixdorf International GmbH
Priority to DE19740543A priority Critical patent/DE19740543C1/de
Application granted granted Critical
Publication of DE19740543C1 publication Critical patent/DE19740543C1/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/261Functional testing by simulating additional hardware, e.g. fault simulation
    • 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/318307Generation of test inputs, e.g. test vectors, patterns or sequences computer-aided, e.g. automatic test program generator [ATPG], program translations, test program debugging
    • 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
    • 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/318364Generation of test inputs, e.g. test vectors, patterns or sequences as a result of hardware simulation, e.g. in an HDL environment

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Tests Of Electronic Circuits (AREA)

Description

Die Erfindung betrifft ein Verfahren zum Testen eines in­ tegrierten Schaltkreises, bei dem in einer Datenverarbei­ tungsanlage ein Modell einer den integrierten Schaltkreis (IC) und weitere elektrische Funktionseinheiten enthal­ tenden Schaltungsanordnung gemäß einer Schaltungsbe­ schreibungssprache definiert wird. Die Schaltungsbe­ schreibungssprache ist z. B. die bekannte Sprache VHDL (very high speed integrated circuit hardware description language). Die Funktion der Schaltungsanordnung wird an Hand des Modells durch die Datenverarbeitungsanlage in einem Simulationslauf überprüft. Beim Simulationslauf ar­ beitet die Datenverarbeitungsanlage z. B. das Programm "QSim II" der Firma Mentor Graphics ab. Ferner betrifft die Erfindung ein Verfahren und eine Datenverarbei­ tungsanlage zum Erzeugen von beim Testen verwendeten Testdaten.
Während eines Simulationslaufes werden mit Teilmodellen der weiteren elektrischen Funktionseinheiten Schaltzu­ stände berechnet, die Schaltzustände an Eingängen des in­ tegrierten Schaltkreises definieren. Mit einem IC-Modell des integrierten Schaltkreises werden aus den Schaltzu­ ständen an den Eingängen Schaltzustände an Ausgängen des integrierten Schaltkreises berechnet. Weiterhin werden während des Simulationslaufes in einer Mitschnittdatei die Schaltzustände an zumindest einem Teil der Anschlüsse des integrierten Schaltkreises sowie zugehörige Simulati­ onszeitpunkte gespeichert. Aus den in der Mitschnittdatei enthaltenen Daten werden nach dem Simulationslauf Testda­ ten für einen Testautomaten erzeugt.
Der integrierte Schaltkreis wird erst hergestellt, wenn während des Simulationslaufes keine Fehler mehr auftre­ ten. Nach der Produktion des integrierten Schaltkreises wird dieser zum Erfassen von Produktionsfehlern mit dem Testautomaten unter Verwendung der Testdaten getestet.
Soll der integrierte Schaltkreis unabhängig von der Schal­ tungsanordnung getestet werden, so könnten in einem zusätzli­ chen Verfahrensschritt mit den bekannten Testwerkzeugen Testdaten dadurch erzeugt werden, daß die Simulation des ASIC's unter Beachtung der durch den Testautomaten vorgegebe­ nen Restriktionen erfolgt. Nachteilig ist dann jedoch der zeitliche und technische Aufwand für den zusätzlichen Verfah­ rensschritt.
Es ist Aufgabe der Erfindung ein einfaches Verfahren zum Testen eines Schaltkreises mit vollautomatisch erzeugten Testdaten anzugeben, das bereits vor dem Test der gesamten Schaltungsanordnung oder das nach diesem Test zur gezielten Fehlersuche verwendet werden kann. Außerdem ist es Aufgabe der Erfindung, ein Verfahren zum Erzeugen der Testdaten sowie eine Datenverarbeitungsanlage zum Erzeugen der Testdaten anzugeben.
Diese Aufgabe wird durch ein Verfahren mit den Merkmalen des Patentanspruchs 1 gelöst. Vorteilhafte Weiterbildungen sind in den Unteransprüchen angegeben.
Die Erfindung geht von der Erkenntnis aus, daß während der Simulation der gesamten Schaltungsanordnung auch die Schalt­ zustände an allen Anschlüssen des integrierten Schaltkreises berechnet werden müssen. Die Verbindungen des integrierten Schaltkreises zu den anderen Funktionseinheiten bilden Schnittstellen, die den integrierten Schaltkreis klar vom übrigen Teil der Schaltungsanordnung abgrenzen. Aufgrund dieser Schnittstellen ist es möglich, den integrierten Schaltkreis aus der Schaltungsanordnung herauszulösen bzw. die anderen Funktionseinheiten einfach wegzulassen und den integrierten Schaltkreis nach seiner Herstellung alleine mit den für seine Anschlüsse berechneten Daten zu testen. Die Testdaten für den integrierten Schaltkreis werden beim Ver­ fahren nach der Erfindung aus den Daten in einer Mitschnittdatei erzeugt, die während der ohnehin notwendigen Simulation der gesamten Schal­ tungsanordnung gespeichert worden ist. Ein zusätzlicher Verfahrensschritt, in welchem der integrierte Schaltkreis nochmals extra simuliert werden muß, entfällt beim Ver­ fahren nach der Erfindung. Somit ergibt sich ein einfa­ ches Verfahren zum Testen des integrierten Schaltkreises, bei dem der integrierte Schaltkreis auch unabhängig von den anderen Funktionseinheiten der Schaltungsanordnung getestet werden kann.
Beim Verfahren nach der Erfindung arbeitet der integrier­ te Schaltkreis beim Testen unabhängig von den weiteren elektrischen Funktionseinheiten. Durch diese Maßnahme wird erreicht, daß der integrierte Schaltkreis bereits vor dem Einbau in die Schaltungsanordnung z. B. unmittel­ bar nach der Herstellung getestet werden kann. Ein weite­ rer Test wird zweckmäßigerweise durchgeführt, bevor der von einem Zulieferer gelieferte Schaltkreis vom Herstel­ ler der Schaltungsanordnung in die Schaltungsanordnung eingelötet wird. Fehler im Schaltkreis lassen sich somit noch vor der Montage erfassen, so daß sonst bei der Feh­ lersuche und der Fehlerbeseitigung entstehende Kosten vermieden werden können.
Der integrierte Schaltkreis kann auch unabhängig von den weiteren elektrischen Funktionseinheiten getestet werden, wenn er schon Bestandteil der Schaltungsanordnung ist, d. h. z. B. mit den Leiterbahnen einer Leiterplatte verlö­ tet ist. Ein derartiger Test wird auch als "In-circuit- Test" bezeichnet. Die Schaltungsanordnung wird so entwor­ fen, daß die weiteren Funktionseinheiten der Schal­ tungsanordnung während des Tests keinen Einfluß auf den integrierten Schaltkreis und damit auf das Testergebnis haben. Beispielsweise werden die Ausgänge dieser Funkti­ onseinheiten in einen sogenannten hochohmigen Zustand ge­ schaltet. Durch ein solches Vorgehen läßt sich bei einer Leiterplatte mit fehlerhafter Schaltungsanordnung leicht feststellen, ob der integrierte Schaltkreis die Fehler­ quelle ist.
Beim Verfahren nach der Erfindung müssen während der Si­ mulation in der Mitschnittdatei nur solche Schaltzustände gespeichert werden, die an den Eingängen oder den Ausgän­ gen des Modells des integrierten Schaltkreises auftreten. Auch bei integrierten Schaltkreisen mit mehreren hundert Anschlüssen hat die Mitschnittdatei so noch einen ohne Schwierigkeiten zu verarbeitenden Umfang.
In einer Weiterbildung der Erfindung gibt es in der Schaltungsanordnung ein periodisches Bezugssignal, mit dessen Hilfe Zyklusgrenzen festgelegt werden. Das Bezugs­ signal ist z. B. ein interner Takt im integrierten Schalt­ kreis, ein von außen an den integrierten Schaltkreis an­ gelegter Takt oder ein an einer anderen Stelle der Schal­ tungsanordnung auftretender Takt. Die Zyklusgrenzen legen bei der Simulation zeitlich aufeinanderfolgende Simula­ tionszyklen und beim Testen zeitlich aufeinanderfolgende Testzyklen fest. Durch die Berücksichtigung von Taktsi­ gnalen kann das erfindungsgemäße Verfahren bei taktabhän­ gig arbeitenden Systemen eingesetzt werden, z. B. Schal­ tungsanordnungen mit Mikroprozessoren.
Beim Durchführen der genannten Verfahrensschritte müssen die Testdaten testergerecht so erzeugt werden, daß die durch den Testautomaten vorgegebenen technischen Parame­ ter eingehalten werden. Die Zykluszeit des Takts in der Schaltungsanordnung liegt gemäß Entwurfsvorgaben z. B. bei 10 ns. Diese kurzen Zeitspannen für Signalwechsel werden auch bei der Simulation berücksichtigt, indem für Simula­ tionszeitpunkte mit einem numerischen Wert von 0 ns, 10 ns usw. Schaltzustände berechnet werden. Testautomaten können jedoch neue Testdaten nur z. B. alle 200 ns an den zu testenden Schaltkreis anlegen. Deshalb ist bei einer Weiterbildung der Erfindung die durch die Simulations­ zeitpunkte an den Zyklusgrenzen eines Simulationszyklus festgelegte Zeitspanne kürzer als die Dauer eines Testzy­ klus. Somit findet eine Streckung der Zeitachse beim Te­ sten statt. Durch diese Maßnahme lassen sich auch später sehr schnell arbeitende Schaltungsanordnungen mit relativ langsam arbeitenden Testautomaten testen.
In einer anderen Weiterbildung der Erfindung werden die Testdaten so erzeugt, daß Änderungen von Schaltzuständen desselben Signals in den Testzyklen nur mit gleichem zeitlichen Abstand zum Anfang des jeweiligen Testzyklus auftreten. Somit gibt es für die Änderung von Schaltzu­ ständen während des gesamten Testverlaufs nur eine zeit­ liche Beschreibung, die z. B. in einem Zeitdatensatz hin­ terlegt ist. Ein solcher Zeitdatensatz wird englisch auch als "Timeset" bezeichnet. Durch diese Maßnahme können Te­ stautomaten verwendet werden, die nur einen Zeitdatensatz zulassen. Testautomaten mit mehreren Zeitdatensätzen ar­ beiten in der Regel langsamer. Auch bei ihnen ist die An­ zahl der Zeitdatensätze beschränkt, z. B. auf sechzehn Zeitdatensätze. Aufgrund unterschiedlicher Signallaufzei­ ten innerhalb der Schaltungsanordnung und insbesondere innerhalb des integrierten Schaltkreises, treten Si­ gnaländerungen auch bei der Simulation zu nicht genau vorhersagbaren Simulationszeitpunkten auf. Bei der Wei­ terbildung mit nur einem Zeitdatensatz werden die Ände­ rungen von Schaltzuständen innerhalb eines Simulationszy­ klus jedoch an einen vorgegebene Zeitpunkte innerhalb ei­ nes Testzyklus verschoben.
Werden die Testdaten in einer anderen Weiterbildung der Erfindung so erzeugt, daß sich die Schaltzustände an bi­ direktionalen Anschlüssen des integrierten Schaltkreises nur an den Zyklusgrenzen der Testzyklen ändern, so können auch Testautomaten verwendet werden, die nur Daten mit derartigen Schaltzustandsänderungen verarbeiten können.
Testautomaten, die keine Beschränkung bezüglich der Ände­ rung der Schaltzustände haben, sind nämlich nicht immer verfügbar bzw. werden aus anderen Gründen nicht verwen­ det.
In einer anderen Weiterbildung des Verfahrens nach der Erfindung wird bei der Simulation und beim Erzeugen der Testdaten ein Umschaltsignal berücksichtigt, welches die Signalflußrichtung an bidirektionalen Anschlüssen des in­ tegrierten Schaltkreises angibt. Durch diese Maßnahme können automatisch, d. h. ohne manuellen Eingriff, Schalt­ zustände an bidirektionalen Anschlüssen in Schaltzustände unterteilt werden, welche Eingabesignale für den inte­ grierten Schaltkreis sind, und in Schaltzustände, welche Ausgabesignale des integrierten Schaltkreises darstellen. Während Eingabeschaltzustände beim Testen vom Testautoma­ ten an den integrierten Schaltkreis angelegt werden, sind Ausgabeschaltzustände Sollwerte, die beim Test durch den Testautomaten abgefragt werden. Bei der Simulation der Schaltungsanordnung wird das Umschaltsignal unabhängig davon berechnet, ob es ein von außen nicht zugängliches internes Umschaltsignal oder ein externes Umschaltsignal ist, das später an einem Anschluß des integrierten Schaltkreises abgreifbar ist. Somit kann die automatische Zuordnung der Schaltzustände zu Eingabeschaltzuständen und Ausgabeschaltzuständen an bidirektionalen Anschlüssen bei der Weiterbildung auch durchgeführt werden, wenn spä­ ter beim Test das Umschaltsignal von außen nicht mehr di­ rekt beeinflußt werden kann. Schaltzustände, die das Um­ schaltsignal betreffen, müssen in diesem Fall zwar in der Mitschnittdatei gespeichert werden, sind aber nicht mehr in den Testdaten enthalten.
In einer anderen Weiterbildung der Erfindung wird der Si­ gnalverlauf des Umschaltsignals so verändert, daß der zu einem Abtastzeitpunkt am Ende des Simulationszyklus er­ mittelte Schaltzustand bereits zu einem innerhalb dessel­ ben Simulationszyklus vor diesem Abtastzeitpunkt liegen­ den Verschiebungszeitpunkt auftritt. Dieser Verschie­ bungszeitpunkt hat in allen Simulationszyklen den glei­ chen zeitlichen Abstand zum Anfang des jeweiligen Simula­ tionszyklus. Durch diese Maßnahme wird erreicht, daß in einem Simulationszyklus relativ spät auftretende Änderun­ gen des Umschaltsignals bereits beim Erstellen der Testdaten für diesen Simulationszyklus berück­ sichtigt werden können. Dies gilt insbesondere dann, wenn zur Vereinfachung des Erstellens der Testdaten nur Schaltzustände zu einem relativ frühen Zeitpunkt innerhalb der Simulations­ zyklen berücksichtigt werden.
Ebenso wie die Umschaltsignale werden in einer anderen Ausge­ staltung der Erfindung auch ausgewählte Eingangssignale an Eingängen des integrierten Schaltkreises innerhalb eines Simulationszyklus verschoben. Dies betrifft Eingangssignale an Eingängen, die ausschließlich über Bausteine mit kombina­ torischen Grundfunktionen auf Ausgänge des integrierten Schaltkreises wirken. Solche Bausteine sind z. B. UND-Gatter, ODER-Gatter und Negatoren. Es wird von der Erkenntnis ausge­ gangen, daß bei diesen Eingangssignalen selbst Änderungen von Signalzuständen, die zum Zyklusende hin auftreten, noch die Schaltzustände an Ausgänge des integrierten Schaltkreises im gleichen Simulations- bzw. Testzyklus beeinflussen. Die Ände­ rung wird dann wie im Zeitdatensatz vorgegeben, z. B. erst am Ende des Testzyklus durchgeführt. Durch das Verschieben der ausgewählten Eingangssignale zum Anfang des Testzyklus hin, wird erreicht, daß beim Erzeugen der Testdaten die Schaltzu­ stände nur zu einem einzigen Zeitpunkt innerhalb des Simula­ tionszyklus betrachtet werden müssen.
Ist der integrierte Schaltkreis ein sogenannter anwenderspe­ zifischer integrierter Schaltkreis, d. h. ein ASIC (application specific integrated circuit), so ist der Einsatz des vorliegenden Verfahrens besonders vorteilhaft, weil es für solche integrierten Schaltkreise keine standardmäßigen Testdaten gibt.
Die ein Verfahren zum Erzeugen der Testdaten betreffende Aufgabe der Erfindung wird durch ein Verfahren gemäß Patentanspruch 16 gelöst. Die oben angegebenen technischen Wirkungen gelten auch für das Verfahren zum Erzeugen der Testdaten selbst.
Die eine Datenverarbeitungsanlage betreffende Aufgabe wird durch Datenverarbeitungsanlage zum Erzeugen von Testdaten mit den Merkmalen des Patentanspruchs 17 gelöst. Mit der Datenverarbeitungsanlage wird insbesondere das Verfahren zum Erzeugen der Testdaten durchgeführt. Somit gelten die ober genannten technischen Wirkungen auch für die Datenverarbeitungsanlage.
Im folgenden werden Ausführungsbeispiele der Erfindung an Hand der beiliegenden Zeichnungen erläutert. Darin zeigen:
Fig. 1 eine Blockdarstellung einer zu modellierenden und später zu testenden Baugruppe mit ASIC,
Fig. 2A und 2B ein Ablaufdiagramm mit Verfahrensschritten und Dateien zum Erzeugen von Testdaten für den Test des ASIC's,
Fig. 3 Schaltzustände an Anschlüssen des ASIC's während der Simulation,
Fig. 4 Schaltzustände an den in Fig. 3 gezeigten An­ schlüssen des ASIC's gemäß Testdaten,
Fig. 5 Schaltzustände an Anschlüssen des ASIC's und Schaltzustände an einem Umschaltsignal während der Simulation, und
Fig. 6 Schaltzustände an den in Fig. 5 gezeigten An­ schlüssen des ASIC's gemäß Testdaten.
Fig. 1 zeigt eine Blockdarstellung einer zu modellieren­ den Baugruppe 10, die einen ASIC 12 enthält. Die Baugrup­ pe 10 ist Bestandteil einer noch herzustellenden Daten­ verarbeitungsanlage. Der ASIC 12 wird von einem ASIC- Hersteller gemäß den Vorgaben des Herstellers der Bau­ gruppe 10 gefertigt. Bevor der Hersteller der Baugruppe 10 den ASIC 12 fertigen läßt, überprüft er mit Hilfe ei­ ner Modellierung und Simulation, ob der ASIC 12 alle ihm zugewiesenen Aufgaben innerhalb der Baugruppe 10 erfüllen kann. Vor der Simulation wird mit Hilfe eines Modellie­ rungsprogramms auf einer betriebsfähigen Daten­ verarbeitungsanlage ein Modell der Baugruppe 10 gemäß ei­ ner Schaltungsbeschreibungssprache definiert. Eine be­ kannte Schaltungsbeschreibungssprache ist z. B. die Spra­ che VHDL (very high speed integrated circuit hardware description language). Anschließend wird die Simulation mit einem Simulationsprogramm I durchgeführt, das auf derselben Datenverarbeitungsanlage ausgeführt wird. Als Simulationsprogramm I, vgl. Fig. 2A, wird z. B. das be­ kannte Programm "QSIM II", "QHDL" oder ein anderes Pro­ gramm der Firma Mentor Graphics verwendet.
Die Baugruppe 10 enthält als weitere elektronische Funk­ tionseinheiten einen sogenannten Bustreiber 14, einen Schnittstellenbaustein 16, einen Hauptspeicher 18, einen Prozessor 20, einen Zwischenspeicher 22, englisch auch "Cache" genannt, mit im Vergleich zum Hauptspeicher 18 kurzer Zugriffszeit, einen Hilfsspeicher 24 und eine Ein- /Ausgabeeinheit 26. Der Bustreiber 14 ist mit einem Sy­ stembus 28 verbunden, über welchen die Baugruppe 10 an andere Baugruppen der herzustellenden Datenverarbeitungs­ anlage Daten sendet oder von den anderen Baugruppen Daten empfängt. Mit dem Bustreiber 14 sind der ASIC 12 und der Schnittstellenbaustein 16 über einen Bus 30 verbunden.
Der Bustreiber 14 hat einerseits die Aufgabe, die von der Baugruppe 10 gesendeten Signale zur Datenübertragung zu verstärken und andererseits dafür zu sorgen, daß der Sy­ stembus 28 beim Empfang von Daten in der Baugruppe 10 nicht zu stark belastet wird.
Ein weiterer Bus 32 der Baugruppe 10 verbindet den ASIC 12 mit dem Schnittstellenbaustein 16 und dem Prozessor 20. Der ASIC 12 ist mit dem Hilfsspeicher 24 über einen Bus 34 und mit der Ein-/Ausgabeeinheit 26 über einen Bus 36 verbunden. Zwischen dem Hauptspeicher 18 zum Speichern von Programmdaten und Nutzdaten sowie dem ASIC 12 befin­ det sich ein Bus 38. Der Schnittstellenbaustein 16 greift auf den Hauptspeicher 18 beim Lesen und Schreiben von Da­ ten mit Hilfe eines Busses 40 zu, welcher den Hauptspei­ cher 18 mit dem Schnittstellenbaustein 16 verbindet. Ein weiterer Bus 42 verbindet den Prozessor 20 mit dem Zwi­ schenspeicher 22.
Die Modelle für die elektronischen Funktionseinheiten 14 bis 26 werden sogenannten Makrobibliotheken entnommen, die der Hersteller des Modellierungsprogramms liefert. Das Modell für den ASIC 12 wird dagegen vom Hersteller der Baugruppe 10 entworfen. Die Busse 30 bis 42 werden durch Verweise modelliert. Die Verweise geben an, welche Anschlüsse des ASIC 12 und der Funktionseinheiten 14 bis 26 miteinander verbunden sind.
Während der Simulation wird die Funktionsweise der Bau­ gruppe 10 u. a. dadurch überprüft, daß auf den Anschlüssen des Systembusses 28 für die Baugruppe 10 Eingaben erzeugt werden, die später auch beim Betrieb der herzustellenden Datenverarbeitungsanlage auftreten. Die daraufhin mit der Baugruppe 10 simulierten Ausgaben auf den Systembus 28 werden dann mit Sollausgaben verglichen, die beim fehler­ freien Betrieb als Reaktion auf die Eingaben auftreten sollen.
Die Simulation erfolgt dabei so, daß für die Modelle des ASIC's 12 und der elektronischen Funktionseinheiten 14 bis 26 abhängig von den Schaltzuständen an den Eingängen Schaltzuständen an den Ausgängen berechnet werden. Dies erfolgt für jeden einzelnen Taktimpuls eines Systemtaktes T, der an Takteingängen des ASIC's 12, des Schnittstel­ lenbausteins 16 und des Prozessors 20 anliegt. Dieser Sy­ stemtakt T ist aus Gründen der Übersichtlichkeit in Fig. 1 nicht dargestellt, wird aber unten anhand der Fig. 3 erläutert.
Die Schaltzustände an sämtlichen Eingängen und Ausgängen des Modells des ASIC's 12 werden während der Simulation in einer Mitschnittdatei oder mehrerer Mitschnittdateien gespeichert. Aus den in der Mitschnittdatei gespeicherten Daten werden nach dem unten an Hand der Fig. 2A und 2B erläuterten Verfahren Testdaten erzeugt, die für den Test des vom ASIC-Hersteller gefertigten ASIC's 12 in einem Testautomaten verwendet werden.
In Fig. 1 verdeutlicht eine um den ASIC 12 herum verlau­ fende Strichlinie 44, daß bei der Simulation in der Mit­ schnittdatei nur Schaltzustände gespeichert werden, die mit den Modellen der Funktionseinheiten 14 bis 20, 24 und 26 berechnet werden und die gleichzeitig Ausgangspunkt für Berechnungen mit dem Modell des ASIC's 12 sind sowie Schaltzustände, die mit dem Modell des ASIC's 12 für die Modelle der Funktionseinheiten 14 bis 20, 24 und 26 be­ rechnet werden.
Treten bei der Simulation der Funktionsweise der Baugrup­ pe 10 keine Fehler mehr auf, so übergibt der Hersteller der Baugruppe 10 die Schaltungsbeschreibung des ASIC's 12 an den ASIC-Hersteller, der den ASIC 12 fertigt. Gegebe­ nenfalls übergibt der Hersteller der Baugruppe 10 auch die aus den Daten in der Mitschnittdatei erzeugten Test­ daten an den Hersteller des ASIC's 12, so daß dieser auch ohne Kenntnis der Funktionen des ASIC's 12 oder gar der Baugruppe 10 testen kann, ob der vom ihm produzierte ASIC 12 fehlerfrei arbeitet.
Die Testdaten betreffen ausschließlich die durch die Strichlinie 44 angedeutete Schnittstelle zwischen dem ASIC 12 und den anderen Funktionseinheiten 14 bis 26. Dies ermöglicht, daß der ASIC 12 beim Testen auf dem Te­ stautomaten unabhängig von den anderen Funktionseinheiten 14 bis 26 getestet werden kann.
Die Fig. 2A und 2B zeigen ein Ablaufdiagramm mit Ver­ fahrensschritten zum Erzeugen der Testdaten für den Test des ASIC's 12, vgl. Fig. 1. Die an Hand der Fig. 1 er­ läuterte Simulation der Baugruppe 10 wird durch einen Verfahrensschritt 100 dargestellt. Der Schritt 100 wird beim Abarbeiten des Simulationsprogramms I ausgeführt. Der bereits erwähnte Systemtakt T wird als Bezugssignal zum Festlegen von Zyklusgrenzen verwendet. Die Zyklus­ grenzen definieren einen Simulationszyklus Zn der Simula­ tion, vgl. Fig. 3 und 5. Durch die Zyklusgrenzen wer­ den auch für den späteren Test des gefertigten ASIC's die Grenzen von Testzyklen Zn' festgelegt, vgl. Fig. 4 und 6. Die Unterschiede zwischen Simulationszyklen Zn und Testzyklen Zn' werden unten an Hand der Fig. 3 und 4 erläutert. Der Kleinbuchstabe n ist eine natürliche Zahl, die Werte von 1 bis N bzw. 1 bis N' annimmt, wobei N die Nummer des letzten Simulationszyklus Zn bzw. N' die Num­ mer des letzten Testzyklus Zn' ist.
In eine erste Mitschnittdatei 102 werden beim Durchführen des Verfahrensschritts 100 die Schaltzustände von Ein­ gangssignalen des ASIC's 12 und von sogenannten Umschalt­ signalen des ASIC's 12 geschrieben. Die Umschaltsignale sind Signale, die festlegen, in welcher Signalrichtung bidirektionale Anschlüsse am ASIC 12 bzw. an dessen Mo­ dell zum jeweiligen Simulationszeitpunkt arbeiten. Die bidirektionalen Anschlüsse arbeiten abhängig vom Um­ schaltsignal entweder als Eingänge oder als Ausgänge. In einer weiteren Mitschnittdatei 104 werden die Schaltzu­ stände von Ausgangssignalen des ASIC's 12 sowie ebenfalls die Schaltzustände der Umschaltsignale gespeichert. Die bidirektionalen Signale werden sowohl in der ersten Mit­ schnittdatei 102 als auch in der weiteren Mitschnittdatei 104 gespeichert, weil diese Signale einerseits als Ein­ gänge wirken und andererseits auch Ausgangssignale dar­ stellen. Die Schaltzustände werden in einem Format ge­ speichert, das durch das Simulationsprogramm I vorgegeben ist. So werden z. B. zu den Schaltzuständen auch die zuge­ hörigen Simulationszeitpunkte in den Mitschnittdateien 102, 104 abgespeichert.
In einem Verfahrensschritt 106 werden die in den Mit­ schnittdateien 102 und 104 gespeicherten Daten in Daten gemäß einem Zwischenformat umgewandelt. Dieses Zwischen­ format ist im Ausführungsbeispiel das SNIP-Format (standard NICE pattern; NICE = Nixdorf Integrated Circuit Environment), ein hauseigenes Datenformat der Firma Sie­ mens Nixdorf Informationssysteme AG. Das Zwischenformat ermöglicht es, die nachfolgenden Verfahrensschritte unab­ hängig vom verwendeten Simulationsprogramm durchzuführen. Voraussetzung ist aber, daß die vom jeweiligen Simulati­ onsprogramm erzeugten Simulationsdaten zuerst in das ver­ wendete Zwischenformat umgewandelt werden.
Bei der Umwandlung im Schritt 106 wird aus der Mit­ schnittdatei 102 eine Datei 108 erzeugt, welche die Schaltzustände der Eingangssignale und der Umschaltsigna­ le im SNIP-Format enthält. Die Schaltzustände und die Si­ mulationszeitpunkte bleiben im Vergleich zu den Schaltzu­ ständen und Simulationszeitpunkten in der Mitschnittdatei 102 in der Datei 108 unverändert. Im Verfahrensschritt 106 werden auch die in der Mitschnittdatei 104 enthalte­ nen Daten in das SNIP-Format umgewandelt. Es entsteht ei­ ne Datei 110, die Schaltzustände von Ausgangssignalen und Umschaltsignalen sowie zugehörige Simulationszeitpunkte enthält. Der Verfahrensschritt 106 wird durch Abarbeiten eines Umwandlungsprogramms II ausgeführt.
In einem Verfahrensschritt 112 werden zu einem vorgegebe­ nen Zeitpunkt ZP1 innerhalb jedes Simulationszyklus die Schaltzustände der Eingangssignale und der Umschaltsigna­ le abgegriffen. Dies wird auch als "Strobe" bezeichnet und erfolgt, indem an Hand der in der Datei 108 vermerk­ ten Signaländerungen und der zugehörigen Simulations­ zeitpunkte der Zustand des jeweiligen Signals zum Zeit­ punkt ZP1 im bearbeiteten Simulationszyklus Zn ermittelt wird.
Das Abgreifen der Schaltzustände im Schritt 112 bereitet ein Verschieben von kombinatorisch wirkenden Eingangs­ signalen und der Umschaltsignale in einem unten erläu­ terten Verfahrensschritt 116 vor. Das Verschieben ist er­ forderlich, wenn der beim späteren Test des ASIC's ver­ wendete Testautomat eine Änderung von Schaltzuständen an bidirektionalen Anschlüssen nur an den Zyklusgrenzen zu­ läßt. Durch das Verschieben wird insbesondere erreicht, daß die Schaltzustände der kombinatorisch wirkenden Ein­ gangssignale und der Umschaltsignale bereits in dem zum jeweiligen Simulationszyklus Zn gehörenden Testzyklus Zn' wirksam werden, vgl. auch Verfahrensschritt 120. Dies wird unten an Hand der Fig. 3 und 4 noch ausführlicher erläutert.
Die kombinatorisch wirkenden Eingänge sind solche Eingän­ ge des ASIC's 12, deren Schaltzustände sich innerhalb desselben Simulationszyklus Zn auf den Schaltzustand an einem oder mehreren Ausgängen des ASIC's auswirken. Dies sind Eingänge, die nur über eine einfache Kombinatorik, z. B. aus UND-Gattern und ODER-Gattern, mit Ausgängen des ASIC's 12 verbunden sind. Wie bereits erwähnt, geben die Umschaltsignale an, in welcher Signalrichtung bidirektio­ nale Anschlüsse des ASIC's 12 im jeweiligen Simulations­ zyklus Zn betrieben werden. Der Schaltzustand Null des Umschaltsignals gibt an, daß die vom jeweiligen Umschalt­ signal beeinflußten bidirektionalen Anschlüsse als Ein­ gänge arbeiten. Der Schaltzustand logisch Eins gibt dage­ gen an, daß die zugehörigen bidirektionalen Anschlüsse Ausgänge sind.
Das Abgreifen der Schaltzustände im Verfahrensschritt 112 erfolgt durch Abarbeiten eines Abgreifprogramms III, das als Eingabe die Datei 108 bearbeitet und als Ausgabe eine Datei 114 erzeugt, die ebenfalls Schaltzustände im SNIP- Format enthält. In der Datei 114 sind zum Zeitpunkt ZP1 in jedem Simulationszyklus Zn die Schaltzustände der Ein­ gangssignale und der Umschaltsignale vermerkt.
Im folgenden Schritt 116 wird die Datei 114 bearbeitet, wobei die zu den im Verfahrensschritt 112 ermittelten Schaltzuständen der koombinatorisch wirkenden Eingangs­ signale und der Umschaltsignale gehörende Simulationszeit um einen festen Betrag verringert wird. Dieser Betrag er­ gibt sich aus der Differenz des Simulationszeitpunktes ZP1 und eines im jeweils betrachteten Simulationszyklus Zn vor diesem liegenden vorgegebenen Simulationszeitpunk­ tes ZP2. Der Zeitpunkt ZP2 tritt wie auch der Simulati­ onszeitpunkt ZP1 innerhalb jedes Simulationszyklusses Zn zur gleichen Zeit auf. Die Veränderung des Simulations­ zeitpunktes im Verfahrensschritt 116 führt zu einer zeit­ lichen Verschiebung des Umschaltens der bearbeiteten Si­ gnale. Das Umschalten des betrachteten Signals wird auf den Zeitpunkt ZP2 verschoben.
Das Verschieben im Verfahrensschritt 116 wird beim Abar­ beiten eines Verschiebungsprogramms IV durchgeführt. Als Ausgabe erzeugt das Verschiebungsprogramm IV eine Datei 118. In der Datei 118 sind die Schaltzustände der im Schritt 116 auf den Zeitpunkt ZP2 verschobenen Umschalt­ signale sowie die Schaltzustände aller anderen Eingänge zu dem in Schritt 112 vorgegebenen Zeitpunkt ZP1 kombina­ torisch wirkenden Eingangssignale im SNIP-Format gespei­ chert.
In einem Verfahrensschritt 120 werden alle in der Datei 118 für die Eingangssignale und in der Datei 110 für die Ausgangssignale gespeicherten Signalverläufe bearbeitet. Mit Hilfe eines Abgreifprogramms V werden aus der Datei 118 für die Eingangssignale und die Umschaltsignale die Schaltzustände zu einem vorgegebenen Zeitpunkt ZP3a er­ mittelt und in einer Datei 122 vermerkt. Der Zeitpunkt ZP3a liegt zwischen den Zeitpunkten ZP2 und ZP1 nahe am Zeitpunkt ZP2 und wird vorzugsweise so gewählt, daß er vor der aktiven Flanke des Systemtakts T im jeweiligen Simulationszyklus Zn liegt. Beim Abarbeiten es Abgreif­ programms V werden die Schaltzustände der in der Datei 110 enthaltenen Ausgangssignale und Umschaltsignale zu einem vorgegebenen Zeitpunkt ZP3b ermittelt und in einer Datei 124 vermerkt. Der Zeitpunkt ZP3b liegt vorzugsweise am Ende eines Simulationszyklus Zn, also nach den Zeit­ punkten ZP2, ZP3a und ZP1. Zum Zeitpunkt ZP3b verändern sich innerhalb des Simulationszyklus keine Schaltzustände mehr. Das Abgreifen der Signalzustände erfolgt für jeden Simulationszyklus Zn, Zn + 1 usw. Die Lage der Zeitpunkte ZP3a und ZP3b ist aus den unten erläuterten Fig. 3 und 4 ersichtlich. Die Dateien 122 und 124 enthalten Daten im SNIP-Format und werden in einem folgenden Verarbeitungs­ schritt 126 weiter bearbeitet.
Im Verfahrensschritt 126 wird ein Generierungsprogramm VI abgearbeitet, das aus den in den Dateien 122 und 124 ge­ speicherten Signalverläufen testergerechte Signalverläufe erzeugt, welche durch den Testautomaten an die Signalver­ läufe gestellten Anforderungen erfüllen. Das Generie­ rungsprogramm VI verarbeitet weiterhin folgende Eingaben:
  • - die Länge eines Testzyklusses Zn'. Diese Zeit kann von der Zeit abweichen, die durch einen Simulati­ onszyklus Zn vorgegeben ist. Deshalb werden Zeiten, die sich auf den Test beziehen, mit einem hochge­ stellten Strich gekennzeichnet.
  • - die Vorgabe eines Zeitdatensatzes, der Definitionen von Zeitpunkten ZP4a' bis ZP4f' enthält, zu denen der Testautomat die Schaltzustände von bestimmten Signalen verändern soll. Ein solcher Zeitdatensatz wird englisch auch als "Timeset" bezeichnet.
  • - eine Liste der Umschaltsignale und der zu den je­ weiligen Umschaltsignalen gehörenden bidirektiona­ len Anschlüsse des ASIC's 12.
Im Verfahrensschritt 126 werden die unten an Hand der Fig. 3 bis 6 erläuterten Schritte durchgeführt. Zu die­ sen Schritten gehören:
  • - das Ausrichten der Signalverläufe an den vorgegebe­ nen Zeitpunkten ZP4a' bis ZP4f';
  • - das Anpassen der Simulationszeit t an die Testzeit t', bei unterschiedlicher Zyklusbreite von Simula­ tionszyklus Zn und Testzyklus Zn', z. B. durch Mul­ tiplikation der Simulationszeitpunkte mit einem Streckungsfaktor;
  • - das Überschreiben von Schaltzuständen für auf Aus­ gabe geschaltete bidirektionale Anschlüsse des ASIC's 12 mit einem Wert, der einen hochohmigen Zu­ stand angibt, z. B. mit dem Wert Z, vgl. auch Fig. 6;
  • - das Einfügen zusätzlicher Testzyklen Zn', in denen bidirektionale Ausgänge den hochohmigen Zustand Z haben. Diese Einfügungen werden im Zusammenhang mit der Fig. 6 weiter unten erläutert.
  • - Entfernen der Schaltzustände für die Umschaltsigna­ le, falls die Umschaltsignale nur intern im ASIC 12 auftreten.
Als Ergebnis der Bearbeitung im Verfahrensschritt 126 entsteht aus der Datei 122 eine Datei 128, in der die Schaltzustände der Eingangssignale testergerecht enthal­ ten sind. Aus der Datei 124 wird eine Datei 130 erzeugt, die testergerechte Ausgangssignale enthält. Die Dateien 128 und 130 enthalten Daten im SNIP-Format.
In einem letzten Verfahrensschritt 132 zum Erzeugen der Testdaten werden die in den Dateien 128 und 130 enthalte­ nen Daten mit Hilfe eines Umwandlungsprogramms VII in ein Datenformat umgewandelt, welches durch den Testautomaten bearbeitet werden kann. Bei der Umwandlung entsteht eine Datei 134, in welcher die Daten gemäß dem Format des Te­ stautomaten gespeichert sind. Die Daten in der Datei 134 bilden ein Testerprogramm, weil durch den Testautomaten nacheinander jeweils Eingangsdaten an die Anschlüsse des ASIC's 12 angelegt werden und die Daten an den Ausgängen des ASIC's 12 mit den in der Datei 134 enthaltenen Soll­ daten für die Ausgänge verglichen werden.
Das Erzeugen der Dateien nach jedem Verfahrensschritt er­ möglicht eine klare Trennung der Programme I bis VII, so daß unterschiedliche Entwickler bzw. Gruppen von Entwick­ lern an einem Programm arbeiten können. Die Durchführung der Verfahrensschritte 100, 106, 112, 116, 120, 126 und 132 kann jedoch auch ohne das Zwischenspeichern der Er­ gebnisse in separaten Dateien erfolgen. Weiterhin können die in den Verfahrensschritten 106, 120, 126 und 132 durchgeführten Bearbeitungsschritte für die Eingangs­ signale und die Ausgangssignale auch getrennt mit ver­ schiedenen Programmen durchgeführt werden.
Fig. 3 zeigt Schaltzustände an Anschlüssen des ASIC's 12, vgl. Fig. 1, während der Simulation. Die Schaltzu­ stände sind jeweils für bestimmte Simulationszeiten t dargestellt. Auf einer Zeitachse 150 werden verschiedene Simulationszeitpunkte ZP dargestellt. Eine Zyklusgrenze 152 zeigt den Beginn eines Simulationszyklus Zn. Dieser Simulationszyklus Zn ist an einer Zyklusgrenze 154 been­ det. Unmittelbar nach dem Simulationszyklus Zn folgt der nächste Simulationszyklus Zn + 1, dessen Anfang genau das Ende des Zyklus Zn ist, d. h. die Zyklusgrenze 154. Der Simulationszyklus Zn + 1 endet an einer Zyklusgrenze 156.
Beide Simulationszyklen Zn und Zn + 1 simulieren gleich lange Simulationszeitabschnitte, von z. B. 10 ns. Die Zu­ ordnung der im jeweiligen Simulationszyklus berechneten Schaltzustände zu Simulationszeitpunkten erfolgt wie be­ reits erwähnt, durch das Vermerken der Simulationszeit­ punkte in der Mitschnittdatei 102 bzw. 104, vgl. Fig. 2A.
Bei der Simulation werden digitale Schaltzustände zu be­ stimmten Simulationszeitpunkten ZP simuliert. Die Abfolge dieser Schaltzustände an einem bestimmten Anschluß bildet mit größer werdender Simulationszeit t einen Signalver­ lauf. Bei der im Ausführungsbeispiel betrachteten digita­ len Simulation gibt es nur die Schaltzustände logisch Null und logisch Eins. Diese Schaltzustände lassen sich durch zwei Werte auf einer Abszissenachse darstellen. In Fig. 3 sind fünf Signalverläufe 160 bis 168 dargestellt.
Der Signalverlauf 160 zeigt die Schaltzustände des Sy­ stemtaktes T in den Simulationszyklen Zn, Zn + 1. Der Sy­ stemtakt T schaltet in jedem Simulationszyklus Zn genau einmal vom Wert logisch Null zum Wert logisch Eins und danach wieder vom Wert logisch Eins zum Schaltzustand lo­ gisch Null um. Die simulierte Frequenz des Systemtaktes T beträgt deshalb für das obige Beispiel mit einer Zyklus­ zeit 10 ns genau 100 MHz. Der durch den Systemtakt T er­ zeugte Signalverlauf 160 enthält somit innerhalb eines Simulationszyklus jeweils ein Impulssignal 170 mit einer auch während der Simulation relativ konstanten Impuls­ breite Br. Auch der Beginn des Impulssignals 170 bezüg­ lich des Anfangs des jeweiligen Simulationszyklus Zn ist für alle Simulationszyklen Zn etwa gleich, vgl. Taktver­ zögerung TDT.
Der Abstand aufeinanderfolgender Zyklusgrenzen 152 bis 156 ist durch die Taktperiode des Systemtaktes T vorgege­ ben. Beim Festlegen der genauen Lage der Zyklusgrenzen 152 bis 156 gibt es demzufolge nur noch einen Freiheits­ grad, z. B. das Festlegen des Zyklusbeginns bezüglich des Impulssignals 170. Die Taktverzögerung TDT wird zweckmä­ ßigerweise nicht zu kurz gewählt, da die Zeitspanne TDT für die Verfahrensschritte 116 und 120 benötigt wird, vgl. Fig. 2A und 2B. Andererseits darf die Taktverzö­ gerung TDT nicht zu groß gewählt werden, da am Ende des Simulationszyklus alle Signalzustände, die sich aufgrund des Impulssignals 170 ändern, einen stabilen Schalt­ zustand haben müssen.
Der Signalverlauf 162 gehört zu einem Eingang A des ASIC's 12, vgl. Fig. 1. Beim Signalverlauf 162 handelt es sich um ein Rampensignal, da dieses Signal innerhalb eines Simulationszyklus Zn nur einmal seinen Schaltzu­ stand wechselt. Tritt innerhalb eines Simulationszyklus Zn ein Wechsel des Schaltzustands am Eingang A auf, so liegt dieser Wechsel auch nur innerhalb eines vorgegebe­ nen Zeitbereiches. Im Simulationszyklus Zn liegt zwischen Zyklusgrenze 152 und Umschaltzeitpunkt eine Verzögerungs­ zeit TDAZn. Im Simulationszyklus Zn + 1 liegt zwischen der Zyklusgrenze 154, d. h. dem Beginn des Simulationszyklus Zn + 1, und dem Umschaltzeitpunkt eine Verzögerungszeit TDAZn + 1. Die Verzögerungszeiten TDAZn und TDAZn + 1 sind voneinander verschieden. Der Unterschied läßt sich durch unterschiedliche Signallaufzeiten in den elektronischen Baueinheiten erläutern, die den jeweiligen Schaltzustand am Eingang A erzeugen.
Der Signalverlauf 164 tritt an einem Eingang B des ASIC's 12 auf. Auch beim Signalverlauf 164 handelt es sich bezo­ gen auf einen Simulationszyklus Zn um ein Rampensignal, weil der Schaltzustand entweder gar nicht oder nur einmal wechselt. An einem Eingang C des ASIC's 12 tritt bei der Simulation der Signalverlauf 166 auf. Der Eingang C ist ein sogenannter kombinatorischer Eingang, weil er nur über kombinatorische Schaltelemente mit Ausgängen des ASIC's 12 verbunden ist. Innerhalb eines Simulationszy­ klus Zn hat der Signalverlauf 166 die Form eines Rampen­ signals.
Der Signalverlauf 168 bezieht sich auf drei bidirektiona­ le Anschlüsse des ASIC's 12, die wahlweise als Eingänge oder als Ausgänge arbeiten und als Bus B1 bezeichnet wer­ den. Der Bus B1 ist Bestandteil des Busses 30, vgl. Fig. 1. Ein nicht dargestelltes Umschaltsignal legt die Ar­ beitsweise der Anschlüsse des Busses B1 fest. In Fig. 3 wurde das Umschaltsignal nicht dargestellt, da es während der gezeigten Simulationszyklen Zn und Zn + 1 seinen Wert nicht verändert. Die Anschlüsse des Busses B1 arbeiten beim in der Fig. 3 gezeigten Beispiel als Eingänge. Die Vorgänge bei einem Schaltzustandwechsel am Umschaltsignal werden unten an Hand der Fig. 5 und 6 erläutert.
Zu Beginn des Simulationszyklus Zn liegen an den als Ein­ gängen arbeitenden Anschlüssen des Busses B1 Schaltzu­ stände Null, Null und Eins an, dargestellt durch "001". Diese Schaltzustände werden beim Umschalten des System­ taktes T für die Berechnungen innerhalb des IC-Modells für den ASIC 12 übernommen, so daß bereits kurz nach dem Auftreten der steigenden Taktflanke des Systemtaktes T neue Schaltzustände an den Anschlüssen des Busses B1 an­ gelegt werden können. Die dabei auftretenden kurzfristi­ gen Signalzustände sind durch Überkreuzungen angedeutet. Zu Beginn des Simulationszyklus Zn + 1 liegen Signalzustän­ de Null, Eins und Null am Bus B1 an, vgl. "010".
Die Lage der Simulationszeitpunkte ZP1 bis ZP3b bezogen auf den jeweiligen Simulationszyklus Zn ist in allen Si­ mulationszyklen Zn gleich, vgl. auch die den Simulations­ zeitpunkten ZP1 bis ZP3b entsprechenden Simulationszeit­ punkte ZP1* bis ZP3b* im Simulationszyklus. Im folgenden muß deshalb nur die Lage der Simulationszeitpunkte im Si­ mulationszyklus Zn erläutert werden. Der Simulationszeit­ punkt ZP1, auf den im Verfahrensschritt 112 gemäß Fig. 2A Bezug genommen wird, liegt etwa zu Beginn des letzten Viertels des Simulationszyklus Zn. Zu diesem Zeitpunkt haben alle Schaltzustände im Simulationszyklus Zn bereits den Wert, den sie auch am Ende des Simulationszyklus Zn haben.
Der im Verfahrensschritt 116 gemäß Fig. 2A verwendete Simulationszeitpunkt ZP2 liegt etwa am Ende des ersten Drittels des Simulationszyklus Zn. Im Verfahrensschritt 116 wird der zum Simulationszeitpunkt ZP1 ermittelte Schaltzustand am kombinatorischen Eingang C auf den Zeit­ punkt ZP2 "verschoben". Das bedeutet, daß nicht der wäh­ rend der Simulation zum Zeitpunkt ZP2 am Eingang C anlie­ gende Schaltzustand Eins, sondern der zum Zeitpunkt ZP1 am Eingang C anliegende Schaltzustand Null weiterbearbei­ tet wird, so daß auch eine relativ späte Änderung des Schaltzustands am Eingang C in einem zum Simulati­ onszyklus Zn gehörenden Testzyklus Zn' wirksam wird, vgl. auch die Beschreibung der Fig. 4 weiter unten. Die nach der steigenden Taktflanke des Systemtaktes T auftretenden Änderungen der Schaltzustände an den Eingängen A, B und am Bus B1 werden dagegen erst in einem zum Simulati­ onszyklus Zn + 1 gehörenden Testzyklus Zn + 1' wirksam, weil diese Schaltzustände nicht nach Zeitpunkt ZP2 verschoben werden.
Der Zeitpunkt ZP3a liegt hinter dem Zeitpunkt ZP2 und noch vor dem Zeitpunkt, an dem die steigende Flanke des Systemtaktes T liegt. Der Zeitpunkt ZP3a ist wie bereits erwähnt, der Zeitpunkt, zu dem für alle Eingangssignale und Umschaltsignale die Schaltzustände ermittelt werden, die im zugehörigen Testzyklus Zn' gelten sollen, vgl. die unten stehende Erläuterung zur Fig. 4.
Der Zeitpunkt ZP3b, zu dem die in der Datei 110 gemäß Fig. 2A enthaltenen Ausgangssignale und Umschaltsignale bestimmt werden, liegt zwischen dem Zeitpunkt ZP1 und dem Ende des Simulationszyklus Zn.
Fig. 4 zeigt Schaltzustände an Anschlüssen des ASIC's gemäß Testdaten, die aus den bei der Simulation aufgenom­ menen Signalzuständen gemäß Fig. 3 erzeugt worden sind. Beim Erläutern der Fig. 4 wird auch ohne ausdrücklichen Hinweis auf die Fig. 3 Bezug genommen. Auf einer Zei­ tachse 180 wird die Testzeit t' dargestellt. Die Zeitach­ se 180 ist gegenüber der Zeitachse 150 gestreckt. Ein Testzyklus Zn' ist durch Zyklusgrenzen 152' und 154' be­ grenzt. Ein dem Testzyklus Zn' folgender Testzyklus Zn + 1' wird durch die Zyklusgrenze 154' und eine Zyklusgrenze 156' begrenzt. Die Testzyklen haben z. B. eine Dauer von 200 ns und sind somit für das oben angegebene Beispiel zwanzig mal so lang wie die Simulationszyklen Zn. Zu den Signalverläufen 160 bis 168 gehören in dieser Reihenfolge Signalverläufe 160' bis 168'.
Der Signalverlauf 160' stellt die Schaltzustände am Tak­ teingang des ASIC's 12 dar. Aufgrund der Streckung der Zeitachse 180 gegenüber der Zeitachse 150 hat der System­ takt T beim Test nur noch eine Frequenz von 5 MHz. Der Signalverlauf 160' wird im Verfahrensschritt 126 gemäß Fig. 2B erzeugt, wobei jedoch nicht auf die in den Da­ teien 122 und 124 enthaltenen Daten zurückgegriffen wird, da der Signalverlauf 160 durch das Abgreifen der Signale im Verfahrensschritt 120 gemäß Fig. 2A verloren gegangen ist. Für jeden Testzyklus Zn' werden unten erläuterte Zeitpunkte ZP4c' und ZP4d' vorgegeben, welche die Breite des Taktimpulses 170' in jedem Testzyklus Zn' festlegen.
Der Signalverlauf 162' wird aus dem Signalverlauf 162 er­ zeugt. Der Schaltzustand zum Zeitpunkt ZP3a wird auch im zugehörigen Testzyklus Zn' vom Testautomaten verwendet. Als Umschaltzeitpunkt wurde ein Zeitpunkt ZP4a' im Zeit­ datensatz vorgegeben. Der Schaltzustand am Eingang A än­ dert sich gemäß Signalverlauf 162' nur am Anfang eines Testzyklus Zn'. Durch diese Maßnahme wird erreicht, daß nunmehr keine unterschiedlichen Signallaufzeiten mehr auftreten, da ein gegebenenfalls auftretender Zustands­ wechsel immer am Testzyklusbeginn erzwungen wird. Außer­ dem werden beim Festlegen des Zeitdatensatzes Erforder­ nisse berücksichtigt, die durch den Tester vorgegeben werden. Beispielsweise muß der Mindestabstand zwischen aufeinanderfolgenden Änderungen von Schaltzuständen an verschiedenen Eingängen des ASIC's 12 mindestens 10 ns betragen. Die Schaltzustände an bidirektionalen Anschlüs­ sen dürfen sich nur an den Zyklusgrenzen 152' bis 156' ändern.
Beim Vergleichen der Signalverläufe 162 und 162' wird deutlich, daß die nach dem Zeitpunkt ZP3a liegende Ände­ rung des Schaltzustandes am Eingang A vom Wert logisch Null zum Wert logisch Eins erst im nächsten Testzyklus Zn + 1' wirksam wird.
Der Signalverlauf 164' wird aus dem Signalverlauf 164 er­ zeugt. Der Signalverlauf 164' kann sich nur zum Zeitpunkt ZP4b' ändern. Für den Signalverlauf 164' gilt ebenso wie für den Signalverlauf 162', daß Änderungen von Schaltzu­ ständen, die nach dem Zeitpunkt ZP3a liegen, erst in ei­ nem nachfolgenden Testzyklus Zn + 1' wirksam werden. Die Lage der Testzeitpunkte ZP4a' und ZP4b' wird ebenfalls unter Berücksichtigung von Anforderungen an die Schaltlo­ gik festgelegt. Der Schaltzustand am Eingang A muß sich z. B. immer vor dem Schaltzustand am Eingang B ändern.
Der Signalverlauf 166' bezieht sich im Gegensatz zu den Signalverläufen 162' und 164' auf einen kombinatorischen Eingang. Bei diesen Eingängen wird im Verfahrensschritt 116 gemäß Fig. 2A eine Verschiebung durchgeführt. Diese Verschiebung erklärt, warum die nach dem Zeitpunkt ZP3a im Simulationszyklus Zn liegende Änderung des Schaltzu­ standes am Eingang C bereits im zugehörigen Testzyklus Zn' wirksam wird. Der Schaltzustand Null zum Zeitpunkt ZP1 wurde nämlich im Schritt 112 gemäß Fig. 2A so ver­ schoben, daß er bereits zum Zeitpunkt ZP2 im Simulations­ zyklus Zn wirksam ist. Beim Abgreifen der Signale zum dem Zeitpunkt ZP2 nachfolgenden Zeitpunkt ZP3a wird festge­ stellt, daß am Eingang C im Simulationszyklus Zn der Schaltzustand logisch Null gilt. Gemäß Zeitdatensatz än­ dert sich das Signal am Eingang C nur zu einem Zeitpunkt ZP4e'. Der Signalverlauf 166' entspricht durch diese Vor­ gabe etwa dem Signalverlauf 166.
Der Signalverlauf 168' für die auf Eingang geschalteten bidirektionalen Anschlüsse des Busses B1 wird im Schritt 126 gemäß Fig. 2B dadurch erzeugt, daß die zum Zeitpunkt ZP3a im Simulationszyklus Zn anliegenden Schaltzustände während des gesamten zugehörigen Testzyklus Zn' verwendet werden. Die Forderung, daß sich Schaltzustände an bidi­ rektionalen Anschlüssen nur an den Zyklusgrenzen 152' bis 156' beim Test ändern dürfen, ist damit erfüllt.
Zum Zeitpunkt ZP3b im Simulationszyklus Zn ermittelte Zu­ stände von Ausgangssignalen werden zu einem Zeitpunkt ZP4f' im Testzyklus Zn' verwendet. Der Zeitpunkt ZP4f' ist durch den Zeitpunkt festgelegt, an welchem der Te­ stautomat die Schaltzustände an den Ausgängen des ASIC's 12 abtastet. Die abgetasteten Werte werden dann mit den zugehörigen Schaltzuständen zum Zeitpunkt ZP4f' vergli­ chen.
Fig. 5 zeigt Schaltzustände an Anschlüssen des ASIC's 12 und Schaltzustände an einem Umschaltsignal U während der Simulation. Die Simulationszeit t ist auf einer Zeitachse 200 abgetragen. Fünf Simulationszyklen Zn bis Zn + 4 werden durch Zyklusgrenzen 202 bis 212 festgelegt. Der System­ takt T wird durch einen Signalverlauf 220 dargestellt.
Die Schaltzustände am internen Umschaltsignal U für den Bus B1 sind durch einen Signalverlauf 222 dargestellt. Umschaltsignale, die ihren Schaltzustand innerhalb eines Simulationszyklusses Zn erst nach dem jeweiligen Zeit­ punkt ZP3a ändern, werden im Verfahrensschritt 116 vom Zeitpunkt ZP1 zum Zeitpunkt ZP2 verschoben, um die Schaltzustände noch im gleichen Zyklus Zn auszuwerten. Das Verschieben erfolgt auf gleiche Weise wie das Ver­ schieben der Schaltzustände am kombinatorisch wirkenden Eingang C, vgl. Erläuterungen der Fig. 3.
Die Schaltzustände am Bus B1 selbst sind durch einen Si­ gnalverlauf 224 verdeutlicht. Im Gegensatz zum anhand der Fig. 3 und 4 erläuterten Ausführungsbeispiel verändert sich beim Ausführungsbeispiel der Fig. 5 und 6 der Schaltszustand des Umschaltsignals U, so daß die An­ schlüsse des Busses B1 sowohl zur Eingabe als auch zur Ausgabe dienen. Der Schaltzustand Null des Umschaltsi­ gnals U gibt an, daß die Anschlüsse des Busses B1 als Eingänge arbeiten. Im Simulationszyklus Zn werden Schalt­ zustände "011" am Bus B1 in den ASIC 12 eingegeben, und im Simulationszyklus Zn + 1 werden Schaltzustände "001" eingegeben.
Der ASIC 12 wird so betrieben, daß vor dem Umschalten des Busses B1 von Eingabe auf Ausgabe Fülldaten F übertragen werden. Die Fülldaten F werden nicht weiter bearbeitet sondern dienen als Platzhalter. Als Fülldatum kann z. B. durchgehend der Schaltzustand Eins verwendet werden. Im Simulationszyklus Zn + 2 werden am Bus B1 die Fülldaten F eingegeben. Außerdem schaltet in diesem Simulationszyklus Zn + 2 das Umschaltsignal U vom Schaltzustand Null zum Schaltzustand Eins um, so daß der Bus B1 als Datenausgabe arbeitet. An den Anschlüssen des Busses B1 werden Schalt­ zustände "111" ausgegeben.
Im Simulationszyklus Zn + 3 schaltet das Umschaltsignal U wieder vom Schaltzustand logisch Eins zum Schaltzustand logisch Null um, so daß der Bus B1 im folgenden Simulati­ onszyklus Zn + 4 wieder als Dateneingabe arbeitet. Im Simu­ lationszyklus Zn + 4 werden Daten "000" am Bus B1 eingege­ ben.
Fig. 6 zeigt Schaltzustände an den Anschlüssen des ASIC's 12, die zu Testdaten gehören und die aus den Si­ gnalverläufen der Simulation gemäß Fig. 5 erzeugt wer­ den. Beim Erläutern der Fig. 6 wird deshalb auch ohne ausdrücklichen Hinweis auf die Fig. 5 bezuggenommen. Ei­ ne gegenüber der Zeitachse 200 gestreckte Zeitachse 230 zeigt die Testzeit t'. Fünf Testzyklen Zn' bis Zn + 4' wer­ den durch Zyklusgrenzen 202' bis 212' festgelegt. Ein Si­ gnalverlauf 220' entspricht dem Signalverlauf 220. Jedoch hat der Systemtakt T beim Test eine Frequenz von nur 5 MHz.
Das Umschaltsignal U tritt am Testautomaten nicht mehr auf, da es ein internes Signal im ASIC 12 ist, das an keinem seiner Anschlüsse angelegt werden kann. Das Um­ schaltsignal U wird abhängig von den Eingaben an den An­ schlüssen des ASIC's 12 automatisch umgeschaltet. Somit gibt es in Fig. 6 keinen zum Signalverlauf 222 gehören­ den Signalverlauf mehr.
Der Signalverlauf 222 wird jedoch verwendet, um aus dem Signalverlauf 224 einen testergerechten Signalverlauf 224' zu erzeugen. Beim Signalverlauf 224' verändern sich die Schaltzustände am Bus B1 nur an den Zyklusgrenzen 202' bis 212'. Ist der Bus B1 auf Dateneingabe geschal­ tet, so werden die Schaltzustände so erzeugt, wie oben bereits anhand der Fig. 4 erläutert. Im Testzyklus Zn + 1' werden die zu Beginn des zugehörigen Simulationszyklus Zn + 1 anliegenden Eingangsdaten "001" vom Testautomaten an die Anschlüsse des Busses B1 angelegt. Die Fülldaten F werden mit einem Wert Z überschrieben, der den Testauto­ maten anweist, an den Anschlüssen des Datenbusses B1 ei­ nen hochohmigen Zustand zu erzeugen. Im Testzyklus Zn + 2' werden durch den Testautomaten somit keine Daten über den Bus B1 in den ASIC eingegeben. Im folgenden Testzyklus Zn + 3' werden ebenfalls keine Daten über den Bus B1 vom Testautomaten in den ASIC 12 eingegeben. Die Schaltzu­ stände "111" zu Beginn des Simulationszyklus Zn + 3 werden durch Werte Z überschrieben, welche den Testautomaten veranlassen, einen hochohmigen Zustand an den Anschlüssen des Busses B1 zu erzeugen. Jedoch werden die Ausgangsda­ ten "111" vom Testautomaten als Solldaten verwendet, die mit Schaltzuständen verglichen werden, welche der Testau­ tomat am Ende des Testzyklus Zn + 2' an den Anschlüssen des Busses B1 abgreift. Im Testzyklus Zn + 4' werden die Schaltzustände "000" vom Testautomaten an den Anschlüssen des Busses B1 erzeugt.
In Fig. 6 nicht dargestellt, ist das Einfügen von zu­ sätzlichen Testzyklen. Beim Umschalten von Datenausgabe auf Dateneingabe wird im Verfahrensschritt 126 gemäß Fig. 2A immer dann ein Testzyklus mit Eingabewerten Z für die Anschlüsse des bidirektionalen Busses B1 eingefügt, wenn das Umschaltsignal U, so wie es bei der Simulation berechnet worden ist, in bezug auf den betrachteten Simu­ lationszyklus zeitlich vor dem Systemtakt T seinen Schaltzustand ändert. Ändert sich das Umschaltsignal U, wie in Fig. 5 gezeigt, gleichzeitig zur steigenden Takt­ flanke des Systemtaktes T oder erst nachdem die steigende Taktflanke des Systemtaktes T aufgetreten ist, so wird kein zusätzlicher Testzyklus eingefügt. Durch dieses Vor­ gehen müssen nur selten zusätzliche Testzyklen eingefügt werden, da das Umschaltsignal in vielen Baugruppen vom Systemtakt T abhängt und somit erst nach der steigenden Taktflanke des Systemtaktes T umschaltet.
In einem anderen Ausführungsbeispiel wird ein Testautomat verwendet, bei dem sich Schaltzustände an bidirektional betriebenen Anschlüssen zu beliebigen Zeitpunkten ändern können. In diesem Fall müssen die Verfahrensschritte 112 und 116 gemäß Fig. 2A nicht ausgeführt werden. Die Ver­ fahrensschritte 120 und 126 werden für diesen Testautoma­ ten auf ähnliche Weise ausgeführt, wie oben erläutert. Anpassungen sind aber hinsichtlich einiger zusätzlicher Anforderungen aufgrund eines anderen Testautomaten not­ wendig.
Bezugszeichenliste
10
Baugruppe
12
ASIC
14
Bustreiber
16
Schnittstellenbaustein
18
Hauptspeicher
20
Prozessor
22
Zwischenspeicher
24
Hilfsspeicher
26
Ein-/Ausgabeeinheit
28
Systembus
30
bis
42
Bus
TSystemtakt
44
Strichlinie
100
Simulation des elektronischen Verhaltens
ISimulationsprogramm
102
,
104
Mitschnittdatei
106
Umwandlung in SNIP-Format
108
,
110
Datei im SNIP-Format
IIUmwandlungsprogramm
112
Abgreifen ausgewählter Signale
ZP1Zeitpunkt
IIIAbgreifprogramm
ZnSimulationszyklus
114
Datei im SNIP-Format
116
Verschieben der kombinatorischen Eingangssigna­ le und aller Umschaltsignale
ZP2Simulationszeitpunkt
IVVerschiebungsprogramm
118
Datei im SNIP-Format
120
Abgreifen aller Signale zu ZP
3
a und ZP
3
b
ZP3a,
ZP3bSimulationszeitpunkt
122
,
124
Datei im SNIP-Format
126
Testergerechte Signalverläufe erzeugen
VIGenerierungsprogramm
ZP4a' bis ZP4f'Testzeitpunkt
Zn'Testzyklus
128
,
130
Datei im SNIP-Format
132
Umwandlung in das Datenformat des Testautomaten
VIIUmwandlungsprogramm
134
Datei im Tester-Format
Zn, Zn + 1Simulationszyklus
t'Simulationszeit
150
Zeitachse
152
bis
156
Zyklusgrenze für Simulationszyklus
152
' bis
156
'Zyklusgrenze für Testzyklus
160
bis
168
Signalverlauf
170
Impulssignal
170
'Impulssignal
BrImpulsbreite
TDTTaktverzögerung
AEingang
TDAZnVerzögerungszeit
TDAZn + 1Verzögerungszeit
Ckombinatorischer Eingang
B1Bus
180
Zeitachse
t'Testzeit
160
' bis
168
'Signalverlauf
Zn',
Zn + 1'Testzyklus
200
Zeitachse
Zn bis Zn + 4Simulationszyklus
202
bis
212
Zyklusgrenze für Simulationszyklus
202
' bis
212
'Zyklusgrenze für Testzyklus
UUmschaltsignal
220
bis
224
Signalverlauf
FFülldatum
230
Zeitachse
Zn' bis Zn + 4'Testzyklus
ZWert für hochohmigen Zustand
ZP1* bis ZP3b*Simulationszeitpunkt
ZP4a* bis ZP4b*Simulationszeitpunkt

Claims (17)

1. Verfahren zum Testen eines integrierten Schaltkreises (12),
bei dem in einer Datenverarbeitungsanlage ein Modell einer den integrierten Schaltkreis (12) und weitere elek­ tronische Funktionseinheiten (14 bis 42) enthaltenden Schaltungsanordnung (10) gemäß einer Schaltungsbeschrei­ bungssprache (VHDL) definiert wird,
die Funktion der Schaltungsanordnung (10) an Hand des Modells durch die Datenverarbeitungsanlage in einem Simu­ lationslauf überprüft wird (Schritt 100),
während des Simulationslaufes mit Teilmodellen der weite­ ren elektronischen Funktionseinheiten (14 bis 42) Schalt­ zustände berechnet werden, die Schaltzustände an Eingän­ gen (A, B, C) des integrierten Schaltkreises (12) defi­ nieren,
mit einem IC-Modell des integrierten Schaltkreises (12) aus den Schaltzuständen an den Eingängen (A, B, C) Schaltzustände an Ausgängen des integrierten Schaltkrei­ ses (12) berechnet werden,
in mindestens einer Mitschnittdatei (102, 104), die während des Simulationslaufes auftretenden Schaltzustände an zumindest einem Teil der Anschlüsse des integrierten Schaltkreises (12) sowie zugehörige Simulationszeitpunkte (ZP) gespeichert werden,
aus den in der Mitschnittdatei (102, 104) enthaltenen Daten Testdaten für einen Testautomaten erzeugt werden (Schritte 106, 112, 116, 120, 126, 134),
nach fehlerfreiem Simulationslauf (Schritt 100) der inte­ grierte Schaltkreis (12) hergestellt wird,
und bei dem der integrierte Schaltkreis (12) mit dem Testautomaten unter Verwendung der Testdaten getestet wird.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß ein periodisches Signal (T) der Schaltungsanordnung (10) als Bezugssignal zum Festlegen von Zyklusgrenzen (152 bis 156; 152' bis 156') verwendet wird, und daß die Zyklusgrenzen (152 bis 156) bei der Simula­ tion zeitlich aufeinanderfolgende Simulationszyklen (Zn) und beim Testen zeitlich aufeinanderfolgende Testzyklen (Zn') festlegen.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß die durch die Simulationszeitpunkte an den Zyklusgrenzen (152 bis 156) eines Simulationszyklus (Zn) festgelegte Zeitspanne kürzer ist, als die Dauer eines Testzyklus (Zn').
4. Verfahren nach Anspruch 2 oder 3, dadurch gekennzeichnet, daß die Testdaten so erzeugt werden, daß Änderungen von Schaltzuständen desselben Signals in verschiedenen Test­ zyklen nur mit gleichem zeitlichen Abstand zum Anfang des jeweiligen Testzyklus auftreten.
5. Verfahren nach einem der Ansprüche 2 bis 4, dadurch gekennzeichnet, daß die Testdaten so erzeugt werden, daß sich die Schaltzustände an bidirektionalen Anschlüssen (B1) des integrierten Schaltkreises (12) nur an den Zy­ klusgrenzen (152 bis 156) der Testzyklen (Zn) ändern.
6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß in jedem Simulationszyklus (Zn, Zn + 1) zu einem für alle Si­ mulationszyklen gleichen ersten Abtastzeitpunkt (ZP1) in­ nerhalb des jeweiligen Simulationszyklus (Zn) der Schalt­ zustand mindestens eines Umschaltsignals (U) ermittelt wird, dessen Schaltzustand angibt, ob durch das Umschalt­ signal (U) beeinflußte bidirektionale Anschlüsse des in­ tegrierten Schaltkreises (12) im jeweiligen Simulations­ zyklus (Zn) als Eingänge oder als Ausgänge arbeiten (Schritt 112).
7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, daß der Signalverlauf des Umschaltsignals (U) so verändert wird, daß der zum ersten Abtastzeitpunkt (ZP1) ermittelte Schaltzustand bereits zu einem innerhalb desselben Simu­ lationszyklus vor dem ersten Abtastzeitpunkt liegenden ersten Verschiebungszeitpunkt (ZP2) auftritt, der für al­ le Simulationszyklen (Zn, Zn + 1) den gleichen zeitlichen Abstand zum Anfang des jeweiligen Simulationszyklus (Zn, Zn + 1) hat (Schritt 116).
8. Verfahren nach einem der Ansprüche 5 bis 7, dadurch gekennzeichnet, daß das Umschalten der bidirektionalen Anschlüsse von Eingabe auf Ausgabe und von Ausgabe auf Eingabe durch ein internes Umschaltsignal (U) gesteuert wird, das nicht an einem Anschluß des integrierten Schaltkreises (12) abgreifbar ist.
9. Verfahren nach einem der Ansprüche 5 bis 8, dadurch gekennzeichnet, daß in jedem Simulationszyklus (Zn) zu einem für alle Simulationszyklen (Zn) gleichen zweiten Abtastzeitpunkt (ZP1) innerhalb des jeweiligen Simulati­ onszyklus (Zn) der Schaltzustand von ausgewählten Ein­ gangssignalen (C) des integrierten Schaltkreises (12) er­ mittelt wird (Schritt 112), und daß die ausgewählten Eingangssignale (C) an Eingängen anliegen, die ausschließlich über Bausteine mit kombina­ torischen Grundfunktionen auf Ausgänge des integrierten Schaltkreises (12) wirken.
10. Verfahren nach Anspruch 9, dadurch gekennzeichnet, daß der erste Abtastzeitpunkt (ZP1) mit dem zweiten Abtast­ zeitpunkt (ZP1) im jeweiligen Simulationszyklus (Zn) identisch ist.
11. Verfahren nach einem der Ansprüche 9 bis 10, dadurch gekennzeichnet, daß der Signalverlauf der ausgewählten Eingangssignale (C) so verändert wird, daß der zum zwei­ ten Abtastzeitpunkt (ZP1) ermittelte Schaltzustand be­ reits zu einem innerhalb desselben Simulationszyklus vor dem zweiten Abtastzeitpunkt (ZP1) liegenden zweiten Ver­ schiebungszeitpunkt (ZP2) auftritt, der für alle Simula­ tionszyklen (Zn) den gleichen zeitlichen Abstand zum An­ fang des jeweiligen Simulationszyklus (Zn) hat (Schritt 116)
12. Verfahren nach Anspruch 11, dadurch gekennzeichnet, daß der erste Verschiebungszeitpunkt (ZP2) mit dem zweiten Verschiebungszeitpunkt (ZP2) im jeweiligen Simulationszy­ klus (Zn) identisch ist.
13. Verfahren nach einem der Ansprüche 5 bis 12, dadurch gekennzeichnet, daß ein zusätzlicher Testzyklus mit hochohmigen Schaltzuständen an bidirektionalen Anschlüs­ sen des integrierten Schaltkreises beim Umschalten des Umschaltsignals (U) für bidirektionale Anschlüsse von Ausgabe auf Eingabe nur dann eingefügt wird, wenn das un­ bearbeitete Umschaltsignal (U) seinen Schaltzustand in­ nerhalb des jeweiligen Simulationszyklus (Zn) zeitlich vor dem periodischen Signal (T) ändert.
14. Verfahren nach einem der vorhergehenden Ansprüche, da­ durch gekennzeichnet, daß der integrierte Schaltkreis (12) ein sogenannter anwenderspezifischer integrierter Schaltkreis (ASIC) ist.
15. Verfahren nach einem der vorhergehenden Ansprüche, da­ durch gekennzeichnet, daß der integrierte Schaltkreis (12) beim Testen unabhängig von den weiteren elektroni­ schen Funktionseinheiten (14 bis 42) arbeitet.
16. Verfahren zum Erzeugen von Testdaten für den Test eines integrierten Schaltkreises (12),
bei dem in einer Datenverarbeitungsanlage ein Modell einer den integrierten Schaltkreis (12) und weitere elek­ trische Funktionseinheiten (14 bis 42) enthaltenden Schaltungsanordnung (10) gemäß einer Schaltungsbeschrei­ bungssprache (VHDL) definiert wird,
die Funktion der Schaltungsanordnung (10) an Hand des Modells durch die Datenverarbeitungsanlage in einem Simu­ lationslauf überprüft wird (Schritt 100),
während des Simulationslaufes mit Teilmodellen der weite­ ren elektrischen Funktionseinheiten (14 bis 42) Schaltzu­ stände berechnet werden, die Schaltzustände an Eingängen (A, B, C) des integrierten Schaltkreises (12) definieren,
mit einem IC-Modell des integrierten Schaltkreises (12) aus den Schaltzuständen an den Eingängen (A, B, C) Schaltzustände an Ausgängen des integrierten Schaltkrei­ ses (12) berechnet werden,
in mindestens einer Mitschnittdatei (102, 104), die während des Simulationslaufes auftretenden Schaltzustände an zumindest einem Teil der Anschlüsse des integrierten Schaltkreises (12) sowie zugehörige Simulationszeitpunkte (ZP) gespeichert werden,
aus den in der Mitschnittdatei (102, 104) enthaltenen Daten Testdaten für einen Testautomaten erzeugt werden,
wobei die Testdaten die Schnittstelle (44) zwischen dem integrierten Schaltkreis (12) und den weiteren Funktions­ einheiten (14 bis 42) betreffen, so daß der integrierte Schaltkreis (12) beim Test unabhängig von den anderen Funktionseinheiten (14 bis 42) arbeiten kann.
17. Datenverarbeitungsanlage zum Erzeugen von Testdaten, insbesondere zum Durchführen des Verfahrens nach Anspruch 16,
mit einem Prozessor zum Bearbeiten von Prozessorbefehlen, einer Speichereinheit zum Speichern mindestens einer Mit­ schnittdatei (102, 104), die während eines Simulations­ laufes aufgetretene Schaltzustände an zumindest einem Teil der Anschlüsse eines integrierten Schaltkreises (12) sowie zugehörige Simulationszeitpunkte (ZP) enthält,
wobei beim Simulationslauf (Schritt 100) anhand eines gemäß einer Schaltungsbeschreibungssprache (VHDL) defi­ nierten Modells einer den integrierten Schaltkreis (12) und weitere elektronische Funktionseinheiten (14 bis 42) enthaltenden Schaltungsanordnung (10) die Funktion der Schaltungsanordnung (10) überprüft wird,
einer in der Speichereinheit gespeicherten Befehlsfolge aus Prozessorbefehlen, bei deren Abarbeiten durch den Prozessor aus den in der Mitschnittdatei (102, 104) ent­ haltenen Daten Testdaten für einen Testautomaten zum Te­ sten des gefertigten integrierten Schaltkreises (12) er­ zeugt werden,
dadurch gekennzeichnet, daß die Befehlsfolge so aufgebaut ist, daß die Testdaten die Schnittstelle (44) zwischen dem integrierten Schaltkreis (12) und den weiteren Funk­ tionseinheiten (14 bis 42) betreffen und einen Test des integrierten Schaltkreises (12) unabhängig von den ande­ ren Funktionseinheiten (14 bis 42) erlauben.
DE19740543A 1997-09-15 1997-09-15 Verfahren zum Testen eines integrierten Schaltkreises sowie Verfahren und Datenverarbeitungsanlage zum Erzeugen von Testdaten Expired - Fee Related DE19740543C1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19740543A DE19740543C1 (de) 1997-09-15 1997-09-15 Verfahren zum Testen eines integrierten Schaltkreises sowie Verfahren und Datenverarbeitungsanlage zum Erzeugen von Testdaten

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19740543A DE19740543C1 (de) 1997-09-15 1997-09-15 Verfahren zum Testen eines integrierten Schaltkreises sowie Verfahren und Datenverarbeitungsanlage zum Erzeugen von Testdaten

Publications (1)

Publication Number Publication Date
DE19740543C1 true DE19740543C1 (de) 1999-07-15

Family

ID=7842416

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19740543A Expired - Fee Related DE19740543C1 (de) 1997-09-15 1997-09-15 Verfahren zum Testen eines integrierten Schaltkreises sowie Verfahren und Datenverarbeitungsanlage zum Erzeugen von Testdaten

Country Status (1)

Country Link
DE (1) DE19740543C1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10040050A1 (de) * 2000-08-11 2002-02-21 Mannesmann Vdo Ag Prümodul
DE102013204873A1 (de) 2013-03-20 2014-09-25 Schaeffler Technologies Gmbh & Co. Kg Elektronische Baugruppe und Verfahren zu deren Diagnose

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3338333A1 (de) * 1982-10-22 1984-04-26 Control Data Corp., 55440 Minneapolis, Minn. Logiksimulatorgeraet zur gueltigkeitspruefung einer logikstruktur
EP0139516A2 (de) * 1983-10-17 1985-05-02 BRITISH TELECOMMUNICATIONS public limited company System zur Testerzeugung für Digitalschaltungen
US4769817A (en) * 1986-01-31 1988-09-06 Zycad Corporation Concurrent fault simulation for logic designs
DE4110896A1 (de) * 1990-04-06 1991-10-17 Mitsubishi Electric Corp Vorrichtung zum erfassen eines redundanten schaltkreises in einem logikschaltkreis und verfahren hierfuer
DE19700513A1 (de) * 1996-01-11 1997-07-17 Advantest Corp Mit CAD-Daten verknüpftes Halbleiterprüfsystem

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3338333A1 (de) * 1982-10-22 1984-04-26 Control Data Corp., 55440 Minneapolis, Minn. Logiksimulatorgeraet zur gueltigkeitspruefung einer logikstruktur
EP0139516A2 (de) * 1983-10-17 1985-05-02 BRITISH TELECOMMUNICATIONS public limited company System zur Testerzeugung für Digitalschaltungen
US4769817A (en) * 1986-01-31 1988-09-06 Zycad Corporation Concurrent fault simulation for logic designs
DE4110896A1 (de) * 1990-04-06 1991-10-17 Mitsubishi Electric Corp Vorrichtung zum erfassen eines redundanten schaltkreises in einem logikschaltkreis und verfahren hierfuer
DE19700513A1 (de) * 1996-01-11 1997-07-17 Advantest Corp Mit CAD-Daten verknüpftes Halbleiterprüfsystem

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10040050A1 (de) * 2000-08-11 2002-02-21 Mannesmann Vdo Ag Prümodul
DE102013204873A1 (de) 2013-03-20 2014-09-25 Schaeffler Technologies Gmbh & Co. Kg Elektronische Baugruppe und Verfahren zu deren Diagnose

Similar Documents

Publication Publication Date Title
DE19937232B4 (de) Entwicklungs- und Bewertungssystem für integrierte Halbleiterschaltungen
DE10045568B4 (de) Ereignisgestütztes Halbleiterprüfsystem
EP1552128B1 (de) Verfahren, steuerungsger t und computer-programm zur detektion fehlerhafter drucksensoren bei einer brennkraftmaschine
DE10127170A1 (de) Fehlersuchverfahren und Fehlersuchvorrichtung
DE10031536A1 (de) Ereignisgestütztes Halbleiterprüfsystem
DE19700513C2 (de) Mit CAD-Daten verknüpftes Halbleiterprüfsystem
DE19950821A1 (de) Bewertungssystem für integrierte Halbleiterschaltungen
DE10055456A1 (de) Halbleiterprüfsystem zur Prüfung von Mischsignalbauteilen
DE3702408C2 (de)
DE19702600A1 (de) Elektrische Analyse integrierter Schaltungen
DE102011015444A1 (de) Nethod and apperatus for operational-level functional and degradation fault analysis
EP3306295B1 (de) Verfahren und vorrichtung zum testen elektronischer steuerungen, insbesondere zum testen von automobilsteuerungen
DE2121330A1 (de) Verfahren und Schaltungsanordnung zum Prüfen elektronischer digital arbeitender Geräte und ihre Bauteile
EP0491998B1 (de) Programmgesteuertes Verfahren und Anordnung zur Erzeugung von Impulsen in aufeinanderfolgenden Impulsintervallen
DE19740543C1 (de) Verfahren zum Testen eines integrierten Schaltkreises sowie Verfahren und Datenverarbeitungsanlage zum Erzeugen von Testdaten
EP1850195B1 (de) Verfahren und Vorrichtung zum Testen eines Motorsteuergeräts sowie hierfür geeignetes Motorsteuergerät
DE10112311A1 (de) Verfahren und Einrichtung zum Kalibrieren zur Korrektur von Impulsbreitenzeitfehlern beim Testen integrierter Schaltungen
DE10064407A1 (de) Verfahren und Vorrichtung zur Verifizierung der Angemessenheit von Testmustern
DE10325513B4 (de) Verfahren und Vorrichtung zum Erstellen eines Verhaltensaspekts einer Schaltung zur formalen Verifikation
EP3001318A1 (de) Bestimmung von Signalen für Readback aus FPGA
EP3244325B1 (de) Verfahren zur zeitlich synchronisierten ausgabe und/oder zeitlich synchronisierten verarbeitung von signalen
DE10101067A1 (de) Programmausführungssystem für ein Halbleiter-Prüfgerät
CH694927A5 (de) Verfahren und Vorrichtung zur Fehleranalyse digitaler Logikschatungen..
DE102012203252A1 (de) Vorrichtung und Verfahren zum Testen von elektronischen Geräten mit einer räumlich getrennten Steuereinrichtung
DE102019216684B4 (de) Verfahren zur Timinganalyse von Anwendungssoftware für ein eingebettetes System, Vorrichtung zur Datenverarbeitung, Computerprogramm und computerlesbarer Datenträger

Legal Events

Date Code Title Description
8100 Publication of the examined application without publication of unexamined application
D1 Grant (no unexamined application published) patent law 81
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: FUJITSU SIEMENS COMPUTERS GMBH, 81739 MUENCHEN, DE

8320 Willingness to grant licences declared (paragraph 23)
8339 Ceased/non-payment of the annual fee