DE69814184T2 - Verfahren zur Analyse von Prüfpunkten logischer Schaltungen und Einrichtungen zur Analyse von Prüfpunkten logischer Schaltungen - Google Patents

Verfahren zur Analyse von Prüfpunkten logischer Schaltungen und Einrichtungen zur Analyse von Prüfpunkten logischer Schaltungen Download PDF

Info

Publication number
DE69814184T2
DE69814184T2 DE69814184T DE69814184T DE69814184T2 DE 69814184 T2 DE69814184 T2 DE 69814184T2 DE 69814184 T DE69814184 T DE 69814184T DE 69814184 T DE69814184 T DE 69814184T DE 69814184 T2 DE69814184 T2 DE 69814184T2
Authority
DE
Germany
Prior art keywords
test point
test
circuit
information
point
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
DE69814184T
Other languages
English (en)
Other versions
DE69814184D1 (de
Inventor
Michinobu Hitachi-shi Nakao
Kazumi Hitachinaka-shi Hatayama
Jun Hadano-shi Hirano
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 JP00036397A external-priority patent/JP3910244B2/ja
Priority claimed from JP31173897A external-priority patent/JP3941191B2/ja
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Publication of DE69814184D1 publication Critical patent/DE69814184D1/de
Application granted granted Critical
Publication of DE69814184T2 publication Critical patent/DE69814184T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/25Testing of logic operation, e.g. by logic analysers
    • 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/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318583Design for test

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Description

  • Die vorliegende Erfindung betrifft ein Analyseverfahren und eine Analysevorrichtung zum optimalen Anordnen von Testpunkten für ein leichtes Testen einer aus einer Anzahl von Elementen zusammengesetzten logischen Schaltung und auch eine hinsichtlich der Anordnung von Testpunkten verbesserte integrierte Halbleiterschaltung.
  • Eine Technik zum leichten Testen einer integrierten Halbleiterschaltung umfaßt das Einfügen von Testpunkten in die Schaltung. Die Testpunkte werden eingeteilt in "1-Kontrollpunkte" zum leichten Kontrollieren einer Signalleitung auf eine 1 (im folgenden als "1-Kontrollierbarkeit" bezeichnet), "0-Kontrollpunkte" zum leichten Kontrollieren einer Signalleitung auf eine 0 (im folgenden als "0-Kontrollierbarkeit" bezeichnet), und "Beobachtungspunkte" zum leichten Beobachten des Signalwertes auf einer Signalleitung (im folgenden als "Beobachtbarkeit" bezeichnet).
  • Die Schaltungen für die Testpunkte und ein Verfahren zum Analysieren der Positionen zum Einfügen der Testpunkte sind im Detail in einem Artikel mit dem Titel "Test Points Insertion for Scan-Based BIST" von B. Seiss et al. in Proceeding of 2nd European Test Conference, Seiten 253 bis 262 (1990) und in der japanischen Patent-Offenlegungsschrift Nr. 6-331709 mit dem Titel "Circuit improved in testability and method of improving testability of circuit" beschrieben.
  • Das in der ersten Druckschrift beschriebene Verfahren zum Analysieren von Testpunkten legt unter Verwendung einer probabilistischen Testbarkeitsskala, die COP (Controllability Observability Procedure) genannt wird, eine Zielfunktion (im folgenden mit "Testkosten" bezeichnet) fest und bestimmt die Testpunkte einzeln so, daß die Zielfunktion minimal wird. Die Prozedur zur Bestimmung eines Testpunktes umfaßt dabei die Schritte der Auswahl von Kandidaten für einen Testpunkt (im folgenden "Testpunktkandidaten" genannt) auf der Basis eines Näherungswertes für die Testkosten beim Einfügen des Testpunktes, Berechnen der tatsächlichen Testkosten beim Einfügen jedes der Testpunktkandidaten, und dann Festlegen des Testpunktkandidaten mit den minimalen Testkosten als Testpunkt. Dieser Prozeß wird für die Anzahl der Testpunkte wiederholt. Es wurde bestätigt, daß dieses Analyseverfahren gut ist für die Erleichterung eines Zufallszahl-Mustertestes.
  • In einem Artikel mit dem Titel "Timing-Driven Test Point Insertion for Full-Scan Partial-Scan BIST" von K.-T. Cheng et al. in Proceeding of International Test Conference, Seiten 506 bis 514 (1995) ist ein Verfahren zum Analysieren von Testpunkten beschrieben, das besser ist als das obige Verfahren von B. Seiss et al. und mit dem eine Signalverzögerung aufgrund der Testpunkteinfügung unterdrückt wird. In der Prozedur zum Erhalten eines Testpunkts bei dem obigen Verfahren von B. Seiss et al. berechnet dieses Verfahren einen Bereich für die Signalverzögerung in jeder Signalleitung einer Schaltung und fordert die Bedingung für den Testpunktkandidat, daß der Bereich der Signalverzögerung größer ist als ein vorgegebener Wert. Die anderen Prozesse sind die gleichen wie im Verfahren von B. Seiss et al. Der Bereich für die Signalverzögerung auf dem Weg zwischen Anschlüssen oder Elementen ist ein Wert für die Subtraktion der tatsächlichen Signalverzögerung von der erlaubten, konstruktiv bedingten Signalverzögerung. Der Bereich der Signalverzögerung in jeder Signalleitung ist der minimale Bereich für die Signalverzögerung in dem Weg mit der Signalleitung.
  • Bei den erwähnten herkömmlichen Verfahren zum Analysieren von Testpunkten weist das Verfahren von B. Seiss et al. das Problem auf, daß die Leistungsfähigkeit der integrierten Halbleiterschaltung durch die erhöhte Signalverzögerung wegen der Testpunkteinfügung herbgesetzt wird. Andererseits ist es das Problem des Verfahrens von K.-T. Cheng, daß die Verarbeitung aufgrund des Flaschenhalses dieses Prozesses für logische Schaltungen großen Umfangs nicht innerhalb praktikabler Zeiten ausgeführt werden kann, da es erforderlich ist, jedesmal beim Erhalten eines Testpunkts die Bereiche für die Signalverzögerung auf den einzelnen Signalleitungen zu berechnen.
  • Beim tatsächlichen Ausbilden eines Testpunkts in einer integrierten Halbleiterschaltung ist es üblich, für einen 1-Kontrollpunkt ein OR-Gate mit zwei Eingängen einzufügen und für einen 0-Kontrollpunkt ein AND-Gate mit zwei Eingängen vorzusehen. Die meisten integrierten Halbleiterschaltungen sind nach dem Einfügen eines Testpunkts jedoch Schaltungen mit Problemen, die unter dem Gesichtspunkt der Belastungen durch die Signalverzögerung und die Schaltkreisfläche optimiert werden sollten.
  • Die oben genannten Verfahren zum Analysieren von Testpunkten weisen im praktischen Gebrauch ein Problem auf, da die Verarbeitungszeit sehr lang ist, wenn eine logische Schaltung großen Umfangs analysiert wird. Die meiste Verarbeitungszeit geht für die Berechnung der Testkosten für die Testpunktkandidaten drauf, in der die Verschachtelung am tiefsten ist. Unter der Annahme, daß die Anzahl der Testpunktkandidaten und die Anzahl der Testpunkte der Anzahl von Gattern proportional ist, ist im ungünstigsten Fall die Berechnungszeit für die Testkosten proportional der Anzahl von Gattern, und die Bearbeitungszeit für die gesamte Testpunktanalyse ist proportional der dritten Potenz der Anzahl von Gattern. Andererseits sollte vorzugsweise unter dem Gesichtspunkt des Trends zu größeren integrierten Halbleiterschaltungen und des Trends zur Erhöhung der Arbeitsgeschwindigkeit der Computer die praktische Bearbeitungszeit proportional der zweiten Potenz oder weniger der Anzahl Gatter sein.
  • Ein weiteres Problem beim Einfügen der Testpunkte in eine integrierte Halbleiterschaltung ist die Vergrößerung der Schaltkreisfläche. Der Hauptgrund dafür sind die Eingangselemente, die nur für die Testpunkte verwendet werden, und die Flip-Flops mit Scanfunktion, die als Ausgangselemente verwendet werden.
  • Die vorliegende Erfindung wird durch die Patentansprüche definiert.
  • Vorzugsweise ist es die erste Aufgabe der vorliegenden Erfindung, ein Verfahren und eine Vorrichtung zum schnellen Analysieren von Testpunkten in einer integrierten Halbleiterschaltung zu schaffen, wobei die Nachteile in der Signalverzögerung und hin sichtlich der Schaltkreisfläche aufgrund des Einfügens der Testpunkte herbgesetzt sind und wobei die Verarbeitung mit hoher Geschwindigkeit erfolgt und leicht umsetzbar ist.
  • Die erste Aufgabe der vorliegenden Erfindung kann dadurch gelöst werden, daß ein Analyseverfahren für Testpunkte in integrierten Halbleiterschaltungen geschaffen wird, mit dem die Testpunkt-Einfügepositionen und die Arien der Modifikation der Schaltung in der integrierten Halbleiterschaltung durch Ausbilden einer Verbindung einer Anzahl von Zellen mit Signalleitungen mit verbesserter Testbarkeit bestimmt werden, wobei das Verfahren die Schritte des Erstellens eines Testpunkt-Einfügearchivs, das Sätze für Zelltypen, die als Testpunkte eingefügt werden können, eine Pinnummer, den Testpunkttyp und die Art der Modifikation der Schaltung für die Anzahl von Zellen und Signalleitungen enthält, um den Testpunkttyp angeben zu können, der eingefügt werden kann, und die Art der Modifikation der Schaltung, wenn der Testpunkt in eine Signalleitung eingefügt wird, die durch den Zelltyp und die Pinnummer der integrierten Halbleiterschaltung angegeben wird, und des Bestimmens der Testpunkt-Einfügepositionen und die Art der Modifikation der Schaltung durch die Auswahl von Signalleitungen und Testpunkttypen nur aus den Signalleitungen und Testpunkttypen, die den Zelltypnamen und den Pinnummern entsprechen, die durch das Testpunkt-Einfügearchiv angegeben werden, umfaßt.
  • Die erste Aufgabe der vorliegenden Erfindung kann auch dadurch gelöst werden, daß ein Analyseverfahren für Testpunkte in integrierten Halbleiterschaltungen geschaffen wird, mit dem die Testpunkt-Einfügepositionen und die Arien der Modifikation der Schaltung in der integrierten Halbleiterschaltung bestimmt werden, wobei das Verfahren die Schritte des Erstellens von Testpunkt-Einfügeverbotsinformationen, die Sätze für die Signalleitungen und Testpunkttypen angeben, die das Einfügen eines Testpunkts in die integrierte Halbleiterschaltung verhindern, und des Bestimmens von Testpunkt-Einfügepositionen und Arien der Modifikation der Schaltung unter Ausschluß der Sätze von Signalleitungen und Testpunkttypen aus den Testpunktkandidaten, die durch die Testpunkt-Einfügeverbotsinformationen bezeichnet werden, umfaßt.
  • Die erste Aufgabe der vorliegenden Erfindung kann außerdem effektiv dadurch gelöst werden, daß ein Analyseverfahren für Testpunkte in integrierten Halbleiterschaltungen geschaffen wird, mit dem die Testpunkt-Einfügepositionen und die Arien der Modifikation der Schaltung bestimmt werden, wobei das Verfahren die Schritte des Erstellens eines Testpunkt-Einfügearchivs und von Testpunkt-Einfügeverbotsinformationen und des Bestimmens von Testpunkt-Einfügepositionen und Arten der Modifikation der Schaltung durch die Auswahl von Signalleitungen und Testpunkttypen nur aus den Signalleitungen und Testpunkttypen der Schaltung, die den Zelltypnamen und Pinnummern entsprechen, die durch das Testpunkt-Einfügearchiv bezeichnet werden, und unter Ausschluß der Signalleitungen und Testpunkttypen in der Schaltung, die durch die Testpunkt-Einfügeverbotsinformationen bezeichnet werden, umfaßt.
  • Ein Analysegerät für integrierte Halbleiterschaltkreistestpunkte, bei dem das erfindungsgemäße Verfahren angewendet wird, umfaßt eine Testpunkt-Einfügestellen-Begren zungseinheit zum Festlegen des Unterschieds zwischen einer Testpunkteinfügefähigkeit bzw. Nichtfähigkeit in jede der Signalleitungen für jede Testpunktart aus Testpunkt-Einfügeverbotsinformationen zur Angabe von Signalleitungen und Testpunkttypen, die das Einfügen eines Testpunkts verbieten, Schaltkreisinformationen des integrierten Halbleiterschaltkreises bzw. des Testpunkteinfügearchivs, und zum Erhalten einer Testpunkt-Einfügestelleninformation, die eine Information über einen dem Testpunkt entsprechenden Schaltkreis-Modifizierweg enthält, wenn feststeht, daß der Testpunkt eingefügt werden kann, um den einfügbaren Testpunkttyp und die entsprechende Art der Schaltungsmodifikation beim Einfügen des Testpunkts in die Signalleitung anzugeben, die durch den Zelltypnamen und die Pinnummer der integrierten Halbleiterschaltung bezeichnet wird, eine Testpunkt-Index-Berechnungseinheit zum Berechnen eines Indexes, der einen Testfähigkeitsgrad für eine mit einem Testpunkt versehbare Signalleitung und den Testpunkttyp ausdrückt, wenn der Testpunkt eingefügt wird; und eine Testpunkt-Festlegeeinheit, die eine Signalleitung und den Testpunkttyp mit einem großen Index, der, entsprechend der Signalleitung, einen Testfähigkeitsgrad und eine Testpunktart ausdrückt, als einen Testpunkt aus der testpunkteinfügefähigen Signalleitung festlegt.
  • Vorzugsweise ist es die zweite Aufgabe der vorliegenden Erfindung, ein Verfahren und eine Vorrichtung zum schnellen Analysieren von Einfügepositionen für Testpunkte in einer logischen Schaltung zu schaffen.
  • Vorzugsweise ist es die dritte Aufgabe der vorliegenden Erfindung, eine integrierte Halbleiterschaltung zu schaffen, in der die Belastung durch die einzufügenden Testpunktschaltkreise verringert sind.
  • Vorzugsweise ist es die vierte Aufgabe der vorliegenden Erfindung, ein Analyseverfahren für Testpunktkorrelationsinformationen zu schaffen, das erforderlich ist, die Flächenbelastung aufgrund des Einfügens von Testpunkten zu verringern.
  • Die zweite Aufgabe der vorliegenden Erfindung kann gelöst werden durch ein Analyseverfahren für logische Schaltkreis-Testpunkte, das Testpunkteinfügestellen und Schaltkreisarten dadurch festlegt, daß die Testkosten berechnet werden, wenn die Testpunkte in die entsprechenden Signalleitungen eines durch die Verbindung mehrerer Elemente gebildeten logischen Schaltkreises eingefügt wurden, mit den Schritten des Auswählens einer vorbestimmten Anzahl von Testpunktkandidaten im absteigenden Grad ihrer Testbarkeit, die durch die Berechnung der Testkosten oder eines Näherungswerts für die Testkosten für jede der Signalleitungen in der logischen Schaltung erhalten werden, des Erhaltens eines Wirkbereichs, in dem die Testbarkeit variiert, wenn angenommen wird, daß jeder der Testpunktkandidaten eingefügt wird; und des Bestimmens einer Kandidatengruppe von Testpunktkandidaten, deren Wirkbereiche sich nicht oder sich mit vernachlässigbarer Auswirkung überlappen, als neue Testpunktgruppe, deren Testpunkte simultan testbar sind.
  • Die zweite Aufgabe kann außerdem durch das Erhalten eines Wirkbereichs gelöst werden, in dem sich die Testbarkeit ändert, wenn angenommen wird, daß jeder der Testpunktkandidaten eingefügt wird, wobei die Testpunktkandidaten durch die Auswahl einer vorgegebenen Anzahl von Testpunkten im abnehmenden Grad ihrer Testbarkeit auf der Basis der Testkosten für jede der Signalleitungen bestimmt werden, und daß eine Kandidatengruppe aus den Testpunktkandidaten, die nicht in den Wirkbereichen anderer Gruppen von Testpunktkandidaten enthalten ist, als neue Testpunktgruppe mit gleichzeitig testbaren Testpunkten festgelegt wird, wozu der Wirkbereich jedes Testpunktkandidaten in der abnehmenden Reihenfolge des Grades der Testbarkeit überprüft wird.
  • Die zweite Aufgabe kann gelöst werden durch Erhalten der Testkosten (zum Beispiel COP) oder eines Näherungswertes für die Testkosten (zum Beispiel CRF) für jede der Signalleitungen in der logischen Schaltung unter der Bedingung des Nichtvorhandenseins oder des Vorhandenseins eines in die Signalleitung eingefügten Testpunkts, des Auswählens einer vorbestimmten Anzahl von Testpunktkandidaten in absteigender Ordnung der CRF, des Erhaltens der Testkosten, wenn angenommen wird, daß jeder der Testpunktkandidaten eingefügt wird, des Festlegens der Absenz oder Präsenz einer Wirkung jedes gesetzten Testpunkts auf die Testkosten der anderen Testpunktkandidaten, wenn jeder der Testpunktkandidaten als Testpunkt in der Reihenfolge der ansteigenden Ordnung der Testkosten gesetzt wird, des Bestimmens eines Testpunktkandidaten als neue Testpunktgruppe, dessen Wirkung auf die Testkosten für die anderen Testpunktkandidaten nicht vorhanden oder vernachlässigbar ist, des Berechnens der Wirkungen des neuen Testpunkts auf die anderen Testpunktkandidaten; und des Wiederholens der obigen Schritte.
  • Die zweite Aufgabe kann bei den obigen Verfahren dadurch gelöst werden, daß, wenn eine vorgegebene Komplettierbedingung bei der Ausführung des Bestimmungsprozesses für die neue Testpunktgruppe für alle der vorgegebenen Anzahl der Testpunktkandidaten auf der Basis der Präsenz oder Absenz von Auswirkungen einer Testpunktwirkung nicht erfüllt ist, die CRFs für den logischen Schaltkreis mit bereits bestimmten Testpunkten neu berechnet werden, weiterhin die nötige Anzahl von Testpunktkandidaten wiederholt in absteigender Ordnung der CRFs bestimmt wird und der Bestimmungsprozeß für eine neue Testpunktgruppe wiederholt wird, wobei die Wirkungen jedes der neu bestimmten Testpunktkandidaten berücksichtigt wird.
  • Die zweite Aufgabe kann dadurch gelöst werden, daß diejenigen Kandidaten aus den Testpunktkandidaten bestimmt werden, die keine Wirkungen der festgesetzten Testpunkte erfahren und deren Testkosten eine vorgegebene Schwelle nicht übersteigen.
  • Die zweite Aufgabe kann gelöst werden durch ein Analysegerät für logische Schaltkreis-Testpunkte nach den genannten Verfahren, wobei das Gerät eine Testpunkt-Index-Berechnungseinheit zum Erhalten der Testkosten oder eines Näherungswertes für die Testkosten für jede der Signalleitungen in dem logischen Schaltkreis unter der Bedingung des Nichtausführens bzw. Ausführens der Testpunkteinfügung für die Signalleitung, und zum Auswählen, basierend auf den erhaltenen Testkosten oder dem erhaltenen Näherungswert für die Testkosten für jede Signalleitung in dem logischen Schaltkreis, einer vorgegebenen Anzahl von Testpunktkandidaten in absteigender Ordnung des festgestellten Testfähigkeitsgrades, eine Testpunkt-Wirkungs-Berechnungseinheit zum Berechnen, ob die Testfähigkeit jedes anderen Testpunktkandidaten durch den Testpunkt, der gerade vorher gesetzt wurde, beeinträchtigt wird, und eine Testpunkt-Festlegeeinheit zum Wiederholen eines Prozesses zum Bestimmen eines Testpunktkandidaten mit einem höchsten Testfähigkeitsgrad als einen Testpunkt, und einen Prozeß zum Bestimmen eines Testpunktkandidaten als nächsten Testpunkt umfaßt, der nicht die zuvor genannte Wirkung zwischen dem Testpunktkandidaten und dem gesetzten Testpunkt aufweist.
  • Die zweite Aufgabe kann gelöst werden durch das Vorsehen eines Analysegeräts für logische Schaltkreis-Testpunkte gemäß der genannten Vorrichtung, wobei die Testpunktfestlegeeinheit eine Testpunkt-Korrelationsinformation ausgibt, die Testpunkte als in derselben Gruppe identifiziert, deren Wirkbereiche sich nicht überschneiden, wobei ein Testfähigkeitsgrad für jede der Signallinien in jedem Wirkbereich dadurch variiert, daß ein Testpunkt in dem Wirkbereich bestimmt wird.
  • Vorzugsweise wird die dritte Aufgabe der vorliegenden Erfindung gelöst durch das Vorsehen einer integrierten Halbleiterschaltung mit eingefügten Kontrollpunkten in einer Anzahl von Signalleitungen mit relativ kleinen Testkosten in die durch das Verbinden einer Anzahl von Elementen gebildete logische Schaltung, wobei eine Testdaten-Eingangssignalleitung für jeden der Kontrollpunkte, für die Wirkbereiche, der Grad der Testbarkeit für jede der Signalleitungen in jedem der Wirkbereiche durch das Festlegen eines Kontrollpunkts im Wirkbereich ändert, sich nicht überschneiden, mit einem vorgegebenen Element verbunden wird, und das Element mit einem externen Eingangselement, einem Flip-Flop mit Scanfunktion und einer Testdaten-Eingangssignalleitung verbunden wird, so daß ein Signalwert eingestellt werden kann.
  • Vorzugsweise wird die vierte Aufgabe der vorliegenden Erfindung gelöst durch das Vorsehen eines Verfahrens zum Analysieren von Korrelationsinformationen für Testpunkte in einer logischen Schaltung mit einer Anzahl von vorgegebenen Testpunkten, wobei das Verfahren einen ersten Schritt des vorläufigen Bestimmens aller Testpunkte, für die es noch keine Testpunktgruppe gibt, als Testpunktkandidaten auf der Basis von Schaltungsinformationen einschließlich der Einfügepositionen der Testpunkte, der Arten von Schaltungen und der Testkosten, und des Bestimmens eines Testpunktkandidaten mit minimalen Testkosten als Testpunkt, einen zweiten Schritt des Berechnens eines Wirkbereiches, in dem sich die Testkosten der einzelnen Signalleitungen durch das Einfügen des festgelegten Testpunkts ändern, und des Wiederholens eines Prozesses zum Überprüfen jedes der Testpunktkandidaten in ansteigender Ordnung der Testkosten, ob er im Wirkbereich enthalten ist oder nicht, eines Prozesses zum Bestimmen eines Testpunktkandidaten, der nicht im Wirkbereich enthalten ist, als neuem Testpunkt, und eines Prozesses zum Hinzufügen von Korrelationsinformationen der gleiche Gruppe zu den als neue Testpunkte bestimmten Testpunktkandidaten, und einen dritten Schritt des Zurückkehrens der Bearbeitung zum ersten Schritt umfaßt, wenn nicht eine vorgegebene Anzahl von Testpunkten als neue Testpunkte festgelegt werden kann, wenn der zweite Schritt an allen Testpunktkandidaten ausgeführt wird.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist eine Blockdarstellung des Aufbaus einer Ausführungsform einer Vorrichtung zur Testpunktanalyse für eine integrierte Halbleiterschaltung gemäß der vorliegenden Erfindung.
  • 2 ist ein Flußdiagramm für eine Ausführungsform einer Prozeßprozedur der Vorrichtung zur Testpunktanalyse für eine integrierte Halbleiterschaltung.
  • 3A und 3B zeigen jeweils ein Beispiel für eine integrierte Halbleiterschaltung bzw. für eine integrierte Halbleiterschaltung mit eingefügten Testpunkten.
  • 4A und 4B sind Tabellen für Beispiele von Testpunkt-Einfügearchiven.
  • 5 zeigt Schaltungen zur Erläuterung der einzelnen Schaltungs-Modifikationsarten zum Einfügen eines Testpunkts in verschiedene Zellentypen.
  • 6A und 6B sind Tabellen für Beispiele von Testpunkt-Einfügeverbotsinformationen.
  • 7A und 7B sind Tabellen für Beispiele von Testpunkt-Einfügepositionsinformationen.
  • 8 ist ein Flußdiagramm für eine Bearbeitungsprozedur bei dem Testpunkt-Einfügepositionsbeschränkungsprozeß der 2.
  • 9A, 9B und 9C sind Tabellen für den transienten Inhalt bei der Bearbeitung von Testpunkt-Indexinformationen.
  • 10 ist eine Tabelle für ein Beispiel einer Testpunktinformation.
  • 11 ist eine Schaltungsdarstellung für eine Ausführungsform einer integrierten Halbleiterschaltung, in die gemäß der vorliegenden Erfindung Testpunkte eingefügt werden.
  • 12 ist eine Tabelle für die Bereiche der Signalverzögerung auf entsprechenden Wegen.
  • 13A und 13B zeigen eine Blockdarstellung zur Erläuterung der Verbotswege, die das Einfügen von Testpunkten verbieten, und eine Tabelle mit Informationen über die Verbotswege.
  • 14 ist eine Blockdarstellung des Aufbaus einer Ausführungsform einer Vorrichtung zur Testpunktanalyse für eine logische Schaltung gemäß der vorliegenden Erfindung.
  • 15 ist ein Flußdiagramm für eine Ausführungsform einer Prozeßprozedur der Vorrichtung zur Testpunktanalyse für eine logische Schaltung.
  • 16A und 16B zeigen jeweils ein Beispiel für eine logische Schaltung bzw. für eine logische Schaltung mit einem eingefügten Testpunkt.
  • 17A und 17B zeigen Konzeptansichten zur Erläuterung der Bereiche, die durch entsprechende Testpunkte beeinflußt werden.
  • 18A18D zeigen Konzeptansichten zur Erläuterung der gegenseitigen Beziehung von zwei Testpunkten.
  • 19 ist ein Flußdiagramm für die Einzelheiten des Testpunkt-Index-Berechnungsprozesses der 15.
  • 20 ist ein Flußdiagramm für die Einzelheiten des anfänglichen Testpunktbestimmungsprozesses der 15.
  • 21 ist ein Flußdiagramm für die Einzelheiten des Testpunktwirkungsberechnungsprozesses der 15.
  • 22 ist ein Flußdiagramm für die Einzelheiten des Korrelation im Testpunktbestimmungsprozesses der 15.
  • 23A23C sind Tabellen für den Berechnungsinhalt von COP, der differentiellen Koeffizienten und von CRF.
  • 24A und 24B sind Tabellen für die Testpunkt-Indexinformation und die Zusammensetzung der Testpunktwirkungsinformation für Testpunktkandidaten und des Übergangsinhalts im Bearbeitungsprozeß.
  • 25A und 25B sind Tabellen für die Testpunktwirkungsinformation und des Übergangsinhalts bei der Verarbeitung.
  • 26A und 26B sind Tabellen für die Zusammensetzung und den Inhalt der Testpunktinformation und der Testpunktkorrelationsinformation.
  • 27 ist eine Konzeptansicht zur Erläuterung der Verwendung von geteilten Schaltkreisinformationen für eine andere Ausführungsform eines Testpunktanalyseprozesses nach der vorliegenden Erfindung.
  • 28 ist ein Flußdiagramm zur Berechnung der Testpunktkorrelationsinformation aus der Testpunktinformation für eine andere Ausführungsform der Testpunktkorrelationsinformationsanalyse nach der vorliegenden Erfindung.
  • 29 ist eine Darstellung des Aufbaus einer weiteren Ausführungsform einer integrierten Halbleiterschaltung gemäß der vorliegenden Erfindung.
  • GENAUE BESCHREIBUNG DER AUSFÜHRUNGSFORMEN
  • Anhand der beiliegenden Zeichnungen werden nun Ausführungsformen der vorliegenden Erfindung genauer beschrieben.
  • Die 1 zeigt den Aufbau einer Ausführungsform einer Vorrichtung zur Testpunktanalyse für eine integrierte Halbleiterschaltung. Die Analysevorrichtung umfaßt eine Dateneingabeeinheit 101 zur Eingabe von Informationen über Zellen und Signalleitungen der integrierten Halbleiterschaltung; eine Berechnungseinheit 102 für Berechnungen wie die Bestimmung von Einfügepositionen von Testpunkten; eine Speichereinheit 103 zum Speichern von Schaltungsinformationen 122, einem Testpunkt-Einfügearchiv 123, von Testpunkt-Einfügeverbotsinformationen 124, von Testpunkt-Einfügepositionsinformationen 125, von Testpunkt-Indexinformationen 126 und von Testpunktkorrelationsinforma tionen 127; und eine Datenausgabeeinheit 104 zur Ausgabe von berechneten Ergebnissen wie der Testpunktinformation 127.
  • Die Schaltungsinformationen 122 umfassen Informationen über die Signalleitungen zwischen den Zellen in der integrierten Halbleiterschaltung und Informationen über angenommene Fehler. Die Informationen über die Zellen in der integrierten Halbleiterschaltung sind der inhärente Zellenname für jede Zelle, der Zelltypname für die Art der Zelle, ein Pinname und der Signalleitungsname für die Verbindung mit dem Pin. Die Zelle in der integrierten Halbleiterschaltung hängt von der Herstellungstechnologie der integrierten Halbleiterschaltung ab, eine logische Schaltung weist in Abhängigkeit vom Typ eine logisch äquivalente Funktion auf. Die integrierte Halbleiterschaltung wird daher im Prozeß zur Berechnung der Testpunkt-Indexinformation bei der vorliegenden Ausführungsform als logische Schaltung modelliert.
  • Das Testpunkt-Einfügearchiv 123 dient der Angabe des Testpunkttyps, der eingefügt werden kann, und des Schaltungsmodifikationsverfahrens, wenn der Testpunkt in eine bestimmte Signalleitung durch eine Zelle und die Pinnummer in der integrierten Halbleiterschaltung eingefügt werden kann, und es umfaßt Informationslistensätze über die einfügbaren Zelltypnamen und die Pinnummer und den Testpunkttyp und das Schaltungsmodifikationsverfahren.
  • Die Testpunkt-Einfügeverbotsinformationen umfassen Informationslistensätze für Signalleitungen, in die kein Testpunkt eingefügt werden kann. Die Signalleitung wird durch den Startpunkt oder Endpunkt eines Pfades ausgedrückt, und der Startpunkt und der Endpunkt des Pfades wird durch einen Satz aus dem Signalleitungsnamen, einem Anschlußnamen oder einer Zellenposition und einer Pinnummer ausgedrückt. Die Testpunkttypen sind "1-Kontrollpunkt", "0-Kontrollpunkt" und "Beobachtungspunkt".
  • Die Testpunkt-Einfügepositionsinformationen 125 umfassen Informationen über die Unterscheidung zwischen der Fähigkeit oder der Nichtfähigkeit des Einfügens von Testpunkten mit einem Schaltungsmodifikationsverfahren, wenn der Testpunkt an jedem Testpunkt in der integrierten Halbleiterschaltung eingefügt werden kann.
  • Die Testpunkt-Indexinformationen 126 stellen eine numerische Information über einen Testpunktkandidaten dar, die die Testbarkeit der Gesamtschaltung angibt, wenn der Testpunktkandidat eingefügt wird, wobei die Informationen 126 durch eine Tabelle für die Testpunktindizes entsprechend den Testpunktkandidaten ausgedrückt wird. Jeder Testpunktkandidat wird durch die Signalleitung und den Testpunkttyp bezeichnet.
  • Die Testpunktinformationen 127 umfassen Informationen über die Einfügepositionen der Testpunkte und die Schaltungsmodifikationsverfahren, sie werden jeweils durch die Signalleitung (angegeben durch einen Zellennamen und eine Pinnummer) und das im Testpunkt-Einfügearchiv 123 beschriebene Schaltungsmodifikationsverfahren ausgedrückt.
  • Die Berechnungseinheit 102 besteht aus einem Testpunkt-Einfügepositionsbeschränkungsberechnungsabschnitt 111 zum Berechnen der Testpunkt-Einfügepositionsinformationen aus den Schaltungsinformationen 122, dem Testpunkt-Einfügearchiv 123 und den Testpunkt-Einfügeverbotsinformationen 124; einem Testpunkt-Indexberechnungsabschnitt 122 zum Berechnen der Testpunkt-Indexinformationen anhand der Schaltungsinformationen und der Testpunkt-Einfügepositionsinformationen 125; und einem Testpunkt-Bestimmungsabschnitt 113 zum Berechnen der Testpunkte und der Testpunktinformationen 127 aus den Testpunkt-Indexinformationen 126.
  • Die 2 ist ein Flußdiagramm für eine Ausführungsform einer Prozeßprozedur der Vorrichtung zur Testpunktanalyse bei einer integrierten Halbleiterschaltung.
  • Der Schritt S101 umfaßt die Dateneingangsverarbeitung, bei der die Schaltungsinformationen 122, das Testpunkt-Einfügearchiv 123 und die Testpunkt-Einfügeverbotsinformationen 124 an der Dateneingabeeinheit 101 eingegeben und in der Speichereinheit 103 gespeichert werden.
  • Der Schritt S102 umfaßt die Testpunkt-Einfügepositionsbeschränkungsverarbeitung durch die Testpunkt-Einfügepositionsbeschränkungseinheit 111, in der die Testpunkt-Einfügepositionsbeschränkungsinformationen 125 durch Berechnen des Unterschieds zwischen der Möglichkeit und der Nichtmöglichkeit des Einfügens eines Testpunkts für jeden der Testpunkttypen in jede der Signalleitungen in der Schaltung aus den Schaltungsinformationen 122, dem Testpunkt-Einfügearchiv 123 und den Testpunkt-Einfügeverbotsinformationen 124 gebildet werden.
  • Der Schritt S103 umfaßt die Testpunkt-Indexberechnung durch den Testpunkt-Indexberechnungsabschnitt 112, in dem die Testpunkt-Indexinformationen 126 durch Berechnen eines Testpunktindexes für einen Testpunktkandidaten aus den Testpunkt-Einfügepositionsinformationen 125 gebildet werden.
  • Der Schritt S104 umfaßt die Testpunktbestimmung durch den Testpunkt-Indexberechnungsabschnitt 112, bei dem der Testpunktkandidat mit der höchsten Testbarkeit auf der Basis der Testpunktindex-Informationen 126 ausgewählt wird. Der Testpunktkandidat wird in den Testpunktinformationen 127 registriert.
  • Im Schritt S107 wird festgestellt, ob eine vorgegebene Komplettierungsbedingung für die Testpunktanalyse gegeben ist. Wenn die Komplettierungsbedingung nicht gegeben ist, kehrt der Prozeß zum Schritt S103 zurück, und die Testpunkt-Indexberechung für die integrierte Halbleiterschaltung wird mit den festgelegten Testpunkten ausgeführt. Dann werden der Testpunktbestimmungsprozeß zur Bestimmung eines neuen Testpunktes auf der Basis der Testpunktindizes für die Testpunktkandidaten mit Ausnahme der bestimmten Testpunkte und die Testpunkt-Indexberechnung und die Testpunktbestimmung ausgeführt, und die Verarbeitung wird wiederholt, wenn die Komplettierungsbedingung nicht erfüllt ist. Die Komplettierungsbedingung wird zum Beispiel durch eine Obergrenze für die Anzahl der Testpunkte, einen Schwellenwert für den Testpunktindex, eine Beschränkung der Bearbeitungszeit und dergleichen vorgegeben.
  • Wenn die Komplettierungsbedingung im Schritt S107 erfüllt ist, geht der Prozeß zum Schritt S108 weiter, und die in der Speichereinheit 103 gespeicherte Testpunktinfor mation 127 wird über die Datenausgabeeinheit 104 als Ergebnis aus der Vorrichtung zur Testpunktanalyse für integrierte Halbleiterschaltungen ausgegeben.
  • Jede der Informationen und jeder der Bearbeitungsschritte wird im folgenden anhand eines Beispiels für eine integrierte Halbleiterschaltung im Detail beschrieben.
  • Die 3A und die 3B zeigt jeweils ein Beispiel für eine integrierte Halbleiterschaltung bzw. eine neu zusammengesetzte integrierte Halbleiterschaltung, in die bezüglich der ersten integrierten Halbleiterschaltung Testpunkte eingefügt wurden. Die 3A zeigt ein Beispiel für eine integrierte Halbleiterschaltung vor dem Einsetzen von Testpunkten, die logische Operationen ausführt, die einer logischen Schaltung aus Invertergattern, AND-Gattern, OR-Gattern, NAND-Gattern, NOR-Gattern, Einganganschlüssen und Ausgangsanschlüssen äquivalent sind. Ein Gatter entspricht dabei einer Zelle. Die Zelltypnamen für die Zellen sind in der Reihenfolge der Zellen 251 bis 257 und 262 bis 266 AND3, NAND3, AND3, NAND3, OR2, AND2, INV1, NAND2, OR3, NOR3, AND2 und OR2. Hinsichtlich der Pinnummern für die Zellen steigt die Pinnummer für den Eingangspin in der Reihenfolge von der Oberseite der Figur zur Unterseite wie 1, 2, ... an, und die Pinnummer des Ausgangspins ist (die Nummer des Eingangspins + 1). Zum Beispiel sind in der Zelle 251 die Pinnummern für die Eingangspins, die mit den Anschlüssen 221, 222 und 223 verbunden sind, 1, 2 bzw. 3, und die Nummer des mit der Signalleitung 201 verbundenen Pins ist 4. Als Fehlergruppen werden Ausfälle der Ausgangsleitungen angenommen, das heißt die Signalleitungen 201 bis 206 und die Signalleitungen 212 bis 216, die auf den Signalwert 0 degenerieren (0-Degenerationsfehler) und Fehler, bei denen die Ausgangsleitungen auf den Signalwert 1 degenerieren (1-Degenerationsfehler).
  • Dieses Beispiel für eine integrierte Halbleiterschaltung ist außerdem mit Blockinformationen versehen, die Informationen über die Untergruppierung einer Anzahl von Zellen und Signalleitungen in der Schaltung darstellen. Der Block 2000 ist eine Subschaltung mit der Zelle 251, der Block 2100 eine Subschaltung mit den Zellen 252 bis 257, und der Block 2200 ist eine Subschaltung mit den Zellen 262 bis 266. Beim Entwerfen einer integrierten Halbleiterschaltung werden die Informationen über Blöcke im allgemeinen dann benutzt, wenn der Entwurf schrittweise von Blöcken mit einer kleinen Funktion hin zu Blöcken mit einer komplizierteren Funktion unter Verendung der Blöcke mit kleinen Funktionen erfolgt.
  • Die 3B zeigt ein Beispiel für eine Schaltung, bei der in die Schaltung der 3A mit einem herkömmlichen Testpunkt-Einfügeverfahren (dem Verfahren, das in der oben erwähnten Druckschrift von B. Seiss et al. beschrieben ist) drei Testpunkte eingefügt wurden. In die Signalleitung 202 ist ein 1-Kontrollpunkt 271 eingefügt, in die Signalleitung 212 ist ein 0-Kontrollpunkt 281 eingefügt, und in die Signalleitung 203 ist ein Beobachtungspunkt 291 eingefügt.
  • Der Kontrollpunkt 271 verbessert die 1-Kontrolle der Signalleitung 202. Der Kontrollpunkt 271 besteht aus einem OR-Gatter 273 mit 2 Eingängen und einem Flip-Flop mit Scanfunktion 274, und die Eingangsleitungen der Zelle 273 sind mit einen Eingangsseiten abschnitt 272 der Signalleitung 202 und mit dem Flip-Flop mit Scanfunktion 274 verbunden. Die Ausgangsleitung der Zelle 273 ist mit der Signalleitung 202 verbunden. Das Flip-Flop mit Scanfunktion 254 gibt einen Signalwert aus, der beim Testen durch eine Scankette eingegeben wird, es gibt im Normalbetrieb immer das Signal 0 aus.
  • Der 0-Kontrollpunkt 281 verbessert die 0-Kontrolle der Signalleitung 212. Der Kontrollpunkt 281 besteht aus einem AND-Gatter 283 mit zwei Eingängen und einem Flip-Flop mit Scanfunktion 284, und die Eingangsleitungen der Zelle 283 sind mit dem Eingangsseitenabschnitt 282 der Signalleitung 212 verbunden, und eine Testdateneingangsleitung ist mit dem Flip-Flop mit Scanfunktion 284 verbunden. Die Ausgangsleitung der Zelle 283 ist mit der Signalleitung 212 verbunden. Das Flipflop mit Scanfunktion 264 gibt beim Testen einen durch eine Scankette eingegebenen Signalwert aus, im normalen Betrieb gibt es immer das Signal 1 aus.
  • Der Beobachtungspunkt 291 verbessert die Beobachtbarkeit der Signalleitung 203. Mit der Signalleitung 292, die von der Signalleitung 203 abzweigt, ist ein Flip-Flop mit Scanfunktion 293 verbunden.
  • Das Testpunkt-Einfügearchiv 123 wird im folgenden anhand der 4(a) und der 5 beschrieben.
  • Die 4A ist ein Beispiel für ein Testpunkt-Einfügearchiv 123. In der Figur bezeichnet die Spalte 401 die Nummer der einzelnen Elemente des Testpunkt-Einfügearchivs, und die Spalten 402, 403 bezeichnen den Zellennamen und die Pinnummer für die Angabe einer Signalleitung, in die ein Testpunkt eingefügt werden kann. Die Spalte 404 bezeichnet den Testpunkttyp, der den Zweck des Einfügens eines Testpunkts angibt, und die Spalte 405 bezeichnet das tatsächliche Schaltungsmodifizierungsverfahren. Im Schaltungsmodifizierungsverfahren beschreiben die Informationen der Spalte 406 das Verbindungsverfahren für jeden Pin so, daß es eindeutig ist.
  • Die Zeilen 411 bis 417 bezeichnen die Elemente des Testpunktarchivs als Satz von Zelltypnamen für das Einfügen eines Testpunkts, einer Pinnummer, einem Testpunkttyp und einem Schaltungsmodifizierungsverfahren. Die Diagramme (1) bis (7) in der 5 zeigen die den einzelnen Zelltypen 411 bis 417 der 4A entsprechenden Schaltungsmodifizierungsverfahren.
  • Das Bezugszeichen 1 des Testpunkt-Einfügearchivs (die Zeile 411) drückt aus, daß ein 1-Kontrollpunkt für eine Signalleitung eingefügt werden kann, die mit Pin 2 des Zelltyps namens INV1 verbunden ist, und daß das Schaltungsmodifizierungsverfahren das Ändern der Zelle INV1 in eine Zelle NAND2 umfaßt. Das heißt, daß, wie im Diagramm (1) der 5 gezeigt, die Zelle 511 mit der Funktion eines INV-Gatters durch eine Zelle 513 mit der Funktion eines NAND-Gatters ersetzt wird, und daß die Pins 1 und 3 den Pins 1 und 2 der Zelle 511 vor dem Ersetzen entsprechen und Pin 2 mit der Signalleitung des Ausgangspins eines Flip-Flops 515 mit Scanfunktion verbunden ist.
  • Das Bezugszeichen 2 des Testpunkt-Einfügearchivs (die Zeile 412) drückt aus, daß ein 0-Kontrollpunkt für eine Signalleitung eingefügt werden kann, die mit Pin 2 des Zell typs namens INV1 verbunden ist, und daß das Schaltungsmodifizierungsverfahren das Ändern der Zelle INV1 in eine Zelle NOR2 umfaßt. Das heißt, daß, wie im Diagramm (2) der 5 gezeigt, die Zelle 521 mit der Funktion eines INV-Gatters durch eine Zelle 523 mit der Funktion eines NOR-Gatters ersetzt wird, und daß die Pins 1 und 3 den Pins 1 und 2 der Zelle 521 vor dem Ersetzen entsprechen und Pin 2 mit der Signalleitung des Ausgangspins eines Flip-Flops 525 mit Scanfunktion verbunden ist.
  • Das Bezugszeichen 3 des Testpunkt-Einfügearchivs (die Zeile 413) drückt aus, daß ein 0-Kontrollpunkt für eine Signalleitung eingefügt werden kann, die mit Pin 1 des Zelltyps namens BUF1 verbunden ist, und daß das Schaltungsmodifizierungsverfahren das Ändern der Zelle BUF1 in eine Zelle AND2 umfaßt. Das heißt, daß, wie im Diagramm (3) der 5 gezeigt, die Zelle 531 mit der Funktion eines BUF-Gatters durch eine Zelle 533 mit der Funktion eines AND-Gatters ersetzt wird, und daß die Pins 1 und 3 den Pins 1 und 2 der Zelle 531 vor dem Ersetzen entsprechen und Pin 2 mit der Signalleitung des Ausgangspins eines Flip-Flops 535 mit Scanfunktion verbunden ist.
  • Das Bezugszeichen 4 des Testpunkt-Einfügearchivs (die Zeile 414) drückt aus, daß ein 0-Kontrollpunkt für eine Signalleitung eingefügt werden kann, die mit Pin 3 des Zelltyps namens NAND2 verbunden ist, und daß das Schaltungsmodifizierungsverfahren das Ändern der Zelle NAND2 in eine Zelle ANDNOR umfaßt. Das heißt, daß, wie im Diagramm (4) der 5 gezeigt, die Zelle 541 mit der Funktion eines NAND-Gatters durch eine Zelle 543 mit der Funktion eines AND-Gatters und eines NOR-Gatters ersetzt wird, und daß die Pins 1, 2 und 4 den Pins 1, 2 und 3 der Zelle 531 vor dem Ersetzen entsprechen und Pin 3 mit der Signalleitung des Ausgangspins eines Flip-Flops 546 mit Scanfunktion verbunden ist.
  • Das Bezugszeichen 5 des Testpunkt-Einfügearchivs (die Zeile 415) drückt aus, daß ein 1-Kontrollpunkt für eine Signalleitung eingefügt werden kann, die mit Pin 1 des Zelltyps namens AND3 verbunden ist, und daß das Schaltungsmodifizierungsverfahren das Einfügen einer Zelle OR2 umfaßt. Das heißt, daß, wie im Diagramm (5) der 5 gezeigt, eine Zelle 553 mit der Funktion eines OR-Gatters in die Signalleitung eingefügt wird, die mit Pin 4 der Zelle 551 mit der Funktion eines AND-Gatters verbunden ist, daß die Pins 1 und 3 den Signalleitungen der Eingangsseite und der Ausgangsseite entsprechen, und daß Pin 2 mit der Signalleitung des Ausgangspins eines Flip-Flops 555 mit Scanfunktion verbunden ist.
  • Das Bezugszeichen 6 des Testpunkt-Einfügearchivs (die Zeile 416) drückt aus, daß ein Beobachtungspunkt für eine Signalleitung eingefügt werden kann, die mit Pin 4 des Zelltyps namens AND3 verbunden ist, und daß das Schaltungsmodifizierungsverfahren das Abzweigen der Signalleitung für eine Verbindung mit einem Flip-Flop mit Scanfunktion umfaßt. Das heißt, daß, wie im Diagramm der 5 gezeigt, eine Signalleitung 563 von der Signalleitung abgezweigt wird, die mit Pin 4 der Zelle 561 mit der Funktion eines AND-Gatters verbunden ist, um eine Verbindung mit dem Dateneingangspin des Flip-Flops 564 mit Scanfunktion herzustellen.
  • Das Bezugszeichen 7 des Testpunkt-Einfügearchivs (die Zeile 417) drückt aus, daß ein Beobachtungspunkt für eine Signalleitung eingefügt werden kann, die mit Pin 4 des Zelltyps namens OR3 verbunden ist, und daß das Schaltungsmodifizierungsverfahren das Abzweigen der Signalleitung für eine Verbindung mit einem Flip-Flop mit Scanfunktion umfaßt. Das heißt, daß, wie im Diagramm (7) der 5 gezeigt, eine Signalleitung 573 von der Signalleitung abgezweigt wird, die mit Pin 4 der Zelle 571 mit der Funktion eines OR-Gatters verbunden ist, um eine Verbindung mit dem Dateneingangspin des Flip-Flops 564 mit Scanfunktion herzustellen.
  • Die Testpunkt-Einfigeverbotsinformationen 124 werden im folgenden anhand der 6A beschrieben.
  • Die 6A ist ein Beispiel für die Testpunkt-Einfügeverbotsinformationen. In diesem Beispiel bestehen die Testpunkt-Einfügeverbotsinformationen aus Informationen 601 über verbotene Pfade, die Signalleitungen bezeichnen, in die kein Testpunkt eingefügt werden kann, und aus Informationen 602 über verbotene Blöcke, die Blöcke bezeichnen, in die kein Testpunkt eingefügt werden kann. Der Inhalt der Zeilen 615 bis 618 und 624 bis 625 steht beispielhaft für die integrierte Halbleiterschaltung der 3A.
  • Die Informationen 601 über verbotene Pfade bestehen aus dem Bezugszeichen 611, einem Pfadstartpunkt für den Pfad, in den kein Testpunkt 612 eingefügt werden kann, dem Pfadendpunkt 613 und dem verbotenen Testpunkttyp 614. Zum Beispiel besagt die Zeile 615, daß das Einfügen eines Kontrollpunkts (eines 1-Kontrollpunkts und eines 0-Kontrollpunkts) in die Signalleitung auf dem Pfad vom Anschluß 226 zum Anschluß 242 verboten ist, das heißt für die Signalleitung, die mit dem Anschluß 226 und den Signalleitungen 212, 213 und 215 verbunden ist. Die Zeile 616 besagt, daß das Einfügen eines Beobachtungspunkts in die Signalleitung auf dem Pfad von der Signalleitung 212 zur Signalleitung 215 verboten ist, das heißt in die Signalleitungen 212, 213 und 215. Die Zeile 617 besagt, daß das Einfügen eines Kontrollpunkts in die Signalleitung auf dem Pfad vom Pin 4 der Zelle 251 zum Pin 3 der Zelle 252 verboten ist, das heißt in die Signalleitung 201. Die Zeile 618 besagt, daß das Einfügen eines Kontrollpunkt in die Signalleitung auf dem Pfad vom Anschluß 236 zur Signalleitung 214 verboten ist, das heißt für die Signalleitung, die mit dem Anschluß 236 und der Signalleitung 214 verbunden ist. Wie in den Zeilen 615 bis 618 gezeigt, können der Pfadstartpunkt und der Pfadendpunkt durch jeden Satz von Werten ausgedrückt werden, der die beiden Enden eines Pfades angibt, wie dem Anschlußnamen, dem Namen der Signalleitung, dem Zellennamen oder der Pinnummer.
  • Die Informationen 602 über verbotene Blöcke bestehen aus dem Bezugszeichen 621, dem Blocknamen 622 für den Block, in den kein Testpunkt eingefügt werden kann, und dem verbotenen Testpunkttyp 623. Zum Beispiel besagt die Zeile 624, daß das Einfügen eines Kontrollpunkts in die Signalleitungen im Block 2000 verboten ist, das heißt in die Signalleitungen, die mit den Anschlüssen 221 bis 223 und der Signalleitung 201 verbunden sind. Gleichermaßen besagt die Zeile 625, daß das Einfügen eines Kontrollpunkts in die Signalleitungen im Block 2200 verboten ist, das heißt in die Signalleitungen, die mit den Anschlüssen 226, 233 bis 238 und den Signalleitungen 212 bis 216 verbunden sind.
  • Die 13A und 13B zeigen eine andere Ausführungsform zum Bezeichnen von Testpunkt-Einfügeverbotsinformationen. Die 13A zeig ein Beispiel für eine integrierte Halbleiterschaltung, in der die Bezugszeichen 1301 bis 1306 Eingangsanschlüsse bezeichnen, und in der die Zelle 1310 den Zelltypnamen "Selektor" und fünf Pins aufweist. Die 13B zeigt die Informationen 1331 über die verbotenen Pfade für diese Schaltung. Der Aufbau der Informationen 1331 über verbotene Pfade ist der gleiche wie bei den Informationen 601 über verbotene Pfade, das Angabeverfahren für den Startpunkt und den Endpunkt ist jedoch ein anderes. Zum Beispiel umfaßt in der Zeile 1345 der Startpunkt des Pfades alle Eingangsanschlüsse und alle Elemente mit Eingabemöglichkeiten, das heißt die Eingangsanschlüsse 1301 bis 1306, und den Endpunkt, den Pin 2 des Zelltyps mit dem Namen "Selektor". Der sich ergebende bezeichnete Pfad besteht somit aus den Signalleitungen 1320, 1321, 1322 und 1323. Gleichermaßen umfaßt der durch die Zeile 1346 bezeichnete Pfad die Leitungen 1320, 1321 und 1324. Da die Testpunkttypen in den beiden Zeilen Kontrollpunkte sind, sind Kontrollpunkte auf den beiden Pfaden verboten.
  • Ein solches Angabeverfahren wird zum Beispiel für ein eingebautes Selbsttestverfahren (BIST) bei der Inspektion einer integrierten Halbleiterschaltung verwendet, und es wird eine Zelle verwendet, die einen undefinierten Wert (es ist nicht definiert, ob der Wert 0 oder 1 ist) ausgibt. Ein Beispiel für eine solche Zelle ist der oben genannte Selektor 1310, wobei das Ausgangssignal einen undefinierten Wert hat (der vom Aufbau der Zelle abhängt), wenn die Eingangswerte an Pin 2 und Pin 4 (0, 0) oder (1, 1) sind. Da die Schaltung vor dem Einfügen eines Testpunkts so aufgebaut wurde, daß ein solcher Eingangszustand vermieden wird, ist das Einfügen eines Kontrollpunkts an der Eingangsseite des Pins 2 und des Pins 4 verboten, um den Zustand der Schaltung beizubehalten.
  • Die Testpunkt-Einfügepositionsinformationen 125 werden im folgenden anhand der 7A und 7B beschrieben.
  • Die 7A ist ein Beispiel für die Testpunkt-Einfügepositionsinformationen. Die Testpunkt-Einfügepositionsinformationen bestehen aus einem Signalleitungsnamen 701, einen 0-Punkt-Information für die Signalleitung 702, einer 1-Punkt-Information für die Signalleitung 705 und Beobachtungspunktinformationen 708. Die Informationen für jeden Signalleitungs-Testpunkt umfassen Möglichkeitsflags (703, 706, 709) für die Möglichkeit oder Unmöglichkeit des Einfügens eines Testpunkts und Archivnummern (704, 707, 710) für die Schaltungsmodifikationsverfahren, wenn ein Testpunkt eingefügt werden kann. In der Zeichnung wird das Möglichkeitsflag durch "O" bezeichnet, wenn ein Testpunkt eingefügt werden kann, und durch "X", wenn kein Testpunkt eingefügt werden kann. Die Archivnummer bezeichnet ein Element des Testpunkt-Einfügearchivs und gibt das entsprechende Schaltungsmodifikationsverfahren des Testpunkt-Einfügearchivs an. Der Inhalt ist in der Zeichnung ein Beispiel für die integrierte Halbleiterschaltung der 3A, und es wird angenommen, daß das Testpunkt-Einfügearchiv das der 4A ist. Zum Beispiel besagt die Zeile für die Signalleitung 201 der 7A, daß in die Signalleitung 201 kein 0-Kontrollpunkt eingefügt werden kann, und daß in die Signalleitung 201 ein 1-Kontrollpunkt eingefügt werden kann, und daß die Schaltungsmodifikation durch das Einfügen einer Zelle OR2 wie in der Spalte 5 der Zeile 415 der 4A gezeigt umfaßt, wenn der 1-Kontrollpunkt eingefügt wird, und daß ein Beobachtungspunkt in die Signalleitung 201 eingefügt werden kann und dabei die Schaltungsmodifikation eine Abzweigung zu einem Flip-Flop mit einer Scanfunktion umfaßt, wie es in der Spalte 6 der Zeile 416 der 4A gezeigt ist.
  • Es folgt eine Beschreibung der Bearbeitungsprozedur in jedem Abschnitt der Berechnungsvorrichtung, die in jedem der Schritte der 2 ausgeführt wird.
  • Die 8 ist ein Flußdiagramm für die Bearbeitungsprozedur im Testpunkt-Einfügepositionsbeschränkungsprozeß. Dieser Prozeß wird im Testpunkt-Einfügepositionsbeschränkungsabschnitt 111 ausgeführt, und die Testpunkt-Einfügepositionsinformationen 125 werden anhand des Testpunkt-Einfügearchivs 123 und der Testpunkt-Einfügeverbotsinformationen 124 ausgeführt. Die Beschreibung erfolgt anhand des Beispiels für das Testpunkt-Einfügearchiv der 4A, des Beispiels der Testpunkt-Einfigeverbotsinformationen der 6A und 6B und des Beispiels für die Testpunkt-Positionsinformationen der 7A und 7B.
  • Im Schritt 801 wird eine Signalleitung in der integrierten Halbleiterschaltung ausgewählt, und es wird ein Testpunkttyp wie ein 0-Kontrollpunkt, ein 1-Kontrollpunkt oder ein Beobachtungspunkt für die Signalleitung ausgewählt. Im Schritt 802 werden für die Zellen und Pins der ausgewählten Signalleitung die Zelltypnamen der Zelle und die Pinnummern der Pins bestimmt. Es wird dabei angenommen, daß die Signalleitung in einer Eins-zu-Eins-Entsprechung zu einem Satz von Zellen und Pins steht. Im Schritt 803 wird untersucht, ob es ein Element (einen Satz aus Zelltypnamen, Pinnummer, Testpunkttyp, Schaltungsmodifizierungsverfahren) gibt, der mit dem Zelltypnamen, der Pinnummer und dem Testpunkttyp übereinstimmt. Wenn es ein solches Element gibt, geht der Prozeß zum Schritt 804 weiter, um in das Möglichkeitsflag für die entsprechende Signalleitung und den Testpunkttyp der Testpunkt-Einfügepositionsinformationen ein "O" für die Möglichkeit des Einfügens des Testpunkts einzusetzen. Dann wird im Schritt 805 die Elementnummer des übereinstimmenden Elements im Testpunkt-Einfügearchiv auf die Archivnummer gesetzt, so daß das Schaltungsmodifikationsverfahren identifiziert werden kann. Wenn es im Schritt 803 kein übereinstimmendes Element im Testpunkt-Einfügearchiv gefunden wird, geht der Prozeß zum Schritt 806 weiter, um ein "X" für die Unmöglichkeit des Einfügens des Testpunkts in das Möglichkeitsflag des entsprechenden Testpunkttyps einzusetzen. Im Schritt 807 wird festgestellt, ob die Prozesse der Schritte 801 bis 806 für alle Signalleitungen ausgeführt wurden. Wenn nicht, kehrt der Prozeß zum Schritt 801 zurück, um die Prozesse der Schritte 802 bis 806 durch Auswahl eines noch nicht bearbeiteten Satzes für eine Signalleitung und einen Testpunkttyp weiterzuführen. Wenn die Prozesse alle ausgeführt sind, geht die Bearbeitung zum Schritt 808 weiter. Im Schritt 808 wird die Markierung "X" für das Möglichkeitsflag für einen bestimmten Testpunkttyp für die Signalleitung auf dem durch die Informationen über verbotene Pfade der Testpunkt-Einfügeverbotsinformationen gesetzt, die die Unmöglichkeit des Einfügens eines Testpunkts angibt. Im Schritt 809 wird die Markierung "X" für das Möglichkeitsflag für einen bestimmten Testpunkttyp für die Signalleitung auf dem durch die Informationen über verbotene Blöcke der Testpunkt-Einfügeverbotsinformationen gesetzt, die die Unmöglichkeit des Einfügens eines Testpunkts angibt.
  • Der erwähnte Testpunkt-Positionsbeschränkungsprozeß ist für den Fall, daß sowohl das Testpunkt-Einfügearchiv als auch Testpunkt-Einfügeverbotsinformationen vorliegen. Wenn keine Testpunkt-Einfügeverbotsinformationen vorliegen und nur das Testpunkt-Einfügearchiv erstellt ist, ist es möglich, die Schritte 808 bis 809 zur Verarbeitung der Testpunkt-Einfügeverbotsinformationen im Prozeß der 8 wegzulassen. Entsprechend reicht es aus, daß der Prozeß nach S103 im Gesamtfluß der 2 mit den Testpunkt-Positionsinformationen aus den Schritten 801 bis 807 fortgesetzt wird.
  • Wenn kein Testpunkt-Einfügearchiv erstellt wurde und nur Testpunkt-Einfügeverbotsinformationen vorliegen, ist andererseits die Archivnummer bedeutungslos, und die Testpunkt-Positionsinformationen dienen allein zur Unterscheidung der Möglichkeit oder Nichtmöglichkeit des Einfügens von Testpunkten anhand des Möglichkeitsflags. Im Testpunkt-Einfügepositionsbeschränkungsprozeß wird das Möglichkeitsflag für alle Signalleitungen und alle Testpunkte auf die Markierung "O" gesetzt, um die Möglichkeit des Einfügens von Testpunkten anzuzeigen, und die Prozesse der Schritte 808 und 809 werden ausgeführt, um die Testpunkt-Positionsinformationen auszubilden.
  • Es wird nun die Prozeßprozedur für den Testpunkt-Indexberechnungsabschnitt 112 beschrieben, der im Testpunkt-Indexberechungsprozeß des Schrittes S103 ausgeführt wird. Zuerst werden aus den Testpunkt-Einfügepositionsinformationen 125 eine Signalleitung und ein Testpunkttyp mit dem Möglichkeitsflag "O" ausgewählt, das die Möglichkeit des Einfügens von Testpunkten anzeigt. An dieser Signalleitung und diesem Testpunkttyp wird die Berechnung an einem Index (Testpunktindex) ausgeführt, der den Grad der Testbarkeit angibt, wenn der Testpunkt eingefügt wird. Dieser Prozeß wird für alle Kombinationen von Signalleitungen und Testpunkttypen mit dem Möglichkeitsflag "O" ausgeführt, das die Möglichkeit des Einfügens von Testpunkten anzeigt.
  • Diese Beareitung wird durch den Testpunkt-Indexberechnungsabschnitt 111 ausgeführt, und es wird als Testpunktindex eine Skala der wahrscheinlichen Testbarkeit berechnet, die wie oben angegeben COP genannt wird. Dies ist jedoch nicht auf das COP beschränkt, es kann jeder Index verwendet werden, solange der Index die Auswirkungen einer verbesserten Testbarkeit angibt.
  • Es wird nun ein Berechnungsverfahren für COP beschrieben. Die Berechnung von COP erfolgt durch Berechnen der Kontrollierbarkeit (1-Kontrollierbarkeit) von der Eingangsseite zur Ausgangsseite und zur Berechnung der Beobachtbarkeit von der Ausgangsseite zur Eingangsseite. Dabei wird die Wahrscheinlichkeit für die Erfassung eines Fehlers berechnet. Die Fehlererfassungswahrscheinlichkeit ist das Produkt aus der Wahrscheinlichkeit, daß im Fehlerfall die fehlerhafte Signalleitung für jeden angenommenen Fehler einen Signalwert aufweist, der sich vom Signalwert im Normalzustand unterscheidet, mit der Wahrscheinlichkeit, daß der Signalleitungsfehler erfaßt werden kann. Das heißt, daß die Fehlererfassungswahrscheinlichkeit eines 0-Degenerationsfehlers das Produkt einer 1-Kontrollierbarkeit mit der Beobachtbarkeit und die Fehlererfassungswahrscheinlichkeit eines 1-Degenerationsfehlers das Produkt einer 0-Kontrollierbarkeit mit der Beobachtbarkeit ist. Es gilt daher "0-Kontrollierbarkeit = 1 – 1-Kontrollierbarkeit". Außerdem wird die Zielfunktion für die Testkosten durch Hinzufügen des Reziprokwertes der Fehlererfassungswahrscheinlichkeit zu allen Fehlern bestimmt. Es ist dies der Wert, der dem erwarteten Wert der Anzahl von Testmustern zum Erfassen eines Fehlers äquivalent ist, und da er die Testbarkeit einer ganzen Schaltung wiedergibt, wird die Testbarkeit um so größer, je kleiner die Kosten sind.
  • In der obigen Beschreibung ist zwar angegeben, daß die Verarbeitung zur Berechnung des Testpunktindexes für alle Signalleitungen und alle Testpunkttypen ausgeführt wird, an denen ein Testpunkt eingefügt werden kann, dazu ist allerdings viel Bearbeitungszeit erforderlich. Eine wirkungsvolle Methode zur Berechnung des Testpunktindexes unter Vermeidung dieses Problems ist in der Literaturstelle von B. Seiss et al. beschrieben. Dieses Verfahren wird im folgenden erläutert.
  • Zuerst wird COP vor dem Einfügen eines Testpunkts berechnet. Dann wird für jede der Signalleitungen der Differentialkoeffizient für die Testkosten hinsichtlich der Beobachtbarkeit und der Differentialkoeffizient für die Testkosten hinsichtlich der Kontrollierbarkeit berechnet. Die Einzelheiten des Berechnungsverfahrens sind in dem Artikel mit dem Titel "Testability-Driven Random Test-Pattern Generation" von R. Lisanke et al., IEEE Transactions on Computer-Aided Design, Bd. CAD-6, Seiten 1082–1087 (1987) beschrieben. Für alle Sätze von Signalleitungen und Testpunkttypen mit der Möglichkeit des Einfügens eines Testpunkts werden die sogenannten CRFs (Cost Reduction Factors) berechnet. Das CRF ist ein Näherungswert für den Testkostenunterschied beim Einfügen eines Testpunkts, das heißt ein Näherungswert für die Subtraktion der Testkosten beim Einfügen eines Testpunkts von den Testkosten vor dem Einfügen des Testpunkts. Die Einzelheiten des Berechnungsverfahrens für das CRF sind in der genannten Literaturstelle von B. Seiss beschrieben, vorzugsweise wird ein Testpunkt in die Signalleitung mit dem größeren Wert von CRF eingefügt. Da CRF ein Näherungswert ist, ist es jedoch erforderlich, die Testkosten beim tatsächlichen Einfügen eines Testpunkts zu berechnen. Die eine Bedingung erfüllenden Testpunktkandidaten werden auf der Basis des CRF ausgewählt, und es wird eine Gruppe von Testpunktkandidaten ausgebildet. Die Bedingung des CRF für die Testpunktkandidaten ist eine Obergrenze für die Anzahl der Testpunkte, die mit abnehmender Größe des CRF vorher bestimmt wurde, oder ein bestimmtes Verhältnis zum Maximalwert des CRF. Schließlich werden die COPs (Kontrollierbarkeit, Beobachtbarkeit, Testkosten) beim Einfügen der Testpunktkandidaten für alle Elemente der Gruppe von Testpunktkandidaten berechnet. Mit dem Ergebnis werden die Testpunkt-Indexinformationen 126 erstellt, die eine Gruppe von Sätzen aus Testpunktkandidaten und Testkosten darstellen.
  • Der Testpunkt-Indexberechnungsprozeß S103 ist nicht auf den angegebenen Prozeß beschränkt. Es ist möglich, jeden Prozeß zu verwenden, der Testpunkt-Indexinformationen erzeugt, mit denen Testpunktindizes bestimmt werden, die Testpunktkandidaten mit großen Werten für die Testbarkeit ergeben.
  • Es wird im folgenden der Prozeß für die Ausführung des Testpunkt-Bestimmungsprozesses durch den Testpunktbestimmungsabschnitt 113 im Schritt S104 beschrieben. Aus den Testpunkt-Indexinformationen 126, die Sätze von Testpunktkandidaten und den Testpunktindex angeben, wird der Testpunkt mit dem größten Testpunktindex als Testpunkt bestimmt, und die Signalleitung und der Testpunkttyp werden in den Testpunktinformationen 127 registriert. Das heißt, daß im Falle der Verwendung der Testkosten auf der Basis des oben erwähnten COP als Testpunktindex der Testpunktkandidat mit den minimalen Testkosten als Testpunkt festgelegt wird.
  • Es wurden der Aufbau der Vorrichtung zur Testpunktanalyse für eine integrierte Halbleiterschaltung und die Verarbeitungsprozedur gemäß der vorliegenden Erfindung beschrieben. Es folgt nun anhand des Flußdiagramms der 2 die Beschreibung der Operationen, wenn die vorliegende Erfindung auf die integrierte Halbleiterschaltung der 3A angewendet wird. Es wird dabei das Beispiel für das Testpunkt-Einfügearchiv 123 der 4A und das Beispiel für die Testpunkt-Einfügeverbotsinformationen 124 der 6A verwendet, und die Komplettierungsbedingung im Schritt S107 im Prozeßfluß ist, daß die Anzahl der neu bestimmten Testpunkte gleich drei ist.
  • Zuerst werden im Schritt S101 die Informationen der 3A als Schaltungsinformationen 122 eingegeben. Als angenommene Fehler werden Fehler auf der Ausgangsleitung angenommen, das heißt 0-Degenerationsfehler und 1-Degenerationsfehler auf den Signalleitungen 201 bis 206 und den Signalleitungen 212 bis 216. Die Signalleitungen, in die ein Kontrollpunkt und ein Beobachtungspunkt eingefügt werden können, seien die Ausgangsleitungen der einzelnen Elemente, das heißt die Signalleitungen 201 bis 207 und 212 bis 216.
  • Dann werden im Testpunkt-Einfügepositionsbeschränkungsprozeß des Schrittes S102 in den Schritten 801 bis 807 aus den Schaltungsinformationen und dem Testpunkt-Einfügearchiv die Testpunkt-Einfügepositionsinformationen gebildet. Die 7A zeigt die Testpunkt-Einfügepositionsinformationen zu der Zeit, wenn die Feststellung im Schritt 807 "J" ist.
  • Wenn im Schritt 801 die Signalleitung 201 und der 0-Kontrollpunkt ausgewählt werden, werden im Schritt 802 der Zelltypname AND3 und die Pinnummer 4 für die Signalleitung 201 berechnet. Im Schritt 803 wird nach der Testpunkt-Einfügearchivnummer von AND3, Pinnummer 4, 0-Kontrollpunkt gesucht, aber nichts gefunden. Der Prozeß geht daher zum Schritt 806 weiter, und das Möglichkeitsflag wird auf "X" gesetzt. Wieder zu rück beim Schritt 801 wird bei der Auswahl der Signalleitung 201 und 1-Kontrollpunkt im Schritt 803 nach der Testpunkt-Einfügearchivnummer von AND3, Pinnummer 4, 1-Kontrollpunkt gesucht und die Testpunkt-Einfügearchivnummer 5 (die Zeile 415) gefunden. Im Schritt 804 wird das Möglichkeitsflag auf "O" gesetzt und im Schritt 805 die Archivnummer auf 5 gesetzt. Zurück im Schritt 801 wird bei der Auswahl der Signalleitung 201 und Beobachtungspunkt im Schritt 803 nach der Testpunkt-Einfügearchivnummer von AND3, Pinnummer 4, Beobachtungspunkt gesucht und die Testpunkt-Einfügearchivnummer 6 (die Zeile 416) gefunden. Im Schritt 804 wird das Möglichkeitsflag auf "O" gesetzt und im Schritt 805 die Archivnummer auf 6 gesetzt.
  • Ähnlich werden aufeinanderfolgend Kombinationen aus den Signalleitungen 202 bis 216 und 0-Kontrollpunkt, 1-Kontrollpunkt sowie Beobachtungspunkt ausgewählt und die obige Bearbeitung ausgeführt. Signalleitungen und Testpunkttypen mit der Möglichkeit des Einfügens eines Testpunkts sind ein 1-Kontrollpunkt und ein Beobachtungspunkt auf der Signalleitung 203 für den Zelltypnamen AND3 und die Pinnummer 4, ein 0-Kontrollpunkt und ein 1-Kontrollpunkt auf der Signalleitung 207 für den Zelltypnamen INV1 und die Pinnummer 2, ein 0-Kontrollpunkt auf der Signalleitung 212 für den Zelltypnamen NAND2 und die Pinnummer 3 und ein Beobachtungspunkt auf der Signalleitung 213 für den Zelltypnamen OR3 und die Pinnummer 4. Für diese Punkte wird das Möglichkeitsflag im Schritt 804 auf "O" gesetzt und im Schritt 805 die Archivnummer eingestellt. Die anderen Signalleitungen und Testpunkttypen können nicht für Testpunkte herangenommen werden, und das Möglichkeitsflag dafür wird auf "X" gesetzt.
  • Wenn im Schritt 807 festgestellt wird, daß das Setzen des Möglichkeitsflags und der Archivnummer für alle Signalleitungen und alle Testpunkttypen ausgeführt wurde, wird der Prozeß für die Testpunkt-Einfügeverbotsinformationen 124 der 6A ausgeführt. Die 7B zeigt die Testpunkt-Einfügepositionsinformationen zu der Zeit, wenn der Schritt 809 beendet ist.
  • Im Schritt 808 wird für die Signalleitungen auf dem Pfad vom Anschluß 226 zum Anschluß 242, die in den Informationen 631 über verbotene Pfade beschrieben werden, das heißt für die Signalleitungen 212, 213 und 215, das Einfügen eines Kontrollpunkts (0-Kontrollpunkt, 1-Kontrollpunkt) untersagt. Auch wenn nach den Testpunkt-Einfügepositionsinformationen der 7A das Einfügen eines 0-Kontrollpunkts in die Signalleitung 212 möglich ist, wird durch den vorliegenden Prozeß das Flag auf die Markierung "X" gesetzt, die ein Verbot des Einfügens von Testpunkten anzeigt.
  • Im Schritt 809 wird für die Signalleitungen im Block 2000, das heißt für die Signalleitung 201, das Einfügen eines Kontrollpunkts (0-Kontrollpunkt, 1-Kontrollpunkt) untersagt. Auch wenn nach den Testpunkt-Einfügepositionsinformationen der 7A das Einfügen eines 1-Kontrollpunkts in die Signalleitung 201 möglich ist, wird durch den vorliegenden Prozeß das Flag auf die Markierung "X" gesetzt, die ein Verbot des Einfügens von Testpunkten anzeigt.
  • Im Testpunkt-Indexberechnungsprozeß des Schrittes S103 werden für die Sätze aus einer Signalleitung und einem Testpunkttyp mit der Möglichkeit des Einfügens eines Testpunkts in den Testpunkt-Einfügepositionsinformationen 125, das heißt für die Testpunktkandidaten, durch Berechnen eines Testpunktindexes die Testpunktindexinformationen 126 erstellt. Der Testpunktindex sind die Testkosten auf der Basis des genannten COP. Die 9A ist eine Tabelle für die Testpunktindexinformationen, die bei einem Prozeß zum Bestimmen eines ersten Testpunkts erhalten werden, und des Testpunktindexes (der Testkosten) 905 für den Testpunktkandidaten 902 der Signalleitung 903 und des Testpunkttyps 904.
  • Im Testpunktbestimmungsprozeß des Schrittes S104 wird aus dem Testpunktindex in den Testpunktindexinformationen 126 der 9A als Testpunkt der Testpunktkandidat für einen 1-Kontrollpunkt auf der Signalleitung 207 mit der höchsten Testbarkeit, das heißt den geringsten Testkosten bestimmt und in den Testpunktinformationen 127 registriert. Die 10 zeigt ein Beispiel für die Testpunktinformationen, die aus Zellennamen 1003 und einer Pinnummer 1004 sowie einer Testpunkt-Einfügearchivnummer 1005 für ein bestimmtes Schaltungsmodifikationsverfahren zusammengesetzt sind. Der vorher bestimmte 1-Kontrollpunkt auf der Signalleitung 207 wird in der Zeile 1011 als Testpunktnummer 1 eingetragen, die Pinnummer 2 der Zelle 257 wird entsprechend der Signalleitung 207 eingestellt, und die Archivnummer wird auf 1 (Eins) gesetzt, sie bezeichnet die Archivnummer für den 1-Kontrollpunkt auf der Signalleitung 207 in den Testpunkt-Einfügepositionsinformationen der 7B.
  • Im Schritt S107 kehrt der Prozeß zum Schritt S103 zurück, da die vorher festgelegte Bedingung für die Anzahl von Testpunkten = 3 nicht erfüllt ist, und es wird der Prozeß zur Bestimmung eines zweiten Testpunkts gestartet. Im Schritt S103 werden auf der Basis der Schaltung, in die der Testpunkt Nummer 1 eingefügt wurde, ein Testpunktkandidat und die Testkosten für die Schaltung mit dem Testpunkt 1 berechnet. Die 9B zeigt die während der Bearbeitung zur Bestimmung des zweiten Testpunkts erzeugten Testpunktindexinformationen. Im Schritt S104 wird der Testpunktkandidat mit den minimalen Testkosten, das heißt der Beobachtungspunkt für die Signalleitung 213, als Testpunkt Nummer 2 bestimmt und in den Testpunktinformationen (die Zeile 1012 der 10) registriert.
  • Gleichermaßen kehrt der Prozeß vom Schritt S107 zum Schritt S103 zurück, um den Testpunkt-Indexberechnungsprozeß auszuführen. Die 9C zeigt die während der Bestimmung des dritten Testpunkts erzeugten Testpunktindexinformationen. Im Schritt S104 wird der Testpunktkandidat für einen Beobachtungspunkt auf der Signalleitung 203 als Testpunkt Nummer 3 bestimmt und in den Testpunktinformationen (die Zeile 1013 der 10) registriert.
  • Da die vorher festgelegte Bedingung für die Anzahl von Testpunkten = 3 im Schritt S107 erfüllt ist, geht der Prozeß zur Datenausgabe im Schritt S108 weiter. Im Datenausgabeprozeß wird der Inhalt der 10 als Testpunktinformationen 127 ausgegeben.
  • Mit diesen Prozessen wird durch Einfügen der Testpunkte aus der integrierten Halbleiterschaltung der 3A die integrierte Halbleiterschaltung der 11. Die Testpunkte sind in der Reihenfolge ab dem Testpunkt Nummer 1 der "1-Kontrollpunkt" 1111, der "Beobachtungspunkt" 1121 und der "Beobachtungspunkt" 1131.
  • Es erfolgt nun ein Vergleich der Testbarkeit für die integrierte Halbleiterschaltung (3A) vor dem Einfügen der Testpunkte, die integrierte Halbleiterschaltung (3B) mit nach dem herkömmlichen Verfahren (nach B. Seiss et al.) eingefügten Testpunkten und die integrierte Halbleiterschaltung (11). Die berechneten Testkosten auf der Basis des genannten COP sind für die 3A "1810", für die 3B "324" und für die 11 "344". Sowohl die Testbarkeit einer Schaltung mit nach dem herkömmlichen Verfahren eingefügten Testpunkten als auch die Testbarkeit einer Schaltung mit erfindungsgemäß eingefügten Testpunkten ist wesentlich besser als die der Schaltung vor dem Einfügen von Testpunkten. Die Testbarkeit der Schaltung mit den erfindungsgemäß eingefügten Testpunkten ist etwas schlechter, jedoch nahezu gleich der Testbarkeit der Schaltung mit den herkömmlich eingefügten Testpunkten. Dies zeigt, daß die analysierten Signalleitungen bei der vorliegenden Ausführungsform auf Signalleitungen mit der Möglichkeit des Einfügens eines Testpunkts beschränkt sind, durch das Erhalten von optimalen Testpunkten in den eingeschränkten Signalleitungen ist es jedoch möglich, eine Testbarkeit zu erhalten, die nahezu gleich der in dem Fall ist, daß die analysierten Signalleitungen nicht auf Signalleitungen mit der Möglichkeit des Einfügens eines Testpunkts beschränkt sind (das herkömmliche Verfahren).
  • Die erfindungsgemäße Vorrichtung zur Testpunktanalyse für eine integrierte Halbleiterschaltung ist daher dafür geeignet, daß der Designer einer integrierten Halbleiterschaltung leicht die Signalleitungen auf Signalleitungen mit der Möglichkeit des Einfügens von Testpunkten und die Testpunkttypen anhand des Testpunkt-Einfügearchivs 123 oder der Testpunkt-Einfügeverbotsinformationen 124 einschränken kann, und der Designer kann Testpunkte mit maximaler Testbarkeit angeben und Testpunkte an Stellen vermeiden, an denen kein Testpunkt eingefügt werden soll.
  • Es wird nun ein Analyseverfahren zur Testpunkteinfügung mit geringen Auswirkungen auf die Signalverzögerung beschrieben.
  • Zuerst werden hinsichtlich der Schaltungsinformationen 122 alle Zelltypnamen, Pinnummern, Testpunkttypen und Schaltungsmodifikationsverfahren für das Einfügen von Testpunkten derart festgesetzt, daß die Signalverzögerung von jedem Eingangspin zu einem Ausgangspin einer Zelle vor dem Einfügen eines Testpunkts und die Signalverzögerung von jedem Eingangspin zum Ausgangspin der Zelle nach dem Einfügen des Testpunkts einander nahezu gleich sind oder der Unterschied in den Signalverzögerungen kleiner ist als die Signalverzögerung von jedem der Eingangspins zum Ausgangspin einer Zelle mit zwei Eingängen und einer AND-Funktion oder einer OR-Funktion. Da die Signalverzögerung in der Zelle von der Zellenstruktur abhängt, das heißt von der Halbleiter-Herstellungstechnologie, kann die Signalverzögerung nicht auf der Ebene der logischen Gatter mit der Möglichkeit des Einfügens von Testpunkten für die obige Bedingung erläutert werden. Es wird jedoch ein Beispiel gezeigt.
  • Ein Beispiel ist der Zellenaustausch durch die Einfügung eines Kontrollpunkts, wie es in den Zeilen 411 bis 414 der 4A gezeigt ist. Wenn die Zellenstruktur ausgebildet wird, bei der zu einer vorherigen Zelle eine Testpunktfunktion hinzugefügt wird, kann die Zelle nach dem Einfügen des Testpunkts so aufgebaut werden, daß die zusätzliche Signalverzögerung klein ist. Die Einfügung eines Beobachtungspunkts wie in den Zeilen 416 und 417 der 4A gezeigt ist ein Beispiel für das Einfügen von Testpunkten unter Erfüllung der obigen Bedingung. Beim Einfügen eines Beobachtungspunktes ist der Unterschied zwischen der Signalverzögerung vor dem Einfügen und nach dem Einfügen klein. Die 4B ist ein Beispiel für ein Testpunkt-Einfügearchiv, das unter Berücksichtigung einer Verringerung der zusätzlichen Signalverzögerung durch das Einfügen von Testpunkten erstellt wurde. Die Kontrollpunkteinfügung ist nur die Schaltungsmodifikation (die Zeilen 431, 432), mit der die Zelle INV1 durch die Zelle NAND2 oder NOR2 ersetzt wird, und die Beobachtungspunkteinfügung ist auf allen Signalleitungen möglich (Zeile 433).
  • Es ist hier erwähnt, welcher Zelltyp als Zielzelle beim Zellenaustausch in der Einfügung eines Kontrollpunkts geeignet ist. Im allgemeinen sind in einer integrierten Halbleiterschaltung Zellen mit einer hohen Ansteuerbarkeit, wobei "Ansteuerbarkeit" die Fähigkeit zur Abgabe von Signalen bedeutet, und die logisch Puffern oder Invertern äquivalent sind, so ausgerüstet, um Verzögerungen in Signalleitungen zu verringern, die entweder lang sind oder die vielfach verzweigt sind. Die Zelltypnamen von hoch ansteuerbaren Zellen lassen sich leicht angeben, und sie werden in integrierten Halbleiterschaltungen in großen Mengen verwendet. Es ist deshalb wünschenswert, daß das Testpunkt-Einfügearchiv diese Zelltypen als Zielzelltypen enthält, die beim Einfügen von Testpunkten als Kontrollpunkte gegen Zellarten der gleichen Ansteuerbarkeit auszutauschen sind. Bei dieser Art von Zelltausch sind daher die Änderungen zwischen vor und nach dem Einfügen eines Testpunkts vernachlässigbar klein. Die Anzahl von Punkten, in die jeder Kontrollpunkt einsetzbar ist, ist ausreichend groß, um die Testbarkeit der Schaltung einfach zu vergrößern. In einer wie oben aufgebauten integrierten Halbleiterschaltung wird wenigstens eine der Zellen mit großer Ansteuerbarkeit, die dafür vorgesehen sind, Verzögerungen auf den Signalleitungen zu verringern, die lang oder vielfach verzweigt sind, als Bauteil (zum Beispiel als 2-NAND-Zelle, von der eine Eingangsleitung mit einem Flip-Flop mit Scanfunktion verbunden ist, der als Kontrollpunkt verwendet wird) für einen Kontrollpunkt verwendet, der zum Einfügen eines Testpunkts vorgesehen wird.
  • Andererseits sind hinsichtlich des Testpunkt-Einfügearchivs 123, der Sätze von Signalleitungen in der Schaltung und des Testpunkttyps die Einfügeverbote für Testpunkte so festgelegt, daß in eine Signalleitung auf einem Pfad mit nur wenig Spielraum für die Signalverzögerung auf dem Pfad zwischen einem Anschluß oder einem Speicherelement und einem Anschluß oder einem Speicherelement Kontrollpunkte eingefügt werden. Ein Beispiel für das Ausbilden von Testpunkt-Einfügeverbotsinformationen unter Berücksichtigung der Signalverzögerung wird nun beschrieben.
  • Zuerst wird eine Tabelle von Pfaden für Signalverzögerungsbereiche mit einem Werkzeug zum Berechnen der Signale in einer integrierten Halbleiterschaltung erzeugt. Die 12 ist ein Beispiel für eine Liste von Pfaden mit engen Bereichen für die Signalverzögerung, die dadurch erhalten wird, daß die Signalverzögerung auf dem Pfad zwischen einem Anschluß oder einem Speicherelement und einem Anschluß und dem Speicherelement in der integrierten Halbleiterschaltung der 3A berechnet wird. Das heißt, daß ein Signalverzögerungsbereich (Verzögerungsbereich) 1204 für den Pfad zwischen einem Pfadstartpunkt 1202 und einem Pfadendpunkt 1203 angegeben wird. Die Zeilen sind in ansteigender Reihenfolge des Verzögerungsbereichs von der Zeile 1211 zur Zeile 1219 aufgelistet. Die Werte für die Signalverzögerungsbereiche sind in der Darstellung beispielhafte Werte zum Zwecke der Erläuterung, jedoch keine tatsächlich berechneten Werte.
  • Pfade, in die kein Kontrollpunkt eingesetzt werden darf, werden unter dem Gesichtspunkt des Reduzierens einer Verschlechterung der Signalverzögerung aufgrund einer Testpunkteinfügung aus dieser Tabelle ausgewählt. Zum Beispiel werden in dem Fall, daß das Einfügen eines Kontrollpunkts in die Pfade der Zeilen 1211 bis 1213 mit einem kleinen Verzögerungsbereich verboten ist, die Informationen für verbotene Pfade in den Testpunkt-Einfügeverbotsinformationen wie in der Spalte 631 der 6B gezeigt. Die Zeilen 1211 und 1212 der 12 entsprechen den Zeilen 645 bis 647 der 6B.
  • Der Testpunktanalyseprozeß wird anhand des Testpunkt-Einfügearchivs der 4B und der Testpunkt-Einfügeverbotsinformationen der 6B sowie der integrierten Halbleiterschaltung der 3A gezeigt. Im Testpunkt-Einfügepositionsbeschränkungsprozeß S102 besteht die erzeugte Testpunkt-Einfügepositionsinformation aus den Signalleitungen, in die ein Testpunkt eingefügt werden kann, und die Testpunkttypen sind 1-Kontrollpunkte und 0-Kontrollpunkte in der Signalleitung 207 und Beobachtungspunkte in allen Signalleitungen. Auf der Basis dieser Informationen werden der Testpunkt-Indexberechnungsprozeß S103 und der Testpunktbestimmungsprozeß S104 wiederholt, bis die vorgegebene Bedingung über die Anzahl von Testpunkten = 3 erfüllt ist. Die sich ergebende Testpunktinformation wird zu der in der 10 gezeigten Tabelle, die die gleiche ist wie bei der ersten Ausführungsform des Testpunktanalyseprozesses.
  • Die Zunahme der Signalverzögerung aufgrund der Testpunkteinfügung wird nun verglichen zwischen der integrierten Halbleiterschaltung (3B) mit herkömmlich eingefügten Testpunkten (dem Verfahren von B. Seiss et al.) und der integrierten Halbleiterschaltung (11) mit erfindungsgemäß eingefügten Testpunkten. Im Pfad von den Anschlüssen 221, 222, 223 zum Anschluß 242 beträgt die zusätzliche Verzögerung für das herkömmliche Beispiel die der AND2-Zelle 283 entsprechenden Signalverzögerung, die als 0-Kontrollpunkt 281 eingefügt wurde. Andererseits beträgt die zusätzliche Verzögerung bei der vorliegenden Ausführungsform nur die Signalverzögerung durch das Einfügen des Beobachtungspunkts 1121. Im Pfad von den Anschlüssen 221, 222, 223 zum Anschluß 239 ist die zusätzliche Signalverzögerung im herkömmlichen Beispiel die der OR2-Zelle 273 entsprechende Signalverzögerung, die als 1-Kontrollpunkt 271 eingefügt wurde, und die Signalverzögerung aufgrund des Einfügens des Beobachtungspunkts 291. Andererseits ist die zusätzliche Signalverzögerung bei der vorliegenden Ausführungsform gleich dem Unterschied in den Signalverzögerungen aufgrund des Austauschens der INV1-Zelle 257 gegen die NOR2-Zelle 1112 zum Einfügen des 1-Kontrollpunkts 1111 und die Signalverzögerung durch das Einfügen des Beobachtungspunkts 291. Die zusätzliche Signalverzögerung durch die Einfügung des Beobachtungspunkts ist nur die Verzögerung durch die Abzweigung in der Signalleitung und damit vernachlässigbar. Bei dem herkömmlichen Verfahren ist daher die zusätzliche Signalverzögerung durch das Einfügen der Testpunkte in die integrierte Halbleiterschaltung groß, im Vergleich dazu ist jedoch die zusätzliche Signalverzögerung bei der vorliegenden Ausführungsform durch das Einfügen von Testpunkten in die integrierte Halbleiterschaltung sehr klein.
  • Es wird nun die Zunahme der Schaltungsfläche durch das Einfügen der Testpunkte zwischen den beiden Schaltungen auf der Basis der erhöhten Anzahl von Zellen verglichen. In der herkömmlichen Schaltung entspricht die Zunahme der AND2-Zelle und der OR2-Zelle für die Kontrollpunkte und den drei Flip-Flops mit Scanfunktion. Bei der erfindungsgemäßen Schaltung werden nur die drei Flip-Flops mit Scanfunktion vorgesehen. Die Zunahme der Schaltungsfläche aufgrund des Einfügens von Testpunkten ist bei der integrierten Halbleiterschaltung der vorliegenden Ausführungsform daher kleiner als bei der herkömmlichen integrierten Halbleiterschaltung.
  • Andererseits ist, wie oben angegeben, die Testbarkeit in beiden Schaltungen nahezu gleich.
  • Die erfindungsgemäße Vorrichtung zur Testpunktanalyse einer integrierten Halbleiterschaltung hat daher den Vorteil, daß die Auswirkungen auf die Signalverzögerung und die Schaltungsfläche durch das Einfügen von Testpunkten vermittels des Testpunkt-Einfügearchivs 123 und der Testpunkt-Einfügeverbotsinformationen 124 mit Berücksichtigung der Signalverzögerung erstellt werden, und daß die Ausführung von Testpunkten mit nahezu der gleichen Testbarkeit wie bei dem herkömmlichen Verfahren möglich ist. Da bei der erfindungsgemäßen Vorrichtung zur Testpunktanalyse die Signalverzögerung nicht berechnet zu werden braucht, kann die Bearbeitung mit hoher Geschwindigkeit erfolgen.
  • Erfindungsgemäß ist es möglich, ein Verfahren und eine Vorrichtung zur schnellen Testpunktanalyse in einer integrierten Halbleiterschaltung zu schaffen, bei dem die Einflüsse auf die Signalverzögerung und die Schaltungsfläche durch das Einfügen von Testpunkten geringer sind, wobei die Bearbeitung mit hoher Geschwindigkeit erfolgen kann. Verfahren und Vorrichtung sind leicht anzuwenden.
  • Die 14 zeigt eine Blockdarstellung für den Aufbau einer Ausführungsform einer erfindungsgemäßen Vorrichtung zur Testpunktanalyse für eine logische Schaltung. Die Analysevorrichtung umfaßt eine Eingabeeinheit 1401 zur Eingabe von Informationen über Elemente und Signalleitungen der Schaltung; eine Berechnungseinheit 1402 für die Be rechnungen von Typen und Einfügepositionen für Testpunkte; eine Speichereinheit 1403 zum Speichern von Schaltungsinformationen 1422, Testpunkt-Indexinformationen 1423, Testpunkt-Auswirkungsinformationen 1424, von Testpunktinformationen 1425 und Testpunkt-Korrelationsinformationen 1426; und eine Datenausgabeeinheit 1404.
  • Die Schaltungsinformationen 1422 umfassen Informationen über die Art jedes Elements und die Signalleitungen zwischen den Elementen in der logischen Schaltung, Informationen über angenommene Fehler und Informationen darüber, ob ein Testpunkt eingefügt werden kann oder nicht. Die Testpunkt-Indexinformationen 1423 sind numerische Informationen über die Testbarkeit der gesamten Schaltung und werden durch eine Tabelle der Testpunktindizes ausgedrückt, die jedem Element einer Gruppe von Testpunktkandidaten entspricht.
  • Die Testpunktkandidaten werden hier durch die Namen der Signalleitungen und den Typ der Testpunkte ausgedrückt. Der Name der Signalleitung ist ein Name für die Position der Signalleitung, die durch die Schaltungsinformationen angegeben wird. Die Art der Signalleitung ist "1-Kontrollpunkt", 0-Kontrollpunkt" oder "Beobachtungspunkt".
  • Die Testpunkt-Auswirkungsinformationen 1424 drücken das Vorhandensein oder Nichtvorhandensein einer Änderung in den Testpunkt-Indexinformationen durch einen oder mehrere eingefügte Testpunkte aus, sie setzen sich aus Testpunkt-Auswirkungsinformationen hinsichtlich der Testpunktkandidaten und Testpunkt-Auswirkungsinformationen hinsichtlich der für die Berechnung erforderlichen Signalleitungen zusammen. Die Testpunkt-Auswirkungsinformationen hinsichtlich der Signalleitungen werden durch die Signalleitungen und die Testpunktauswirkungen ausgedrückt und die Testpunkt-Auswirkungsinformationen hinsichtlich der Testpunktkandidaten werden durch die Testpunktkandidaten und den Testpunkteffekt ausgedrückt.
  • Die Testpunktinformationen 1425 sind Informationen über die Einfügepositionen der Testpunkte und die Schaltungen anhand der Namen der Signalleitungen und der Arten der Testpunkte. Die Testpunkt-Korrelationsinformationen 1425 sind Informationen über Gruppen von Testpunkten in Bereichen (im folgenden als Testpunktauswirkungsbereiche bezeichnet) der Schaltung, in denen sich der Testpunktindex durch das Einfügen eines Testpunkts ändert und keine Überschneidung durch die Testpunkte und die Identifikationsnummer für die Testpunktgruppe ergibt. Wenn die Testpunktinformationen 1425 oder die Testpunkt-Korrelationsinformationen 1426 hinzugefügt oder korrigiert werden oder eine neue Testpunkt-Korrelationsinformation 1426 erstellt wird, wird die Testpunktinformation 1425 manchmal zusätzlich zu den Schaltungsinformationen 1422 direkt an der Dateneingabeeinheit 1401 eingegeben.
  • Die Berechnungseinheit 1402 besteht aus einem Testpunkt-Indexberechnungsabschnitt 1411 zum Berechnen der Testpunkt-Indexinformationen 1423 aus den Schaltungsinformationen 1422, einem Testpunkt-Effektbewirkungsabschnitt 1413 zum Berechnen der Testpunkt-Auswirkungsinformationen hinsichtlich der Signalleitungen und der Testpunkt-Auswirkungsinformationen hinsichtlich der Testpunkten; und einem Testpunkt- Bestimmungsabschnitt 1412 zum Berechnen der Testpunkte und der Testpunkt-Korrelationsinformationen auf der Basis der Testpunkt-Indexinformationen 1423 und der Testpunkt-Auswirkungsinformationen 1424.
  • Die 15 ist ein Flußdiagramm für die Prozeßprozedur der Vorrichtung zur Testpunktanalyse bei einer logischen Schaltung. Der Schritt S1501 umfaßt die Dateneingangsverarbeitung, bei der die Schaltungsinformationen 1422 an der Dateneingabeeinheit 1401 eingegeben und in der Speichereinheit 1403 gespeichert werden. Wenn zusätzlich zu den Schaltungsinformationen 1422 die Testpunktinformationen 1425 eingegeben werden, werden die Schaltungsinformationen 1422 erneuert, um die Testpunktinformationen 1425 wiederzugeben.
  • Der Schritt S1502 ist die Testpunkt-Indexberechnung durch den Testpunkt-Indexberechnungsabschnitt 1411, während der die Testpunkt-Indexinformationen 1423 durch Berechnen einer Gruppe von Testpunktkandidaten und eines Testpunktindexes für jeden der Testpunktkandidaten aus den Schaltungsinformationen 1422 erzeugt werden. Der Schritt S1503 ist die anfängliche Testpunktbestimmung durch den Testpunktbestimmungsabschnitt 1412, in der der Testpunktkandidat mit der höchsten Testbarkeit auf der Basis der Testpunkt-Indexinformationen 1423 ausgewählt wird und der Testpunktkandidat in den Testpunktinformationen 1425 anfänglich registriert wird.
  • Der Schritt S1504 ist die Testpunkteffektberechnung durch den Testpunkteffektberechnungsabschnitt 1413, in der der Auswirkungsbereich des Testpunktes unmittelbar vor der Registrierung in den Testpunktinformationen 1425 berechnet wird und das Vorhandensein oder Nichtvorhandensein von Testpunktauswirkungen für jeden der Testpunktkandidaten geprüft wird und die Testpunkteffektinformationen 1424 erzeugt werden.
  • Der Schritt S1505 ist die Korrelation hinsichtlich der Testpunktbestimmung durch den Testpunktbestimmungsabschnitt 1412, in der durch die Auswahl eines Testpunktkandidaten aus den Testpunktkandidaten durch die Testpunkt-Indexinformationen 1423 mit einem "Nichtvorhandensein" eines Testpunkteffekts im Schritt S1504 und mit einem Testpunktindex über einem bestimmten Wert ein neuer Testpunkt bestimmt wird und in den Testpunktinformationen 1425 registriert wird.
  • Im Schritt S1506 wird festgestellt, ob ein neuer Testpunkt bestimmt wurde oder nicht, und wenn ein neuer Testpunkt bestimmt wurde, kehrt der Prozeß zu S1504 zurück. Die Bearbeitung wird dann derart wiederholt, daß der Auswirkungsbereich des Testpunktes unmittelbar vor der Registrierung in den Testpunktinformationen 1425 berechnet wird und das Vorhandensein oder Nichtvorhandensein eines Testpunkteffekts für jeden der Testpunktkandidaten geprüft wird. Wenn es einen Testpunktkandidaten gibt, der im Schritt S1504 einen "nichtvorhandenen" Testpunkteffekt aufweist und einen Testpunktindex über einem bestimmten Wert besitzt, wird dieser in den Testpunktinformationen 1425 registriert. Dadurch werden Testpunkte, die sich in den Auswirkungsbereichen nicht überschneiden, ohne dauerndes Neuberechnen des Testpunktindexes sofort verarbeitet.
  • Die in den Schritten S1504 bis S1506 unmittelbar verarbeiteten Testpunkte werden mit der gleichen Gruppennummer versehen und in den Testpunkt-Korrelationsinformationen 1426 als Gruppe von Testpunkten mit nicht überschneidenden Auswirkungsbereichen gespeichert.
  • Wenn im Schritt S1506 kein neuer Testpunkt bestimmt wurde, wird im Schritt S1507 eine vorgegebene Komplettierungsbedingung der Testpunktanalyse überprüft. Wenn die Komplettierungsbedingung nicht erfüllt ist, kehrt der Prozeß zum Schritt S1502 zurückt, und die Testpunktindexberechnung für die logische Schaltung wird mit den bestimmten Testpunkten ausgeführt. Dann erfolgt eine neue Bestimmung der Testpunktkandidaten mit Ausnahme der Testpunkte, die bereits bestimmt wurden, und es wird auf der Basis des Testpunktindexes die anfängliche Testpunktbestimmung ausgeführt und die obige Bearbeitung wiederholt. Die Komplettierungsbedingung umfaßt zum Beispiel eine Obergrenze für die Anzahl der Testpunkte, einen Schwellenwert für den Testpunktindex, einen Grenzwert für die Bearbeitungszeit und so weiter.
  • Wenn die Komplettierungsbedingung erfüllt ist, geht der Prozeß zum Schritt S1508 weiter, und es werden die in der Speichereinheit 1403 gespeicherten Testpunktinformationen 1426 und Testpunktkorrelationsinformationen 1426 von der Datenausgabeeinheit 1404 als Ergebnis aus der Vorrichtung zur Testpunktanalyse in logischen Schaltungen ausgegeben. Wenn die Testpunktkorrelationsinformationen 1426 nicht ausgegeben werden brauchen, kann das Erzeugen der Testpunktkorrelationsinformationen 1426 im Schritt S1505 und die Ausgabe der Testpunktkorrelationsinformationen 1426 im Schritt S1508 weggelassen werden.
  • Es wird nun vor der genauen Erläuterung der Testpunktanalyse die logische Schaltung, die Schaltung für den Testpunkt und der Testpunkt-Auswirkungsbereich beschrieben. Die 16A und 16B zeigen Beispiele für eine logische Schaltung bzw. für Testpunkte, wobei die 16A ein Beispiel für eine logische Schaltung vor dem Einfügen von Testpunkten zeigt, die aus AND-Gattern, OR-Gattern, NAND-Gattern, NOR-Gattern und Eingabe/Ausgabeanschlüssen besteht. Für die Fehlergruppen werden Fehler auf den Ausgangsleitungen der jeweiligen Gatter, das heißt den Signalleitungen 1601 bis 1606 und den Signalleitungen 1612 bis 1616, mit einer Degeneration auf den Signalwert 0 (0-Degenerationsfehler) und Fehler auf den Ausgangsleitungen mit einer Degeneration auf den Signalwert 1 (1-Degenerationsfehler) angenommen.
  • Die 16B zeigt ein Beispiel für eine Schaltung, bei der in die Schaltung der 16A vier Testpunkte eingefügt wurden. In die Signalleitung 1602 wird ein 1-Kontrollpunkt 1651 eingefügt, in die Signalleitung 1612 ein 0-Kontrollpunkt 1661, in die Signalleitung 1603 ein Beobachtungspunkt 1671 und in die Signalleitung 1613 ein Beobachtungspunkt 1681.
  • Der Kontrollpunkt 1651 verbessert die 1-Kontrollierbarkeit der Signalleitung 1602. Der Kontrollpunkt 1651 ist aus einem OR-Gatter 1653 mit zwei Eingängen und einem Flip-Flop mit Scanfunktion 1654 zusammengesetzt, und die Eingangsleitungen des OR- Gatters 1653 sind eine normale Eingangsleitung, die mit der Eingangsseite 1652 der Signalleitung 1602 verbunden ist, und eine Testdaten-Eingangsleitung, die mit dem Flip-Flop mit Scanfunktion 1654 verbunden ist. Die Ausgangsleitung des OR-Gatters 1653 ist mit der Signalleitung 1602 verbunden. Das Flip-Flop mit Scanfunktion 1654 gibt beim Testen einen durch eine Scankette eingegebenen Signalwert aus und im Normalbetrieb immer das Signal 0.
  • Der Kontrollpunkt 1661 verbessert die 0-Kontrollierbarkeit der Signalleitung 1612. Der Kontrollpunkt 1661 ist aus einem AND-Gatter 1663 mit zwei Eingängen und einem Flip-Flop mit Scanfunktion 1664 zusammengesetzt, und die Eingangsleitungen des AND-Gatters 1663 sind eine normale Eingangsleitung, die mit der Eingangsseite 1662 der Signalleitung 1612 verbunden ist, und eine Testdaten-Eingangsleitung, die mit dem Flip-Flop mit Scanfunktion 1664 verbunden ist. Die Ausgangsleitung des AND-Gatters 1663 ist mit der Signalleitung 1612 verbunden. Das Flip-Flop mit Scanfunktion 1664 gibt beim Testen einen durch eine Scankette eingegebenen Signalwert aus und im Normalbetrieb immer das Signal 1.
  • Der Beobachtungspunkt 1671 verbessert die Beobachtbarkeit der Signalleitung 1603. Ein Flip-Flop mit Scanfunktion 1673 ist mit der Signalleitung 1672 verbunden, die von der Signalleitung 1603 abzweigt. Gleichermaßen verbessert der Beobachtungspunkt 1681 die Beobachtbarkeit der Signalleitung 1613. Ein Flip-Flop mit Scanfunktion 1683 ist mit der Signalleitung 1682 verbunden, die von der Signalleitung 1613 abzweigt.
  • Die 17A und 17B sind Ansichten zur Erläuterung der Testpunkt-Auswirkungsbereiche. Die 17A zeigt den Auswirkungsbereich eines Kontrollpunkts. Durch das Bezugszeichen 1702 wird eine Eingangselementgruppe der logischen Schaltung 1701 bezeichnet und durch das Bezugszeichen 1703 eine Ausgangselementgruppe. Der durch den Kontrollpunkt 1704 verändern Bereich der Kontrollierbarkeit ist die vertikal gestrichelte Subschaltung 1705 in Verbindung mit der Signalleitung an einer Stelle, die den Kontrollpunkt 1704 zur Ausgangsseite verschiebt. Der durch den Kontrollpunkt 1704 verändern Bereich der Beobachtbarkeit ist die Subschaltung 1705 und die horizontal gestreifte Subschaltung 1706 von den Ausgängen in der Subschaltung 1705 zur Eingangsseite. In diesen Subschaltungen 1705, 1706 verändern sich die Testpunktkandidaten auf den Signalleitungen in den Testpunktindexinformationen, da sich sowohl die Kontrollierbarkeit als auch die Beobachtbarkeit verändert. Die Testpunkteffektinformationen für die Signalleitungen in den Subschaltungen 1705, 1706 sind daher auf "Vorhandensein", und die Testpunkteffektinformationen für die anderen Signalleitungen, zum Beispiel die Signalleitungen in der Subschaltung 1707, sind auf "Nichtvorhandensein" gestellt.
  • Wie in der 16b zu sehen, sind die Signalleitungen im Bereich der Kontrollierbarkeit, die sich durch den Kontrollpunkt 1651 ändert, die Signalleitungen 1602, 1603, 1605 und 1606. Die Signalleitungen im Bereich der Beobachtbarkeit, die sich durch den Kontrollpunkt 1651 ändert, sind die Signalleitungen 1606, 1605, 1604, 1603, 1602 und 1601.
  • Die 17B zeigt den Auswirkungsbereich eines Beobachtungspunkts. Durch das Bezugszeichen 1712 wird eine Eingangselementgruppe der logischen Schaltung 1711 bezeichnet und durch das Bezugszeichen 1713 eine Ausgangselementgruppe. Der durch den Kontrollpunkt 1714 veränderte Bereich der Beobachtbarkeit ist die Subschaltung 1715 in Verbindung mit der Signalleitung an einer Stelle, die den Beobachtungspunkt 1714 zur Eingangsseite verschiebt. Im vorliegenden Fall verändert sich die Kontrollierbarkeit durch den Beobachtungspunkt 1714 nicht. In der Subschaltung 1715 ändern sich die Testpunktkandidaten auf den Signalleitungen in den Testpunktindexinformationen, da sich die Beobachtbarkeit verändert. Die Testpunkteffektinformationen für die Signalleitungen in der Subschaltung 1715 sind daher auf "Vorhandensein", und die Testpunkteffektinformationen für die Signalleitungen in der Subschaltung 1716 sind auf "Nichtvorhandensein" gestellt.
  • Die 18A bis 18D sind Ansichten zur Erläuterung des Überschneidens von Auswirkungsbereichen von zwei Testpunkten. In diesen Darstellungen wird durch das Bezugszeichen 1802 eine Eingangselementgruppe der logischen Schaltung 1801 bezeichnet, durch das Bezugszeichen 1803 eine Ausgangselementgruppe, und durch das Bezugszeichen 1804 ein Kontrollpunkt. Der Bereich 1805 bezeichnet den Testpunkt-Auswirkungsbereich des Kontrollpunkts 1804. Die Erläuterung erfolgt anhand des in der 18A gezeigten Falls, in dem ein Testpunkt im Auswirkungsbereich eines anderen Testpunkts liegt, anhand des in der 18B gezeigten Falls, in dem sich die Auswirkungsbereiche von zwei Testpunkten nicht überschneiden, und anhand der Fälle der 18C und 18D, in der sich die Auswirkungsbereiche von zwei Testpunkten überschneiden, aber keiner der beiden Testpunkte im Auswirkungsbereich des jeweils anderen Testpunkts liegt.
  • In der 18A liegt der Kontrollpunkt 1806 im Auswirkungsbereich des Kontrollpunkts 1804. In diesem Fall wird gesagt, daß sich die beiden Kontrollpunkte in einer starken Korrelation befinden. Die Beziehung der starken Korrelation kann für den Fall eines Kontrollpunkts und eines Beobachtungspunkts und für den Fall von zwei Beobachtungspunkten ähnlich definiert werden. Wenn sich zwei Testpunktkandidaten in einer starken Korrelation befinden, ändert sich die Kontrollierbarkeit/Beobachtbarkeit im Auswirkungsbereich des einen Testpunkts, wenn der andere Testpunktkandidat als Testpunkt festgelegt wird. Die Testpunktindexinformationen müssen daher aktualisiert werden.
  • Bei der Ausführungsform der 16B umfaßt der Bereich der starken Korrelation durch den Kontrollpunkt 1651 die Signalleitungen 1601, 1602 bis 1606. Der Bereich der starken Korrelation durch den Kontrollpunkt 1661 umfaßt die Signalleitungen 1601, 1612 bis 1616.
  • In der 18B überschneidet sich der Testpunkt-Auswirkungsbereich 1817 des Kontrollpunkts 1816 nicht mit dem Auswirkungsbereich 1805 des Kontrollpunkts 1804. In diesem Fall wird dieser Zustand so bezeichnet, daß die beiden Kontrollpunkte unabhängig sind. Die Beziehung der Unabhängigkeit kann gleichermaßen für den Fall eines Kontrollpunkts und eines Beobachtungspunkts und für den Fall von zwei Beobachtungspunkten definiert werden. Wenn zwei Testpunktkandidaten unabhängig sind, ändert sich die Kon trollierbarkeit/Beobachtbarkeit im Auswirkungsbereich des einen Testpunkts nicht, auch wenn der andere Testpunktkandidat als Testpunkt festgelegt wird. Die Testpunktindexinformationen brauchen daher nicht aktualisiert zu werden.
  • In der 18C überschneidet sich der Testpunkt-Auswirkungsbereich 1827 des Kontrollpunkts 1826 mit dem Testpunkt-Auswirkungsbereich 1805 des Kontrollpunkts 1804, der Kontrollpunkt 1826 liegt aber nicht im Testpunkt-Auswirkungsbereich 1805 des Kontrollpunkts 1804, und der Kontrollpunkt 1804 liegt nicht im Testpunkt-Auswirkungsbereich 1827 des Kontrollpunkts 1826. In diesem Fall wird dieser Zustand so bezeichnet, daß die beiden Kontrollpunkte in einer schwachen Korrelation stehen. Bei der Ausführungsform der 16B schneiden sich die Auswirkungsbereiche der Kontrollpunkte 1651 und 1661 an der Signalleitung 1601.
  • Wenn zwei Testpunktkandidaten in schwacher Korrelation stehen, ändert sich die Kontrollierbarkeit im Auswirkungsbereich des einen Testpunkts nicht, sondern es ändert sich ein Teil der Beobachtbarkeit, wenn der andere Testpunktkandidat als Testpunkt festgelegt wird. Genau genommen müssen daher die Testpunkt-Indexinformationen aktualisiert werden. Bei Untersuchungen der Erfinder hat sich jedoch gezeigt, daß sich kein praktisches Problem ergibt, wenn die Testpunktkandidaten in schwacher Korrelation mit einem "Nichtvorhandensein" von Testpunktauswirkungen behandelt werden. Ob der Testpunktindex neu berechnet wird oder nicht, kann jedoch in Abhängigkeit von der maximalen Bearbeitungszeit oder einem Zweck wie der Optimierung der Testpunkt-Einfügeposition oder dergleichen bestimmt werden.
  • In der 18D überschneidet sich der Testpunkt-Auswirkungsbereich 1837 des Beobachtungspunkts 1836 mit dem Testpunkt-Auswirkungsbereich 1805 des Kontrollpunkts 1804, der Beobachtungspunkt 1836 liegt aber nicht im Testpunkt-Auswirkungsbereich 1805 des Kontrollpunkts 1804, und der Kontrollpunkt 1804 liegt nicht im Testpunkt-Auswirkungsbereich 1837 des Beobachtungspunkts 1836. In diesem Fall befinden sich die beiden Kontrollpunkte in einer schwachen Korrelation. Ein Teil der Beobachtbarkeit im Auswirkungsbereich des einen Testpunkts ändert sich, wenn der andere Testpunktkandidat als Testpunkt festgelegt wird. Bei einem Kontrollpunkt und einem Beobachtungspunkt kann die schwache Korrelation als die in den 18C und 18D gezeigten Fälle definiert werden. Bei zwei Beobachtungspunkten ist jedoch die schwache Korrelation nicht definiert.
  • Es folgt nun eine Beschreibung der Bearbeitung in jedem Abschnitt der Berechnungsvorrichtung in jedem der Schritte der 15. Die 19 ist ein Flußdiagramm, das Einzelheiten der Testpunktindexberechnung im Schritt S1502 zeigt. Dieser Prozeß wird im Testpunkt-Indexberechnungsabschnitt 1411 ausgeführt und berechnet eine Skala für die wahrscheinliche Testbarkeit, die wie oben beschrieben COP genannt wird, für den Testpunktindex. Es ist dies jedoch nicht auf das COP beschränkt, sondern es kann jeder Index benutzt werden, wenn der Index die Auswirkungen einer Verbesserung der Testbarkeit ausdrückt.
  • Im Schritt S1901 wird das COP vor dem Einfügen von Testpunkten berechnet. Die Berechnung des COP erfolgt durch die Berechnung der Kontrollierbarkeit (1-Kontrollierbarkeit) von der Eingangsseite zur Ausgangsseite und Berechnen der Beobachtbarkeit von der Ausgangsseite zur Eingangsseite. Es wird auch eine Fehlererfassungswahrscheinlichkeit berechnet. Die Fehlererfassungswahrscheinlichkeit ist das Produkt aus der Wahrscheinlichkeit, daß eine Signalleitung einen von angenommenen Fehlern mit einem Signalwert, der sich vom Signalwert im Normalzustand unterscheidet, mit der Wahrscheinlichkeit, daß der Signalleitungsfehler erfaßt wird. Die Fehlererfassungswahrscheinlichkeit eines 0-Degenerationsfehlers ist daher das Produkt der 1-Kontrollierbarkeit und der Beobachtbarkeit, und die Fehlererfassungswahrscheinlichkeit eines 1-Degenerationsfehlers ist das Produkt der 0-Kontrollierbarkeit mit der Beobachtbarkeit. Es gilt damit "0-Kontrollierbarkeit = 1 – 1-Kontrollierbarkeit". Die objektive Funktion der Testkosten ist definiert als der Wert beim Hinzufügen des Reziprokwertes der Fehlererfassungswahrscheinlichkeit zu allen Fehlern. Es ist dies ein Wert, der gleich dem erwarteten Wert für die Anzahl von Testmustern zum Erfassen eines Fehlers ist, und da er die Testbarkeit für die ganze Schaltung angibt, wird die Testbarkeit größer, wenn die Kosten kleiner werden.
  • Im Schritt S1902 werden der Differentialkoeffizient der Testkosten hinsichtlich der Beobachtbarkeit und der Differentialkoeffizient der Testkosten hinsichtlich der Kontrollierbarkeit für jede Signalleitung berechnet. Die Einzelheiten des Berechnungsverfahrens sind in dem Artikel mit dem Titel "Testability-Driven Random Test-Pattern Generation" von R. Lisanke et al., IEEE Transactions on Computer-Aided Design, Bd. CAD-6, Seiten 1082–1087 (1987) beschrieben.
  • Im Schritt S1903 wird das CRF (Cost Reduction Factor) für jeden der Testpunktkandidaten berechnet. Das CRF ist ein Näherungswert für den Unterschied in den Testkosten (ACR: Actual Cost Reduction) durch das Einfügen eines Testpunkts, das heißt ein Näherungswert für das Subtrahieren der Testkosten beim Einfügen eine Testpunkts (Kandidaten) von den Testkosten vor dem Einfügen des Testpunkts. Eine Signalleitung für einen Testpunktkandidaten ist eine Signalleitung mit der Möglichkeit der Aufnahme eines Kontrollpunkts und eine Signalleitung mit der Möglichkeit der Aufnahme eines Beobachtungspunkts, sie wird in Abhängigkeit vom Wert des CRF ausgewählt.
  • Die Einzelheiten des Berechnungsverfahrens für das CRF sind in der oben angegebenen Literaturstelle von B. Seiss beschrieben, es gibt ein CRFc für Kontrollpunkte und ein CRFo für Beobachtungspunkte. Zwischen dem CRF und dem ACR besteht eine gute Korrelation, und vorzugsweise wird ein Testpunkt in die Signalleitung mit dem größeren Wert für das CRF eingefügt. Da das CRF ein Näherungswert ist, ist es jedoch erforderlich, die Testkosten dann zu berechnen, wenn der Testpunkt tatsächlich eingefügt wird.
  • Im Schritt S1904 werden die eine Bedingung erfüllenden Testpunktkandidaten auf der Basis des CRF ausgewählt und eine Gruppe von Testpunktkandidaten geformt. Die Bedingung des CRF für die Testpunktkandidaten ist eine Obergrenze für die Anzahl von Testpunkten, die in abnehmender Reihenfolge der CRFs vorgegeben wird, oder ein be stimmtes Verhältnis zum Maximalwert des CRF. Die anhand des CRFc-Wertes ausgewählten Testpunktkandidaten sind Kontrollpunktkandidaten, und die durch den CRFo-Wert ausgewählten Testpunktkandidaten sind Beobachtungspunktkandidaten.
  • In den Schritten S1905 und S1906 wird das COP (Kontrollierbarkeit, Beobachtbarkeit, Testkosten) für alle Elemente der Gruppe der Testpunktkandidaten berechnet. Anhand des Ergebnisses werden die Testpunktindexinformationen 1423 für eine Gruppe von Sätzen von Testpunktkandidaten und Testkosten erzeugt.
  • Die 20 ist ein Flußdiagramm für Einzelheiten des anfänglichen Testpunktbestimmungsprozesses im Schritt S1503. Die Bearbeitung erfolgt im Testpunktbestimmungsabschnitt 1412.
  • Im Schritt S2001 wird der Inhalt der Testpunkt-Auswirkungsinformationen 1424 insgesamt auf "Nichtvorhanden" eines Testpunkteffekts gesetzt. Das heißt, daß die Testpunktauswirkungen für alle Signalleitungen auf "Nichtvorhanden" gesetzt werden, und daß die Testpunktauswirkungen für alle Testpunktkandidaten auf "Nichtvorhanden" gesetzt werden. Im Schritt S2002 werden neue Gruppennummern, die bisher nicht verwendet wurden, für die Gruppennummern der Testpunkt-Korrelationsinformationen 1426 eingetragen. Im Schritt S2003 wird der Testpunkt mit dem besten Testpunktindex, das heißt der Testpunktkandidat mit den minimalen Testkosten in den Testpunktindexinformationen 1423, als Testpunkt bestimmt, und der Name der Signalleitung und die Art des Testpunkts werden in den Testpunktinformationen 1425 registriert. Dann werden im Schritt S2005 die Schaltungsinformationen 1422 auf die Schaltungsinformationen mit eingefügtem Testpunkt aktualisiert.
  • Die 21 ist ein Flußdiagramm mit Einzelheiten des Testpunkteffektberechnungsprozesses im Schritt S1504. Dieser Prozeß wird im Testpunkt-Auswirkungsberechnungsabschnitt 1413 ausgeführt. Ein Testpunktkandidat in schwacher Korrelation zu einem anderen Testpunkt wird hier mit einem "Nichtvorhandensein" eines Testpunkteffekts behandelt.
  • Im Schritt S2101 wird der Testpunkt-Auswirkungsbereich für den gerade bestimmten Testpunkt berechnet, und die Testpunktauswirkungen für die Signalleitungen im Auswirkungsbereich werden auf "Vorhanden" gesetzt. Testpunkteffekte auf Signalleitungen außerhalb des Auswirkungsbereichs werden nicht aktualisiert. Dann wird im Schritt S2102 der für die Testpunkt-Einfügeposition berechnete Testpunkteffekt auf "Vorhanden"/"Nichtvorhanden" gesetzt. Der Prozeß wird für alle Testpunktkandidaten im Schritt 2103 wiederholt.
  • Da die Testpunkteffektberechnung (S1504) eine Suchverbindungsbeziehung zwischen den Signalleitungen aus den Schaltungsinformationen darstellt, ist die Bearbeitungszeit für die Testpunkteffektberechnung (S1504) im ungünstigsten Fall proportional der Anzahl von Gattern, da die Anzahl von Objektelementen kleiner ist als die Anzahl von Gattern. Die Bearbeitungszeit für die Testpunkteffektberechnung (S1504) ist daher wesentlich kleiner als die für die Testpunktindexberechnung S1502 zum Berechnen des COP (Kontrollierbarkeit, Beobachtbarkeit, Testkosten) und wird nicht zu einem Flaschenhals bei der Gesamt-Bearbeitungszeit für die Testpunktanalyse.
  • Die 22 ist ein Flußdiagramm mit Einzelheiten für die Korrelation im Testpunktbestimmungsprozeß im Schritt S1505. Dieser Prozeß wird im Testpunktbestimmungsabschnitt 1412 ausgeführt.
  • Im Schritt S2201 wird die Gruppe der Testpunktkandidaten unter Verwendung der Testpunkt-Indexinformationen 1423 in der Reihenfolge des besseren Testpunktindexes sortiert und von 1 die Testpunktkandidatennummer aufeinanderfolgend addiert. Wenn der Testpunktindex die Testkosten darstellt, wird die Sortierreihenfolge zu einer Reihenfolge zunehmender Testkosten. Um die Testpunktkandidaten in der Sortierreihenfolge des Testpunktindexes im folgenden Prozeß zu bearbeiten, wird die Anzahl N der Objekt-Testpunktkandidaten im Schritt S2202 auf 1 gesetzt.
  • Im Schritt S2203 wird durch Vergleich der Nummer N der Objekt-Testpunktkandidaten mit der Anzahl von Testpunktkandidaten festgestellt, ob alle Testpunktkandidaten bearbeitet wurden. Wenn die Anzahl N kleiner ist als die Anzahl von Testpunktkandidaten, wird im Schritt S2204 festgestellt, ob der Testpunkteffekt für den Testpunktkandidaten N "Vorhanden" ist, und es wird im Schritt S2205 festgestellt, ob ein Testpunktkandidat N mit "Nichtvorhanden" für den Testpunkteffekt die Testpunktindexbedingung erfüllt. Wenn der Testpunktkandidat N die beiden Bedingungen nicht erfüllt, wird im Schritt S2206 die Anzahl N der Objekt-Testpunktkandidaten um 1 erhöht, und der Prozeß kehrt dann zu Schritt S2203 zurück.
  • Wenn der Testpunktkandidat N die beiden Bedingungen im Schritt S2207 erfüllt, werden der Name der Signalleitung und die Art des Testpunkts des Testpunktkandidaten N in den Testpunktinformationen 1425 registriert. Dann wird im Schritt S2208 die Testpunkt-Gruppennummer (die im Schritt S2002 der 20 eingestellte Nummer) entsprechend dem gerade vor de Einstellung auf die Testpunkt-Korrelationsinformationen 1426 registrierten Testpunkt eingestellt. Im Schritt S2209 werden die Schaltungsinformationen 1422 durch Einfügen des gerade vorher registrierten Testpunkts aktualisiert, und der Prozeß endet im Schritt S2210. Außerdem wird zu einem Rückkehrwert für neu bestimmte, existierende Testpunkte zurückgekehrt. Wenn zum Rückkehrwert für neu bestimmte, existierende Testpunkte zurückgekehrt wird, kehrt im Schritt S1506 der 15 die Kontrolle zu S1504 zurück.
  • Wenn andererseits die Anzahl N von Objekt-Testpunktkandidaten größer ist als die Anzahl von Testpunktkandidaten, das heißt wenn keiner der Testpunktkandidaten die beiden Bedingungen der Schritte S2204 und S2205 erfüllt, endet der Prozeß im Schritt S221, und es wird nicht zu einem Rückkehrwert für neu bestimmte, nicht existierende Testpunkte zurückgekehrt. Wenn dieser Rückkehrwert im Schritt S1507 der 15 bei der Komplettierungsbedingung festgestellt wird und diese nicht erfüllt ist, kehrt die Kontrolle zum Schritt S1502 zurück.
  • Die Testpunkt-Indexbedingung im Schritt S2205 ist zum Beispiel, wenn der Testpunktindex die Testkosten durch COP beschreibt, wie es oben angegeben ist, daß "der Unterschied in den Testkosten nach dem Einfügen eines Testpunktkandidaten zu den Testkosten vor dem Einfügen des Testpunktkandidaten größer ist als der Wert beim Multiplizieren eines vorgegebenen Wertes mit dem Unterschied zwischen den Kosten nach dem Einfügen eines gerade bestimmten Testpunkts und den Kosten vor dem Einfügen des Testpunkts". Das heißt, da die Testkosten für den Testpunktkandidaten in der Bearbeitungsreihenfolge eine ansteigende Reihenfolge darstellen, daß ein bestimmtes Verhältnis des Unterschieds gerade vorher verglichen wird mit dem Unterschied zur Zeit, und wenn letzterer in einem vergleichsweise großen Bereich liegt, das heißt wenn eine Verringerung der Testkosten erwartet werden kann, wird die Bearbeitung wiederholt. Wenn die Testkosten für den eingefügten Testpunktkandidaten groß sind und eine Testpunkt-Indexbedingung erreichen, bei der keine Verringerung der Testkosten erwartet werden kann, endet der Prozeß.
  • Es wurde bisher der Aufbau und die Prozeßprozedur der erfindungsgemäßen Vorrichtung zur Testpunktanalyse für logische Schaltungen beschrieben. Es folgt nun eine Beschreibung der Operationen an der logischen Schaltung der 16A anhand des Prozeßflusses der 15. Es wird dabei angenommen, daß die Komplettierungsbedingung im Schritt S1507 die ist, daß die Anzahl von neu bestimmten Testpunkten = 4 ist.
  • Zuerst werden im Schritt S1501 die Informationen der 16A als Schaltungsinformationen 1422 eingegeben. Die angenommenen Fehler sind 0-Degenerationsfehler und 1-Degenerationsfehler auf den Ausgangsleitungen der jeweiligen Elemente, das heißt den Signalleitungen 1601 bis 1606 und den Signalleitungen 1612 bis 1616. Es wird angenommen, daß die Signalleitungen mit der Möglichkeit der Aufnahme eines Kontrollpunkts oder eines Beobachtungspunkts die Ausgangsleitungen der jeweiligen Elemente sind, das heißt die Signalleitungen 1601 bis 1606 und 1612 bis 1616.
  • Dann werden in den Schritten S1901 bis S1903 des Berechnungsprozesses des Schrittes 1502 die Werte wie das COP und so weiter berechnet. Die 23A ist eine Tabelle für die Berechnungswerte von COP, der Differentialkoeffizienten und von CRF.
  • In der Darstellung bezeichnet die Spalte 2311 die Signalleitungsnummern der 16A. Die Spalten 2312 bis 2315 bezeichnen Werte, die im Schritt S1901 berechnet wurden, sie geben die 1-Kontrollierbarkeit (C), die Beobachtbarkeit (O), die Fehlererfassungswahrscheinlichkeit für einen 0-Degenerationsfehler (P(0)) und die Fehlererfassungswahrscheinlichkeit für einen 1-Degenerationsfehler (P(1)) auf den Signalleitungen der Spalte 2311 an. Im Schritt S1901 werden die Reziprokwerte der jeweiligen Werte der Spalten 2314 und 2315 akkumuliert, und es werden auch die Testkosten 2320 berechnet. Im Falle dieser logischen Schaltung ist der Fehler mit der geringsten Fehlererfassungswahrscheinlichkeit der 0-Degenerationsfehler auf der Signalleitung 1603, wobei die Wahrscheinlichkeit gleich "0,001" ist, und die Testkosten sind "1810".
  • Die Spalte 2316 und die Spalte 2317 geben die im Schritt S1902 berechneten Werte und die Differentialkoeffizienten (dU/dO) der Testkosten hinsichtlich der Beobachtbarkeit und die Differentialkoeffizienten (dU/dC) der Testkosten hinsichtlich der 1-Kontrollierbarkeit an. Wenn die Testkosten durch Abnahme der 1-Kontrollierbarkeit bei positivem dU/dC klein werden, wird vorzugsweise ein 0-Kontrollpunkt eingefügt. Andererseits wird vorzugsweise ein 1-Kontrollpunkt eingefügt, wenn die Testkosten durch Zunehmen der 1-Kontrollierbarkeit bei negativem dU/dC klein werden. Die Spalte 2318 und die Spalte 2319 sind das im Schritt S1903 berechnete CRF, das CRFo bei der Einfügung eines Beobachtungspunkts und das CRFc bei der Einfügung eines Kontrollpunkts.
  • Dann werden in den Schritten S1904 bis S1906 die in den Spalten 2402 bis 2405 der 24A gezeigten Testpunkt-Indexinformationen erhalten. Die Spalte 2402 gibt die Testpunktkandidaten an, die durch Sätze aus einer Signalleitung 2403 und einem Testpunkttyp 2404 ausgedrückt werden. Im Schritt S1904 werden aus dem CRF und dem CRF der 23A fünf der Gruppen der Testpunktkandidaten mit großen Werten ausgewählt. Die Auswahl des 1-Kontrollpunkts oder des 0-Kontrollpunkts erfolgt gemäß dem Differentialkoeffizienten dU/dC des Kandidatenpunkts. Die Spalte 2405 gibt die Testkosten an, die als Testpunktindex zu verwenden sind, die durch Berechnen von COP nach dem Einfügen eines Testpunktkandidaten in den Schritten S1905 und S1906 erhalten werden.
  • Auf der Basis der Testpunkt-Indexinformationen 1423 der 24A wird der anfängliche Testpunkt-Bestimmungsprozeß des Schrittes S1503 ausgeführt. Hinsichtlich der Testpunkt-Auswirkungsinformationen 1424, die nach diesem Schritt verwendet werden, sind die Testpunkt-Auswirkungsinformationen für die Testpunktkandidaten in den Spalten 2411 bis 2413 der 24A gezeigt, und die Testpunkt-Auswirkungsinformationen für die Signalleitungen sind in den Spalten 2502 bis 2504 der 25A gezeigt. Die Testpunkt-Auswirkungsinformationen werden durch "Vorhanden" oder "Nichtvorhanden" angegeben.
  • Zu Beginn der Bearbeitung im Schritt S2001 sind alle Testpunkteffekte (1) für die Testpunktkandidaten auf "Nichtvorhanden" eingestellt, wie es in der Spalte 2411 gezeigt ist, und die Testpunkteffekte (1) für alle Signalleitungen sind ebenfalls auf "Nichtvorhanden" eingestellt, wie es in der Spalte 2502 gezeigt ist. Im Schritt S2002 wird die Gruppennummer für die Testpunkt-Korrelationsinformationen 1426 auf 1 eingestellt. Dann wird im Schritt S2003 aus der Spalte 2405 der 24A der "1-Kontrollpunkt" auf der Signalleitung 1602 als Testpunkt mit den geringsten Testkosten ausgewählt und in den Testpunktinformationen 1425 als Testpunkt registriert.
  • Die 26A und 26B zeigen Tabellen für die Testpunktinformation. In den Spalten 2601 bis 2604 der 26A werden die festgelegten Testpunkte 2602 jeweils durch eine Signalleitung 2603 und einen Testpunkttyp 2604 ausgedrückt. Der Rahmen für den Testpunkt Nummer 1 enthält 1602 für die Signalleitung und "1-Kontrollpunkt" für den Testpunkttyp. Im Schritt S2004 wird als Testpunkt-Korrelationsinformation 1426 die Testpunktgruppe Nummer 1 bestimmt, wie es in der Spalte 2605 gezeigt ist.
  • Es wird nun das Einstellen und der Übergang der Testpunkt-Auswirkungsinformationen 1424 durch die Testpunkt-Auswirkungsberechnung im Schritt S1504 beschrieben.
  • Die Testpunkt-Auswirkungsinformation für einen Testpunktkandidaten in schwacher Korrelation mit einem anderen Testpunkt wird auf "Nichtvorhanden" eingestellt.
  • Im Schritt S2101 wird der Testpunkt-Auswirkungsbereich für den Testpunkt Nummer 1 berechnet, und es werden die Testpunkt-Auswirkungsinformationen für die Signalleitung aktualisiert. Hinsichtlich der Auswirkungen durch den "1-Kontrollpunkt" der Signalleitung 1602 umfaßt der Bereich für die Veränderung der Kontrollierbarkeit die Signalleitungen 1603, 1605, 1606 von der Signalleitung 1602 bis zur Ausgangsseite, wie es oben beschrieben ist. Der Bereich der sich ändernden Beobachtbarkeit umfaßt die Signalleitungen von den Signalleitungen 1605, 1606 des Ausgangsabschnitts mit sich ändernder Kontrollierbarkeit, die invers zur Eingangsseite anschließen, das heißt die Signalleitungen 1601 bis 1606. Der Auswirkungsbereich des Testpunkts Nummer 1 auf die einzelnen Signalleitungen ist daher bei den Signalleitungen 1601 bis 1606 "Vorhanden" und bei den anderen Signalleitungen "Nichtvorhanden", wie es in der Spalte 2503 der 25A gezeigt ist.
  • Im Schritt S2102 und S2103 werden die Testpunkt-Auswirkungsinformationen für die Testpunktkandidaten auf der Basis der Spalte 2503 mit den Testpunktauswirkungen auf die Signalleitungen durch den Testpunkt Nummer 1 wie in der Spalte 2412 der 24A gezeigt eingestellt. Bei den Testpunktkandidaten der Nummern 1, 2 und 3 werden die Testpunkteffekte der entsprechenden Signalleitungen 1603, 1604 und 1605 auf "Vorhanden" gesetzt. Für die Testpunktkandidaten der Nummern 4 und 5 werden die Testpunkteffekte der entsprechenden Signalleitungen 1612 und 1613 auf "Nichtvorhanden" gesetzt.
  • Es wird nun das Einstellen und der Übergang der Testpunktinformationen 1425 und der Testpunkt-Korrelationsinformationen 1426 durch die Korrelation hinsichtlich der Testpunktbestimmung im Schritt S1505 beschrieben.
  • Im Schritt S2201 werden die Testpunkt-Indexinformationen der Spalten 2402 bis 2405 der 24A in ansteigender Reihenfolge des Testpunktindexes 2405 (der Testkosten) angeordnet. Die Spalte 2401 in der Zeichnung gibt die neuen Nummern in ansteigender Ordnung an. Vom Schritt S2202 bis zum Schritt S2206 wird in der ansteigenden Reihenfolge vom Testpunktkandidaten Nummer 2 an festgestellt, ob sich im Schritt S2204 ein "Nichtvorhanden" für den Testpunkteffekt des Testpunktkandidaten ergibt und ob er im Schritt S2205 die Testpunkt-Indexbedingung erfüllt.
  • Für die Testpunkt-Indexbedingung wird hier angenommen, daß der Unterschied zwischen den Testkosten (zum Beispiel 894 im Fall des Testpunktkandidaten Nummer 2) nach dem Einfügen des Testpunktkandidaten und den Testkosten (1810) vor dem Einfügen des Testpunktkandidaten größer ist als ein Wert (93,9), der sich durch Multiplikation von 0,1 mit dem Unterschied zwischen den Testkosten (871) nach dem Einfügen des Testpunkts Nummer 1 unmittelbar vorher und den Testkosten (1810) vor dem Einfügen des Testpunkts ergibt. Diese Indexbedingung ist gleichwertig mit der, daß der Testpunktindex nach dem Einfügen des Testpunktkandidaten kleiner ist als 1716,1, und alle Testpunktkandidaten Nummer 2 bis Nummer 5 erfüllen diese Bedingung.
  • Folglich sind die Testpunktkandidaten mit einem "Nichtvorhanden" für den Testpunkteffekt, die die Testpunkt-Indexbedingung erfüllen, die Nummer 4 und die Nummer 5, der Kandidat Nummer 4 ("0-Kontrollpunkt" in der Signalleitung 1612) mit den kleineren Testkosten wird jedoch zuerst ausgewählt. Dann werden im Schritt S2207 die Signalleitung und der Testpunkttyp für den Testpunktkandidaten mit der Kandidatennummer 4 in den Rahmen für den Testpunkt Nummer 2 der 26A eingetragen. Außerdem wird im Schritt S2208 die Testpunkt-Gruppennummer = 1 für den Testpunkt der Testpunktnummer 2 eingestellt. Des weiteren wird im Schritt S2210 der Rückkehrwert für das Vorhandensein des neu bestimmten Testpunkts eingestellt und damit die Korrelation hinsichtlich der Testpunktbestimmung im Schritt S1505 beendet.
  • Dann kehrt im Schritt S1506 der Prozeß zur Testpunkt-Auswirkungsberechnung des Schrittes S1504 zurück, da ein Testpunkt neu bestimmt wurde. Da der Testpunkt-Auswirkungsbereich des gerade bestimmten "0-Kontrollpunktes" der Signalleitung 1612 die Signalleitungen 1601, 1612, 1613, 1614, 1615 und 1616 umfaßt, werden die Testpunkt-Auswirkungsinformationen für alle diese Signalleitungen auf "Vorhanden" gestellt. Im Ergebnis wird der Testpunkteffekt (3) für die Signalleitungen wie in der Spalte 2504 der 25A gezeigt verändert. Außerdem wird der Testpunkteffekt (3) für die Testpunktkandidaten wie in der Spalte 2413 der 24A gezeigt verändert.
  • Dann geht der Prozeß zur Korrelation hinsichtlich der Testpunktbestimmung im Schritt S1505 weiter. Dabei gibt es nach den Testpunkt-Auswirkungsinformationen 2413 für die Testpunktkandidaten keinen Testpunktkandidaten mit einem "Nichtvorhanden" in den Testpunkt-Auswirkungsinformationen (auch der Kandidat Nummer 5 wurde auf "Vorhanden" geändert). Im Schritt S2211 der 22 wird daher die Korrelation hinsichtlich des Testpunkt-Bestimmungsprozesses beendet, und der Rückkehrwert für den nicht existierenden, neu bestimmten Testpunkt wird wieder aufgenommen. Anhand dieses Rückkehrwertes wird im Schritt S1507 festgestellt, ob die Komplettierungsbedingung erfüllt ist. Da die eingestellte Nummer der vorhandenen Testpunkte gleich 2 ist, was die Komplettierungsbedingung für die Anzahl von Testpunkten = 4 nicht erfüllt, kehrt der Prozeß zum Schritt S1502 zurück.
  • Im Testpunkt-Indexberechnungsprozeß des Schrittes S1502 werden die Testkosten 2340 durch Berechnen von COP für die logische Schaltung mit den eingefügten Testpunkten 1, 2 wie in den Testpunktinformationen registriert wie in den Spalten 2331 bis 2335 der 23B gezeigt berechnet. Hinsichtlich der beim Berechnen der Testkosten berücksichtigten Fehler werden außer den Fehlern auf der Signalleitung der Spalte 2331 der 23B auch Fehler auf den Ausgangsleitungen der Elemente in den eingefügten Testpunkten berücksichtigt. Wie in den Spalten 2336 bis 2339 der 23B gezeigt werden auch die Differentialkoeffizienten der Testkosten und die CRFs berechnet. Auf der Basis des CRF werden fünf Testpunktkandidaten mit einem großen CRF ausgewählt und der Testpunktindex (die Testkosten) für jeden der Testpunktkandidaten berechnet. Die so erzeugten Testpunkt-Indexinformationen sind in den Spalten 2422 bis 2425 der 24B gezeigt.
  • Im anfänglichen Testpunkt-Bestimmungsprozeß des Schrittes S1503 werden im nächsten Schritt alle Inhalte der anfänglichen Testpunkteffekte (1) auf die Signalleitung und der Testpunkteffekte (1) auf die Testpunktkandidaten auf "Nichtvorhanden" gestellt, wie es in der Spalte 2512 der 25B und der Spalte 2431 der 24B gezeigt ist. Dann wird der Beobachtungspunkt auf der Signalleitung 1603 des Testpunktkandidaten mit den kleinsten Testkosten als Testpunkt für den Testpunkt Nummer 3 ausgewählt und in den Testpunktinformationen 1425 registriert. Die Testpunkt-Gruppennummer ist hier "2". Die Testpunktinformationen und die Testpunkt-Korrelationsinformationen zu diesem Zeitpunkt sind unter den Testpunktnummern 1 bis 3 der 26B gezeigt.
  • Bei der Testpunkt-Auswirkungsberechnung im Schritt S1504 wird der Testpunkt-Auswirkungsbereich durch den Beobachtungspunkt des Testpunkts Nummer 3 berechnet. Die Testpunktauwirkungen (2) auf die Signalleitungen sind in der Spalte 2513 der 25B gezeigt und die Testpunktauswirkungen (2) auf die Testpunktkandidaten in der Spalte 2432 der 24B.
  • Bei der Korrelation hinsichtlich der Testpunktbestimmung im Schritt S1505 wird für den Testpunkt unter der Testpunktnummer 4 der Beobachtungspunkt in der Signalleitung 1613 in den Testpunktinformationen 1425 registriert, der unter den Testpunktkandidaten mit einem "Nichtvorhanden" für den Testpunkteffekt (2) und einer Erfüllung der Testpunkt-Indexbedingung die minimalen Testkosten aufweist. Die Testpunkt-Gruppennummer ist "2". Die Testpunktinformationen und die Testpunkt-Korrelationsinformationen zu diesem Zeitpunkt sind unter den Testpunktnummern 1 bis 4 der 26B gezeigt.
  • Im Schritt S1507 geht der Prozeß zum Schritt S1508 weiter, da die Komplettierungsbedingung für die Anzahl von Testpunkten = 4 erfüllt ist. Im Datenausgabeprozeß wird der Inhalt der 26B als Testpunktinformationen 1425 und als Testpunkt-Korrelationsinformationen 1426 ausgegeben.
  • Die logische Schaltung der 16A wird damit durch Einfügen der Testpunkte zu der der 16B. Vom Testpunkt Nummer 1 an sind die Testpunkte der "1-Kontrollpunkt" 1651, der "0-Kontrollpunkt" 1661, der "Beobachtungspunkt" 1671 und der "Beobachtungspunkt" 1681.
  • In der 23C ist das berechnete Ergebnis für das COP der logischen Schaltung der 16B gezeigt. Die in der Spalte 2360 gezeigten Testkosten sind "252", und sie sind damit wesentlich besser als die Testkosten "1810" vor dem Einfügen der Testpunkte der 23A. Außerdem ist die Fehlererfassungswahrscheinlichkeit für einen 0-Degenerationsfehler auf der Signalleitung 1601 mit "0,0278" im Vergleich zu der minimalen Fehlererfassungswahrscheinlichkeit vor dem Einfügen des Testpunkts mit "0,0010 (0-Degenerationsfehler auf der Signalleitung 1603)" wesentlich besser. Die logische Schaltung weist damit nach dem Einfügen der Testpunkte der 16B im Vergleich zu der logischen Schaltung der 16A eine höhere Testbarkeit auf.
  • Es wird nun die Bearbeitungszeit für die Testpunktanalyse der vorliegenden Ausführungsform der 15 diskutiert. Die meiste Bearbeitungszeit wird zur Berechnung von COP (S1905) nach dem Einfügen der Testpunktkandidaten im Testpunkt-Indexberechnungsprozeß des Schrittes S1502 benötigt. Diese Bearbeitung umfaßt die Schleife der Schritte S1905 und S1906 in der Schleife der Schritte S1502 bis S1507, in der die Verschachtelung der Schleifen am tiefsten ist. Die Anzahl der ersten Schleifen ist gleich der Anzahl der Testpunktkandidaten. Die Anzahl der zweiten Schleifen ist ein Wert, der durch Subtraktion der Anzahl der nur durch die Korrelation hinsichtlich der Testpunktbestimmung im Schritt S1505 bestimmten Testpunkte von der Gesamtzahl der als Komplettierungsbedingung festgesetzten Testpunkte erhalten wird. Das heißt, daß die Bearbeitungszeit um die nur durch ersteres bestimmten Testpunkte verkürzt werden kann.
  • Es wird nun die Gesamtbearbeitungszeit für die Testpunktanalyse berechnet. Es wird erwartet, daß die Anzahl der Testpunkte, die durch die Korrelation hinsichtlich der Testpunktbestimmung im Schritt S1505 aufgezeigt werden, entsprechend etwa der halben Potenz der Anzahl von Gattern zunimmt. Der Grund dafür ist, daß sich die Anzahl der Elemente in der logischen Schaltung nicht groß verändert, daß aber die Anzahl der Eingangs/Ausgangselemente und die Anzahl von Speicherelementen zunimmt, wenn die Skala für eine logische Schaltung erhöht wird, weshalb entsprechend die Anzahl von Subschaltungen ohne Korrelation in der logischen Schaltung zunimmt. Wenn die Anzahl der Testpunktkandidaten, die Anzahl der Testpunkte und die Berechnungszeit für COP proportional zur Anzahl der Gatter ist, ist die Gesamtbearbeitungszeit für die Testpunktanalyse im ungünstigsten Fall proportional der zweieinhalbfachen Potenz der Anzahl von Gattern. Wenn bei der COP-Berechnung nur der Änderungswert für die Signalleitungen, das heißt das sogenannte bestandsgesteuerte Verfahren angewendet wird, ist die Berechnungszeit proportional der halben Potenz der Anzahl von Gattern. Die Gesamtbearbeitungszeit für die Testpunktanalyse ist daher proportional zur zweiten Potenz der Anzahl von Gattern. Wie oben angegeben ist die Bearbeitungszeit im Vergleich zum herkömmlichen Verfahren wesentlich kürzer und liegt in einem praktisch ausführbaren Bereich.
  • Andererseits ist die Möglichkeit der Minimalisierung der Testkosten durch die Korrelation hinsichtlich der Testpunktbestimmung bei der vorliegenden Ausführungsform, das heißt der Effekt der Testbarkeit in etwa gleich der beim herkömmlichen Verfahren. Der Grund dafür ist, daß für eine Signalleitung mit einem "Nichtvorhanden" für den Testpunkteffekt sich der relative numerische Wert des Testpunktindexes für den Fall, daß nach der Festlegung des Testpunkts die Schaltungsinformationen aktualisiert werden und der Testpunktindex neu berechnet wird, und für den Fall, daß der Testpunktindex vor der Bestimmung des Testpunkts verwendet wird, nicht unterscheidet.
  • Wie beschrieben kann die Vorrichtung zu Analyse von Testpunkten für logische Schaltungen dadurch eine Bestimmung der Testpunkte mit Auswirkungen auf die Testbarkeit auf gleichem Pegel mit hoher Geschwindigkeit durch Verringerung der COP-Berechnung im Testpunkt-Indexberechnungsabschnitt 1411 ausführen, daß der Testpunkt-Auswirkungsberechnungsteil 1413 für die Ausführung der Testpunkt-Auswirkungsberech nung und der Testpunkt-Bestimmungsabschnitt 1412 für die Ausführung der Korrelation hinsichtlich der Testpunktbestimmung vorgesehen werden.
  • Im folgenden wird eine weitere Ausführungsform der vorliegenden Erfindung beschrieben. Bei der zweiten Ausführungsform einer Vorrichtung zur Analyse von Testpunkten für logische Schaltungen wird der Testpunkt-Bestimmungsprozeß unter Verwendung von Informationen zur Aufteilung der logischen Schaltung in eine Anzahl von Subschaltungen ausgeführt. Der grundlegende Aufbau der vorliegenden Ausführungsform ist der gleiche wie in den 14 und 15 gezeigt.
  • Die 27 ist eine Ansicht zur Erläuterung der Testpunkt-Auswirkungsbereiche bei der Verwendung von Informationen zur Aufteilung der logischen Schaltung in eine Anzahl von Subschaltungen. Durch das Bezugszeichen 2702 wird eine Eingangselementgruppe der logischen Schaltung 2701 bezeichnet und durch das Bezugszeichen 2702 eine Ausgangselementgruppe. Die logische Schaltung 2701 wird durch die Informationen zur Aufteilung der logischen Schaltung in eine Anzahl von Subschaltungen in die Subschaltungen 2711, 2712, 2713 und 2714 aufgeteilt. Die Testpunkte 2721 und 2723 sind Kontrollpunkte, und die Testpunkte 2722 und 2724 sind Beobachtungspunkte.
  • Wenn der Testpunkt-Auswirkungsbereich auf die Subschaltung beschränkt wird, die den Testpunkt enthält, sind die Auswirkungsbereiche der Testpunkte 2721, 2722, 2723 und 2724 die Bereiche 2731, 2732, 2733 und 2734.
  • Im Testpunkt-Auswirkungsberechnungsprozeß S1504 kann bei der Bearbeitung des Schrittes S2101 in der 21 die Berechnung des Auswirkungsbereiches durch Beschränken auf eine Subschaltung und auf die Signalleitungen in der Subschaltung erfolgen.
  • Im Testpunkt-Indexberechnungsprozeß S1502 wird die Berechnung der Testpunktindexe für die Testpunktkandidaten auf die Subschaltung mit den Testpunktkandidaten beschränkt. Das heißt, daß im Prozeß des Schrittes S1905 der 19 die Kosten für die ganze Schaltung nach dem Einfügen der Testpunktkandidaten durch Berechnen der Kontrollierbarkeit und der Beobachtbarkeit für die Signalleitungen innerhalb der Subschaltung mit den Testpunktkandidaten berechnet wird, und die Kontrollierbarkeit und die Beobachtbarkeit für die anderen Signalleitungen vor dem Einfügen der Testpunktkandidaten verwendet wird.
  • Die Informationen zur Aufteilung der logischen Schaltung in eine Anzahl von Subschaltungen machen von Informationen über logische Blöcke im logischen Aufbau Gebrauch. Anderenfalls können die Informationen zur Aufteilung der logischen Schaltung vor der Testpunktanalyse erstellt werden. Die Aufteilung erfolgt vorzugsweise so, daß die Korrelation zwischen den Subschaltungen so klein wie möglich ist, oder so, daß die Anzahl der Verbindungen zwischen den Subschaltungen so klein wie möglich ist.
  • Mit dieser Ausführungsform wird im Testpunkt-Auswirkungsberechnungsprozeß S1504 die Anzahl der Signalleitung verringert, die eine Berechnung des Testpunkteffektes erfordern. Gleichermaßen kann im Testpunkt-Indexberechnungsprozeß S1502 die Anzahl der Signalleitungen verringert werden, die eine Berechnung der Kontrollierbarkeit und der Beobachtbarkeit nach dem Einfügen der Testpunktkandidaten erfordern. Entsprechend können diese Prozesse mit großer Geschwindigkeit ausgeführt werden.
  • Es wird im folgenden eine Ausführungsform des Testpunkt-Korrelationsinformationsanalyseprozesses der anderen Erfindung beschrieben. Bei dieser Ausführungsform werden aus den vorhandenen Testpunktinformationen 1425 nur die Testpunkt-Korrelationsinformationen 1426 erstellt. Die 28 ist ein Flußdiagramm für den Testpunkt-Korrelationsinformationsprozeß der vorliegenden Ausführungsform. Ein Unterscheidungsmerkmal gegenüber der Ausführungsform der Testpunktanalyse für logische Schaltungen der 15 ist, daß der Testpunkt-Indexberechnungsprozeß S1502 nicht ausgeführt wird, sondern als Testpunktkandidaten vorgegebene Testpunkte verwendet werden (Schritt S2802).
  • Das heißt, daß nach der Eingabe der Schaltungsinformationen 1422 im Schritt S1501 im Schritt S2802 anfänglich alle vorgegebenen Testpunkte als Testpunktkandidaten eingegeben werden. Die folgenden Prozesse werden ähnlich wie bei der ersten Ausführungsform ausgeführt. Unter den Testpunktkandidaten wird der Testpunktkandidat mit den kleinsten Testkosten als Testpunkt bestimmt, und es wird der Testpunkt-Auswirkungsbereich berechnet. Wenn ein Testpunktkandidat, der sich nicht im Auswirkungsbereich befindet, als Testpunkt bestimmt werden kann, wird der Auswirkungsbereich berechnet und ein weiterer neuer Testpunkt bestimmt. Dieser Prozeß wird wiederholt. Jeder der in diesem wiederholten Prozeß bestimmten Testpunkte wird mit der gleichen Gruppennummer versehen. Wenn dagegen kein neuer Testpunkt bestimmt wird und keine vorgegebene Anzahl von Testpunkten erhalten wird, kehrt der Prozeß zum Schritt S2802 zurück, und alle Testpunkte, die nicht in der Testpunktgruppe sind, werden als neue Testpunktkandidaten aufgestellt, und der Prozeß wird wiederholt, bis die Komplettierungsbedingung erfüllt ist.
  • Bei dem Prozeß der vorliegenden Ausführungsform erhöht sich die Anzahl der Testpunkte, die zu den einzelnen Testpunktgruppen gehören, da die Gruppierung der Testpunkte anhand der Testpunkt-Auswirkungsinformationen ohne Bezug zu den Testpunkt-Indexinformationen erfolgt, wenn die Testpunkte bereits bestimmt sind. Die Gruppennummer, die anzeigt, daß sich die Testpunkte nicht im gegenseitigen Auswirkungsbereich befinden, das heißt die Testpunkt-Korrelationsinformationen werden zu nützlichen Informationen für die Konstruktion der Testpunktschaltung. Wie später noch beschrieben, können die Testpunkte der gleichen Gruppe ein Teil der Testpunktschaltung sein, zum Beispiel ein Flip-Flop mit Scanfunktion für einen Testpunkt.
  • Es wird nun eine Ausführungsform für eine integrierte Halbleiterschaltung beschrieben, auf das das erwähnte Testpunkt-Analyseverfahren für logische Schaltungen angewendet wird. Die Testpunkte für diese integrierte Schaltung werden mit den genannten Testpunktinformationen optimal angeordnet. Des weiteren ist dies ein Beispiel dafür, daß die Testpunkt-Korrelationsinformationen ihre Auswirkungen bei der Verringerung der Schaltungsfläche für die Testpunkte zeigen.
  • Die 29 ist eine Darstellung des Aufbaus einer integrierten Halbleiterschaltung auf der Basis der vorliegenden Ausführungsform. Die integrierte Halbleiterschaltung stellt ein Beispiel für die Anwendung der vorliegenden Ausführungsform auf die logische Schaltung der 16B mit vier Testpunkten dar, und der Schaltungsaufbau ändert sich in einem Kontrollpunkt 1651, der in die Signalleitung 1602 eingefügt wird, und einem Kontrollpunkt 1662, der in die Signalleitung 1612 eingefügt wird, der Rest ist der gleiche wie bei der logischen Schaltung der 16B. Der Auswirkungsbereich des Kontrollpunkts 1651 und der Auswirkungsbereich des Kontrollpunkts 1662 überschneiden sich nicht, und beide Kontrollpunkte sind in der gleichen Gruppe enthalten.
  • Das heißt, daß das Flip-Flop mit Scanfunktion 1654, das mit der Test-Dateneingangsleitung des "1-Kontrollpunkts" 1651 verbunden ist, und das Flip-Flop mit Scanfunktion 1664, das mit der Test-Dateneingangsleitung des "0-Kontrollpunkts" 1661 verbunden ist, durch ein gemeinsam verwendetes Flip-Flop mit Scanfunktion 2905 ersetzt wird, und daß sich die Ausgangsleitung 2904 in eine Signalleitung 2901 und eine Signalleitung 2902 verzweigt, die zu dem Element 1653 bzw. dem Element 1663 führt. Der Inversionswert der Signalleitung 2902 wird über ein NOT-Gate 2903 dem Element 1663 zugeführt, so daß die Kontrollpunkte 1651 und 1661 im normalen Betrieb nicht arbeiten. Das Flip-Flop mit Scanfunktion 2905 befindet sich im Normalbetrieb immer auf dem Signalwert 0.
  • Bei dem gezeigten Schaltungsaufbau überschneiden sich die durch das Signal beeinflußten Bereiche nicht, auch wenn an die Test-Dateneingangsleitungen der beiden unabhängigen Kontrollpunkte 1651, 1661, die mit dem Flip-Flop mit Scanfunktion 2905 verbunden sind, das gleiche Signal angelegt wird. Es ist daher möglich, in dem Fall, daß zwei Flip-Flops mit Scanfunktion an den beiden Kontrollpunkten 1651 und 1661 vorgesehen sind und auf den Test-Dateneingangsleitungen verschiedene Signale eingegeben werden, einen äquivalenten Effekt für die Testbarkeit zu erhalten. Es ist damit möglich, die Schaltungsfläche für die Eingangselemente wie Flip-Flops mit Scanfunktion und dergleichen zu verringern.
  • Unter Berücksichtigung der Tatsache, daß die Dateneingangsleitungen für eine Anzahl von Testpunkten durch ein gemeinsam verwendetes Flip-Flop mit Scanfunktion ersetzt werden können, sind die Testpunkte vorzugsweise unabhängig, sie können aber auch in schwacher Korrelation zueinander stehen.
  • Bei der vorliegenden Ausführungsform kann daher in einer integrierten Halbleiterschaltung mit einer Anzahl von Testpunkten, wenn die Testpunkte voneinander unabhängig sind oder in schwacher Korrelation stehen, die Schaltungsfläche verkleinert werden, während die Testbarkeit erhalten bleibt, wenn ein Flip-Flop mit Scanfunktion gemeinsam für die Test-Dateneingangsleitungen für eine Anzahl von Testpunkten verwendet wird.
  • Erfindungsgemäß ist es möglich, eine praktisch anwendbare Analysevorrichtung aufzubauen, die Testpunkte in einer logischen Schaltung schnell analysieren kann.
  • Außerdem ist es erfindungsgemäß möglich, zur Konstruktion einer Testpunktschaltung mit einer geringen Belastung beizutragen, da es möglich ist, leicht eine Testpunkt-Korrelationsinformation zu erstellen, die Gruppen angibt, in denen sich die Testpunkt-Auswirkungsbereiche überlappen.
  • Erfindungsgemäß ist es schließlich möglich, eine integrierte Halbleiterschaltung bereitzustellen, bei der die Vergrößerung der Schaltungsfläche durch das Einfügen der Testpunkte auf der Basis der Testpunkt-Korrelationsinformation gering bleibt.

Claims (18)

  1. Analyseverfahren für integrierte Halbleiterschaltkreistestpunkte zum Festlegen von Testpunkt-Einfügestellen und Schaltkreis-Modifizierwegen eines durch die Verbindung mehrerer Zellen mit Signalleitungen gebildeten integrierten Halbleiterschaltkreises, folgende Schritte umfassend: Speichern eines Testpunkt-Einfügearchivs, das, bezüglich der mehreren Zellen und Signalleitungen, aus denen der integrierte Halbleiterschaltkreis besteht, eine Information über Sätze bestehend aus einem testpunkteinfügefähigen Zelltyp, einer Pin-Nummer, einer Testpunktart und einem Schaltkreis-Modifizierweg aufweist; und Festlegen der Testpunkt-Einfügestellen und der Schaltkreis-Modifizierwege auf der Basis des Testpunkteinfügearchivs.
  2. Verfahren nach Anspruch 1, wobei das Testpunkt-Einfügearchiv, das Sätze bestehend aus einem testpunkteinfügefähigen Zelltyp, einer Pin-Nummer, einer Testpunktart und einem Schaltkreis-Modifizierweg auflistet, einen Satz aufweist, in welchem die Signalverzögerung zwischen jeweils einem der Eingabe-Pins und einem Ausgabe-Pin der Zelle vor dem Testpunkteinfügen und die Signalverzögerung von dem jeweiligen Eingabe-Pin zu dem Ausgabe-Pin nach dem Testpunkteinfügen fast gleich sind, oder der Unterschied zwischen den Signalverzögerungen kleiner ist als die Signalverzögerung zwischen jeweils einem der Eingabe-Pins und einem Ausgabe-Pin einer Zelle mit einer 2-Input-AND-Funktion oder einer 2-Input-OR-Funktion.
  3. Analysegerät für integrierte Halbleiterschaltkreistestpunkte zum Festlegen von Testpunkt-Einfügestellen und Schaltkreis-Modifizierwegen eines durch die Verbindung mehrerer Zellen mit Signalleitungen gebildeten integrierten Halbleiterschaltkreises, mit: einem Speicher zum Speichern eines Testpunkt-Einfügearchivs, das für die mehreren Zellen und Signalleitungen vorbereitete Informationssätze bestehend aus einem testpunkteinfügefähigen Zelltyp, einer Pin-Nummer, einer Testpunktart und einem Schaltkreis-Modifizierweg auflistet; einer Testpunkt-Einfügestellen-Begrenzungseinheit zum Festlegen einer Unterscheidung zwischen einer Testpunkteinfüge-Fähigkeit bzw. Nichtfähigkeit in jede der Signalleitungen in dem Schaltkreis für jede Testpunktart aus Schaltkreisinformationen des integrierten Halbleiterschaltkreises bzw. des Testpunkt-Einfügearchivs und zum Erhalten einer Testpunkt-Einfügestelleninformation, die eine Information über einen Testpunkt und über einen dem Testpunkt entsprechenden Schaltkreis-Modifizierweg enthält, wenn festgelegt ist, daß der Testpunkt einfügefähig ist; einer Testpunkt-Index-Berechnungseinheit zum Berechnen eines Indexes, der einen Testfähigkeitsgrad für jeden Satz bestehend aus einer testpunkteinfügefähigen Signallei tung und der Testpunktart unter der Annahme, daß der Testpunkt des Satzes eingefügt ist, ausdrückt; und einer Testpunkt-Festlegeeinheit, die eine Signalleitung mit einem großen Index, der, entsprechend der Signalleitung, einen Testfähigkeitsgrad und eine Testpunktart ausdrückt, als einen Testpunkt aus den testpunkteinfügefähigen Signalleitungen festlegt.
  4. Gerät nach Anspruch 3, wobei das Testpunkt-Einfügearchiv, das Sätze bestehend aus einem testpunkteinfügefähigen Zelltyp, einer Pin-Nummer, einer Testpunktart und einem Schaltkreis-Modifizierweg auflistet, einen Satz aufweist, in welchem die Signalverzögerung zwischen jeweils einem der Eingabe-Pins und einem Ausgabe-Pin der Zelle vor dem Testpunkteinfügen und die Signalverzögerung zwischen dem jeweiligen Eingabe-Pin und dem Ausgabe-Pin nach dem Testpunkteinfügen fast gleich ist oder der Unterschied zwischen den Signalverzögerungen kleiner ist als die Signalverzögerung zwischen jeweils einem der Eingabe-Pins und einem Ausgabe-Pin einer Zelle mit einer 2-Input-AND-Funktion oder einer 2-Input-OR-Funktion.
  5. Analyseverfahren für integrierte Halbleiterschaltkreistestpunkte zum Festlegen von Testpunkt-Einfügestellen und Schaltkreis-Modifizierwegen eines durch die Verbindung mehrerer Zellen mit Signalleitungen gebildeten integrierten Halbleiterschaltkreises, mit folgenden Schritten: im voraus Vorbereiten einer Testpunkt-Einfüge-Verbotsinformation, um bezüglich mehrerer Zellen und Signalleitungen, aus denen der integrierte Halbleiterschaltkreis besteht, Sätze bestehend aus einer Signalleitung und einer eine Testpunkt-Einfügung verbietende Testpunktart zu spezifizieren; und Festlegen von Testpunkt-Einfügestellen und Schaltkreis-Modifizierwegen dadurch, daß die in der Testpunkt-Einfüge-Verbotsinformation spezifizierten Sätze bestehend aus einer Signalleitung und einer Testpunktart ausgeschlossen werden.
  6. Verfahren nach Anspruch 5, wobei die Testpunkt-Einfüge-Verbotsinformation testpunkteinfügungsverbietende Signalleitungen auf einem durch Bestimmung eines Anfangsund eines Endpunkts spezifizierten Pfad spezifiziert und eine Information aufweist, die den Anfangspunkt und den Endpunkt des Pfades durch einen Signalleitungsnamen, einen Anschlußnamen, einen Satz bestehend aus einer Zellposition und einer Pin-Nummer, einen Satz bestehend aus einem Zelltypnamen und einer Pin-Nummer, alle Eingabe-Anschlüsse/kontrollierbaren Elemente und/oder alle Ausgabe-Anschlüsse beobachtbaren Elemente ausdrückt.
  7. Verfahren nach Anspruch 5, wobei die Testpunkt-Einfüge-Verbotsinformation eine Information aufweist, die testpunkteinfügungsverbietende Signalleitungen in einem durch Bestimmung eines Unterschaltkreises des integrierten Schaltkreises spezifizierten Block spezifiziert.
  8. Analysegerät für integrierte Halbleiterschaltkreistestpunkte zum Festlegen von Testpunkt-Einfügestellen und Schaltkreis-Modifizierwegen eines durch die Verbindung mehrerer Zellen mit Signalleitungen gebildeten integrierten Halbleiterschaltkreises, mit: einem Speicher zum Speichern einer Testpunkt-Einfüge-Verbotsinformation, die Sätze bestehend aus einer Signalleitung und einer Testpunktart spezifiziert, für die ein Testpunkt-Einfügen verboten ist; einer Testpunkt-Einfügestellen-Begrenzungseinheit zum Erhalten einer Testpunkt-Einfügestellen-Begrenzungsinformation, die die Unterscheidung zwischen Testpunkteinfüge-Fähigkeit oder Nichtfähigkeit in jeder Signalleitung des Schaltkreises für jede Testpunktart durch Verwendung von Schaltkreisinformationen des Schaltkreises und der Testpunkt-Einfüge-Verbotsinformation verknüpft; einer Testpunkt-Index-Berechnungseinheit zum Berechnen eines Indexes, der, unter der Bedingung des Vorhandenseins oder Nichtvorhandenseins eines schon in dem Schaltkreis gesetzten Testpunkts einen Testfähigkeitsgrad für jeden Satz bestehend aus einer Signalleitung und einer testpunkteinfügefähigen Testpunktart ausdrückt, wobei angenommen wird, daß der Testpunkt des Satzes eingefügt ist; und mit einer Testpunkt-Festlegeeinheit zum Festlegen eines Satzes bestehend aus einer Signalleitung und einer eine große durch den Testfähigkeitsgradindex beurteilte Testfähigkeit aufweisenden Testpunktart als Testpunkt aus dem erhaltenen Satz, bestehend aus einer Signalleitung und an einer testpunkteinfügefähigen Testpunktart.
  9. Gerät nach Anspruch 8, wobei die Testpunkt-Einfüge-Verbotsinformation die testpunkteinfügungsverbietenden Signalleitungen auf einem durch Bestimmung eines Anfangs- und Endpunktes spezifizierten Pfad spezifiziert, und eine Information beinhaltet, die den Anfangs- und den Endpunkt des Pfades durch einen Signalleitungsnamen, einen Anschlußnamen und/oder einen Satz bestehend aus Zellposition und Pin-Nummer ausdrückt.
  10. Gerät nach Anspruch 8, wobei die Testpunkt-Einfüge-Verbotsinformation eine Information aufweist, die testpunkteinfügungsverbietende Signalleitungen in einem durch Bestimmung eines Unterschaltkreises für den integrierten Schaltkreis spezifizierten Block spezifiziert.
  11. Gerät nach einem der Ansprüche 8 bis 10, mit: einem Speicher zum Speichern eines Testpunkt-Einfügearchivs, das für die mehreren Zellen und Signalleitungen Sätze bestehend aus einem testpunkteinfügefähigen Zelltyp, einer Pin-Nummer, einer Testpunktart und einem Schaltkreis-Modifizierweg auflistet, um eine einfügefähige Testpunktart und einen Schaltkreis-Modifizierweg für jede in dem inte grierten Halbleiterschaltkreis durch einen Zelltyp und eine Pin-Nummer spezifizierte Signalleitung zu spezifizieren; einer Testpunkteinfügestellen-Begrenzungseinheit, die einen Unterschied zwischen einer Testpunkteinfügefähigkeit und Nichtfähigkeit für jede der jeweiligen Signalleitung entsprechende Testpunktart dadurch festlegt, daß die Testpunkt-Einfügeverbotsinformation, die Sätze aus einer Signalleitung und einer testpunkteinfügungsverbietenden Testpunktart spezifiziert, eine Schaltkreisinformation des integrierten Halbleiterschaltkreises und das Testpunkt-Einfügearchiv verwendet werden, und die eine dem Testpunkt entsprechende Testpunkt-Einfügestelleninformationen erhält, wenn festgelegt ist, daß der Testpunkt einfügefähig ist.
  12. Analyseverfahren nach einem der Ansprüche 1, 2 oder 5 bis 7 für logische Schaltkreis-Testpunkte, das Testpunkt-Einfügestellen und Schaltkreisarten dadurch festlegt, daß ein Testaufwand berechnet wird, wenn die Testpunkte in die entsprechenden Signalleitungen eines durch die Verbindung mehrerer Elemente gebildeten logischen Schaltkreises eingefügt wurden, mit folgenden Schritten: Auswählen einer vorbestimmten Anzahl von Testpunkt-Kandidaten in absteigender Ordnung ihres Test-Fähigkeitsgrades, der durch die Berechnung eines Testaufwands oder eines Näherungswerts eines Testaufwands für jede der Signalleitungen in der logischen Schaltung erhalten wurde; Erhalten eines Wirkbereichs, in welchem die Testfähigkeit variiert, wenn angenommen wird, daß jeder der Testpunkt-Kandidaten eingefügt wird; und Bestimmen einer Kandidatengruppe von Testpunkt-Kandidaten, deren Wirkbereiche sich nicht oder sich mit vernachlässigbarer Auswirkung überlappen, als neue Testpunktgruppe, deren Testpunkte simultan testbar sind.
  13. Analyseverfahren nach einem der Ansprüche 1, 2 oder 5 bis 7 für logische Schaltkreis-Testpunkte, das Testpunkt-Einfügestellen und Schaltkreisarten dadurch festlegt, daß ein Testaufwand berechnet wird, wenn die Testpunkte in die entsprechenden Signalleitungen eines durch die Verbindung mehrerer Elemente gebildeten logischen Schaltkreises, eingefügt wurden, mit folgenden Schritten: Erhalten eines Testaufwands oder eines Näherungswerts für den Testaufwand für jede Signalleitung in dem logischen Schaltkreis unter der Bedingung des Nichtausführens bzw. Ausführens einer Testpunkteinfügung für eine Signalleitung; Erhalten, basierend auf dem für jede der Signalleitungen erhaltenen Testaufwand, eines Wirkbereichs, in welchem eine Testfähigkeit variiert, wenn angenommen wird, daß jeder der Testpunkt-Kandidaten eingefügt wird, wobei die Testpunkt-Kandidaten dadurch festgelegt werden, daß eine vorbestimmte Anzahl von Testpunkten in absteigender Ordnung ihres Testfähigkeitsgrades ausgewählt werden; und Bestimmen einer Kandidatengruppe von Testpunkt-Kandidaten, die nicht in Wirkbereichen anderer Gruppen von Testpunkt-Kandidaten beinhaltet sind, als neue Testpunktgruppe, deren Testpunkte simultan testbar sind, dadurch, daß ein Wirkbereich von jedem Testpunkt-Kandidat in absteigender Ordnungsabfolge seines Testfähigkeitsgrads untersucht wird.
  14. Analyseverfahren nach einem der Ansprüche 1, 2 oder 5 bis 7 für logische Schaltkreis-Testpunkte, das Testpunkt-Einfügestellen und Schaltkreisarten dadurch festlegt, daß ein Testaufwand berechnet wird, wenn die Testpunkte in die entsprechenden Signalleitungen eines durch die Verbindung mehrerer Elemente gebildeten logischen Schaltkreises eingefügt wurden, mit folgenden Schritten: Erhalten eines Näherungswertes für eine Testaufwandreduktion (nachfolgend bezeichnet als CRF) für jede der Signalleitungen in dem logischen Schaltkreis unter der Bedingung der Absenz oder Präsenz der Testpunkteinfügung für die jeweilige Signalleitung; Auswählen einer vorbestimmten Anzahl von Testpunkt-Kandidaten in absteigender Ordnung der CRF; Erhalten eines Testaufwands, wenn angenommen wird, daß jeder der Testpunkt-Kandidaten eingefügt ist; Festlegen der Absenz oder Präsenz einer Wirkung jedes gesetzten Testpunkts auf den Testaufwand der anderen Testpunkt-Kandidaten, wenn jeder der Testpunkt-Kandidaten als Testpunkt in Reihenfolge der ansteigenden Ordnung des Testaufwands gesetzt ist; Bestimmen eines Testpunkt-Kandidaten als neue Testpunktgruppe, dessen Wirkung auf den Testaufwand für die anderen Testpunkt-Kandidaten nicht existent oder vernachlässigbar ist; Berechnen der Wirkungen des neuen Testpunkts auf die anderen Testpunkt-Kandidaten; und Wiederholen der obigen Schritte.
  15. Verfahren nach Anspruch 14, wobei dann, wenn eine vorgegebene Komplettierbedingung, wenn der Bestimmungsprozeß der neuen Testpunktgruppe, basierend auf dem Vorhandensein oder Nichtvorhandensein von Auswirkungen einer Testpunktwirkung, für alle der vorbestimmten Anzahl von Testpunkt-Kandidaten ausgeführt ist, nicht erfüllt ist, die CRFs für den logischen Schaltkreis mit bereits bestimmten Testpunkten wiederholt berechnet werden, weiterhin eine nötige Anzahl von Testpunkt-Kandidaten wiederholt in absteigender Ordnung der CRFs bestimmt werden, und der Bestimmungsprozeß einer neuen Testpunktgruppe wiederholt wird, wobei die Wirkungen jedes der wiederholt bestimmten Testpunkt-Kandidaten berücksichtigt wird.
  16. Verfahren nach Anspruch 15, wobei dann, wenn die CRF wiederholt berechnet wird, zuerst eine aktualisierte gruppenidentifizierende Information zu der neuen Testpunktgruppe hinzugefügt wird, und die gruppenidentifizierende Information für jeden Testpunkt der neuen Testpunktgruppe gekennzeichnet ist.
  17. Analysegerät nach einem der Ansprüche 3, 4 oder 8 bis 11 für logische Schaltkreis-Testpunkte, das Testpunkt-Einfügestellen und Schaltkreistypen dadurch festlegt, daß ein Testaufwand berechnet wird, wenn die Testpunkte in die entsprechenden Signalleitungen eines durch die Verbindung mehrerer Elemente gebildeten logischen Schaltkreises eingefügt sind, mit: einer Testpunkt-Index-Berechnungseinheit zum Erhalten eines Testaufwands oder eines Näherungswertes eines Testaufwands für jede der Signalleitungen in dem logischen Schaltkreis unter der Bedingung des Nichtausführens bzw. Ausführens der Testpunkteinfügung für die Signalleitung, und zum Auswählen, basierend auf einem erhaltenen Testaufwand oder einem erhaltenen Näherungswert für den Testaufwand für jede Signalleitung in dem logischen Schaltkreis, einer vorgegebenen Anzahl von Testpunkt-Kandidaten in absteigender Ordnung des festgestellten Testfähigkeitsgrads; einer Testpunkt-Wirkungs-Berechnungseinheit zum Berechnen, ob die Testfähigkeit jedes anderen Testpunkt-Kandidaten durch den Testpunkt, der gerade vorher gesetzt wurde, beeinträchtigt ist; und einer Testpunkt-Festlegeeinheit zum Wiederholen eines Prozesses zum Bestimmen eines Testpunkt-Kandidaten mit einem höchsten Testfähigkeitsgrad als einen Testpunkt, und mit einem Prozeß zum Bestimmen eines Testpunkt-Kandidaten als nächsten Testpunkt, der nicht die zuvor genannte Wirkung zwischen dem Testpunkt-Kandidaten und dem gesetzten Testpunkt aufweist.
  18. Gerät nach Anspruch 17, wobei die Testpunktfestlegeeinheit eine Testpunkt-Korrelationsinformation ausgibt, die Testpunkte als in derselben Gruppe identifiziert, deren Wirkbereiche sich nicht überschneiden, wobei ein Testfähigkeitsgrad für jede der Signallinien in jedem Wirkbereich dadurch variiert, daß ein Testpunkt in dem Wirkbereich bestimmt ist.
DE69814184T 1997-01-06 1998-01-06 Verfahren zur Analyse von Prüfpunkten logischer Schaltungen und Einrichtungen zur Analyse von Prüfpunkten logischer Schaltungen Expired - Fee Related DE69814184T2 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP00036397A JP3910244B2 (ja) 1997-01-06 1997-01-06 論理回路検査点の解析方法
JP36397 1997-01-06
JP31173897 1997-11-13
JP31173897A JP3941191B2 (ja) 1997-11-13 1997-11-13 半導体集積回路検査点の解析方法,解析装置

Publications (2)

Publication Number Publication Date
DE69814184D1 DE69814184D1 (de) 2003-06-12
DE69814184T2 true DE69814184T2 (de) 2004-04-08

Family

ID=26333334

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69814184T Expired - Fee Related DE69814184T2 (de) 1997-01-06 1998-01-06 Verfahren zur Analyse von Prüfpunkten logischer Schaltungen und Einrichtungen zur Analyse von Prüfpunkten logischer Schaltungen

Country Status (4)

Country Link
US (1) US6038691A (de)
EP (1) EP0852353B1 (de)
KR (1) KR100499818B1 (de)
DE (1) DE69814184T2 (de)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6363520B1 (en) * 1998-06-16 2002-03-26 Logicvision, Inc. Method for testability analysis and test point insertion at the RT-level of a hardware development language (HDL) specification
US7036060B2 (en) * 1998-09-22 2006-04-25 Hitachi, Ltd. Semiconductor integrated circuit and its analyzing method
US6301688B1 (en) * 1998-11-24 2001-10-09 Agere Systems Optoelectronics Guardian Corp. Insertion of test points in RTL designs
US6553548B1 (en) * 1999-12-14 2003-04-22 International Business Machines Corporation System and method for recovering from design errors in integrated circuits
KR100381959B1 (ko) * 2000-08-31 2003-05-01 삼성전자주식회사 테스트 포인트가 삽입된 반도체 집적회로 장치
US6745373B2 (en) * 2001-02-20 2004-06-01 International Business Machines Corporation Method for insertion of test points into integrated circuit logic designs
US6782515B2 (en) 2002-01-02 2004-08-24 Cadence Design Systems, Inc. Method for identifying test points to optimize the testing of integrated circuits using a genetic algorithm
JP2005533951A (ja) * 2002-07-24 2005-11-10 アコ ブランズ インコーポレーティッド 展示品を固定する錠
JP2005135226A (ja) * 2003-10-31 2005-05-26 Matsushita Electric Ind Co Ltd 半導体集積回路のテスト回路挿入方法及び装置
JP2005149273A (ja) * 2003-11-18 2005-06-09 Matsushita Electric Ind Co Ltd 半導体集積回路のフロアプラン装置及びフロアプラン方法
US20060004859A1 (en) * 2004-05-05 2006-01-05 Kolman Robert S Methods and apparatus that use contextual test number factors to assign test numbers
SG126774A1 (en) * 2005-04-06 2006-11-29 Agilent Technologies Inc Method for determining a set of guard points and asystem for use thereof
US20070276624A1 (en) * 2006-05-26 2007-11-29 Inventec Corporation Method for improving test suggestion report on electronic parts
CN101153889B (zh) * 2006-09-29 2010-09-22 英业达股份有限公司 故障检测系统及其方法
JP5136043B2 (ja) * 2007-02-22 2013-02-06 富士通セミコンダクター株式会社 論理回路および記録媒体
JP2008293088A (ja) * 2007-05-22 2008-12-04 Nec Electronics Corp 半導体集積回路及びその設計方法
US7882454B2 (en) * 2008-04-28 2011-02-01 International Business Machines Corporation Apparatus and method for improved test controllability and observability of random resistant logic
JP2011112434A (ja) * 2009-11-25 2011-06-09 Renesas Electronics Corp 論理回路用テストポイント挿入方法、論理回路試験装置
JP6036134B2 (ja) * 2012-10-05 2016-11-30 富士通株式会社 設計支援装置、設計支援方法、および設計支援プログラム
JP6295113B2 (ja) * 2014-03-17 2018-03-14 ルネサスエレクトロニクス株式会社 自己診断装置及び自己診断方法
US10438682B2 (en) * 2017-12-21 2019-10-08 International Business Machines Corporation List insertion in test segments with non-naturally aligned data boundaries
CN117574851B (zh) * 2024-01-11 2024-04-19 上海合见工业软件集团有限公司 一种在eda工具中重构电路原理图的方法、设备及存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4703481A (en) * 1985-08-16 1987-10-27 Hewlett-Packard Company Method and apparatus for fault recovery within a computing system
US5187712A (en) * 1990-02-26 1993-02-16 At&T Bell Laboratories Pseudo-exhaustive self-test technique
US5278842A (en) * 1991-02-04 1994-01-11 International Business Machines Corporation Delay test coverage enhancement for logic circuitry employing level sensitive scan design
US5450414A (en) * 1993-05-17 1995-09-12 At&T Corp. Partial-scan built-in self-testing circuit having improved testability
US5539652A (en) * 1995-02-07 1996-07-23 Hewlett-Packard Company Method for manufacturing test simulation in electronic circuit design
US5737340A (en) * 1996-07-01 1998-04-07 Mentor Graphics Corporation Multi-phase test point insertion for built-in self test of integrated circuits

Also Published As

Publication number Publication date
KR100499818B1 (ko) 2005-11-22
DE69814184D1 (de) 2003-06-12
US6038691A (en) 2000-03-14
EP0852353A2 (de) 1998-07-08
EP0852353B1 (de) 2003-05-07
KR19980070249A (ko) 1998-10-26
EP0852353A3 (de) 1999-04-07

Similar Documents

Publication Publication Date Title
DE69814184T2 (de) Verfahren zur Analyse von Prüfpunkten logischer Schaltungen und Einrichtungen zur Analyse von Prüfpunkten logischer Schaltungen
DE60116769T2 (de) Verfahren und system zur hierarchischen metallenden-, einschliessungs- und belichtungsprüfung
DE602004000228T2 (de) Integrierte Halbleiterschaltungsanordnung mit Signalregenerator für Prüfsignale und dazugehörige automatische Entwurfs-Vorrichtung, -Verfahren und -Programme
DE69838835T2 (de) Verfahren zur Prüfung und zur Darstellung einer Hardware durch Zerlegung und Aufteilung
DE19519794C2 (de) Halteschaltung
DE1538604B2 (de) Verfahren zum realisieren einer elektrischen integrierten schaltung
EP0144078A2 (de) Verfahren und Anordnung zum Prüfen einer Schaltung nach der Abfragepfad-Technik
DE10225381A1 (de) Verfahren und Vorrichtung zum Speichern von Speichertestinformantion
DE60005670T2 (de) Aktualisierung der platzierung während der technologieabbildung
DE2349324A1 (de) Verfahren und vorrichtung zum pruefen funktioneller logischer schaltungen
DE102015200694A1 (de) Verfahren, computersystem und computerlesbares speichermedium zum erzeugen eines layouts eines integrierten schaltkreises
DE102019102484A1 (de) Verarbeitung von dreidimensionalen Bilddatensätzen
DE10102141A1 (de) Integrierter Halbleiter-Schaltkreis mit einer verminderten Zeitdifferenz und Layout-Verfahren bei der Konstruktion eines integrierten Halbleiter-Schaltkreises
DE102013106541A1 (de) System zum Entwerfen einer Halbleitervorrichtung, die hergestelle Vorrichtung und Verfahren zur Verwendung des Systems
DE69533567T2 (de) Vorrichtung und Verfahren zum Auffinden von False-Timing-Paths in digitalen Schaltkreisen
DE4031136A1 (de) Fehlersimulationsverfahren
EP0580663A1 (de) Verfahren zur verifikation datenverarbeitender systeme.
DE19704658A1 (de) Entwurfshilfsvorrichtung und -verfahren zum Entwerfen eines Halbleiterbauelements
DE69718134T2 (de) Verfahren zur Herstellung einer hochintegrierten Schaltung
Dey et al. Corolla based circuit partitioning and resynthesis
DE69725203T2 (de) Verfahren und Apparat zur Gitternetzerzeugung mit einem Konturschutzüberzug
DE10000451A1 (de) Taktsignalanalyseeinrichtung und Taktsignalanalyseverfahren
DE102019124928A1 (de) Integriertes schaltungsdesign unter verwendung von fuzzy-maschinenlernen
DE10205559B4 (de) Integrierte Schaltung und Verfahren und Vorrichtung zum Entwurf einer integrierten Schaltung
DE60224378T2 (de) Verfahren zur Erzeugung eines Testmusters für die Simulation und/oder Prüfung des Layouts einer integrierten Schaltung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee