DE19908521B4 - A method of compacting a sequence of test vectors to test a system - Google Patents

A method of compacting a sequence of test vectors to test a system Download PDF

Info

Publication number
DE19908521B4
DE19908521B4 DE1999108521 DE19908521A DE19908521B4 DE 19908521 B4 DE19908521 B4 DE 19908521B4 DE 1999108521 DE1999108521 DE 1999108521 DE 19908521 A DE19908521 A DE 19908521A DE 19908521 B4 DE19908521 B4 DE 19908521B4
Authority
DE
Germany
Prior art keywords
segment
phase
test
target
vectors
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
DE1999108521
Other languages
German (de)
Other versions
DE19908521A1 (en
Inventor
Surendra K. Bommu
Srimat T. Chakradhar
Kiran B. Doreswamy
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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US09/135,561 external-priority patent/US5987636A/en
Application filed by NEC Corp filed Critical NEC Corp
Publication of DE19908521A1 publication Critical patent/DE19908521A1/en
Application granted granted Critical
Publication of DE19908521B4 publication Critical patent/DE19908521B4/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • G01R31/318335Test pattern compression or decompression
    • 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/318371Methodologies therefor, e.g. algorithms, procedures

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

Verfahren zum Kompaktifizieren einer Folge von Testvektoren zum Testen eines Systems, wobei das System eine Menge von Störungen besitzt, die durch die Folge von Testvektoren erfaßt werden können, wobei eine Teilmenge der Menge der Störungen als Zielstörungen gewählt wird, wobei das Verfahren eine Wiederherstellungsphase und eine Segmentmanipulationsphase umfaßt,
wobei
die Wiederherstellungsphase Segmente der Vektoren identifiziert, wovon jedes eine Zielstörung erfaßt und
die Segmentmanipulationsphase ferner das Umordnen, Kürzen und Mischen der Segmente umfaßt.
A method for compacting a sequence of test vectors for testing a system, the system having a set of perturbations that can be detected by the sequence of test vectors, wherein a subset of the set of perturbations is selected as target perturbations, the method including a recovery phase and a recovery phase Includes segment manipulation phase,
in which
the recovery phase identifies segments of the vectors, each of which detects a target defect and
the segment manipulation phase further comprises rearranging, truncating and mixing the segments.

Figure 00000001
Figure 00000001

Description

IA. Gebiet der ErfindungIA. Field of the invention

Die Erfindung bezieht sich auf ein Verfahren zum Kompaktifizieren einer Folge von Testvektoren zum Testen eines Systems. Die Testvektoren könnnen zum Erfassen von Störungen in großen Industrieentwürfen verwendet werden. Insbesondere bezieht sich diese Erfindung auf ein Verfahren zur statischen Kompaktifizierung mit einer Wiederherstellungsphase und mit einer Segmentmanipulationsphase. Diese Erfindung ist in einem Verfahren zur statischen Testfolgenkompaktifizierung ausgeführt, das, wie gezeigt wird, in der Praxis die Leistung und die Effizienz der Störungsdiagnose für große Entwürfe verbessert.The The invention relates to a method for compacting a Sequence of test vectors for testing a system. The test vectors könnnen for detecting faults in big industrial designs be used. In particular, this invention relates to a static compactification process with a recovery phase and with a segment manipulation phase. This invention is in a static test sequence compactification method that, As shown, in practice the performance and efficiency of the fault diagnosis improved for big designs.

IB. Hintergrund der ErfindungIB. Background of the invention

IB1. Überblick über die statische KompaktifizierungIB1. Overview of static compactification

Ein Vektor ist eine Menge von Eingangsgrößen in ein System. Eine Testmenge ist eine Menge von Vektoren, die Störungen in dem System identifizieren. Zielstörungen sind die durch eine gegebene Menge identifizierten Störungen. Da die Kosten des Testens direkt proportional zur Anzahl der Testvektoren in der Testmenge sind, sind kurze Testfolgen wünschenswert. Eine Verringerung der Testmengengröße kann unter Verwendung statischer oder dynamischer Testmengen-Kompaktifizierungsalgorithmen erreicht werden.One Vector is a set of input variables in a system. A test amount is a set of vectors that identify faults in the system. target disorders are the disturbances identified by a given amount. Because the cost of testing is directly proportional to the number of test vectors are in the test set, short test sequences are desirable. A reduction the test quantity size can achieved using static or dynamic test set compacting algorithms become.

Dynamische Verfahren führen die Kompaktifizierung gleichzeitig mit dem Testerzeugungsprozeß aus. Siehe I. Pomeranz und S. M. Reddy, "Dynamic Test Compaction For Synchronous Sequential Circuits using Static Compaction Techniques", Proc. Fault-Tolerant Computing Symp., S. 53-61, Juni 1996; S. T. Chakradhar und A. Raghunathan, "Bottleneck removal algorithm for dynamic compaction in sequential circuits", IEEE Trans. on Computer-Aided Design, (zur Veröffentlichung angenommen) 1997; E. M. Rudnick und Janak H. Patel, "Simulation-based techniques for dynamic test sequence compaction", Proc. Int. Conf. Computer-Aided Design, S. 67-73, November 1996; und T. J. Lambert und K. K. Saluja, "Methods for Dynamic Test Vector Compaction in Sequential Test Generation", Proc. Int. Conf. On VLSI Design, S. 166-169, Januar 1996. Dynamische Verfahren erfordern häufig eine Modifizierung des Testgenerators.dynamic Lead procedure compactification simultaneously with the test generation process. Please refer I. Pomeranz and S.M. Reddy, "Dynamic Test Compaction For Synchronous Sequential Circuits using Static Compaction Techniques ", Proc. Fault-Tolerant Computing Symp., Pp. 53-61, June 1996; S. T. Chakradhar and A. Raghunathan, "Bottleneck removal algorithm for dynamic compaction in sequential circuits ", IEEE Trans. on Computer-Aided Design, (for publication adopted) 1997; E.M. Rudnick and Janak H. Patel, "Simulation-based techniques for dynamic test sequence compaction ", Proc. Int. Conf. Computer-Aided Design, Pp. 67-73, November 1996; and T.J. Lambert and K.K. Saluja, Methods for Dynamic Test Vector Compaction in Sequential Test Generation ", Proc. Int. Conf. On VLSI Design, pp. 166-169, January 1996. Dynamic Procedures Require often a modification of the test generator.

Statische Kompaktifizierungsverfahren werden andererseits nach dem Testerzeugungsprozeß angewendet. Somit sind sie unabhängig von dem Testerzeugungsalgorithmus und erfordern keine Modifikationen an dem Testgenerator. Außerdem können statische Kompaktifizierungsverfahren ferner die nach der dynamischen Kompaktifizierung erhaltene Testmengengröße reduzieren.static On the other hand, compaction methods are applied after the test generation process. Thus, they are independent from the test generation algorithm and require no modifications at the test generator. Furthermore can static Kompaktifizierungsverfahren also after the dynamic Compactification reduce test lot size obtained.

In den folgenden Literaturhinweisen wurden mehrere Zugänge zur statischen Kompaktifizierung für Folgeschaltun gen vorgeschlagen: T. M. Niermann, R. K. Roy, I. H. Patel und J. A. Abraham, "Test compaction for sequential circuits", IEEE Trans. Computer-Aided Design, Bd. 11, Nr. 2, S. 260-267, Februar 1992; B. So, "Time-efficient automatic test pattern generation system", Doktorarbeit, Abteilung für EE, Universität von Wisconsin in Madison, 1994; I. Pomeranz und S. M. Reddy, "On static compaction of test sequences for synchronous sequential circuits", Proc. Design Automation Conf., S. 215-220, Juni 1996; M. S. Hsiao, E. M. Rudnick und J. H. Patel, "Fast algorithms for static compaction of sequential circuit test vectors", Proc. IEEE VLSI Test Symp., S. 188-195, April 1995.In The following references have been several approaches to static compaction for Follow-up circuits proposed: T.M. Niermann, R.K. Roy, I.H. Patel and J.A. Abraham, "Test compaction for sequential circuits ", IEEE Trans. Computer-Aided Design, Vol. 11, No. 2, pp. 260-267, February 1992; B. So, "Time-efficient automatic test pattern generation system ", PhD, Department of EE, University of Wisconsin in Madison, 1994; I. Pomeranz and S.M. Reddy, "On static compaction of test sequences for synchronous sequential circuits ", Proc. Design Automation Conf., p. 215-220, June 1996; M.S. Hsiao, E.M. Rudnick and J.H. Patel, "Fast Algorithms for static compaction of sequential circuit test vectors ", Proc. IEEE VLSI Test Symp., Pp. 188-195, April 1995.

Einige dieser Zugänge können die durch Zufalls- oder durch auf Simulationen beruhende Testgeneratoren erzeugten Testmengen aber nicht reduzieren. Siehe T. M. Niermann, R. K. Roy, I. H. Patel und J. A. Abraham, "Test compaction for sequential circuits", IEEE Trans. Computer-Aided Design, Bd. 11, Nr. 2, S. 260-267, Februar 1992; B. So, "Time-efficient automatic test pattern generation system", Doktorarbeit, Abteilung für EE, Universität von Wisconsin in Madison, 1994. Statische Kompaktifizierungsverfahren auf der Grundlage der Vektoreinsetzung, -auslassung und -auswahl wurden untersucht in I. Pomeranz und S. M. Reddy, "On static compaction of test sequences for synchronous sequential circuits", Proc. Design Automation Conf., S. 215-220, Juni 1996.Some these accesses can the random or simulated test generators but do not reduce generated test quantities. See T.M. Niermann, R.K. Roy, I.H. Patel and J.A. Abraham, "Test Compaction for Sequential Circuits", IEEE Trans. Computer-Aided Design, Vol. 11, No. 2, pp. 260-267, February 1992; B. So, "Time-efficient automatic test pattern generation system ", Doctoral Thesis, Department of EE, University from Wisconsin in Madison, 1994. Static compaction process based on vector insertion, omission and selection were studied in I. Pomeranz and S.M. Reddy, "On static compaction of test sequences for synchronous sequential circuits ", Proc. Design Automation Conf., Pp. 215-220, June 1996.

Diese Verfahren erfordern mehrere Störungssimulationsdurchläufe. Falls ein Vektor ausgelassen oder ausgelagert wird, wird der Störungssimulator aufgerufen, um sicherzustellen, daß der Störungseinschluß nicht beeinflußt wird. Obgleich diese Verfahren eine sehr gute Kompaktifizierung erzeugen, sind sie zu rechenintensiv, um praktisch angewendet zu werden.These Procedures require multiple fault simulation runs. If a vector is skipped or paged out becomes the perturbation simulator called to ensure that the fault enclosure is not affected becomes. Although these methods are very good compactification they are too computationally intensive to be practical become.

Die Vektorwiederherstellungsverfahren sind auf die Wiederherstellung hinreichender Vektoren gerichtet, die zum Erfassen aller Störungen, beginnend mit schwereren Störungen, erforderlich sind. Siehe R. Guo, I. Pomeranz, und S. M. Reddy, "Procedures for static compaction of test sequences for synchronous sequential circuits based on vector restoration", Fachbericht 8-3-1997, Abteilung für Elektro- und Computertechnik, Universität von Iowa, 1997. Eine schnelle statische Testmengenkompaktifizierung auf der Grundlage des Entfernens wiederkehrender Teilfolgen, die bei den gleichen Zuständen beginnen und enden, wurde außerdem unlängst berichtet in M. S. Hsiao, E. M. Rudnick und J. H. Patel, "Fast algorithms for static compaction of sequential circuit test vectors", Proc. IEEE VLSI Test Symp., S. 188-195, April 1995. Jedoch sind diese Testmengen nicht so kompakt wie jene, die durch Algorithmen erzielt werden, die mehrere Störungssimulationsdurchläufe verwenden.The vector recovery methods are directed to the restoration of sufficient vectors necessary to detect all disorders beginning with more severe disorders. See R. Guo, I. Pomeranz, and SM Reddy, "Procedures for static compaction of test sequences for synchronous sequential circuits based on vector restoration", Technical Report 8-3-1997, Department of Electrical and Computer Engineering, University of Iowa, 1997 A rapid static test set compactification based on the removal of recurrent subsequences occurring at the same conditions In addition, it has recently been reported in MS Hsiao, EM Rudnick, and JH Patel, "Fast Algorithms for Static Compaction of Sequential Circuit Test Vectors," Proc. IEEE VLSI Test Symp., Pp. 188-195, April 1995. However, these test scores are not as compact as those achieved by algorithms using multiple perturbation simulation runs.

Unlängst wurde eine Kompaktifizierung auf der Grundlage einer Vektorumordnung vorgeschlagen. Siehe S. T. Chakradhar und M. S. Hsiao, "Partitioning and Reordering Techniques for Static Test Sequence Compaction of Sequential Circuits", Fachbericht 1997, Computers & Communications Research Lab, NEC USA Inc.Recently became proposed a compactification based on a vector rearrangement. See S.T. Chakradhar and M.S. Hsiao, "Partitioning and Reordering Techniques for Static Test Sequence Compaction of Sequential Circuits ", Technical Report 1997, Computers & Communications Research Lab, NEC USA Inc.

Unter den bekannten statischen Kompaktifizierungsverfahren liefern Kompaktifizierungsverfahren auf der Grundlage der Vektorwiederherstellung die größte Kompaktifizierung. Siehe I. Pomeranz und S. M. Reddy, "Vector Restoration Based Static Compaction of Test Sequences for Synchronous Sequential Circuits", Proceedings Int. Conf. on Computer Design, S. 360-365, Universität von Iowa, August 1997; R. Guo, I. Pomeranz und S. M. Reddy, "Procedures for static compaction of test sequences for synchronous sequential circuits based on vector restoration", Fachbericht 8-3-1997, Abteilung für Elektro- und Computertechnik, Universität von Iowa, 1997.Under the known static Kompaktifizierungsverfahren provide Kompaktifizierungsverfahren on the basis of vector restoration the largest compactification. See I. Pomeranz and S.M. Reddy, "Vector Restoration Based Static Compaction of Test Sequences for Synchronous Sequential Circuits ", Proceedings Int. Conf. on Computer Design, pp. 360-365, University of Iowa, August 1997; R. Guo, I. Pomeranz and S.M. Reddy, "Procedures for static compaction of test sequences for synchronous sequential circuits based on vector restoration ", Technical Report 8-3-1997, Department for Electrical and Computer Engineering, University of Iowa, 1997.

IB2. Überblick über die Kompaktifizierung auf der Grundlage der VektorwiederherstellungIB2. Overview of the compaction on the foundation of vector restoration

Die Testmenge V ist eine geordnete Folge von Vektoren v1, ..., vn. Die Testmenge erfaßt Störungen f1, ..., fz, die die Störungsmenge F bilden. Das Ziel der Kompaktifizierungsalgorithmen besteht in der Reduzierung der Testmenge, ohne einen Kompromiß bezüglich der Erfaßbarkeit aller Störungen in F einzugehen. Falls in dem Vektor vi der Testmenge eine Störung erfaßt wird, ist i die Erfassungszeit D(f) der Störung. Diese Informationen können leicht durch eine Vorverarbeitungsphase erhalten werden, die die Störungssimulation (mit der Störungssenkung) der Testmenge T umfaßt.The test set V is an ordered sequence of vectors v 1 ,..., V n . The test quantity detects disturbances f 1 ,..., F z , which form the disturbance amount F. The goal of the compaction algorithms is to reduce the test set without compromising on the detectability of all faults in F. If a disturbance is detected in the vector v i of the test amount, i is the detection time D (f) of the disturbance. This information can be easily obtained by a preprocessing phase that includes the disturbance simulation (with the disturbance reduction) of the test set T.

Zum Beispiel umfaßt die Testmenge in 1 20 Vektoren v1, ..., v20. Diese Testmenge erfaßt 5 Störungen f1, ..., f5. Die Störung f5 wird in dem Vektor v20 erfaßt. Somit ist D(f5) = 20. Die Erfassungszeiten für die anderen Störungen sind wie in der Figur gezeigt.For example, the test amount in 1 20 vectors v 1 , ..., v 20 . This test quantity detects 5 faults f 1 ,..., F 5 . The disturbance f 5 is detected in the vector v 20 . Thus, D (f 5 ) = 20. The detection times for the other disturbances are as shown in the figure.

Statische Kompaktifizierungsverfahren auf der Grundlage der Vektorwiederherstellung beruhen auf dem folgenden System. Ausgehend von einer Testmenge, einer Störungsmenge und einer Erfassungszeit für jede Störung erzeugen statische Kompaktifizierungsverfahren eine kürzere Testmenge, die wenigstens so viel Störungen wie die Anfangstestmenge erfaßt. Eine Menge von Störungen wird anfangs als die Zielstörungen gewählt. Diese Störungen können die gleichen oder unterschiedliche Erfassungszeiten haben. Falls die letzte Erfassungszeit irgendeiner Störung in der Zielliste t ist, findet der Wiederherstellungsprozeß eine Teilfolge vi, ..., vt (1 ≤ i ≤ t), die (1) alle Störungen in der Zielstörungsliste erfaßt, wobei (2) außerdem alle früheren Zielstörungen erfaßt werden, falls die Teilfolge gegenüber der wiederhergestellten Teilfolge für frühere Zielstörungen im voraus anstehend ist. Die nächste Menge der Zielstörungen wird aus den Störungen gewählt, die durch die wiederhergestellte Vektormenge unerfaßt bleiben. Dieses Verfahren wird fortgesetzt, bis es keine weiteren Zielstörungen mehr gibt.Static compaction methods based on vector recovery are based on the following system. Starting from a test set, a disturbance amount, and a detection time for each disturbance, static compaction methods produce a shorter test set that detects at least as much disturbance as the initial test set. A lot of disorders are initially chosen as the target disorders. These disturbances can have the same or different acquisition times. If the last detection time of any disturbance in the destination list is t, the restoration process finds a subsequence v i , ..., v t (1≤i≤t) which detects (1) all disturbances in the target disturbance list, where (2) all previous target disturbances are detected if the subsequence is pending ahead of the recovered subsequence for earlier target disturbances. The next set of target perturbations is selected from the perturbations that remain unrecognized by the amount of vector recovered. This process continues until there are no more target faults.

Die Verfahren, die zur Erfüllung des obenbeschriebenen Schrittes 2 auf der Störungssimulation beruhen, sind rechenintensiv und in großen Industrieentwürfen unpraktisch. Unter den bekannten vektorbasierten Kompaktifizierungsverfahren ist das Wiederherstellungs-Auslassungs-Synchronisierungs-Präfix-Verfahren (das RSP-Verfahren) das einzige Verfahren, das zur Erfüllung von Schritt 2 keine Simulation umfaßt. Siehe I. Pomeranz und S. M. Reddy, "Vector Restoration Based Static Compaction of Test Sequences For Synchronous Sequential circuits", Proceedings Int. Conf. on Computer Design, S. 360-365, Universität von Iowa, August 1997.The Procedures to fulfill of the above-described step 2 based on the disturbance simulation are computationally intensive and in large industrial designs impractical. Among the known vector-based compaction methods Is the Recovery Omission Synchronization Prefix Method (the RSP Method) the only method that does not simulate the performance of step 2 includes. See I. Pomeranz and S.M. Reddy, "Vector Restoration Based Static Compaction of Test Sequences For Synchronous Sequential Circuits ", Proceedings Int. Conf. on Computer Design, pp. 360-365, University of Iowa, August 1997.

In dem RSP-Zugang werden ausreichend Vektoren wiederhergestellt, so daß die Zielstörung ausgehend von allen unbekannten Anfangszuständen erfaßt wird. Folglich bleiben Störungen, die einmal für die Wiederherstellung gewählt wurden, unabhängig von weiteren Hinzufügungen zu den wiederhergestellten Vektormengen während des Rests des Kompaktifizierungsverfahrens erfaßt.In enough vectors are restored to the RSP access, so that the Goal interference starting is detected by all unknown initial states. Consequently, faults remain, once for the restoration is chosen were, independent from further additions to the recovered vector quantities during the rest of the compaction process detected.

Ein lineares Vektorwiederherstellungs-Verfahren bestimmt die Teilfolge dadurch, daß zuerst nur der Vektor vt betrachtet wird. Falls nicht alle Zielstörungen erfaßt werden, wird die Teilfolge vt-1, vt vorgeschlagen. Falls diese Folge ebenfalls nicht alle Zielstörungen erfaßt, werden zusätzliche Vektoren vt-2, ..., v1 (in dieser Reihenfolge). betrachtet, bis alle Zielstörungen erfaßt werden. Weitere Einzelheiten über die Komplexität dieses Verfahrens werden unten geliefert.A linear vector recovery method determines the subsequence by first considering only the vector v t . If not all target disturbances are detected, the subsequence v t-1 , v t is proposed. If this sequence also does not detect all the target perturbations, additional vectors v t-2 ,..., V 1 (in that order). considered until all target disturbances are detected. Further details about the complexity of this process are provided below.

Unter dem bekannten Kompaktifizierungsverfahren auf der Grundlage der Vektorwiederherstellung benötigt der RSP-Zugang weniger CPU-Sekunden. Leider ist selbst der RSP-Zugang zu langsam, um in großen Industrieentwürfen praktisch angewendet zu werden (siehe Tabelle 2 in 7).Under the known vector recovery based compactification method, RSP access requires fewer CPU seconds. Unfortunately, even RSP access is too slow to be used in large industrial designs (see Table 2 in.) 7 ).

