DE10297600T5 - Gerät und Verfahren zur Verarbeitung von Ereignissen für ereignisbasierte Hochgeschwindigkeitstestsysteme - Google Patents

Gerät und Verfahren zur Verarbeitung von Ereignissen für ereignisbasierte Hochgeschwindigkeitstestsysteme Download PDF

Info

Publication number
DE10297600T5
DE10297600T5 DE10297600T DE10297600T DE10297600T5 DE 10297600 T5 DE10297600 T5 DE 10297600T5 DE 10297600 T DE10297600 T DE 10297600T DE 10297600 T DE10297600 T DE 10297600T DE 10297600 T5 DE10297600 T5 DE 10297600T5
Authority
DE
Germany
Prior art keywords
event
data
events
processing
clock
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.)
Withdrawn
Application number
DE10297600T
Other languages
English (en)
Inventor
Glen Santa Clara Gomes
Anthony Santa Clara Le
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.)
Advantest Corp
Original Assignee
Advantest Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Advantest Corp filed Critical Advantest Corp
Publication of DE10297600T5 publication Critical patent/DE10297600T5/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • 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/319Tester hardware, i.e. output processing circuits
    • G01R31/3193Tester hardware, i.e. output processing circuits with comparison between actual response and known fault free response
    • G01R31/31937Timing aspects, e.g. measuring propagation delay
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • G01R31/318328Generation of test inputs, e.g. test vectors, patterns or sequences for delay tests
    • 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/319Tester hardware, i.e. output processing circuits
    • G01R31/31917Stimuli generation or application of test patterns to the device under test [DUT]
    • G01R31/31919Storing and outputting test patterns
    • 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/319Tester hardware, i.e. output processing circuits
    • G01R31/31917Stimuli generation or application of test patterns to the device under test [DUT]
    • G01R31/31922Timing generation or clock distribution

Abstract

Gerät zur Verarbeitung von Ereignissen zur Verwendung mit einem ereignisbasierten Testsystem zum Testen eines Halbleiterbauelementprüflings (DUT), umfassend:
einen Ereignisspeicher zum Speichern von Ereignisdaten eines jeden Ereignisses, wobei die Ereignisdaten Zeitablaufdaten für jedes Ereignis beinhalten, welche aus einem ganzzahligen Vielfachen einer Taktperiode (Ereigniszähldaten) und einem Bruchteil der Taktperiode (Ereignisnoniusdaten) gebildet werden;
eine Ereignissummierungslogik zur Summierung der Zeitablaufdaten und zur Erzeugung der summierten Zeitablaufdaten in paralleler Form; und
einen Ereignisgenerator zur Erzeugung von Ereignissen, die durch die Ereignisdaten auf der Grundlage der summierten Zeitablaufdaten erzeugt werden, die in paralleler Form aus der Ereignissummierungslogik erhalten werden;
wobei die Ereignisse in den Ereignisdaten als Gruppen aus Ereignissen spezifiziert werden, wobei jede Gruppe aus einem Basisereignis und wenigstens einem Nebenereignis aufgebaut ist.

