DE102007034277A1 - Vorrichtung und Verfahren zum Erzeugen von Test-Strukturdaten zum Testen eines Halbleiterbauelements - Google Patents

Vorrichtung und Verfahren zum Erzeugen von Test-Strukturdaten zum Testen eines Halbleiterbauelements Download PDF

Info

Publication number
DE102007034277A1
DE102007034277A1 DE102007034277A DE102007034277A DE102007034277A1 DE 102007034277 A1 DE102007034277 A1 DE 102007034277A1 DE 102007034277 A DE102007034277 A DE 102007034277A DE 102007034277 A DE102007034277 A DE 102007034277A DE 102007034277 A1 DE102007034277 A1 DE 102007034277A1
Authority
DE
Germany
Prior art keywords
data
data operation
test structure
test
source code
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.)
Ceased
Application number
DE102007034277A
Other languages
English (en)
Inventor
Jong Koo Yongin Kang
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.)
UniTest Inc
Original Assignee
UniTest Inc
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 UniTest Inc filed Critical UniTest Inc
Publication of DE102007034277A1 publication Critical patent/DE102007034277A1/de
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L22/00Testing or measuring during manufacture or treatment; Reliability measurements, i.e. testing of parts without further processing to modify the parts as such; Structural arrangements therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/56External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
    • 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/31813Test pattern generators
    • 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
    • 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/318335Test pattern compression or decompression
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/56External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
    • G11C29/56004Pattern generation

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Manufacturing & Machinery (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Engineering (AREA)
  • Tests Of Electronic Circuits (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

Es werden eine Vorrichtung und ein Verfahren zum Erzeugen von Teststrukturdaten zum Testen eines Halbleiterbauelements offenbart. Gemäß der Vorrichtung und dem Verfahren wird ein Teststrukturprogramm kompiliert durch Vorhersagen einer Datenoperation zum Erzeugen von Teststrukturdaten auf verschachtelte Weise, wodurch eine Notwendigkeit entfällt, dass ein Entwickler des Teststrukturprogramms die Datenoperation während eines Schreibens eines Quellcodes analysiert.

Description

  • ALLGEMEINER STAND DER TECHNIK
  • ERFINDUNGSGEBIET
  • Die vorliegende Erfindung betrifft eine Vorrichtung und ein Verfahren zum Erzeugen von Teststrukturdaten zum Testen eines Halbleiterbauelements, und insbesondere eine Vorrichtung und ein Verfahren zum Erzeugen von Teststrukturdaten zum Testen eines Haltleiterbauelements, wobei ein Teststrukturprogramm kompiliert wird durch Vorhersagen einer Datenoperation zum Erzeugen von Teststrukturdaten auf verschachtelte Weise, wodurch eine Notwendigkeit entfällt, dass ein Entwickler des Teststrukturprogramms die Datenoperation während eines Schreibens eines Quellcodes analysiert.
  • BESCHREIBUNG DES STANDS DER TECHNIK
  • Ein Prüfgerät zum Testen eines Halbleiterbauelements testet, ob das Halbleiterbauelement fehlerhaft ist. Das Prüfgerät zum Testen des Halbleiterbauelements wird entsprechend einem Entwicklungszustand eines Speicherbauelements, insbesondere eines DRAM, ausgelegt und entwickelt, das die meisten der Speicherbauelemente aufnimmt, da das Prüfgerät zum Testen des Halbleiterbauelements hauptsächlich zum Testen der Speicherbauelemente verwendet wird.
  • Die Entwicklung des DRAM schreitet fort von einem EDO-(Extended Data Output)-DRAM, SDRAM (Sychronous DRAM), Rambus-DRAM bis DDR-(Double Data Rate)-DRAM.
  • Um das DRAM zu testen, werden für das Prüfgerät hohe Geschwindigkeit und hohe Genauigkeit erfordert, um einem Hochgeschwindigkeits-DRAM zu entsprechen. Wenn die Kapazität des Speichers erhöht wird, nimmt auch die zum Testen des DRAMs erforderliche Zeit zu. Deshalb muss auch die Testgeschwindigkeit erhöht werden. Zudem sollten Kosten zum Testen des Speichers reduziert werden durch Verkörpern eines miniaturisierten und wirtschaftlichen Prüfgeräts.
  • Von dem Prüfgerät zum Testen des Halbleiterbauelements wird insbesondere das Speicherprüfgerät in der Regel zum Testen und Verifizieren einer Speicherkomponente oder eines Speichermoduls in einer Form eines SIMM oder DIMM verwendet. Das Prüfgerät detektiert einen funktionalen Defekt des Speichermoduls oder der Speicherkomponente vor seiner oder ihrer Installation in einem realen Computersystem.
  • Das Prüfgerät wird in ein Hardwarehalbleiterbauelementprüfgerät und ein in einer PC-Umgebung ausgeführtes Softwarediagnoseprogramm klassifiziert. Da das Softwarediagnoseprogramm jedoch einen Zustand des Speichers diagnostiziert, wenn das Speichermodul oder die Speicherkomponente in dem realen Computer installiert ist, wird das Hardwarehalbleiterbauelementprüfgerät hauptsächlich während eines Halbleiterspeicherherstellungsprozeses verwendet.
  • Das Prüfgerät kann als ein High-End-Prüfgerät, bezeichnet als ein ATE (Automatic Test Equipment) ein Mittelbereichs-Speicherprüfgerät und ein Low-End-Speicherprüfgerät klassifiziert werden.
  • Das ATE, das das High-End-Prüfgerät ist, wird in der Regel verwendet, um einen Testprozess des Speicherbauelements durchzuführen. Das herkömmliche ATE führt Tests durch wie etwa einen Gleichstromtest, um zu testen, ob ein Gleichstromparameter sich für einen digitalen Betrieb einer Schaltung eignet, eine Übertragungslaufzeit von Signalen und einen Wechselstromspielraum hinsichtlich einer Einstellzeit und einer Haltezeit. Das ATE erzeugt auch eine Teststruktur und eine Zeitsteuerung für den Test. Die Herstellungskosten für das ATE sind jedoch hoch, da das ATE unter Verwendung eines eigenen Geräts hergestellt wird, wie etwa eines Mainframe mit erheblicher Größe und hohem Preis.
  • 1 ist ein Blockdiagramm, das ein herkömmliches Prüfgerät zum Testen eines Halbleiterbauelements darstellt.
  • Wie in 1 gezeigt, umfasst das herkömmliche Prüfgerät einen Strukturgenerator 110, einen Zeitsteuergenerator 120, einen Formatcontroller 130, einen Treiber 140, einen Ausgangsvergleicher 150 und eine Testergebnisspeicherung 160. Zusätzlich zu diesen Komponenten kann das herkömmliche Prüfgerät einen Stromversorgungscontroller für den Gleichstromtest, eine Komponente zum Erzeugen eines Taktsignals, eine Komponente zum Liefern eines Stroms für einen Betrieb eines DUT (Device Under Test – zu prüfendes Bauelement) 180, eine Komponente zum Übermitteln von Teststrukturdaten an das DUT 180 und Empfangen eines Testergebnisses von dem DUT 180, eine Komponente zum Empfangen eines Teststrukturprogramms von außerhalb und eine Komponente zum übertragen des Testergebnisses nach außerhalb umfassen. Eine Beschreibung davon entfällt jedoch.
  • Der Strukturgenerator 110 erzeugt die zum Testen des DUT 180 erforderlichen Teststrukturdaten auf der Basis des Teststrukturprogramms. Beispielsweise wird das Teststrukturprogramm so geschrieben, dass es eine Anweisung enthält zum Ausführen verschiedener Operationen, um den Test durchzuführen. Der Strukturgenerator 110 erzeugt die Teststrukturdaten durch Empfangen und Interpretieren des Teststrukturprogramms von einer externen Speicherung, zum Beispiel. Zu den Teststrukturdaten zählen Daten wie etwa ein Befehl, Adresse und in das DUT 180 eingegebene Daten. Außerdem werden den erzeugten Teststrukturdaten entsprechende erwartete Daten erzeugt.
  • Der Zeitsteuergenerator 120 erzeugt eine Zeitsteuerflanke, die eine Referenz zum Konvertieren der in dem Strukturgenerator 110 erzeugten Teststrukturdaten in verschiedene Wellenformen ist. Die Zeitsteuerflanke wird unter Verwendung mehrerer Takte für eine stetige Konvertierung erzeugt.
  • Der Formatcontroller 130 konvertiert die Teststrukturdaten in eine gewünschte Wellenform auf der Basis der Zeitsteuerflanke.
  • Der Treiber 140 überträgt die konvertierte Testwellenform an das DUT 180.
  • Der Komparator 150 testet das DUT 180 durch Vergleichen der von dem DUT 180 ausgegebenen Testausgangsdaten nach Beendigung einer Operation des DUT 180 durch die an das DUT 180 angelegte Testwellenform mit den in dem Strukturgenerator 110 erzeugten erwarteten Daten.
  • Die Testergebnisspeicherung 160 speichert ein Testergebnis auf der Basis eines Ergebnisses des Komparators 150. Beispielsweise wird eine Information über ein fehlerhaftes DUT gespeichert.
  • Wie oben beschrieben ist das herkömmliche ATE ein sehr hochpreisiges Gerät. Deshalb wird bevorzugt, dass ein Hersteller das hochpreisige ATE effizient auslegt, um die Wettbewerbsfähigkeit durch Minimieren der Herstellungskosten davon zu steigern. Für die effiziente Auslegung des ATE sollte die Erzeugung der Teststruktur und der Zeitsteuerung optimiert sein.
  • Insbesondere sollten die Teststrukturdaten einer Operation des Halbleiterbauelements zum Ausführen des Tests an dem Halbleiterbauelement entsprechen. Der Strukturgenerator 110 jedoch, der die Teststrukturdaten erzeugt, wird im allgemeinen unter Verwendung eines programmierbaren Logikbauelements wie etwa eines bei niedriger Geschwindigkeit arbeitenden FPGA verkörpert. Deshalb verwendet der Strukturgenerator 110 mehrere Algorithmusstrukturgeneratoren auf verschachtelte Weise, um die für das bei hoher Geschwindigkeit arbeitende Halbleiterbauelement geeigneten Teststrukturdaten zu erzeugen.
  • Eine Strukturerzeugungsvorrichtung, die die mehreren Algorithmusstrukturgeneratoren verwendet, ist aus dem am 26. November 1996 eingereichten und am 19. Juni 1999 von der Firma Ando Electric Co. Ltd. registrierten koreanischen Patent Nr. 220201 mit dem Titel "Pattern Generating Circuit" und dem am 14. Januar 1997 eingereichten und am 14. November 1999 von der Firma Advantest Corporation registrierten koreanischen Patent Nr. 242604 mit dem Titel "Semiconductor Device Tester" bekannt.
  • 2 ist ein Diagramm, das eine herkömmliche Vorrichtung zum Erzeugen von Teststrukturdaten darstellt.
  • Unter Bezugnahme auf 2 umfasst die herkömmliche Vorrichtung zum Erzeugen der Teststrukturdaten einen Sequenzcontroller 210, mehrere Algorithmusstrukturgeneratoren 220a bis 220d und einen Multiplexer 230.
  • Der Sequenzcontroller 210 holt eine Anweisung und überträgt einen in der Anweisung enthaltenen Instruction-Pointer an jeden der mehreren Algorithmusstrukturgeneratoren 220a bis 220d.
  • Jede der mehreren Algorithmusstrukturgeneratoren 220a bis 220d führt eine vorbestimmte Datenoperation auf der Basis des von dem Sequenzcontroller 210 übertragenen Instruction-Pointers aus und gibt ein Ergebnis davon als Ausgangsdaten aus.
  • Die Ausgangsdaten enthalten einen Befehl, eine Adresse und die Teststrukturdaten darstellende Daten. Die Ausgangsdaten können auch den Teststrukturdaten entsprechende erwartete Daten enthalten. Weil jeder der mehreren Algorithmusstrukturgeneratoren 220a bis 220d unter Verwendung eines bei niedriger Geschwindigkeit arbeitenden Bauelements verkörpert ist, ist eine Komponente zum Anlegen der Ausgangsdaten in einem richtigen Format an das mit der hohen Geschwindigkeit arbeitende Halbleiterbauelement erforderlich.
  • Der Multiplexer 230 multiplexiert, das heißt serialisiert, die Ausgangsdaten jedes der mehreren Algorithmusstrukturgeneratoren 220a bis 220d, um die für das Halbleiterbauelement geeigneten Teststrukturdaten zu erzeugen.
  • Das heißt, der Multiplexer 230 synthetisiert die Ausgangsdaten, die ein Ergebnis der von den mehreren Algorithmusstrukturgeneratoren 220a bis 220d parallel ausgeführten Datenoperation sind.
  • Beispielsweise weist das jeden der mehreren Algorithmusstrukturgeneratoren 220a bis 220d verkörpernde FPGA eine Arbeitsgeschwindigkeit von etwa 300 MHz auf. Deshalb eignen sich die Ausgangsdaten jedes der mehreren Algorithmusstrukturgeneratoren 220a bis 220d für die Arbeitsgeschwindigkeit von 300 MHz. Wenn die Ausgangsdaten unter Verwendung des Multiplexers 230 multiplexiert werden, können die Teststrukturdaten von 1,2 GHz erhalten werden.
  • Wenn die Teststrukturdaten nicht auf die verschachtelte Weise erzeugt werden, ist ein Rahmen das gleiche ein Zyklus. Wenn jedoch die Teststrukturdaten auf die verschachtelte Weise erzeugt werden, das heißt, wenn vier Algorithmusstrukturgeneratoren beispielsweise als ein Algorithmusstrukturgenerator verwendet werden, stellen vier Zyklen einen Rahmen dar. Der Rahmen bezieht sich auf eine Zeitperiode, die für alle die mehreren Algorithmusstrukturgeneratoren 220a bis 220d erforderlich ist, und der Zyklus bezieht sich auf eine Zeitperiode, die für jeden der mehreren Algorithmusstrukturgeneratoren 220a bis 220d erforderlich ist.
  • Deshalb führen die mehreren Algorithmusstrukturgeneratoren 220a bis 220d die vorbestimmte Datenoperation für jeden der Zyklen während des einen Rahmens durch und geben die Ergebnisse der Datenoperation als die Teststrukturdaten aus.
  • Die mehreren Algorithmusstrukturgeneratoren 220a bis 220d des herkömmlichen Prüfgeräts werden unter Verwendung separater Hardwarekomponenten verkörpert und arbeiten unabhängig. Selbst wenn jedoch die separaten Hardwarekomponenten verwendet werden, um die mehreren Algorithmusstrukturgeneratoren 220a bis 220d zu verkörpern, wird die Arbeitseffizienz der Algorithmusstrukturgeneratoren 220a bis 220d durch Vorhersagen eines Ergebnisses der Datenoperationen innerhalb jedes der Zyklen verbessert. Außerdem können die Teststrukturdaten effizient erzeugt werden, wenn die mehreren Algorithmusstrukturgeneratoren 220a bis 220d, die unter Verwendung separater Hardwarekomponenten verkörpert sind, als ein Algorithmusstrukturgenerator angesehen werden.
  • Deshalb sind die Algorithmusstrukturgeneratoren 220a bis 220d logisch korreliert.
  • Ein unten beschriebenes Verfahren kann zum Verkörpern der logischen Korrelation verwendet werden.
  • Das Teststrukturprogramm wird derart erzeugt, dass jeder der Algorithmusstrukturgeneratoren 220a bis 220d die Datenoperation für jeden der Zyklen unabhängig durchführt, und die Ausgangsdaten jedes der Algorithmusstrukturgeneratoren 220a bis 220d werden dann kombiniert, um die Teststrukturdaten zu erzeugen.
  • Das Verfahren ist vorteilhaft, weil eine Ausführungsform der Korrelation einfach ist und die Anweisung, das heißt die Datenoperation, die korreliert sein kann, nicht begrenzt ist, weil die Korrelation von einem Entwickler des Teststrukturprogramms berechnet wird.
  • Der Entwickler des Teststrukturprogramms kann jedoch das Teststrukturprogramm nicht intuitiv schreiben und sollte das Teststrukturprogramm unter Berücksichtigung einer internen Operationsrelation schreiben. Es ist deshalb für den Entwickler schwierig, das Teststrukturprogramm zu schreiben. Das heißt, der Entwickler des Teststrukturprogramms sollte die Datenoperation jedes korrelierten Zyklus wegen der Korrelation zwischen Operationsregistern der Algorithmusstrukturgeneratoren 220a bis 220d berechnen. Deshalb sollte der Entwickler des Teststrukturprogramms sich einem komplexen Prozess zum Schreiben des Teststrukturprogramms unterziehen.
  • Zudem kann ein Compiler das Teststrukturprogramm auf eine Weise konvertieren und kompilieren, dass die Datenoperation von dem Zyklus vorhergesagt wird und in den Algorithmusstrukturgeneratoren 220a bis 220d korreliert wird. In diesem Fall kann der Entwickler des Teststrukturprogramms die Algorithmusstrukturgeneratoren 220a bis 220d beim Schreiben des Teststrukturprogramms als einen Algorithmusstrukturgenerator ansehen.
  • Der Entsprecher sagt die Datenoperation vorher, die von jedem der Algorithmusstrukturgeneratoren 220a bis 220d von dem Zyklus wie etwa einem vorausgegangenen Zyklus und einem gegenwärtigen Zyklus ausgeführt werden sollte, und konvertiert und kompiliert dann das Teststrukturprogramm zu einem neuen Operationscode auf der Basis eines Ergebnisses der Vorhersage anstatt einem direkten Kompilieren des von dem Entwickler des Teststrukturprogramms geschriebenen Teststrukturprogramms. Die Algorithmusstrukturgeneratoren 220a bis 220d führen die Datenoperation auf der Basis des konvertierten Teststrukturprogramms aus. Wenn das Teststrukturprogramm konvertiert und kompiliert wird, wird das Schreiben des Teststrukturprogramms für den Entwickler des Teststrukturprogramms erleichtert. Die Ausführungsform der Algorithmusstrukturgeneratoren 220a bis 220d ist jedoch schwierig, und die Anweisung, die verwendet werden kann, ist beschränkt.
  • Insbesondere wenn die Datenoperation, mehrere Felder zum Erzeugen eines Teststrukturprogramms verwendend, eine Anzahl der Anweisungen, die sich zur Vorhersage und zur Konvertierung eignet, ist beschränkt. Weil die mehreren Felder verwendet werden, zudem die Anzahl der Anweisungen begrenzt zwischen einem Operationscode in dem Zyklus eines vorausgegangenen Rahmens und einem Operationscode in dem Zyklus eines aktuellen Rahmens erhöht.
  • KURZE DARSTELLUNG DER ERFINDUNG
  • Eine Aufgabe der vorliegenden Erfindung besteht in der Bereitstellung einer Vorrichtung und eines Verfahrens zum Erzeugen von Teststrukturdaten zum Testen eines Halbleiterbauelements, wobei ein Teststrukturprogramm kompiliert wird durch Vorhersagen einer Datenoperation zum Erzeugen von Teststrukturdaten auf verschachtelte Weise, wodurch eine Notwendigkeit entfällt, dass ein Entwickler des Teststrukturprogramms die Datenoperation während eines Schreibens eines Quellcodes analysiert.
  • Um die oben beschriebenen Aufgaben der vorliegenden Erfindung zu erfüllen, wird eine Vorrichtung zum Erzeugen von Teststrukturdaten zum Testen eines Halbleiterbauelements bereitgestellt, wobei der Strukturgenerator folgendes umfasst: einen Teststrukturprogrammleser zum Lesen eines Teststrukturprogramms erzeugt durch Vorhersagen einer Datenoperation auf eine Weise, dass die Datenoperation für verschiedene Rahmen ungeachtet einer Datenvorhersagebedingung zulässig ist und nur die Datenoperation für mehrere Verschachtelungszyklen innerhalb eines einzelnen Rahmens gemäß der Datenvorhersagebedingung zulässig ist; mehrere Algorithmusstrukturgeneratoren zum Ausführen der Datenoperation auf verschachtelte Weise auf der Basis des Teststrukturprogramms zum Erzeugen einer Struktur und einen Multiplexer zum Multiplexieren der Struktur zum Erzeugen der Teststrukturdaten zum Testen des Halbleiterbauelements.
  • Außerdem wird ein Verfahren zum Erzeugen von Teststrukturdaten zum Testen eines Halbleiterbauelements bereitgestellt, wobei das Verfahren die folgenden Schritte umfasst: (a) Lesen eines durch Vorhersagen einer Datenoperation erzeugten Teststrukturprogramms auf eine Weise, dass die Datenoperation für verschiedene Rahmen ungeachtet einer Datenvorhersagebedingung zulässig ist und nur die Datenoperation für mehrere Verschachtelungszyklen innerhalb eines einzelnen Rahmens gemäß der Datenvorhersagebedingung zulässig ist; (b) Ausführen der Datenoperation auf verschachtelte Weise auf der Basis des Teststrukturprogramms zum Erzeugen einer Struktur und (c) Multiplexieren der Struktur zum Erzeugen der Teststrukturdaten zum Testen des Halbleiterbauelements.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Blockdiagramm, das ein herkömmliches Prüfgerät zum Testen eines Halbleiterbauelements darstellt.
  • 2 ist ein Diagramm, das eine herkömmliche Vorrichtung zum Erzeugen von Teststrukturdaten darstellt.
  • 3 ist ein Blockdiagramm, das eine Vorrichtung zum Erzeugen von Teststrukturdaten zum Testen eines Halbleiterbauelements gemäß der vorliegenden Erfindung darstellt.
  • 4 ist ein Diagramm, das eine Operation für mehrere Felder in einer Vorrichtung zum Erzeugen von Teststrukturdaten zum Testen eines Halbleiterbauelements gemäß der vorliegenden Erfindung darstellt.
  • 5 ist ein Diagramm, das einen Kompilierprozess in einer Vorrichtung zum Erzeugen von Teststrukturdaten zum Testen eines Halbleiterbauelements gemäß der vorliegenden Erfindung darstellt.
  • 6 ist ein Flussdiagramm, das ein Verfahren zum Erzeugen von Teststrukturdaten zum Testen eines Halbleiterbauelements gemäß der vorliegenden Erfindung darstellt.
  • AUSFÜHRLICHE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • Die vorliegende Erfindung wird nun unter Bezugnahme auf die beiliegenden Zeichnungen ausführlich beschrieben.
  • 3 ist ein Blockdiagramm, das eine Vorrichtung zum Erzeugen von Teststrukturdaten zum Testen eines Halbleiterbauelements gemäß der vorliegenden Erfindung darstellt.
  • Unter Bezugnahme auf 3 umfasst die Vorrichtung gemäß der vorliegenden Erfindung einen Teststruktur programmleser 310, mehrere Algorithmusstrukturgeneratoren 320a bis 320d und einen Multiplexer 330.
  • Der Teststrukturprogrammleser liest ein Teststrukturprogramm.
  • Das Teststrukturprogramm wird von einem mit der Vorrichtung verbundenen, nicht gezeigten Teststrukturprogrammprozessor erzeugt.
  • Der Teststrukturprogrammprozessor ist mit dem Strukturgenerator verbunden, der einen von einem Entwickler des Teststrukturprogramms beschriebenen Quellcode kompiliert, um das Teststrukturprogramm zu erzeugen.
  • Bevorzugt ist der Teststrukturprogrammprozessor in einem die Vorrichtung der vorliegenden Erfindung umfassenden Halbleiterbauelementprüfgerät enthalten. Außerdem kann der Teststrukturprogrammprozessor eine separate Einrichtung sein.
  • Um das Teststrukturprogramm zu erzeugen, umfasst der Strukturgenerator einen Compiler zum Kompilieren des Quellcodes zum Erzeugen des Teststrukturprogramms und einen Teststrukturprogramminspektor zum Bestimmen, ob der Quellcode nur die mit der Datenvorhersagebedingung übereinstimmende Datenoperation enthält.
  • Der Entsprecher kompiliert den Quellcode, wenn bestimmt wird, dass der Quellcode nur die mit der Datenvorhersagebedingung übereinstimmende Datenoperation enthält.
  • Der Entsprecher erzeugt einen ausführbaren Binärcode aus dem Quellcode. Gemäß der vorliegenden Erfindung wird der Quellcode gegebenenfalls vor dem Kompilieren auf der Basis der Datenvorhersagebedingung konvertiert.
  • Der Entsprecher hält das Kompilieren des Quellcodes an, wenn bestimmt wird, dass der Quellcode die mit der Datenvorhersagebedingung nichtübereinstimmende Datenoperation enthält, und gibt eine Fehlermeldung derart aus, dass der Entwickler des Teststrukturprogramms den Quellcode so konfiguriert, dass er nur die mit der Datenvorhersagebedingung übereinstimmende Datenoperation enthält.
  • Das Teststrukturprogramm wird derart vorhergesagt und entsprochen, dass die Datenoperation für verschiedene Rahmen ungeachtet einer Datenvorhersagebedingung gestattet ist und nur die mit der Datenvorhersagebedingung übereinstimmende Datenoperation für mehrere Verschachtelungszyklen innerhalb eines einzelnen Rahmens gestattet ist.
  • Das herkömmliche Teststrukturprogramm sagt die Datenoperation für die verschiedenen Rahmen sowie einen einzelnen Rahmen vorher, um eine Verschachtelung zu verkörpern. Weil das Teststrukturprogramm die Verschachtelung auf der Basis einer Datenvorhersage für einen Datenoperationscode entsprechend einem letzten Verschachtelungszyklus eines vorausgegangenen Rahmens und eines Datenoperationscodes entsprechend einem ersten Verschachtelungszyklus eines gegenwärtigen Rahmens verkörpert, eine Anweisung, die in Verbindung mit den verschiedenen Rahmen verwendet werden kann, das heißt, die Datenoperation ist in dem herkömmlichen Teststrukturprogramm beschränkt.
  • Im Gegensatz zu dem herkömmlichen Teststrukturprogramm wird das in der Vorrichtung gemäß der vorliegenden Erfindung verwendete Teststrukturprogramm durch Vorhersagen der Datenoperation auf eine Weise, dass die Datenoperation für die verschiedenen Rahmen ungeachtet der Datenvorhersagebedingung gestattet ist und nur die Datenoperation für die mehreren Verschachtelungszyklen innerhalb des einzelnen Rahmens in Übereinstimmung mit der Datenvorhersagebedingung gestattet ist, entsprochen. Deshalb existiert die Beschränkung bei der Datenoperation nur in jedem Verschachtelungszyklus in dem einzelnen Rahmen gemäß der vorliegenden Erfindung. Folglich ist die Beschränkung der Datenoperation beim Ausführen der Verschachtelung durch die Vorhersage der Datenoperation reduziert.
  • Der Teststrukturprogrammleser 310 kann das Teststrukturprogramm zum Erzeugen der Teststrukturdaten nach dem Speichern des Teststrukturprogramms in einem Anweisungsspeicher lesen.
  • Der Leseprozess kann das Holen der Anweisung oder von Daten von dem Teststrukturprogramm zum Erzeugen der Teststrukturdaten durch eine Sequenzkontrolle beinhalten.
  • Die Algorithmusstrukturgeneratoren 320a bis 320d erzeugt eine Struktur nach dem Ausführen der Datenoperation auf verschachtelte Weise auf der Basis des Teststrukturprogramms. Während vier Algorithmusstrukturgeneratoren gezeigt sind, können zwei oder drei Algorithmusstrukturgeneratoren verwendet werden. Jedoch können für eine effiziente Verschachtelung zwei oder vier Algorithmusstrukturgeneratoren verwendet werden.
  • Die Datenoperation wird auf die verschachtelte Weise auf der Basis jedes der Rahmen in dem Teststrukturprogramm ausgeführt. Jeder der Rahmen enthält Verschachtelungszyklen entsprechend einer Anzahl der Algorithmusstrukturgeneratoren 320a bis 320d, und jeder der Algorithmusstrukturgeneratoren 320a bis 320d führt die Datenoperation entsprechend dem Verschachtelungszyklus davon parallel aus. Während die Algorithmusstrukturgeneratoren 320a bis 320d unter Verwendung separater Hardwarekomponenten verkörpert sind, kann die Verschachtelung derart verkörpert sein, dass die Algorithmusstrukturgeneratoren 320a bis 320d logisch korreliert sind.
  • Ein Ergebnis der Datenoperation entsprechend dem letzten Verschachtelungszyklus wird zu der Datenoperation entsprechend dem ersten Verschachtelungszyklus rückgekoppelt. Durch die Rückkopplung können die Rahmen korreliert werden. Die Vorrichtung gemäß der vorliegenden Erfindung ist beim Vorhersagen der Datenoperation zwischen den Rahmen durch die Korrelation durch die Rückkopplung nicht beschränkt. Das heißt, wenngleich die Datenoperation möglicherweise zwischen den Rahmen in der verschachtelten Weise durch die Vorhersage gemäß der herkömmlichen Technologie beschränkt sein kann, kann die Beschränkung der Datenoperation durch die Rückkopplung gemäß der vorliegenden Erfindung überwunden werden.
  • Jeder der Algorithmusstrukturgeneratoren 320a bis 320d kann die Datenoperation für mehrere Felder ausführen (ein erstes Feld und ein zweites Feld, beispielsweise in 3 als Feld A bzw. B bezeichnet). Das Ergebnis der Datenoperation für das Feld B kann die Datenoperation für das Feld A beeinflussen.
  • Jeder der Algorithmusstrukturgeneratoren 320a bis 320d kann mehrere Operationsregister enthalten. Die Datenoperation jedes der Verschachtelungszyklen in dem einzelnen Rahmen wird in den mehreren Operationsregistern für die mehreren Felder parallel ausgeführt.
  • Beim Kompilieren des Teststrukturprogramms werden die Datenoperation für jedes der Felder A und B für jeden Verschachtelungszyklus in dem einzelnen Rahmen vorhergesagt und entsprochen.
  • Die Datenoperation für das Feld A unter Bezugnahme auf Feld B wird jedoch wie unten beschrieben ausgeführt.
  • Zur Bezugnahme auf das Ergebnis der Datenoperation für das Feld B wird auf das Ergebnis der Datenoperation für das Feld B in dem vorausgegangenen Rahmen von der Datenoperation für das Feld A in dem gegenwärtigen Rahmen Bezug genommen. Durch Bezugnahme auf das Ergebnis der Datenoperation in dem vorausgegangenen Rahmen kann die Datenoperation ausgeführt werden durch Vorhersagen der mit der Datenvorhersagebedingung in jedem der Verschachtelungszyklen des aktuellen Rahmens übereinstimmenden Datenoperation.
  • Außerdem wird das Teststrukturprogramm entsprochen, um auf den vorausgegangenen Rahmen für die auf verschiedene Felder bezugnehmende Datenoperation Bezug zu nehmen. Das heißt, der Algorithmusstrukturgenerator 320a führt die Datenoperation für das Feld B aus, um einen Wert B1 auszugeben, und auf den Wert B1 wird von der Datenoperation von Feld A in einem nächsten Rahmen Bezug genommen, um einen Wert A1 auszugeben. Die Ausgaben A1 bis A4 der Algorithmusstrukturgeneratoren 320a bis 320d wird dann zur Ausgabe als die Teststrukturdaten multiplexiert.
  • Durch Bezugnahme auf das Ergebnis der Datenoperation für das zweite Feld in dem vorausgegangenen Rahmen anstelle des gegenwärtigen Rahmens selbst im Fall einer Bezugnahme auf Daten des zweiten Felds sowie die Datenoperation für das erste Feld, kann die Datenoperation vorhergesagt werden, um die Korrelation innerhalb des gleichen Rahmens zu verkörpern. Die Ausführungsform der Korrelation innerhalb des gleichen Rahmens reduziert die Beschränkung der Anweisung, die auf den aktuellen Rahmen anzuwenden ist, das heißt die Datenoperation.
  • 4 ist ein Diagramm, das eine Operation für die mehreren Felder in der Vorrichtung zum Erzeugen der Teststrukturdaten zum Testen des Halbleiterbauelements gemäß der vorliegenden Erfindung darstellt.
  • 4 zeigt jede Sequenz des von dem Teststrukturprogrammlesers gelesenen Teststrukturprogramms und den Datenoperationscode für die mehreren Algorithmusstrukturgeneratoren (beispielsweise vier Algorithmusstrukturgeneratoren) entsprechend jeder Sequenz. Außerdem zeigt 4 den vorausgegangenen Rahmen, den gegenwärtigen Rahmen und den nächsten Rahmen für jede Sequenz.
  • Ein Pfeil in 4 stellt die Korrelation dar.
  • Eine Beschreibung des ersten Rahmens (als der vorausgegangene Rahmen bezeichnet) ist wie folgt.
  • Wenn der Quellcode derart beschrieben wird, dass jeder der vier Algorithmusstrukturgeneratoren die Datenoperation von "A = A + 1" für das Feld A und die Datenoperation von "B = B + 1" für das Feld B ausführt, beeinflusst das Ergebnis der Datenoperation von "A = A + 1" oder der Datenoperation von "B = B + 1" einen nächsten Verschachtelungszyklus, das heißt eine nächste Datenoperation des Algorithmusstrukturgenerators.
  • Eine Beschreibung des zweiten Rahmens (als der gegenwärtige Rahmen bezeichnet) ist wie folgt.
  • Wenn der Quellcode derart beschrieben wird, dass jeder der vier Algorithmusstrukturgeneratoren die Datenoperation von "A = B" für das Feld A und die Datenoperation von "B = B – 1" für das Feld B ausführt, beeinflusst das Ergebnis der Datenoperation von "A = B" die Datenoperation der nächsten Datenoperation. Weil die Datenoperation für das Feld B sich nicht auf das Ergebnis der Datenoperation für ein anderes Feld bezieht, kann außerdem jeder der Verschachtelungszyklen auf eine Weise konfiguriert sein, dass die Datenoperation durch die Vorhersage innerhalb des vorausgegangenen Rahmens gestattet wird.
  • Eine Beschreibung des dritten Rahmens (als der nächste Rahmen bezeichnet) ist wie folgt.
  • Wenn der Quellcode derart geschrieben wird, dass jeder der vier Algorithmusstrukturgeneratoren die Datenoperation von "A = B" für das Feld A und die Datenoperation von "B = B·2" für das Feld B ausführt, beeinflusst das Ergebnis der Datenoperation von "A = B" die Datenoperation der nächsten Datenoperation. Deshalb wird die Datenoperation für das Feld A in dem nächsten Rahmen durchgeführt durch Bezugnahme auf das Ergebnis der Datenoperation für das Feld B in dem gegenwärtigen Rahmen. Weil die Datenoperation für das Feld B sich nicht auf das Ergebnis der Datenoperation für ein anderes Feld bezieht, kann außerdem jeder der Verschachtelungszyklen auf eine Weise konfiguriert sein, dass die Datenoperation durch die Vorhersage innerhalb des gegenwärtigen Rahmens gestattet wird.
  • Wieder unter Bezugnahme auf 3 multiplexiert der Multiplexer 330 die Struktur zum Erzeugen der Teststrukturdaten zum Testen des Halbleiterbauelements.
  • 5 ist ein Diagramm, das einen Kompilierungsprozess in der Vorrichtung zum Erzeugen von Teststrukturdaten zum Testen eines Halbleiterbauelements gemäß der vorliegenden Erfindung darstellt.
  • 5 zeigt jede Sequenz des von dem Teststrukturprogrammlesers gelesenen Teststrukturprogramms, den Quellcode (bezeichnet als "Benutzercode") für die mehreren Algorithmusstrukturgeneratoren (beispielsweise erster bis vierter Algorithmusstrukturgenerator) entsprechend jeder Sequenz und den konvertierten und kompilierten Code durch Vorhersagen des zu korrelierenden Quellcodes. 5 zeigt auch den voraus gegangenen Rahmen, den gegenwärtigen Rahmen und den nächsten Rahmen für den Quellcode und den konvertierten und kompilierten Code in jeder Sequenz.
  • Gemäß dem Quellcode führt der erste Algorithmusstrukturgenerator eine Datenoperation "A = A + 1" in dem vorausgegangenen Rahmen durch, und der zweite Algorithmusstrukturgenerator führt die Datenoperation durch Empfangen des Ergebnisses der Datenoperation des ersten Algorithmusstrukturgenerators durch. Da der Quellcode unter der Annahme geschrieben ist, dass die mehreren Algorithmusstrukturgeneratoren korreliert sind obwohl nicht, sollte der Quellcode konvertiert werden.
  • Das heißt, der Quellcode wird von dem Compiler derart konvertiert und kompiliert, dass der erste Algorithmusstrukturgenerator die Datenoperation "A = A + 1" ausführt und der zweite Algorithmusstrukturgenerator die Datenoperation "A = A + 2" durch logisches Berücksichtigen des Ergebnisses der Datenoperation des ersten Algorithmusstrukturgenerators ausführt. Analog wird der Quellcode derart konvertiert und kompiliert, dass der dritte Algorithmusstrukturgenerator eine Datenoperation "A = A + 3" ausführt und der vierte Algorithmusstrukturgenerator eine Datenoperation "A = A + 4" ausführt. Die dem konvertierten und kompilierten Code entsprechende Datenoperation wird dann von den mehreren Algorithmusstrukturgeneratoren ausgeführt.
  • Die Datenoperation für den gegenwärtigen Rahmen wird auf der Basis eines Ergebnisses einer letzten Datenoperation in dem vorausgegangenen Rahmen ausgeführt.
  • Das heißt, der Quellcode wird von dem Compiler derart konvertiert und kompiliert, dass der erste Algorithmusstrukturgenerator die Datenoperation "A = A + 8" ausführt und der zweite Algorithmusstrukturgenerator die Datenoperation "A = A + 4" anstelle von "A = A – 4" durch logisches Berücksichtigen des Ergebnisses der Datenoperation des ersten Algorithmusstrukturgenerators ausführt. Analog wird der Quellcode derart konvertiert und kompiliert, dass der dritte Algorithmusstrukturgenerator eine Datenoperation "A = A + 5" anstelle von "A = A + 1" ausführt und der vierte Algorithmusstrukturgenerator eine Datenoperation "A = A + 6" anstelle von "A = A + 1" ausführt. Die dem konvertierten und kompilierten Code entsprechende Datenoperation wird dann von den mehreren Algorithmusstrukturgeneratoren ausgeführt.
  • Die Datenoperation für den nächsten Rahmen wird auf der Basis eines Ergebnisses einer letzten Datenoperation in dem gegenwärtigen Rahmen ausgeführt.
  • Das heißt, der Quellcode wird von dem Compiler derart konvertiert und kompiliert, dass der erste Algorithmusstrukturgenerator die Datenoperation "A = A·2" ausführt und der zweite Algorithmusstrukturgenerator die Datenoperation "A = A" anstelle von "A = A/2" durch logisches Berücksichtigen des Ergebnisses der Datenoperation des ersten Algorithmusstrukturgenerators ausführt. Analog wird der Quellcode derart konvertiert und kompiliert, dass der dritte Algorithmusstrukturgenerator eine Datenoperation "A = A·2" durch logisches Berücksichtigen des Ergebnisses der Datenoperation des zweiten Algorithmusstrukturgenerators ausführt und der vierte Algorithmusstrukturgenerator eine Datenoperation "A = A·4" anstelle von ausführt. Die dem konvertierten und kompilierten Code entsprechende Datenoperation wird dann von den mehreren Algorithmusstrukturgeneratoren ausgeführt.
  • Der Compiler kann den Quellcode unter Berücksichtigung der Korrelation zwischen dem vorausgegangenen Code und dem gegenwärtigen Code innerhalb des gleichen Rahmens konvertieren und kompilieren. Die Konversion wird jedoch nicht auf alle Datenoperationen angewendet.
  • Tabelle 1 zeigt eine Kombination aus dem vorausgegangenen Code und dem vorhersagbaren gegenwärtigen Code und der vorhergesagten Datenoperation, das heißt die vorbestimmte Datenvorhersagebedingung. [Tabelle 1]
    Figure 00210001
  • "A" und "B" stellt das Datenfeld dar, "C" stellt einen zuvor entsprochenen Code dar, "X" stellt einen unvorhersagbaren Code dar, "imm" stellt einen sofortigen Wert dar, "/" stellt einen Divisionsoperator dar, "*" stellt einen Multiplikationsoperator dar, "+" stellt einen Additionsoperator dar, "–" stellt einen Subtraktionsoperator dar, "&" stellt einen bitweisen AND-Operator dar, "|" stellt einen bitweisen OR-Operator dar und "^" stellt einen bitweisen XOR-Operator dar.
  • Wie in Tabelle 1 gezeigt, kann der gegenwärtige Code auf der Basis des vorausgegangenen Codes konvertiert werden, um die Datenoperation auszuführen.
  • 6 ist ein Flussdiagramm, das ein Verfahren zum Erzeugen der Teststrukturdaten zum Testen des Halbleiterbauelements gemäß der vorliegenden Erfindung darstellt.
  • Unter Bezugnahme auf 6 wird der von dem Entwickler des Teststrukturprogramms geschriebene Quellcode kompiliert, um das Teststrukturprogramm (S110) zu erzeugen.
  • Das Teststrukturprogramm wird auf eine Weise entsprochen, dass die Datenoperation für verschiedene Rahmen ungeachtet der Datenvorhersagebedingung zugelassen ist und nur die mit der Datenvorhersagebedingung für mehrere Verschachtelungszyklen innerhalb des einzelnen Rahmens übereinstimmende Datenoperation zugelassen ist. Die ausführliche Beschreibung des Kompilierungsprozesses erfolgt unter Bezugnahme auf 5.
  • Das Verfahren gemäß der vorliegenden Erfindung kann das Inspizieren des Quellcodes umfassen, um zu bestimmen, ob der Quellcode nur die mit der Datenvorhersagebedingung übereinstimmende Datenoperation enthält.
  • Wenn bestimmt wird, dass der Quellcode die mit der Datenvorhersagebedingung nicht übereinstimmende Datenoperation enthält, wird das Kompilieren angehalten und eine Fehlermeldung wird ausgegeben.
  • Wenn bestimmt wird, dass der Quellcode nur die mit der Datenvorhersagebedingung übereinstimmende Datenoperation enthält, wird der Quellcode konvertiert und kompiliert.
  • Wenn danach das Teststrukturprogramm erzeugt und in dem Prüfgerät gespeichert ist, wird das Teststrukturprogramm gelesen und ausgeführt (S120).
  • Danach wird die Datenoperation auf die verschachtelte Weise ausgeführt, um eine Struktur zu erzeugen (S130).
  • Wenn die Datenoperation auf die verschachtelte Weise ausgeführt wird, werden zwei oder vier Strukturerzeugungen logisch verbunden, und die Struktur wird erzeugt durch Ausführen der Datenoperation entsprechend dem Verschachtelungszyklus jedes der Rahmen des Teststrukturprogramms. Das Ergebnis der Datenoperation entsprechend dem letzten Verschachtelungszyklus wird zu der Datenoperation entsprechend dem ersten Verschachtelungszyklus rückgekoppelt, so dass die Datenoperation beim Ausführen der Korrelation durch die Vorhersage nicht beschränkt ist.
  • Falls die Datenoperation die mehreren Felder enthält, kann die Datenoperation für jedes der mehreren Felder ausgeführt werden.
  • Wenn die Datenoperation für jedes der mehreren Felder ausgeführt werden kann, wird der Quellcode durch Vorhersagen der Datenoperation unter Bezugnahme auf das Ergebnis der Datenoperation eines anderen Felds in dem vorausgegangenen Rahmen derart entsprochen, dass die Datenoperation entsprechend jedem Verschachtelungszyklus des gegenwärtigen Rahmens mit der Datenvorhersagebedingung übereinstimmt.
  • Danach wird die Struktur multiplexiert, um die Teststrukturdaten zu erzeugen (S140).
  • Die Teststrukturdaten werden dann an das zu testende Halbleiterbauelement übertragen.
  • Wenngleich die vorliegende Erfindung unter Bezugnahme auf die bevorzugte Ausführungsform davon besonders gezeigt und beschrieben worden ist, versteht der Fachmann, dass darin verschiedene Änderungen hinsichtlich Form und Details ausgeführt werden können, ohne von dem Gedanken und Schutzbereich der Erfindung abzuweichen.
  • Wie oben beschrieben wird gemäß der Vorrichtung und dem Verfahren zum Erzeugen der Teststrukturdaten zum Testen des Halbleiterbauelements das Teststrukturprogramm kompiliert durch Vorhersagen der Datenoperation zum Erzeugen der Teststrukturdaten auf die verschachtelte Weise, wodurch die Notwendigkeit entfällt, dass der Entwickler des Teststrukturprogramms die Datenoperation während des Schreibens des Quellcodes analysiert.

Claims (18)

  1. Vorrichtung zum Erzeugen von Teststrukturdaten zum Testen eines Halbleiterbauelements, wobei der Strukturgenerator folgendes umfaßt: einen Teststrukturprogrammleser zum Lesen eines Teststrukturprogramms erzeugt durch Vorhersagen einer Datenoperation auf eine Weise, daß die Datenoperation für verschiedene Rahmen ungeachtet einer Datenvorhersagebedingung zulässig ist und nur die Datenoperation für mehrere Verschachtelungszyklen innerhalb eines einzelnen Rahmens gemäß der Datenvorhersagebedingung zulässig ist; mehrere Algorithmusstrukturgeneratoren zum Ausführen der Datenoperation auf verschachtelte Weise auf der Basis des Teststrukturprogramms zum Erzeugen einer Struktur und einen Multiplexer zum Multiplexieren der Struktur zum Erzeugen der Teststrukturdaten zum Testen des Halbleiterbauelements.
  2. Vorrichtungsgenerator nach Anspruch 1, wobei die mehreren Algorithmusstrukturgeneratoren logisch miteinander verbunden sind, um die Datenoperation entsprechend dem Verschachtelungszyklus entsprechend jedem der Rahmen auszuführen, und wobei ein Ergebnis der Datenoperation entsprechend mindestens einem Verschachtelungszyklus zu der Datenoperation entsprechend einem ersten Verschachtelungszyklus rückgekoppelt wird.
  3. Vorrichtungsgenerator nach Anspruch 1, wobei jeder der mehreren Algorithmusstrukturgeneratoren die Datenoperation für erste und zweite Felder ausführt.
  4. Vorrichtungsgenerator nach Anspruch 3, wobei das Teststrukturprogramm erzeugt wird durch Vorhersagen der Datenoperation auf eine Weise, dass die Datenoperation des ersten Feldes entsprechend jedem der mehreren Verschachtelungszyklen eines aktuellen Rahmens mit der Datenvorhersagebedingung übereinstimmt durch Bezugnahme auf ein Ergebnis der Datenoperation des zweiten Feldes eines vorausgegangenen Rahmens.
  5. Vorrichtungsgenerator nach Anspruch 1, wobei der Strukturgenerator mit einem Teststrukturprogrammprozessor verbunden ist, der einen Compiler umfasst zum Kompilieren eines Quellcodes zum Erzeugen des Teststrukturprogramms und einen Teststrukturprogramminspektor zum Bestimmen, ob der Quellcode nur die mit der Datenvorhersagebedingung übereinstimmende Datenoperation enthält.
  6. Vorrichtungsgenerator nach Anspruch 5, wobei der Entsprecher das Kompilieren des Quellcodes anhält, wenn bestimmt wird, dass der Quellcode die nicht mit der Datenvorhersagebedingung übereinstimmende Datenoperation enthält.
  7. Vorrichtungsgenerator nach Anspruch 5, wobei der Compiler den Quellcode auf der Basis des Datenvorhersagecodes für jede der mehreren Verschachtelungszyklen konvertiert, um das Teststrukturprogramm zu erzeugen.
  8. Vorrichtungsgenerator nach Anspruch 1, wobei die mit der Datenvorhersagebedingung übereinstimmende Datenoperation definiert ist durch eine Tabelle
    Figure 00270001
    wobei "A" und "B" ein Datenfeld darstellen, "C" einen zuvor kompilierten Code darstellt, "X" einen unvorhersagbaren Code darstellt, "imm" einen sofortigen Wert darstellt, "/" einen Divisionsoperator darstellt, "*" einen Multiplikationsoperator darstellt, "+" einen Additionsoperator darstellt, "–" einen Subtraktionsoperator darstellt, "&" einen bitweisen AND-Operator darstellt, "|" einen bitweisen OR-Operator darstellt und "^" einen bitweisen XOR-Operator darstellt.
  9. Vorrichtungsgenerator nach Anspruch 1, wobei die mehreren Algorithmusstrukturgeneratoren 2 oder 4 Algorithmusstrukturgeneratoren umfasst.
  10. Verfahren zum Erzeugen von Teststrukturdaten zum Testen eines Halbleiterbauelements, wobei das Verfahren die folgenden Schritte umfasst: (a) Lesen eines durch Vorhersagen einer Datenoperation erzeugten Teststrukturprogramms auf eine Weise, dass die Datenoperation für verschiedene Rahmen ungeachtet einer Datenvorhersagebedingung zulässig ist und nur die Datenoperation für mehrere Verschachtelungszyklen innerhalb eines einzelnen Rahmens gemäß der Datenvorhersagebedingung zulässig ist; (b) Ausführen der Datenoperation auf verschachtelte Weise auf der Basis des Teststrukturprogramms zum Erzeugen einer Struktur und (c) Multiplexieren des Musters zum Erzeugen der Teststrukturdaten zum Testen des Halbleiterbauelements.
  11. Verfahren nach Anspruch 10, wobei der Schritt (b) (b-1) das Ausführen der Datenoperation entsprechend dem Verschachtelungszyklus entsprechend jedem der Rahmen durch logisches Verbinden mehrerer Strukturerzeugungsschritte miteinander umfasst und wobei ein Ergebnis der Datenoperation entsprechend einem letzten Verschachtelungszyklus zu der Datenoperation entsprechend einem ersten Verschachtelungszyklus rückgekoppelt wird.
  12. Verfahren nach Anspruch 10, wobei der Schritt (b) (b-2) das Ausführen der Datenoperation für erste und zweite Felder umfasst.
  13. Verfahren nach Anspruch 10, wobei das Teststrukturprogramm erzeugt wird durch Vorhersagen der Datenoperation auf eine Weise, dass die Datenoperation des ersten Feldes entsprechend jedem der mehreren Verschachtelungszyklen eines aktuellen Rahmens mit der Datenvorhersagebedingung übereinstimmt durch Bezugnahme auf ein Ergebnis der Datenoperation des zweiten Feldes eines vorausgegangenen Rahmens.
  14. Verfahren nach Anspruch 10, weiterhin umfassend vor dem Ausführen des Schrittes (a): (d) Bestimmen, ob ein Quellcode nur die mit der Datenvorhersagebedingung übereinstimmende Datenoperation enthält, durch Lesen des Quellcodes; und (e) Kompilieren eines Quellcodes zum Erzeugen des Teststrukturprogramms, wenn in Schritt (d) bestimmt wird, dass der Quelicode nur die mit der Datenvorhersagebedingung übereinstimmende Datenoperation enthält.
  15. Verfahren nach Anspruch 14, weiterhin umfassend das Anhalten des Kompilierens des Quellcodes, wenn in Schritt (d) bestimmt wird, dass der Quelicode die mit der Datenvorhersagebedingung nichtübereinstimmende Datenoperation enthält.
  16. Verfahren nach Anspruch 15, wobei der Schritt (e) das Konvertieren und Kompilieren des Quellcodes auf der Basis des Datenvorhersagecodes für jeden der mehreren Verschachtelungszyklen zum Erzeugen des Teststrukturprogramms umfasst.
  17. Verfahren nach Anspruch 10, wobei die mit der Datenvorhersagebedingung übereinstimmende Datenoperation definiert ist durch eine Tabelle
    Figure 00290001
    wobei "A" und "B" ein Datenfeld darstellt, "C" einen zuvor entsprochenen Code darstellt, "X" einen unvorhersagbaren Code darstellt, "imm" einen sofortigen Wert darstellt, "/" einen Divisionsoperator darstellt, "*" einen Multiplikationsoperator darstellt, "+" einen Additionsoperator darstellt, "–" einen Subtraktionsoperator darstellt, "&" einen bitweisen AND-Operator darstellt, "|" einen bitweisen OR-Operator darstellt und "^" einen bitweisen XOR-Operator darstellt.
  18. Verfahren nach Anspruch 10, wobei die Struktur durch Verbinden von zwei oder vier Strukturgenerationen auf die verschachtelte Weise erzeugt wird.
DE102007034277A 2006-08-09 2007-07-19 Vorrichtung und Verfahren zum Erzeugen von Test-Strukturdaten zum Testen eines Halbleiterbauelements Ceased DE102007034277A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020060075056A KR100736679B1 (ko) 2006-08-09 2006-08-09 반도체 테스트를 위한 패턴 생성 장치 및 패턴 생성 방법
KR10-2006-0075056 2006-08-09

Publications (1)

Publication Number Publication Date
DE102007034277A1 true DE102007034277A1 (de) 2008-02-14

Family

ID=38503511

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102007034277A Ceased DE102007034277A1 (de) 2006-08-09 2007-07-19 Vorrichtung und Verfahren zum Erzeugen von Test-Strukturdaten zum Testen eines Halbleiterbauelements

Country Status (5)

Country Link
US (1) US20080040639A1 (de)
JP (1) JP2008039784A (de)
KR (1) KR100736679B1 (de)
DE (1) DE102007034277A1 (de)
TW (1) TWI333077B (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4427002B2 (ja) * 2005-05-20 2010-03-03 株式会社アドバンテスト 半導体試験用プログラムデバッグ装置
JP4892450B2 (ja) * 2007-10-17 2012-03-07 パナソニック株式会社 画像符号化装置および画像符号化方法
US8010851B2 (en) * 2008-03-31 2011-08-30 Advantest Corporation Testing module, testing apparatus and testing method
KR101079369B1 (ko) 2008-11-12 2011-11-02 삼성전기주식회사 프로브카드용 프로브 핀 제조방법
US8149721B2 (en) * 2008-12-08 2012-04-03 Advantest Corporation Test apparatus and test method
TWI459394B (zh) * 2011-01-03 2014-11-01 Etron Technology Inc 產生記憶體晶片的測試樣式的裝置及其方法
US10976361B2 (en) * 2018-12-20 2021-04-13 Advantest Corporation Automated test equipment (ATE) support framework for solid state device (SSD) odd sector sizes and protection modes
US11137910B2 (en) 2019-03-04 2021-10-05 Advantest Corporation Fast address to sector number/offset translation to support odd sector size testing
US11237202B2 (en) 2019-03-12 2022-02-01 Advantest Corporation Non-standard sector size system support for SSD testing
US10884847B1 (en) 2019-08-20 2021-01-05 Advantest Corporation Fast parallel CRC determination to support SSD testing

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01287486A (ja) * 1988-05-16 1989-11-20 Hitachi Ltd テストパターンプログラム生成装置
US5228042A (en) * 1991-02-07 1993-07-13 Northern Telecom Limited Method and circuit for testing transmission paths
JPH06231099A (ja) * 1993-02-02 1994-08-19 Fujitsu Ltd 分散メモリ型並列計算機上でのdoループ実行の為のデータレイアウト方法、及び並列化方法
GB2340277B (en) * 1995-02-24 2000-05-03 Advantest Corp Bit error measurement system
US5574733A (en) * 1995-07-25 1996-11-12 Intel Corporation Scan-based built-in self test (BIST) with automatic reseeding of pattern generator
US5680332A (en) * 1995-10-30 1997-10-21 Motorola, Inc. Measurement of digital circuit simulation test coverage utilizing BDDs and state bins
US6363509B1 (en) * 1996-01-16 2002-03-26 Apple Computer, Inc. Method and apparatus for transforming system simulation tests to test patterns for IC testers
JP3595158B2 (ja) * 1998-03-13 2004-12-02 株式会社東芝 命令割り当て方法及び命令割り当て装置
US6823486B2 (en) * 2000-06-05 2004-11-23 Fujitsu Limited Automatic test pattern generation for functional register transfer level circuits using assignment decision diagrams
JP2002074987A (ja) * 2000-08-24 2002-03-15 Kyushu Ando Denki Kk スクランブルコンパイラおよびその誤記述検出方法
US6952812B2 (en) * 2001-02-13 2005-10-04 Freescale Semiconductor, Inc. Design analysis tool for path extraction and false path identification and method thereof
JP2004095060A (ja) * 2002-08-30 2004-03-25 Kyushu Ando Denki Kk アドレスパターン発生装置及び半導体集積回路試験装置
US7409616B1 (en) * 2003-06-27 2008-08-05 Cypress Semiconductor Corp. Built in self test system and method for detecting and correcting cycle slip within a deserializer
JP2005077159A (ja) * 2003-08-29 2005-03-24 Advantest Corp パターン発生器及びパターン発生器を備えた半導体試験装置
KR100858651B1 (ko) * 2006-11-01 2008-09-16 주식회사 유니테스트 순차적 반도체 테스트 장치

Also Published As

Publication number Publication date
TW200817698A (en) 2008-04-16
TWI333077B (en) 2010-11-11
KR100736679B1 (ko) 2007-07-06
JP2008039784A (ja) 2008-02-21
US20080040639A1 (en) 2008-02-14

Similar Documents

Publication Publication Date Title
DE102007034277A1 (de) Vorrichtung und Verfahren zum Erzeugen von Test-Strukturdaten zum Testen eines Halbleiterbauelements
DE69831732T2 (de) Verfahren und gerät zum korrigieren von fehlern in einem rechnersystem
DE102004023407B4 (de) Testvorrichtung und Verfahren zum Testen eines eingebetteten Speicherkerns sowie zugehöriger Halbleiterchip
DE19806808A1 (de) Halbleiterprüfsystem
DE10392667T5 (de) Ereignisbasiertes IC-Testsystem
DE10125344A1 (de) Ereignisgestütztes Halbleiterprüfsystem mit modularer Architektur zur Speicherprüfung
DE10392497T5 (de) Herstellungsverfahren und Herstellungsvorrichtung zum Vermeiden eines Prototypen-Aufschubs bei der ASIC/SOC-Herstellung
DE10056160A1 (de) Halbleiterprüfsystem
DE19950821A1 (de) Bewertungssystem für integrierte Halbleiterschaltungen
DE10118141A1 (de) Anwendungsspezifisches ereignisgestütztes Halbleiter-Speicherprüfsystem
WO2003027850A2 (de) Verfahren zur softwareverifikation für steuereinheiten und verifikationssystem
DE19955380C2 (de) Prüfmustergenerator, Prüfvorrichtung und Verfahren zum Erzeugen von Prüfmustern
DE10296464T5 (de) Verfahren und Gerät zur Validierung des Entwurfes einer komplexen integrierten Schaltungen
DE112019002778T5 (de) Simulationsvorrichtung, simulationsverfahren und elektronische steuereinheitsvorrichtung
DE112005002099T5 (de) Prüfvorrichtung und Prüfverfahren
DE102004026521A1 (de) Vorrichtung und Verfahren zum Testen von Speichern
DE60202443T2 (de) Methode zum Testen eines elektronischen Bauteils
DE10296828T5 (de) Halbleiterspeichertestgerät und Adressgenerator zur Defektanalyse
DE69830967T2 (de) Verfahren und System zur Prüfung einer integrierten Schaltung
US6393606B1 (en) Inverse assembler
DE60104015T2 (de) Entschlüsselungsverfahren zur datenabbildung in speicherschaltungen
DE10317431A1 (de) Verfahren zur Generierung von Testersteuerungen
DE10393511T5 (de) Programmentwicklungsunterstützungsvorrichtung, Programmausführungsvorrichtung, Kompilierverfahren und Diagnoseverfahren
EP1297425B1 (de) Verfahren und vorrichtung für die optimierung eines testprogramms
DE19752443A1 (de) Sequenzsteuerschaltung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final
R003 Refusal decision now final

Effective date: 20141209