US-5,444,717 A beschreibt ein Verfahren zum Kompaktifizieren einer Folge von Testvektoren, bei dem eine Gruppe von Testvektoren durch Korrektur unerwünschter Muster kompaktifiziert wird.US 5,444,717 A describes a method for compacting a sequence of test vectors, in which a group of test vectors is replaced by Korrek compacted for unwanted patterns.

HIGAMI, Y. et al: "Static test Compaction for IDDQ Testing of Sequential Circuits", Seite 9-13, IEEE, March 1998, beschreibt ein statisches Verfahren zum Kompaktifizieren für das IDDQ-Testen von sequentiellen Schaltkreisen.HIGAMI, Y. et al: "Static Test Compaction for IDDQ Testing of Sequential Circuits ", page 9-13, IEEE, March 1998, describes a static method for compacting for the IDDQ testing of sequential circuits.

POMERANZ, I. et al: "Static Compaction for Two-Pattern Test Sets", the Fourth Asian Test Symposium, IEEE 1995, Seite 222-228 beschreibt ein statisches Verfahren zum Kompaktifizieren, um die Größe eines Testsets, das aus Zwei-Muster-Tests besteht, zu reduzieren. Das Verfahren ordnet die Tests in dem Testsatz um, um die Menge an Fehlern, die durch benachbarte Muster detektiert werden, zu maximieren, was dazu führt, dass einige der Tests weggelassen werden können. Daneben werden redundante Tests und Testmuster entfernt, die ohne Verringerung der Fehlerabdeckung reduziert werden können.POMERANZ, I. et al: "Static Compaction for Two-Pattern Test Sets, the Fourth Asian Test Symposium, IEEE 1995, pages 222-228 describes a static method for compacting, the size of a Test sets consisting of two-sample tests, to reduce. The procedure rearranges the tests in the test set by the amount of errors detected by adjacent patterns to maximize, which leads to some of the tests being omitted can be. In addition, redundant tests and test patterns are removed without Reducing the error coverage can be reduced.

