专利摘要:
Eswird ein Halbleiter-Chip beschrieben, mit einer Vielzahl von Flip-Flops,die sich zum Testen des Halbleiter-Chips zu einem oder mehreren Schieberegisternverschalten lassen, und mit einem JTAG Test Access Port gemäß IEEE 1149.1, über welchender Halbleiter-Chip in eine Testbetriebsart versetzbar ist, in der dieFlip-Flops zu einem oder mehreren Schieberegistern verschaltet sind.Der beschriebene Halbleiter-Chip zeichnet sich dadurch aus, daß er derartaufgebaut ist, daß das eineoder die mehreren Schieberegister über den JTAG Test Access Portbeschreibbar und auslesbar sind.
公开号:DE102004028632A1
申请号:DE200410028632
申请日:2004-06-15
公开日:2006-01-26
发明作者:Hermann Obermeir;Harry Siebert
申请人:Infineon Technologies AG;
IPC主号:G01R31-28
专利说明:
[0001] Dievorliegende Erfindung betrifft eine Vorrichtung gemäß dem Oberbegriffdes Patentanspruchs 1, d.h. einen Halbleiter-Chip mit einer Vielzahlvon Flip-Flops, die sich zum Testen des Halbleiter-Chips zu einemoder mehreren Schieberegistern verschalten lassen, und mit einemJTAG Test Access Port gemäß IEEE 1149.1, über welchender Halbleiter-Chip in eine Testbetriebsart versetzbar ist, in der dieFlip-Flops zu einem oder mehreren Schieberegistern verschaltet sind.
[0002] Einsolcher Halbleiter-Chip ist ein Halbleiter-Chip, der nach dem sogenannten Full-Scan-Test-Verfahrengetestet werden kann.
[0003] DerAufbau eines solchen Halbleiter-Chips ist in 5 veranschaulicht.Bei dem in der 5 gezeigten Halbleiter-Chip handelt es sichum eine programmgesteuerte Einheit wie beispielsweise einen Mikrocontroller,einen Mikroprozessor oder einen Signalprozessor. Es könnte sichjedoch auch um einen beliebigen anderen Halbleiter-Chip handeln,der unter Verwendung des Full-Scan-Test-Verfahren getestet werdenkann. Der Vollständigkeithalber sei bereits an dieser Stelle darauf hingewiesen, daß von demHalbleiter-Chip nur die vorliegend besonders interessierenden Komponentengezeigt und beschrieben sind.
[0004] Derin der 5 gezeigte Halbleiter-Chip enthält eineLogik 401, einen ersten Multiplexer 471, einenzweiten Multiplexer 472, einen dritten Multiplexer 473,einem im folgenden als TAP bezeichneten JTAG Test Access Port 420,und eine Vielzahl von Ein- und/oder Ausgabeanschlüssen, vonwelchen in der 5 jedoch nur die Anschlüsse TCK,TDI, TMS, TDO und 481 bis 485 gezeigt sind.
[0005] DerHalbleiter-Chip kann darüberhinaus beliebige weitere Komponenten enthalten, beispielsweise eineoder mehrere CPUs, einen oder mehrere Speicher, etc.
[0006] DieLogik 401 enthälteine Vielzahl von logischen Gattern und Speicherelementen. Die logischenGatter umfassen beispielsweise UND-Gatter, ODER-Gatter, XOR-Gatterund/oder beliebige andere logische Gatter. Die Speicherelementewerden im betrachteten Beispiel durch Flip-Flops gebildet, die sichzum Testen des Halbleiter-Chips so in Reihe schalten lassen, daß sie sichdann wie ein Schieberegister verhalten. Wie dies im einzelnen geschieht, istbekannt und bedarf keiner näherenErläuterung. Die 5 zeigtden Zustand des Halbleiter-Chips,in welchen die Flip-Flops zu zwei Schieberegistern, nämlich einemersten Schieberegister 402 und einem zweiten Schieberegister 403 verschaltetsind, und der Rest der Logik (im wesentlichen die Kombinatorik)als die Logik 401 dargestellt ist. Vorliegend werden exemplarischzwei Schieberegister beschrieben; in Wirklichkeit können esje nach Umfang des Baustein deutlich mehr sein.
[0007] DieSchieberegister 402 und 403 können von außerhalb des Halbleiter-Chips,genauer gesagt durch eine externe Testvorrichtung beschrieben und ausgelesenwerden. Daher ist der Eingangsanschluß des ersten Flip-Flops desersten Schieberegisters 402 mit dem Eingangsanschluß 481 desHalbleiter-Chipsverbunden, ist der Ausgangsanschluß des letzten Flip-Flops des erstenSchieberegisters 402 überden ersten Multiplexer 471 mit dem Ausgangsanschluß 482 desHalbleiter-Chips verbunden, ist der Eingangsanschluß des erstenFlip-Flops des zweiten Schieberegisters 403 mit dem Eingangsanschluß 483 desHalbleiter-Chips verbunden, und ist der Ausgangsanschluß des letztenFlip-Flops des zweiten Schieberegisters 403 über denzweiten Multiplexer 472 mit einem Ausgangsanschluß 484 desHalbleiter-Chips verbunden. Somit können über die Eingangsanschlüsse 481 und 483 Datenin die Schieberegister 402 und 403 geschriebenwerden, und über dieAusgangsanschlüsse 482 und 484 Datenaus den Schieberegistern 402 und 403 ausgelesenwerden.
[0008] DieEingangsanschlüsse 481 und 483 sowie dieAusgangsanschlüsse 482 und 484 sindim betrachteten Beispiel Multifunktionsanschlüsse, die im normalen Betriebdes Halbleiter-Chips,d.h. in Phasen, in welchen die Flip-Flops nicht zu den Schieberegistern 402 und 403 verschaltetsind, als Eingangsanschlüssezur Eingabe von Daten in die Logik 401 bzw. als Ausgangsanschlüsse zurAusgabe von Daten aus der Logik 401 verwendet werden können. Dabeiwird durch die Multiplexer 471 und 472 entschieden,ob überdie Ausgangsanschlüsse 482 und 484 ausden Schieberegistern 402 und 403 stammende Datenoder aus der Logik 401 stammende Daten aus dem Halbleiter-Chipausgegeben werden; den Multiplexern 471 und 472 wirdneben den Ausgangssignalen der Schieberegister 402 und 403 auchjeweils ein Ausgangssignal der Logik 401 zugeführt. DieMultiplexer 471 und 472 werden durch ein Signalscan_en gesteuert. Von diesem Signal hängt es ab, ob die aus den Schieberegistern 402 und 403 hinausgeschobenen Daten oder die aus der Logik 401 stammende Daten über dieAusgangsanschlüsse 482 und 484 ausdem Halbleiter-Chip ausgegeben werden. Bei aktivem Steuersignalscan_en werden aus den Ausgangsanschlüssen 482 und 484 dieaus den Schieberegistern 402 und 403 stammendenDaten ausgegeben, und bei inaktivem Steuersignal scan_en werdenaus den Ausgangsanschlüssen 482 und 484 die ausder Logik 401 stammenden Daten aus dem Halbleiter-Chipausgegeben. Das Steuersignal scan_en wird durch den TAP 420 erzeugt.
[0009] DerTAP 420 ist ein JTAG Test Access Port gemäß IEEE 1149.1.Der JTAG Test Access Port gemäß IEEE 1149.1wurde ursprünglichfür densogenannten Boundary-Scan-Test entwickelt und standardisiert, wirdmittlerweile aber auch fürandere Zwecke verwendet. Im betrachteten Beispiel wird er dazu verwendet,um das Testen des Halbleiter-Chips nach dem Full-Scan-Test-Verfahren zu steuern.
[0010] DerTAP 420 ist mit den Eingangsanschlüssen TCK, TDI und TMS, undmit dem Ausgangsanschluß TDOdes Halbleiter-Chips verbunden und erzeugt Signale scan_clock, scan_en,und scan_mode. Die Anschlüssedes Halbleiter-Chips, mit welchen der TAP 420 verbundenist, weisen die Bezeichnungen auf, die auch im erwähnten StandardIEEE 1149.1 verwendet werden.
[0011] DasSignal scan_mode wird zur Steuerung der Multiplexer 471 bis 473 verwendet.
[0012] DieMultiplexer 471 und 472 dienen, wie vorstehendbereits erläutertwurde, zur Auswahl der überdie Ausgangsanschlüsse 482 und 484 desHalbleiter-Chips auszugebenden Signale.
[0013] DerMultiplexer 473 dient zur Auswahl des vom Halbleiter-Chipverwendeten Taktsignals. Der Multiplexer 473 weist zweiEingangsanschlüsseauf, wobei an den ersten Eingangsanschluß ein dem Halbleiter-Chip über denEingangsanschluß 485 zugeführtes erstesTaktsignal sys_clock angelegt wird, und wobei an den zweiten Eingangsanschluß das ausdem TAP 420 ausgegebene, als zweites Taktsignal verwendeteSignal scan_clock angelegt wird. Dabei ist das erste Taktsignaldas Taktsignal, mit welchem der Halbleiter-Chip während desnormalen Betriebes zu takten ist, und ist das zweite Taktsignaldas Taktsignal, mit welchem der Halbleiter-Chip während desTestens des Halbleiter-Chips nach dem Full-Scan-Test-Verfahren zutakten ist. Das aus dem Multiplexer 473 ausgegebene Taktsignalist das Taktsignal, mit welchem die taktgesteuerten Komponentendes Halbleiter-Chips arbeiten. Bei aktivem Signal scan_mode wirddurch den Multiplexer 473 das Signal scan_clock durchgeschaltet,und bei inaktivem Signal scan_mode wird durch den Multiplexer 473 dasSignal sys_clock durchgeschaltet.
[0014] Durchdas Signal scan_mode wird bestimmt, ob sich der Halbleiter-Chipin der Normal-Betriebsart oder einer Full-Scan-Test-Betriebsart befindet, wobei dieNormal-Betriebsart diejenige Betriebsart ist, in welcher sich derHalbleiter-Chip im normalen Betrieb befindet und bestimmungsgemäß arbeitet,und wobei die Full-Scan-Test-Betriebsart diejenige Betriebsart ist,in welcher der Halbleiter-Chip nach dem Full-Scan-Test-Verfahren getestetwerden kann. Durch das Signal scan_en wird zusätzlich bestimmt, wie sich derHalbleiter-Chip in der Full-Scan-Test-Betriebsart verhält. DerTAP 420 ist so aufgebaut und wird so gesteuert, daß das Signalscan_en nur aktiv sein kann, wenn der Halbleiter-Chip durch dasSignal scan_mode in die Full-Scan-Test-Betriebsart versetzt ist.
[0015] Inder Normal-Betriebsart (scan_mode inaktiv, scan_en inaktiv) werdendie Multiplexer 471 bis 473 so gesteuert, daß der Halbleiter-Chipunter Verwendung des überden Eingangsanschluß 485 erhaltenenTaktsignals getaktet wird, und aus den Ausgangsanschlüssen 482 und 484 dieaus der Logik 401 ausgegebenen Signale ausgegeben werden.
[0016] Inder Full-Scan-Test-Betriebsart (scan_mode aktiv, scan_en aktiv oderinaktiv) werden die Multiplexer 471 bis 473 sogesteuert, daß der Halbleiter-Chipunter Verwendung des vom TAP 420 ausgegebenen Taktsignalsscan_clock getaktet wird, und aus den Ausgangsanschlüssen 482 und 484 entwederdie aus den Schieberegistern 402 und 403 ausgegebenenSignale (scan_en aktiv) oder die aus der Logik 401 ausgegebenenSignale (scan_en inaktiv) ausgegeben werden. Durch das Signal scan_en wirddarüberhinaus auch bestimmt, ob die Flip-Flops der Logik 401 zuden Schieberegistern 402 und 403 verschaltet sind(scan_en aktiv) oder nicht (scan_en inaktiv). Wenn der Halbleiter-Chipdurch ein aktives Signal scan_mode in die Full-Scan-Test-Betriebsart versetztist, und auch das Signal scan_en aktiv ist, sind die die Flip-Flopszu den Schieberegistern 402 und 403 verschaltet,und könnendie Schieberegister 402 und 403 über dieEin- bzw. Ausgangsanschlüsse 481 bis 484 vonaußerhalbdes Halbleiter-Chips beschrieben und ausgelesen werden. Diese Betriebsart wirdim folgenden als Full-Scan-Test/Schiebe-Betriebsart bezeichnet.Wenn der Halbleiter-Chip durch ein aktives Signal scan_mode in die Full-Scan-Test-Betriebsartversetzt ist, und das Signal scan_en inaktiv ist, sind die Flip-Flopsnicht zu den Schieberegistern 402 und 403 verschaltetund arbeiten wie es im normalen Betrieb des Halbleiter-Chips derFall ist; der Halbleiter-Chip arbeitet nur mit einem anderen Taktsignalals in der Normal-Betriebsart, wobei die Taktsignale bei einfachenBausteinen auch identisch sein können.Diese Betriebsart wird im folgenden als Full-Scan-Test/Capture-Betriebsartbezeichnet.
[0017] DerAufbau des TAP 420 ist in 6 veranschaulicht.Der TAP 420 enthälteine State Machine 421, ein Instruction Register 422,ein UND-Gatter 423, und einen Multiplexer 424.
[0018] Dieim folgenden beschriebenen Kontrollbits sind im betrachteten Beispielim Instruction Register 422 gespeichert. Es ist jedochebenso möglich,hierfüreines der im Standard IEEE 1149.1 definierten "design specific register" für dieseFunktion vorzusehen.
[0019] DieState Machine 421 ist mit den Eingangsanschlüssen TMSund TCK des Halbleiter-Chips verbunden, und bekommt über denEingangsanschluß TMSseriell Steuer-Bits, und überden Eingangsanschluß TCKein Taktsignal zugeführt.Die State Machine 421 kann insgesamt 16 verschiedene Zustände annehmen,die in IEEE 1149.1 und auch in der folgenden Beschreibung mit test_logic_reset, run_test/idle,select_dr_scan, capture_dr, shift_dr, exitl_dr, pause_dr, exit2_dr,update_dr, select_ir_scan, capture_ir, shift_ir, exit1_ir, pause_ir, exit2_ir,und update_ir bezeichnet sind. In welchem Zustand sich die StateMachine 421 gerade befindet, hängt von der der State Machine 421 über denEingangsanschluß TMSzugeführtenSteuer-Bit-Folge ab; in IEEE 1149.1 ist festgelegt, unter welchenUmständendie State Machine welchen Zustand annimmt. Beispielsweise ist esso, – daß die StateMachine dann, wenn sie sich im Zustand test_logic_reset befindet,durch ein ihr überden Eingangsanschluß TMSzugeführtes Steuer-Bitmit dem Wert 1 im Zustand test_logic_reset gehalten wird, und durchein ihr überden Eingangsanschluß TMSzugeführtes Steuer-Bitmit dem Wert 0 in den Zustand run_test/idle versetzt wird, – daß die StateMachine dann, wenn sie sich im Zustand run_test/idle befindet, durchein ihr über denEingangsanschluß TMSzugeführtesSteuer-Bit mit dem Wert 0 im Zustand run_test/idle gehalten wird,und durch ein ihr überden Eingangsanschluß TMSzugeführtesSteuer-Bit mit dem Wert 1 in den Zustand select_dr_scan versetzt wird,und – daß die StateMachine dann, wenn sie sich im Zustand select_dr_scan befindet,durch ein ihr überden Eingangsanschluß TMSzugeführtes Steuer-Bitmit dem Wert 0 in den Zustand capture_dr versetzt wird, und durchein ihr über denEingangsanschluß TMSzugeführtesSteuer-Bit mit dem Wert 1 in den Zustand select_ir_scan versetztwird.
[0020] DasvollständigeState-Diagram ist in 7 veranschaulicht. Bezüglich weitererEinzelheiten wird auf den Standard IEEE 1149.1 verwiesen.
[0021] DieState Machine 421 gibt im betrachteten Beispiel Signaleupdate_ir, shift_ir, und *_ir aus, – wobeidas Signal update_ir aktiv ist, wenn sich die State Machine im Zustandupdate_ir befindet, – wobeidas Signal shift_ir aktiv ist, wenn sich die State Machine im Zustandshift_ir befindet, und – wobeidas Signal *_ir aktiv ist, wenn sich die State Machine in einemder Zuständebefindet, deren Bezeichnung mit _ir endet.
[0022] DasInstruction Register 422 ist ein Schieberegister, das mehrere,jeweils zur Speicherung von 1 Bit ausgelegte Register umfaßt. Es istmit den EingangsanschlüssenTDI und TCK des Halbleiter-Chips verbunden, und bekommt über denEingangsanschluß TDIseriell Instruktions-Bits, und über denEingangsanschluß TCKein Taktsignal zugeführt. DieRegister des Instruction Register 422 sind auch parallelund ohne Schiebeoperation beschreibbar und auslesbar.
[0023] DasInstruction Register 422 wird durch die von der State Machine 421 ausgegebenenSignale update_ir und shift_ir gesteuert. Durch das Signal update_irwird die parallele Übernahmevon an die einzelnen Register des Instruction Register 422 angelegtenDaten in das Instruction Register veranlaßt, und durch das Signal shift_irwird eine bitweise serielle Datenübernahme mit gleichzeitigerSchiebeoperation veranlaßt.
[0024] Vonden im Instruction Register 422 gespeicherten Bits wirdder Wert eines n-ten Bits als das vorstehend bereits erwähnte Signalscan_mode verwendet und aus dem TAP 420 ausgegeben, wobein beliebig groß seinkann. Dieses n-te Bit wird zusätzlichdem UND-Gatter 423 zugeführt. Dem UND-Gatter 423 wirdferner das aktuell überden Eingangsanschluß TDIzugeführteInstruktions-Bit zugeführt.Das UND-Gatter 423 führteine UND-Verknüpfungder ihm zugeführtenSignale aus. Das Ergebnis dieser UND-Verknüpfung wird als das vorstehendbereits erwähnteSignal scan_en verwendet und aus dem TAP 420 ausgegeben.
[0025] DerAusgang des Instruction Register 422 ist mit einem derEingangsanschlüssedes Multiplexers 424 verbunden. Der andere Eingangsanschlluß des Multiplexerssind mit nicht gezeigten weiteren Register des TAP 420 verbunden.Der Ausgangsanschluß desMultiplexers 424 ist mit dem Ausgangsanschluß TDO desHalbleiter-Chips verbunden. Der Multiplexer 424 wird durchdas Signal *_ir gesteuert, so daß immer dann, wenn sich dieState Machine in einem Zustand befindet, dessen Bezeichnung mit_it endet, das letzte Bit des Instruction Register aus dem Ausgangsanschluß TDO ausgegebenwird. Dadurch kann überprüft werden,ob der TAP 420 ordnungsgemäß arbeitet. Der Vollständigkeithalber sei darauf hingewiesen, daß der Multiplexer 424 auchmehr als zwei Eingangsanschlüsseaufweisen kann, wobei diese weiteren Eingangsanschlüsse mitin der 6 nicht gezeigten weiteren Registern des TAP verbundensind.
[0026] Darüber hinauswird das dem TAP 420 über denEingangsanschluß TCKdes Halbleiter-Chips zugeführteTaktsignal als das Taktsignal scan_clock verwendet und aus dem TAP 420 ausgegeben.Das dem TAP 420 überden Eingangsanschluß TCKdes Halbleiter-ChipszugeführteTaktsignal wird außerdemals Taktsignal fürdie taktgesteuerten Komponenten des TAP 420 verwendet.
[0027] DasTesten des in der 5 gezeigten Halbleiter-Chipsnach dem Full-Scan-Test-Verfahren läuft nun wie folgt ab: Zunächst wirdder TAP 420 durch die Eingabe entsprechender Bitfolgen über dieEingangsanschlüsseTDI und TMS in einen Zustand versetzt, in welchem die vom TAP 420 ausgegebenen Signalescan_mode und scan_en Werte aufweisen, durch die der Halbleiter-Chipin die Full-Scan-Test/Schiebe-Betriebsart versetzt wird. Anschließend werdendie Schieberegister 402 und 403 über dieEingangsanschlüsse 481 und 483 bitweise seriellmit ein Testmuster repräsentierendenDaten beschrieben. Nachdem dies geschehen ist, wird der Halbleiter-Chip über dieEingangsanschlüsseTDI und TMS kurzzeitig, beispielsweise für einen oder zwei Takte desTaktsignals scan_clock, in die Full-Scan-Test/Capture-Betriebsartversetzt. In dieser Betriebsart sind die Schieberegister 402 und 403 aufgelöst, unddie Logik 401 einschließlich der Flip-Flops arbeitetwie in der Normal-Betriebsart. Nur das Taktsignal (scan_clock) istein anderes als in der Normal-Betriebsart (sys_clock). In der Full-Scan-Test/Capture-Betriebsartkönnensich die von den Flip-Flops gespeicherten Daten verändern. Obund gegebenenfalls wie sie sich ändern,hängt unteranderem von den Daten ab, die zuvor in die Schieberegister 402 und 403 geladenwurden, und vom Aufbau und der Funktion der Logik 401.Danach wird der Halbleiter-Chip überdie EingangsanschlüsseTDI und TMS wieder in die Full-Scan-Test/Schiebe-Betriebsart versetzt.In diesem Zustand werden überdie Ausgangsanschlüsse 482 und 484 diein den Schieberegistern 402 und 403 gespeichertenDaten ausgelesen. Gleichzeitig oder danach können bereits ein anderes TestmusterrepräsentierendeDaten in die Schieberegister 402 und 403 geschriebenwerden. Die aus den Schieberegistern 402 und 403 ausgelesenenDaten werden sodann mit vorgegebenen Soll-Daten verglichen. DieSoll-Daten sind diejenigen Daten, die in den Schieberegistern 402 und 403 gespeichertsein müßten, wennder Halbleiter-Chip ordnungsgemäß arbeitet.Anhand des Ergebnisses des Vergleiches zwischen den aus den Schieberegistern 402 und 403 ausgelesenenDaten und den Soll-Daten kann somit ermittelt werden, ob der Halbleiter-Chipordnungsgemäß arbeitet.Stimmen die miteinander verglichenen Daten überein, so kann davon ausgegangenwerden, daß derHalbleiter-Chip fehlerfrei gearbeitet hat. Stimmen die Daten nicht überein,hat der Halbleiter-Chip nicht fehlerfrei gearbeitet.
[0028] Dervorstehend beschriebene Test kann unter Verwendung anderer Testmusterbeliebig oft wiederholt werden.
[0029] Einsolcher Test kann mitunter sehr lange dauern. Insbesondere wenndie Logik 401 sehr viele Flip-Flops enthält und somitdie aus den Flip-Flops gebildeten Schieberegister 402 und 403 sehrlang sind, dauert vor allem das Beschreiben der Schieberegistermit den Testmustern und das Auslesen der Schieberegister sehr lange.
[0030] DiesesProblem läßt sichvermeiden, wenn die Flip-Flops der Logik 401 nicht zu nureinem oder zwei Schieberegistern, sondern zu einer größeren Anzahlvon Schieberegistern verschaltet werden. Die mehreren Schieberegisterweisen dann weniger Flip-Flops auf und können dementsprechend schnellerbeschrieben und ausgelesen werden.
[0031] Indiesem Fall müssenaber eine entsprechend größere Anzahlvon Ein- und Ausgangsanschlüssenzum Beschreiben und Auslesen der Schieberegister, und eine entsprechendgrößere Anzahl vonVerbindungen zwischen dem Halbleiter-Chip und der den Halbleiter-Chiptestenden Testvorrichtung vorgesehen werden. Dies führt dazu,daß dasTesten des Halbleiter-Chips unter Verwendung des Full-Scan-Test-Verfahrensaufwendiger ist als es bei der Bildung von einem oder zwei Schieberegistern derFall ist. Um diesen Nachteil gering zu halten, sollte die Anzahlder in der Full-Scan-Test/Schiebe-Betriebsart gebildeten Schieberegistermöglichstgering gehalten werden. Im Idealfall wird nur ein einziges Schieberegistergebildet, was aber wiederum zu den vorstehend erwähnten zeitlichenProblemen führt.
[0032] Einweiterer Nachteil des in den 5 und 6 gezeigtenHalbleiter-Chips besteht darin, daß es schwierig und teilweisesogar unmöglichist, auch solche Halbleiter-Chips unter Verwendung des Full-Scan-Test-Verfahrenszu testen, die bereits auf eine Leiterplatte montiert sind. Dieshat zwei Gründe. Erstenssind bei auf eine Leiterplatte montierten Halbleiter-Chip häufig nichtalle Ein- und/oder Ausgangsanschlüsse des Halbleiter-Chips freizugänglich.Dies ist beispielsweise, aber nicht ausschließlich bei Halbleiter-Chips der Fall, diein Ball-Grid-Array-Gehäusenuntergebracht sind oder unter Verwendung der Flip-Chip-Technik montiertsind. Zweitens ist es problematisch, daß die zum Beschreiben und Auslesender Schieberegister vorgesehenen Eingangs- bzw. Ausgangsanschlüsse Multifunktionsanschlüsse sind,die auch fürandere Zwecke als zum Beschreiben und Auslesen der Schieberegisterverwendet werden, so daß esbeim Beschreiben und Auslesen der Schieberegister eines Halbleiter-Chips, derbereits in ein existierendes System integriert ist, zu Kollisionenkommen kann.
[0033] Dervorliegenden Erfindung liegt daher die Aufgabe zugrunde, den Halbleiter-Chipgemäß dem Oberbegriffdes Patentanspruchs 1 derart weiterzubilden, daß dieser unter allen Umständen, insbesondereauch dann, wenn er bereits in ein System eingebaut ist, schnellund einfach umfassend getestet werden kann.
[0034] DieseAufgabe wird erfindungsgemäß durch denin Patentanspruch 1 beanspruchten Halbleiter-Chip gelöst.
[0035] Dererfindungsgemäße Halbleiter-Chip zeichnetsich dadurch aus, daß derHalbleiter-Chip derart aufgebaut ist, daß das eine oder die mehreren Schieberegister über denJTAG Test Access Port auslesbar und beschreibbar sind.
[0036] Dadurchentfälltdie Notwendigkeit, pro Schieberegister zwei ausschließlich hierfür benutzbareoder normalerweise anderweitig benutzte Halbleiter-Chip-Anschlüsse zumBeschreiben und Auslesen des betreffenden Schieberegisters vorzusehen. SämtlicheSchieberegister können über eineneinzigen JTAG Test Access Port beschrieben und ausgelesen werden,und zwar unabhängigvon der Anzahl der Schieberegister. Dies erweist sich in mehrfacher Hinsichtals vorteilhaft: erstens läßt sichdie Anzahl der Ein- und/oder Ausgabeanschlüsse des Halbleiter-Chips geringhalten, zweitens könnenauch bereits in ein System integrierte Halbleiter-Chips unter allenUmständenumfassend getestet werden, und drittens können beim Testen des Halbleiter-Chipsbeliebig viele Schieberegister gebildet werden, so daß das Beschreibenund Auslesen eines jeden Schieberegisters maximal schnell erfolgenkann.
[0037] DieErfindung wird nachfolgend anhand von Ausführungsbeispielen unter Bezugnahmeauf die Figuren nähererläutert.Es zeigen
[0038] 1 denAufbau eines im folgenden näher beschriebenenersten Halbleiter-Chips,
[0039] 2 denAufbau eines JTAG Test Access Port des in der 1 gezeigtenHalbleiter-Chips,
[0040] 3 denAufbau eines im folgenden näher beschriebenenzweiten Halbleiter-Chips,
[0041] 4 denAufbau eines JTAG Test Access Port des in der 3 gezeigtenHalbleiter-Chips,
[0042] 5 denAufbau eines herkömmlichen Halbleiter-Chips,der nach dem Full-Scan-Test-Verfahren getestet werden kann,
[0043] 6 denAufbau eines JTAG Test Access Port des in der 5 gezeigtenHalbleiter-Chips und
[0044] 7 dasState Diagram eines JTAG Test Access Port gemäß IEEE 1149.1.
[0045] Beiden im folgenden beschriebenen Halbleiter-Chips handelt es sichum Mikrocontroller. Es könntesich jedoch auch um eine andere programmgesteuerte Einheit wie beispielsweiseeinen Mikroprozessor oder einen Signalprozessor handeln, oder umeinen beliebigen anderen Halbleiter-Chip.
[0046] Imfolgenden werden mehrere verschiedene Ausführungsformen der hier vorgestelltenArt von Halbleiter-Chip beschrieben. Allen Ausführungsformen ist gemeinsam,daß derHalbleiter-Chipeine Vielzahl von Flip-Flops enthält, die sich zum Testen desHalbleiter-Chips zu einem oder mehreren Schieberegistern verschaltenlassen, und daß daseine oder die mehreren Schieberegister über einen JTAG Test AccessPort des Halbleiter-Chips beschreibbar und auslesbar sind.
[0047] Essei bereits an dieser Stelle darauf hingewiesen, daß von denim folgenden beschriebenen Halbleiter-Chips nur die vorliegend besondersinteressierenden Bestandteile gezeigt und beschrieben sind. Bezüglich weitererEinzelheiten insbesondere zum JTAG Test Access Port wird auf denStandard IEEE 1149.1 verwiesen.
[0048] Dererste der hier vorgestellten Halbleiter-Chips ist in den 1 und 2 veranschaulicht.
[0049] Derin der 1 gezeigte Halbleiter-Chip enthält einenersten Multiplexer 171, einen zweiten Multiplexer 172,einen dritten Multiplexer 173, einen vierten Multiplexer 174,einen fünftenMultiplexer 175, einen sechsten Multiplexer 176,einen siebten Multiplexer 177, einen im folgenden als TAPbezeichneten JTAG Test Access Port 120, ein erstes Sperrelement 191,ein zweites Sperrelement 192, und eine Vielzahl von Ein- und/oder Ausgabeanschlüssen, vonwelchen in der 1 jedoch nur die Anschlüsse TCK,TDI, TMS, TDO und 181 bis 185 gezeigt sind.
[0050] Inder 1 ist ferner ein Testregister 125 gezeigt.Dieses Testregister ist Bestandteil des TAP 120 und istin der 1 nur der Anschaulichkeit halber außerhalbdes TAP 120 dargestellt. Wie später noch genauer erläutert wird,wird das Testregister im betrachteten Beispiel durch ein zwei Bitsspeicherndes Schieberegister gebildet.
[0051] DerHalbleiter-Chip enthältferner eine in der 1 nicht gezeigte Logik.
[0052] DerHalbleiter-Chip kann darüberhinaus beliebige weitere Komponenten enthalten, beispielsweise eineoder mehrere CPUs, einen oder mehrere Speicher, etc.
[0053] Diein der 1 nicht gezeigte Logik entspricht der Logik 401 desin der 5 gezeigten Halbleiter-Chips. Die Logik enthält eineVielzahl von logischen Gattern und Speicherelementen. Die Speicherelementewerden im betrachteten Beispiel durch Flip-Flops gebildet, die sichwie bei dem in 5 gezeigten Halbleiter-Chipzum Testen des Halbleiter-Chips so in Reihe schalten lassen, daß sie sich wieein Schieberegister verhalten. Wie dies im einzelnen geschieht,ist bekannt und bedarf keiner näheren Erläuterung.Die 1 zeigt den Zustand des Halbleiter-Chips, in welchendie Flip-Flops der Logik zu zwei Schieberegistern, nämlich einemersten Schieberegister 102 und einem zweiten Schieberegister 103 verschaltetsind. Die Schieberegister 102 und 103 entsprechenden Schieberegistern 402 und 403 des in der 5 gezeigtenHalbleiter-Chips.
[0054] Daserste Schieberegister 102 ist eingangsseitig mit dem Ausgangsanschluß des Multiplexers 174 verbunden.Der Multiplexer 174 weist zwei Eingangsanschlüsse auf,von welchen einem vom TAP 120 ausgegebene Daten tdi zugeführt wird,und von welchen der andere mit dem Eingangsanschluß 181 desHalbleiter-Chips verbunden ist. Der Multiplexer 174 wirddurch ein vom TAP 120 ausgegebenes Signal jtag_mode gesteuert.Bei aktivem Signal jtag_mode gibt der Multiplexer 174 dieDaten tdi aus, und bei inaktivem Signal jtag_mode gibt der Multiplexer 174 die über denEingangsanschluß 181 des Halbleiter-Chipseingegebenen Daten aus.
[0055] Daserste Schieberegister 102 ist ausgangsseitig mit einemEingangsanschluß desMultiplexers 175 verbunden. Der Multiplexer 175 weistzwei Eingangsanschlüsseauf, wobei der zweite Eingangsanschluß mit dem Ausgangsanschluß des Multiplexers 174 verbundenist. Der Ausgangsanschluß desMultiplexers 175 ist mit einem der Eingangsanschlüsse desMultiplexers 171 und einem der Eingangsanschlüsse desMultiplexers 176 verbunden. Der Multiplexer 175 wirddurch das erste der im Testregister 125 gespeicherten Bitsgesteuert. Bei aktivem ersten Testregister-Bit gibt der Multiplexer 175 dievom Schieberegister 102 ausgegebenen Daten aus, und beiinaktivem ersten Testregister-Bit gibt der Multiplexer 175 dievom Multiplexer 174 ausgegebenen Daten aus.
[0056] Durchden Multiplexer 171 werden wahlweise die aus dem Multiplexer 175 ausgegebenenDaten oder aus der nicht gezeigten Logik ausgegebene Daten weitergeleitet,wobei die aus dem Multiplexer 175 ausgegebenen Daten entwederdie dem Schieberegister 102 zugeführten Daten oder die aus dem Schieberegister 102 ausgegebenenDaten sind. Der Multiplexer 171 wird durch ein vom TAP 120 ausgegebenesSignal scan_en gesteuert. Bei aktivem Signal scan_en gibt der Multiplexer 171 dieihm vom Multiplexer 175 zugeführten Daten aus, und bei inaktivemSignal scan_en gibt der Multiplexer 171 die ihm von derLogik zugeführtenDaten aus. Die aus dem Multiplexer 171 ausgegebenen Datenwerden über dasSperrelement 191 an den Ausgangsanschluß 182 des Halbleiter-Chipsweitergeleitet.
[0057] DasSperrelement 191 wird durch das vom TAP 120 ausgegebeneSignal jtag_mode gesteuert. Durch das Sperrelement 191 kanndie Weiterleitung des aus dem Multiplexer 171 ausgegebenenSignals zum Ausgangsanschluß 182 verhindertwerden. Wie sich das Sperrelement 191 verhält, d.h.ob es das ihm zugeführteSignal zum Ausgangsanschluß 182 weiterleitetoder nicht, hängtvom Pegel des Steuersignals jtag_mode ab. Bei aktivem Steuersignal jtag_modewird die Weiterleitung der dem Sperrelement 191 zugeführten Datenzum Ausgangsanschluß 182 unterbunden,und bei inaktivem Steuersignal jtag_mode werden die dem Sperrelement 191 zugeführten Datenzum Ausgangsanschluß 182 weitergeleitet.Durch das Sperrelement 191 kann verhindert werden, daß wärend desScan-Tests am Ausgangsanschluß 182 desHalbleiter-Chips Ausgangsmuster entstehen, die zu Beschädigungender Folgeschaltung führen.
[0058] Dervorstehend bereits erwähnteMultiplexer 176 weist zwei Eingangsanschlüsse auf,von welchen der eine mit dem Ausgangsanschluß des Multiplexers 175 verbundenist, und von welchen der andere mit dem Eingangsanschluß 183 desHalblei ter-Chips verbunden ist. Der Ausgangsanschluß des Multiplexers 176 istmit dem Eingangsanschluß des zweitenSchieberegisters 103 und mit einem der Eingangsanschlüsse desMultiplexers 177 verbunden. Der Multiplexer 176 wirddurch das vom TAP 120 ausgegebene Signal jtag_mode gesteuert.Bei aktivem Signal jtag_mode gibt der Multiplexer 176 die ihmvom Multiplexer 175 zugeführten Daten aus, und bei inaktivemSignal jtag_mode gibt der Multiplexer 176 die über denEingangsanschluß 183 desHalbleiter-Chips eingegebenen Daten aus.
[0059] DerMultiplexer 177 weist zwei Eingangsanschlüsse auf,wobei der zweite Eingangsanschluß mit dem Ausgangsanschluß des Schieberegisters 103 verbundenist. Der Multiplexer 177 wird durch das zweite der im Testregister 125 gespeichertenBits gesteuert. Bei aktivem zweitem Testregister-Bit gibt der Multiplexer 177 dievom Schieberegister 103 ausgegebenen Daten aus, und beiinaktivem zweitem Testregister-Bit gibt der Multiplexer 177 dievom Multiplexer 176 ausgegebenen Daten aus. Der Ausgangsanschluß des Multiplexers 177 istmit einem der Eingangsanschlüssedes Multiplexers 172 und mit dem TAP 120 verbunden.
[0060] Durchden Multiplexer 172 werden wahlweise die aus dem Multiplexer 177 ausgegebenenDaten oder aus der nicht gezeigten Logik ausgegebene Daten weitergeleitet,wobei die aus dem Multiplexer 177 ausgegebenen Daten entwederdie dem Schieberegister 103 zugeführten Daten oder die aus dem Schieberegister 103 ausgegebenenDaten sind. Der Multiplexer 172 wird durch das vom TAP 120 ausgegebeneSignal scan_en gesteuert. Bei aktivem Signal scan_en gibt der Multiplexer 172 dieihm vom Multiplexer 177 zugeführten Daten aus, und bei inaktivemSignal scan_en gibt der Multiplexer 172 die ihm von derLogik zugeführtenDaten aus. Die aus dem Multiplexer 172 ausgegebenen Datenwerden über dasSperrelement 192 an den Ausgangsanschluß 184 des Halbleiter-Chipsweitergeleitet.
[0061] DasSperrelement 192 wird durch das vom TAP ausgegebene Signaljtag_mode gesteuert. Durch das Sperrelement 192 kann dieWeiterleitung des aus dem Multiplexer 172 ausgegebenenSignals zum Ausgangsanschluß 184 verhindertwerden. Wie sich das Sperrelement 192 verhält, d.h.ob es das ihm zugeführteSignal zum Ausgangsanschluß 184 weiterleitetoder nicht, hängtvom Pegel des Steuersignals jtag_mode ab. Bei aktivem Steuersignal jtag_modewird die Weiterleitung der dem Sperrelement 192 zugeführten Datenzum Ausgangsanschluß 184 unterbunden,und bei inaktivem Steuersignal jtag_mode werden die dem Sperrelement 192 zugeführten Datenzum Ausgangsanschluß 184 weitergeleitet.Durch das Sperrelement 192 kann verhindert werden, daß wärend desScan-Tests am Ausgangsanschluß 184 desHalbleiter-Chips Ausgangsmuster entstehen, die zu Beschädigungender Folgeschaltung führen.
[0062] DerMultiplexer 173 weist zwei Eingangsanschlüsse auf,wobei an den ersten Eingangsanschluß ein dem Halbleiter-Chip über denEingangsanschluß 185 zugeführtes erstesTaktsignal sys_clock angelegt wird, und wobei an den zweiten Eingangsanschluß ein ausdem TAP 120 ausgegebenes, als zweites Taktsignal verwendetesSignal scan_clock angelegt wird. Dabei ist das erste Taktsignal sys_clockdas Taktsignal, mit welchem der Halbleiter-Chip während desnormalen Betriebes zu takten ist, und ist das zweite Taktsignalscan_clock das Taktsignal, mit welchem der Halbleiter-Chip während des Testensdes Halbleiter-Chips zu takten ist. Der Multiplexer 173 wirddurch das vom TAP 120 ausgegebene Signal scan_mode gesteuert.Bei aktivem Signal scan_mode wird das vom TAP 120 ausgegebene Taktsignalscan_clock durchgeschaltet, und bei inaktivem Signal scan_mode wirddas überden Eingangsanschluß 185 zugeführte Taktsignalsys_clock durchgeschaltet. Das aus dem Multiplexer 173 ausgegebeneTaktsignal ist das Taktsignal, mit welchem die taktgesteuerten Komponentendes Halbleiter-Chipsarbeiten.
[0063] DerTAP 120 ist ein JTAG Test Access Port gemäß IEEE 1149.1.Der JTAG Test Access Port gemäß IEEE 1149.1wurde, wie vorstehend bereits erwähnt wurde, ursprünglich für den sogenannten Boundary-Scan-Testentwickelt und standardisiert. Der TAP 120 ermöglicht esdarüberhinaus, daß auch dasTesten des Halbleiter-Chips nach dem Full-Scan-Test-Verfahren odernach einem später nochnäher erläutertenSelective-Scan-Test-Verfahren überden TAP 120 gesteuert wird, und daß die beim Testen des Halbleiter-Chipsgebildeten Schieberegister 102 und 103 über denEingangsanschluß TDIdes Halbleiter-Chips und den TAP 120 beschrieben und ausgelesenwerden können.
[0064] DerTAP 120 ist mit den Eingangsanschlüssen TCK, TDI und TMS, undmit dem Ausgangsanschluß TDOdes Halbleiter-Chips verbunden. Die Anschlüsse des Halbleiter-Chips, mitwelchen der TAP 120 verbunden ist, weisen die Bezeichnungenauf, die auch im erwähntenStandard IEEE 1149.1 verwendet werden.
[0065] DerTAP 120 gibt die vorstehend bereits erwähnten Signale scan_clock, scan_en,scan_mode und jtag_mode, sowie die Daten tdi aus, und bekommt (vomMultiplexer 177) die Daten tdo zugeführt.
[0066] DerAufbau des TAP 120 ist in 2 veranschaulicht.Der TAP 120 enthälteine State Machine 121, ein Instruction Register 122,das bereits erwähnteTestregister 125, UND-Gatter 131 bis 133, ODER-Gatter 141 und 142,ein Sperrelement 151, und Multiplexer 161 bis 163.
[0067] DieState Machine 121 ist mit den Eingangsanschlüssen TMSund TCK des Halbleiter-Chips verbunden, und bekommt über denEingangsanschluß TMSseriell Steuer-Bits, und überden Eingangsanschluß TCKein Taktsignal zugeführt.Die State Machine 121 kann die selben 16 verschiedenenZuständeannehmen wie es bei der State Machine 421 des in der 6 veranschaulichtenherkömmlichenTAP 420 der Fall ist. In welchem Zustand sich die State Machine 121 geradebefindet, hängtvon der der State Machine 121 über den Eingangsanschluß TMS zugeführten Steuer-Bit-Folgeab. Das State Diagram für dieState Machine 121 entspricht dem in der 7 gezeigtenState Diagram fürdie State Machine 421.
[0068] DieState Machine 121 gibt Signale update_ir, shift_ir, capture_dr,shift_dr, update_dr, und *_ir aus, wobei – das Signalupdate_ir aktiv ist, wenn sich die State Machine im Zustand update_irbefindet, – dasSignal shift_ir aktiv ist, wenn sich die State Machine im Zustandshift_ir befindet, – dasSignal capture_dr aktiv ist, wenn sich die State Machine im Zustandcapture_dr befindet, – dasSignal shift_dr aktiv ist, wenn sich die State Machine im Zustandshift_dr befindet, und – dasSignal update_dr aktiv ist, wenn sich die State Machine im Zustandupdate_dr befindet, und – dasSignal *_ir aktiv ist, wenn sich die State Machine in einem derZuständebefindet, deren Bezeichnung mit _ir endet.
[0069] DasInstruction Register 122 ist ein Schieberegister, das mehrere,jeweils zur Speicherung von 1 Bit ausgelegte Register. Die Anzahlder Register beträgtim betrachteten Beispiel drei, kann aber auch beliebig viel größer sein.Dem Instruction Register 122 ist ein in der 2 nichtgezeigtes "Schattenregister" gleicher Größe zugeordnet.
[0070] DasInstruction Register 122 ist mit den Eingangsanschlüssen TDIund TCK des Halbleiter-Chips verbunden, und bekommt über denEingangsanschluß TDIseriell Instruktions-Bits, und über denEingangsanschluß TCKein Taktsignal zugeführt.
[0071] DasInstruction Register 122 wird durch die von der State Machine 121 ausgegebenenSignale update_ir und shift_ir gesteuert. Durch das Signal update_irwird die parallele Über nahmeder im Instruction Register 122 gespeicherten Daten inszugeordnete Schattenregister veranlaßt. Am parallelen Ausgang istimmer der Inhalt des Schattenregisters sichtbar. Durch das Signalshift_ir wird eine bitweise serielle Datenübernahme vom Eingang TDI mit gleichzeitigerSchiebeoperation veranlaßt.
[0072] Vonden im Instruction Register 122 gespeicherten Bits wirdder Wert eines c-ten Bits als das vorstehend bereits erwähnte Signaljtag_mode verwendet und aus dem TAP 120 ausgegeben. Dasc-te Bit ist im betrachteten Beispiel das dritte Bit, kann aberprinzipiell auch ein beliebiges anderes Bit des Instruction Register 122 sein.Das c-te Bit wird zusätzlichzur Steuerung der Multiplexer 162 und 163 verwendetund dem ODER-Gatter 141 zugeführt.
[0073] DemODER-Gatter 141 wird ferner der Wert eines b-ten Bits derim Instruction Register 122 gespeicherten Bits zugeführt. Dasb-te Bit ist im betrachteten Beispiel das zweite Bit, kann aberprinzipiell auch ein beliebiges anderes Bit des Instruction Register 122 sein.Das ODER-Gatter 141 unterzieht die ihm zugeführten Signaleeiner ODER-Verknüpfung.Das Ergebnis dieser Operation wird als das vorstehend bereits erwähnte Signalscan_mode verwendet und aus dem TAP 120 ausgegeben.
[0074] Dasb-te Bit der im Instruction Register 122 gespeichertenBits wird ferner dem UND-Gatter 133 und dem Multiplexer 163 zugeführt.
[0075] DemUND-Gatter 133 wird ferner das aktuell über den Eingangsanschluß TDI zugeführte Instruktions-Bitzugeführt.Das UND-Gatter 133 führt eine UND-Verknüpfung derihm zugeführtenSignale aus. Das Ergebnis dieser UND-Verknüpfung wird dem Multiplexer 162 zugeführt.
[0076] DemMultiplexer 162 wird zusätzlich das von der State Machine 121 ausgegebeneSignal capture_dr zugeführt.Der Multiplexer 162 wird, wie vorstehend bereits erwähnt wurde,durch das c-te Bit desInstruction Register 122 gesteuert. Bei aktivem c-ten Bit wird dasSignal capture_dr durchgeschaltet, und bei inaktivem c-ten Bit wirddas vom UND-Gatter 133 ausgegebene Signal durchgeschaltet.Das vom Multiplexer 162 durchgeschaltete Signal wird alsdas vorstehend bereits erwähnteSignal scan_en verwendet und aus dem TAP 120 ausgegeben.
[0077] DemMultiplexer 163 wird zusätzlich das Ausgangssignal desODER-Gatters 142 zugeführt. DerMultiplexer 163 wird, wie vorstehend bereits erwähnt wurde,durch das c-te Bit des Instruction Register 122 gesteuert.Bei aktivem c-ten Bit wird das vom ODER-Gatter 142 ausgegebeneSignal durchgeschaltet, und bei inaktivem c-ten Bit wird das b-te Bitdes Instruction Register 122 durchgeschaltet. Das vom Multiplexer 163 ausgegebeneSignal wird als Steuersignal fürdas Sperrelement 151 verwendet.
[0078] DasSperrelement 151 ist eingangsseitig mit dem Eingangsanschluß TCK desHalbleiter-Chips verbunden; das Ausgangssignal des Sperrelementes istdas vorstehend bereits erwähnteAusgangssignal scan_clock des TAP 120. Das Ausgangssignal scan_clockentspricht dem überden Eingangsanschluß TCKeingegebenen Taktsignal. D.h., das über den Eingangsanschluß TCK eingegebeneTaktsignal wird durch das Sperrelement 151 nur durchgeleitet. Durchdas Sperrelement 151 kann die Durchleitung aber gesperrtwerden, wobei es vom Ausgangssignal des Multiplexers 163 abhängt, wiesich das Sperrelement 151 verhält.
[0079] DemODER-Gatter 142 werden die von der State Machine 121 ausgegebenenSignale capture_dr und shift_dr zugeführt. Das ODER-Gatter führt eineODER-Verknüpfungdieser Signale durch und gibt das Ergebnis dieser Verknüpfung anden Multiplexer 163 aus.
[0080] Vonden im Instruction Register 122 gespeicherten Bits wirdder Wert des a-ten Bits dem UND-Gatter 131 und dem UND-Gatter 132 zugeführt. Dasa-te Bit ist im betrachteten Beispiel das erste Bit, kann aber prinzipiellauch ein beliebiges anderes Bit des Instruction Register 122 sein.
[0081] DemUND-Gatter 131 wird zusätzlichdas von der State Machine 121 ausgegebene Signal shift drzugeführt.Das UND-Gatter 131 führteine UND-Verknüpfungder ihm zugeführtenSignale durch und gibt das Ergebnis dieser Verknüpfung an das Testregister 125 aus.
[0082] DemUND-Gatter 132 wird zusätzlichdas von der State Machine 121 ausgegebene Signal update_drzugeführt.Das UND-Gatter 132 führteine UND-Verknüpfungder ihm zugeführtenSignale durch und gibt das Ergebnis dieser Verknüpfung an das Testregister 125 aus.
[0083] DasTestregister 125 ist eines der in IEEE 1149.1 erwähnten "design specific registers". Es handelt sichum ein Schieberegister, das mehrere, jeweils zur Speicherung von1 Bit ausgelegte Register umfaßt.Die Anzahl der Register entspricht der Anzahl der Schieberegister,zu welchen die Flip-Flops der Logik während des Testens des Halbleiter-Chips verschaltetsind. Im betrachteten Beispiel gibt es zwei solche Schieberegister,nämlichdie Schieberegister 102 und 103, so daß das Testregister 125 alsoein zwei Register umfassendes Testregister ist. Dem Testregister 125 istein in den Figuren nicht gezeigtes Schattenregister gleicher Größe zugeordnet.
[0084] DasTestregister 125 ist mit den Eingangsanschlüssen TDIund TCK des Halbleiter-Chips verbunden, und bekommt über denEingangsanschluß TDI seriellInstruktions-Bits, und überden Eingangsanschluß TCKein Taktsignal zugeführt.
[0085] DasTestregister 125 wird durch die von den UND-Gattern 131 und 132 ausgegebenenSignale gesteuert.
[0086] Dasx-te Bit (im betrachteten Beispiel das erste Bit) des Testregisters 125 wirdals das vorstehend erwähnteerste Steuersignal zur Steuerung des Multiplexers 175 verwendet,und das y-te Bit (im betrachteten Beispiel das zweite Bit) des Testregisters 125 wirdals das vorstehend erwähntezweite Steuersignal zur Steuerung des Multiplexers 177 verwendet.Im betrachteten Beispiel umfaßtdas Testregister 125 zwei Bits, von welchen das erste Bitdas x-te Bit ist, und das zweite Bit das y-te Bit ist. Hierauf besteht jedochkeine Einschränkung.Das Testregister 125 kann auch mehr als zwei Bits umfassen,und es könnenauch andere Bits als das erste Bit und das zweite Bit als das ersteSteuersignal und das zweite Steuersignal verwendet werden.
[0087] Dieaus dem Instruction Register 122 hinaus geschobenen Bitswerden einem der Eingangsanschlüssedes Multiplexers 161 zugeführt. Der Multiplexer 161 weistim betrachteten Beispiel zwei Eingangsanschlüsse auf, wobei dem zweitenEingangsanschluß diedem TAP 120 zugeführtenDaten tdo zugeführtwerden. Der Multiplexer 161 wird durch das von der StateMachine 121 ausgegebene Signal *_ir gesteuert. Bei aktivemSignal *_ir werden die aus dem Instruction Register 122 hinausgeschobenen Bitsdurchgeschaltet, und bei inaktivem Signal *_ir werden die Datentdo durchgeschaltet. Die aus dem Multiplexer 161 ausgegebenenDaten werden über denAusgangsanschluß TDOdes Halbleiter-Chips aus diesem ausgegeben. Der Multiplexer 161 kann zusätzlich nichtgezeigte weitere Eingangsanschlüsseaufweisen, die mit ebenfalls nicht gezeigten weiteren Registerndes TAP 120 verbunden sind.
[0088] Darüber hinauswerden die dem TAP 120 überden Eingangsanschluß TDIdes Halbleiter-Chips zugeführtenDaten als die Daten tdi verwendet und aus dem TAP 120 ausgegeben.
[0089] DerVollständigkeithalber sei angemerkt, daß,obgleich dies in der 2 nicht dargestellt ist, sämtlichetaktgesteuerten Komponenten des TAP 120 durch das dem Halbleiter-Chip über denEingangsanschluß TCKzugeführteTaktsignal scan_clock getaktet werden.
[0090] DerHalbleiter-Chip kann überden TAP 120 in verschiedene Betriebsarten versetzt werden.In welcher Betriebsart sich der Halbleiter-Chip befindet, wird dabeiunter anderem durch die Bits a, b, und c des Instruction Register 122 bestimmt.Das Instruction Register 122 kann im Zustand shift_ir derState Machine 121 überden Eingangsanschluß TDIdes Halbleiter-Chipswunschgemäß bitweiseseriell beschrieben werden. Das Versetzen der State Machine in denZustand shift_ir oder in einen sonstigen gewünschten Zustand erfolgt durchdie Eingabe einer entsprechenden Bitfolge über den Eingangsanschluß TMS desHalbleiter-Chips. Wie diese Bitfolge auszusehen hat, ist dem in 7 gezeigtenState Diagram entnehmbar.
[0091] Wenndie Bits a, b, c des Instruction Register 122 die Werte0, 0, 0 aufweisen, sind die aus dem TAP 120 ausgegebenenSignale scan_en, scan_mode, und jtag_mode inaktiv, und wird der Halbleiter-Chhipunter Verwendung des Taktsignals sys_clock getaktet. In diesem Zustandbefindet sich der Halbleiter-Chip in der Normal-Betriebsart, wobei dieNormal-Betriebsart diejenige Betriebsart ist, in welcher sich derHalbleiter-Chip im normalen Betrieb befindet und bestimmungsgemäß arbeitet.In der Normal-Betriebsart verhältsich der Halbleiter-Chip wie der in den 5 und 6 gezeigteherkömmlicheHalbleiter-Chip, wenn sich dieser in der Normal-Betriebsart befindet.Vorzugsweise ist es so, daß dieBits a, b, c des Instruction Register 122 nach dem Rücksetzendes Halbleiter-Chipsdie Werte 0, 0, 0 aufweisen. Dadurch befindet sich der Halbleiter-Chip nachdem Rücksetzendesselben automatisch in der Normal-Betriebsart.
[0092] Wenndie Bits a, b, c des Instruction Register 122 die Werte0, 1, 0 aufweisen, ist das aus dem TAP 120 ausgegebeneSignal jtag_mode inaktiv, ist das aus dem TAP 120 ausgegebeneSignal scan_mode aktiv, ist das aus dem TAP 120 ausgegebeneSignal scan_en entweder aktiv oder inaktiv, und wird der Halbleiter-Chip unter Verwendungdes Taktsignals scan_clock getaktet. In diesem Zustand befindetsich der Halbleiter-Chip in einer Full-Scan-Tesst-Betriebsart, wobeidie Full-Scan-Test-Betriebsart diejenige Betriebsart ist, in welcherder Halbleiter-Chip nach dem Full-Scan-Test-Verfahren getestet werdenkann. Das Testen des Halbleiter-Chips nach dem Full-Scan-Test-Verfahren erfolgtdabei exakt so wie es bei dem in den 5 und 6 gezeigtenherkömmlichenHalbleiter-Chip der Fall ist. D.h., der TAP 120 wird durchdie Eingabe entsprechender Daten über den Eingangsanschluß TDI zunächst ineinen Zustand versetzt, in welchem das vom TAP 120 ausgegebeneSignal scan_en den Wert aufweist, durch welchen die Flip-Flops derLogik zu den Schieberegistern 102 und 103 verschaltetwerden. In diesem Zustand befindet sich der Halbleiter-Chip in der Full-Scan-Test/Schiebe-Betriebsart.Die Full-Scan-Test/Schiebe-Betriebsartdes in den 1 und 2 gezeigtenHalbleiter-Chips entspricht der Full-Scan-Test/Schiebe-Betriebsart des inden 5 und 6 gezeigten Halbleiter-Chips. Anschließend werdendie Schieberegister 102 und 103 über die Eingangsanschlüsse 181 und 183 desHalbleiter-Chips bitweise seriell mit ein Testmuster repräsentierendenDaten beschrieben. Nachdem dies geschehen ist, wird der Halbleiter-Chip über denEingangsanschluß TDIdes Halbleiter-Chips kurzzeitig, beispielsweise für einenoder zwei Takte des Taktsignals scan_clock, in die Full-Scan-Test/Capture-Betriebsartversetzt. Die Full-Scan-Test/Capture-Betriebsart des in den 1 und 2 gezeigtenHalbleiter-Chips entspricht der Full-Scan-Test/Capture-Betriebsartdes in den 5 und 6 gezeigten herkömmlichenHalbleiter-Chips. D.h., in dieser Betriebsart sind die Schieberegister 102 und 103 aufgelöst, unddie Logik einschließlichder Flip-Flops arbeitet wie in der Normal-Betriebsart. Nur das Taktsignal (scan_clock)ist ein anderes als in der Normal-Betriebsart (sys_clock). In derFull-Scan-Tesst/Capture-Betriebsart können sich die von den Flip-Flopsgespeicherten Daten verändern.Ob und gegebenenfalls wie sie sich ändern, hängt unter anderem von den Datenab, die zuvor in die Schieberegister 102 und 103 geladenwurden, und vom Aufbau und der Funktion der Logik. Danach wird derHalbleiter-Chip überden Eingangsanschluß TDIwieder in die Full-Scan-Test/Schiebe-Betriebsart versetzt. In diesemZustand werden die in den Schieberegistern 102 und 103 gespeichertenDaten überdie Ausgangsanschlüsse 182 und 184 desHalbleiter-Chips ausgelesen. Gleichzeitig oder danach können bereitsein anderes Testmuster repräsentierendeDaten in die Schieberegister 102 und 103 geschriebenwerden. Die aus den Schieberegistern 102 und 103 ausgelesenenDaten werden sodann mit vorgegebenen Soll-Daten verglichen. DieSoll-Daten sind diejenigen Daten, die in den Schieberegistern 102 und 103 gespeichertsein müßten, wennder Halbleiter-Chip ordnungsgemäß arbeitet.Anhand des Ergebnisses des Vergleiches zwischen den aus den Schieberegistern 102 und 103 ausgelesenenDaten und den Soll-Daten kann somit ermittelt werden, ob der Halbleiter-Chipordnungsgemäß arbeitet.Stimmen die miteinander verglichenen Daten überein, so kann davon ausgegangenwerden, daß derHalbleiter-Chip fehlerfrei gearbeitet hat. Stimmen die Daten nicht überein,hat der Halbleiter-Chip nicht fehlerfrei gearbeitet. Der vorstehendbeschriebene Test kann unter Verwendung anderer Testmuster beliebigoft wiederholt werden.
[0093] Wenndie Bits a, b, c des Instruction Register 122 die Werte1, 0, 0 aufweisen, sind die aus dem TAP 120 ausgegebenenSignale scan_mode und jtag_mode inaktiv, und wird der Halbleiter-Chipunter Verwendung des Taktsignals sys_clock getaktet. In diesem Zustandbefindet sich der Halbleiter-Chip in einer Testregisterzugriffs-Betriebsart,in welcher unter Steuerung der überden Eingangsabschluß TMS desHalbleiter-Chips eingegebenen Steuerbitfolge über den Eingangsanschluß TDI desHalbleiter-Chips der Inhalt des Testregisters 125 verändert werdenkann. Damit der Inhalt des Testregisters 125 tatsächlich verändert werdenkann, muß zusätzlich dasvom TAP 120 ausgegebene Signal shift_dr aktiv sein.
[0094] Wenndie Bits a, b, c des Instruction Register 122 die Werte0, 1, 1 aufweisen, sind die aus dem TAP 120 ausgegebenenSignale scan_mode und jtag_mode aktiv, ist das aus dem TAP 120 ausgegebeneSignal scan_en entweder aktiv oder inaktiv, und wird der Halbleiter-Chipunter Verwendung des Taktsignals scan_clock getaktet, wobei dieAusgabe des Taktsignals scan_clock aus dem TAP 120 jedochnur zeitweise, genauer gesagt nur in den Phasen erfolgt, in welchenentweder das von der State Machine 121 ausgegebene Signalcapture_dr oder das von der State Machine 121 ausgegebeneSignal shift_dr aktiv ist. Wenn die Bits a, b, c des InstructionRegister 122 die Werte 1, 1, 1 aufweisen, befindet sichder Halbleiter-Chip in der Selektiv-Scan-Test-Betriebsart. In der Selektiv-Scan-Test-Betriebsartkann wie bei der Full-Scan-Test-Betriebsart ein Test des Halbleiter-Chipsnach dem Scan-Verfahren durchgeführt werden.Die Selektiv-Scan-Test-Betriebsart weist jedoch gegenüber derFull-Scan-Test-Betriebsart zwei Besonderheiten auf: – erstenswerden die in die Schieberegister 102 und 103 zuschreibenden Testmuster überden Eingangsanschluß TDIdes Halbleiter-Chips in die Schieberegister 102 und 103 geschrieben,und die aus den Schieberegistern 102 und 103 ausgelesenenDaten überden Ausgangsanschluß TDO desHalbleiter-Chips aus dem Halbleiter-Chip ausgegeben, und – zweitenskann der Scan-Test entweder unter ausschließlicher Verwendung des Schieberegisters 102,oder unter ausschließlicherVerwendung des Schieberegisters 103, oder unter Verwendungvon sowohl dem Schieberegister 102 als auch dem Schieberegister 103 durchgeführt werden.
[0095] Obder Scan-Test unter ausschließlicherVerwendung des Schieberegisters 102, oder unter ausschließlicherVerwendung des Schieberegisters 103, oder unter Verwendungvon sowohl dem Schieberegister 102 als auch dem Schieberegister 103 durchgeführt wird,hängt vomInhalt des Testregisters 125 ab. Genauer gesagt ist esso, – daß der Scan-Testunter ausschließlicherVerwendung des Schieberegisters 102 durchgeführt wird,wenn das den Multiplexer 175 steuernde (erste) Bit desTestregisters 125 aktiv ist, und das den Multiplexer 177 steuernde(zweite) Bit des Testregisters 125 inaktiv ist, – daß der Scan-Testunter ausschließlicherVerwendung des Schieberegisters 103 durchgeführt wird,wenn das den Multiplexer 175 steuernde (erste) Bit desTestregisters 125 inaktiv ist, und das den Multiplexer 177 steuernde(zweite) Bit des Testregisters 125 aktiv ist, und – daß der Scan-Testunter Verwendung von sowohl dem Schieberegister 102 alsauch dem Schieberegister 103 durchgeführt wird, wenn das den Multiplexer 175 steuernde(erste) Bit des Testregisters 125 aktiv ist, und das denMultiplexer 177 steuernde (zweite) Bit des Testregisters 125 ebenfallsaktiv ist,
[0096] Wiedas Testregister 125 mit den die Multiplexer 175 und 177 steuerndenBits beschrieben wird, wurde bereits vorstehend bei der Erläuterungder Testregisterzugriffs-Betriebsart erwähnt.
[0097] Unabhängig davon,welches oder welche Schieberegister mit einem Testmuster zu beschreibensind, wird das Testmuster, genauer gesagt eine das Testmuster repräsentierendeBitfolge überder Eingangsanschluß TDIdes Halbleiter-Chips eingegeben. Die über den Eingangsanschluß TDI eingegebenenDaten durchlaufen den TAP 120 und werden aus diesem unverändert als Datentdi ausgegeben. Die Daten tdi werden an einen der Eingangsanschlüsse desMultiplexers 174 weitergeleitet, und, da das Signal jtag_modein der Selective-Scan-Test-Betriebsart aktiv ist, durch den Multiplexer 174 durchgeschaltet.Die Daten tdi gelangen dadurch an den Eingangsanschluß des Schieberegisters 102 (undan einen der Eingangsanschlüssedes Multiplexers 175).
[0098] Bevormit dem Einschreiben eines Testmusters in das Schieberegister 102 und/oder 103 begonnenwird, werden zunächstdie vorstehend erwähntenEinstellungen im Testregister 125 vorgenommen, durch welchefestgelegt wird, ob der Halbleiter-Chip-Test unter ausschließlicher Verwendung des Schieberegisters 102,oder unter ausschließlicher Verwendungdes Schieberegisters 103, oder unter Verwendung von sowohldem Schieberegister 102 als auch dem Schieberegister 103 durchgeführt werdensoll. Ebenfalls noch vor dem Einschreiben eines Testmusters in dasSchieberegister 102 und/oder 103 muß darüber hinausdafür gesorgtwerden, daß dasSignal scan_en aktiv ist, denn nur dann sind die Flip-Flops derLogik zu den Schieberegistern 102 und 103 verschaltet.Das Signal scan_en ist aktiv, wenn sich die State Machine 121 nichtim Zustand capture_dr befindet. Vorzugsweise wird das Einschreibendes Testmusters in das Schieberegister durchgeführt, wenn sich die State Machine 121 im Zustandshift_dr befindet, denn in diesem Zustand wird vom TAP 120 auchdas als Schiebetakt verwendbare Taktsignal scan_clock ausgegeben.Wenn sich der Halbleiter-Chipin der Selective-Scan-Test-Betriebsart befindet, und sich die State Machine 121 imZustand shift_dr befindet, können dieSchieberegister 102 und/oder 103 mit einem Testmusterbeschrieben werden. Dieser Zustand wird im folgenden als Selective-Scan-Test/Schiebe-Betriebsartbezeichnet.
[0099] Wennsich der Halbleiter-Chip in der Selective-Scan-Test/Schiebe-Betriebsart befindet, undim Testregister 125 eingestellt ist, daß der Halbleiter-Chip-Testunter ausschließlicherVerwendung des Schieberegisters 102 erfolgen soll, werdendie in das Schieberegister 102 zu schreibenden Daten über denEingangsanschluß TDIeingegeben, von dort überden TAP 120 und den Multiplexer 174 zum Schieberegister 102 weitergeleitet,und in diesem gespeichert.
[0100] Wennsich der Halbleiter-Chip in der Selective-Scan-Test/Schiebe-Betriebsart befindet, undim Testregister 125 eingestellt ist, daß der Halbleiter-Chip-Testunter ausschließlicherVerwendung des Schieberegisters 103 erfolgen soll, werdendie in das Schieberegister 103 zu schreibenden Daten über denEingangsanschluß TDIeingegeben, von dort überden TAP 120, den Multiplexer 174, den Multiplexer 175,und den Multiplexer 176 zum Schieberegister 103 weitergeleitet,und in diesem gespeichert.
[0101] Wennsich der Halbleiter-Chip in der Selective-Scan-Test/Schiebe-Betriebsart befindet, undim Testregister 125 eingestellt ist, daß der Halbleiter-Chip-Testunter Verwendung sowohl des Schieberegister 102 als auchdes Schieberegisters 103 erfolgen soll, werden zunächst diein das Schieberegister 103 zu schreibenden Daten und unmittelbarin Anschluß darandie in das Schieberegister 102 zu schreibenden Daten über denEingangsanschluß TDI desHalbleiter-Chips in diesen eingegeben, und von dort über denTAP 120 und den Multiplexer 174 zum Schieberegister 102 weitergeleitet.Das Schieberegister 102 speichert die ihm zugeführten Daten,wobei bei jedem Speichervorgang das in der letzten Speicherzelledes Schieberegisters 102 gespeicherte Bit aus dem Schieberegister 102 hinausgeschobenwird. Die aus dem Schieberegister 102 hinausgeschobenenBits werden überdie Multiplexer 175 und 176 zum Schieberegister 103 weitergeleitet,welches die ihm zugeführtenDaten speichert. Nachdem das letzte der über den Eingangsanschluß TDI des Halbleiter-Chipseingegebenen Daten im Schieberegister 102 gespeichert wurde,sind die zuerst in das Schieberegister 102 geschriebenen,also die fürdas Schieberegister 103 bestimmten Daten komplett aus demSchieberegister 103 hinausgeschoben und im Schieberegister 102 gespeichert,und die zuletzt in das Schieberegister 102 geschriebenen,also die für dasSchieberegister 102 bestimmten Daten im Schieberegister 102 gespeichert.
[0102] Nachdemdas Schieberegister 102 und/oder das Schieberegister 103 mitdem zu verwendenden Testmuster beschrieben wurden, wird der Halbleiter-Chipkurzzeitig in eine Selective-Scan-Test/Capture-Betriebsart versetzt. Diesgeschieht im betrachteten Beispiel dadurch, daß die State Machine 121 desTAP 120 durch die Eingabe entsprechender Daten über denEingangsanschluß TMSdes Halbleiter-Chips in den Zustand capture_dr versetzt wird. Dieshat zur Folge, daß dasSignal scan_en inaktiv wird, und dies wiederum hat zur Folge daß die Schieberegister 102 und 103 aufgelöst werden.Im Zustand capture_dr wird ferner das Taktsignal scan_clock aus demTAP 120 ausgegeben. In diesem Zustand des Halbleiter-Chipsarbeitet die Logik des Halbleiter-Chips einschließlich derFlip-Flops wie in der Normal-Betriebsart. Nur das verwendete Taktsignal (scan_clock)ist ein anderes als in der Normal-Betriebsart (sys_clock). Der Halbleiter-Chipwird im allgemeinen nur kurzzeitig, beispielsweise für einen oderzwei Takte des Taktsignals scan_clock, in der Selective-Scan-Test/Capture-Betriebsart gehalten. Hierbeikönnensich die von den Flip-Flopsgespeicherten Daten verändern.Ob und gegebenenfalls wie sie sich ändern, hängt unter anderem von den Datenab, die zuvor in die Schieberegister 102 und 103 geladenwurden, und vom Aufbau und der Funktion der Logik.
[0103] Anschließend wirdder Halbleiter-Chip wieder in die Selective-Scan-Test/Schiebe-Betriebsart versetzt.Dies geschieht im betrachteten Beispiel dadurch, daß die StateMachine 121 des TAP 120 durch die Eingabe entsprechenderDaten überden Eingangsanschluß TMSdes Halbleiter-Chips wieder in den Zustand shift_dr versetzt wird.In diesem Zustand werden die in den Schieberegistern 102 und 103 gespeichertenDaten ausgele sen und überden Ausgangsanschluß TDOdes Halbleiter-Chips aus diesem ausgegeben.
[0104] Wennsich der Halbleiter-Chip in der Selective-Scan-Test/Schiebe-Betriebsart befindet, undim Testregister 125 eingestellt ist, daß der Halbleiter-Chip-Testunter ausschließlicherVerwendung des Schieberegisters 102 erfolgen soll, werdendie im Schieberegister 102 gespeicherten Daten aus dem Schieberegister 102 hinausgeschobenund überdie Multiplexer 175, 176, 177, und denTAP 120 zum Ausgangsanschluß TDO weitergeleitet.
[0105] Wennsich der Halbleiter-Chip in der Selective-Scan-Test/Schiebe-Betriebsart befindet, undim Testregister 125 eingestellt ist, daß der Halbleiter-Chip-Testunter ausschließlicherVerwendung des Schieberegisters 103 erfolgen soll, werdendie im Schieberegister 103 gespeicherten Daten aus dem Schieberegister 103 hinausgeschobenund überden Multiplexer 177, und den TAP 120 zum Ausgangsanschluß TDO weitergeleitet.
[0106] Wennsich der Halbleiter-Chip in der Selective-Scan-Test/Schiebe-Betriebsart befindet, undim Testregister 125 eingestellt ist, daß der Halbleiter-Chip-Testunter Verwendung sowohl des Schieberegister 102 als auchdes Schieberegisters 103 erfolgen soll, – werdendie im Schieberegister 103 gespeicherten Daten aus demSchieberegister 103 hinausgeschoben und über denMultiplexer 177, und den TAP 120 zum Ausgangsanschluß TDO weitergeleitet,und – werdendie im Schieberegister 102 gespeicherten Daten aus demSchieberegister 102 hinausgeschoben, über die Multiplexer 175 und 176 dem Schieberegister 103 zugeführt, imSchieberegister 103 zwischengespeichert, und anschließend ausdem Schieberegister 103 hinausgeschoben und über den Multiplexer 177,und den TAP 120 zum Ausgangsanschluß TDO weitergeleitet, wobeidas Hinausschieben der im Schieberegister 103 gespeichertenDaten aus dem Schieberegister 103, und die Speicherungder aus dem Schieberegister 102 stammenden Daten im Schieberegistersynchron erfolgen, so daß zuerstdie aus dem Schieberegister 103 stammenden Daten und unmittelbardaran anschließenddie aus dem Schieberegister 102 stammenden Daten aus demHalbleiter-Chip ausgegeben werden.
[0107] Zeitgleichmit dem Auslesen der in den Schieberegister gespeicherten Datenoder danach könnenbereits ein anderes Testmuster repräsentierende Daten in die Schieberegister 102 und/oder 103 geschriebenwerden.
[0108] Dieaus den Schieberegistern 102 und/oder 103 ausgelesenenDaten werden sodann mit vorgegebenen Soll-Daten verglichen. DieSoll-Daten sind diejenigen Daten, die in den Schieberegistern 102 und/oder 103 gespeichertsein müßten, wennder Halbleiter-Chip ordnungsgemäß arbeitet.Anhand des Ergebnisses des Vergleiches zwischen den aus den Schieberegistern 102 und/oder 103 ausgelesenenDaten und den Soll-Daten kann somit ermittelt werden, ob der Halbleiter-Chipordnungsgemäß arbeitet.Stimmen die miteinander verglichenen Daten überein, so kann davon ausgegangenwerden, daß derHalbleiter-Chip fehlerfrei gearbeitet hat. Stimmen die Daten nicht überein,hat der Halbleiter-Chip nicht fehlerfrei gearbeitet.
[0109] Dervorstehend beschriebene Test kann unter Verwendung anderer Testmusterbeliebig oft wiederholt werden.
[0110] Einweiterer Halbleiter-Chip, der unter Verwendung des Scan-Verfahrens getestetwerden kann, ist in den 3 und 4 gezeigtund wird nachfolgend unter Bezugnahme darauf beschrieben.
[0111] Derin der 3 gezeigte Halbleiter-Chip enthält einenersten Multiplexer 271, einen zweiten Multiplexer 272,einen dritten Multiplexer 273, einen vierten Multiplexer 278,einen fünftenMultiplexer 279, einen im folgenden als TAP bezeichnetenJTAG Test Access Port 220, ein erstes Sperrelement 291, einzweites Sperrelement 292, und eine Vielzahl von Ein- und/oder Ausgabeanschlüssen, vonwelchen in der 3 jedoch nur die Anschlüsse TCK,TDI, TMS, TDO und 281 bis 285 gezeigt sind.
[0112] Inder 3 sind ferner zwei zu einem Schieberegister verschalteteRegister 225-1 und 225-2 gezeigt. Dieses Schieberegisterist Bestandteil des TAP 220, genauer gesagt ein Testregister 225 desTAP 220 (siehe 4), und ist in der 3 nurder Anschaulichkeit halber außerhalbdes TAP 220 dargestellt. Das Schieberegister 225 bekommtDaten tdi zugeführtund gibt Daten tdo aus. Die das Schieberegister bildenden Register 225-1 und 225-2 sindjeweils zur Speicherung eines Bits ausgelegt. Dem Testregister 225 istkein Schattenregister zugeordnet.
[0113] DerHalbleiter-Chip enthältferner eine in der 3 nicht gezeigte Logik.
[0114] DerHalbleiter-Chip kann darüberhinaus beliebige weitere Komponenten enthalten, beispielsweise eineoder mehrere CPUs, einen oder mehrere Speicher, etc.
[0115] Diein der 3 nicht gezeigte Logik entspricht der Logik 401 desin der 5 gezeigten Halbleiter-Chips. Die Logik enthält eineVielzahl von logischen Gattern und Speicherelementen. Die Speicherelementewerden im betrachteten Beispiel durch Flip-Flops gebildet, die sichwie bei dem in 5 gezeigten Halbleiter-Chipzum Testen des Halbleiter-Chips so in Reihe schalten lassen, daß sie sich wieein Schieberegister verhalten. Wie dies im einzelnen geschieht,ist bekannt und bedarf keiner näheren Erläuterung.Die 3 zeigt den Zustand des Halbleiter-Chips, in welchendie Flip-Flops der Logik zu zwei Schieberegistern, nämlich einemersten Schieberegister 202 und einem zweiten Schieberegister 203 verschaltetsind. Die Schieberegister 202 und 203 entsprechenden Schieberegistern 402 und 403 des in der 5 gezeigtenherkömmlichenHalbleiter-Chips.
[0116] Daserste Schieberegister 202 ist eingangsseitig mit dem Ausgangsanschluß des Multiplexers 278 verbunden.Der Multiplexer 278 weist zwei Eingangsanschlüsse auf,von welchen dem einem das im Register 225-1 gespeicherteBit zugeführtwird, und von welchen der andere mit dem Eingangsanschluß 281 desHalbleiter-Chips verbunden ist. Der Multiplexer 278 wirddurch ein vom TAP 220 ausgegebenes Signal jtag_mode gesteuert.Bei aktivem Signal jtag_mode gibt der Multiplexer 278 dasim Register 225-1 gespeicherte Bit aus, und bei inaktivem Signaljtag_mode gibt der Multiplexer 278 die über den Eingangsanschluß 281 desHalbleiter-Chips eingegebenen Daten aus.
[0117] Daserste Schieberegister 202 ist ausgangsseitig mit einemEingangsanschluß desRegisters 225-1 und einem Eingangsanschluß des Multiplexers 271 verbunden.
[0118] Durchden Multiplexer 271 werden wahlweise die aus dem Schieberegister 202 ausgegebenen Datenoder aus der nicht gezeigten Logik ausgegebene Daten weitergeleitetDer Multiplexer 271 wird durch ein vom TAP 220 ausgegebenesSignal scan_en gesteuert. Bei aktivem Signal scan_en gibt der Multiplexer 271 dieihm vom Schieberegister 202 zugeführten Daten aus, und bei inaktivemSignal scan_en gibt der Multiplexer 271 die ihm von derLogik zugeführtenDaten aus. Die aus dem Multiplexer 271 ausgegebenen Datenwerden überdas Sperrelement 291 an den Ausgangsanschluß 282 desHalbleiter-Chips weitergeleitet.
[0119] DasSperrelement 291 wird durch das vom TAP 220 ausgegebeneSignal jtag_mode gesteuert. Durch das Sperrelement 291 kann dieWeiterleitung des aus dem Multiplexer 271 ausgegebenenSignals zum Ausgangsanschluß 282 verhindertwerden. Wie sich das Sperrelement 291 verhält, d.h.ob es das ihm zugeführteSignal zum Ausgangsanschluß 282 weiterleitetoder nicht, hängtvom Pegel des Steuersignals jtag_mode ab. Bei aktivem Steuersignal jtag_modewird die Weiterleitung der dem Sperrelement 291 zugeführten Datenzum Ausgangsanschluß 282 unterbunden,und bei inaktivem Steuersignal jtag_mode werden die dem Sperrelement 291 zugeführten Datenzum Ausgangsanschluß 282 weitergeleitet.Durch das Sperrelement 291 kann verhindert werden, daß wärend desScan-Tests am Ausgangsanschluß 282 desHalbleiter-Chips Ausgangsmuster entstehen, die zu Beschädigungender Folgeschaltung führen.
[0120] Daszweite Schieberegister 203 ist eingangsseitig mit dem Ausgangsanschluß des Multiplexers 279 verbunden.Der Multiplexer 279 weist zwei Eingangsanschlüsse auf,von welchen dem einem das im Register 225-2 gespeicherteBit zugeführt wird,und von welchen der andere mit dem Eingangsanschluß 283 desHalbleiter-Chips verbunden ist. Der Multiplexer 279 wirddurch das vom TAP 220 ausgegebene Signal jtag_mode gesteuert.Bei aktivem Signal jtag_mode gibt der Multiplexer 279 dasim Register 225-2 gespeicherte Bit aus, und bei inaktivemSignal jtag_mode gibt der Multiplexer 279 die über denEingangsanschluß 283 desHalbleiter-Chips eingegebenen Daten aus.
[0121] Daszweite Schieberegister 203 ist ausgangsseitig mit einemEingangsanschluß desRegisters 225-2 und einem Eingangsanschluß des Multiplexers 272 verbunden.
[0122] Durchden Multiplexer 272 werden wahlweise die aus dem Schieberegister 203 ausgegebenen Datenoder aus der nicht gezeigten Logik ausgegebene Daten weitergeleitetDer Multiplexer 272 wird durch das vom TAP 220 ausgegebeneSignal scan_en gesteuert. Bei aktivem Signal scan_en gibt der Multiplexer 272 dieihm vom Schieberegister 203 zugeführten Daten aus, und bei inaktivemSignal scan_en gibt der Multiplexer 272 die ihm von derLogik zugeführtenDaten aus. Die aus dem Multiplexer 272 ausgegebenen Datenwerden überdas Sperrelement 292 an den Ausgangsanschluß 284 desHalbleiter-Chips weitergeleitet.
[0123] DasSperrelement 292 wird durch das vom TAP 220 ausgegebeneSignal jtag_mode gesteuert. Durch das Sperrelement 291 kanndie Weiterleitung des aus dem Multiplexer 272 ausgegebenenSignals zum Ausgangsanschluß 284 verhindertwerden. Wie sich das Sperrelement 292 verhält, d.h.ob es das ihm zugeführteSignal zum Ausgangsanschluß 284 weiterleitetoder nicht, hängtvom Pegel des Steuersignals jtag_mode ab. Bei aktivem Steuersignal jtag_modewird die Weiterleitung der dem Sperrelement 292 zugeführten Datenzum Ausgangsanschluß 284 unterbunden,und bei inaktivem Steuersignal jtag_mode werden die dem Sperrelement 292 zugeführten Datenzum Ausgangsanschluß 284 weitergeleitet.Durch das Sperrelement 292 kann verhindert werden, daß wärend desScan-Tests am Ausgangsanschluß 284 desHalbleiter-Chips Ausgangsmuster entstehen, die zu Beschädigungender Folgeschaltung führen.
[0124] DerMultiplexer 273 weist zwei Eingangsanschlüsse auf,wobei an den ersten Eingangsanschluß ein dem Halbleiter-Chip über denEingangsanschluß 285 zugeführtes erstesTaktsignal sys_clock angelegt wird, und wobei an den zweiten Eingangsanschluß ein ausdem TAP 220 ausgegebenes, als zweites Taktsignal verwendetesSignal scan_clock angelegt wird. Dabei ist das erste Taktsignal sys_clockdas Taktsignal, mit welchem der Halbleiter-Chip während desnormalen Betriebes zu takten ist, und ist das zweite Taktsignalscan_clock das Taktsignal, mit welchem der Halbleiter-Chip während des Testensdes Halbleiter-Chips zu takten ist. Der Multiplexer 273 wirddurch das vom TAP 220 ausgegebene Signal scan_mode gesteuert.Bei aktivem Signal scan_mode wird das vom TAP 220 ausgegebene Taktsignalscan_clock durchgeschaltet, und bei inaktivem Signal scan_mode wirddas überden Eingangsanschluß 285 zugeführte Taktsignalsys_clock durchgeschaltet. Das aus dem Multiplexer 273 ausgegebeneTaktsignal ist das Taktsignal, mit welchem die taktgesteuerten Komponentendes Halbleiter-Chipsarbeiten.
[0125] DerTAP 220 ist ein JTAG Test Access Port gemäß IEEE 1149.1.Der JTAG Test Access Port gemäß IEEE 1149.1wurde, wie vorstehend bereits erwähnt wurde, ursprünglich für den sogenannten Boundary-Scan-Testentwickelt und standardisiert. Der TAP 220 ermöglicht esdarüberhinaus, daß auch dasTesten des Halbleiter-Chips nach dem Full-Scan-Test-Verfahren odereinem späternoch nähererläutertenSeriell-Scan-Test-Verfahren überden TAP 120 gesteuert wird, und daß die beim Testen des Halbleiter-Chipsgebildeten Schieberegister 202 und 203 über denEingangsanschluß TDIdes Halbleiter-Chips und den TAP 220 beschrieben und ausgelesenwerden können.
[0126] DerTAP 220 ist mit den Eingangsanschlüssen TCK, TDI und TMS, undmit dem Ausgangsanschluß TDOdes Halbleiter-Chips verbunden. Die Anschlüsse des Halbleiter-Chips, mitwelchen der TAP 220 verbunden ist, weisen die Bezeichnungenauf, die auch im erwähntenStandard IEEE 1149.1 verwendet werden.
[0127] DerTAP 220 gibt die vorstehend bereits erwähnten Signale scan_clock, scan_en,scan_mode und jtag_mode, sowie die Daten tdi aus, und bekommt (vomRegister 225-2) die Daten tdo zugeführt.
[0128] DerAufbau des TAP 220 ist in 4 veranschaulicht.Der TAP 220 enthälteine State Machine 221, ein Instruction Register 222,das bereits erwähnteTestregister 225, UND-Gatter 231 bis 234, ODER-Gatter 241 und 243,ein Sperrelement 251, Multiplexer 261 bis 263,und ein Flip-Flop 265.
[0129] DieState Machine 221 ist mit den Eingangsanschlüssen TMSund TCK des Halbleiter-Chips verbunden, und bekommt über denEingangsanschluß TMSseriell Steuer-Bits, und überden Eingangsanschluß TCKein Taktsignal zugeführt.Die State Machine 221 kann die selben 16 verschiedenenZuständeannehmen wie es bei der State Machine 421 des in der 6 veranschaulichtenherkömmlichenTAP 420 der Fall ist. In welchem Zustand sich die State Machine 221 geradebefindet, hängtvon der der State Machine 221 über den Eingangsanschluß TMS zugeführten Steuer-Bit-Folgeab. Das State Diagram für dieState Machine 221 entspricht dem in 7 gezeigtenState Diagram fürdie State Machine 421.
[0130] DieState Machine 221 gibt Signale update_ir, shift_ir, capture_dr,shift_dr, update_dr, und *_ir aus, wobei – das Signalupdate_ir aktiv ist, wenn sich die State Machine im Zustand update_irbefindet, – dasSignal shift_ir aktiv ist, wenn sich die State Machine im Zustandshift_ir befindet, – dasSignal capture_dr aktiv ist, wenn sich die State Machine im Zustandcapture_dr befindet, – dasSignal shift_dr aktiv ist, wenn sich die State Machine im Zustandshift_dr befindet, und – dasSignal update_dr aktiv ist, wenn sich die State Machine im Zustandupdate_dr befindet, und – dasSignal *_ir aktiv ist, wenn sich die State Machine in einem derZuständebefindet, deren Bezeichnung mit _ir endet.
[0131] DasInstruction Register 222 ist ein Schieberegister, das mehrere,jeweils zur Speicherung von 1 Bit ausgelegte Register umfaßt. DieAnzahl der Register beträgtim betrachteten Beispiel zwei, kann aber auch beliebig viel größer sein.Dem Instruction Register 222 ist ein in der 4 nichtgezeigtes Schattenregister gleicher Größe zugeordnet.
[0132] DasInstruction Register 222 ist mit den Eingangsanschlüssen TDIund TCK des Halbleiter-Chips verbunden, und bekommt über denEingangsanschluß TDIseriell Instruktions-Bits, und über denEingangsanschluß TCKein Taktsignal zugeführt.
[0133] DasInstruction Register 222 wird durch die von der State Machine 221 ausgegebenenSignale update_ir und shift_ir gesteuert. Durch das Signal update_irwird die parallele Übernahmeder im Instruction Register 222 gespeicherten Daten indas Schattenregister veranlaßt,und durch das Signal shift_ir wird eine bitweise serielle Übernahmevon Daten in das Instruction Register 222 mit gleichzeitigerSchiebeoperation veranlaßt.
[0134] Durchdas Signal update_ir wird bestimmt, ob ein dem Instruction Register 222 über denEingangsanschluß TDIzugeführtesInstruktions-Bit in das Instruction Register übernommen wird, und durch dasSignal shift_ir wird veranlaßt,ob der Inhalt des Instruction Register 222 geschoben wird.
[0135] Vonden im Instruction Register 222 gespeicherten Bits wirdder Wert eines a-ten Bits als das vorstehend bereits erwähnte Signaljtag_mode verwendet und aus dem TAP 220 ausgegeben. Dasa-te Bit ist im betrachteten Beispiel das erste Bit, kann aber prinzipiellauch ein beliebiges anderes Bit des Instruction Register 222 sein.Das a-te Bit wird zusätzlichzur Steuerung der Multiplexer 262 und 263 verwendetund dem ODER-Gatter 241 sowieden UND-Gattern 231 und 232 zugeführt.
[0136] DemODER-Gatter 241 wird ferner der Wert eines b-ten Bits derim Instruction Register 222 gespeicherten Bits zugeführt. Dasb-te Bit ist im betrachteten Beispiel das zweite Bit, kann aberprinzipiell auch ein beliebiges anderes Bit des Instruction Register 222 sein.Das ODER-Gatter 241 unterzieht die ihm zugeführten Signaleeiner ODER-Verknüpfung.Das Ergebnis dieser Operation wird als das vorstehend bereits erwähnte Signalscan_mode verwendet und aus dem TAP 120 ausgegeben.
[0137] Dasb-te Bit der im Instruction Register 222 gespeichertenBits wird ferner dem UND-Gatter 233 und dem Multiplexer 263 zugeführt.
[0138] DemUND-Gatter 233 wird ferner das aktuell über den Eingangsanschluß TDI zugeführte Instruktions-Bitzugeführt.Das UND-Gatter 233 führt eine UND-Verknüpfung derihm zugeführtenSignale aus. Das Ergebnis dieser UND-Verknüpfung wird dem Multiplexer 262 zugeführt.
[0139] DemMultiplexer 262 wird zusätzlich das Ausgangssignal desFlip-Flops 265 zugeführt.Der Multiplexer 162 wird, wie vorstehend bereits erwähnt wurde,durch das a-te Bit des Instruction Register 222 gesteuert.Bei aktivem a-ten Bit wird das Ausgangssignal des Flip-Flops 265 durchgeschaltet,und bei inaktivem a-ten Bit wird das vom UND-Gatter 233 ausgegebeneSignal durchgeschaltet. Das vom Multiplexer 262 durchgeschalteteSignal wird als das vorstehend bereits erwähnte Signal scan_en verwendet undaus dem TAP 220 ausgegeben.
[0140] DerEingangsanschluß desFlip-Flops 265 ist mit dem Ausgangsanschluß des UND-Gatters 234 verbunden,und wird durch das dem TAP 220 über den Eingangsanschluß TCK desHalbleiter-ChipszugeführteTaktsignal getaktet.
[0141] DemUND-Gatter 234 werden als Eingangssignale das Ausgangssignaldes ODER-Gatters 243 sowie das invertierte Ausgangssignalcapture_dr der State Machine 221 zugeführt. Das UND-Gatter 234 unterziehtdie ihm zugeführtenSignale einer logischen UND-Verknüpfung und gibt das Ergebnisdieser UND-Verknüpfungan des Flip-Flop 265 aus.
[0142] DemODER-Gatter 243 werden als Eingangssignale das Ausgangssignaldes Flip-Flops 265 sowie das Ausgangssignal shift dr derState Machine 221 zugeführt.Das ODER-Gatter 243 unterzieht die ihm zugeführten Signaleeiner logischen ODER-Verknüpfungund gibt das Ergebnis dieser ODER-Verknüpfung an des UND-Gatter 234 aus.
[0143] DemMultiplexer 263 wird zusätzlich das Ausgangssignal up-date_dr der StateMachine 221 zugeführt.Der Multiplexer 263 wird, wie vorstehend bereits erwähnt wurde,durch das a-te Bit des Instruction Register 222 gesteuert.Bei aktivem a-ten Bit wird das Signal update_dr durchgeschaltet,und bei inaktivem a-ten Bit wird das b-te Bit des Instruction Register 222 durchgeschaltet.Das vom Multiplexer 263 ausgegebene Signal wird als Steuersignalfür dasSperrelement 251 verwendet.
[0144] DasSperrelement 151 ist eingangsseitig mit dem Eingangsanschluß TCK desHalbleiter-Chips verbunden; das Ausgangssignal des Sperrelementes istdas vorstehend bereits erwähnteAusgangssignal scan_clock des TAP 220. Das Ausgangssignal scan_clockentspricht dem überden Eingangsanschluß TCKeingegebenen Taktsignal. D.h., das über den Eingangsanschluß TCK eingegebeneTaktsignal wird durch das Sperrelement 251 nur durchgeleitet. Durchdas Sperrelement 251 kann die Durchleitung aber gesperrtwerden, wobei es vom Ausgangssignal des Multiplexers 163 abhängt, wiesich das Sperrelement 251 verhält.
[0145] Wievorstehend bereits erwähntwurde, wird von den im Instruction Register 222 gespeicherten Bitsder Wert des a-ten Bits auch dem UND-Gatter 231 und demUND-Gatter 232 zugeführt.
[0146] DemUND-Gatter 231 wird zusätzlichdas von der State Machine 221 ausgegebene Signal shift_drzugeführt.Das UND-Gatter 231 führteine UND-Verknüpfungder ihm zugeführtenSignale durch und gibt das Ergebnis dieser Verknüpfung an das Testregister 225 aus.
[0147] DemUND-Gatter 232 wird zusätzlichdas von der State Machine 221 ausgegebene Signal capture_drzugeführt.Das UND-Gatter 232 führteine UND-Verknüpfungder ihm zugeführtenSignale durch und gibt das Ergebnis dieser Verknüpfung an das Testregister 225 aus.
[0148] DasTestregister 225 ist eines der in IEEE 1149.1 erwähnten "design specific registers". Es handelt sichum ein Schieberegister, das mehrere, jeweils zur Speicherung von1 Bit ausgelegte Register umfaßt.Die Anzahl der Register entspricht der Anzahl der Schieberegister,zu welchen die Flip-Flops der Logik während des Testens des Halbleiter-Chips verschaltetsind. Im betrachteten Beispiel gibt es zwei solche Schieberegister,nämlichdie Schieberegister 202 und 203, so daß das Testregister 225 alsoein zwei Register umfassendes Testregister ist. Die Register desTestregisters 225 sind auch parallel und ohne Schiebeoperationbeschreibbar und auslesbar.
[0149] DasTestregister 225 ist mit den Eingangsanschlüssen TDIund TCK des Halbleiter-Chips verbunden, und bekommt über denEingangsanschluß TDI seriellInstruktions-Bits, und überden Eingangsanschluß TCKein Taktsignal zugeführt.
[0150] DasTestregister 225 wird durch die von den UND-Gattern 231 und 232 ausgegebenenSignale gesteuert.
[0151] Dieaus dem Instruction Register 222 hinaus geschobenen Bitswerden einem der Eingangsanschlüssedes Multiplexers 261 zugeführt. Der Multiplexer 261 weistim betrachteten Beispiel zwei Eingangsanschlüsse auf, wobei dem zweitenEingangsanschluß diedem TAP 220 zugeführtenDaten tdo zugeführtwerden. Der Multiplexer 261 wird durch das von der StateMachine 221 ausgegebene Signal *_ir gesteuert. Bei aktivemSignal *_ir werden die aus dem Instruction Register 222 hinausgeschobenen Bitsdurchgeschaltet, und bei inaktivem Signal *_ir werden die Datentdo durchgeschaltet. Die aus dem Multiplexer 261 ausgegebenenDaten werden über denAusgangsanschluß TDOdes Halbleiter-Chips aus diesem ausgegeben. Der Multiplexer 261 kann zusätzlich nichtgezeigte weitere Ein gangsanschlüsseaufweisen, die mit ebenfalls nicht gezeigten weiteren Registerndes TAP 220 verbunden sind.
[0152] Darüber hinauswerden die dem TAP 220 überden Eingangsanschluß TDIdes Halbleiter-Chips zugeführtenDaten als die Daten tdi verwendet und aus dem TAP 220 ausgegeben.
[0153] DerVollständigkeithalber sei angemerkt, daß,obgleich dies in der 4 nicht dargestellt ist, sämtlichetaktgesteuerten Komponenten des TAP 220 durch das dem Halbleiter-Chip über denEingangsanschluß TCKzugeführteTaktsignal scan_clock getaktet werden.
[0154] DerHalbleiter-Chip kann überden TAP 220 in verschiedene Betriebsarten versetzt werden.In welcher Betriebsart sich der Halbleiter-Chip befindet, wird dabeiunter anderem durch die Bits a und b des Instruction Register 222 bestimmt.Das Instruction Register 222 kann im Zustand shift_ir derState Machine 221 überden Eingangsanschluß TDIdes Halbleiter-Chipsbeschrieben werden. Das Versetzen der State Machine in den Zustandshift_ir oder in einen sonstigen gewünschten Zustand erfolgt durchdie Eingabe einer entsprechenden Bitfolge über den Eingangsanschluß TMS desHalbleiter-Chips. Wie diese Bitfolge auszusehen hat, ist dem in 7 gezeigten StateDiagram entnehmbar.
[0155] Wenndie Bits a, b des Instruction Register 222 die Werte 0,0 aufweisen, sind die aus dem TAP 120 ausgegebenen Signalescan_en, scan_mode, und jtag_mode inaktiv, und wird der Halbleiter-Chip unterVerwendung des Taktsignals sys_clock getaktet. In diesem Zustandbefindet sich der Halbleiter-Chip in der Normal-Betriebsart, wobeidie Normal-Betriebsart diejenige Betriebsart ist, in welcher sichder Halbleiter-Chip im normalen Betrieb befindet und bestimmungsgemäß arbeitet.In der Normal-Betriebsart verhältsich der Halbleiter-Chip wie der in den 5 und 6 gezeigteherkömmlicheHalbleiter-Chip,wenn sich dieser in der Normal-Betriebsart befindet.
[0156] Vorzugsweiseist es so, daß dieBits a, b des Instruction Register 222 nach dem Rücksetzendes Halbleiter-Chips die Werte 0, 0 aufweisen. Dadurch befindetsich der Halbleiter-Chipnach dem Rücksetzendesselben automatisch in der Normal-Betriebsart.
[0157] Wenndie Bits a, b des Instruction Register 222 die Werte 0,1 aufweisen, ist das aus dem TAP 220 ausgegebene Signaljtag_mode inaktiv, ist das aus dem TAP 220 ausgegebeneSignal scan_mode aktiv, ist das aus dem TAP 220 ausgegebeneSignal scan_en entweder aktiv oder inaktiv, und wird der Halbleiter-Chip unter Verwendungdes Taktsignals scan_clock getaktet. In diesem Zustand befindetsich der Halbleiter-Chip in der Full-Scan-Test-Betriebsart, wobei die Full-Scan-Test-Betriebsartdiejenige Betriebsart ist, in welcher der Halbleiter-Chip nach dem Full-Scan-Test-Verfahrengetestet werden kann. Das Testen des Halbleiter-Chips nach dem Full-Scan-Test-Verfahrenerfolgt dabei exakt so wie es bei dem in den 5 und 6 gezeigtenherkömmlichenHalbleiter-Chip der Fall ist. D.h. der TAP 220 wird durchdie Eingabe entsprechender Daten über den Eingangsanschluß TDI zunächst ineinen Zustand versetzt, in welchem das vom TAP 220 ausgegebeneSignal scan_en den Wert aufweist, durch welchen die Flip-Flops derLogik zu den Schieberegistern 202 und 203 verschaltetwerden. In diesem Zustand befindet sich der Halbleiter-Chip in der Full-Scan-Test/Schiebe-Betriebsart.Die Full-Scan-Test/Schiebe-Betriebsart des in den 1 und 2 gezeigtenHalbleiter-Chipsentspricht der Full-Scan-Test/Schiebe-Betriebsart des in den 5 und 6 gezeigtenherkömmlichenHalbleiter-Chips.Anschließendwerden die Schieberegister 202 und 203 über dieEingangsanschlüsse 181 und 183 desHalbleiter-Chips bitweise seriell mit ein Testmuster repräsentierendenDaten beschrieben. Nachdem dies geschehen ist, wird der Halbleiter-Chip über denEingangsanschluß TDIdes Halbleiter-Chips kurzzeitig, beispielsweise für einenoder zwei Takte des Taktsignals scan_clock, in die Full-Scan-Test/Capture-Betriebsartversetzt. Das hierfür über denEingangsanschluß TDIeinzuge bende Signal ein Signal, durch welches eine Invertierung desaus dem TAP 220 ausgegebenen Signals scan_en bewirkt wird,also ein Signal, das komplementärzu dem währendder Full-Scan-Test/Schiebe-Betriebsarteingegebenen Signal ist. Die Full-Scan-Test/Capture-Betriebsartdes in den 1 und 2 gezeigtenHalbleiter-Chips entspricht der Full-Scan-Test/Capture-Betriebsart des in den 5 und 6 gezeigtenherkömmlichenHalbleiter-Chips. D.h., in dieser Betriebsart sind die Schieberegister 202 und 203 aufgelöst, unddie Logik einschließlichder Flip-Flops arbeitet wie in der Normal-Betriebsart. Nur das Taktsignal(scan_clock) ist ein anderes als in der Normal-Betriebsart (sys_clock).In der Full-Scan-Test/Capture-Betriebsartkönnensich die von den Flip-Flops gespeicherten Daten verändern. Obund gegebenenfalls wie sie sich ändern,hängt unteranderem von den Daten ab, die zuvor in die Schieberegister 202 und 203 geladen wurden,und vom Aufbau und der Funktion der Logik. Danach wird der Halbleiter-Chip über denEingangsanschluß TDIwieder in die Full-Scan-Test/Schiebe-Betriebsartversetzt. In diesem Zustand werden die in den Schieberegistern 202 und 203 gespeichertenDaten überdie Ausgangsanschlüsse 282 und 284 desHalbleiter-Chipsausgelesen. Gleichzeitig oder danach können bereits ein anderes Testmuster repräsentierendeDaten in die Schieberegister 202 und 203 geschriebenwerden. Die aus den Schieberegistern 202 und 203 ausgelesenenDaten werden sodann mit vorgegebenen Soll-Daten verglichen. Die Soll-Datensind diejenigen Daten, die in den Schieberegistern 202 und 203 gespeichertsein müßten, wennder Halbleiter-Chip ordnungsgemäß arbeitet. Anhanddes Ergebnisses des Vergleiches zwischen den aus den Schieberegistern 202 und 203 ausgelesenenDaten und den Soll-Datenkann somit ermittelt werden, ob der Halbleiter-Chip ordnungsgemäß arbeitet.Stimmen die miteinander verglichenen Daten überein, so kann davon ausgegangenwerden, daß derHalbleiter-Chip fehlerfrei gearbeitet hat. Stimmen die Daten nicht überein,hat der Halbleiter-Chip nicht fehlerfrei gearbeitet. Der vorstehendbeschriebene Test kann unter Verwendung anderer Testmuster beliebigoft wiederholt werden.
[0158] Wenndie Bits a, b des Instruction Register 122 die Werte 1,1 aufweisen, sind die aus dem TAP 220 ausgegebenen Signalescan_mode und jtag_mode aktiv, ist das aus dem TAP 120 ausgegebeneSignal scan_en entweder aktiv oder inaktiv, und wird der Halbleiter-Chipunter Verwendung des Taktsignals scan_clock getaktet, wobei dieAusgabe des Taktsignals scan_clock aus dem TAP 220 jedochnur zeitweise, genauer gesagt nur in den Phasen erfolgt, in welchendas von der State Machine 221 ausgegebene Signal update_draktiv ist. Wenn die Bits a, b des Instruction Register 122 dieWerte 1, 1 aufweisen, befindet sich der Halbleiter-Chip in der Seriell-Scan-Test-Betriebsart.In der Seriell-Scan-Test-Betriebsart kann wie bei der Full-Scan-Test-Betriebsartein Test des Halbleiter-Chips nach dem Scan-Verfahren durchgeführt werden.Die Seriell-Scan-Test-Betriebsart weist jedoch gegenüber derFull-Scan-Test-Betriebsart die Besonderheiten auf, daß die indie Schieberegister 202 und 203 zu schreibendenTestmuster überden Eingangsanschluß TDIdes Halbleiter-Chips und das Testregister 225 in die Schieberegister 202 und 203 geschriebenwerden, und daß dieaus den Schieberegistern 202 und 203 hinaus geschobenenDaten überdas Testregister 225 und den Ausgangsanschluß TDO desHalbleiter-Chips aus dem Halbleiter-Chip ausgegeben werden.
[0159] ZumEinschreiben von Testmustern in die Schieberegister 202 und 203 werdendie Testmuster, genauer gesagt eine die Testmuster repräsentierendeBitfolge bitweise seriell überder Eingangsanschluß TDIdes Halbleiter-Chips eingegeben und im Testregister 225 desTAP 220 gespeichert.
[0160] Bereitsbevor mit dem Einschreiben der Testmuster in das Testregister 225 begonnenwird, spätestensaber vor dem im Anschluß daranerfolgenden Transfer der im Testregister 225 gespeichertenDaten in die Schieberegister 202 und 203, muß auch bei demin 3 und 4 gezeigten Halbleiter-Chip dafür gesorgtwerden, daß dasSignal scan_en aktiv ist, denn nur dann sind die Flip-Flops derLogik zu den Schieberegistern 202 und 203 verschaltet.Das Signal scan_en ist aktiv, wenn – entwedersich die State Machine 221 im Zustand shift_dr befindet,oder das Ausgangssignal des Flip-Flops 265 gleich "1" ist, und wenn gleichzeitig – sichdie State Machine 221 nicht im Zustand capture_dr befindet.
[0161] D.h.,das Signal scan_en wird durch Versetzen der State Machine 221 inden Zustand shift_dr aktiviert, und durch Versetzen der State Machine 221 inden Zustand capture_dr deaktiviert.
[0162] Imbetrachteten Beispiel werden die in das Testregister 225 zuschreibenden Daten im Zustand shift_dr der State Machine 221 über denEingangsanschluß TDIdes Halbleiter-Chips eingegeben. In diesem Zustand ist das Signalscan_en automatisch bereits aktiv, während das Testregister 225 mitden Testmustern oder einem Teil derselben beschrieben wird.
[0163] Imbetrachteten Beispiel wird zunächstnur ein Teil der Testmuster in das Testregister 225 beschrieben.Dies ist deshalb der Fall, weil die Schieberegister 202 und 203 imbetrachteten Beispiel jeweils zur Speicherung von zwei Bits, alsozur Speicherung von insgesamt 4 Bits ausgelegt sind, im Testregister 225 abernur zwei Bits gespeichert werden können. Genauer gesagt ist esso, daß über denEingangsanschluß TDIdes Halbleiter-Chips zunächstdas niederwertige Bit des fürdas Schieberegister 203 bestimmten Testmusters eingegebenwird, und unmittelbar im Anschluß daran das niederwertige Bitdes fürdas Schieberegister 202 bestimmten Testmusters eingegebenwird. Danach ist im Register 225-2 des Testregisters 225 dasniederwertige Bit des fürdas Schieberegister 203 bestimmten Testmusters gespeichert,und im Register 225-1 des Testregi sters 225 dasniederwertige Bit des fürdas Schieberegister 202 bestimmten Testmusters gespeichert.
[0164] Anschließend werdendie im Testregister 225 gespeicherten Bits in die Schieberegister 202 und 203 transferiert.Hierzu wird die State Machine 221 durch die Eingabe einerentsprechenden Bitfolge überden Eingangsanschluß TMSin den Zustand update_dr versetzt. Dies hat zur Folge, daß das Taktsignalscan_clock aus dem TAP 220 ausgegeben wird und das im Register 225-1 gespeicherteBit über denMultiplexer 278 dem Schieberegister 202 zugeführt undin diesem gespeichert wird, und gleichzeitig das im Register 225-2 gespeicherteBit überden Multiplexer 278 dem Schieberegister 203 zugeführt und indiesem gespeichert wird.
[0165] Danachwird die State Machine 221 durch die Eingabe einer entsprechendenBitfolge überden Eingangsanschluß TMSdes Halbleiter-Chips wieder in den Zustand shift_dr versetzt, und über denEingangsanschluß TDIdes Halbleiter-Chips die höherwertigenBits der Testmuster in das Testregister geschrieben. Genauer gesagtwird nach dem Versetzen der State Machine 221 in den Zustandshift_dr über denEingangsanschluß TDIdes Halbleiter-Chips zunächstdas höherwertigeBit des fürdas Schieberegister 203 bestimmten Testmusters eingegeben,und unmittelbar im Anschluß darandas höherwertigeBit des fürdas Schieberegister 202 bestimmten Testmusters eingegeben.Danach ist im Register 225-2 des Testregisters 225 dashöherwertigeBit des für dasSchieberegister 203 bestimmten Testmusters gespeichert,und im Register 225-1 des Testregisters 225 dashöherwertigeBit des fürdas Schieberegister 202 bestimmten Testmusters gespeichert.
[0166] Anschließend werdendie im Testregister 225 gespeicherten Bits in die Schieberegister 202 und 203 transferiert.Hierzu wird die State Machine 221 wieder durch die Eingabeeiner entsprechenden Bitfolge überden Eingangsanschluß TMSin den Zustand update_dr versetzt. Dies hat zur Folge, daß das Takt signalscan_clock aus dem TAP 220 ausgegeben wird und das im Register 225-1 gespeicherte Bit über denMultiplexer 278 dem Schieberegister 202 zugeführt undunter gleichzeitiger Durchführung einerSchiebeoperation in diesem gespeichert wird, und gleichzeitig dasim Register 225-2 gespeicherte Bit über den Multiplexer 278 demSchieberegister 203 zugeführt und unter gleichzeitigerDurchführung einerSchiebeoperation in diesem gespeichert wird.
[0167] Somitsind nun im Schieberegister 202 das höherwertige und das niederwertigeBit des fürdas Schieberegister 202 bestimmten Testmusters gespeichert,und im Schieberegister 203 das höherwertige und das niederwertigeBit des fürdas Schieberegister 203 bestimmten Testmusters gespeichert.
[0168] Wenndie Schieberegister 202 und 203 mehr als zweiBits umfassen würden,könntenauch die weiteren Bits durch Wiederholung der vorstehend beschriebenenVorgängewie erläutertin die Schieberegister 202 und 203 geschriebenwerden.
[0169] Esdürfteeinleuchten und bedarf keiner näherenErläuterung,daß dieSchieberegister 202 und 203 auch dann auf dievorstehend beschriebene Art und Weise mit den für sie bestimmten Testmustern beschriebenwerden können,wenn die Schieberegister 202 und 203 unterschiedlichlang sind.
[0170] Nachdemdie Schieberegister 202 und 203 mit den zu verwendendenTestmustern beschrieben wurden, wird der Halbleiter-Chip kurzzeitigin eine Seriell-Scan-Test/Capture-Betriebsart versetzt. Dies geschiehtim betrachteten Beispiel dadurch, daß die State Machine 221 desTAP 220 durch die Eingabe entsprechender Daten über denEingangsanschluß TMSdes Halbleiter-Chipsin den Zustand capture_dr versetzt wird. Dies hat zur Folge, daß das Signal scan_eninaktiv wird, und dies wiederum hat zur Folge daß die Schieberegister 202 und 203 aufgelöst werden.Anschließendwird die State Machine 221 durch die Eingabe entsprechenderDaten überden Eingangsanschluß TMS desHalbleiter-Chips in den Zustand update_dr versetzt, wodurch derTAP 220 wieder das Taktsignal scan_clock ausgibt. In diesem Zustanddes Halbleiter-Chips arbeitet die Logik des Halbleiter-Chips einschließlich derFlip-Flops wie in der Normal-Betriebsart. Nur das verwendete Taktsignal(scan_clock) ist ein anders als in der Normal-Betriebsart (sys_clock).Der Halbleiter-Chip wird nur kurzzeitig, beispielsweise für einenoder mehrere Takte des Taktsignals scan_clock, in diesem Zustand gehalten.Hierbei könnensich die von den Flip-Flops gespeicherten Daten verändern. Obund gegebenenfalls wie sie sich ändern,hängt unteranderem von den Daten ab, die zuvor in die Schieberegister 202 und 203 geladenwurden, und vom Aufbau und der Funktion der Logik.
[0171] Anschließend wirdder Halbleiter-Chip wieder in einen Zustand versetzt, in welcherer sich Seriell-Scan-Test/Schiebe-Betriebsart befindet und das Taktsignalscan_clock aus dem TAP 220 ausgegeben wird. Dies geschiehtdadurch, daß dieState Machine 221 zunächstin den Zustand shift_dr, und anschließend in den Zustand update_drversetzt wird. In diesem Zustand werden die in den Schieberegistern 202 und 203 gespeichertenDaten in das Testregister 225 transferiert und von dortaus überden Ausgangsanschluß TDOdes Halbleiter-Chips aus diesem ausgegeben.
[0172] Dadie Schieberegister 202 und 203 zusammen länger sindals das Testregister 225 geschieht dies ähnlich wiedas Beschreiben der Schieberegister in mehreren Schritten. Genauergesagt ist es so, daß zunächst nurjeweils das niederwertige Bit der in den Schieberegistern 202 und 203 gespeicherten Datenaus den Schieberegistern hinausgeschoben in das Testregister 225 transferiertwird. Nach diesem Transfer befindet sich im Register 225-1 dasniederwertige Bit der im Schieberegister 202 gespeicherten Daten,und im Register 225-1 das niederwertige Bit der im Schieberegister 203 gespeichertenDaten.
[0173] Danachwird die State Machine 221 in den Zustand shift dr versetzt,wodurch die zuvor in das Testregister 225 transferiertenBits aus dem Testregister hinausgeschoben und über des Ausgangsanschluß TDO desHalbleiter-Chips ausgegeben werden. Gleichzeitig können neueTestdaten eingeschoben werden.
[0174] Anschließend wirddie State Machine 221 wieder in den Zustand update_dr versetzt,wodurch jeweils das höherwertigeBit der in den Schieberegistern 202 und 203 gespeichertenDaten in das Testregister 225 transferiert wird. Nach diesemTransfer befindet sich im Register 225-1 das höherwertigeBit der im Schieberegister 202 gespeicherten Daten, undim Register 225-1 dashöherwertigeBit der im Schieberegister 203 gespeicherten Daten.
[0175] Danachwird die State Machine 221 wieder in den Zustand shift_drversetzt, wodurch die soeben in das Testregister 225 transferiertenBits aus dem Testregister hinausgeschoben und über des Ausgangsanschluß TDO desHalbleiter-Chips ausgegeben werden.
[0176] Die über denAusgangsanschluß TDOaus dem Halbleiter-Chip ausgegebenen Daten werden sodann mit vorgegebenenSoll-Daten verglichen. Die Soll-Daten sind diejenigen Daten, diein den Schieberegistern 202 und/oder 203 gespeichertsein müßten, wennder Halbleiter-Chip ordnungsgemäß arbeitet. Anhanddes Ergebnisses des Vergleiches zwischen den aus den Schieberegistern 202 und/oder 203 ausgelesenenDaten und den Soll-Daten kann somit ermittelt werden, ob der Halbleiter-Chipordnungsgemäß arbeitet.Stimmen die miteinander verglichenen Daten überein, so kann davon ausgegangenwerden, daß derHalbleiter-Chip fehlerfrei gearbeitet hat. Stimmen die Daten nicht überein,hat der Halbleiter-Chip nicht fehlerfrei gearbeitet.
[0177] Dervorstehend beschriebene Test kann unter Verwendung anderer Testmusterbeliebig oft wiederholt werden.
[0178] DerVollständigkeithalber sei angemerkt, daß dieKontroll-Bits, unterVerwendung welcher die Steuersignale scan_en, scan_mode, und jtag_mode generiertwerden, nicht im Instruction Register des TAP gespeichert sein müssen. DieseBits können auchin einem der in IEEE 1149.1 erwähntendesign specific register gespeichert sein. Dies gilt für alle hiervorgestellten TAPs.
[0179] Fernersei angemerkt, daß dieFlip-Flops der Logik zu beliebig vielen Schieberegistern verschaltet werdenkönnen,wobei die mehreren Schieberegister unabhängig voneinander beliebig langsein können.
[0180] Darüber hinausist es so, daß dieTaktsignale sys_clock und scan_clock bei einfach aufgebauten Halbleiter-Chipsauch identische Taktsignale sein können, oder der Halbleiter-Chipstets mit dem Taktsignal sys_vlock getaktet wird.
[0181] Diehier vorgestellten Halbleiter-Chips lassen sich auch dann, wennsie bereits in ein bestehendes System integriert sind, schnell undeinfach umfassend testen. Vorzugsweise lassen sie sich zusätzlich auchnach dem Full-Scan-Test-Verfahren testen, wobei jedoch keine zwingendeNotwendigkeit besteht, diese Möglichkeitvorzusehen.
102 erstesSchieberegister 103 zweitesSchieberegister 120 JTAGTest Access Port (TAP) 121 StateMachine 122 InstructionRegister 125 Steuerregister 131 UND-Gatter 132 UND-Gatter 133 UND-Gatter 141 ODER-Gatter 142 ODER-Gatter 151 Sperrelement 161 Multiplexer 162 Multiplexer 163 Multiplexer 171 Multiplexer 172 Multiplexer 173 Multiplexer 174 Multiplexer 175 Multiplexer 176 Multiplexer 177 Multiplexer 181 Eingangsanschluß des Halbleiter-Chips 182 Ausgangsanschluß des Halbleiter-Chips 183 Eingangsanschluß des Halbleiter-Chips 184 Ausgangsanschluß des Halbleiter-Chips 185 Eingangsanschluß des Halbleiter-Chips 191 erstesSperrelement 192 zweitesSperrelement 202 erstesSchieberegister 203 zweitesSchieberegister 220 JTAGTest Access Port (TAP) 221 StateMachine 222 InstructionRegister 225 Testregister 225-1 Register 225-2 Register 231 UND-Gatter 232 UND-Gatter 233 UND-Gatter 234 UND-Gattter 241 ODER-Gatter 243 ODER-Gatter 251 Sperrelement 261 Multiplexer 262 Multiplexer 263 Multiplexer 265 Flip-Flop 271 Multiplexer 272 Multiplexer 273 Multiplexer 278 Multiplexer 279 Multiplexer 281 Eingangsanschluß des Halbleiter-Chips 282 Ausgangsanschluß des Halbleiter-Chips 283 Eingangsanschluß des Halbleiter-Chips 284 Ausgangsanschluß des Halbleiter-Chips 285 Eingangsanschluß des Halbleiter-Chips 291 erstesSperrelement 292 zweitesSperrelement 401 Logik 402 erstesSchieberegister 403 zweitesSchieberegister 420 JTAGTest Access Port (TAP) 421 StateMachine 422 InstructionRegister 423 UND-Gatter 424 Multiplexer 471 ersterMultiplexer 472 zweiterMultiplexer 473 dritterMultiplexer 481 Eingangsanschluß des Halbleiter-Chips 482 Ausgangsanschluß des Halbleiter-Chips 483 Eingangsanschluß des Halbleiter-Chips 484 Ausgangsanschluß des Halbleiter-Chips 485 Eingangsanschluß des Halbleiter-Chips jtag_mode Steuersignalscan_clk Taktsignal scan_en Steuersignal scan_mode Steuersignal TCK Eingangsanschluß des Halbleiter-Chips TDI Eingangsanschluß des Halbleiter-Chips TMS Eingangsanschluß des Halbleiter-Chips TDO Ausgangsanschluß des Halbleiter-Chips
权利要求:
Claims (18)
[1] Halbleiter-Chip mit einer Vielzahl von Flip-Flops,die sich zum Testen des Halbleiter-Chips zu einem oder mehrerenSchieberegistern (102, 103; 202, 203)verschalten lassen, und mit einem JTAG Test Access Port (120; 220)gemäß IEEE 1149.1, über welchender Halbleiter-Chip in eine Testbetriebsart versetzbar ist, in derdie Flip-Flops zu einem oder mehreren Schieberegistern verschaltetsind, dadurch gekennzeichnet, daß der Halbleiter-Chip derartaufgebaut ist, daß daseine oder die mehreren Schieberegister über den JTAG Test Access Portbeschreibbar und auslesbar sind.
[2] Halbleiter-Chip nach Anspruch 1, dadurch gekennzeichnet,daß dasmindestens eine Schieberegister (102, 103; 202, 203)auch übernicht mit dem JTAG Test Access Port (120; 220)verbundene Ein- und/oder Ausgabeanschlüsse (181 – 184)des Halbleiter-Chips beschreibbar und auslesbar ist.
[3] Halbleiter-Chip nach Anspruch 2, dadurch gekennzeichnet,daß derJTAG Test Access Port (120; 220) ein erstes Signal(jtag_mode) erzeugt, von dessen Pegel es abhängt, ob das mindestens eine Schieberegister(102, 103; 202, 203) über denJTAG Test Access Port oder übernicht mit dem JTAG Test Access Port (120; 220)verbundene Ein- und/oder Ausgabeanschlüsse (181 – 184)des Halbleiter-Chips beschrieben und ausgelesen werden kann.
[4] Halbleiter-Chip nach Anspruch 3, dadurch gekennzeichnet,daß alserstes Signal (jtag_mode) ein bestimmtes Bit der in einem InstructionRegister (122; 222) des JTAG Test Access Port(120; 220) gespeicherten Daten oder ein bestimmtesBit der in einem der in IEEE 1149.1 definierten anderen design specificregister gespeicherten Daten verwendet wird.
[5] Halbleiter-Chip nach Anspruch 1, dadurch gekennzeichnet, – daß der JTAGTest Access Port (120; 220) ein zweites Signal(scan_mode) erzeugt, von dessen Pegel es abhängt, ob sich der Halbleiter-Chipin der Testbetriebsart befindet oder nicht, und – daß das zweiteSignal (scan_mode) das Ergebnis einer logischen Verknüpfung vonin einem Instruction Register (122; 222) des JTAGTest Access Port (120; 220) gespeicherten Bitsoder von in einem der in IEEE 1149.1 definierten anderen designspecific register gespeicherten Bits ist.
[6] Halbleiter-Chip nach Anspruch 1, dadurch gekennzeichnet, – daß der JTAGTest Access Port (120; 220) ein drittes Signal(scan_en) erzeugt, von dessen Pegel es abhängt, ob die Flip-Flops desHalbleiter-Chips zu dem mindestens einen Schieberegister (102, 103; 202, 203)verschaltet sind oder nicht, und – daß das dritte Signal (scan_en)vom Zustand einer State Machine (121; 221) desJTAG Test Access Port (120; 220) abhängt.
[7] Halbleiter-Chip nach Anspruch 1, dadurch gekennzeichnet,daß dieFlip-Flops des Halbleiter-Chips in der Testbetriebsart mindestenszu einem ersten Schieberegister (102; 202) undzu einem zweiten Schieberegister 103; 203) verschaltetsind, und daß wahlweisenur das erste Schieberegister, oder nur das zweite Schieberegister,oder beide Schieberegister beschrieben und ausgelesen werden können.
[8] Halbleiter-Chip nach Anspruch 7, dadurch gekennzeichnet, daß es vomInhalt eines in IEEE 1149.1 definierten und über den Eingangsanschluß TDI desJTAG Test Access Port (120; 220) beschreibbarendesign specific register (125) des JTAG Test Access Portabhängt,ob nur das erste Schieberegister, oder nur das zweite Schieberegister,oder beide Schieberegister beschrieben und ausgelesen werden können.
[9] Halbleiter-Chip nach Anspruch 1, dadurch gekennzeichnet,daß diein das mindestens eine Schieberegister (102, 103; 202, 203)zu schreibenden Daten überden Eingangsanschluß TDIdes JTAG Test Access Port (120; 220) in den Halbleiter-Chipeingegeben werden.
[10] Halbleiter-Chip nach Anspruch 9, dadurch gekennzeichnet,daß diein das mindestens eine Schieberegister (102, 103; 202, 203)zu schreibenden Daten in ein in IEEE 1149.1 definiertes und über denEingangsanschluß TDIdes JTAG Test Access Port (120; 220) beschreibbaresdesign specific register (125) geschrieben und von dortan das mindestens eine Schieberegister weitergeleitet werden.
[11] Halbleiter-Chip nach Anspruch 10, dadurch gekennzeichnet,daß diein des mindestens eine Schieberegister (102, 103; 202, 203)zu schreibenden Daten bitweise seriell in das design specific register(125) geschrieben werden und von diesem parallel an dasmindestens eine Schieberegister weitergeleitet werden.
[12] Halbleiter-Chip nach Anspruch 10, dadurch gekennzeichnet,daß dasBeschreiben des mindestens einen Schieberegisters (102, 103; 202, 203)in mehreren aufeinanderfolgenden Schritten erfolgt, wobei in jedemSchritt 1 Bit pro Schieberegister in das design specific register(125) geschrieben und von dort an das mindestens eine Schieberegister weitergeleitetwird.
[13] Halbleiter-Chip nach Anspruch 1, dadurch gekennzeichnet,daß dieaus dem mindestens einen Schieberegister (102, 103; 202, 203)auszulesenden Daten überden Ausgangsanschluß TDOdes JTAG Test Access Port (120; 220) aus dem Halbleiter-Chip ausgegebenwerden.
[14] Halbleiter-Chip nach Anspruch 13, dadurch gekennzeichnet,daß dieaus dem mindestens einen Schieberegister (102, 103; 202, 203)auszulesenden Daten in ein in IEEE 1149.1 definiertes design specificregister (125) des JTAG Test Access Port (120; 220)transferiert und von dort überden Ausgangsanschluß TDOdes JTAG Test Access Port (120; 220) aus dem Halbleiter-Chipausgegeben werden.
[15] Halbleiter-Chip nach Anspruch 14, dadurch gekennzeichnet,daß dieaus dem mindestens einen Schieberegister (102, 103; 202, 203)auszulesenden Daten parallel in das design specific register (125) transferiertund von dort überden Ausgangsanschluß TDOdes JTAG Test Access Port (120; 220) bitweise seriellaus dem Halbleiter-Chip ausgegeben werden.
[16] Halbleiter-Chip nach Anspruch 14, dadurch gekennzeichnet,daß dasAuslesen des mindestens einen Schieberegisters (102, 103; 202, 203)in mehreren aufeinanderfolgenden Schritten erfolgt, wobei in jedemSchritt 1 Bit pro Schieberegister parallel in das design specificregister (125) geschrieben und von dort bitweise seriellaus dem Halbleiter-Chip ausgegeben wird.
[17] Halbleiter-Chip nach Anspruch 1, dadurch gekennzeichnet,daß demJTAG Test Access Port (120; 220) über denEingangsanschluß TCKein Taktsignal (scan_clock) zugeführt wird, unter Verwendungdessen der Halbleiter-Chip in der Testbetriebsart zu takten ist,und daß derJTAG Test Access Port (120; 220) dieses Taktsignalnur in bestimmten Phasen an die restlichen Komponenten des Halbleiter-Chipsweiterleitet.
[18] Halbleiter-Chip nach Anspruch 17, dadurch gekennzeichnet,daß esvom Zustand einer State Machine (121; 221) desJTAG Test Access Port (120; 220) und/oder vomInhalt eines Instruction Register (122; 222) desJTAG Test Access Port (120; 220) abhängt, obder JTAG Test Access Port (120; 220) das Taktsignal(scan_clock) an die restlichen Komponenten des Halbleiter-Chipsweiterleitet.
类似技术:
公开号 | 公开日 | 专利标题
US9547042B2|2017-01-17|IR enabled gating of TAP and WSP shift, capture, transfer
US9116209B2|2015-08-25|Gating WSP update and TAP updatedr with TAP IR enable
US10151795B2|2018-12-11|Double data rate circuitry coupled to test access mechanisms, controller
US10281526B2|2019-05-07|Device testing architecture, method, and system
US9267990B2|2016-02-23|CLK/TMS counter having reset output coupled to fourth count output
US5781756A|1998-07-14|Programmable logic device with partially configurable memory cells and a method for configuration
US6697957B1|2004-02-24|Emulation circuit with a hold time algorithm, logic analyzer and shadow memory
EP0358376B1|1995-02-22|Integrierte Prüfschaltung
US6388465B1|2002-05-14|Reconfigurable integrated circuit with integrated debussing facilities and scalable programmable interconnect
EP0523973B1|1997-12-10|Konfigurable Selbstprüfung für integrierte RAMs
US4540903A|1985-09-10|Scannable asynchronous/synchronous CMOS latch
JP3291350B2|2002-06-10|ディジタルシステムをテストするための装置
US6327685B1|2001-12-04|Logic built-in self test
US3961254A|1976-06-01|Testing embedded arrays
KR0176697B1|1999-04-01|회로판 테스트 시스템 및 방법
US6614259B2|2003-09-02|Configuration memory integrated circuit
DE3130714C2|1988-03-10|
US5412260A|1995-05-02|Multiplexed control pins for in-system programming and boundary scan state machines in a high density programmable logic device
US6014334A|2000-01-11|Sample and load scheme for observability of internal nodes in a PLD
US5949987A|1999-09-07|Efficient in-system programming structure and method for non-volatile programmable logic devices
EP1008025B1|2004-02-18|Steuerung der konfiguration in einer programmierbaren logik-einheit mittels nichtflüchtiger bauelemente
US4833676A|1989-05-23|Interleaved method and circuitry for testing for stuck open faults
CN101162258B|2012-04-04|半导体集成电路及其控制方法
US7418640B2|2008-08-26|Dynamically reconfigurable shared scan-in test architecture
US6925583B1|2005-08-02|Structure and method for writing from a JTAG device with microcontroller to a non-JTAG device
同族专利:
公开号 | 公开日
US20050289421A1|2005-12-29|
DE102004028632B4|2016-08-04|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题
US6418545B1|1999-06-04|2002-07-09|Koninklijke Philips Electronics N.V.|System and method to reduce scan test pins on an integrated circuit|CN109188250A|2018-10-08|2019-01-11|北方电子研究院安徽有限公司|一种能够进行静态参数测试的芯片io端口电路|JP2561164B2|1990-02-26|1996-12-04|三菱電機株式会社|半導体集積回路|
GB9622687D0|1996-10-31|1997-01-08|Sgs Thomson Microelectronics|An integrated circuit with tap controller|
US6925583B1|2002-01-09|2005-08-02|Xilinx, Inc.|Structure and method for writing from a JTAG device with microcontroller to a non-JTAG device|
US6862705B1|2002-08-21|2005-03-01|Applied Micro Circuits Corporation|System and method for testing high pin count electronic devices using a test board with test channels|US7908532B2|2008-02-16|2011-03-15|International Business Machines Corporation|Automated system and processing for expedient diagnosis of broken shift registers latch chains|
法律状态:
2006-01-26| OP8| Request for examination as to paragraph 44 patent law|
2016-04-04| R016| Response to examination communication|
2016-04-15| R018| Grant decision by examination section/examining division|
2017-05-05| R020| Patent grant now final|
2018-02-09| R082| Change of representative|
2020-01-01| R119| Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee|
优先权:
申请号 | 申请日 | 专利标题
DE102004028632.9A|DE102004028632B4|2004-06-15|2004-06-15|Halbleiter-Chip|DE102004028632.9A| DE102004028632B4|2004-06-15|2004-06-15|Halbleiter-Chip|
US11/152,930| US20050289421A1|2004-06-15|2005-06-15|Semiconductor chip|
[返回顶部]