Description

  • Erfindungsgebiet
  • Diese Erfindung betrifft ein Halbleitertestsystem zum Testen von Halbleiterbauelementen und insbesondere ein Gerät und ein Verfahren zur Berechnung des Ereigniszeitablaufs zur Erzeugung von Testmustern für ein ereignisbasiertes Hochgeschwindigkeitstestsystem zum Evaluieren eines Halbleiterprüflings, wobei der Zeitablauf eines jeden Ereignisses entweder durch eine Zeitdauer von einem bestimmten Basisereignis oder von der Zeitdauer eines Nebenereignisses definiert wird.
  • Erfindungshintergrund
  • Beim Testen von Halbleiterbauelementen, wie etwa integrierten Schaltungen und hochintegrierten Schaltungen, durch ein Halbleitertestsystem, wie etwa einen IC-Tester, wird ein zu testendes IC-Bauelement mit Testsignalen versehen, die von einem IC-Tester an seinen entsprechenden Pins zu festgelegten Testzeitpunkten erzeugt werden. Der IC-Tester empfängt Ausgangssignale vom IC-Prüfling, die in Erwiderung auf die Testsignale erzeugt werden. Die Ausgangssignale werden abgetastet, d. h. durch Abtastsignale mit festgelegten Zeitabläufen abgefragt, um mit Erwartungsdaten verglichen zu werden, um zu bestimmen, ob das IC-Bauelement korrekt funktioniert.
  • Der Zessionar dieser Erfindung hat ein ereignisbasiertes Testsystem entwickelt, wobei die gewünschten Testsignale und Abtastsignale direkt durch Daten aus einem Ereignisspeicher auf einer Per-Pin-Basis erzeugt werden. Bei einem Ereignisbasierten Testsystem werden die Testdaten in Form von Ereignissen und ihrer Zeitabläufe beschrieben, wobei Ereignisse irgendwelche Veränderungen des Logikzustands in den Signalen, die zum Testen eines Halbleiterprüflings verwendet werden. Beispielsweise sind solche Veränderungen das Ansteigen und das Abfallen von Testsignalen (Steuerereignisse) und Abtastsignalen (Abtastereignisse oder Abfrageereignisse). Typischerweise wird der Zeitablauf eines jeden Ereignisses entweder als die Zeitdauer ab dem jüngsten Ereignis (unmittelbar vor dem momentanen Ereignis) oder in absoluter Zeit (ab der Zeit Null) definiert. Die vorliegende Erfindung ist auf solch ein ereignisbasiertes Testsystem gerichtet. Ein Beispiel für den grundlegenden Aufbau eines ereignisbasierten Testsystems ist in einem Blockdiagramm von 1 gezeigt.
  • In 1 schließt das ereignisbasierte Testsystem einen Hostrechner 12 und eine Bus-Schnittstelle 13 ein, die beide an einen Systembus 14 angeschlossen sind, ferner einen internen Bus 15, eine Adresssteuerlogik 18, einen Ausfallspeicher 17, einen Ereignisspeicher 30, der aus einem Ereigniszählspeicher 20 und aus einem Ereignisnoniusspeicher 21 besteht, eine Ereignissummierungs- und -skalierungslogik 22, einen Ereignisgenerator 24 und eine Pinelektronik 26. Das ereignisbasierte Testsystem evaluiert einen Halbleiterprüfling (DUT) 28, der an die Stiftelektronik 26 angeschlossen ist.
  • Ein Beispiel für den Hostrechner 12 ist ein Arbeitsplatzrechner, der darin ein UNIX-Betriebssystem aufweist. Der Hostrechner 12 fungiert als eine Benutzerschnittstelle, um es einem Benutzer zu ermöglichen, den Beginn und das Anhalten des Testbetriebs anzuweisen, ein Testprogramm und andere Testbedingungen zu laden oder um im Hostrechner eine Analyse der Testergebnisse durchzuführen. Der Hostrechner 12 tritt mit einem Hardware-Testsystem über den Systembus 14 und die Busschnittstelle 13 in Verbindung.
  • Der interne Bus 15 ist ein Bus im Hardware-Testsystem und er ist üblicherweise an die meisten funktionalen Blöcke angeschlossen, wie etwa die Adresssteuerlogik 18, den Ausfallspeicher 17, die Ereignissummierungs- und -skalierungslogik 22 und den Ereignisgenerator 24. Ein Beispiel für die Adresssteuerlogik 18 ist ein Prozessor des Testers, der für das Hardware-Testsystem exklusiv ist und der für einen Benutzer nicht zugänglich ist. Der Prozessor des Testers (Adresssteuerlogik) 18 liefert auf der Grundlage des Testprogramms und der Testbedingungen vom Hostrechner 12 Anweisungen an andere funktionale Blöcke im Testsystem. Der Ausfallspeicher 17 speichert Testergebnisse, wie etwa Ausfallinformationen des DUT 28, in der Adresse, die durch die Adresssteuerlogik 18 definiert wird. Die im Ausfallspeicher 17 gespeicherte Information wird in der Stufe der Ausfallanalyse des Prüflings verwendet.
  • Die Adresssteuerlogik 18 liefert Adressdaten an den Ereigniszählspeicher 20 und den Ereignisnoniusspeicher 21, wie es in 1 gezeigt ist. Bei einem tatsächlichen Testsystem ist eine Vielzahl von Sätzen von Ereigniszählspeichern und Ereignisnoniusspeichern vorgesehen, wobei jeder Satz davon einem Testpin des Testsystems entsprechen kann. Die Ereigniszähl- und -noniusspeicher speichern für jedes Ereignis die Zeitablaufdaten der Testsignale und der Abtastsignale. Der Ereigniszählspeicher 20 speichert die Zeitablaufdaten, die ein ganzzahliges Vielfaches des Referenztakts (Ereigniszähldaten) sind, und der Ereignisnoniusspeicher 21 speichert die Zeitablaufdaten, die ein Bruchteil des Referenztaktes (Ereignisnoniusdaten) sind.
  • Die Ereignissummierungs- und -skalierungslogik 22 ist dazu da, auf der Grundlage der Zeitablaufdaten aus dem Ereigniszählspeicher 20 und aus dem Ereignisnoniusspeicher 21 Daten zu erzeugen, die den Gesamtzeitablauf eines jeden Ereignisses zeigen. Im Grunde werden solche Gesamtzeitablaufdaten durch Summieren der Ereigniszähldaten (ganzzahlige Vielfachdaten) und der Ereignisnoniusdaten (die Bruchteildaten). Während des Prozesses des Summierens der Zeitablaufdaten wird zudem eine Übertragungsoperation der Bruchteildaten (versetzt zu den ganzzahligen Daten) in der Zeitablaufzähl- und -versetzlogik 22 durchgeführt. Des Weiteren können während des Prozesses der Erzeugung des Gesamtzeitablaufs Zeitablaufdaten derart durch einen Skalierungsfaktor modifiziert werden, dass der Gesamtzeitablauf entsprechend modifiziert werden kann.
  • Der Ereignisgenerator 24 ist dazu da, die Ereignisse auf der Grundlage der Gesamtzeitablaufdaten aus der Ereignissummierungs- und -skalierungslogik 22 zu erzeugen. Die auf diese Weise erzeugten Ereignisse (Steuerereignisse und/oder Abtastsignale) werden über die Pinelektronik 26 an den DUT 28 geliefert. Im Grunde wird die Pinelektronik 26 aus einer großen Zahl von Komponenten gebildet, von denen jede einen Treiber und einen Komparator sowie Schaltern gebildet, um Eingangs- und Ausgangsbeziehungen hinsichtlich des DUT 28 aufzubauen.
  • Zum Erzeugen von Zeitabläufen mit hoher Auflösung wird, wie es oben erwähnt wurde, die Zeitdauer (Verzögerungswert) zwischen den Ereignissen durch eine Kombination eines ganzzahligen Vielfachen eines Referenztaktzyklus (Ereigniszähldaten) und eines Bruchteils des Referenztaktzyklus (Ereignisnoniusdaten) definiert. Eine Zeitablaufbeziehung zwischen der Ereigniszählung und dem Ereignisnonius ist in einem Zeitablaufdiagramm von 2 gezeigt. Bei diesem Beispiel weist ein Referenztakt (Ereignistakt) von 2A einen Taktzyklus (Zeitperiode) T auf. Das Ereignis 0, das Ereignis 1 und das Ereignis 2 von 2C hängen mit dem Zeitablauf in einer in 2C gezeigten Art und Weise zusammen. Um das Ereignis 1 unter Bezugnahme auf das Ereignis 0 zu beschreiben, wird die Zeitablaufbeziehung von 2B verwendet, bei der NT die Ereigniszählung bezeichnet, welches das N-fache der Referenztaktperiode T ist, und ΔT bezeichnet den Ereignisnonius, welches ein Bruchteil der Referenztaktperiode T ist.
  • Jedes dieser Ereignisse kann aus einem Steuerereignis oder einem Abfrageereignis bestehen. Steuerereignisse sind jene Ereignisse, bei denen das Signal an einem Testpin auf einen bestimmten Spannungspegel gesteuert wird. Im Allgemeinen gibt es Steuerereignisse, die dazu bestimmt sind, einen Pin eines Prüflings (DUT) auf einen logisch hohen Spannungspegel, einen logisch niedrigen Spannungspegel oder auf einen Spannungspegel mit hoher Impedanz (Ansteuerung Z) anzusteuern. Die Abfrageereignisse sind dadurch definiert, dass sie in der Lage sind, die Ausgabe des DUT-Pin bei einem logisch hohen Spannungspegel, bei einem logisch niedrigen Spannungspegel oder bei einem dazwischen liegenden Spannungspegel abzufragen.
  • Wie es oben erwähnt wurde, werden die Ereignisdaten bei einem ereignisbasierten Testsystem im Ereignisspeicher durch die Zeitdifferenz zwischen dem momentanen Ereignis und dem vorangegangenen Ereignis ausgedrückt. Demgemäß muss ein ereignisbasiertes Testsystem, um Ereignisse gemäß den Ereignisdaten zu erzeugen, in der Lage sein, die Summe der Verzögerungen bis zu jedem Ereignis zu berechnen. Das macht eine Logik im Testsystem erforderlich, um die Verzögerungszeiten, ausgedrückt in der Ereigniszählung, weiterzuzählen und die Ereignisnoniuswerte zu summieren.
  • Solch eine Beziehung ist in einem Zeitablaufdiagramm von 3 gezeigt, bei dem die Ereignisse 0 bis 7 in Bezug auf den Referenztakt ausgedrückt werden, der eine Zeitperiode von T = 1 aufweist. Beispielsweise kann die Zeitdifferenz ΔV0 für das Ereignis 0 vom Startpunkt 0.75 betragen (Ereigniszählung "0" und Ereignisnonius "0.75") und die Zeitdifferenz ΔV1 für das Ereignis 1 vom Ereignis 0 0.75 betragen (Ereigniszählung "0" und Ereignisnonius "0.75"). In dieser Situation wird die Gesamtverzögerung von Ereignis 1 2.25 betragen, wobei eine Logik im Testsystem zwei Ereignistakte "2.0" zählt und die Summe des Ereignisnonius "0.25" als der verbleibende Bruchteil der Verzögerung berechnet. Für die Berechnung des korrekten Nonius ist diese Summierungsoperation während eines jeden Ereignisses notwendig, das mit einem Testsignal verknüpft ist.
  • Im US-Patent Nr. 6,360,343 , in der US-Patentanmeldung Nr. 09/286,226 , eingereicht am 5. April 1999, und in der US-Patentanmeldung Nr. 09/535,031 , eingereicht am 24. März 2000, die sich im Besitz des gleichen Zessionars dieser Erfindung befinden, wird eine Ereignissummierungs- und -skalierungslogik zum Berechnen des Zeitablaufs des momentanen Ereignisses unter Verwendung der Ereignisdaten aus dem Ereignisspeicher offenbart. Das in der Patentanmeldung beschriebene Verfahren setzte eine direkte Übereinstimmung sowohl eines Ereignistakts als auch eines Verarbeitungstakts voraus, d. h. die Ereigniszähllogik kann einfach die Verarbeitungstakte zählen und die Noniussummierung repräsentiert Bruchteile eines Verarbeitungstaktzyklus. Das frühere Verfahren berücksichtigt nämlich nicht die Differenz zwischen dem Ereignistakt und dem Verarbeitungstakt.
  • Im Zusammenhang mit der vorliegenden Erfindung ist ein Ereignistakt eine Verarbeitungsrate der Ereignisdaten und ein Verarbeitungstakt ist ein Takt, den die Hardware verwendet, um seine Ereignisverarbeitung durchzuführen. Typischerweise ist ein Ereignistakt der Takt mit der höchsten Geschwindigkeit, während ein Verarbeitungstakt ein Takt mit einer geringeren Geschwindigkeit ist, der durch Teilung der Frequenz des Ereignistakts erzeugt wird, damit er mit der Betriebsgeschwindigkeit der Hardware übereinstimmt. Demgemäß kann bei einem Hochgeschwindigkeits-Testsystem, bei dem die Hardware in der Lage ist, mit einer hohen Geschwindigkeit zu arbeiten, der Verarbeitungstakt der gleiche sein wie der Ereignistakt. Im praktischen Gebrauch ist bei einem Testsystem mit geringerer Geschwindigkeit der Ereignistakt wesentlich größer als der Verarbeitungstakt und folglich kann das in der früheren Patentanmeldung offenbarte Verfahren nicht wirkungsvoll arbeiten.
  • Was daher gebraucht wird, ist ein Gerät und ein Verfahren zur Verarbeitung von Ereignissen für ein ereignisbasiertes Hochgeschwindigkeits-Testsystem, das in der Lage ist, eine Ereigniszeitablaufverarbeitung mit hoher Geschwindigkeit durchzuführen, auch wenn der Verarbeitungstakt wesentlich kleiner ist als der Ereignistakt.
  • Zusammenfassung der Erfindung
  • Es ist deshalb eine Aufgabe der vorliegenden Erfindung, ein ereignisbasiertes Hochgeschwindigkeits-Testsystem zur Erzeugung von Testvektoren mit hoher Geschwindigkeit unter Verwendung von Hardware mit vergleichsweise geringer Betriebsgeschwindigkeit auf der Grundlage von in einem Ereignisspeicher gespeicherten Ereignisdaten bereitzustellen.
  • Es ist eine andere Aufgabe der vorliegenden Erfindung, unter Verwendung eines Verarbeitungstakts, der wesentlich langsamer ist als ein Ereignistakt, ein Gerät und ein Verfahren zur Verarbeitung von Ereignissen für ein ereignisbasiertes Hochgeschwindigkeits-Testsystem bereitzustellen.
  • Es ist eine weitere Aufgabe der vorliegenden Erfindung, durch Durchführung einer parallelen Verarbeitung von Ereignissen unter Verwendung des Verarbeitungstakts ein Gerät und ein Verfahren zur Verarbeitung von Ereignissen für ein ereignisbasiertes Hochgeschwindigkeits-Testsystem bereitzustellen, wodurch summierte Noniusdaten mit einer Rate des Ereignistakts erzeugt werden.
  • Es ist eine weitere Aufgabe der vorliegenden Erfindung, ein ereignisbasiertes Testsystem zum Erzeugen von Ereignissen mit hoher Zeitablaufauflösung entsprechend dem Ereignistakt unter Verwendung des Verarbeitungstakts bereitzustellen, der wesentlich langsamer ist als der Ereignistakt.
  • Es ist eine weitere Aufgabe der vorliegenden Erfindung, ein ereignisbasiertes Testsystem zum Erzeugen von Ereignissen mit hoher Zeitablaufauflösung durch Umwandeln einer Vielzahl von Noniusdatenwerten, die in paralleler Form mit der Rate des Verarbeitungstakts erhalten werden, und Erzeugen der Noniusdatenwerte in einer seriellen Form mit der Rate des Ereignistakts bereitzustellen.
  • Die vorliegende Erfindung ist ein Gerät zur Verarbeitung von Ereignissen zur Verwendung mit einem ereignisbasierten Testsystem zum Testen eines Halbleiterbauelementprüflings (DUT), durch Erzeugen von Ereignissen mit verschiedenen Zeitabläufen zur Zuführung von Ansteuerereignissen an den DUT und Evaluierung von Ausgaben des DUT an Zeitpunkten von Abfrageereignissen. Das Gerät zur Verarbeitung von Ereignissen enthält einen Ereignisspeicher zum Speichern von Ereignisdaten eines jeden Ereignisses, wobei die Ereignisdaten Zeitablaufdaten für jedes Ereignis beinhalten, welche aus einem ganzzahligen Vielfachen einer Taktperiode und einem Bruchteil der Taktperiode gebildet werden, eine Ereignissummierungslogik zur Summierung der Zeitablaufdaten und zur Erzeugung der summierten Zeitablaufdaten in paralleler Form, und einen Ereignisgenerator zur Erzeugung von Ereignissen, die durch die Ereignisdaten auf der Grundlage der summierten Zeitablaufdaten erzeugt werden, die in paralleler Form aus der Ereignissummierungslogik erhalten werden. Die Ereignisse in den Ereignisdaten werden als Gruppen aus Ereignissen spezifiziert, wobei jede Gruppe aus einem Basisereignis und wenigstens einem Nebenereignis aufgebaut ist.
  • Die im Ereignisspeicher gespeicherten Ereignisdaten enthalten für jedes Ereignis Ereignistypdaten, um einen Ereignistyp anzugeben, der vom Ereignisgenerator erzeugt werden soll. Die Zeitablaufdaten für die Basisereignisse werden aus einem Satz von Ereigniszähldaten und Ereignisnoniusdaten gebildet, während die Zeitablaufdaten für die Nebenereignisse ausschließlich aus den Ereignisnoniusdaten gebildet werden.
  • Bei einem Gesichtspunkt sind die summierten Zeitablaufdaten für das Basisereignis eine Summe der Zeitablaufdaten von vorherigen Basisereignissen und eines momentanen Basisereignisses sind und die summierten Zeitablaufdaten für das Nebenereignis eine Summe aus den summierten Zeitablaufdaten für das Basisereignis und den Noniusdaten des Nebenereignisses sind, das mit Bezug auf das Basisereignis definiert ist. Bei einem anderen Gesichtspunkt sind die summierten Zeitablaufdaten eine Summe der Zeitablaufdaten von vorherigen Basis- und Nebenereignissen und eines momentanen Ereignisses, die durch serielle Verarbeitung durch die Ereignissummierungslogik erzeugt wird. Die summierten Zeitablaufdaten für jede Gruppe aus dem Basisereignis und dem Nebenereignis werden durch die Ereignissummierungslogik in paralleler Form erzeugt.
  • Die Taktperiode ist eine Zyklenzeitdauer eines Verarbeitungstaktes, der ein Referenztakt zum Betrieb der Hardware des Geräts zur Verarbeitung von Ereignissen ist. Die Ereignissummierungslogik erzeugt die summierten Zeitablaufdaten an einer Vielzahl von Ausgängen in einer parallelen Form, wodurch ermöglicht wird, die Ereignisse mit einer Rate eines Ereignistaktes zu erzeugen, der eine Frequenz aufweist, die höher ist als die des Verarbeitungstakts. Die Zahl von parallelen Ausgängen der Ereignissummierungslogik entspricht einem Verhältnis der Frequenzen zwischen dem Verarbeitungstakt und dem Ereignistakt. Des Weiteren korrespondiert die Zahl der parallelen Ausgänge der Ereignissummierungslogik mit der Gesamtzahl von Basisereignissen und der Nebenereignissen in einer jeden Gruppe aus den im Ereignisspeicher gespeicherten Ereignisdaten.
  • Bei einem weiteren Gesichtspunkt beinhaltet das Gerät zur Verarbeitung von Ereignissen einen Ereignisspeicher zum Speichern von Ereignisdaten eines jeden Ereignisses, wobei die Ereignisdaten Zeitablaufdaten für jedes Ereignis beinhalten, welche aus einem ganzzahligen Vielfachen einer Taktperiode (Ereigniszähldaten) und einem Bruchteil der Taktperiode (Ereignisnoniusdaten) gebildet werden, wobei die Ereignisdaten als Gruppen aus Ereignissen spezifiziert werden, wobei jede Gruppe aus einem Basisereignis und wenigstens einem Nebenereignis aufgebaut ist, eine Ereignissummierungslogik zur Summierung der Zeitablaufdaten und zur Erzeugung der summierten Zeitablaufdaten in paralleler Form an N Ausgängen, wobei die Ereignissummierungslogik durch einen Verarbeitungstakt betrieben wird, und einen Ereignisgenerator zur Erzeugung von Ereignissen, die durch die Ereignisdaten auf der Grundlage der summierten Zeitablaufdaten erzeugt werden, die in paralleler Form aus der Ereignissummierungslogik erhalten werden. Der Ereignisgenerator empfängt N summierte Zeitablaufdaten in paralleler Form aus von der Ereignissummierungslogik mit einer Rate des Verarbeitungstaktes und erzeugt die summierten Zeitablaufdaten in einer seriellen Form mit einer Rate des Ereignistaktes, die N-mal höher ist als die des Verarbeitungstakts.
  • Ein weiterer Gesichtspunkt der vorliegenden Erfindung ist ein Verfahren zur Verarbeitung von Ereignissen zur Verwendung mit einem ereignisbasierten Testsystem. Das Verfahren beinhaltet die folgenden Schritte: Speichern von Ereignisdaten, die Zeitablaufdaten für jedes Ereignis enthalten und aus einem ganzzahligen Vielfachen einer Taktperiode (Ereigniszähldaten) und einem Bruchteil der Taktperiode (Ereignisnoniusdaten) gebildet werden, wobei die Ereignisdaten als Gruppen aus Ereignissen spezifiziert werden, wobei jede Gruppe aus einem Basisereignis und wenigstens einem Nebenereignis aufgebaut ist, Summieren der Zeitablaufdaten und erzeugen der summierten Zeitablaufdaten für das Basisereignis und das Nebenereignis in paralleler Form, und Erzeugung der Ereignisse, die durch die Ereignisdaten auf der Grundlage der summierten Zeitablaufdaten spezifiziert werden, die in paralleler Form erhalten werden.
  • Ein weiterer Gesichtspunkt der vorliegenden Erfindung ist ein Verfahren zur Verarbeitung von Ereignissen zur Verwendung mit einem ereignisbasierten Testsystem. Das Verfahren beinhaltet die folgenden Schritte: Speichern von Ereignisdaten, die Zeitablaufdaten für jedes Ereignis enthalten und aus einem ganzzahligen Vielfachen einer Taktperiode (Ereigniszähldaten) und einem Bruchteil der Taktperiode (Ereignisnoniusdaten) gebildet werden, wobei die Ereignisdaten als Gruppen aus Ereignissen spezifiziert werden, wobei jede Gruppe aus einem Basisereignis und wenigstens einem Nebenereignis aufgebaut ist, Summieren der Zeitablaufdaten und Erzeugen der summierten Zeitablaufdaten an N Ausgängen in paralleler Form mit einer Rate eines Verarbeitungstakts, und Empfang von N summierten Zeitablaufdaten in paralleler Form mit des Rate eines Verarbeitungstakts und Erzeugung der summierten Zeitablaufdaten in einer seriellen Form mit einer Rate eines Ereignistakts, die N-mal höher ist als die des Verarbeitungstakts.
  • Gemäß der vorliegenden Erfindung kann die Verarbeitung von Ereigniszeitabläufen für ereignisbasierte Hochgeschwindigkeitstestsysteme durchgeführt werden, um die Noniusdaten mit der Rate eines Ereignistakts unter Verwendung eines Verarbeitungstakts zu erzeugen, die wesentlich langsamer ist als die des Ereignistakts. Das Ereignisverarbeitungsgerät führt unter Verwendung des Verarbeitungstakts eine parallele Ereignisverarbeitung durch, wodurch summierte Noniusdaten mit der rate des Ereignistakts erzeugt werden.
  • Des Weiteren ist das ereignisbasierte Testsystem bei der vorliegenden Erfindung in der Lage, unter Verwendung des Verarbeitungstakts Verzögerungszeiten mit hohen Zeitablaufauflösungen entsprechend dem Ereignistakt zu erzeugen. Der Ereignisgenerator beim ereignisbasierten Testsystem empfängt eine Vielzahl von Noniusdatenwerten, die in einer parallelen Form mit einer Rate des Verarbeitungstakts empfangen wurden, und erzeugt die Noniusdatenwerte in einer seriellen Form mit der rate des Ereignistakts, wodurch die Zeitablaufauflösung mit dem Ereignistakt übereinstimmt.
  • Kurze Beschreibung der Zeichnung
  • 1 ist ein schematisches Blockdiagramm, das den grundlegenden Aufbau eines ereignisbasierten Testsystems für die Einbeziehung des Geräts und des Verfahrens der vorliegenden Erfindung zur Verarbeitung von Ereignissen zeigt.
  • 2 ist ein Zeitablaufdiagramm, das die grundlegende Beziehung zwischen den Ereigniszähldaten und dem Ereignisnonius zur Beschreibung der Zeitdifferenz zwischen zwei aufeinander folgenden Ereignissen zeigt.
  • 3 ist ein Zeitablaufdiagramm, das den Zeitablaufzusammenhang zwischen verschiedenen Ereignissen relativ zu einem Ereignistakt zeigt, um das Konzept einer Ereignissummierungsoperation im ereignisbasierten Testsystem zu zeigen.
  • 4A ist eine Tabelle, die ein allgemeines Beispiel für in einem Ereignisspeicher gespeicherte Ereignisdaten zeigt, wenn sich ein Ereignistakt und ein Verarbeitungstakt in einer Beziehung 1 zu 1 befinden, und 4B ist ein Signalformdiagramm, das eine Folge von Ereignissen auf der Grundlage der Ereignisdaten von 4A zeigt.
  • 5 ist ein Blockdiagramm, das ein Beispiel eines Aufbaus in der Ereignissummierungslogik zur Verarbeitung der Ereigniszeitabläufe bei der Signalform von 4B auf der Grundlage der Ereignisdaten, die in der Datentabelle von 4A gezeigt sind.
  • 6 ist ein Signalformdiagramm, das die parallele Verarbeitung bei einem ersten Ausführungsbeispiel der vorliegenden Erfindung zeigt, bei dem die Zeitperiode eines jeden Verarbeitungstaktes doppelt so lang ist wie die eines jeden Ereignistaktes.
  • 7A ist eine Datentabelle, die ein Beispiel für im Ereignisspeicher gespeicherte Ereignisdaten zeigt, und 7B ist ein Blockdiagramm zur Ausführung der parallelen Ereignisverarbeitung 1 zu 2, um den in 6 gezeigten Zusammenhang des Zeitablaufs zu erzeugen.
  • 8 ist ein Signalformdiagramm, das die parallele Verarbeitung bei einem ersten Ausführungsbeispiel der vorliegenden Erfindung zeigt, wobei die Zeitperiode eines jeden Verarbeitungstakt viermal so lange ist wie die eines jeden Ereignistaktes.
  • 9 ist eine Datentabelle, die ein Beispiel für im Ereignisspeicher gespeicherte Ereignisdaten zeigt, zur Ausführung der parallelen Ereignisverarbeitung 1 zu 4, um den in 8 gezeigten Zusammenhang des Zeitablaufs zu erzeugen.
  • 10 ist ein Blockdiagramm, das ein Beispiel eines Aufbaus in der Ereignissummierungslogik zur Ausführung der parallelen Ereignisverarbeitung 1 zu N bei einem ersten Ausführungsbeispiel der vorliegenden Erfindung zeigt.
  • 11 ist ein Signalformdiagramm, das die serielle Ereignisverarbeitung bei einem zweiten Ausführungsbeispiel der vorliegenden Erfindung zeigt, wobei die Zeitperiode eines jeden Verarbeitungstaktes doppelt so lange ist wie die eines jeden Ereignistaktes.
  • 12 ist eine Datentabelle, die ein Beispiel für im Ereignisspeicher gespeicherte Ereignisdaten zeigt, zur Ausführung der seriellen Ereignisverarbeitung 1 zu 2, um den in 11 gezeigten Zusammenhang des Zeitablaufs zu erzeugen.
  • 13 ist ein Signalformdiagramm, das die serielle Ereignisverarbeitung bei einem zweiten Ausführungsbeispiel der vorliegenden Erfindung zeigt, wobei die Zeitperiode eines jeden Verarbeitungstaktes viermal so lange ist wie die eines jeden Ereignistaktes.
  • 14 ist eine Datentabelle, die ein Beispiel für im Ereignisspeicher gespeicherte Ereignisdaten zeigt, zur Ausführung der seriellen Ereignisverarbeitung 1 zu 4, um den in 13 gezeigten Zusammenhang des Zeitablaufs zu erzeugen.
  • 15 ist ein Blockdiagramm, das ein Beispiel eines Aufbaus in der Ereignissummierungslogik zur Ausführung der seriellen Ereignisverarbeitung 1 zu N bei einem zweiten Ausführungsbeispiel der vorliegenden Erfindung zeigt.
  • 16 ist ein Blockdiagramm, das ein Beispiel eines Aufbaus in einem ereignisbasierten Testsystem zeigt, wobei ein Ereignisgenerator die Ereignisnoniuswerte als Bruchteile des Verarbeitungstaktzyklus behandelt.
  • 17 ist eine Tabelle, die die Auflösung des Zeitablaufs der Noniusdaten mit fixen Noniusbits zeigt, wenn die Noniusbits ein Bruchteil des Verarbeitungstaktes sind und wenn der Ereignisgenerator so aufgebaut ist, wie es in 16 gezeigt ist.
  • 18 ist eine Tabelle, die die Auflösung des Zeitablaufs der Noniusdaten mit variablen Noniusbits zeigt, wenn die Noniusbits ein Bruchteil des Verarbeitungstaktes sind und wenn der Ereignisgenerator so aufgebaut ist, wie es in 16 gezeigt ist.
  • 19 ist ein Blockdiagramm, das ein Beispiel eines Aufbaus bei einem dritten Ausführungsbeispiel der vorliegenden Erfindung zeigt, wobei ein Ereignisgenerator die Ereignisnoniuswerte als Bruchteile des Ereignistaktzyklus behandelt.
  • Die 20A bis 20E sind Zeitablaufdiagramme, die den Zusammenhang des Zeitablaufs bei den Noniusdaten beim Ereignisgenerator von 19 zeigt, wenn der Ereignisgenerator eine Demultiplexung 1 zu 2 mit einbezieht.
  • Die 21A bis 21E sind Zeitablaufdiagramme, die den Zusammenhang des Zeitablaufs bei den Noniusdaten beim Ereignisgenerator von 19 zeigt, wenn der Ereignisgenerator ein Ereignisdemultiplexen 1 zu 4 mit einbezieht.
  • 22 ist eine Tabelle, die die Auflösung des Zeitablaufs der Noniusdaten mit fixen Noniusbits zeigt, wenn die Noniusbits bei einem dritten Ausführungsbeispiel ein Bruchteil des Ereignistaktes sind, wenn der Ereignisgenerator so aufgebaut ist, wie es in 19 gezeigt ist.
  • 23 ist eine Tabelle, die ein Beispiel für die im Ereignisspeicher gespeicherten Ereignisdaten zeigt, die als Ereignistypdaten Nichtoperationsereignisse zur Erzeugung der Signalformen der 24A bis 24B beinhaltet.
  • Die 24A bis 24G sind Zeitablaufdiagramme, die den Zusammenhang des Zeitablaufs zeigt, der vom Ereignisgenerator von 19 erzeugt wird, der das Ereignisdemultiplexen 1 zu 2 auf der Grundlage der Ereignisdaten von 23 mit einbezieht.
  • Detaillierte Beschreibung der Erfindung
  • Die Ausführungsbeispiele der vorliegenden Erfindung werden unter Bezugnahme auf die beigefügte Zeichnung beschrieben werden. Ein Verfahren und ein Gerät zur Verarbeitung von Ereignissen sind in der Lage, unter Verwendung eines Verarbeitungstakts, der wesentlich langsamer ist als der Ereignistakt, eine Verarbeitung des Ereigniszeitablaufs durchzuführen. Wie es oben erwähnt wurde, ist bei der vorliegenden Erfindung der Ereignistakt eine Verarbeitungsrate der Ereignisdaten und ein Verarbeitungstakt ist ein Takt, den die Hardware verwendet, um seine Ereignisverarbeitung durchzuführen. Wegen dieser parallelen Verarbeitung erreicht die vorliegende Erfindung durch Verwendung mehrfacher Nonien pro Verarbeitungstaktzyklus eine hohe Ereignisverarbeitungsrate, wodurch ein Hochgeschwindigkeits-Testsystem erzeugt wird.
  • Zuerst wird der Prozess der Berechnung des Ereigniszeitablaufs betrachtet, bei dem der Ereignistakt und der Verarbeitungstakt einander identisch sind. Dieser Fall tritt auf, wenn ein Ereignistestsystem ein Hochgeschwindigkeitstestsystem ist, bei dem die Hardware in der Lage ist, mit einem Verarbeitungstakt zu arbeiten, der die gleiche Wiederholungsrate aufweist wie die des Ereignistakts. Die direkte Übereinstimmung sowohl des Ereignistakts als auch des Verarbeitungstakts bedeutet, dass die Ereigniszähllogik einfach die Verarbeitungstakte zählen kann und die Noniussummierung Bruchteile des Verarbeitungstaktzyklus repräsentiert.
  • 4A ist eine Tabelle, die ein allgemeines Beispiel für Ereignisdaten zeigt, die in einem Ereignisspeicher gespeichert sind, und 4B ist ein Signalformdiagramm, das eine Folge von Ereignissen auf der Grundlage der Ereignisdaten von 4A zeigt, wobei die Frequenz des Ereignistakts direkt mit der des Verarbeitungstakts übereinstimmt. In dieser Situation werden die Zeitablaufdaten, weil keine parallele Verarbeitung durchgeführt wird, durch einen Satz von Ereigniszähldaten (ganzer Referenztakt) und Ereignisnoniusdaten (Bruchteile des Referenztakts) definiert. Des Weiteren weist jedes Ereignis das gleiche Gewicht auf (d. h. Ereignisbeschreibung), demgemäß gibt es keine Unterscheidung zwischen einem Basisereignis und einem Nebenereignis, wie es bei der parallelen Verarbeitung erforderlich ist.
  • In der Datentabelle von 4A ist jedes der Ereignisse E0 bis E8 (8) eine Zeitdifferenz vom unmittelbar vorangegangenen Ereignis. Solche Zeitdifferenzen werden in der äußersten linken Spalte von Tabelle 4A und zudem im Signaldiagramm von 4B durch ΔV0, ΔV1, ΔV2, ... ΔV8 angegeben. Da jede Zeitdifferenz eine Zeitdauer zwischen zwei aufeinander folgenden Ereignissen ist, wird solch eine Zeitdifferenz einfach durch eine Kombination der Ereigniszähldaten und der Ereignisnoniusdaten ausgedrückt. Die Ereigniszähldaten C0 bis C8 werden in einer Spalte "Zählung" und die Noniusdaten V0 bis V8 werden in einer Spalte "Nonius" der Tabelle gezeigt. Die Spalte "Ereignistyp" definiert für jedes Ereignis einen Ereignistyp, wie etwa "Ansteuerung logisch hoch" (von 1 auf 0) und "Ansteuerung logisch niedrig" (von 0 auf 1).
  • Beispielsweise ist das Ereignis E2 vom Ereignis E1 um ΔV2 abgesondert und ist durch die Ereigniszähldaten C2 (ganzer Teilwert) und die Noniusdaten V2 (Bruchteilwert) definiert. Demgemäß wird das Ereignis E2 als ΔVZ = C2 × Tp + V2 ausgedrückt, wobei Tp eine Zyklenzeitdauer des Verarbeitungstakts (Ereignistakts) ist. Gleichermaßen ist das Ereignis E3 vom Ereignis E2 um ΔV3 abgesondert und ist durch die Ereigniszähldaten C3 (ganzer Teilwert) und die Noniusdaten V3 (Bruchteilwert) definiert. Demgemäß wird das Ereignis E3 als ΔV3 = C3 × Tp + V3 ausgedrückt. 4B zeigt den Zusammenhang des Zeitablaufs zwischen den Ereignissen in Bezug auf den Ereignistakt (Verarbeitungstakt).
  • 5 ist ein Blockdiagramm, das ein Beispiel eines Aufbaus in einer Ereignissummierungslogik zur Berechnung der Ereigniszeitabläufe auf der Grundlage der in 4A gezeigten Ereignisdaten zeigt, um den Zusammenhang der Zeitabläufe in den Ereignissignalformen von 4B zu reproduzieren. Die Ereignissummierungslogik beinhaltet einen Akkumulator, der aus einen Addierer 32 und einem Register 34 gebildet wird, eine Ereigniszähllogik 36 und eine Ereignisverarbeitungs-Zustandsmaschine 38. Der Verarbeitungstakt wird herkömmlicherweise an die Zustandsmaschine 38, die Ereigniszähllogik 36 und das Register 34 geliefert. Die Ereigniszähldaten aus dem Ereignisspeicher werden an die Ereigniszähllogik 36 geliefert und die Ereignisnoniusdaten aus dem Ereignisspeicher werden an den Addierer 32 geliefert. Die detaillierte Beschreibung bezüglich des Schaltungsaufbaus der Ereignissummierungslogik und ihrer Funktionsweise wird in der oben erwähnten US-Patentanmeldung Nr. 09/286,226 bereitgestellt.
  • Die Ereigniszähllogik 36 ist beispielsweise ein Rückwärtszähler, der durch einen numerischen Wert, der durch die Ereigniszähldaten ausgedrückt wird, festgelegt wird. Auf diese Weise erzeugt die Ereigniszähllogik 36 einen Endzählpuls, wenn das Zählungsergebnis durch Zählung der Zahl an Verarbeitungstakten Null erreicht. Nach dem Erhalt des Endzählpulses von der Ereigniszähllogik 36 erzeugt die Ereigniszustandsmaschine 38 eine Gültig-Daten-Freigabe (Freigabesignal), die in Synchronisation mit dem Verarbeitungstakt an den Akkumulator gesandt wird. Der Akkumulator summiert die Noniusdaten und nach dem Erhalt der Gültig-Daten-Freigabe von der Ereigniszustandsmaschine 38 erzeugt der Akkumulator die summierten Noniusdaten.
  • Entsprechend werden die summierten Noniusdaten zum Zeitpunkt, der durch die Ereigniszähldaten (Gültig-Daten-Freigabe) definiert ist, an den Ereignisgenerator 24 (1) geliefert. Der Ereignisgenerator 24 weist eine Verzögerungsschaltung auf, die die Verzögerungszeit, die durch die summierten Noniusdaten definiert wird, zum Zeitablauf der Gültig-Daten-Freigabe hinzuaddiert. Die Details des Ereignisgenerators werden in der US-Patentanmeldung Nr. 09/286,226 offenbart, die am 25. September 1999 eingereicht wurde und die sich im Besitz des gleichen Zessionars dieser Erfindung befindet.
  • Deshalb wird beispielsweise beim Ereignis E2, bei dem die Ereignisdaten C2 betragen und die Ereignisnoniusdaten V2 betragen, durch die Ereigniszähllogik 36 ein Endzählpuls erzeugt, wenn der Verarbeitungstakt C2-mal gezählt wurde. Nach Erhalt des Endzählsignals erzeugt die Ereignisstatusmaschine 38 die Datenfreigabe (Freigabesignal), die an den Akkumulator gesendet wird. Im Akkumulator werden die Noniusdaten V2 zu den vorherigen Noniusdaten hinzuaddiert und die sich ergebenden Noniusdaten werden zum Zeitpunkt der Datenfreigabe von der Ereigniszustandsmaschine 38 erzeugt. Auf der Grundlage der Ereignistypdaten (wie etwa Ansteuerung hoch oder Ansteuerung niedrig) aus dem Ereignisspeicher und der summierten Noniusdaten aus der Ereignissummierungslogik erzeugt der Ereignisgenerator 24 das Ereignis E2, das ΔV2 vom Ereignis E1 abgesetzt ist.
  • Da der Zeitablauf eines jeden Ereignisses durch die Zeitdauer ab dem unmittelbar vorangegangenen Ereignis definiert wird, wird beim Beispiel der 4A bis 4B und 5 für jedes einzelne Ereignis ein Satz der Ereigniszähldaten und der Ereignisnoniusdaten spezifiziert. Die Ereignissummierungslogik zählt einfach die Verarbeitungstakte und die Noniussummierung repräsentiert Bruchteile des Verarbeitungstaktzyklus. Bei diesem Beispiel können jedoch die Ereignisse, wenn sich der Ereignistakt (Referenztakt für die Ereigniszeitabläufe) vom Verarbeitungstakt unterscheidet, nicht genau durch die in 4A gezeigten Daten oder durch die Schaltungsanordnung von 5 erzeugt werden. Wie es oben erwähnt wurde, unterscheidet sich die Frequenz des Ereignistakts bei einem typischen Testsystem von der des Verarbeitungstakts und ist wesentlich höher als der Verarbeitungstakt.
  • Um dieses Problem zu lösen, wird deshalb bei der vorliegenden Erfindung die Berechnung des Ereigniszeitablaufs durch die parallele Verarbeitung der Noniusdaten durchgeführt. Die parallele Ereignisverarbeitung erreicht unter Verwendung eines Verarbeitungstaktes mit relativ geringer Geschwindigkeit eine Ereigniserzeugung mit hoher Geschwindigkeit. Ein Beispiel des Zusammenhangs der Zeitabläufe wird durch die Signalformen veranschaulicht, die in 6 gezeigt sind. Bei diesem Beispiel wird die parallele Verarbeitung durchgeführt, bei der die Zeitperiode eines jeden Verarbeitungstaktes doppelt so lang ist wie der des Ereignistaktes (parallele Ereignisverarbeitung 1 zu 2). Um die erforderliche Rate zur Erzeugung von Ereignissen zu erreichen, muss jeder Verarbeitungstaktzyklus zwei Ereignisse aufweisen. Zur Durchführung der in 6 gezeigten parallelen Ereignisverarbeitung 1 zu 2 speichert der Ereignisspeicher die Ereignisdaten in einer in 7A gezeigten Art und Weise, welche von der Ereignissummierungslogik (Ereignisverarbeitungspipeline) von 7B verwendet wird.
  • Wie es im Signalformdiagramm von 6 gezeigt ist, der Zeitablauf des Ereignisses E1 beträgt eine Zeitdifferenz ΔV1 vom Ereignis E0, welche die gleiche ist wie im Beispiel von 4A. Der Zeitablauf des Ereignisses E2 beträgt jedoch eine Zeitdifferenz ΔV2 vom Ereignis E0, ungleich dem Beispiel von 4A, bei dem die Zeitdauer mit Bezug auf das Ereignis E1 definiert wird. Gleicherweise werden in 6 sowohl das Ereignis E3 als auch das Ereignis E4 durch die Zeitdifferenzen ΔV3 bzw. ΔV4 vom Ereignis E2 definiert.
  • In der Datentabelle von 7A werden die Ereignisse E0, E2 und E4 als Basisereignisse beschrieben, während die Ereignisse E1, E3, und E5 als Nebenereignisse beschrieben werden. Diese Nebenereignisse werden lediglich durch die Noniusdaten definiert, demgemäß werden für die Nebenereignisse E1, E3 und E5 keine Ereigniszähldaten bereitgestellt. Die Ereigniszähldaten (ganze Zahl an Verarbeitungstakten) der Basisereignisse wird unter Bezugnahme auf das vorangegangene Basisereignis (nicht auf das vorangegangene Nebenereignis) definiert. Demgemäß sind die Ereigniszähldaten C2 des Ereignisses E2 eine ganze Zahl des Verarbeitungstaktzyklus ab dem Ereignis E0.
  • Auf diese Weise wird eine Gruppe aus Basisereignissen und Nebenereignissen zur Erzeugung paralleler Ausgaben der summierten Noniusdaten spezifiziert. Entsprechend der Tabelle von 7A werden eine Gruppe aus dem Basisereignis E0 und dem Nebenereignis E1, eine Gruppe aus dem Basisereignis E2 und dem Nebenereignis E3 und eine Gruppe aus dem Basisereignis E4 und dem Nebenereignis E5 erzeugt. Die Ereignisdaten für jede Gruppe werden parallel verarbeitet und parallel werden ihre summierten Noniusdaten für das Basisereignis und das Nebenereignis erzeugt, wie es in der Ereignissummierungslogik von 7B gezeigt ist.
  • Wie es in 6 gezeigt ist, ist ein momentaner Zeitablauf des Basisereignisses eine Summe aus allen vorherigen Basisereigissen. Demgemäß ist der Zeitablauf des Ereignisses E4 (Basisereignis) eine Summe aus Zeitabläufen der Ereignisse E0, E2 und E4, d. h. ΔV0 + ΔV2 + ΔV4. Ein momentaner Zeitablauf von Nebenelementen ist die Summe aller vorherigen Basisereignisse unter Hinzufügen der Noniusdaten des momentanen Nebenereignisses. Demgemäß ist der Zeitablauf des Ereignisses E5 (Nebenereignis) eine Summe aus Zeitabläufen der Ereignisse E0, E2, E4 und E5, d. h. ΔV0 + ΔV2 + ΔV4 + ΔV5.
  • Wie es oben erwähnt wurde, wird die Zeitdifferenz des Basisereignisses durch eine Kombination aus den Ereigniszähldaten und den Ereignisnoniusdaten definiert. Demgemäß wird die Zeitdifferenz ΔV0 durch die Ereigniszähldaten C0 und die Noniusdaten V0 definiert, die Zeitdifferenz ΔV2 wird durch die Ereigniszähldaten C2 und die Noniusdaten V2 definiert und die Zeitdifferenz ΔV4 wird durch die Ereigniszähldaten C4 und die Noniusdaten V4 definiert. Die Zeitdifferenz der Nebenereignisse wird jedoch lediglich durch die Noniusdaten definiert. Demgemäß wird die Zeitdifferenz ΔV1 durch die Noniusdaten V1 definiert, die Zeitdifferenz ΔV3 wird durch die Noniusdaten V3 definiert und die Zeitdifferenz ΔV5 wird durch die Noniusdaten VS definiert.
  • Um die Ereigniszeitabläufe im Beispiel der 6 und 7A zu berechnen, führt die Ereignissummierungslogik, wie sie etwa in 7B gezeigt ist, die parallele Verarbeitung 1 zu 2 durch. Beim Beispiel von 7B beinhaltet die Ereignissummierungslogik einen Akkumulator, der aus einem Addierer 32 und einem Register 34 gebildet wird, eine Ereigniszähllogik 36 und eine Ereigniszustandsmaschine 38. Wie aus 7B ersehen werden kann, weist die Ereignissummierungslogik in Bezug auf die Basisereignisse im Grunde den gleichen Schaltungsaufbau wie der von 5 auf. Die Ereignissummierungslogik beinhaltet darüber hinaus einen Addierer 44(2) zur parallelen Verarbeitung der Nebenereignisse. Die Register 40(1), 40(2) und 42(2) sind für das Re-Timing der Daten vorgesehen, die in der Schaltungsanordnung der Ereignissummierungslogik verarbeitet werden.
  • In der Ereignissummierungslogik werden die summierten Ereignisnonien (Noniusdaten der vorangegangenen und des momentanen Basisereignisses, die miteinander summiert wurden) an den Addierer 44(2) geliefert, wo sie zu den Ereignisnoniusdaten für das Nebenereignis addiert werden. Der Verarbeitungstakt wird herkömmlicherweise an die Ereigniszustandsmaschine 38, die Ereigniszähllogik 36 und das Register 34 geliefert. Die Ereigniszustandsmaschine 38 und die Ereigniszähllogik 36 sind die gleichen wie die in 5.
  • Bei dieser Anordnung werden das Basisereignis und das Nebenereignis auf parallele Weise verarbeitet, wodurch die Ereigniszeitabläufe eher in der Geschwindigkeit des Ereignistakts als in der Geschwindigkeit des Verarbeitungstakts erzeugt werden. Beispielsweise wird in Bezug auf die Ereignisse E2 und E3 die Berechnung der Zeitabläufe für diese Ereignisse parallel durchgeführt. Bei diesem Beispiel ist das Ereignis E2 ein Basisereignis, das die Ereigniszähldaten C2 aufweist und bei dem die Ereignisnoniusdaten V2 betragen, und das Ereignis E3 ist ein Nebenereignis, das nur die Ereignisnoniusdaten aufweist. Die Noniusdaten des Ereignisses E3 (Nebenereignis) wird zu den summierten Daten des Ereignisses E2 (Basisereignis) addiert.
  • Bezüglich dem Ereignis E2 werden die Ereigniszähldaten C2 an die Ereigniszähllogik 36 geliefert, die den Verarbeitungstakt zählt und einen Endzählpuls erzeugt, wenn das Ergebnis der Rückzählung Null erreicht, d. h. der Verarbeitungstakt C2-mal gezählt wurde. Nach dem Erhalt des Endzählpulses erzeugt die Ereigniszustandsmaschine 38 in Synchronisation mit dem Verarbeitungstakt eine Gültig-Daten-Freigabe (Freigabesignal), die an den Akkumulator gesandt wird. Die Ereignisnoniusdaten für die Basisereignisse werden an den Akkumulator geliefert, so dass die Noniusdaten der vorangegangenen Basisereignisse und des Ereignisses E2 summiert werden, wodurch die summierten Noniusdaten für das Ereignis E2 über das Register 40(1) erzeugt werden. Auf diese Weise werden die summierten Noniusdaten für das Ereignis E2 mit dem Zeitablauf erzeugt, der durch die Ereigniszähldaten C2 bestimmt wird.
  • Die summierten Noniusdaten für das Ereignis E2 werden des Weiteren durch den Addierer 44(2) zu den Ereignisnoniusdaten für das Ereignis E3 hinzuaddiert, wodurch über das Register 40(2) die summierten Noniusdaten für das Ereignis E3 erzeugt werden. Die summierten Noniusdaten für das Ereignis E3 werden erzeugt, sobald die summierten Noniusdaten für das Ereignis E2 erzeugt werden. Da die summierten Noniusdaten für die Ereignisse E2 und E3 in paralleler Form erzeugt werden, wie es in 7B gezeigt ist, können demgemäß solche summierten Noniusdaten durch den Ereignisgenerator durch den Zeitablauf des Ereignistakts verarbeitet werden. Dies wird in 7B als ein Ereignistakt 1 und ein Ereignistakt 2 veranschaulicht.
  • Ein anderes Beispiel der parallelen Ereignisverarbeitung bei der vorliegenden Erfindung ist in den 8 bis 10 gezeigt, bei dem die Zeitperiode eines jeden Verarbeitungstaktes viermal so lang ist wie die eines jeden Ereignistaktes (parallele Verarbeitung 1 zu 4). Die Signalform von 8 zeigt ein Beispiel solch einer parallelen Ereignisverarbeitung 1 zu 4 und die Datentabelle von 9 zeigt ein Beispiel für Ereignisdaten, die im Ereignisspeicher gespeichert sind, zur Erzeugung der Signalform von 9. Das Schaltungsdiagramm von 10 verallgemeinert eine Ereignissummierungslogik zur Durchführung der parallelen Verarbeitung 1 zu N, wobei N–1 Addierer parallel mit dem Akkumulator für die Basisereignisse vorgesehen sind. Um die für die Erzeugung von Ereignissen erforderliche Rate zu erreichen, muss in diesem Fall jeder Verarbeitungszyklus vier Ereignisse aufweisen.
  • Wie es im Signalformdiagramm von 8 gezeigt ist, ist der Zeitablauf des Ereignisses E1 eine Zeitdifferenz ΔV1 vom Ereignis E0, die die gleiche ist wie beim Beispiel von 4A. Die Zeitabläufe der Ereignisse E2 und E3 sind jeweils die Zeitdifferenzen ΔV2 und ΔV3, die jeweils ab dem Ereignis E0 definiert werden. In 9 werden die Ereignisdaten für das Ereignis E0 aus einem Satz von Ereigniszähldaten C0 und Ereignisnoniusdaten V0 gebildet. Die Ereignisdaten für die Ereignisse E1, E2 und E3 werden lediglich durch die Noniusdaten V1, V2 bzw.
  • V3 gebildet. Mit anderen Worten, das Ereignis E0 ist ein Basisereignis, während die Ereignisse E1, E2 und E3 Nebenereignisse sind, wobei eine Gruppe aus einem Basisereignis (Ereignis E0) und drei Nebenereignissen (Ereignisse E1 bis E3) werden bei der vorliegenden Erfindung parallel verarbeitet. Gleicherweise ist bei 8 das Ereignis E4 ein Basisereignis, das durch die Ereigniszähldaten C4 und die Ereignisnoniusdaten V4 beschrieben werden, während die Ereignisse E5, E6 und Eu7 Nebenereignisse sind, die nur durch die Noniusdaten V5, V6 und V7 beschrieben werden. Auf diese Weise wird bei der vorliegenden Erfindung eine Gruppe aus einem Basisereignis (Ereignis E4) und drei Nebenereignissen (Ereignisse E5 bis E7) parallel verarbeitet.
  • Wie es in 8 gezeigt ist, ist ein momentaner Zeitablauf des Basisereignisses eine Summe aus allen vorhergehenden Basisereignissen. Demgemäß ist der Zeitablauf des Ereignisses E4 (Basisereignis) beispielsweise eine Summe der Zeitabläufe der Basisereignisse E0 und E4, d. h. ΔV0 + ΔV4. Ein momentaner Zeitablauf des Nebenereignisses ist eine Summe aus allen vorhergehenden Basisereignissen unter Addition der Noniusdaten des momentanen Nebenereignisses. Demgemäß ist der Zeitablauf des Ereignisses E5 (Nebenereignis) beispielsweise eine Summe aus den Zeitabläufen der Ereignisse E0, E4 und E5, d. h. ΔV0 + ΔV4 + ΔV5.
  • Um die Ereigniszeitabläufe im vorigen Beispiel zu berechnen, ist die Ereignissummierungslogik 10 für eine parallele Verarbeitung 1 zu N aufgebaut. Bei diesem Schaltungsdiagramm ist der Akkumulator, der aus dem Addierer 32 und dem Register 34 gebildet wird, die Ereigniszähllogik 36 und die Ereignisverarbeitungszustandsmaschine 38 im Wesentlichen die gleichen wie jene, die in den 5 und 7B gezeigt sind. Wie aus der 10 ersehen werden kann, beinhaltet die Ereignissummierungslogik des Weiteren Addierer 44(2) bis 44(N) für die parallele Verarbeitung der N Ereignisse (für jede Gruppe) zur selben Zeit. Die Register 40(1) bis 40(N) und 40(2) bis 40(N) werden für das Re-Timing der Daten bereitgestellt, die in der Schaltungsanordnung verarbeitet werden.
  • Bei der Ereignissummierungslogik von 10 werden die summierten Ereignisnoniusdaten (Noniusdaten des vorangegangen und des momentanen Basisereignisses miteinander summiert) an die Addierer 44(2) bis 44(N) geliefert, wobei sie zu den Ereignisnoniusdaten für das entsprechende Nebenereignis addiert werden. Bei dieser Anordnung werden das Basisereignis und das Nebenereignis auf eine parallele Weise verarbeitet, wodurch die Ereigniszeitabläufe für die Gruppe erzeugt werden, die N Ereignisse zur gleichen Zeit aufweist. Demgemäß können über die parallelen Ausgaben der Ereignissummierungslogik die summierten Noniusdaten mit der Rate des Ereignistaktes erhalten werden, selbst wenn der Verarbeitungstakt um 1/N langsamer ist als der Ereignistakt.
  • Die 11 bis 15 zeigen das zweite Ausführungsbeispiel der vorliegenden Erfindung, wobei die parallele Verarbeitung eine serielle Summierung einer Gruppe aus einem Basisereignis und Nebenereignisseen einbezieht. Die 11 und 12 zeigen ein Beispiel, bei dem jeder Verarbeitungstakt doppelt so lang ist wie jeder Ereignistakt. Die 13 und 14 zeigen ein Beispiel, bei dem jeder Verarbeitungstakt viermal so lang ist wie jeder Ereignistakt. Ein Beispiel des Aufbaus einer Ereignissummierungslogik zur Durchführung der Zeitablaufberechnung ist in 15 gezeigt. Bei der in den 6 bis 10 gezeigten parallelen Verarbeitung werden die Noniusdaten für jedes Nebenereignis lediglich unter Bezug auf das Basisereignis definiert. Mit anderen Worten, die Noniusdaten für jedes Nebenereignis werden nicht auf die Noniusdaten der anderen Nebenereignisse bezogen, wie es in 8 gezeigt ist. Deshalb kann beim ersten Ausführungsbeispiel eine reine parallele Verarbeitung die summierten Noniusdaten für eine Gruppe aus einem Basisereignis und Nebenereignissen parallel erzeugen.
  • Beim zweiten, in den 11 bis 15 gezeigten Ausführungsbeispiel werden die Noniusdaten jedoch für jedes Nebenereignis als eine Zeitdauer ab einem unmittelbar vorhergehenden Ereignis in einer Art und Weise definiert, die mit dem Beispiel der 4A und 4B vergleichbar ist. Beim Beispiel der 11 bis 15 werden die Nebenereignisse lediglich durch die Noniusdaten beschrieben, die eine Zeitdauer ab dem unmittelbar vorhergehenden Ereignis sind, und die Basisereignisse werden durch eine Kombination aus den Ereigniszähldaten und den Ereignisnoniusdaten beschrieben. Folglich muss die serielle Verarbeitung für die Noniusdaten innerhalb jeder Gruppe aus dem Basisereignis und den Nebenereignissen durchgeführt werden. Da jedes Nebenereignis als eine Zeitdauer ab dem unmittelbar vorangegangenen Ereignis definiert ist, wird beim zweiten Ausführungsbeispiel erwartet, dass die Zahl von Datenbits für die Noniusdaten klein sein kann, da eine Zeitdifferenz zwischen zwei aufeinander folgenden Ereignissen klein sein kann.
  • Beim Beispiel von 11 und 12, wo jeder Verarbeitungstakt doppelt so lang ist wie jeder Ereignistakt, werden zwei Ausgaben (summierte Noniusdaten) parallel erzeugt, während alle Ereignisdaten auf eine serielle Weise summiert werden. Wie es im Signalformdiagramm von 11 und in der Datentabelle von 12 gezeigt ist, beträgt der Zeitablauf des Ereignisses E1 eine Zeitdauer ΔV1 ab dem Ereignis E0, wie beim Beispiel von 4A. Der Zeitablauf des Ereignisses E2 beträgt eine Zeitdauer ΔV2 ab dem Ereignis E1 und der Zeitablauf des Ereignisses E3 beträgt eine Zeitdauer ΔV3 ab dem Ereignis E2 und so weiter.
  • Auf diese Weise wird der Zeitablauf eines jeden Ereignisses durch das unmittelbar vorausgehende Ereignis definiert. Ungleich dem Beispiel der 4A und 4B gibt es jedoch eine Unterscheidung zwischen dem Basisereignis und dem Nebenereignis. Eine Gruppe, die aus einem Basisereignis und Nebenereignissen besteht, wird zur Erzeugung paralleler Ausgaben der summierten Noniusdaten spezifiziert, wie es in der Ereignissummierungslogik von 15 gezeigt ist.
  • In 12 werden die Ereignisdaten für das Ereignis E0 aus einem Satz von Ereignisdaten C0 und Ereignisnoniusdaten V0 gebildet und die Ereignisdaten für jedes der Ereignisse E2 und E4 werden zudem aus einem Satz von Ereigniszähldaten und Ereignisnoniusdaten gebildet, d. h. C2 und V2 bzw. C4 und V4. Die Ereignisse E1, E2 und E3 werden jedoch lediglich durch die Noniusdaten V1, V3, bzw. VS definiert. Mit anderen Worten, die Ereignisse E0, E2 und E4 sind Basisereignisse, während die Ereignisse E1, E3 und E5 Nebenereignisse sind.
  • Wegen des Zusammenhangs 1 zu 2 erzeugt die Ereignissummierungslogik zwei parallele Ausgaben, um die summierten Noniusdaten mit der rate des Ereignistakts, eine für das Basisereignis und eine für das Nebenereignis. Im Fall, dass ein Zusammenhang 1 zu 4 besteht, erzeugt die Ereignissummierungslogik vier parallele Ausgaben, eine für das Basisereignis und die anderen drei für die Nebenereignisse. Um den Zusammenhang 1 zu N abzudecken, werden im Schaltungsdiagramm von 15 N Ausgaben erzeugt, wie später detaillierter beschrieben werden wird. Ungleich den in den 7B oder 10 gezeigten Ausführungsbeispielen, die lediglich die reine parallele Verarbeitung mit einbezieht, bezieht die Zeitablaufberechnung beim Beispiel der 11 bis 15 des Weiteren die serielle Verarbeitung mit ein, weil der Ereigniszeitablauf für jedes Ereignis als eine Zeitdifferenz ab dem unmittelbar vorhergehenden Ereignis definiert wird.
  • Beim Beispiel der 13 und 14, wo jeder Verarbeitungstakt viermal so lang ist wie jeder Ereignistakt, werden vier Ausgaben (summierte Noniusdaten) parallel erzeugt, während alle Ereignisdaten in serieller Weise summiert werden. Wie es im Signalformdiagramm von 13 und in der Datentabelle von 14 gezeigt ist, beträgt der Zeitablauf des Ereignisses E1 eine Zeitdauer ΔV1 ab dem Ereignis E0, wie beim Beispiel von 4A. Der Zeitablauf des Ereignisses E2 beträgt eine Zeitdauer ΔV2 ab dem Ereignis E1 und der Zeitablauf des Ereignisses E3 beträgt eine Zeitdauer ΔV3 ab dem Ereignis E2 und so weiter.
  • Auf diese Art und Weise wird der Zeitablauf eines jeden Ereignisses als eine Zeitdifferenz ab dem unmittelbar vorhergehenden Ereignis definiert. In 14 werden die Ereignisdaten für das Ereignis E0 aus einem Satz aus Ereigniszähldaten C0 und Ereignisnoniusdaten V0 gebildet und die Ereignisdaten für das Ereignis E4 werden zudem aus einem Satz aus Ereigniszähldaten C4 und Ereignisnoniusdaten V4 gebildet. Die Ereignisse E1, E2 und E3 werden jedoch lediglich durch die Ereignisnoniusdaten V1, V2 bzw. V3 definiert. Gleicherweise werden die Ereignisse E5, E6 und E7 lediglich durch die Ereignisnoniusdaten V5, V6 bzw. V7 definiert.
  • Mit anderen Worten, die Ereignisse E0 und E4 sind Basisereignisse, während die Ereignisse E1 bis E3 und E5 bis E7 Nebenereignisse sind. Ereignisse in einer Gruppe, die aus einem Basisereignis (Ereignis E0) und drei Nebenereignissen (Ereignisse E1 bis E3) besteht, werden bei der vorliegenden Erfindung parallel verarbeitet. Gleicherweise werden die Ereignisse in einer anderen Gruppe, die aus einem Basisereignis (Ereignis E4) und drei Nebenereignissen (Ereignisse E5 bis E7) besteht, bei der vorliegenden Erfindung parallel verarbeitet.
  • In 15 beinhaltet die Ereignissummierungslogik eine Ereigniszähllogik 36, eine Ereigniszustandsmaschine 38, einen Ereignisakkumulator, der aus einem Addierer 132 und einem Register 134, Addierern 144(1) bis 144(1-N) und Registern 140(1) bis 140(N-1) zusammengesetzt ist. Die Ereigniszähllogik 36 und die Ereigniszustandsmaschine 38 sind im Wesentlichen die gleichen als jene, die in den 7B und 10 gezeigt sind. Ungleich den vorherigen Beispielen in den 7A und 10 summiert der Akkumulator alle Noniusdaten, entweder der Nebenereignisse oder der Basisereignisse, um die N-ten summierten Noniusdaten zu erzeugen.
  • Der Addierer 144(1) addiert die Noniusdaten des Basisereignisses zu den N-ten summierten Noniusdaten aus dem Akkumulator. Der Addierer 144(2) addiert die Noniusdaten des Basisereignisses und des ersten Nebenereignisses zu den N-ten summierten Noniusdaten aus dem Akkumulator. Ein ähnlicher Summierungsprozess wird für alle verbleibenden Nebenereignisse durchgeführt. Demgemäß führt die Ereignissummierungslogik von 15 die serielle Verarbeitung durch, während die N parallelen Ausgaben erzeugt werden.
  • Wie es im vorigen beschrieben worden ist, erreicht dieses Verfahren durch Verwendung mehrfacher Nonien pro Verarbeitungstaktzyklus eine höhere Ereignisverarbeitungsrate. Auch wenn der Verarbeitungstakt um 1/N langsamer ist als der Ereignistakt, können die summierten Noniendaten über die N parallelen Ausgaben auf diese Weise mit einer Rate des Ereignistakts erzeugt werden. Die Zahl der Nebenereignisse in jeder Gruppe ist gleich der Zahl an Ereignistakten im Prozessortaktzyklus minus den Ereignistakt, der mit dem Basisereignis verbunden ist. Es sollte beachtet werden, dass dieses Verfahren auf einen Ereignistakt mit beliebiger Geschwindigkeit skalierbar ist. Des Weiteren setzt das Verfahren voraus, dass für jeden Ereignistaktzyklus ein Ereignis (Basis- oder Nebenereignis) besteht.
  • Das dritte Ausführungsbeispiel der vorliegenden Erfindung ist auf die Auflösung der Noniusdatenwerte gerichtet, d. h. die Auflösung der Platzierung der Ereignisflanken. Die Auflösung der Noniusdaten hängt davon ab, wie ein Ereignisgenerator (wie er etwa in 1 gezeigt ist) diese Werte interpretiert. Ein Beispiel des Aufbaus eines Ereignisgenerators ist in der oben erwähnten US-Anmeldung Nr. 09/406,300 offenbart. Die Noniuswerte (summierte Noniusdaten), wie etwa aus der Ereignissummierungslogik von 10 oder 15 werden an verschiedene Verzögerungsschaltungen (Ereignisverzögerungslogik) im Ereignisgenerator geliefert. Die Ereignisverzögerungsschaltung erzeugt Verzögerungszeiten, die durch die Noniusdaten mit hoher Zeitablaufauflösung spezifiziert sind. Wie es im Fachgebiet bekannt ist, werden solche Verzögerungszeiten durch verschiedene Verzögerungsschaltungen erzeugt, die typischerweise aus einer Serie verbundener CMOS-Gatter aufgebaut sind.
  • Der Ereignisgenerator kann alle hereinkommenden Noniusdatenwerte so behandeln, dass sie Bruchteile des Verarbeitungstaktzyklus sind. Das würde der Fall sein, wenn der Verarbeitungstakt des Ereignisgenerators selbst die gleiche Frequenz aufweist wie der der Ereignisverarbeitungspipeline (beispielsweise die oben beschriebene Ereignissummierungslogik), wie es im Blockdiagramm von 16 gezeigt ist. Dieses Blockdiagramm zeigt Basiselemente in einem ereignisbasierten Testsystem, das einen Ereignisspeicher zum Speichern von Ereignisdaten enthält, wie sie in den Datentabellen in den vorherigen Ausführungsbeispielen gezeigt sind, ferner eine Verarbeitungspipeline 122, die die oben beschriebene Ereignissummierungslogik enthält, und einen Ereignisgenerator 124 zum Erzeugen von Ereignissen, wie etwa Ansteuerereignissen und Abfrageereignissen.
  • Im Beispiel von 16 werden die Noniusdaten (summierte Noniusdaten) zuerst registriert, bevor sie direkt an die Ereignisverzögerungslogik (Ereignisverzögerungsschaltung) gesandt werden. Die Ereignisverzögerungslogik muss Verzögerungen bereitstellen, die eine ganze Verarbeitungstaktperiode überspannt, da keine anderen Takte mit höherer Geschwindigkeit bestehen, um eine höhere Zeitablaufgranularität bereitzustellen. Das bedeutet, dass die Noniusdatenbits in der Lage sein müssen, die ganze Verarbeitungstaktperiode zu umfassen, während die gewünschte Zeitablaufauflösung beibehalten wird.
  • Die Tabelle von 17 veranschaulicht die Noniusauflösung (Zeitablaufauflösungen für die Ansteuerereignisse und die Abfrageereignisse), wenn feste Zahlen an Noniusbits verwendet werden. Hier sollte beachtet werden, dass die Auflösung gleich der Zeitperiode des Pipelinetakts (Verarbeitungstakt) dividiert durch die Zahl der Noniusbits ist. Als Beispiel für einen Verarbeitungstakt von 125 MHz beträgt die Zeitperiode (ein Zyklus pro Zeitdauer) 8 ns. In diesem Fall beträgt die Zeitablaufauflösung 62.5 ps, da feste 7 Bits der Noniusdaten 8 ns repräsentieren. Für einen Verarbeitungstakt von 250 MHz beträgt die Zeitperiode (eine Zykluszeitdauer) 4 ns, daher beträgt die Zeitablaufauflösung durch die festen 7 Bit der Noniusdaten 31.25 ps.
  • Die Tabelle von 17 zeigt den Fall, bei dem die Zeitablaufauflösung auf der Grundlage des Verarbeitungstakts festgelegt ist (d. h. ein Verarbeitungstakt von 250 MHz und Noniusdaten von festen 7 Bit), ungeachtet der Ereignistaktfrequenz. Wie in dieser Tabelle gezeigt ist, beträgt die Verarbeitungstaktfrequenz (Pipelinetaktfrequenz) dann 125 MHz, die Zeitablaufauflösung durch die festen 7 Bit Noniusdaten beträgt 62.50 ps (Picosekunden). Wenn die Verarbeitungstaktfrequenz 250 MHz beträgt, beträgt die Zeitablaufauflösung durch die festen 7 Bit Noniusdaten 31.25 ps.
  • Demgemäß macht es in diesem Fall nichts aus, wie die Ereignistaktfrequenz höher als der Verarbeitungstakt ist, wie etwa 500 MHz bis 1.5 GHz, die Zeitablaufauflösung ist unverändert. Die Spalte "Nonius pro Takt" gibt die Zahl der parallelen Ausgaben der in der 10 und 15 gezeigten Ereignissummierungslogik an. Das bedeutet, dass im Fall der in 17 gezeigten Tabelle die Ereigniszeitablaufberechnung die Noniusdaten durch die parallele Verarbeitung erzeugen kann, so dass sie mit der Rate des Ereignistakts verwendet werden können, jedoch ist die Zeitablaufauflösung auf den Verarbeitungstakt beschränkt.
  • Die Auflösung des Testsystems kann durch Erhöhung der Noniusbits verbessert werden, sowie die Ereignistaktfrequenz steigt. Die Tabelle von 18 veranschaulicht solch eine Alternative, wenn variable Noniusbits verwendet werden. Wie die Tabelle von 18 zeigt, kann die Auflösung durch Verwendung von mehr Noniusbits verbessert werden. Wenn beispielsweise die Verarbeitungstaktfrequenz (Pipeline) 250 MHz beträgt und die Ereignistaktfrequenz 500 MHz beträgt, kann die Zeitablaufauflösung 15.63 ps sein, wenn die Noniusdaten durch 8 Bit definiert werden. Wenn die Verarbeitungstaktfrequenz (Pipeline) 250 MHz beträgt und die Ereignistaktfrequenz 1.5 GHz beträgt, kann die Zeitablaufauflösung 3.91 ps sein, wenn die Noniusdaten durch 10 Bit definiert werden.
  • Die Tabelle von 18 macht es erforderlich, dass die Noniusverzögerungslogik im Ereignisgenerator Bits addieren muss, um die Differenz zwischen der Verarbeitunkstakfrequenz und der Ereignisplatzierungsgenauigkeit zu kompensieren. Das bedeutet, dass die Verarbeitungslogik im Ereignisgenerator 128 in 16 sowie die Ereignissummierungslogik in den 10 und 15 jedes Mal erweitert oder modifiziert werden müssen, wenn die Ereignisfrequenz zunimmt. Weitere Nachteile beim vorhin beschriebenen Weg der Noniusverwendung sind, dass die Noniuswerte ein Bruchteil des Verarbeitungstaktzyklus sind, alle Logiken mit geringerer Geschwindigkeit laufen, weil die Frequenz des Verarbeitungstakts wesentlich geringer ist als die des Ereignistakts.
  • Die Nachteile des obigen Verfahrens können überwunden werden, wenn der Ereignisgenerator alle hereinkommenden Noniuswerte als Bruchteile des Ereignistaktzylclus behandelt. Dies würde der Fall sein, wenn der Verarbeitungstakt des Ereignisgenerators selbst durch Multiplizieren der Verarbeitungstakte die gleiche Frequenz aufweist wie die Ereignistaktfrequenz. In diesem Fall wird die Ereignisverarbeitungslogik die Daten verarbeiten, die eine Taktfrequenz verwenden, die langsamer ist als die Ereignistaktrate, aber Berechnungen durchführen, die die Verarbeitung der Ereignisdaten mit der Ereignisdatenrate simuliert.
  • 19 zeigt ein Beispiel diesen Typs von System, bei dem eine Ereignisdemultiplexlogik den Verarbeitungstakt (Pipelinetakt) als eine Dateneingabe verwendet, um die Demultiplexoperation mit dem Verarbeitungstaktzyklus zu synchronisieren. Um genauer zu sein, ein Ereignisgenerator 224 beinhaltet eine Ereignisdemultiplexlogik 226 und eine Ereignisverzögerungslogik 228. Die Ereignisdemultiplexlogik 226 empfängt zwei oder mehrere summierte Noniuswerte aus der Ereignisverarbeitungspipeline (Ereignissummierungslogik) 122 in paralleler Weise mit der Rate des Verarbeitungszyklus und erzeugt eine serielle Ausgabe, die die Rate des Ereignistakts aufweist, d. h. sie führt eine Umwandlung parallel zu seriell durch.
  • Was den Schaltungsaufbau betrifft, ist die Ereignisverzögerungslogik 228 äquivalent mit der Ereignisverzögerungsschaltung 128 in 16, um eine feine Verzögerungszeit zu erzeugen, die durch die summierten Noniusdaten spezifiziert wird. Die Ereignisverzögerungslogik 228 arbeitet jedoch mit der Rate des Ereignistakts, um eine Verzögerungszeit zu erzeugen, die durch jeden der Noniuswerte spezifiziert wird, die in einer seriellen Weise am Ausgang der Ereignisdemultiplexlogik 226 erzeugt werden. Wie es im Fachgebiet bekannt ist, werden solche Verzögerungszeiten durch variable Verzögerungsschaltungen erzeugt, die typischerweise durch eine Serie von verbundenen CMOS-Gattern aufgebaut sind.
  • Im Beispiel der 20A bis 20E führt der Ereignisgenerator ein Ereignisdemultiplexen 1 zu 2 durch, wodurch die Zeitablaufauflösung um das zweifache gesteigert wird. Im Beispiel der 21A bis 21G führt der Ereignisgenerator ein Ereignisdemultiplexen 1 zu 4 durch, wodurch die Zeitablaufauflösung um das vierfache gesteigert wird. Die Ereignisdemultiplexlogik 226 empfängt in paralleler Weise die summierten Noniusdaten V0, V2, V4, ... für das Basisereignis, wie sie in der 20C gezeigt sind, und die summierten Noniusdaten V1, V3, V5, ... für das Nebenereignis, wie sie in 20D gezeigt sind. Solch eine parallele Form der summierten Noniusdaten wird von der Ereignissummierungslogik von 7B geliefert, die eine parallele Verarbeitung 1 zu 2 durchführt. Die Ereignisdemultiplexlogik 226 erzeugt die demultixten Noniusdaten mit der Wiederholungsrate des Ereignistakts, wie e in 20E gezeigt ist. Mit anderen Worten, die Noniusdaten, die in Synchronisation mit dem Verarbeitungstakt in paralleler Weise empfangen werden, werden in Synchronisation mit dem Ereignistakt in serieller Form ausgegeben. Demgemäß ist der Ereignisgenerator 224 in der Lage, auf der Grundlage des Ereignistakts eine Verzögerungszeit mit der Zeitablaufauflösung zu erzeugen, die zweimal größer ist als die originale Zeitablaufauflösung.
  • In den 21A bis 21G weist der Ereignistakt von 21B eine Frequenz auf, die viermal größer ist als die des Verarbeitungszyklus von 21A. Die Ereignisdemultiplexlogik 226 empfängt parallel die Noniusdaten für das Basisereignis und für die Nebenereignisse. Die Demultiplexlogik 226 wird nämlich mit den summierten Noniusdaten V0, V4, V8, ... für das Basisereignis, wie es in 21C gezeigt ist, und den summierten Noniusdaten V1, V5, V9, ... für das erste Nebenereignis versorgt, wie es in 21D gezeigt ist. Die Demultiplexlogik 226 wird darüber hinaus mit den summierten Noniusdaten V2, V6, V10, ... für das zweite Nebenereignis, wie es in 21E gezeigt ist, und mit den summieren Noniusdaten V3, V7, V11, ... für das dritte Nebenereignis versorgt, wie es in 21F gezeigt ist.
  • Solch eine parallele Form der summierten Noniusdaten wird aus der Ereignissummierungslogik von 10 geliefert, die eine parallele Verarbeitung 1 zu 4 durchführt. Die Ereignisdemultiplexlogik 226 erzeugt die demultiplexten Noniusdaten mit der Wiederholungsrate des Ereignistakts, wie es in 21G gezeigt ist. Mit anderen Worten, die Noniusdaten, die in Synchronisation mit dem Verarbeitungstakt in paralleler Weise empfangen werden, werden in Synchronisation mit dem Ereignistakt in serieller Form ausgegeben. Demgemäß ist der Ereignisgenerator 224 in der Lage, auf der Grundlage des Ereignistakts eine Verzögerungszeit mit der Zeitablaufauflösung zu erzeugen, die viermal größer ist als die originale Zeitablaufauflösung.
  • Die Tabelle in 22 fasst den Effekt des dritten Ausführungsbeispiels der vorliegenden Erfindung zusammen, bei dem die Auflösung der Noniusbits an die Geschwindigkeit des Ereignistakts gebunden wird als an den Verarbeitungstakt, Dadurch, dass man dieses tut, werden die festen Noniusdaten immer die gleiche Datenauflösung liefern. Da die Noniusdaten mit der Geschwindigkeit des Ereignistakts erzeugt werden, wird die sich ergebende Zeitablaufauflösung eines jeden Noniuswerts mit der Steigerung der Geschwindigkeit des Ereignistakts zunehmen, wie es in der Tabelle gezeigt ist. Wenn beispielsweise die Verarbeitungstaktfrequenz (Pipeline) 250 MHz beträgt und die Ereignistaktfrequenz 500 MHz beträgt, wird die Zeitablaufauflösung durch die festen 7-Bit-Noniusdaten 15.63 ps betragen. Wenn die Verarbeitungstaktfrequenz (Pipeline) 250 MHz beträgt und die Ereignistaktfrequenz 1.5 GHz beträgt, wird die Zeitablaufauflösung durch die festen 7-Bit-Noniusdaten 5.21 ps betragen.
  • Dieser Typ von Noniusverwendung, der in den 19 bis 22 gezeigt ist, hat den Vorteil, dass (1) die Noniusdaten immer noch Bruchteile eines Ereignistaktzyklus sind und (2) nur der Ereignisgenerator mit der Geschwindigkeit des Ereignistakts laufen muss. Wenn beispielsweise ein tatsächliches System implementiert wird, erlaubt dieses Verfahren, dass die Noniusdaten mit geringer Geschwindigkeit zwischen Chips übertragen und innerhalb des Generatorchips auf eine Hochgeschwindigkeitsdomäne konvertiert werden. Demgemäß braucht bei der vorliegenden Erfindung jede Ereignisverarbeitungspipeline nur Daten auf eine feste Zahl von Bits zu verarbeiten, ungeachtet der Ereignistaktfrequenz. Mehrere identische Pipelines würden dann erzeugt werden, um die notwendige Zahl an Nonien zu gewinnen.
  • Die Verarbeitungsverfahren beim dritten Ausführungsbeispiel der vorliegenden Erfindung erfordern die Verwendung mehrfacher Noniusereignisse während eines jeden Verarbeitungstaktzyklus. Bei einem tatsächlichen Test hängt die Verwendung der Nonien vom Zeitablauf eines bestimmten Pins eines Bauteilprüflings (DUT) ab. Beispielsweise wird ein Taktpin eine höhere Ereignisrate erfordern als ein Datenbuspin. Das bedeutet, dass einige der Noniuswerte eine Verzögerung liefern aber sonst nicht ein Ereignis (wie etwa ein Ansteuerereignis oder ein Abfrageereignis) a Pin des DUT erzeugen müssen.
  • Das kann durch Einfügen von Nichtbetriebsereignissen (NOP) in die im Ereignisspeicher gespeicherten Ereignisdaten erreicht werden. Solche NOP-Ereignisse werden typischerweise als ein Ereignistyp in den Ereignisdaten spezifiziert. Diese NOP-Ereignisse erlauben es, dass die Noniusverzögerungswerte verwendet werden, ohne eine Veränderung des Zustands des speziellen Pins des DUT zu verursachen. Die 23 und 24A bis 24G veranschaulichen ein Beispiel solch einer Modifikation auf der Grundlage des multiplexten Ereignistakts für solch eine Anwendung. Die Tabelle in 23 zeigt ein Beispiel für von im Ereignisspeicher gespeicherten Ereignisdaten und die Zeitablaufdiagramme der 24A bis 24G zeigen den Effekt des Einfügens der NOP-Ereignisse gemäß der vorliegenden Erfindung.
  • Der Ereignisgenerator, wie er etwa in der oben erwähnten US-Patentanmeldung Nr. 09/406,300 gezeigt wird, empfängt die Daten vom Ereignistyp aus dem Ereignisspeicher, um den Typ des Ereignisses zu bestimmen, das an seinem Ausgang erzeugt werden soll. Beim Beispiel der 23 und 24A bis 24G erzeugt der Ereignisgenerator ein Ereignis einer ansteigenden Flanke (Ansteuerung hoch) oder einer abfallenden Flanke (Ansteuerung niedrig), das eine Verzögerungszeit aufweist, die durch die summierten Noniusdaten definiert wird. Wenn der Ereignisdatentyp NOP ist, erzeugt der Ereignisgenerator ein NOP-Ereignis, das nur die angegebene Verzögerung aufweist, ohne die Veränderungen im Logikzustand einzubeziehen.
  • Bei den Signalformen, die in den 24A bis 24G gezeigt sind, ist der Zusammenhang des Zeitablaufs, der in den 24A bis 24E gezeigt ist, im Wesentlichen der gleiche wie der der 20A bis 20E, da sie den Fall des Demultiplexens 1 zu 2 zeigen. Wie es in 24H gezeigt ist, zeigen die Ereignistypdaten, die von der Ereignisdemultiplexlogik 226 im Ereignisgenerator von 19 demultiplext wurden, die Ereignistypdaten in der Folge des Ereignistakts. Die Ereignistypdaten in 24H entsprechen denen, die in der Tabelle von 23 gezeigt sind, wie etwa Ansteuerung hoch (Drv 1), Ansteuerung niedrig (Drv 0) und NOP. Es sollte beachtet werden, dass anstelle des NOP-Ereignisses der gleiche Effekt durch Ersetzen des NOP-Ereignisses durch eine längere Ereigniszählung am Basisereignis erreicht werden kann.
  • Gemäß der vorliegenden Erfindung kann die Verarbeitung von Ereigniszeitabläufen für ereignisbasierte Hochgeschwindigkeitstestsysteme durchgeführt werden, um die Noniusdaten mit der Rate eines Ereignistakts unter Verwendung eines Verarbeitungstakts zu erzeugen, die wesentlich langsamer ist als die des Ereignistakts. Das Ereignisverarbeitungsgerät führt unter Verwendung des Verarbeitungstakts eine parallele Ereignisverarbeitung durch, wodurch summierte Noniusdaten mit der Rate des Ereignistakts erzeugt werden.
  • Des Weiteren ist das ereignisbasierte Testsystem bei der vorliegenden Erfindung in der Lage, unter Verwendung des Verarbeitungstakts Verzögerungszeiten mit hohen Zeitablaufauflösungen entsprechend dem Ereignistakt zu erzeugen. Der Ereignisgenerator beim ereignisbasierten Testsystem empfängt eine Vielzahl von Noniusdatenwerten, die in einer parallelen Form mit einer Rate des Verarbeitungstakts empfangen wurden, und erzeugt die Noniusdatenwerte in einer seriellen Form mit der rate des Ereignistakts, wodurch die Zeitablaufauflösung mit dem Ereignistakt übereinstimmt.
  • Obwohl hierin nur ein bevorzugtes Ausführungsbeispiel speziell veranschaulicht und beschrieben wurde, wird man erkennen, dass im Lichte der obigen Lehren und innerhalb des Geltungsbereichs der beigefügten Ansprüche viele Modifikationen und Variationen der vorliegenden Erfindung möglich sind, ohne von der Wesensart und vom beabsichtigten Umfang der Erfindung abzuweichen.
  • Zusammenfassung:
  • Gerät und Verfahren zur Berechnung des Ereigniszeitablaufs für ein ereignisbasiertes Hochgeschwindigkeitstestsystem. Das Gerät zur Verarbeitung von Ereignissen beinhaltet einen Ereignisspeicher zum Speichern von Ereignisdaten für jedes Ereignis, wobei die Ereignisdaten aus einem ganzzahligen Vielfachen einer Taktperiode und aus einem Bruchteil einer Taktperiode gebildet werden, eine Ereignissummierungslogik zum Summieren der Zeitablaufdaten und zur Erzeugung der summierten Zeitablaufdaten in einer parallelen Form, und einen Ereignisgenerator zum erzeugen von Ereignissen, die durch die Ereignisdaten spezifiziert werden, auf der Grundlage der summierten Zeitablaufdaten, die in paralleler Form aus der Ereignissummierungslogik erhalten wurden.