Die herkömmlichen statischen Kompaktifizierungsverfahren einschließlich des RSP-Verfahrens haben wenigstens ein Hauptproblem, das ihre praktischen Verwendung einschränkt. Wenn sie zum Testen großer Industrieentwürfe verwendet werden, erfordern sie unerschwinglich große Laufzeiten.The usual static compaction methods including the RSP method at least one major problem that limits their practical use. If they are great for testing industrial designs used, they require prohibitively long transit times.

II. Zusammenfassung der ErfindungII. Summary of the invention

Der Erfindung liegt daher die Aufgabe zugrunde, Techniken zum Verbessern der Leistung und der Effizienz der statischen Kompaktifizierungsverfahren in Anwendung auf die Störungserfassung in großen Industrieentwürfen zu schaffen.Of the The invention is therefore based on the problem of improving techniques the performance and efficiency of the static compaction process in application to the fault detection in big industrial designs to accomplish.

Genauer ist es eine Aufgabe dieser Erfindung, ein Verfahren zu schaffen zum Kompaktifizieren einer Folge von Testvektoren zum Testen eines Systems mit einer Menge von Störungen, die durch die Folge der Testvektoren erfaßt werden können.More accurate It is an object of this invention to provide a method for compacting a sequence of test vectors to test a system with a lot of disturbances, which can be detected by the sequence of test vectors.

Um die Aufgabe dieser Erfindung zu lösen, wird ein Verfahren zum Kompaktifizieren einer Folge von Testvektoren zum Testen eines Systems geschaffen, wobei das System eine Menge von Störungen besitzt, die durch die Folge von Testvektoren erfaßt werden können, wobei eine Teilmenge der Menge der Störungen als Zielstörungen gewählt wird, wobei das Verfahren eine Wiederherstellungsphase und eine Segmentmanipulationsphase umfaßt, wobei die Wiederherstellungsphase Segmente der Vektoren identifiziert, wobei jedes Segment eine Zielstörung erfaßt und wobei die Segmentmanipulationsphase ferner das Umordnen, Kürzen und Mischen der Segmente umfaßt.Around to achieve the object of this invention, a method for Compacting a sequence of test vectors to test a system created, the system has a lot of interference caused by the Sequence of test vectors detected can be wherein a subset of the amount of the perturbations is chosen as the target perturbation, the method being a recovery phase and a segment manipulation phase comprises wherein the recovery phase identifies segments of the vectors, wherein each segment detects a target disturbance and wherein the segment manipulation phase further, rearranging, truncating and Mixing the segments includes.

Weitere Verbesserungen umfassen ein Verfahren zum Kompaktifizieren einer Folge von Testvektoren, wobei die Wiederherstellungsphase eine Überprüfungsteilphase und eine Verfeinerungsteilphase umfaßt; wobei die Überprüfungsteilphase eine erste Teilfolge von Testvektoren identifiziert, die eine Zielstörung erfaßt, und eine zweite Teilfolge identifiziert, die die Zielstörung nicht erfaßt; und wobei die Verfeinerungsteilphase die kürzeste Teilfolge zwischen der ersten Teilfolge und der zweiten Teilfolge, die die Zielstörung erfaßt, identifiziert.Further Improvements include a method for compacting a Sequence of test vectors, the recovery phase being a review sub-phase and a refinement sub-phase; the review subphase identifies a first subsequence of test vectors that detects a target disturbance, and a second subsequence that does not identify the target subset detected; and wherein the refinement subphase is the shortest subsequence between the first subsequence and the second subsequence, which detects the target disturbance identified.

Ein weiterer Aspekt dieser Erfindung ist ein Verfahren zum Kompaktifizieren einer Folge von Testvektoren zum Testen eines Systems, wobei das System eine Menge von Störungen besitzt, die durch die Folge von Testvektoren erfaßt werden können, um eine kompakte Vektormenge zu bilden, wobei die kompakte Vektormenge dadurch wiederhergestellt wird, daß Segmente von Vektoren gemischt werden.One Another aspect of this invention is a method for compacting a sequence of test vectors for testing a system, wherein the system a lot of disturbances which are detected by the sequence of test vectors can, um to form a compact vector set, with the compact vector set is restored by mixing segments of vectors become.

Weitere Verbesserungen umfassen ein Verfahren zum Kompaktifizieren einer Folge von Testvektoren, wobei die Segmente gekürzt werden, um redundante Synchronisierungsfolgen zu eliminieren.Further Improvements include a method for compacting a Sequence of test vectors, where the segments are truncated to redundant synchronization sequences to eliminate.

Ein nochmals weiterer Aspekt dieser Erfindung ist ein Verfahren zum Kompaktifizieren einer Folge von Testvektoren, wobei die Segmente beim Auffinden zu einer kompakten Menge gemischt werden, wobei das Verfahren folgende Schritte umfaßt: Identifizieren der Testvektoren, einer Störungsliste mit den Störungen, die unter Verwendung der Testvektoren erfaßt werden können, und mit den Erfassungszeiten für die Störungen; Auswählen der Zielstörungen, falls die Zielstörungen existieren; Ausführen einer Zwei-Phasen-Vektorwiederherstellung und Vergrößern einer Teilsegmentmenge, falls das Wiederherstellungsverfahren ausgewählte Zielstörungen erfaßt; Kürzen des erhaltenen Segments, falls die Teilsegmentmenge ein Segment ist; Mischen des erhaltenen Segments, falls die Teilsegmentmenge ein Segment ist; Wiederholen des Verfahrens, während Zielstörungen existieren.One Yet another aspect of this invention is a method for Compacting a sequence of test vectors, the segments be mixed in finding a compact amount, the Method comprises the steps of: identifying the test vectors, a fault list with the disturbances, which can be detected using the test vectors, and with the acquisition times for the disorders; Choose the target disorders, if the target interference exist; To run a two-phase vector recovery and enlarging one Sub-segment set if the recovery method detects selected target faults; Shorten the obtained segment if the sub-segment set is a segment; Blending the obtained segment if the subset amount is one segment is; Repeat the procedure while targeting disorders exist.

Nochmals weitere Verbesserungen umfassen ein Verfahren zum Kompaktifizieren einer Folge von Testvektoren, wobei die Mischphase folgendes umfaßt: Simulieren eines neuen Segments aus dem nach dem Simulieren der Vektoren in der momentanen kompakten Vektormenge erhaltenen bekannten Anfangszustand; Hinzufügen des neuen Segments zum Ende der kompaktifizierten Vektormenge.again Further improvements include a method for compacting a sequence of test vectors, the mixing phase comprising: simulating a new segment from the after simulating the vectors in the current compact vector quantity obtained known initial state; Add of the new segment towards the end of the compacted vector set.

Nochmals weitere Verbesserungen umfassen ein Verfahren zum Kompaktifizieren einer Folge von Testvektoren, wobei die Zwei-Phasen-Vektorwiederherstellung folgendes umfaßt: Ausführen einer sich überschneidenden Überprüfung in der Weise, daß zwei Störungen als eine Zielstörung gemischt werden, falls die zwei Störungen wiederhergestellte Folgen besitzen, die sich überschneiden; und Ausführen einer sich überschneidenden Verfeinerung, falls ein Segment existiert, das Zielstörungen erfaßt.Yet further improvements include a method of compacting a sequence of test vectors, where the two-phase vector recovery comprises: performing an intersecting check such that two perturbations are mixed as a target perturbation if the two disturbances have recovered sequences that overlap; and performing an overlapping refinement if a segment exists that detects target noise.

Ein weiterer Aspekt der vorliegenden Erfindung ist ein Verfahren zum Kompaktifizieren einer Folge von Testvektoren, wobei die Kürzungsphase folgendes umfaßt: Zuweisen von j = 1; Erzeugen einer Folgeliste mit einem j-ten Element des Eingangssegments als ein erstes Element und mit dem letzten Element des Eingangssegments als das letzte Element; Laufenlassen der Simulation, um die Störungen zu simulieren, die durch das Eingangssegment von einem bekannten, nach der Simulation der Vektoren in der kompakten Menge erhaltenen Anfangszustand aus erfaßt werden; Zuweisen von j = j + 1 und Wiederholen, bis die Teilmenge der Eingangsstörungen nicht mehr erfaßt wird; Ausgeben des Segments beginnend mit dem j – 1. Element des Eingangssegments und endend mit dem letzten Element des Eingangssegments.One Another aspect of the present invention is a method for Compacting a sequence of test vectors, the shortening phase following comprising: Assign j = 1; Create a follow list with a jth element of the input segment as a first element and with the last element the input segment as the last element; Running the simulation, around the disturbances to be simulated by the input segment of a known, obtained after the simulation of the vectors in the compact amount Initial state detected from become; Assign j = j + 1 and repeat until the subset the entrance disorders no longer detected becomes; Output the segment starting with the j - 1st element of the input segment and ending with the last element of the input segment.

Ein weiterer Aspekt der vorliegenden Erfindung ist ein Verfahren zum Kompaktifizieren, das die Verwendung von Segmenten beinhaltet, wobei
das Verfahren weiter die Verwendung einer Segmentkürzung beinhaltet und daß das Verfahren weiter die Verwendung einer Segmentumordnung beinhaltet.
Another aspect of the present invention is a method for compacting that involves the use of segments, wherein
the method further includes using a segment truncation and the method further includes using a segment reordering.

III. Kurzbeschreibung der ZeichnungIII. Summary the drawing

Die obenstehenden Aufgaben und Vorteile der vorliegenden Erfindung werden deutlicher anhand der ausführlichen Beschreibung ihrer zweckmäßiger Ausführungen mit Bezug auf die beigefügte Zeichnung, worin:The above objects and advantages of the present invention more clearly from the detailed Description of their expedient designs with reference to the attached drawing, wherein:

