-
QUERVERWEIS AUF VERWANDTE ANMELDUNGEN
-
Nicht zutreffend.
-
ERKLÄRUNG ZU BUNDESSTAATLICH GEFÖRDERTER FORSCHUNG
-
Nicht zutreffend.
-
GEBIET DER ERFINDUNG
-
Diese Erfindung bezieht sich generell auf elektronische Schaltungen und insbesondere auf Schaltungen und Verfahren zur Verzögerungsfehlerprüfung.
-
HINTERGRUND DER ERFINDUNG
-
Da die Geometrien von digitalen integrierten Halbleiterschaltungen (IC) kleiner werden und die Signalgeschwindigkeiten zunehmen, wird die Fehlerprüfung anspruchsvoller. Verschiedene Fehlerbedingungen wie marginale Kontakte, marginale Durchkontaktierungen bzw. Vias und marginale Verbindungen, können Signalverzögerungsfehler hervorrufen.
-
Es werden Automatische Prüfeinrichtungen (ATE) eingesetzt, um Prüfsignale zu generieren und den digitalen IC zu üben, und die resultierenden IC-generierten Signale können von der ATE und/oder einem anderen externen Controller analysiert werden. Eine Schnittstellenkarte, die manchmal als eine Device Under Test(DUT; Prüfling)-Schnittstelle bezeichnet wird, ist generell erforderlich, um die ATE-generierten Prüfsignale an einen speziellen IC anzupassen. Die ATE-generierten Prüfsignale umfassen generell ein Taktsignal und Prüfvektoren oder Prüfmuster, die maßgeschneiderte Datenstreams sind, um spezielle IC-Funktionen und/oder Signalpfade zu prüfen, was allgemein als Automatic Test Pattern Generation (ATPG; automatische Prüfmustergenerierung) bezeichnet wird.
-
Während eine Verzögerungsfehlerprüfung sich einfach gestaltet und deshalb hauptsächlich auf Waferebene durchgeführt wird, bevor der Halbleiterwafer für das individuelle IC-Packaging aufgeteilt wird, können bestimmte Fehler auftreten, nachdem sich der IC im Gehäuse befindet. Beispielsweise kann der Vorgang, den Halbleiterwafer zu aufzuteilen und die Einzelschaltungen in Gehäuse zu setzen, selbst Fehler hervorrufen. Eine Prüfung auf Geräteebene erfolgt manchmal dort, wo es Anwendungen erfordern; jedoch erfordert eine solche Prüfung noch komplexere und kostspieligere DUT-Platinen als bei der Prüfung auf Waferebene.
-
Eine Art der Fehlerprüfung wird als „Stuck-at”-Fehlerprüfung bezeichnet, wobei eine Signalleitung bei einem speziellen Spannungspegel „stecken bleibt”. Das Prüfen dieser Fehlerart ist relativ einfach und wird durch das Messen der Spannung an verschiedenen Schaltungsknotenpunkten erreicht. Stuck-at-Fehlerprüfung erfordert wenig bis keine Timing-Informationen und ist hinsichtlich der ATE nicht besonders fordernd bzw. anspruchsvoll. Jedoch könnte die Stuck-at-Fehlerprüfung für bestimmte kritische Anwendungen nicht ausreichend sein. Eine andere Art von Fehlerprüfung, die als „At-speed”-Prüfung bezeichnet wird, verwendet ein Taktsignal mit einer Frequenz in der Größenordnung der Betriebsfrequenz des ICs und basiert auf einem Übergangs- und/oder Verzögerungsfehlermodell. Beim At-Speed-Prüfen wird ein Prüfmuster gestartet und die Geräteantwort bei Betriebsgeschwindigkeit erfasst.
-
Die At-speed-Verzögerungsfehlerprüfung kann ein Taktsignal verwenden, das einen Startimpuls und einen Erfassungsimpuls enthält, die eine enge und präzise zeitliche Beziehung wie einen Abstand von etwa 100 Nanosekunden aufweisen. Eine Technik, um ein solches Start-/Erfassungstaktsignal zu generieren, besteht aus der Verwendung eines Potentiometers in der ATE- oder DUT-Schnittstellenkarte, mit dem der Flankenabstand gemessen und das Potentiometer eingestellt wird, um dadurch den gewünschten Flankenabstand einzustellen. Jedoch ist es schwierig einen derart engen Flankenabstand zu messen ohne dabei das Taktsignal selbst nachteilig zu beeinflussen. Falls die zeitliche Beziehung des Start- und Erfassungsimpulses nicht oder nicht präzise gemessen werden kann, kann das Potentiometer nur dann eingestellt werden, bis der DUT eine Prüfung konsistent bestanden hat, was in einer Prüfung resultiert, die ohne korrekte Timing-Informationen abgelaufen ist.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Gemäß der Erfindung enthält ein IC-(Integrated Circuit)-Sensor einen Oszillator, um ein Mastertaktsignal zu erzeugen bzw. generieren, das von einem Ausgabeprotokoll-Prozessor verwendet wird, um ein Sensorausgangssignal zu generieren. Ein Prüftaktsignalgenerator spricht auf das Mastertaktsignal und ein Prüftriggersignal an, um ein Prüftaktsignal zu generieren, das einen Startimpuls und einen Erfassungsimpuls aufweist. Bei einer Ausführungsform zeigt das Sensorausgangssignal eine Drehrichtung eines ferromagnetischen Gegenstands an, der sich nahe am Sensor befindet, und die Drehrichtung wird durch eine vom Mastertaktsignal festgelegte Impulsbreite angezeigt. Die Start- und Erfassungsimpulse des Prüftaktsignals können sich im Wesentlichen mit ähnlichen Flanken von aufeinanderfolgenden Impulsen des Mastertaktsignals decken.
-
Mit dieser Anordnung wird eine korrekte Verzögerungsfehlerprüfung auf Waferebene und/oder auf IC-Ebene erreicht, ohne signifikante ATE- und/oder Schnittstellenkomplexität und Kosten zu erfordern, indem das Erzeugen bzw. Generieren des Hochgeschwindigkeits-Start-/Erfassungs-Prüftaktsignals auf dem IC insbesondere auf eine Weise erfolgt, die keine signifikanten zusätzlichen Schaltungen erfordert, indem ein Oszillator verwendet wird, der bereits auf dem Chip für andere Zwecke vorhanden ist.
-
Der Oszillator kann auf ein Trimm-Signal ansprechen, um das Mastertaktsignal einzustellen und dadurch den Flankenabstand der Start- und Erfassungsimpulse des Prüftaktsignals anzupassen. Das Trimm-Signal kann in Reaktion auf ein Programmiersignal generiert werden, das einem Leistungssignal oder einem Programmiersignal überlagert ist, welches in Form von Bits bereitgestellt wird, die an einen von der ATE generierten ATPG-Vektor angefügt sind.
-
Der Sensor kann weiter eine Fehlerprüfungsprogrammierschaltung enthalten, um ein Prüfmodusauswahlsignal zu generieren, wobei der Fehlerprüfungstaktsignalgenerator weiter auf das Prüfmodusauswahlsignal anspricht, um das Prüftaktsignal zu generieren. Bei einer Ausführungsform enthält die Fehlerprüfungsprogrammierschaltung einen Multiplexer, der einen ersten Eingang aufweist, welcher auf ein Scan-Taktsignal anspricht, einen zweiten Eingang, der auf das Mastertaktsignal anspricht, und einen Ausgang, an dem das Prüftriggersignal bereitgestellt wird. Der Multiplexer spricht auf ein Prüfmodus-Freigabesignal an, um das eine ausgewählte Signal aus Scan-Taktsignal oder Mastertaktsignal abhängig von der gewünschten Betriebsweise als das Prüftriggersignal bereitzustellen. Die Fehlerprüfungsprogrammierschaltung kann einen Decoder enthalten, um das Trimm-Signal in Reaktion auf das Programmiersignal zu generieren. Das Programmiersignal kann einem Leistungssignal überlagert sein und/oder ein Dateneingangssignal sein.
-
Ferner wird ein Verfahren zur Prüfung eines IC-Sensors beschrieben, das die folgenden Schritte einschließt: ein Mastertaktsignal mit einem Oszillator zu generieren, ein Prüftaktsignal in Reaktion auf das Mastertaktsignal und ein Prüftriggersignal zu generieren und ein Sensorausgangssignal in Reaktion auf das Mastertaktsignal zu generieren. Das Prüftaktsignal weist einen Startimpuls und einen Erfassungsimpuls für die Verzögerungsfehlerprüfung auf, welche Flanken aufweisen können, die sich im Wesentlichen mit ähnlichen Flanken von Impulsen des Mastertaktsignals decken. Bei einer Ausführungsform enthält das Generieren des Sensorausgangssignals ein Bereitstellen eines Impulses mit einer Impulsbreite ein, die eine Drehrichtung eines Gegenstands in der Nähe des Sensors anzeigt, wobei die Impulsbreite durch das Mastertaktsignal festgelegt ist.
-
Gemäß einem weiteren Aspekt enthält ein IC-Sensor einen Oszillator, um ein Mastertaktsignal zu generieren, und einen Fehlerprüfungs-Taktsignalgenerator, der auf das Mastertaktsignal und auf ein Prüftriggersignal anspricht, um ein Prüftaktsignal zu generieren, das einen Startimpuls und einen Erfassungsimpuls aufweist, wobei der Startimpuls und der Erfassungsimpuls steigende und fallende Flanken aufweisen, die sich im Wesentlichen mit ähnlichen Flanken von aufeinanderfolgenden Impulsen des Mastertaktsignals decken. Ein Ausgabeprotokoll-Prozessor kann auf das Mastertaktsignal ansprechen, um das Sensorausgangssignal bereitzustellen. Der Oszillator kann auf ein Trimm-Signal ansprechen, um das Mastertaktsignal einzustellen.
-
Ferner wird ein Verfahren zur Prüfung eines IC-Sensors beschrieben, der ein Mastertaktsignal mit einem Oszillator und ein Fehlerprüfungstaktsignal in Reaktion auf das Mastertaktsignal und ein Prüftriggersignal generiert, wobei das Prüftaktsignal einen Startimpuls und einen Erfassungsimpuls mit jeweils einer steigenden Flanke und einer fallenden Flanke aufweist, die sich im Wesentlichen mit ähnlichen Flanken von aufeinanderfolgenden Impulsen des Mastertaktsignals decken. Das Verfahren kann weiter das Bereitstellen eines Trimm-Signals an den Oszillator enthalten, um das Mastertaktsignal einzustellen und/oder ein Sensorausgangssignal mit Impulsen von einer Breite bereitzustellen, die durch das Mastertaktsignal festgelegt ist und eine Drehrichtung eines ferromagnetischen Gegenstands in der Nähe des Sensors anzeigt.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
Die vorhergehenden Merkmale der Erfindung, sowie die Erfindung selbst, können vollständiger aus der folgenden ausführlichen Beschreibung der Zeichnungen verstanden werden, wobei:
-
1 ein Blockdiagramm eines Prüfsystems ist, um einen oder mehrere DUTs zu prüfen;
-
2 ein vereinfachtes Schema der Fehlerprüfungsprogrammier-schaltung von 1 ist;
-
3 ein veranschaulichendes VCC-Programmiersignal zeigt;
-
4 ein veranschaulichendes Prüfvektor-Datensignal mit angefügten Bits zeigt, um das Start- und Erfassungsimpuls-Timing festzulegen;
-
5 mehrere veranschaulichende Wellenformen zeigt, die mit dem Fehlerprüfungs-Taktsignalgenerator von 1 verbunden sind; und
-
6 ein vereinfachtes Schema des Fehlerprüfungs-Taktsignalgenerators von 1 ist.
-
AUSFÜHRLICHE BESCHREIBUNG DER ERFINDUNG
-
Unter Bezugnahme auf 1 wird ein Prüfsystem 10 für das Prüfen von einem oder mehreren Geräten mit elektronischen Schaltungen oder DUTs 14a–14n gezeigt. Die DUTs 14a–14n können für eine Mehrzahl von Anwendungen die Form von Halbleiter-ICs oder ASICs annehmen, wobei jeder einen digitalen Kern 16 enthält, für den eine Fehlerprüfung gewünscht wird. Die Fehlerprüfung kann während einer Herstellungsstufe durchgeführt werden, wenn ein Halbleiterwafer 12 die DUTs 14a–14n trägt (d. h., Prüfung auf Waferebene). Eine ATE-Einheit 18 einschließlich einer DUT-Schnittstelle 20 ist für diesen Zweck an den Wafer 12 gekoppelt. Es kann auch wünschenswert sein, das Prüfen bei jedem individuellen DUT 14a–14n durchzuführen, nachdem der Wafer in Würfel geschnitten ist und die DUTs individuell in Gehäuse gesetzt worden sind, wobei die ATE 18 (oder eine alternative, weniger komplexe ATE) beispielsweise an den individuellen DUT 14a gekoppelt wird.
-
In der veranschaulichenden Ausführungsform enthält jeder DUT 14a–14n (wie gezeigt und beschrieben in Verbindung mit dem veranschaulichenden DUT 14a, der hier alternativ als Sensor-IC 14a bezeichnet wird) einen Sensorkreis 22, der an einen Ausgabeprotokoll-Prozessor 24 gekoppelt ist, welcher ein Sensorausgangssignal Vout 26 an einem Ausgang bereitstellt. Bei einer Ausführungsform enthält der Sensorkreis 22 einen oder mehrere Magnetfeldwandler wie ein oder mehrere Hall-Effekt-Geräte, und das Sensorausgangssignal 26 weist auf eine oder mehrere Eigenschaften eines Gegenstands wie einen ferromagnetischen Gegenstand (nicht dargestellt) hin, der sich in der Nähe des Sensor-IC 14a in seiner Betriebs-(d. h., ”in situ”)-umgebung befindet. Veranschaulichende Erfassungseigenschaften schließen Strom, Geschwindigkeit, Winkel, lineare Position und Drehrichtung ein. Des Weiteren kann der Sensorkreis 22 andere Arten von Eigenschaften wie Temperatur, Druck usw. erfassen. Andere Arten von Magnetfeldmesselementen wie Feldplatten (beispielsweise ein Riesenmagnetowiderstands-(GMR)-Element, ein anisotropisches Magnetowiderstands-(AMR)-Element, ein Tunnelmagnetwiderstands-(TMR)-Element, ein Indiumantimonid-(InSb)-Sensor, ein Galliumarsenid-(GaAs)-Sensor und Magnetic-Tunnel-Junction-(MTJ)-Geräte) sind auch geeignet. Der Sensorkreis 22 kann eine referenzbezogene Anordnung oder eine Differenzialanordnung sein, die ein oder mehrere Messelemente in verschiedenen bekannten Konfigurationen enthält.
-
Bei einer Ausführungsform ist der Sensor-IC 14a ein Zahnradsensor für eine Automobilanwendung wie für Kraftstoffeinspritzungs-, Antiblockiersystem-Bremsen- oder Servolenkungsanwendungen, wobei der Sensorkreis 22 eine Vielzahl von Hall-Effekt-Geräten enthalten kann, um eine Drehzahl und/oder eine Drehrichtung eines ferromagnetischen Zahnrades zu erfassen.
-
Der Ausgabeprotokoll-Prozessor 24 spricht auf ein Mastertaktsignal MASTER CLK 28 an, um das Sensorausgangssignal 26 bereitzustellen. Bei einer Ausführungsform, bei der Sensor 14a eine Drehzahl und eine Drehrichtung eines Zahnrades erfasst, kann der Ausgabeprotokoll-Prozessor 24 das Sensorausgangssignal 26 mit Impulsen einer Frequenz proportional zur Drehzahl des Zahnrades und eine Impulsbreite, die die Drehrichtung des Zahnrades angibt, bereitstellen. Beispielsweise kann ein 50 μs breiter Impuls eine Rechtsdrehung und einer von 100 μs eine Linksdrehung anzeigen.
-
Der Sensor-IC 14a enthält weiter einen Oszillator 30, um das Mastertaktsignal 28 zu generieren. Das Mastertaktsignal 28 ist in Reaktion auf ein Trimm-Signal 34 zum Zweck der Kalibrierung und Verifizierung des Mastertaktsignals und somit des resultierenden Sensorausgangssignals 26 gemäß präziser anwendungsorientierter Spezifikationen trimmbar. Während der Herstellung wird das Mastertaktsignal 28 überwacht und seine Impulsbreite wie erforderlich eingestellt, sodass es den speziellen Ausgabeprotokoll-Spezifizierungen entspricht.
-
Gemäß der Erfindung umfasst der Sensor-IC 14a Schaltungen und implementiert Verfahren, um ein korrektes Verzögerungsfehlerprüfungs-Taktsignal zu generieren (anstatt auf die ATE zu vertrauen, ein solches Signal bereitzustellen). Diese Anordnung vereinfacht die Anforderungen an die ATE- 18 und die DUT-Schnittstelle 20, da sie mit dem Generieren eines korrekten Hochgeschwindigkeits-Start/Erfassungs-Prüftaktsignals verbundene Schwierigkeiten eliminiert. Wie nachfolgend beschrieben, umfasst das IC-generierte Prüftaktsignal CLK_CONTROLLER_OUT 52 Start- und Erfassungsimpulse, die steigende und fallende Flanken aufweisen, welche sich im Wesentlichen mit ähnlichen Flanken von Impulsen des Mastertaktsignals 28 decken. Diese Anordnung ist aufgrund der andernfalls erforderlichen Präzision des Mastertaktsignals (da es verwendet wird, um das Sensorausgangssignal zu generieren) und des Trimmens, das deshalb ausgeführt wird, vorteilhaft. Wenn das Prüftaktsignal 52 den Flanken der Mastertaktsignal-Flanken folgt, ist dies zusätzlich ein präziserer Ansatz als beispielsweise die Start- und Erfassungsimpuls-Flanken unabhängig auszulösen. Des Weiteren ist die beschriebene chipinterne Prüftaktsignalgenerierung besonders kostengünstig, da das für das Generieren des Prüftaktsignals 52 verwendete Mastertaktsignal 28 für eine unterschiedliche Sensorfunktion generiert werden muss; das heißt, für die Verwendung durch den Ausgabeprotokoll-Prozessor 24, um das Sensorausgangssignal 26 zu generieren.
-
Zu diesem Zweck umfasst der Sensor-IC 14a wie gezeigt eine Fehlerprüfungsprogrammierschaltung 40 und einen Fehlerprüfungs-Taktsignalgenerator 50. Die Fehlerprüfungsprogrammierschaltung 40 wird in Verbindung mit 2 gezeigt und beschrieben. Es genügt anzuführen, dass die Programmierschaltung 40 auf das Mastertaktsignal 28 und auf die ATE-generierten Signale 38 anspricht, um Eingangssignale (in Form des Mastertaktsignals 28, eines Prüftriggersignals CLK_CONTROLLER_IN 42 und eines Prüfmodus-Freigabesignals TM_PULSE_DOUBLE 44) an den Fehlerprüfungs-Taktsignalgenerator 50 bereitzustellen. Die ATE-generierten Signale 38 schließen verschiedene Prüftaktmöglichkeiten (PAD_SCAN_CLK und PIN3_CLK), ein Prüffreigabesignal PAD_SCAN_EN, ein Prüfvektor-Datensignal PAD_SCAN_IN und ein Programmiersignal VCC_PROG ein. Die Programmierschaltung 40 spricht auf das von der ATE bereitgestellten Prüfvektor-Datensignal PAD_SCAN_IN und auf ein alternatives Datensignal TM_PAD_SCAN_IN (2) an, um ein Datensignal SCAN_IN 96 an den digitalen Kern 16 bereitzustellen. Ähnlich spricht die Programmierschaltung 40 auf das von der ATE bereitgestellte Prüffreigabesignal PAD_SCAN_EN 78 und auf ein alternatives Prüffreigabesignal TM_SCAN_EN (2) an, um ein Prüffreigabesignal SCAN_EN 98 an den digitalen Kern bereitzustellen.
-
Der Fehlerprüfungs-Taktsignalgenerator 50 generiert das Prüftaktsignal CLK_CONTROLLER_OUT 52, wie es in Verbindung mit den 5 und 6 gezeigt und beschrieben wird. Während des Prüfen wird der digitale Kern 16 durch das Datensignal SCAN_IN 96 unter der Steuerung des Prüffreigabesignals SCAN_EN 98 und des Prüftaktsignals 52 geübt.
-
Ein Ausgangssignal des digitalen Kerns SCAN_OUT 48 wird zur Bewertung des Ansprechen des Sensors auf das Datensignal 96 zurück an die ATE 18 oder einen anderen Controller gegeben. Die Bewertung der Antwort des Sensors kann eine parametrische Fehlerbewertung enthalten, wie es nachfolgend beschrieben wird.
-
Bezug nehmend auf 2 spricht die Fehlerprüfungsprogrammierschaltung 40 auf die ATE-generierten Signale 38 an, wobei hier speziell die Signale PAD_SCAN_IN 86, PAD_SCAN_CLK 94, PIN3_CLK 84, VCC_PROG 88 und PAD_SCAN_EN 78 enthalten sind. Die Programmierschaltung generiert das Prüfmodus-Freigabesignal TM_PULSE_DOUBLE 44 und das Prüftriggersignal CLK_CONTROLLER_IN 42 zur Verwendung durch den Fehlerprüfungs-Taktsignalgenerator 50.
-
Der Sensor-IC 14a ist zu verschiedenen Betriebsmodi fähig. Der normale In-situ-Betrieb verweist auf den Betrieb des Sensors 14a in seiner beabsichtigten Endanwendungsumgebung (z. B. in einem Antiblockiersystem eines Kraftfahrzeugs). Wie sich zeigen wird, spricht bei diesem Betriebsmodus der Ausgabeprotokoll-Prozessor 24 auf ein Sensorkreis-Ausgangssignal 32 und auf das Mastertaktsignal 28 an, indem er das Sensorausgangssignal 26 mit einer Frequenz, die eine Drehzahl anzeigt, und einer Impulsbreite, die eine Drehrichtung anzeigt, bereitstellt.
-
Der Sensor 14a kann abhängig von der Art der gewünschten Prüfung auch in unterschiedlichen Prüfmodi arbeiten. Vor dem Initiieren eines Prüfmodus werden Register des digitalen Kerns 16 geladen. Das Prüffreigabesignal SCAN_EN 98 veranlasst, dass die Register des digitalen Kerns mit dem Prüfergebnis 96 geladen werden, wenn es assertiert bzw. aktiviert wird. Bei einer Ausführungsform ist das Prüffreigabesignal 98 während des normalen In-situ-Betriebs deassertiert bzw. deaktiviert.
-
Bei einem ersten Prüfmodus umfasst das Prüftaktsignal CLK_CONTROLLER_OUT 52, das an den digitalen Kern 16 bereitgestellt wird, ein einzelnes Taktsignal. Bei diesem Betriebsmodus wird das Datensignal SCAN_IN 96 einmal getaktet, da es für die Durchführung von Stuck-at-Scanprüfen nützlich sein kann.
-
Bei einem zweiten Prüfmodus umfasst das Prüftaktsignal CLK_CONTROLLER_OUT 52, das an den digitalen Kern 16 bereitgestellt wird, doppelte Taktsignale in der Form eines Startimpulses und eines Erfassungsimpulses für jeden Prüfvektor des Datensignals 96. Diese Art des Prüfmodus ist für die At-speed-Verzögerungsfehlerprüfung nützlich.
-
Gemäß einem Aspekt der Erfindung wird ein vom Anwender programmierbares Signal VCC_PROG 88 für die Prüfung auf Wafer- und/oder Gehäuseebene bereitgestellt. Das Signal VCC_PROG wird verwendet, um eine Vielzahl von Befehlen während der Prüfung auf Gehäuseebene an einen DUT 14a bereitzustellen, da der in das Gehäuse eingesetzte Sensor-IC 14a begrenzte Anschlüsse aufweist. Das Signal VCC_PROG 88 kann auch verwendet werden, um Prüfsollwerte in Verbindung mit der Prüfung auf Waferebene bereitzustellen. Das Signal VCC_PROG 88 ist langsamer als das Signal PAD_SCAN_IN 86. Wenn es für die Prüfung auf Gehäuseebene verwendet wird, ist es deshalb generell eine Stuck-at-Prüfung anstatt einer At-speed-Prüfung. Es ist offensichtlich, dass beim Ausführen der Stuck-at-Prüfung auf Gehäuseebene das Signal VCC_PROG 88 durch eine ATE bereitgestellt werden kann, die weniger komplex ist als die ATE 18, beispielsweise eine ATE, die keine ATPG implementiert.
-
Bei einer Ausführungsform ist das Signal VCC_PROG 88 ein vom Benutzer programmierter Stream aus hohen und niedrigen Spannungsimpulsen, die dem VCC-Leistungssignal überlagert sind, wie es in 3 gezeigt wird. Die Programmierschaltung 40 enthält einen Decoder 100, der Schaltungen umfasst, die einen Widerstandsteiler und Vergleicher enthalten können, um den Spannungsimpulspegel zu interpretieren und demgemäß verschiedene Prüfbefehle bereitzustellen.
-
Das Prüfmodus-Auswahlsignal TM_PULSE_DOUBLE 44 legt fest, ob sich der Sensor-IC 14a im ersten Prüfmodus befindet, in dem dem digitalen Kern 16 ein Einzelimpuls-Prüftaktsignal für Stuck at-Prüfen präsentiert wird (tritt bei einer Ausführungsform auf, wenn das Signal 44 niedrig ist), oder im zweiten Prüfmodus, in dem dem digitalen Kern 16 ein doppeltes Start/Erfassungsimpuls-Prüftaktsignal für At-speed-Verzögerungsfehlerprüfung präsentiert wird (tritt bei einer Ausführungsform auf, wenn das Signal 44 hoch ist). Bei einer Ausführungsform wird das Signal TM_PULSE_DOUBLE 44 durch das Signal VCC_PROG 88 bereitgestellt.
-
Abhängig vom ausgewählten Prüfmodus und den Sensorprüfungsanforderungen sind verschiedene Taktsignale verfügbar, um das Prüftriggersignal 42 bereitzustellen (das vom Prüftaktsignalgenerator 50 verwendet wird, um das Prüftaktsignal 52 dem digitalen Kern 16 bereitzustellen, was beschrieben wird). Zu diesem Zweck enthält die Programmierschaltung 40 ein ODER-Gatter 104 mit Eingängen, mit denen die ATE-generierten Taktsignale PAD_SCAN_CLK 94 und PIN3_CLK 84 gekoppelt sind, und einem Eingang, mit dem eine weitere Taktsignaloption TM_SCAN_CLK 92 gekoppelt ist.
-
Das Signal TM_SCAN_CLK 92 ist ein vom Benutzer programmiertes Taktsignal, um einen gewünschten Abstand zwischen den Start- und Erfassungsimpulsen des Prüftaktsignals 52 zur Verwendung während des zweiten Prüfbetriebsmodus festzulegen, wie es nachfolgend beschrieben wird. Das Signal TM_SCAN_CLK 92 kann durch das Signal VCC_PROG 88 oder durch das Signal PAD_SCAN_IN 86 bereitgestellt werden, wie es nachfolgend beschrieben wird.
-
Der Ausgang des ODER-Gatters 104 stellt ein Signal SCAN_CLK 106 an einen Multiplexer 110 bereit. Ein zweiter Eingang wird an den Multiplexer 110 durch das Mastertaktsignal 28 wie gezeigt bereitgestellt. Der Multiplexer 110 wird durch ein Prüfmodus-Freigabesignal TM_SCAN 112 gesteuert, das festlegt, ob der Sensor-IC 14a sich im normalen In-situ-Betrieb oder in einem Prüfmodus befindet. Das Signal TM_SCAN 112 wird vom Signal VCC_PROG 88 bereitgestellt. Bei einer Ausführungsform befindet sich der Sensor-IC 14a in einem Prüfmodus, wenn das Signal TM_SCAN 112 hoch ist, und wenn es niedrig ist, befindet sich der IC im normalen Betrieb.
-
Im normalen Betrieb wird das Prüftriggersignal CLK_CONTROLLER_IN 42 am Ausgang des Multiplexers 110 durch das Mastertaktsignal 28 bereitgestellt. Auf diese Weise wird das Mastertaktsignal 28 durch die Programmierschaltung 40 durchgeleitet, um die digitale Schaltung 16 zu takten.
-
Wenn das Signal TM_SCAN 112 hoch ist, wird das Signal SCAN_CLK 106 als das Prüftriggersignal 42 am Ausgang des Multiplexers 110 bereitgestellt. Deshalb wird während des Prüfens, das Signal CLK_CONTROLLER_IN 42 durch das Signal PAD_SCAN_CLK 94, das Signal PIN3_CLK 84 oder das Signal TM_SCAN_CLK 92 bereitgestellt.
-
Der Decoder 100 verarbeitet das Signal VCC_PROG 88, um ein alternatives Prüfdatensignal TM_SCAN_IN 80, ein alternatives Prüffreigabesignal TM_SCAN_EN 82 und das Signal TM_SCAN_CLK 92 bereitzustellen. Das alternative Prüfdatensignal TM_SCAN_IN 80 und das Prüffreigabesignal TM_SCAN_EN 82 können als Chip- oder Gehäuseebenen-Signale bezeichnet werden, da sie vom Signal VCC_PROG 88 bereitgestellt werden, weil sie für das Prüfen auf Chipebene nützlich sein können.
-
Das Prüfvektor-Datensignal PAD_SCAN_IN 86 und das alternative Prüfdatensignal TM_SCAN_IN 80 sind digitale Datenstreams, die Prüfvektoren repräsentieren, wie sie durch die ATPG innerhalb der ATE generiert und maßgeschneidert werden können, um spezifische IC-Funktionen und/oder Signalpfade zu prüfen. Ein ODER-Gatter 106 spricht auf das Signal PAD_SCAN_IN 86 und das Signal TM_SCAN_IN 80 an und stellt das Signal SCAN_IN 96 zur Kopplung mit dem digitalen Kern an seinem Ausgang bereit. Deshalb wird das Signal SCAN_IN 96 entweder vom Signal PAD_SCAN_IN 86 oder vom Signal TM_SCAN_IN 80 bereitgestellt je nachdem, ob eine Prüfung auf Waferebene oder auf Gehäuseebene erfolgt.
-
Ähnlich spricht ein ODER-Gatter 110 auf das Signal PAD_SCAN_EN 78 und auf das Signal TM_SCAN_EN 82 an und stellt das Signal SCAN_EN 98 an seinem Ausgang zur Kopplung mit dem digitalen Kern bereit. Deshalb wird das Signal SCAN_EN 98 entweder durch das Signal PAD_SCAN_EN 78 oder durch das Signal TM_SCAN_EN 82 je nachdem bereitgestellt, ob eine Prüfung auf Waferebene oder auf Gehäuseebene erfolgt.
-
Gemäß einem Aspekt der Erfindung kann das Prüfvektor-Datensignal PAD_SCAN_IN 86 verwendet werden, um einen speziellen Abstand zwischen Start- und Erfassungsimpulsen des Prüftaktsignals 52 zu programmieren. Zu diesem Zweck kann das Prüfvektor-Datensignal 86 Zusatzbits für das Programmieren des Start-/Erfassungsimpuls-Timings im Verzögerungsfehlerprüfungsmodus enthalten. Bei dieser Ausführungsform entfernt der Decoder 100 die angefügten Bits und stellt sie an eine Oszillator-Trimm-Schaltung 102 in Form eines Trimm-Signals 114 bereit.
-
Bezug nehmend auf 4 wird ein veranschaulichendes Prüfvektor-Datensignal PAD_SCAN_IN 86 gezeigt, um Scan-Daten und Zusatzbits einzuschließen und den Abstand zwischen ansteigenden Flanken der Start- und Erfassungsimpulse im Prüftaktsignal 52 einzustellen. Für jeden Prüfvektor-Datensatz 130a–130n werden jeweils unterschiedliche angefügte Bits 134a–134n bereitgestellt, sodass sie dem unterschiedlichen jeweiligen Prüfvektor entsprechen. Insbesondere wird ein unterschiedlicher Abstand zwischen Start- und Erfassungsimpulsen für unterschiedliche Fehlerprüfungen verwendet. In 4 wird ferner das Prüffreigabesignal 78 gezeigt, das das Verschieben von Daten erlaubt, um den digitalen Kern 16 zu laden, wenn es assertiert bzw. aktiviert ist.
-
Gemäß einem weiteren Aspekt der Erfindung kann das Start-/Erfassungsimpuls-Timing über das Signal VCC_PROG 88 vom Benutzer programmiert sein. Der Decoder 100 interpretiert das VCC_PROG Signal 88 und stellt Bits bereit, um das Start-zu-Erfassungsimpuls-Timing gemäß der Oszillator-Trimm-Schaltung 102 als das Trimm-Signal 114 einzustellen.
-
Die Fähigkeit, den Flankenabstand zwischen Start- und Erfassungsimpuls einfach einzustellen, bietet sich für parametrische Fehlerprüfung an. Beispielsweise im Fall des Prüfvektor-Datensignals 86 (4) können beim Festlegen des Start-/Erfassungs-Timings in einem ersten Prüfvektor 130a die angefügten Bits 134a ein erstes Start-/Erfassungs-Timing festlegen, von dem erwartet wird, dass es ein erstes vorbestimmtes digitales Ausgangssignal 48 liefert, welches einem Satz von Bedingungen (z. B. nominales Timing) entspricht. Die an einen unterschiedlichen Prüfvektor 130n angefügten Bits 134n können ein unterschiedliches Start-/Erfassungs-Timing (z. B. einen größeren Abstand) festlegen, von dem erwartet wird, dass es ein zweites vorbestimmtes Ausgangssignal 48 liefert, welches einem unterschiedlichen Satz von Bedingungen entspricht (z. B. kaltes Timing).
-
Wie bereits erwähnt ist das von Oszillator 30 (1) generierte Mastertaktsignal 28 trimmbar. Zu diesem Zweck enthält die Fehlerprüfungsprogrammierschaltung 40 die Oszillator-Trimm-Schaltung 102, die auf das digitale Steuersignal TM–TRIM 114 anspricht. Insbesondere wandelt die Oszillator-Trimm-Schaltung 102 das digitale Steuersignal TM_TRIM 114, wie beispielsweise ein Drei-Bit-Signal, in das analoge Trimm-Signal 34 um. Bei einer Ausführungsform spricht der Oszillator auf den gegenwärtigen Pegel des Trimm-Signals an, um die Impulsbreite und/oder Frequenz des Mastertaktsignals einzustellen.
-
Während der Herstellung kann das Mastertaktsignal 28 durch Messen seiner Impulsbreite kalibriert werden. Wenn festgestellt wird, dass die Impulsbreite anders ist als für die Verwendung durch den Ausgabeprotokoll-Prozessor 24 (1) beim Generieren des Sensorausgangssignals 26 erwartet, dann kann das Trimm-Steuersignal 34 vom Benutzer eingestellt und das resultierende Mastertaktsignal 28 anhand weiterer Überwachung verifiziert werden. Ein Signal TM_LOCK 116 wird beispielsweise auch über das Signal VCC_PROG 88 bereitgestellt, um die Mastertaktimpulsbreite zu sperren oder zu fixieren, sobald bestimmt wurde, dass sie präzise der erforderlichen Spezifizierung entspricht, wie beispielsweise bei der Verwendung von selbstrückstellenden Sicherungen, um den Digital-Analog-Wandler der Trimm-Schaltung 102 zu sperren. Auf diese Weise wird die Genauigkeit des resultierenden Sensorausgangssignals 26 überwacht.
-
Gemäß einem Aspekt der Erfindung ist der Oszillator 30 auch zum Zweck des Festlegens und Einstellens des Abstandes zwischen Start- und Erfassungsimpulsen des Prüftaktsignals 52 trimmbar. Das digitale Trimm-Signal TM_TRIM 114 hat einen Digitalwert, der die gewünschte Frequenz für das Mastertaktsignal 28 anzeigt, und kann vom Benutzer über Bits, die an das ATE-generierte Signal PAD_SCAN_IN 86 (4) angefügt sind, bereitgestellt werden, oder es kann alternativ vom Benutzer über das Vcc-Programmiersignal VCC_PROG 88 (3) bereitgestellt werden. Hier passt das Trimm-Signal 34 die Frequenz des Mastertaktsignals 28 an und dadurch den Abstand zwischen den Start- und Erfassungsimpulsen. Das Signal TM_LOCK 116 wird im zweiten Prüfmodus nicht verwendet, wenn der Oszillator getrimmt wird, um das Start-/Erfassungsimpuls-Timing festzulegen, da das Signal TM_TRIM 114 geändert wird, um eine unterschiedliche Mastertaktfrequenz für jeden unterschiedlichen Prüfvektor bereitzustellen.
-
Bezug nehmend auf die veranschaulichenden Signale von 5 wird zur Zeit t0 das Prüfmodus-Freigabesignal TM_SCAN 112 (2) assertiert bzw. aktiviert, um dadurch das Prüfen zu beginnen. Deshalb befindet sich vor der Zeit t0 der IC 14a im normalen In-situ-Betrieb, wobei das Signal CLK_CONTROLLER_IN 42 durch das Signal MASTER_CLK 28 bereitgestellt wird. Nach der Zeit t0 wird das Signal CLK_CONTROLLER_IN 42 vom Signal SCAN_CLK 106 am Ausgang des ODER-Gatters 104 bereitgestellt.
-
Wenn im Prüfmodus das Prüfmodus-Auswahlsignal TM_PULSE_DOUBLE 44 auf Hoch bzw. High schaltet, wie es zur Zeit t1 geschieht, wird der zweite Prüfmodus begonnen. Im zweiten Prüfmodus erfordert das Prüftaktsignal 52 Start- und Erfassungsimpulse für At-speed-Prüfen. In diesem Modus löst jede steigende Flanke des Prüftriggersignals CLK_CONTROLLER_IN 42 ein Start- und Erfassungsimpuls-Paar aus, das wie gezeigt zur Zeit t2 beginnt. Insbesondere weisen die Start- und Erfassungsimpulse 52a, 52b steigende und fallende Flanken auf, die sich im Wesentlichen mit den zwei steigenden Flanken und fallenden Flanken der zwei Master-Taktsignal-Impulse decken, die auftreten, nachdem das Triggersignal 42 auf Hoch bzw. High geschaltet hat, wie hier zur Zeit t3. Deshalb ist es offensichtlich, dass der Abstand der Start-/Erfassungsimpulse durch das Einstellen der Frequenz des Mastertaktsignals 28 wie durch die oben beschriebenen Trimming-Methodiken anpassbar ist.
-
Ein weiteres Paar von Start-/Erfassungsimpulsen 52c, 52d wird durch die nächste steigende Flanke des Prüftriggersignals 42 ausgelöst, wie es zur Zeit t4 geschieht, sodass die Start-/Erfassungsimpulse 52c, 52d bei der nächsten steigenden Flanke des Mastertaktsignals 28 zur Zeit t5 beginnen. Hier decken sich erneut die steigenden und fallenden Flanken der Erfassungs- und Startimpulse 52c, 52d im Wesentlichen mit den steigenden und fallenden Flanken der nächsten zwei aufeinanderfolgenden Mastertaktsignal-Impulse.
-
Wenn das Prüfmodus-Auswahlsignal 44 auf Niedrig bzw. Low schaltet, wie es zur Zeit t6 geschieht, wird der erste Prüfmodus begonnen, bei dem der digitale Kern 16 auf einen Einzelimpuls-Prüftakt für Stuck at-Prüfen anspricht. Demgemäß löst in diesem Modus eine steigende Flanke des Prüftriggersignals 42, wie es zur Zeit t7 geschieht, einen Einzelimpuls-Prüftakt 52e aus. Die Breite des Einzelimpulses 52e ist hier durch das Prüftriggersignal 42 festgelegt, und speziell endet der Impuls 52e, wenn das Prüftriggersignal 42 hier zur Zeit t8 auf Niedrig bzw. Low schaltet. Für einen Fachmann ist es offensichtlich, dass weitere Szenarien, um die gleiche oder eine unterschiedliche Impulsbreite für den Einzeltakt 52e festzulegen, möglich sind.
-
Bezug nehmend auf 6 wird der Fehlerprüfungs-Taktsignalgenerator 50 gezeigt. Wie bereits erwähnt, spricht der Generator 50 auf das Mastertaktsignal 28, das Prüftriggersignal CLK_CONTROLLER_IN 42 und das Prüfmodus-Freigabesignal TM_PULSE_DOUBLE 44 an. Im Normalbetrieb ist das Ausgangssignal des Taktsignalgenerators 50 (d. h., das Prüftaktsignal 52) das Mastertaktsignal 28 und in den Prüfmodi taktet das Prüftaktsignal 52 das Prüfdatensignal (SCAN_IN) 96 in den digitalen Kern 16 entweder mit einem Einzelimpuls im ersten Prüfmodus oder mit einem doppelten Start-/Erfassungsimpuls-Paar im zweiten Prüfmodus.
-
Der Fehlerprüfungs-Taktsignalgenerator 50 enthält ein UND-Gatter 150, das auf eine invertierte Version des Signals TM_PULSE_DOUBLE am Ausgang eines Wandlers 152 und auf das Signal CLK_CONTROLLER_IN 42 anspricht. Der Ausgang des UND-Gatters 150 stellt einen Eingang an ein ODER-Gatter 154 bereit. Der Ausgang des ODER-Gatters 154 ist das Signal CLK_CONTROLLER_OUT 52. Bei dieser Anordnung wird das Prüftaktsignal 52 durch das Mastertaktsignal 28 (wie ausgelöst durch das Signal CLK_CONTROLLER_IN) bereitgestellt, wenn das Signal TMMSCAN 112 niedrig ist, und wenn das Signal TM_SCAN auf Hoch bzw. High schaltet, löst jede steigende Flanke des Prüftriggersignals 42 abhängig vom Zustand des Prüfmodus-Auswahlsignals TM_PULSE_DOUBLE 44 entweder einen einzelnen Taktimpuls oder ein Start-/Erfassungsimpuls-Paar beim Prüftaktsignal 52 aus.
-
Die Flipflops 160, 162 und das UND-Gatter 164 sind konfiguriert, das Prüftaktsignal 52 auf die nächste steigende Flanke des Mastertaktsignals 28 zu synchronisieren, und die Flipflops 166, 168, das UND-Gatter 170 und das Flipflop 172 sind konfiguriert, das Prüftaktsignal 52 zu veranlassen, zwei vollständige Impulse des Mastertaktsignals 28 in Reaktion auf jede ansteigende Flanke des Prüftriggersignals 42 einzuschließen, die auftreten, wenn das Prüfmodus-Auswahlsignal 44 assertiert bzw. aktiviert wird. Ein ODER-Gatter 176 spricht auf den Ausgang des Flipflops 172, ein START-Signal 178 und die invertierte Version des Signals TM_PULSE_DOUBLE 44 an, um die Flipflops 160, 162, 166 und 168 zurückzusetzen. Das START-Signal 178 stellt einen Rücksetzbefehl beim Starten des IC 14a bereit.
-
Nach der Beschreibung bevorzugter Ausführungsformen der Erfindung wird es für den Fachmann offensichtlich, dass andere Ausührungsformen, die diese Konzepte einbinden, verwendet werden können. Demgemäß wird vorausgesetzt, dass die Erfindung nicht durch die beschriebenen Ausführungsformen, sondern nur durch den Rahmen und Schutzbereich der angefügten Ansprüche begrenzt ist. Alle hier angeführten Veröffentlichungen und Verweise sind ausdrücklich durch Bezugnahme vollständig aufgenommen.