Claims (30)

  1. Gerät zur Verarbeitung von Ereignissen zur Verwendung mit einem ereignisbasierten Testsystem zum Testen eines Halbleiterbauelementprüflings (DUT), umfassend: einen Ereignisspeicher zum Speichern von Ereignisdaten eines jeden Ereignisses, wobei die Ereignisdaten Zeitablaufdaten für jedes Ereignis beinhalten, welche aus einem ganzzahligen Vielfachen einer Taktperiode (Ereigniszähldaten) und einem Bruchteil der Taktperiode (Ereignisnoniusdaten) gebildet werden; eine Ereignissummierungslogik zur Summierung der Zeitablaufdaten und zur Erzeugung der summierten Zeitablaufdaten in paralleler Form; und einen Ereignisgenerator zur Erzeugung von Ereignissen, die durch die Ereignisdaten auf der Grundlage der summierten Zeitablaufdaten erzeugt werden, die in paralleler Form aus der Ereignissummierungslogik erhalten werden; wobei die Ereignisse in den Ereignisdaten als Gruppen aus Ereignissen spezifiziert werden, wobei jede Gruppe aus einem Basisereignis und wenigstens einem Nebenereignis aufgebaut ist.
  2. Gerät zur Verarbeitung von Ereignissen nach Anspruch 1, wobei die im Ereignisspeicher gespeicherten Ereignisdaten für jedes Ereignis Ereignistypdaten enthalten, um einen Ereignistyp anzugeben, der vom Ereignisgenerator erzeugt werden soll.
  3. Gerät zur Verarbeitung von Ereignissen nach Anspruch 1, wobei die Zeitablaufdaten für die Basisereignisse aus einem Satz von Ereigniszähldaten und Ereignisnoniusdaten gebildet werden, während die Zeitablaufdaten für die Nebenereignisse ausschließlich aus den Ereignisnoniusdaten gebildet werden.
  4. Gerät zur Verarbeitung von Ereignissen nach Anspruch 1, wobei die summierten Zeitablaufdaten für das Basisereignis eine Summe der Zeitablaufdaten von vorherigen Basisereignissen und eines momentanen Basisereignisses sind und die summierten Zeitablaufdaten für das Nebenereignis eine Summe aus den summierten Zeitablaufdaten für das Basisereignis und den Noniusdaten des Nebenereignisses sind, das mit Bezug auf das Basisereignis definiert ist, und wobei die summierten Zeitablaufdaten für jede Gruppe aus dem Basisereignis und dem Nebenereignis durch die Ereignissummierungslogik in paralleler Form erzeugt werden.
  5. Gerät zur Verarbeitung von Ereignissen nach Anspruch 1, wobei die summierten Zeitablaufdaten eine Summe der Zeitablaufdaten von vorherigen Basis- und Nebenereignissen und eines momentanen Ereignisses sind, die durch serielle Verarbeitung durch die Ereignissummierungslogik erzeugt wird, und wobei die summierten Zeitablaufdaten für jede Gruppe aus dem Basisereignis und dem Nebenereignis durch die Ereignissummierungslogik in paralleler Form erzeugt werden.
  6. Gerät zur Verarbeitung von Ereignissen nach Anspruch 1, wobei die Taktperiode eine Zyklenzeitdauer eines Verarbeitungstaktes ist, der ein Referenztakt zum Betrieb der Hardware des Geräts zur Verarbeitung von Ereignissen ist, und wobei die Ereignissummierungslogik die summierten Zeitablaufdaten an einer Vielzahl von Ausgängen in einer parallelen Form erzeugt, wodurch ermöglicht wird, die Ereignisse mit einer Rate eines Ereignistaktes zu erzeugen, der eine Frequenz aufweist, die höher ist als die des Verarbeitungstakts.
  7. Gerät zur Verarbeitung von Ereignissen nach Anspruch 4, wobei die Taktperiode eine Zyklenzeitdauer eines Verarbeitungstaktes ist, der ein Referenztakt zum Betrieb der Hardware des Geräts zur Verarbeitung von Ereignissen ist, und wobei die Ereignissummierungslogik die summierten Zeitablaufdaten an einer Vielzahl von Ausgängen in einer parallelen Form erzeugt, wodurch ermöglicht wird, die Ereignisse mit einer Rate eines Ereignistaktes zu erzeugen, der eine Frequenz aufweist, die höher ist als die des Verarbeitungstakts, und wobei eine Zahl von parallelen Ausgängen der Ereignissummierungslogik einem Verhältnis der Frequenzen zwischen dem Verarbeitungstakt und dem Ereignistakt entspricht.
  8. Gerät zur Verarbeitung von Ereignissen nach Anspruch 7, wobei die Zahl der parallelen Ausgänge der Ereignissummierungslogik mit einer Gesamtzahl von Basisereignissen und der Nebenereignissen in einer jeden Gruppe aus den im Ereignisspeicher gespeicherten Ereignisdaten korrespondiert.
  9. Gerät zur Verarbeitung von Ereignissen nach Anspruch 5, wobei die Taktperiode eine Zyklenzeitdauer eines Verarbeitungstaktes ist, der ein Referenztakt zum Betrieb der Hardware des Geräts zur Verarbeitung von Ereignissen ist, und wobei die Ereignissummierungslogik die summierten Zeitablaufdaten an einer Vielzahl von Ausgängen in einer parallelen Form erzeugt, wodurch ermöglicht wird, die Ereignisse mit einer Rate eines Ereignistaktes zu erzeugen, der eine Frequenz aufweist, die höher ist als die des Verarbeitungstakts, und wobei eine Zahl von parallelen Ausgängen der Ereignissummierungslogik einem Verhältnis der Frequenzen zwischen dem Verarbeitungstakt und dem Ereignistakt entspricht.
  10. Gerät zur Verarbeitung von Ereignissen nach Anspruch 9, wobei die Zahl der parallelen Ausgänge der Ereignissummierungslogik mit der Gesamtzahl von Basisereignissen und der Nebenereignissen in einer jeden Gruppe aus den im Ereignisspeicher gespeicherten Ereignisdaten korrespondiert.
  11. Gerät zur Verarbeitung von Ereignissen nach Anspruch 1, wobei die Ereignissummierungslogik aus folgendem besteht: eine Ereigniszähllogik zum Zählen einer Zahl eines Verarbeitungstaktes und zur Erzeugung eines Endzählpulses, wenn die gezählte Zahl einen Wert erreicht, der durch die Ereigniszähldaten des Basisereignisses angegeben wird; eine Ereignisverarbeitungszustandsmaschine zum Erzeugen eines Freigabesignals nach dem Erhalt des Endzählpulses aus der Ereigniszähllogik; einen Akkumulator zur Summierung der Ereignisnoniusdaten der Basisereignisse und zum Erzeugen der summierten Noniusdaten nach Erhalt des Freigabesignals aus der Ereignisverarbeitungszustandsmaschine; und wenigstens einen Addierer zum Addieren der Noniusdaten des Nebenereignisses zu den summierten Noniusdaten aus dem Akkumulator; wobei die Daten aus dem Akkumulator und die Daten aus dem Addierer in paralleler Form ausgegeben werden.
  12. Gerät zur Verarbeitung von Ereignissen nach Anspruch 1, wobei die Ereignissummierungslogik aus folgendem besteht: eine Ereigniszähllogik zum Zählen einer Zahl eines Verarbeitungstaktes und zur Erzeugung eines Endzählpulses, wenn die gezählte Zahl einen Wert erreicht, der durch die Ereigniszähldaten des Basisereignisses angegeben wird; eine Ereignisverarbeitungszustandsmaschine zum Erzeugen eines Freigabesignals nach dem Erhalt des Endzählpulses aus der Ereigniszähllogik; einen Akkumulator zur Summierung der Ereignisnoniusdaten der Basisereignisse und der Ereignisnoniusdaten der Nebenereignisse und zum Erzeugen der summierten Noniusdaten nach Erhalt des Freigabesignals aus der Ereignisverarbeitungszustandsmaschine; und wenigstens einen Addierer zum Addieren der Noniusdaten des Nebenereignisses zu den summierten Noniusdaten aus dem Akkumulator; wobei die Daten aus dem Akkumulator und die Daten aus dem Addierer in paralleler Form ausgegeben werden.
  13. Gerät zur Verarbeitung von Ereignissen zur Verwendung mit einem ereignisbasierten Testsystem zum Testen eines Halbleiterbauelementprüflings (DUT), umfassend: einen Ereignisspeicher zum Speichern von Ereignisdaten eines jeden Ereignisses, wobei die Ereignisdaten Zeitablaufdaten für jedes Ereignis beinhalten, welche aus einem ganzzahligen Vielfachen einer Taktperiode (Ereigniszähldaten) und einem Bruchteil der Taktperiode (Ereignsnoniusdaten) gebildet werden, wobei die Ereignisdaten als Gruppen aus Ereignissen spezifiziert werden, wobei jede Gruppe aus einem Basisereignis und wenigstens einem Nebenereignis aufgebaut ist; eine Ereignissummierungslogik zur Summierung der Zeitablaufdaten und zur Erzeugung der summierten Zeitablaufdaten in paralleler Form an N Ausgängen, wobei die Ereignissummierungslogik durch einen Verarbeitungstakt betrieben wird; und einen Ereignisgenerator zur Erzeugung von Ereignissen, die durch die Ereignisdaten auf der Grundlage von N summierten Zeitablaufdaten erzeugt werden, die in paralleler Form aus der Ereignissummierungslogik erhalten werden; wobei der Ereignisgenerator N summierte Zeitablaufdaten in paralleler Form aus von der Ereignissummierungslogik mit einer Rate des Verarbeitungstaktes empfängt und die summierten Zeitablaufdaten in einer seriellen Form mit einer Rate des Ereignistaktes erzeugt, die N-mal höher ist als die des Verarbeitungstakts.
  14. Gerät zur Verarbeitung von Ereignissen nach Anspruch 1, wobei die im Ereignisspeicher gespeicherten Ereignisdaten für jedes Ereignis Ereignistypdaten enthalten, um einen Ereignistyp anzugeben, der vom Ereignisgenerator erzeugt werden soll.
  15. Gerät zur Verarbeitung von Ereignissen nach Anspruch 14, wobei die Ereignistypdaten ein Nichtbetriebsereignis (NOP) enthalten, eingefügt in eine Serie von Ereignissen, wodurch die Verzögerungszeit durch den Ereignisgenerator erzeugt wird, ohne eine Veränderung im Logikzustand des Ereignisses mit einzubeziehen.
  16. sGerät zur Verarbeitung von Ereignissen nach Anspruch 14, wobei der Ereignisgenerator aus folgendem besteht: einer Ereignisdemultiplexlogik zum Empfang der summierten Zeitablaufdaten in paralleler Form von der Ereignissummierungslogik mit der Rate des Verarbeitungstakts und zur Erzeugung der summierten Zeitablaufdaten in der seriellen Form mit einer Rate des Ereignistakts; und einer Ereignisverzögerungslogik zum Addieren einer Verzögerungszeit, die durch die summierten Noniusdaten spezifiziert ist, zu einem Zeitablauf der entsprechenden summierten Noniusdaten in serieller Form; wobei die Verzögerungszeit eine Zeitablaufauflösung aufweist, die proportional zur Zahl der Datenbits, die für die summierten Noniusdaten verwendet werden, und zu einer Frequenz des Ereignistakts ist.
  17. Gerät zur Verarbeitung von Ereignissen nach Anspruch 13, wobei die Zeitablaufdaten für die Basisereignisse aus einem Satz von Ereigniszähldaten und Ereignisnoniusdaten gebildet werden, während die Zeitablaufdaten für die Nebenereignisse ausschließlich aus den Ereignisnoniusdaten gebildet werden.
  18. Gerät zur Verarbeitung von Ereignissen nach Anspruch 13, wobei die summierten Zeitablaufdaten für das Basisereignis eine Summe der Zeitablaufdaten von vorherigen Basisereignissen und eines momentanen Basisereignisses sind und die summierten Zeitablaufdaten für das Nebenereignis eine Summe aus den summierten Zeitablaufdaten für das Basisereignis und den Noniusdaten des Nebenereignisses sind, das mit Bezug auf das Basisereignis definiert ist, und wobei die summierten Zeitablaufdaten für jede Gruppe aus dem Basisereignis und dem Nebenereignis durch die Ereignissummierungslogik in paralleler Form erzeugt werden.
  19. Gerät zur Verarbeitung von Ereignissen nach Anspruch 13, wobei die summierten Zeitablaufdaten eine Summe der Zeitablaufdaten von vorherigen Basis- und Nebenereignissen und eines momentanen Ereignisses sind, die durch serielle Verarbeitung durch die Ereignissummierungslogik erzeugt wird, und wobei die summierten Zeitablaufdaten für jede Gruppe aus dem Basisereignis und dem Nebenereignis durch die Ereignissummierungslogik in paralleler Form erzeugt werden.
  20. Gerät zur Verarbeitung von Ereignissen nach Anspruch 13, wobei die Ereignissummierungslogik aus folgendem besteht: eine Ereigniszähllogik zum Zählen einer Zahl des Verarbeitungstaktes und zur Erzeugung eines Endzählpulses, wenn die gezählte Zahl einen Wert erreicht, der durch die Ereigniszähldaten des Basisereignisses angegeben wird; eine Ereignisverarbeitungszustandsmaschine zum Erzeugen eines Freigabesignals nach dem Erhalt des Endzählpulses aus der Ereigniszähllogik; einen Akkumulator zur Summierung der Ereignisnoniusdaten der Basisereignisse und zum Erzeugen der summierten Noniusdaten nach Erhalt des Freigabesignals aus der Ereignisverarbeitungszustandsmaschine; und wenigstens einen Addierer zum Addieren der Noniusdaten des Nebenereignisses zu den summierten Noniusdaten aus dem Akkumulator; wobei die Daten aus dem Akkumulator und die Daten aus dem Addierer in paralleler Form ausgegeben werden.
  21. Gerät zur Verarbeitung von Ereignissen nach Anspruch 20, wobei der Akkumulator in der Ereignissummierungslogik die Ereignisnoniusdaten sowohl der Basisereignisse als auch Nebenereignisse summiert und die summierten Noniusdaten nach Erhalt des Freigabesignals von der Ereignisverarbeitungszustandsmaschine erzeugt.
  22. Verfahren zur Verarbeitung von Ereignissen zur Verwendung mit einem ereignisbasierten Testsystem, umfassend die folgenden Schritte: Speichern von Ereignisdaten, die Zeitablaufdaten für jedes Ereignis enthalten und aus einem ganzzahligen Vielfachen einer Taktperiode (Ereigniszähldaten) und einem Bruchteil der Taktperiode (Ereignisnoniusdaten) gebildet werden, wobei die Ereignisdaten als Gruppen aus Ereignissen spezifiziert werden, wobei jede Gruppe aus einem Basisereignis und wenigstens einem Nebenereignis aufgebaut ist; Summieren der Zeitablaufdaten und Erzeugen der summierten Zeitablaufdaten für das Basisereignis und das Nebenereignis in paralleler Form; und Erzeugung der Ereignisse, die durch die Ereignisdaten auf der Grundlage der summierten Zeitablaufdaten spezifiziert werden, die in paralleler Form erhalten werden; wobei die Ereignisse in den Ereignisdaten als Gruppen aus Ereignissen spezifiziert werden, wobei jede Gruppe aus einem Basisereignis und wenigstens einem Nebenereignis aufgebaut ist.
  23. Verfahren zur Verarbeitung von Ereignissen nach Anspruch 22, wobei der Schritt des Speicherns der Ereignisdaten im Ereignisspeicher einen Schritt des Speicherns von Ereignistypdaten für jedes Ereignis beinhaltet, um einen zu erzeugenden Ereignistyp zu spezifizieren.
  24. Verfahren zur Verarbeitung von Ereignissen nach Anspruch 22, wobei der Schritt des Summierens der Zeitablaufdaten einen Schritt der Erzeugung summierter Zeitablaufdaten für das Basisereignis beinhaltet, welches eine Summe aus den Zeitablaufdaten von vorherigen Basisereignissen und eines momentanen Basisereignisses ist, und ferner einen Schritt der Erzeugung summierter Zeitablaufdaten für das Nebenereignis, welches eine Summe aus den summierten Zeitablaufdaten für das Basisereignis und der Noniusdaten des Nebenereignisses ist, das mit Bezug auf das Basisereignis definiert ist.
  25. Verfahren zur Verarbeitung von Ereignissen nach Anspruch 22, wobei der Schritt des Summierens der Zeitablaufdaten einen Schritt der Erzeugung summierter Zeitablaufdaten durch serielle Verarbeitung beinhaltet, welches eine Summe aus den Zeitablaufdaten von vorherigen Basis- und Nebenereignissen und eines momentanen Ereignisses ist.
  26. Verfahren zur Verarbeitung von Ereignissen zur Verwendung mit einem ereignisbasierten Testsystem zum Testen eines Halbleiterbauelementprüflings (DUT), umfassend die folgenden Schritte: Speichern von Ereignisdaten, die Zeitablaufdaten für jedes Ereignis enthalten und aus einem ganzzahligen Vielfachen einer Taktperiode (Ereigniszähldaten) und einem Bruchteil der Taktperiode (Ereignisnoniusdaten) gebildet werden, wobei die Ereignisdaten als Gruppen aus Ereignissen spezifiziert werden, wobei jede Gruppe aus einem Basisereignis und wenigstens einem Nebenereignis aufgebaut ist; Summieren der Zeitablaufdaten und Erzeugen der summierten Zeitablaufdaten an N Ausgängen in paralleler Form mit einer Rate eines Verarbeitungstakts; und Empfang von N summierten Zeitablaufdaten in paralleler Form mit des Rate eines Verarbeitungstakts und Erzeugung der summierten Zeitablaufdaten in einer seriellen Form mit einer Rate eines Ereignistakts, die N-mal höher ist als die des Verarbeitungstakts.
  27. Verfahren zur Verarbeitung von Ereignissen nach Anspruch 26, das darüber hinaus einen Schritt des Addierens einer Verzögerungszeit, die durch die summierten Noniusdaten spezifiziert sind, zu einem Zeitablauf der entsprechenden summierten Noniusdaten in serieller Form umfasst, wobei die Verzögerungszeit eine Zeitablaufauflösung aufweist, die proportional zu einer Zahl von Datenbits, die für die summierten Noniusdaten verwendet werden, und zu einer Frequenz des Ereignistakts ist.
  28. Verfahren zur Verarbeitung von Ereignissen nach Anspruch 26, wobei der Schritt des Speicherns der Ereignisdaten im Ereignisspeicher einen Schritt des Speicherns von Ereignistypdaten für jedes Ereignis umfasst, um einen zu erzeugenden Ereignistyp zu spezifizieren, und wobei die Ereignistypdaten ein Nichtbetriebsereignis (NOP) enthalten, um eine Verzögerungszeit in eine Serie von Ereignissen einzufügen, ohne eine Veränderung im Logikzustand des Ereignisses mit einzubeziehen.
  29. Verfahren zur Verarbeitung von Ereignissen nach Anspruch 26, wobei der Schritt des Summierens der Zeitablaufdaten einen Schritt der Erzeugung summierter Zeitablaufdaten für das Basisereignis beinhaltet, welches eine Summe aus den Zeitablaufdaten von vorherigen Basisereignissen und eines momentanen Basisereignisses ist, und ferner einen Schritt der Erzeugung summierter Zeitablaufdaten für das Nebenereignis, welches eine Summe aus den summierten Zeitablaufdaten für das Basisereignis und der Noniusdaten des Nebenereignisses ist, das mit Bezug auf das Basisereignis definiert ist.
  30. Verfahren zur Verarbeitung von Ereignissen nach Anspruch 26, wobei der Schritt des Summierens der Zeitablaufdaten einen Schritt der Erzeugung summierter Zeitablaufdaten durch serielle Verarbeitung beinhaltet, welches eine Summe aus den Zeitablaufdaten von vorherigen Basis- und Nebenereignissen und eines momentanen Ereignisses ist.