1 ein Beispiel einer Testvektormenge und einer Menge von Störungen mit ihren jeweiligen Erfassungszeiten zeigt. 1 shows an example of a test vector set and a set of perturbations with their respective acquisition times.

2 einen Blockschaltplan zeigt, der die Kompaktifizierung unter Verwendung eines Zwei-Phasen-Wiederherstellungsalgorithmus veranschaulicht. 2 shows a block diagram illustrating compactification using a two-phase recovery algorithm.

3 eine Pseudocoderealisierung für das SECO, eine Ausführung eines Zwei-Phasen-Segmentwiederherstellungsalgorithmus, zeigt. 3 shows a pseudocoder implementation for the SECO, an implementation of a two-phase segment recovery algorithm.

4 ein Diagramm zeigt, das den Unterschied zwischen dem RSP-Zugang und dem Zugang der vorliegenden Erfindung bei der Segmentverarbeitung in bezug auf die Kompaktifizierungsqualität erläutert. 4 Figure 12 is a diagram illustrating the difference between the RSP access and the access of the present invention in segment processing with respect to the compaction quality.

5 den Pseudocode für den Segmentkürzungsalgorithmus zeigt. 5 shows the pseudocode for the segment shortening algorithm.

6 die Tabelle 1 zeigt, die experimentelle Simulationsergebnisse zeigt. 6 Table 1 shows experimental simulation results.

7 die Tabelle 2 zeigt, die Kompaktifizierungsergebnisse für Herstellungsschaltungen zeigt. 7 Table 2 shows compaction results for manufacturing circuits.

8 die Tabelle 3 zeigt, die Kompaktifizierungsergebnisse des SECO mit der Segmentkürzung zeigt. 8th Table 3 shows the compacting results of SECO with the segment shortening.

IV. Ausführliche Beschreibung der ErfindungIV. Detailed Description of the invention

Der Algorithmus zur statischen Kompaktifizierung gemäß der vorliegenden Erfindung kann dazu verwendet werden, Funktionsmengen oder Mengen zufälliger Vektoren oder aus automatischen Testerzeugungshilfsmitteln erhaltene Vektormengen zu kompaktifizieren. Zum Teil beruht die vorliegende Erfindung auf dem Konzept der Vektorwiederherstellung. Einige Hauptmerkmale, die die vorliegende Erfindung vom Stand der Technik unterscheiden, sind: (1) ein neues Zwei-Phasen-Vektorwiederherstellungsverfahren sowie (2) ein neues Konzept der Segmente.Of the Static compactification algorithm according to the present invention can be used to represent sets of functions or sets of random vectors or vectors obtained from automatic generation reagents kompaktifizieren. In part, the present invention is based on the concept of vector restoration. Some key features that The present invention differs from the prior art in that: (1) a new two-phase vector recovery method and (2) a new concept of the segments.

Die Zwei-Phasen-Vektorwiederherstellung schafft einen signifikanten Rechenvorteil gegenüber anderen Vektorwie derherstellungszugängen. Die Konzepte der Segmente; der Segmentkürzung und der Segmentumordnung der vorliegenden Erfindung sind auch auf existierende Kompaktifizierungsverfahren zum Erzielen einer weiteren Kompaktifizierung anwendbar.The Two-phase vector recovery creates a significant Computing advantage over others Vector as manufacturing access. The concepts of the segments; the segment reduction and the segment reorganization The present invention is also applicable to existing compaction processes applicable to achieve a further compactification.

Das Zwei-Phasen-Vektorwiederherstellungsverfahren ist ausführlich in der US-Patentanmeldung Nr. 09/112.945 von Bommu u. a. offenbart, die hier durch Literaturhinweis eingefügt ist. Eine ausführliche Beschreibung der Segmentkürzungs-, Segmentmischungs- und Segmentumordnungsverfahren wird unten gegeben.The Two-phase vector recovery method is detailed in U.S. Patent Application No. 09 / 112,945 to Bommu et al. a. revealed that here by reference is inserted. A detailed Description of Segment Cut, Segment Mixing and segment reassignment procedure is given below.

IVA. Ein neuer statischer KompaktifizierungsalgorithmusIVA. A new static Kompaktifizierungsalgorithmus

In 2 ist der Ablaufplan einer Ausführung des Kompaktifizierungsalgorithmus gemäß der vorliegenden Erfindung gezeigt. In 2.01 gibt der Algorithmus eine Menge von Testvektoren und eine Liste von zu erfassenden Störungen zusammen mit ihren Erfassungszeiten ein. Nach der Auswahl einer Menge von Zielstörungen in 2.02 und nach dem Prüfen auf die Existenz der Ziele in 2.03 wird das Zwei-Phasen-Vektorwiederherstellungsverfahren mit der Überprüfungsphase 2.05 und mit der Verfeinerungsphase 2.06 ausgeführt. Die Bedingung 2.07 überprüft, ob die wiederhergestellte Vektorfolge ein Segment enthält. Falls das der Fall ist, vollzieht die Segmentmanipulationsphase 2.08 das Kürzen und Umordnen des gefundenen Segments. Solange solche Zielstörungen existieren, wird die Ausführung dann in 2.02 mit der Auswahl einer neuen Menge von Zielstörungen fortgesetzt.In 2 3, the flowchart of one embodiment of the compacting algorithm according to the present invention is shown. In 2:01 The algorithm inputs a set of test vectors and a list of disturbances to be detected along with their acquisition times. After selecting a lot of target disorders in 2:02 and after checking for the existence of the goals in 2:03 becomes the two-phase vector recovery process with the verification phase 2:05 and with the refinement phase 2:06 executed. The condition 2:07 checks if the recovered vector sequence ent holds. If so, the segment manipulation phase occurs 2:08 shortening and rearranging the found segment. As long as such target disturbances exist, the execution is then in 2:02 continued with the selection of a new set of target disorders.

Wie das RSP beruht dieser Algorithmus auf der Vektorwiederherstellung. Jedoch unterscheidet er sich von dem RSP-Zugang auf zwei signifikanten Arten:

  • 1. Das lineare Vektorwiederherstellungsverfahren wird durch ein Zwei-Phasen-Wiederherstellungsverfahren ersetzt, das einen signifikanten Rechenvorteil für große Schaltungen schafft.
  • 2. Im Gegensatz zum RSP identifiziert das Zwei-Phasen-Wiederherstellungsverfahren Segmente anstelle einer einzelnen monolithischen Teilfolge, die alle Störungen in der Störungsmenge erfaßt. Segmente sind Teilfolgen, die gekürzt und umgeordnet werden können, um eine weitere Kompaktifizierung zu erhalten.
Like the RSP, this algorithm relies on vector recovery. However, it differs from RSP access in two significant ways:
  • 1. The linear vector recovery method is replaced by a two-phase recovery method that provides a significant computational advantage for large scale circuits.
  • 2. Unlike RSP, the two-phase recovery technique identifies segments rather than a single monolithic subsequence that detects all perturbations in the perturbation. Segments are subsequences that can be truncated and rearranged for further compactification.

Einige Hauptmerkmale des Kompaktifizierungsalgorithmus der vorliegenden Erfindung sind die Segmentmanipulation und die Zwei-Phasen-Vektorwiederherstellung. Die Segmentmanipulation und die Zwei-Phasen-Vektorwiederherstellungsverfahren werden unten beschrieben.Some Main features of the compacting algorithm of the present Invention are segment manipulation and two-phase vector recovery. The segment manipulation and the two-phase vector recovery methods are described below.

IVB. SegmentumordnungIVB. Segmentumordnung

In dem in dem Hintergrundabschnitt beschriebenen RSP-Zugang wird die soweit wiederhergestellte kompaktifizierte Vektormenge während des Wiederherstellungsverfahrens für alle weiteren Ziele für die Störungssimulation betrachtet. Experimente haben gezeigt, daß die wiederholte Simulation der für frühere Ziele wiederhergestellten Vektormenge während der Wiederherstellung der momentanen und zukünftigen Ziele für den RSP-Zugang zu einer gewaltigen Zunahme der Laufzeiten führt.In the RSP access described in the Background section becomes so far recovered compacted vector set during the recovery process for all other goals for the fault simulation considered. Experiments have shown that the repeated simulation for previous goals recovered vector amount during recovery the current and future Goals for the RSP access leads to a huge increase in terms.

Gemäß der vorliegenden Erfindung werden die Vektorfolgen in Segmenten wiederhergestellt. Ein Segment ist eine Teilfolge vi, ..., vj (1 ≤ i ≤ j ≤ n) derart, daß für irgendeine zukünftige Zielstörung f die Erfassungszeit D(f) < i ist. In dem Beispiel nach 1 führt das Wiederherstellungsverfahren für die Störung f5 zu der Teilfolge v17, ..., v20. An dieser Stelle werden die Störungen f1, f2 und f3 durch die wiederhergestellte Folge nicht erfaßt. Die Erfassungszeiten aller dieser Störungen sind früher als 17. Somit ist die Teilfolge v17, ..., v20 ein Segment. Da f4 eine spätere Erfassungszeit als f3 hat und da f4 durch die wiederhergestellte Folge erfaßt wird, kann f4 keine zukünftige Zielstörung sein.According to the present invention, the vector sequences are restored in segments. A segment is a subsequence v i , ..., v j (1 ≦ i ≦ j ≦ n) such that for any future target disturbance f, the detection time D (f) <i. In the example below 1 the recovery procedure for the disturbance f 5 leads to the subsequence v 17 ,..., v 20 . At this point, the faults f 1 , f 2 and f 3 are not detected by the recovered sequence. The acquisition times of all these errors are earlier than 17. Thus, the subsequence v 17 , ..., v 20 is a segment. Since f 4 has a detection time later than f 3 and since f 4 is detected by the recovered sequence, f 4 can not be a future target disturbance.

Ein Segment resultiert aus dem Wiederherstellungsverfahren für eine oder für mehrere Zielstörungen. Jede Zielstörung entspricht einem eindeutigen Segment. Sobald ein Segment identifiziert ist, werden die Vektoren in dem Segment während der Wiederherstellung irgendwelcher zukünftiger Zielstörungen nicht betrachtet. Während des Wiederherstellungsverfahrens für die Zielstörung f werden für die Störungssimulation nur die Vektoren betrachtet, die schließlich in dem Segment für f liegen werden.One Segment results from the recovery process for one or for many Target disorders. Every target disorder corresponds to a unique segment. Once a segment is identified is, the vectors in the segment will be during recovery any future target disorders not considered. While of the recovery process for the target fault f for the fault simulation consider only the vectors that are finally in the segment for f become.

In dem Beispiel nach 1 ist die wiederhergestellte Folge v17, ..., v20 für die Zielstörung f5 ein Segment. Zukünftige Zielstörungen wie f3 können nur zu einem oder zu mehreren neuen Segmenten führen. Somit betrachtet das Wiederherstellungsverfahren für f3 das Segment v17, ..., v20 nicht für die Störungssimulation. Falls das Kompaktifizierungsverfahren fortgesetzt wird, ist v5, ..., v12 die wiederhergestellte Vektorfolge für die Störung f3. Diese Teilfolge ist kein Segment. Dies liegt daran, daß die Störung f2 nicht erfaßt wird und daß D(f2) ≥ 5 ist. Die Störung f2 ist das nächste Ziel. Das Wiederherstellungsverfahren für f2 betrachtet. die Teilfolge v5, ..., v12 für die Störungssimulation. Die Vektorwiederherstellung für f2 führt zu der Folge v2, ..., v12. Diese Folge ist wiederum kein Segment. Dies liegt daran, daß die Störung f1 nicht erfaßt wird und daß D(f1) ≥ 2 ist. Die Störung f1 ist das nächste Ziel. Die Wiederherstellung der Störung f1 führt zu der Folge v1, ..., v12. Da es keine weiteren nichterfaßten Störungen gibt, ist diese Folge ein Segment. Zusammengefaßt gibt es zwei Segmente: (1) Die Teilfolge v17, ..., v20, die die Störungen f4 und f5 erfaßt, sowie (2) die Teilfolge v1, ..., v12, die die Störungen f1, f2 und f3 erfaßt.In the example below 1 is the restored sequence v 17 , ..., v 20 for the target disturbance f 5 a segment. Future target faults such as f 3 can only lead to one or more new segments. Thus, the recovery method for f 3 does not consider the segment v 17 , ..., v 20 for the perturbation simulation. If the compaction process continues, v 5 , ..., v 12 is the reconstructed vector sequence for perturbation f 3 . This subsequence is not a segment. This is because the disturbance f 2 is not detected and that D (f 2 ) ≥ 5. The fault f 2 is the next target. Consider the recovery procedure for f 2 . the subsequence v 5 , ..., v 12 for the disturbance simulation. The vector restoration for f 2 leads to the sequence v 2 , ..., v 12 . This sequence is again not a segment. This is because the disturbance f 1 is not detected and D (f 1 ) ≥ 2. The fault f 1 is the next target. The restoration of the disturbance f 1 leads to the sequence v 1 ,..., V 12 . Since there are no other unrecognized disturbances, this sequence is a segment. In summary, there are two segments: (1) The subsequence v 17 , ..., v 20 , which detects the faults f 4 and f 5 , and (2) the subsequences v 1 , ..., v 12 , the interference f 1 , f 2 and f 3 detected.

Eine Ausführung des Kompaktifizierungsalgorithmus der vorliegenden Erfindung wird durch den in 3 gezeigten Pseudocode beschrieben. Die Zeilen 6 (Segmentkürzung) und 7 (Segmentmischung) entsprechen der Segmentmanipulation. Die Segmentkürzung und die Segmentmischung werden unten ausführlich beschrieben.An embodiment of the compacting algorithm of the present invention is described by the in 3 described pseudocode described. Lines 6 (segment cut) and 7 (segment mix) correspond to segment manipulation. Segment trimming and segment blending are described in detail below.

Gemäß dem Kompaktifizierungsalgorithmus wird die Störungssimulation zum Bestimmen der Erfassungszeiten D für die Störungen in F für die anfängliche Störungsliste F und für die anfängliche Vektormenge V ausgeführt. Während der Kompaktifizierung werden die Segmente, wenn sie gefunden werden, zu einer CompactSet genannten Menge gemischt. Die Kompaktifizierung ist abgeschlossen, wenn die Folge CompactSet alle Störungen in der Liste der anfänglichen Störungen erfaßt.According to the compactification algorithm the fault simulation for determining the detection times D for the faults in F for the initial one Failure table F and for the initial one Vector set V executed. While of compactification the segments, if found, become mixed into a quantity called CompactSet. The compactification is completed when the consequence CompactSet all faults in the list of initial ones disorders detected.

Die CompactSet enthält die Vektoren in allen soweit identifizierten Segmenten. Die Menge der Vektoren, die das momentane Teilsegment bilden, werden in ParSeg gespeichert. Sowohl die Menge CompactSet als auch die Menge ParSeg sind anfangs leer. Anfangs wird jede Störung in F zu der Menge Fu hinzugefügt. Während der Kompaktifizierung enthält die Menge Fu nur Störungen, die durch die Vektoren in CompactSet oder in ParSeg nicht erfaßt werden.The CompactSet contains the vectors in all segments identified so far. The set of vectors that make up the current subsegment are stored in ParSeg. Both the amount of CompactSet and the amount of ParSeg are initially empty. Initially, each disturbance in F is added to the set F u . During the compactification The set F u contains only disturbances that are not detected by the vectors in CompactSet or in ParSeg.

Das Verfahren Choose_Next_Target() wählt die Zielstörungen für die Vektorwiederherstellungsphase aus. Gemäß der vorliegenden Erfindung werden die Störungen für die Vektorwiederherstellung in der fallenden Reihenfolge ihrer Erfassungszeiten betrachtet. Zum Beispiel wird die Störung f5 in 1 in v20 erfaßt, während die Störung F4 in v16 erfaßt wird. Die Teilfolge, die f4 erfaßt, kann nicht ebenfalls f5 erfassen. Dies liegt daran, daß f5 eine spätere Erfassungszeit hat. Jedoch könnte die Teilfolge, die f5 erfaßt, f4 (oder irgendeine Störung mit einer Erfassungszeit, die kleiner als die von f5 ist) erfassen. Somit werden Störungen mit späteren Erfassungszeiten zuerst als Zielstörungen für die Vektorwiederherstellung betrachtet. Da mehr als eine Störung die gleiche Erfassungszeit haben können, kann im Gegensatz zu einer Einzelstörung eine Menge von Störungen in Fu als Ziele für eine Wiederherstellungsphase gewählt werden.The Choose_Next_Target () method selects the target perturbations for the vector recovery phase. According to the present invention, the perturbations for the vector recovery are considered in the descending order of their detection times. For example, the disturbance f 5 in 1 in v 20 detected while the fault F 4 in v 16 . The subsequence that detects f 4 can not also capture f 5 . This is because f 5 has a later acquisition time. However, the subsequence that detects f 5 could capture f 4 (or any disturbance with a detection time less than that of f 5 ). Thus, glitches with later acquisition times are first considered as target glitches for vector recovery. Since more than one disturbance can have the same detection time, unlike a single disturbance, a lot of disturbances in F u can be selected as targets for a restoration phase.

Nach der Wahl eines Ziels vergrößert das untenbeschriebene Zwei-Phasen-Wiederherstellungsverfahren ParSeg, um das Ziel zu erfassen. Das Verfahren New_Segment() überprüft, ob die Teilfolge ParSeg ein Segment ist (Zeile 5, Algorithmus in 3). Falls ein neues Segment gefunden wird, wird das Segment in CompactSet aufgenommen. Da die für zukünftige Ziele wiederhergestellten Vektoren ein neues Segment bilden, wird ParSeg dann zurückgesetzt.After selecting a target, the two-phase recovery method described below increases ParSeg to capture the target. The method New_Segment () checks whether the subsequence ParSeg is a segment (line 5, algorithm in 3 ). If a new segment is found, the segment is included in CompactSet. As the vectors recovered for future targets form a new segment, ParSeg is then reset.

Das Segmentmischungsverfahren umfaßt mehrere Schritte. Gemäß der vorliegenden Erfindung speichert der Störungssimulator nach der Simulation der Vektoren in CompactSet die guten und die gestörten Schaltungszustände für die unerfaßten Störungen. Als ein erster Schritt in dem Mischungsverfahren wird das neue Segment für die Störungssimulation betrachtet. Der Anfangszustand des Störungssimulators ist der gleiche wie der, der nach der Simulation der Vektoren in CompactSet erhalten wird. Somit sehen die Störungen, die simuliert werden, nicht nur die Vektoren in dem neuen Segment, sondern auch die über die Grenzen von CompactSet gebildeten neuen Folgen und das neue Segment (siehe 4).The segment mixing method involves several steps. According to the present invention, after the simulation of the vectors in CompactSet, the disturbance simulator stores the good and disturbed circuit states for the undetected disturbances. As a first step in the blending process, the new segment for disturbance simulation is considered. The initial state of the disturbance simulator is the same as that obtained after simulation of the vectors in CompactSet. Thus, the perturbations that are simulated will not only see the vectors in the new segment, but also the new sequences formed over the boundaries of CompactSet and the new segment (see 4 ).

Das Mischungsverfahren der vorliegenden Erfindung kann durch die Betrachtung des Mischens von CompactSet = v17, ..., v20 und von ParSeg = v1, ..., v12 in dem Beispiel nach 1 erläutert werden. Es wird vorausgesetzt, daß die Störungszustände der Störungen f1, f2 und f3 nach der Simulation in CompactSeg bekannt sind. Während der Störungssimulation sehen die Störungen f1, f2 und f3 nicht nur die Teilfolgen in ParSeg, sondern auch die Teilfolgen über CompactSet und ParSeg.The mixing method of the present invention can be seen by considering the mixing of CompactSet = v 17 , ..., v 20 and ParSeg = v 1 , ..., v 12 in the example 1 be explained. It is assumed that the failure states of the faults f 1 , f 2 and f 3 are known after simulation in CompactSeg. During the disturbance simulation, the faults f 1 , f 2 and f 3 not only see the subsequences in ParSeg, but also the subsequences via CompactSet and ParSeg.

Falls z. B. f3 durch die Folge v20, v1, v2 erfaßt werden sollte, würde die Störung f3 durch die Ausführung einer Störungssimulation von bekannten Anfangszuständen bei v2 anstatt bei v12 fallengelassen. Dies ist der Grund dafür, daß die Kompaktifizierungsqualität des Zugangs der vorliegenden Erfindung nicht wie in dem RSP-Zugang ungünstig beeinflußt wird. Der Segmentzugang schafft außerdem eine Möglichkeit, eine bessere Kompaktifizierungsqualität als der RSP-Zugang zu erreichen. Der RSP-Zugang betrachtet Teilfolgen über die Grenzen der Folgen ParSeg und CompactSet dadurch, daß er aufwendige, wiederholte Simulationen ausführt. Im Gegensatz dazu betrachtet der Segmentzugang alle Teilfolgen über die Grenzen der Folgen CompactSet und ParSeg in einer einzigen Störungssimulation. Dies führt zu einer signifikanten Beschleunigung des Gesamtkompaktifizierungsverfahrens. 4 erläutert bildhaft den Unterschied bei der Verarbeitung von Segmenten zwischen dem RSP-Zugang und dem beschriebenen Zugang.If z. For example, if f 3 were to be detected by the sequence v 20 , v 1 , v 2 , the disturbance f 3 would be dropped by executing a disturbance simulation of known initial states at v 2 instead of v 12 . This is the reason that the compacification quality of the access of the present invention is not adversely affected as in the RSP access. Segment access also provides a way to achieve better compaction quality than RSP access. The RSP approach considers subsequences beyond the limits of the ParSeg and CompactSet sequences by performing elaborate, repeated simulations. In contrast, segment access looks at all subsequences beyond the limits of the CompactSet and ParSeg sequences in a single perturbation simulation. This leads to a significant acceleration of the overall compaction process. 4 illustrates graphically the difference in the processing of segments between the RSP access and the described access.