DE10297600T 2001-12-31 2002-12-24 Gerät und Verfahren zur Verarbeitung von Ereignissen für ereignisbasierte Hochgeschwindigkeitstestsysteme Withdrawn DE10297600T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US34609101P 2001-12-31 2001-12-31
US60/346091 2001-12-31
PCT/JP2002/013433 WO2003058263A1 (en) 2001-12-31 2002-12-24 Event processing apparatus and method for high speed event based test system

Publications (1)

Publication Number Publication Date
DE10297600T5 true DE10297600T5 (de) 2005-02-10

Family

ID=23357898

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10297600T Withdrawn DE10297600T5 (de) 2001-12-31 2002-12-24 Gerät und Verfahren zur Verarbeitung von Ereignissen für ereignisbasierte Hochgeschwindigkeitstestsysteme

Country Status (6)

Country Link
US (1) US7171602B2 (de)
JP (1) JP4227021B2 (de)
KR (1) KR100925740B1 (de)
DE (1) DE10297600T5 (de)
TW (1) TWI258014B (de)
WO (1) WO2003058263A1 (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6917889B2 (en) * 2002-02-26 2005-07-12 Tektronix, Inc. Method and apparatus for visually time-correlating waveform measurements to a source waveform
TWI284743B (en) * 2002-07-13 2007-08-01 Advantest Corp Event pipeline and summing method and apparatus for event based test system
US7379395B2 (en) * 2004-06-30 2008-05-27 Teradyne, Inc. Precise time measurement apparatus and method
US7584395B2 (en) 2006-04-07 2009-09-01 Verigy (Singapore) Pte. Ltd. Systems, methods and apparatus for synthesizing state events for a test data stream
US10185646B2 (en) * 2008-12-16 2019-01-22 Red Hat, Inc. Getting performance saturation point of an event driven system
KR101052699B1 (ko) * 2010-05-26 2011-07-29 한양대학교 산학협력단 이벤트 시간 측정 방법 및 회로
US8745278B2 (en) * 2010-10-13 2014-06-03 Rosemount Inc. Field device with self description
US9756874B2 (en) 2011-07-11 2017-09-12 Proteus Digital Health, Inc. Masticable ingestible product and communication system therefor
US9244126B2 (en) * 2013-11-06 2016-01-26 Teradyne, Inc. Automated test system with event detection capability
US10755014B2 (en) * 2018-03-14 2020-08-25 Montana Systems Inc. Event-driven design simulation
CN108631898B (zh) * 2018-04-17 2019-04-09 孙驰 一种光纤串行数据通信方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5225772A (en) * 1990-09-05 1993-07-06 Schlumberger Technologies, Inc. Automatic test equipment system using pin slice architecture
US5212443A (en) * 1990-09-05 1993-05-18 Schlumberger Technologies, Inc. Event sequencer for automatic test equipment
JP2605300Y2 (ja) * 1993-11-01 2000-07-04 株式会社アドバンテスト 半導体試験装置用周期発生器
JP2907033B2 (ja) 1994-11-24 1999-06-21 横河電機株式会社 タイミング信号発生装置
JP3992786B2 (ja) * 1997-06-06 2007-10-17 富士通株式会社 論理検証方法、論理検証装置及び記録媒体
JP2000009809A (ja) 1998-06-26 2000-01-14 Advantest Corp 誤設定検出機能を具備したic試験装置
US6360343B1 (en) 1999-02-26 2002-03-19 Advantest Corp. Delta time event based test system
US6226765B1 (en) * 1999-02-26 2001-05-01 Advantest Corp. Event based test system data memory compression
US6557133B1 (en) * 1999-04-05 2003-04-29 Advantest Corp. Scaling logic for event based test system
US6532561B1 (en) * 1999-09-25 2003-03-11 Advantest Corp. Event based semiconductor test system
US6678645B1 (en) * 1999-10-28 2004-01-13 Advantest Corp. Method and apparatus for SoC design validation

Also Published As

Publication number Publication date
JP4227021B2 (ja) 2009-02-18
JP2005514626A (ja) 2005-05-19
TW200301364A (en) 2003-07-01
KR20040075044A (ko) 2004-08-26
US7171602B2 (en) 2007-01-30
US20030229473A1 (en) 2003-12-11
KR100925740B1 (ko) 2009-11-19
TWI258014B (en) 2006-07-11
WO2003058263A1 (en) 2003-07-17

Similar Documents

Publication Publication Date Title
DE10045568B4 (de) Ereignisgestütztes Halbleiterprüfsystem
DE102008046831B4 (de) Ereignisgesteuerte Zeitintervallmessung
DE19917320C2 (de) Taktgenerator für ein Halbleiter-Prüfsystem
DE60204597T2 (de) Kompakter automatischer tester (ate) mit zeitstempel-system
DE10055456A1 (de) Halbleiterprüfsystem zur Prüfung von Mischsignalbauteilen
DE102005002554B4 (de) Erzeugung von Zeitablaufereignisauslösern
DE60002345T2 (de) Billige taktsteuervorrichtung für ein hochgenaues multimodal-halbleiterprüfgerät
DE10120080B4 (de) Ereignisgestütztes Prüfsystem mit einer Einrichtung zur Erzeugung von Prüfabschluß-Mehrfachsignalen
DE10297319T5 (de) Anwendungsspezifisches ereignisbasiertes Halbleiterspeicher-Testsystem
DE3702408C2 (de)
DE112005001517T5 (de) Synchronisation zwischen Niedrigfrequenz- und Hochfrequenzdigitalsignalen
DE19702600A1 (de) Elektrische Analyse integrierter Schaltungen
DE112006002092T5 (de) Schaltungskartensynchronisation innerhalb eines standardisierten Prüfinstrumentenchassis
DE10297600T5 (de) Gerät und Verfahren zur Verarbeitung von Ereignissen für ereignisbasierte Hochgeschwindigkeitstestsysteme
DE102006020186A1 (de) Vorrichtung und Verfahren von Verzögerungsberechnung für strukturierte ASIC
DE10006919A1 (de) Ereignisgestützes Prüfsystem
DE19741915A1 (de) Zwischenspeicheroptimierung in Hardware-Logikemulations-Systemen
DE69821461T2 (de) Logische Schaltung mit eigener Takterzeugung und zugehöriges Verfahren
DE10243765A1 (de) Halbleitervorrichtung mit Verzögerungskorrekturfunktion
DE112004000601T5 (de) Ereignisbasiertes Prüfverfahren zur Beseitigung taktbezogener Fehler in integrierten Schaltkreisen
DE10016611A1 (de) Prüfsystem
DE60202443T2 (de) Methode zum Testen eines elektronischen Bauteils
DE60122960T2 (de) Digitale eingebaute Selbsttestschaltungsanordnung für Phasenregelschleife
DE10392921T5 (de) Ereignispipeline- und -summierungsverfahren und -gerät für ein ereignisbasiertes Testsystem
DE19811591C2 (de) Taktsignal modellierende Schaltung mit negativer Verzögerung

Legal Events

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

Ipc: G01R 31/319 AFI20051017BHDE

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20110701