Nach der Segmentstörungssimulation wird das neue Segment zum Ende der Folge CompactSet hinzugefügt. Dies schließt das Mischungsverfahren ab. Es wird die nächste Zielstörung bestimmt und das Kompaktifizierungsverfahren fortge setzt. Wenn es keine Zielstörungen gibt, ist die Kompaktifizierung abgeschlossen. Der abschließende, kompaktifizierte Vektor ist in CompactSet verfügbar.To the segment disturbance simulation the new segment is added to the end of the CompactSet episode. This includes the mixing procedure. The next target fault is determined and the compaction process continues. If there is no target interference, is the compactification completed. The final, condensed vector is available in CompactSet.

IVC. Zwei-Phasen-VektorwiederherstellungIVC. Two-phase vector restoration

Der Zwei-Phasen-Vektorwiederherstellungsalgorithmus ist ausführlich in der gleichzeitig anhängigen US-Patentanmeldung Nr. 09/112.945 beschrieben.Of the Two-phase vector recovery algorithm is detailed in the simultaneously pending U.S. Patent Application No. 09 / 112,945.

IVD. Beschleunigte Zwei-Phasen-VektorwiederherstellungIVD. Accelerated two-phase vector recovery

Der beschleunigte Zwei-Phasen-Vektorwiederherstellungsalgorithmus ist ausführlich in der gleichzeitig anhängigen US-Patentanmeldung Nr. 09/112.945 beschrieben.Of the accelerated two-phase vector recovery algorithm in detail in the co-pending U.S. Patent Application No. 09 / 112,945.

IVE. SegmentkürzungIVE. segment reduction

Die obenbeschriebenen Verfahren der vorliegenden Erfindung sind hauptsächlich auf die Beschleunigung des Kompaktifizierungsverfahrens gerichtet. Ein weiterer Aspekt der vorliegenden Erfindung, die Segmentkürzung, ist andererseits auf die Verbesserung der Kompaktifizierungsqualität durch Vermeiden der redundanten Verwendung der Synchronisierungsfolgen gerichtet.The The above-described methods of the present invention are mainly on directed the acceleration of the compaction process. One Another aspect of the present invention, the segment shortening is on the other hand, to the improvement of Kompaktifizierungsqualität by avoiding directed to the redundant use of the synchronization sequences.

Während der Segmentwiederherstellung werden die Störungen unter der Voraussetzung unbekannter Anfangszustände simuliert. Somit können zwei Segmente eine gemeinsame Initialisierungsfolge besitzen. Folglich wird eine weitere Kompaktifizierung dadurch erreicht, daß die Synchronisierungsfolge des ersten Segments erhalten wird, während dann die Synchronisierungsfolgen aller anderen Segmente gekürzt werden.During segment recovery the disturbances are simulated assuming unknown initial states. Thus, two segments may have a common initialization sequence. Consequently, further compactification is achieved by obtaining the synchronization sequence of the first segment while then truncating the synchronization sequences of all other segments.

Eine Ausführung des Segmentkürzungsalgorithmus wird durch den in 5 gezeigten Pseudocode beschrieben. Das Verfahren beginnt mit dem aus den Vektoren vi, ..., vk bestehenden Segment Seg. Die Menge Fseg umfaßt Störungen, deren Wiederherstellungsphasen das Segment Seg erzeugt haben. Fseg kann außerdem als die Menge der durch Seg ausgehend von einem unbekannten Anfangszustand erfaßten Störungen angesehen werden. Wie oben erläutert wurde, umfaßt CompactSet frühere Segmente.One embodiment of the segment shortening algorithm is represented by the in 5 described pseudocode described. The method begins with the segment Seg consisting of the vectors v i ,..., V k . The set F seg includes perturbations whose recovery phases have generated the seg segment. F seg can also be considered as the amount of perturbations detected by Seg starting from an unknown initial state. As discussed above, CompactSet includes earlier segments.

Gemäß der vorliegenden Erfindung werden nach der Störungssimulation von CompactSet die guten und die gestörten Zustände gespeichert. Falls die Folge vi+1, ..., vj (ausgehend von den nach der Simulation von CompactSet verfügbaren bekannten Anfangszuständen) nicht alle Störungen in Fseg erfaßt, kann das Segment nicht gekürzt werden. Andernfalls wird die Folge vi+2, ..., vj betrachtet und die Störungssimulation unter Verwendung dieser Folge ausgeführt. Dieses Verfahren wird fortgesetzt, bis eine Folge vk, ..., vj (i ≤ k ≤ j) gefunden wird, die nicht weiter gekürzt werden kann.According to the present invention, after the disturbance simulation of CompactSet, the good and the disturbed states are stored. If the sequence v i + 1 , ..., v j (based on the known initial states available after the simulation of CompactSet) does not capture all faults in F seg , the segment can not be truncated. Otherwise, the sequence v i + 2 ,..., V j is considered and the disturbance simulation is performed using this sequence. This process continues until a sequence vk , ..., vj (i≤k≤j) is found which can not be shortened further.

In dem Beispiel nach 1 ist das erste gefundene Segment v17, ..., v20. Da dies das erste Segment ist, wird kein Kürzen versucht. Das nächste gefundene Segment ist v1, ..., v12. Es wird vorausgesetzt, daß nach der Simulation des ersten Segments die guten und die gestörten Zustände der Störungen f1, f2 und f3 verfügbar sind. Das Kürzen des zweiten Segments geht wie folgt vonstatten. Zunächst werden die Folge v2, ..., v12 sowie die Störungen f1, f2 und f3 für die Störungssimulation betrachtet. Da f1 nicht erfaßt wird, kann das Segment nicht gekürzt werden.In the example below 1 is the first found segment v 17 , ..., v 20 . Since this is the first segment, no truncation is attempted. The next segment found is v 1 , ..., v 12 . It is assumed that after the simulation of the first segment, the good and the disturbed states of the faults f 1 , f 2 and f 3 are available. Shortening the second segment is done as follows. First, the sequence v 2 ,..., V 12 and the disturbances f 1 , f 2 and f 3 are considered for the disturbance simulation. Since f 1 is not detected, the segment can not be shortened.

IVF. Experimentelle ErgebnisseIVF. Experimental results

Das statische Kompaktifizierungsverfahren gemäß der vorliegenden Erfindung ist in einem SECO genannten C-Programm ausgeführt. Die Ausführung umfaßt alle obenbeschriebenen Verfahren der vorliegenden Erfindung. Um einen gerechten Vergleich durchzuführen, wird außerdem eine verbesserte Version des RSP-Zugangs realisiert. Siehe I. Pomeranz und S. M. Reddy, "Vector Restoration Based Static Compaction of Test Sequences for Synchronous Sequential circuits", Proceedings Int. Conf. on Computer Design, S. 360-365, 1997, Universität von Iowa, August 1997.The static compacting methods according to the present invention is in a SEC program called C program executed. Execution comprises all of the above-described methods of the present invention. Around to make a fair comparison will also be a improved version of the RSP access realized. See I. Pomeranz and S.M. Reddy, "Vector Restoration Based Static Compaction of Test Sequences for Synchronous Sequential circuits ", Proceedings Int. Conf. on Computer Design, pp. 360-365, 1997, University of Iowa, August 1997.

Der RSP-Zugang, wie er in dem letzten Literaturhinweis vorgeschlagen wurde, führt die Simulation während des Vektorwiederherstellungsverfahrens an einer einzelnen Störung aus. Der RSP-Zugang wird erweitert, um während der Vektorwiederherstellung mehrere Störungen zu betrachten. In der vorliegenden Realisierung des RSP-Zugangs werden Störungen mit der gleichen Erfassungszeit gleichzeitig für die Wiederherstellung betrachtet. Somit nutzt das Verfahren den in der Realisierung verwendeten Parallelstörungssimulator. Die vorliegende Realisierung des RSP wird als Verbessertes RSP bezeichnet.Of the RSP access, as suggested in the last reference was, leads the simulation during of the vector recovery process on a single fault. The RSP access is extended to during vector recovery several disorders consider. In the present implementation of RSP access become disorders at the same time for recovery with the same acquisition time. Thus, the method uses the parallel interference simulator used in the realization. The present implementation of RSP is referred to as Improved RSP.

Es werden experimentelle Ergebnisse für die ISCAS-Bewertungsprogrammschaltungen und für Industrieentwürfe berichtet. Siehe F. Brglez, D. Bryan und K. Kozminski, "Combinational profiles of sequential benchmark circuits", Int. Symposium on Circuits and Systems, S. 1929-1934, Mai 1989. Das SECO wird mit dem Verbesserten RSP-Zugang verglichen. Die in 6 gezeigte Tabelle 1 stellt die Ergebnisse für die ISCAS-Schaltungen dar. Die in 7 gezeigte Tabelle 2 stellt die Ergebnisse für mehrere Industrieentwicklungen dar.Experimental results for the ISCAS evaluation program circuits and for industrial designs are reported. See F. Brglez, D. Bryan and K. Kozminski, "Combinational profiles of sequential benchmark circuits", Int. Symposium on Circuits and Systems, pp. 1929-1934, May 1989. SECO is compared to Enhanced RSP Access. In the 6 Table 1 shows the results for the ISCAS circuits 7 Table 2 shows the results for several industrial developments.

Alle Tabellen berichten die Anzahl der Vektoren in der ursprünglichen und in der kompakten Vektormenge. Die Kompaktifizierungsqualität wird als die prozentuale Verringerung der ursprünglichen Vektormenge berichtet. Die CPU-Sekunden werden für eine Sun UltraSPARC-Workstation berichtet. Die berichteten CPU-Sekunden sind plattformspezifisch. Um Informationen über die Komplexität des Algorithmus bereitzustellen, wird somit auch die für die Störungssimulation aller Störungen unter Verwendung der ursprünglichen Vektormenge benötigte Zeit berichtet. Diese Zeiten werden unter der Spalte Anfangssimulationszeit berichtet, Die Spalte Verbessertes RSP stellt eine beschleunigte Version des schnellsten in I. Pomeranz und S. M. Reddy, "Vector Restoration Based Static Compaction of Test Sequences for Synchronous Sequential Circuits", Proceedings Int. Conf. on Computer Design, S. 360-365, Universität von Iowa, August 1997, vorgeschlagenen Algorithmus dar. Die Ergebnisse von der beschriebenen Ausführung der vorliegenden Erfindung sind in der Spalte SECO gegeben.All Tables report the number of vectors in the original and in the compact vector set. The Kompaktifizierungsqualität is called the percentage reduction of the original vector amount is reported. The CPU seconds are for a Sun UltraSPARC workstation reports. The reported CPU seconds are platform specific. To provide information about the complexity of the algorithm, will therefore also the for the fault simulation of all errors using the original ones Vector required Time reports. These times are under the column Initial Simulation Time reported, The column Improved RSP represents an accelerated Version of the fastest in I. Pomeranz and S. M. Reddy, "Vector Restoration Based Static Compaction of Test Sequences for Synchronous Sequential Circuits ", Proceedings Int. Conf. on Computer Design, pp. 360-365, University of Iowa, August 1997, proposed Algorithm. The results of the described embodiment of present invention are given in column SECO.

Die Anzahl der Gates und die Anzahl der Flipflops in den in den Experimenten verwendeten Industrieentwicklungen sind in der in 6 gezeigten Tabelle 2 gegeben. Infolge der Art der auf der Vektorwiederherstellung beruhenden Zugänge wird der Störungseinfluß der ursprünglichen Vektormenge durch die kompaktifizierte Vektormenge immer erhalten. Somit werden keine Störungserfassungszahlen berichtet. Tabelle 2 zeigt außerdem die durch die Verwendung der obenbeschriebenen Beschleunigungsverfahren erhaltenen Ergebnisse.The number of gates and the number of flip-flops in the industrial developments used in the experiments are in the in 6 Table 2 given. Due to the nature of the accesses based on the vector restoration, the interference influence of the original vector set by the compacted vector set is always obtained. Thus, no fault detection numbers are reported. Table 2 also shows the results obtained by using the above-described acceleration methods.

Die Ergebnisse, die durch die Verwendung des Zwei-Phasen-Wiederherstellungsverfahrens und des beschleunigten Zwei-Phasen-Wiederherstellungsverfahrens, wie sie in der obenerwähnten gleichzeitig anhängigen US-Patentanmeldung Nr. 09/112.945 beschrieben sind, erhalten wurden, sind in den Spalten 2-∅ bzw. 2-∅* berichtet.The Results obtained by using the two-phase recovery method and the accelerated two-phase recovery process, as mentioned in the above mentioned at the same time pending US Patent Application No. 09 / 112,945 have been obtained, are reported in columns 2-∅ and 2-∅ *, respectively.

Die für die ISCAS-Schaltungen verwendeten Anfangsvektormengen werden unter Verwendung des Testmengengenerators HITEC erhalten. Siehe T. M. Niermann und I. H. Patel, "HITEC: A test generation package for sequential circuits", Proc. European Conf. Design Automation (EDAC), S. 214-218, März 1991. Die Ergebnisse für die Kompaktifizierung in den ISCAS-Schaltungen sind in Tabelle 1 gegeben. Sowohl das SECO- als auch das RSP-Verfahren gaben eine durchschnittliche Kompaktifizierung von 40 Prozent, wobei das SECO aber signifikant schneller war. Für die kleineren ISCAS-Schaltungen (s344 und s444) liefert der RSP-Zugang eine bessere Kompaktifizierung. Für alle anderen ISCAS-Entwicklungen ist der Unterschied der Kompaktifizierungsqualität zwischen den zwei Verfahren vernachlässigbar. Offensichtlich ist das SECO bezüglich der benötigten CPU-Sekunden wesentlich besser als das Verbesserte RSP. In Schaltungen wie s1494 und s1488 ist das vorliegende Verfahren dreißigmal schneller, wobei der Unterschied der Kompaktifizierungseffizienz vernachlässigbar ist. Für die ISCAS-Entwicklungen kompaktifiziert das SECO im Durchschnitt in etwa der doppelten Zeit, die für eine Störungssimulation aller Störungen unter Verwendung der ursprünglichen Vektormenge erforderlich ist.The for the ISCAS circuits used initial vector quantities are calculated using the Test quantity generator HITEC received. See T.M. Niermann and I. H. Patel, "HITEC: A test generation package for sequential circuits ", Proc. European Conf. Design Automation (EDAC), pp. 214-218, March 1991. The results for compactification in the ISCAS circuits are given in Table 1. Both the SECO as well as the RSP method gave an average compactification 40 percent, but the SECO was significantly faster. For the smaller ones ISCAS circuits (s344 and s444) provides better access to the RSP Compactification. For all other ISCAS developments is the difference in compaction quality between the two methods negligible. Obviously, that's SECO's the required CPU seconds much better than the Improved RSP. In circuits like s1494 and s1488, the present method is thirty times faster, with the Difference in compaction efficiency negligible is. For ISCAS developments compact SECO on average in about twice the time required for a fault simulation of all faults Use of the original vector set is required.

Die Industrieentwicklungen besitzen mehrere nichtboolesche Elemente wie etwa Dreizustandspuffer, doppelt gerichtete Puffer und Busse. Außerdem besitzen sie gesetzte/zurückgesetzte Flipflops und mehrere Takte. Die ursprünglichen Testmengen für diese Schaltungen wurden unter Verwendung eines kommerziellen Testgenerators abgeleitet. Die Kompaktifizierungsergebnisse sind in Tabelle 2 gezeigt. Im allgemeinen beträgt die von dem SECO benötigte Zeit etwa das 2- bis 10fache der Anfangs-Störungssimulationszeit. Wie in der Tabelle gezeigt ist, läuft das SECO 20- bis 50mal schneller als das RSP, wobei es eine bessere Kompaktifizierung liefert. Zum Beispiel liefert das SECO für die Industrieentwicklung p7B in 179 Sekunden eine 27prozentige Kompaktifizierung, während der verbesserte RSP-Zugang für eine lediglich 25prozentige Kompaktifizierung 10200 Sekunden benötigt. Das SECO kann an großen Entwicklungen mit etwa 200.000 Gattern und 5000 Flipflops abgeschlossen werden, während das RSP selbst nach 2 CPU-Tagen nicht abgeschlossen wird. Die überlappenden Überprüfungs- und Verfeinerungsverfahren wurden ebenfalls realisiert. Die Ergebnisse für diese Verfahren werden in der Spalte SECO mit 2-∅* berichtet. Die Version 2-∅* ist besonders für Schaltungen mit großen Segmenten effektiv. Zum Beispiel gibt es in der Industrieentwicklung p306 ein Segment aus 2666 Vektoren, wobei die Verwendung von 2-∅* zu einer Verbesserung der CPU-Sekunden um mehr als einen Faktor 2 führt.The Industrial developments have several non-Boolean elements such as tri-state buffers, bi-directional buffers and busses. Furthermore own set / reset Flip flops and several bars. The original test quantities for this Circuits were made using a commercial test generator derived. The compactification results are shown in Table 2. In general which was needed by SECO Time about 2 to 10 times the initial perturbation simulation time. As shown in the table, the SECO runs 20 to 50 times faster than the RSP, providing better compactification. For example, SECO provides for industrial development p7B in 27 seconds a 27 percent compactification, while the improved RSP access for one only 25 percent compaction needed 10200 seconds. The SECO can be great Completed developments with about 200,000 gates and 5000 flip-flops be while the RSP is not completed even after 2 CPU days. The overlapping review and Refinement procedures have also been realized. The results for this Procedures are reported in column SECO with 2-∅ *. The version 2-∅ * is especially for circuits with large segments effectively. For example, there is p306 in industrial development Segment of 2666 vectors, where the use of 2-∅ * to improve CPU seconds by more than a factor 2 leads.

Die in 8 gezeigte Tabelle 3 stellt die Ergebnisse des SECO mit der Segmentkürzung dar. Das Segmentkürzungsverfahren der vorliegenden Erfindung verbessert die Kompaktifizierungsqualität dadurch, daß es die redundante Verwendung des Synchronisierungspräfix vermeidet. Die Tabelle 3 stellt die Ergebnisse des SECO mit der Segmentkürzung dar. Für einige Schaltungen erzeugte die Segmentkürzung eine signifikante Verbesserung der Kompaktifizierungsqualität. Ohne die Segmentkürzung war für die ISCRS-Schaltung s526 z. B. nur eine Kompaktifizierung von 32 Prozent möglich. Mit der Segmentkürzung verdoppelte sich die Kompaktifizierungsqualität jedoch auf 63 Prozent. Dies zeigt die durch die Segmentkürzung erreichbare signifikante Verbesserung. Außerdem zeigen die experimentellen Ergebnisse, daß das Segmentkürzungsverfahren bei der Verwendung beim Testen von Industrieentwicklungen eine erhebliche Verbesserung schafft.In the 8th Table 3 shows the results of SECO with the segment shortening. The segment shortening method of the present invention improves compaction quality by avoiding the redundant use of the synchronization prefix. Table 3 presents SECO segment shortening results. For some circuits, the segment shortening produced a significant improvement in compaction quality. Without the segment cut, for the ISCRS circuit s526 z. B. only a compactification of 32 percent possible. With the segment cut, however, the compaction quality doubled to 63 percent. This shows the significant improvement achievable by the segment shortening. In addition, the experimental results indicate that the segment shortening process provides a significant improvement in use in testing industrial developments.

Die experimentellen Ergebnisse demonstrieren die Überlegenheit des statischen Kompaktifizierungsalgorithmus der vorliegenden Erfindung bezüglich der Leistung und der Kompaktifizierungseffizienz. Die SECO-Ausführung der vorliegenden Erfindung ist eine signifikante Verbesserung gegenüber den bekannten statischen Kompaktifizierungsverfahren.The experimental results demonstrate the superiority of the static Compactification algorithm of the present invention with respect to Performance and compactification efficiency. The SECO version of the present invention is a significant improvement over the known static Kompaktifizierungsverfahren.

IVG. SchlußfolgerungIVG. Conclusion

Ein neues statisches Kompaktifizierungsverfahren gemäß der vorliegenden Erfindung ist den existierenden Verfahren signifikant überlegen. Das neue Verfahren beruht auf der Vorstellung der Vektorwiederherstellung, wobei die Verwendung von Segmenten und von Zwei-Phasen-Wiederherstellungsergebnissen zu einer signifikanten Verbesserung führt. Das beschriebene Zwei-Phasen-Wiederherstellungsverfahren und das beschriebene Segmentmanipulationsverfahren der vorliegenden Erfindung können außerdem in existierenden statischen Kompaktifizierungsverfahren verwendet werden, um die CPU-Zeiten und die Kompaktifizierungsqualität weiter zu verbessern.One new static compacting method according to the present invention is significantly superior to existing methods. The new procedure is based on the idea of vector recovery, the Use of segments and two-phase restoration results leads to a significant improvement. The described two-phase recovery process and the described segment manipulation method of the present invention Invention can Furthermore used in existing static compaction methods will continue to increase CPU times and compaction quality to improve.

Weitere Modifikationen und Abänderungen an der Erfindung sind für den Fachmann auf dem Gebiet aus der vorstehenden Offenbarung und Lehre offensichtlich. Obgleich nur bestimmte Ausführungen der Erfindung hier spezifisch beschrieben wurden, ist somit offensichtlich, daß an ihr zahlreiche Modifikationen vorgenommen werden können, ohne von dem Erfindungsgedanken und von dem Umfang der Erfindung abzuweichen.Further Modifications and modifications of the invention are for the person skilled in the art from the above disclosure and Teaching obvious. Although only certain versions of the Invention have been specifically described here, it is thus obvious that on her numerous modifications can be made without deviate from the spirit and scope of the invention.

Claims (8)

Verfahren zum Kompaktifizieren einer Folge von Testvektoren zum Testen eines Systems, wobei das System eine Menge von Störungen besitzt, die durch die Folge von Testvektoren erfaßt werden können, wobei eine Teilmenge der Menge der Störungen als Zielstörungen gewählt wird, wobei das Verfahren eine Wiederherstellungsphase und eine Segmentmanipulationsphase umfaßt, wobei die Wiederherstellungsphase Segmente der Vektoren identifiziert, wovon jedes eine Zielstörung erfaßt und die Segmentmanipulationsphase ferner das Umordnen, Kürzen und Mischen der Segmente umfaßt.Method for compacting a sequence of Test vectors for testing a system, where the system is a set of disorders which are detected by the sequence of test vectors can, wherein a subset of the amount of the perturbations is chosen as the target perturbation, the method being a recovery phase and a segment manipulation phase comprises in which the Recovery phase segments of the vectors identified, of which each a goal disorder recorded and the Segment manipulation phase, further rearranging, truncating and mixing the segments includes. Verfahren zum Kompaktifizieren einer Folge von Testvektoren nach Anspruch 1, wobei: die Wiederherstellungsphase eine Überprüfungsteilphase und eine Verfeinerungsteilphase umfaßt; die Überprüfungsteilphase eine erste Teilfolge von Testvektoren identifiziert, die eine Zielstörung erfaßt, und eine zweite Teilfolge identifiziert, die die Zielstörung nicht erfaßt; und die Verfeinerungsteilphase die kürzeste Teilfolge zwischen der ersten Teilfolge und der zweiten Teilfolge, die die Zielstörung erfaßt, identifiziert.Method for compacting a sequence of test vectors according to claim 1, wherein: the recovery phase is a partial review phase and a refinement sub-phase; the partial review phase identifies a first subsequence of test vectors that detects a target disturbance, and a second subsequence that does not identify the target subset detected; and the refinement subphase is the shortest subsequence between the first subsequence and the second subsequence, which detects the target disturbance identified. Verfahren zum Kompaktifizieren einer Folge von Testvektoren zum Testen eines Systems, wobei das System eine Menge von Störungen besitzt, die durch die Folge von Testvektoren erfaßt werden können, um eine kompakte Vektormenge zu bilden, wobei die kompakte Vektormenge dadurch wiederhergestellt wird, daß Segmente von Vektoren gemischt werden.Method for compacting a sequence of test vectors for testing a system, the system having a lot of disturbances, which can be detected by the sequence of test vectors to a compact vector set thereby restoring the compact vector set will that segments to be mixed by vectors. Verfahren nach Anspruch 3, wobei die Segmente gekürzt werden, um redundante Synchronisierungsfolgen zu eliminieren.Method according to claim 3, wherein the segments are shortened, to eliminate redundant synchronization sequences. Verfahren zum Kompaktifizieren einer Folge von Testvektoren, wobei die Segmente beim Auffinden zu einer kompakten Menge gemischt werden, wobei das Verfahren folgende Schritte umfaßt: (a) Identifizieren der Testvektoren, einer Störungsliste mit den Störungen, die unter Verwendung der Testvektoren erfaßt werden können, und mit den Erfassungszeiten für die Störungen; (b) Auswählen der Zielstörungen, falls die Zielstörungen existieren; (c) Ausführen einer Zwei-Phasen-Vektorwiederherstellung und Vergrößern einer Teilsegmentmenge, falls die Wiederherstellung die in Schritt (b) ausgewählten Zielstörungen erfaßt; (d) Kürzen des in Schritt (c) erhaltenen Segments, falls die Teilsegmentmenge ein Segment ist; (e) Mischen des in Schritt (c) erhaltenen Segments zu einer kompakten Menge, falls die Teilsegmentmenge ein Segment ist; (g) Wiederholen der Schritte (b)-(e), während in Schritt (b) Zielstörungen existieren.Method for compacting a sequence of test vectors, the segments mixed to find a compact amount which method comprises the steps of: (A) Identifying the test vectors, a fault list with the faults, which can be detected using the test vectors, and with the acquisition times for the disorders; (B) Choose the target disorders, if the target interference exist; (c) Execute a two-phase vector recovery and enlarging one Subset quantity if the recovery is in step (b) chosen target disorders detected; (D) shorten of the segment obtained in step (c), if the sub-segment set a segment is; (e) mixing the product obtained in step (c) Segment into a compact set if the subset amount is Segment is; (g) repeating steps (b) - (e) while in step (b) target disorders exist. Verfahren nach Anspruch 5, wobei die Mischphase nach Schritt (e) folgendes umfaßt: (e) (1) Simulieren eines neuen Segments aus dem nach dem Simulieren der Vektoren in der kompakten Menge erhaltenen bekannten Anfangszustand; (e) (2) Hinzufügen des neuen Segments zum Ende der kompakten Menge.The method of claim 5, wherein the mixed phase after Step (e) comprises: (E) (1) Simulate a new segment from that after simulating the vectors obtained in the compact amount have known initial state; (E) (2) Add of the new segment to the end of the compact amount. Verfahren nach Anspruch 5, wobei der Schritt (c) folgendes umfaßt: (c) (1) Ausführen einer sich überschneidenden Überprüfung in der Weise, daß zwei Störungen als eine Zielstörung gemischt werden, falls die zwei Störungen wiederhergestellte Folgen besitzen, die sich überschneiden; und (c) (2) Ausführen einer sich überschneidenden Verfeinerung, falls ein Segment existiert, das Zielstörungen erfaßt.The method of claim 5, wherein step (c) comprising: (C) (1) Execute an overlapping review in the way that two disorders as a goal disorder be mixed if the two disturbances are recovered own, which overlap; and (c) (2) Execute an overlapping one Refinement if a segment exists that detects target noise. Verfahren zum Kürzen eines Segments zum Beschleunigen der Kompaktifizierung, wobei das Verfahren folgen-des umfaßt: (a) Zuweisen von j = 1; (b) Erzeugen einer Folgeliste mit einem j-te Element eines Eingangssegments als ein erstes Element und mit dem letzten Element des Eingangssegments als das letzte Element; (c) Laufenlassen der Simulation, um die Störungen zu simulieren, die durch das Eingangssegment von einem bekannten, nach der Simulation von Vektoren in einer zuvor existierenden kompakten Menge erhaltenen Anfangszu-stand aus erfaßt werden; (d) Zuweisen von j = j + 1; (e) Wiederholen der Schritte (b)-(d); bis keine Teilmenge aus Eingangsstörungen mehr erfaßt wird; (f) Ausgeben des Segments beginnend mit dem (j – 1)-ten Element des Eingangssegments und endend mit dem letzten Element des Eingangssegments.Method of shortening a segment for accelerating the compactification, wherein the method follow-the includes: (A) Assign j = 1; (b) generating a follow list with a j-th element of an input segment as a first element and with the last element of the input segment as the last element; (C) Running the simulation to simulate the disturbances caused by the input segment from a known, after the simulation of Vectors obtained in a pre-existing compact amount Anfangszu-stand from detected become; (d) assigning j = j + 1; (e) repeating the Steps (b) - (d); to no subset of input noise more detected becomes; (f) output the segment starting with (j-1) -th Element of the input segment and ending with the last element of the entrance segment.
DE1999108521 1998-05-27 1999-02-26 A method of compacting a sequence of test vectors to test a system Expired - Fee Related DE19908521B4 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US8675998P 1998-05-27 1998-05-27
US60/086,759 1998-05-27
US09/135,561 1998-08-18
US09/135,561 US5987636A (en) 1998-05-28 1998-08-18 Static test sequence compaction using two-phase restoration and segment manipulation

Publications (2)

Publication Number Publication Date
DE19908521A1 DE19908521A1 (en) 1999-12-02
DE19908521B4 true DE19908521B4 (en) 2007-01-11

Family

ID=26775123

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1999108521 Expired - Fee Related DE19908521B4 (en) 1998-05-27 1999-02-26 A method of compacting a sequence of test vectors to test a system

Country Status (2)

Country Link
JP (1) JPH11345142A (en)
DE (1) DE19908521B4 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5444717A (en) * 1992-12-18 1995-08-22 Digital Equipment Corporation Method for providing minimal size test vector sets

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5444717A (en) * 1992-12-18 1995-08-22 Digital Equipment Corporation Method for providing minimal size test vector sets

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
HIGAMI, Y. et al: "Static Test Compaction for IDDQ testing of Sequential Circuits", S. 9-13, IEEE, Mar. 1998 *
HSIAO, M. et al: "Partitioning and Reordering Techniques for Static Test Sequence Compaction of Sequential Circuits", Technical Report 1997, 97-CO74-4-5506-5, Computers & Communications Research Lab, NEC USA Inc. *
POMERANZ, I. et al: "On static compaction of test sequences for synchronous sequential circuits", Proc. Design Automation Conf., S. 215-220, Juni 1996 *
POMERANZ, I. et al: "Static Compaction for two- Pattern Test Sets", The Fourth Asian Test Sympo- sium, IEEE, 1995, S. 222-228 *
POMERANZ, I. et al: "Vector Restoration Based Static Compaction of Test Sequences for Synchro- nous Sequential Circuits", Proceedings Int. Conf. on Computer Design, S. 360-365, 1997. University of Iowa, Aug. 1997 *

Also Published As

Publication number Publication date
JPH11345142A (en) 1999-12-14
DE19908521A1 (en) 1999-12-02

Similar Documents

Publication Publication Date Title
DE19937232B4 (en) Development and evaluation system for semiconductor integrated circuits
DE10045568B4 (en) Event based semiconductor test system
EP0855662B1 (en) Electrical analysis of integrated circuits
DE2346617C3 (en) Method for checking the unilaterally limited propagation delay of a functional unit
DE3832113C2 (en)
DE602004009309T2 (en) AUTOMATIC TEST PATTERN GENERATION
DE19950821A1 (en) Evaluation system for large-scale integrated circuits uses a CAD logic process with the test circuit layout data to generate data for comparison with data arising from input of test data from a test data file
DE19855488A1 (en) Test pattern generation method for automatic test equipment for integrated circuit testing device
DE10127337A1 (en) Method and device for generating test patterns used in the testing of semiconductor ICs
DE10120080B4 (en) An event based test system having means for generating test completion multiple signals
DE3702408A1 (en) METHOD AND TEST DEVICE FOR TESTING AN INTEGRATED CIRCUIT ARRANGEMENT
DE10045671A1 (en) Test device and test method for a semiconductor integrated circuit
DE69533567T2 (en) Apparatus and method for detecting false timing paths in digital circuits
WO1992018944A1 (en) Procedure for verifying data-processing systems
DE10210264B4 (en) A test vector compression method
EP0060321B1 (en) Method for a quick internal logic control on integrated circuits
DE2349607A1 (en) METHOD FOR AC GUETESTING OF INTEGRATED CIRCUITS
DE10000451A1 (en) Clock signal analyzer has three memories, pre-processor, simulation device, post-processor and display showing a two-dimensional simulation map
DE112004000601T5 (en) Event-based test procedure to eliminate clock-related errors in integrated circuits
DE102005046588A1 (en) Digital electrical circuit testing device, has comparator comprising inputs connected to connecting terminals for test outputs of circuit for comparing test response with macro time of preset length and outputting data word of preset width
DE19748016A1 (en) Cost-effective test method for register transfer level circuits
DE19930273A1 (en) High speed system to evaluate patterns under test; has large scale integration test unit simulator to produce test pattern and compares desired pattern suitable for testing specimen with output signal of specimen triggered by test pattern
DE19908521B4 (en) A method of compacting a sequence of test vectors to test a system
DE10135966A1 (en) Method for on-chip testing of memory cells of an integrated memory circuit
DE3422287C2 (en)

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8125 Change of the main classification

Ipc: G06F 11/263

8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20140902