DE69416471T2 - Abtastpfadsystem und Prüf- und Diagnoseverfahren - Google Patents
Abtastpfadsystem und Prüf- und DiagnoseverfahrenInfo
- Publication number
- DE69416471T2 DE69416471T2 DE69416471T DE69416471T DE69416471T2 DE 69416471 T2 DE69416471 T2 DE 69416471T2 DE 69416471 T DE69416471 T DE 69416471T DE 69416471 T DE69416471 T DE 69416471T DE 69416471 T2 DE69416471 T2 DE 69416471T2
- Authority
- DE
- Germany
- Prior art keywords
- test
- circuit board
- bvm
- program
- boundary
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000010998 test method Methods 0.000 title description 4
- 238000002405 diagnostic procedure Methods 0.000 title description 2
- 238000012360 testing method Methods 0.000 claims abstract description 189
- 230000015654 memory Effects 0.000 claims description 12
- 230000006870 function Effects 0.000 claims description 10
- 230000000977 initiatory effect Effects 0.000 claims description 9
- 238000000034 method Methods 0.000 claims description 6
- 238000004891 communication Methods 0.000 claims 2
- 230000008878 coupling Effects 0.000 claims 2
- 238000010168 coupling process Methods 0.000 claims 2
- 238000005859 coupling reaction Methods 0.000 claims 2
- 230000004044 response Effects 0.000 abstract description 10
- 238000003745 diagnosis Methods 0.000 abstract 3
- 239000013598 vector Substances 0.000 description 14
- 101100482081 Agrobacterium vitis (strain S4 / ATCC BAA-846) iaaM gene Proteins 0.000 description 2
- 102100029647 Apoptosis-associated speck-like protein containing a CARD Human genes 0.000 description 2
- 101100170834 Arabidopsis thaliana ERDJ3A gene Proteins 0.000 description 2
- 101100110004 Homo sapiens PYCARD gene Proteins 0.000 description 2
- 101100095608 Mus musculus Serinc3 gene Proteins 0.000 description 2
- 238000012550 audit Methods 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 101150116154 tms1 gene Proteins 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011990 functional testing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000012029 structural testing Methods 0.000 description 1
- 238000012956 testing procedure Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318533—Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
- G01R31/318566—Comparators; Diagnosing the device under test
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/273—Tester hardware, i.e. output processing circuits
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Tests Of Electronic Circuits (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Testing Or Measuring Of Semiconductors Or The Like (AREA)
Description
- Verfahren und eine Vorrichtung zur Prüfung einer oder mehrerer Leiterplatten in einem System, wobei jede Leiterplatte eine Mehrzahl von boundary-scan-prüfbaren elektronischen Bauelementen enthält, die aneinander angekoppelt sind.
- Leiterplatten wurden bisher traditionell über eine Nagelbett-Prüfanordnung geprüft, um Fehler zu erkennen, wie zum Beispiel eine ausgefallene Verbindung zwischen einem Knoten (d.h. einem Pin) eines Bauelements (z.B. einer integrierten Schaltung) auf der Leiterplatte und einem Knoten eines anderen Bauelements auf derselben Leiterplatte. Mit zunehmender Dichte von Bauelementen auf einer Leiterplatte ist das Prüfen über die traditionelle Nagelbett-Prüfanordnung aufgrund eines verminderten Zugangs zu den Knoten der Bauelemente auf der Leiterplatte zunehmend schwieriger durchführbar geworden. Aus diesem Grund werden zur Zeit viele Leiterplatten mit einer Boundary-Scan-Architektur der in dem ANSI/IEEE-Standard 1149.1, Test Access Port and Boundary Scan Architecture, angegebenen Art entworfen.
- Gemäß der ANSI/IEEE-Boundary-Scan-Architektur werden ausgewählte Bauelemente auf der Leiterplatte mit einer oder mehreren Boundary-Scan-Zellen ausgestattet, die jeweils ein Einzelbitregister umfassen. Jede Boundary-Scan-Zelle ist an einen Knoten eines Bauelements, wie zum Beispiel einen Eingangs-, Ausgangs-, Eingangs/Ausgangs- oder Steuerknoten, angekoppelt. Die Boundary-Scan-Zellen werden seriell in einer einzigen Kette gekoppelt, die gewöhnlich als Boundary-Scan-Kette bezeichnet wird. Zur Erzielung der Boundary-Scan-Prüfung einer Leiterplatte wird eine Kette von Bit so durch die Kette von Boundary-Scan- Zellen hindurchgeschoben, daß jedes Bit in einer separaten Zelle in der Kette zwischengespeichert wird.
- Während die Bit durch die Kette von Boundary-Scan- Zellen hindurchgeschoben werden, wird jede an einen Ausgangsknoten eines Bauelements angekoppelte Zelle "aktualisiert", d.h. das in die Zelle geschobene Bit erscheint an dem entsprechenden an sie angekoppelten Ausgangsknoten. Das an einem Ausgangsknoten erscheinende Bit wird dann durch eine Boundary-Scan- Zelle "aufgefangen", die einem Eingangsknoten eines Bauelements zugeordnet ist, das durch diesen Ausgangsknoten angesteuert wird. Zur Prüfung, ob die Verbindungen zwischen den boundary-scan-prüfbaren Bauelementen fehlerfrei sind, werden die Bit in der Kette von Boundary-Scan-Zellen herausgeschoben und mit einer Bitkette verglichen, die unter fehlerfreien Bedingungen gewonnen wurde.
- Die auf die oben beschriebene Weise erfolgende Boundary-Scan-Prüfung wird mittels eines Boundary-Scan- Masters (BSM) auf jeder Leiterplatte gesteuert. Der BSM besteht aus einem Logikblock, der Prüfinformationen aus einem Prüf- und Diagnosehost (d.h. einem Prozessor) empfängt. Als Reaktion auf einen Prüfbefehl aus einem Host-Prüf- und Diagnoseprozessor, der für die zu prüfende Art. von Leiterplatte spezifisch ist, erzielt der BSM auf dieser Leiterplatte eine Boundary-Scan- Prüfung der in der Boundary-Scan-Kette gekoppelten Bauelemente. Zusätzlich kann der BSM auch eine eingebaute Selbstprüfung (BIST) derjenigen Bauelemente auf der Leiterplatte einleiten, die über eine solche Fähigkeit verfügen. Darüber hinaus kann der BSM auch mit der Fähigkeit ausgestattet werden, Antwortsignale zu komprimieren, die durch die boundary-scan-prüfbaren Bauelemente beim Abschluß der Prüfung erzeugt werden.
- Eine beispielhafte Betriebsumgebung für den BSM wird in Fig. 9 einer Arbeit mit dem Titel "A Structured Approach to Board-Level BIST Using the Boundary-Scan Master", von N. Jarwala und C.W. Yau, Microprocessors and Microsystems, Band 17, (1993), Seiten 289 bis 297 angegeben.
- Theoretisch gewährt jeder BSM seiner zugeordneten Leiterplatte eine Fähigkeit, eine fast vollständige Selbstprüfung zu erzielen, die während der Prüfung eines Systems mit mehreren Leiterplatten ausgenutzt werden kann. Dennoch bestehen praktische Beschränkungen, die bisher die Möglichkeit der Erzielung einer optimalen Boundary-Scan-Prüfung auf Systemebene beeinträchtigt haben. Zum Beispiel setzen verschiedene Systeme oft verschiedene Arten von Prüf- und Diagnoseprozessoren ein, wodurch verschiedene Prozessorarchitekturen entstehen, die berücksichtigt werden müssen. Außerdem können verschiedene Protokolle existieren, die zu dem Problem der Variabilität beitragen.
- Darüber hinaus sind Prüfungen, die auf Systemebene durchgeführt werden, hauptsächlich Funktionsprüfungen und hängen als solche im allgemeinen nicht von Änderungen oder Revisionen der Leiterplatten selbst ab. Im Gegensatz dazu erzielen Verfahren des Boundary-Scan und der eingebauten Selbstprüfung im allgemeinen eine Strukturprüfung, die durch Änderungen der Bauelemente auf der Leiterplatte und/oder die Verbindungen zwischen ihnen beeinflußt werden kann. Bisher war es auch dann notwendig, die System- Prüf- und Diagnosesoftware zu ändern, um solche Änderungen zu berücksichtigen, wenn sich diese nicht auf die Systemfunktionalität auswirken.
- Ein beispielhaftes Boundary-Scan-Prüfverfahren des Stands der Technik ist aus einer Arbeit mit dem Titel "Test Program Synthesis for Modules and Chips Having Boundary Scan" von J-C Lien und M.A. Breuer, Journal of Electronic Testing: Theory and Applications, Band 4, S. 159-180 (1993), bekannt. Diese Arbeit beschreibt ein Entwurfstool namens BOLD, das drei Hauptbestandteile enthält: eine Entwurfsmethodik, spezielle Hardwarestrukturen und spezielle Prüfsprachen und ihre zugeordneten Compiler. Das BOLD-System ist so entworfen, daß es Technikern ermöglicht, qualitativ hochwertige Tests für elektronische Bauelemente zu entwickeln. BOLD berücksichtigt jedoch nicht ohne weiteres schwankende Grade der Diagnoseauflösung, und stellt auch kein zweckmäßiges Verfahren zur Auswahl einer bestimmten Art von Ablaufsteuerung bereit.
- Somit wird ein auf Boundary-Scan basierendes Prüf- und Diagnoseverfahren benötigt, das einfach ist und eine frühzeitige Fehlererkennung mit großer Genauigkeit bereitstellt.
- Kurz gefaßt wird gemäß einer bevorzugten Ausführungsform der Erfindung ein System nach Anspruch 1 zur Prüfung mindestens einer Leiterplatte bereitgestellt, die eine Mehrzahl von boundary-scanprüfbaren Bauelementen enthält, die miteinander verbunden sind. Das entsprechende Verfahren wird in Anspruch 5 definiert. Weitere Verbesserungen der beanspruchten Vorrichtung werden in den abhängigen Ansprüchen 2 bis 4 definiert.
- Fig. 1 ist ein Blockschaltbild eines Prüfsystems gemäß einer bevorzugten Ausführungsform der Erfindung zur Prüfung mindestens einer Leiterplatte;
- Fig. 2 ist ein Blockschaltbild eines Boundary- Scan-Masters mit Teilen des Prüfsystems von Fig. 1; und
- Fig. 3 ist eine Tabelle, in der ein Teil eines Prüfprogramms zur Prüfung einer der Leiterplatten von Fig. 1 aufgelistet ist.
- Fig. 1 zeigt ein Prüfsystem 10 gemäß einer bevorzugten Ausführungsform der Erfindung zur Prüfung einer Mehrzahl von Leiterplatten 12&sub1;, 12&sub2; ... 12n (wobei n eine ganze Zahl ist). Zusammen bilden die Leiterplatten 12&sub1;, 12&sub2; ... 12n ein elektronisches System wie zum Beispiel eine Vermittlung eines Fernsprechamts. Jede Leiterplatte 12i (wobei i eine ganze Zahl ≤ n ist) weist eine Boundary-Scan- Architektur auf, die eine Mehrzahl von Boundary-Scan- Zellen 14&sub1;, 14&sub2;, 14&sub3; ... 14p umfaßt (wobei p eine ganze Zahl ist), die seriell in einer einzigen Boundary-Scan-Kette gekoppelt sind. (Obwohl dies nicht gezeigt ist, können die Boundary-Scan-Zellen 14&sub1; - 14p auf der Leiterplatte 12&sub1; mit jeder Kette von Boundary- Scan-Zellen auf einer oder mehreren anderen Leiterplatten in Reihe geschaltet werden.) Die Boundary-Scan-Zellen 14&sub1; - 14p umfassen jeweils ein Einzelbitregister, das einem Knoten eines elektronischen Bauelements 15, wie zum Beispiel einer integrierten Schaltung oder dergleichen zugeordnet ist. Jede Boundary-Scan-Zelle reagiert auf den Zustand des an dem Knoten des Bauelements 15 vorliegenden Signals, der dieser Zelle zugeordnet ist, um die Prüfung der Verbindungen zwischen den Bauelementen gemäß dem anfangs beschriebenen Boundary-Scan-Prüfverfahren zu erleichtern.
- Das Prüfsystem 10 enthält einen Systemprüf- und Diagnosehost (d.h. einen Prozessor) 16 zur Einleitung der Prüfung der Leiterplatten 12&sub1; - 12n zur Funktionsprüfung des kollektiv durch die Leiterplatten gebildeten Systems. Der Prüf- und Diagnosehost 16 kann die Form eines Prozessors annehmen, der fest der Einleitung und Verwaltung der Prüfung der Leiterplatten 12&sub1; - 12n zugeordnet ist. Als Alternative kann der Prüf- und Diagnosehost 16 die Form eines Prozessors annehmen, der vielfältige Funktionen durchführt, von denen eine sich mit der Einleitung und Verwaltung der Prüfung der Leiterplatten 12&sub1; - 12n befaßt. Gleichgültig, ob der Systemprüf- und Diagnosehost 16 die Prüfung der Leiterplatten exklusiv oder gemeinsam mit anderen Tasks verwaltet, verwaltet der Prüf- und Diagnosehost erfindungsgemäß nur die Prüfung und Diagnose der Leiterplatten 12&sub1; - 12n auf Systemebene. Anders ausgedrückt steuert der Prüf- und Diagnosehost 16 nicht die eigentliche Prüfung jeder einzelnen Leiterplatte und befaßt sich deshalb nicht mit den spezifischen Einzelheiten jeder Leiterplatte.
- Die eigentliche Prüfung der Leiterplatten 12&sub1; - 12n wird durch eine Virtuelle Maschine des Boundary- Scan-Masters (BVM) 17 ausgeführt, die einen Interpretierer 18 und eine Mehrzahl von Boundary-Scan- Mastern (BSMs) 20&sub1;, 20&sub2;, ... 20n enthält, die alle über einen Bus 21 an den BVM-Interpretierer angekoppelt sind. Jeder der BSMs 20&sub1;, 20&sub2;, ... 20n wird von einer einzelnen der Leiterplatten 12&sub1; - 12n getragen. Wie ausführlicher nachfolgend beschrieben, steuert jeder BSM die Prüfung dieser Leiterplatte.
- Jedem der BSMs 20&sub1; - 20n ist ein einzelner einer Mehrzahl von elektrisch programmierbaren Nur- Lese-Speichern (EPROMs) 22&sub1;, 22&sub2;, ... 22n zugeordnet. Jeder EPROM 22&sub1; speichert jeweils ein eigenes Prüfprogramm 23 für seinen entsprechenden BSM. Aus Fig. 3, die nachfolgend ausführlicher beschrieben wird, ist am besten zu sehen, daß jedes Prüfprogramm 23 aus einem Kopfteil 24 und mindestens einem und bis zu zweihundertfünfundfünfzig separaten Modulen 25 besteht (als Beispiel sind nur die Module Nr. 0, Nr. 1, Nr. 4 und Nr. 16 gezeigt). Mit Bezug auf Fig. 1 könnte man, statt das Prüfprogramm 23 für jeden der BSMs 20&sub1; - 20n in dem entsprechenden der EPROMs 22&sub1; - 22n zu speichern, die Prüfprogramme für jeden der BSMs auch zusammen durch eine Magnetplatte 26 speichern. Falls die Prüfprogramme 23 durch die Platte 26 gespeichert werden, sind die EPROMs 22&sub1; - 22n überflüssig.
- Die BSMs 20&sub1; - 20n sind untereinander identisch, und es wird deshalb nur der BSM 20&sub1; ausführlich beschrieben. Mit Bezug auf Fig. 2 enthält der BSM 20&sub1; eine generische Prozessorschnittstelle (GPI) 27 in Form eines Mikroprozessors oder dergleichen, die wirkt, um die Prüfung der Leiterplatte 12&sub1; gemäß dem für die Leiterplatte spezifischen Prüfprogramm 23 von Fig. 1 zu steuern. Die GPI 27 verfügt über einen Acht-Bit-Datenbus (DO-D7), einen Einzelbitadreßleitungs- (RA-) und Steuerbus, der eine Schreib/Lese-Steuersignalleitung (R/W*) enthält, eine Daten-Gültig-Signalleitung (DAV*) und eine Chipfreigabesignalleitung (CE*). Das Takten der GPI 27 wird durch ein Taktsignal TCKIN gesteuert.
- Die GPI 27 ist über einen bidirektionalen Bus 28 an eine interne Registerbank 29 angekoppelt, die eine Mehrzahl von Registern enthält (typischerweise achtzehn). In der Tabelle 1 sind die Identität und Funktion der in der Registerbank 29 enthaltenen Register angedeutet.
- Steuer/Zeiger-Register Dieses Register ist direkt durch die GPI 27 zugänglich und weist ein Fünf-Bit-Feld auf, mit dem die anderen Register in der Bank 29 adressiert werden. Dieses Register speichert außerdem ein Steuerbit, das bestimmt, ob der BSM in eine Programmmierbetriebsart, um eine Programmierung des BSM für eine spezifische Prüfung zu ermöglichen, oder in eine Ausführungsbetriebsart, während der der BSM diese Prüfung ausführt, versetzt werden soll.
- Allgemeines Steuerregister Mit diesem Register wird ein Boundary- Scan-Taktsignal TCK zum Takten der Bauelemente 15 von Fig. 1 als ein Bruchteil der Taktfrequenz TCKIN gesetzt. Dieses Register dient außerdem zur Speicherung eines Werts, der einen Prüfmodus-Auswahl-Signalmakrotyp (TMS- Signalmakrotyp, TMS = Test Mode Select) anzeigt, und zur Aktivierung der Erzeugung von TMS-Signalen.
- Konfigurationsregister Dieses Register enthält die Datenbusbreite für den BSM. Außerdem enthält dieses Register ein Betriebsart- Bit, das anzeigt, ob der BSM unabhängig (d.h. eine Uni-Ring-Betriebsart) oder mit dem anderen BSM auf einer oder mehreren anderen Leiterplatten zusammenwirken soll (d.h. eine Multi-Ring-Betriebsart). Dieses Register speichert außerdem ein Paar von Bit, die angeben, welches von vier separaten Prüfmustern erzeugt werden soll.
- Prüfvektor-Manipulationsregister Dieses Register stellt die primäre Prüfresourcensteuerung zur Bestimmung der Quelle von Prüfvektoren bereit, die der Leiterplatte zugeführt werden. Dieses Register bestimmt außerdem den Bestimmungsort für während der Prüfung erzeugte Antwortsignale.
- Interruptregister Dieses Register enthält den Status und Masken, die jeder der drei Quellen von Interrupts zugeordnet sind, die durch den BSM erzeugt werden.
- Prüfbarkeitsregister Dieses Register konfiguriert und steuert die Selbstprüfungsausführung des BSM und stellt Zugang zu der Selbstprüfungssignatur des BSM bereit.
- APO/API-Register Diese Register enthalten jeweils einen Zeiger zum Zeigen auf eine Wortadresse in jeweils einem von zwei (nachfolgend beschriebenen) Speichern, die Eingangs- bzw. Ausgangsprüfvektoren speichern.
- Register TMR0 und TMR1 Diese Register speichern jeweils einen einzelnen von zwei Makrobefehlen zur Aktivierung je eines von zwei einzelnen (nachfolgend beschriebenen) TMS- Signalgeneratoren zur Erzeugung eines einzelnen von zwei TMS-Signalen TMS0 bzw. TMS1.
- Schleifenzähler Dieses Register (eigentlich ein Zähler) dient zur Speicherung eines Werts, der der Anzahl von Prüfungen entspricht, die an der Leiterplatte 12&sub1; von Fig. 1 vorgenommen werden sollen. Jedesmal, wenn ein kompletter serieller Prüfvektor an die Bauelemente 15 von Fig. 1 angelegt wird, wird dieses Register dekrementiert.
- Scan-Dauer-Register Dieses Register enthält einen Wert, der der Länge jedes an die Leiterplatte 12&sub1; von Fig. 1 angelegten Prüfvektors entspricht.
- Netzzählregister Dieses Register enthält einen Wert, mit dem eine Schrittsequenz von Prüfvektoren erzeugt wird.
- Zugriffsregister TVO TVI und Diese Register dienen als Fenster zum Zugriff auf die Inhalte jeweils eines von zwei (nachfolgend beschriebenen) Speichern, die Eingangs- bzw. Ausgangsprüfvektoren speichern.
- Programmierbarer Zeitsteuerungszähler Dieses Register (eigentlich ein Zähler) wird durch einen Takt angesteuert, der 256 mal langsamer als das Taktsignal TCKIN ist. Wenn das Register auf Null dekrementiert wird, erzeugt es einen Interrupt, der zu Zeitsteuerungszwecken verwendet werden kann.
- Signaturanalysezugangsregister Dieses Register dient als ein Fenster zum Zugriff auf ein (nachfolgend beschriebenes) Register, das eine Prüfsignatur für die Leiterplatte 12&sub1; speichert.
- Pseudozufallsprüfmustergeneratorzugriffsregister Dieses Register dient als ein Fenster zur Speicherung eines Ausgangswerts für einen (nicht gezeigten) Pseudozufallsprüfmustergenerator.
- Die Registerbank 29 ist über einen bidirektionalen Bus 30 an eine erste Speicherbank (32) und einen automatischen Prüfmustergenerator 34 angekoppelt. Die erste Speicherbank 32 ist als ein Prüfvektorausgangsspeicher (TVO-Speicher) gekennzeichnet, weil sie eine Menge deterministischer Prüfvektoren zur Prüfung der Leiterplatte 12&sub1; von Fig. 1 speichert. Die Vektoren in dem TVO-Speicher 32 werden vor der Prüfung erzeugt. Der automatische Prüfmustergenerator (ATPG) 34 nimmt typischerweise die Form eines linear rückgekoppelten Schieberegisters an, das ein einzelnes von vier verschiedenen Mustern von Prüfvektoren gemäß in dem Prüfvektormanipulationsregister in der internen BSM- Registerbank 29 gespeicherten Informationen erzeugt. Der TVO-Speicher 32 und der APTG 34 sind an einen ersten bzw. zweiten Eingang eines Multiplexierers 36 angekoppelt, der das Signal an einem gewählten seines ersten bzw. zweiten Eingangs zu seinem Ausgang weiterleitet, der als der Prüfdatenausgang (TDO) des BSM 20&sub1; gekennzeichnet ist. Der Ausgang TDO des BSM 20&sub1; ist an einen Prüfdateneingang der Kette von Boundary- Scan-Zellen 14&sub1; - 14p von Fig. 1 angekoppelt.
- Die Registerbank 29 ist außerdem durch den Bus 30 an eine zweite Speicherbank 38 angekoppelt, die als die Prüfvektoreingangsspeicherbank (TVI-Speicherbank) gekennzeichnet ist. Die TVI-Speicherbank 38 speichert Antwortsignale, die durch die Kette von Boundary-Scan- Zellen 14&sub1; - 14p von Fig. 1 als Reaktion auf über den Multiplexierer 36 an diese angelegte Prüfvektoren erzeugt werden. Die durch die Leiterplatte 12&sub1; von Fig. 1 erzeugten Antwortsignale werden außerdem durch ein linear rückgekoppeltes Schieberegister 40 kompaktiert. Das Register 40 ist als das Signaturanalyseregister (SAR) gekennzeichnet, weil es eine Signatur (d.h. eine kompaktierte Menge von Antwortsignalen) speichert, die die Funktion der Leiterplatte 12&sub1; von Fig. 1 anzeigt.
- Der BSM 20&sub1; von Fig. 2 enthält zwei Prüfmodusauswahlsignalgeneratoren (TMS-Signalgeneratoren) 42 und 44, die jeweils an den Bus 30 angekoppelt sind. Die TMS-Generatoren 42 und 44 erzeugen jeweils ein einzelnes von zwei TMS-Signalen TMS0 bzw. TMS1, das in der Lage ist, eine einzelne von zwei Ketten von Boundary- Scan-Zellen gemäß dem Boundary-Scan-Prüfverfahren nach dem ANSI/IEEE-Standard 1149.1, Test Access Port and Boundary-Scan Architecture, zu steuern. Falls nur eine einzige Kette von Boundary-Scan-Zellen gesteuert werden soll, könnte einer der TMS-Generatoren 42 und 44 gelöscht werden.
- Außerdem ist dem BSM 20&sub1; ein an den Bus 30 angekoppelter Taktgenerator 46 zugeordnet, der ein Taktsignal TCK erzeugt, das den (nicht gezeigten) Bauelementen auf der Leiterplatte 12&sub1; von Fig. 1 während Intervallen der Boundary-Scan-Prüfung zugeführt wird. Der Taktgenerator 46 erzeugt das TCK-Signal durch einen programmierbaren Wert im Bereich von eins bis einhundertächtundzwanzig. Der Taktgenerator 46 verlangsamt effektiv deshalb das TCK-Signal, weil oft eines oder mehrere jeweils einer einzelnen der Boundary-Scan-Zellen 14&sub1; - 14p in der Boundary-Scan- Kette zugeordnete langsame Bauelemente 15 vorliegen können. Als Folge muß die Taktgeschwindigkeit auf die erforderliche Taktgeschwindigkeit des langsamsten Bauelements 15 verlangsamt werden.
- Der BSM 20&sub1; enthält außerdem eine Interrupt/Abtast-Logikschaltung 48, die an den Bus 30 angekoppelt ist. Die Interrupt/Abtast-Logik umfaßt typischerweise ein Register und zugeordnete Zufallslogik, die durch einen Timer/Zähler 50 getaktet wird. Die Funktion der Interrupt/Abtast-Logik 48 besteht darin, das Abtasten von Informationen zu erleichtern, die während der Prüfung durch die Kette von Boundary-Scan-Zellen erzeugt werden. Zum Abtasten der Informationen wird die Schaltung 48 durch ein Abtastsignal SP* getriggert. Als Reaktion auf das Abtastsignal SP* erzeugt die Interrupt/Abtast-Logik 48 einen Interrupt INT*, um anzuzeigen, daß sie bereit für das Ausgeben der abgetasteten Daten ist, die über den Bus 30 gelesen werden.
- Der BSM 20&sub1; enthält außerdem eine Boundary- Scan- (B-S-) Ringkonfigurationslogikschaltung 52 der Systemebene der in dem US-Patent 5 029 166 beschriebenen Art, die es dem BSM gestattet, sowohl in einer Uni-Ring- als auch in einer Multi-Ring- Betriebsart zu wirken. In der Uni-Ring-Betriebsart funktioniert der BSM 20&sub1; unabhängig von den anderen BSMs und dient zur Prüfung nur der Kette von Boundary- Scan-Zellen 14&sub1; - 14p auf der Leiterplatte 12&sub1;. In der Multi-Ring-Betriebsart wirkt der BSM 20&sub1; mit einem oder mehreren anderen BSMs zusammen, um die einzelnen Ketten Boundary-Scan-Zellen 14&sub1; - 14p zu prüfen.
- Wie bereits besprochen, wird die Steuerung der einzelnen BSMs 20&sub1; - 20n durch den BVM-Interpretierer 18 von Fig. 1 erzielt. Mit bezug auf Fig. 1 umfaßt der Interpretierer 18 eine Menge von Datenregistern 54-60, eine Menge von Steuerregistern 62-68 und eine Menge von Statusregistern 74. Das Datenregister 54 ist als ein Basisadreßregister gekennzeichnet, da es eine Anfangs- (Basis-)Adresse des Prüfprogramms 23 in jedem der EPROMs 22&sub1; - 22n speichert. Aus dieser Adresse kann die Speicherstelle jedes beliebigen der Module 25 des in einem entsprechenden EPROM gespeicherten Prüfprogramms bestimmt werden. Das Register 56 ist als der Programmzähler gekennzeichnet, da es die Speicherstelle hält, auf die gerade in einem bestimmten der EPROMs 22&sub1; - 22n zugegriffen wird. Das Register 58 ist als der Bitzähler gekennzeichnet, weil dieses Register die Anzahl von Bit akkumuliert, die als Reaktion auf einen spezifischen Lesebefehl (RDB), der ausgeführt wird, um die Register in der internen Registerbank 29 von Fig. 2 zu lesen, aus einem bestimmten der BSMs 20&sub1; - 20n herausgelesen werden. Der Bitzähler 58 verfolgt die Identifikation eines Bit, bei dem eine Nichtübereinstimmung in dem Prüfprogramm 23 gefunden wurde, um den höchsten Grad der Diagnoseauflösung bereitzustellen, den der BVM 17 unterstützt. Jedesmal, wenn bei einem Bit eine Nichtübereinstimmung gefunden wird, wird seine Speicherstelle in dem in dem EPROM gespeicherten Prüfprogramm, die durch den Zähler 58 identifiziert wird, vermerkt.
- Das Datenregister 60 ist als der Nichtübereinstimmungszähler gekennzeichnet, da er die Anzahl von Nichtübereinstimmungen zählt. Wenn die Anzahl von Nichtübereinstimmungen einen vorbestimmten Wert erreicht, der durch den Nichtübereinstimmungszähler 60 gezählt wird, dann wird die Fehlerprotokollierung (d.h. das Zählen von Nichtübereinstimmungen) abgebrochen.
- Das Steuerregister 62 ist als das Register Grad-der-Fehlerprotokollierung gekennzeichnet, da es einen (typischerweise 2 Bit breiten) Wert speichert, der den Grad der durch den Systemprüf- und Diagnosehost 16 angeforderten Fehlerprotokollierung anzeigt. Das Steuerregister 64 ist als das Register Maximale-Größedes-Fehlerprotokolls gekennzeichnet, da es einen Wert speichert, der eine Grenze für die Größe des Fehlerprotokolls festsetzt. Das Steuerregister 66 ist als das Register Ablaufssteuerungstyp gekennzeichnet, da es einen Wert speichert, der die Art der bei der Ausführung des Prüfprogramms 20 zu befolgenden Ablaufssteuerung angibt. Abhängig von dem in dem Register 66 gespeicherten Wert werden aufeinanderfolgende Module 25 des Prüfprogramms 23 unter der Steuerung des Systemprüf- und Diagnosehosts 16 ausgeführt, oder es wird eine in dem Prüfprogramm eingebettete Vorgabe-Ablaufssteuerung befolgt. Das Steuerregister 68 ist als das Register Prüfsumme/CRC- Register gekennzeichnet und speichert einen in dem Prüfprogramm 23 enthaltenen Wert, der vorgibt, ob eine Prüfsumme oder ein CRC ausgeführt wird.
- Das Statusregister 70 ist als das Register Fehlerprotokoll-überlauf-Flag gekennzeichnet, da es anzeigt, wenn das Fehlerprotokoll übergelaufen ist und die Fehlerprotokollierung abgebrochen werden sollte. Das Statusregister 72 ist als das Register Prüfmodul- Daten/Prf-Fehler-Flags gekennzeichnet, da es zwei Werte enthält, die jeweils in Form von Flags anzeigen, ob das aktuelle Modul 25 (siehe Fig. 3) des Prüfprogramms 23 von Fig. 1 und 3 ein negatives Prüfergebnis hatte (d.h. Bit mit Nichtübereinstimmung gefunden wurden) oder ob sein Prüfsummen/CRC-Wert bei der Übereinstimmung keinen Erfolg hatte. Mit diesen beiden Flags kann der Gut/Schlecht-Status des aktuellen Prüfmoduls 25 bewertet werden. Das letzte Statusregister 74 ist als das Register Prüfprogramm-Daten/Prf-Fehler-Flags gekennzeichnet, da es zwei Werte enthält, die aufzeichnen, ob das aktuelle Prüfprogramm 23 während der Ausführung ein negatives Ergebnis hatte oder ob seine Prüfsumme bzw. sein CRC ein negatives Ergebnis hatte. Mit den beiden Werten in dem Register 76 kann die Gut/Schlecht-Beschaffenheit des gesamten Programms bewertet werden.
- Mit bezug auf Fig. 3 sind die Einzelheiten des Prüfprogramms 23 gezeigt, das, wie bereits besprochen, den Kopfteil 24 und eine Mehrzahl von separaten Modulen 25 enthält. Der Kopfteil 24 enthält die Präambel des Prüfprogramms. Neben einem Programmbeginnkopfteil- Operationscode, der den Anfang des Prüfprogramms andeutet, enthält der Kopfteil 24 außerdem die folgenden Informationen: (1) die Leiterplattenidentität, (2) die konkrete Version der Leiterplatte, (3) die Inhalte des Prüfprogramms (die Anzahl und die Speicherstellen der Prüfmodule) und (4) ob eine Prüfsumme oder ein CRC verwendet wird, um die Integrität des Prüfprogramms zu prüfen. Am Ende des Prüfprogramms befindet sich ein Programmkopfteilendecode zur Anzeige, daß der Programmkopfteil keine weiteren Befehle enthält.
- Das Prüfprogramm 23 enthält außerdem eine Mehrzahl von Prüfmodulen 25, die jeweils eine Prüfung enthalten, die auf die Leiterplatte angewandt werden soll. Die Prüfmodule 25 können eine BSM-Selbstprüfung, eine Boundary-Scan-Integritätsprüfung, eine Verbindungsprüfung, Ausführung einer eingebauten Selbstprüfung (falls es unter den Bauelementen 15 solche gibt, die dafür ausgestattet sind) sowie eine Clusterprüfung enthalten. Wie in Fig. 3 gezeigt, beginnt jedes Prüfmodul 25 mit einem Prüfmodulbeginnoperationscode, der anzeigt, daß das Prüfmodul beginnen soll. Dem Prüfmodulbeginnbefehl folgt der Hauptteil des Prüfmoduls, der Befehle enthält, die den BSM zur Ausführung einer bestimmten Prüfung programmieren, sowie Prüfstimuli und erwartete Prüfsignaturen. Das Ende des Prüfmoduls wird mittels eines Prüfmodulendeoperationscodes angezeigt, der Verzweigungsinformationen sowie eine Prüfsumme bzw. einen CRC enthält.
- Die BVM 17 von Fig. 1 wirkt, um die Prüfung der Leiterplatten 12&sub1; - 12n auf die folgende Weise zu bewirken. Als erstes wird ein Prüfungseinleitungsbefehl aus dem Systemprüf- und Diagnosehost 16 zu der BVM 17 gesendet, um die Prüfung einzuleiten. Neben dem Prüfungseinleitungsbefehl leitet der Systemdiagnosehost 16 außerdem verschiedene Parameter zu der BVM 17 weiter, darunter die Speicherstelle des Prüfprogramms, der gewünschte Grad der Diagnoseauflösung, die Art der Ablaufsteuerung usw. Es versteht sich, daß die Informationen, die der Systemprüf- und Diagnosehost 16 weiterleitet, keine Einzelheiten über jede der einzelnen Leiterplatten 20&sub1; - 20n enthalten.
- Wie bereits angedeutet, gibt es zwei Betriebsarten für die BVM 17: (1) Vorgabe- Ablaufsteuerung und (2) Betrieb unter der Steuerung des Systemprüf- und Diagnosehosts 16. Der Betrieb unter Vorgabe-Ablaufsteuerung erfolgt bei Abwesenheit eines Befehls durch den Systemprüf- und Diagnosehost zur Ausführung spezifischer Prüfmodule. Somit bewirkt die BVM 17 unter Vorgabe-Ablaufsteuerung, daß jeder entsprechende der BSMs 20&sub1; - 20n sein gesamtes Prüfprogramm 23 von Fig. 1 und 3 ausführt, darunter alle Prüfmodule 25 von Fig. 3.
- Obwohl der Systemprüf- und Diagnosehost 16 von Fig. 1 nicht direkt bestimmt, welches der Prüfmodule 25 von Fig. 3 unter Vorgabe-Ablaufsteuerung ausgeführt werden, benötigt der Host dennoch Zugriff auf den Prüfprogrammkopfteil 24 von Fig. 3 vor Ausführung des Prüfprogramms, um eine obere Grenze für die Dauer des Prüfprogramms zu bestimmen. Der Grund für die Abfrage dieser Informationen besteht darin, den Prüf- und Diagnosehost 16 vor der Möglichkeit zu schützen, daß die BVM 17 unendlich lange auf ein spezifisches Ereignis wartet, das möglicherweise niemals eintritt. Typischerweise würde der Prüf- und Diagnosehost 16 die BVM 17 durch den Interpretierer 18 von Fig. 1 aufrufen, um Zugang zu dem Prüfprogrammkopfteil 24 von Fig. 3 zu erhalten. Der Interpretierer 18 würde den Prüfprogrammkopfteil 24 weiterleiten und dann enden. Danach würde der Prüf- und Diagnosehost 16 die BVM 17 durch den Interpretierer 18 aufrufen, um den Betrieb des Interpretierers unter Vorgabe-Ablaufsteuerung zu ermöglichen. Der Anfangspunkt für den Interpretierer 18 ist dann ebenfalls der Kopfteil 24 des Prüfprogramms, da die Informationen in dem Kopfteil für die Vorgabe- Ablaufsteuerung benötigt werden.
- Wenn der Interpretierer 18 aufgerufen wird, muß der erste in dem Prüfprogramm angetroffene Operationscode der Programmbeginnkopfteilcode in dem Programmkopfteil 24 von Fig. 3 sein, der den Anfang des Prüfprogrammkopfteils anzeigt. Wenn dieser Operationscode nicht angetroffen wird, dann muß die Ausführung des Prüfprogramms abgebrochen werden. Wenn der Programmbeginnkopfteil-Operationscode als der erste Befehl des Prüfprogrammkopfteils 24 angetroffen wird, was normalerweise der Fall ist, dann speichert der Interpretierer 18 bestimmte darin enthaltene Informationen, um die entsprechenden Parameter für die verschiedenen Register 54-74 zu setzen. Am Ende des Programmkopfteils 24 von Fig. 3 wird die Prüfsumme bzw. der CRC für den Programmkopfteil berechnet. Wenn die Prüfung ein negatives Ergebnis hat, wird die Ausführung des Prüfprogrammkopfteils 24 abgebrochen.
- Unter der Annahme, daß die Prüfsumme bzw. der CRC für den Prüfprogrammkopfteil 24 ein positives Ergebnis hat, dann wird das erste Prüfmodul 25 nach dem Prüfprogrammkopfteil Befehl für Befehl durch den entsprechenden BSM ausgeführt. Die Beschaffenheit der Befehle richtet sich nach der Art der ausgeführten Prüfung. Zum Beispiel können eine oder mehrere Leseoperationen ausgeführt werden, woraufhin ein Vergleich zwischen jedem gelesenen Byte und seinem erwarteten Wert erfolgt, nachdem eine Maske angelegt wurde. Eine Nichtübereinstimmung zwischen dem gerade gelesenen Byte und dem maskierten erwarteten Byte bewirkt, daß das Prüfmoduldatenfehlerflag in dem Register 72 von Fig. 1 gesetzt wird. Außerdem wird nach der Ausführung jeder Leseoperation der Bitzähler (Register 58) inkrementiert. Durch den Prüf- und Diagnosehost angeforderte weitere Fehlerinformationen werden protokolliert.
- Während der Ausführung jeder Leseoperation wird die Prüfsumme bzw. der CRC berechnet. Am Ende der Ausführung des Prüfmoduls 25 wird die Prüfsumme bzw. der CRC geprüft. Wenn die Prüfsumme bzw. der CRC ein negatives Ergebnis hat, dann wird das Prüfmodulprüfungsfehlerflag in dem Register 72 gesetzt. Falls eines der Flags in dem Register gesetzt ist, dann wird das Prüfprogrammfehlerflag in dem Register 74 gesetzt.
- Die Operation unter dem Prüf- und Diagnosehost 16 ist im allgemeinen einfacher als die Operation unter Vorgabe-Ablaufsteuerung. Beim Betrieb unter dem Prüf- und Diagnosehost 16 sucht der Interpretierer 18 der BVM 17 durch den entsprechenden BSM nach dem Programmbeginnkopfteil in dem Prüfprogrammkopfteil 24 und berechnet danach die Prüfsumme bzw. den CRC und verläßt dann den Prüfprogrammkopfteil, wenn ein Programmendekopfteiloperationscode angetroffen wird. Wenn der erste Operationscode ein Prüfmodulbeginnoperationscode ist, dann wird das erste Prüfmodul 25 durch den BSM ausgeführt, woraufhin das Prüfprogramm-Modul dann verlassen wird, wenn der Modulprüfungsendeoperationscode angetroffen wird. Die Fehlerprotokollierung und die Berechnung der Prüfsumme bzw. des CRC wird ebenfalls durchgeführt. Unter der Wirkung des Systemprüf- und Diagnosehosts 16 führt der Interpretierer 18 nur ein einziges Prüfmodul 25 (oder den Programmkopfteil 24) auf einmal aus und wartet danach auf Befehle aus dem Systemprüf- und Diagnosehost, welches Prüfmodul als nächstes ausgeführt werden soll.
- Die obige Beschreibung betrifft ein Prüfsystem (10) zur Prüfung mindestens einer Leiterplatte und vorzugsweise einer Mehrzahl von Leiterplatten 12&sub1; - 12n, die jeweils mindestens eine Kette von Boundary- Scan-Zellen 14&sub1; - 14p enthalten.
- Es versteht sich, daß die oben beschriebenen Ausführungsformen lediglich Beispiele der Prinzipien der Erfindung sind. Fachleute können verschiedene Änderungen und Modifikationen vornehmen, die die Prinzipien der Erfindung verkörpern und in den Schutzbereich der Erfindung fallen. Zum Beispiel wurde der Interpretierer 18 von Fig. 1 zwar in bezug auf eine Mehrzahl physikalischer Register 54-74 beschrieben. Die Funktion des Interpretierers könnte jedoch leicht auch mittels eines Softwareprogramms durchgeführt werden, das entweder auf einer eigenständigen Maschine oder als Teil der durch den Systemprüf- und Diagnosehost 16 ausgeführten Software abläuft.
Claims (5)
1. System zur Prüfung mindestens einer
Leiterplatte mit einer Mehrzahl von
Boundary-Scanprüfbaren, in einer seriellen Boundary-Scan-Kette
gekoppelten elektronischen Bauelementen, mit einem
Prüf- und Diagnose-Hostprozessor (16) zur Erzeugung
eines Prüfungseinleitungsbefehls zur Einleitung der
Boundary-Scan-Prüfung jeder Leiterplatte und zum
Empfang von Prüfinformationen, die deren Funktion
anzeigen,
dadurch gekennzeichnet, daß
der besagte Prüf- und Diagnose-Hostprozessor
(16) außerdem Parameter zu einer virtuellen Boundary-
Scan-Master-Maschine (BVM) (17) weiterleitet, darunter
Informationen, die die Position eines Prüfprogramms,
den gewünschten Grad der Diagnoseauflösung und die Art
der Flußsteuerung anzeigen, wobei die besagte BVM auf
den Prüfungseinleitungsbefehl aus dem Prüf- und
Diagnose-Hostprozessor reagiert, um einen Prüfbefehl zu
interpretieren und zu jeder Leiterplatte zu
übermitteln, um zu bewirken, daß die besagte
Leiterplatte ein für diese spezifisches Prüfprogramm
ausführt und dadurch bewirkt, daß die Leiterplatte
einer Prüfung unterzogen wird, und um Prüfergebnisse zu
erzeugen, wobei die BVM die Prüfergebnisse
interpretiert und solche Ergebnisse zu dem Prüf- und
Diagnose-Host als Prüfinformationen übermittelt, die
die Funktion der Leiterplatte anzeigen; und daß
ein Kommunikationsbus (21) jede Leiterplatte in
der besagten BVM (17) koppelt.
2. System nach Anspruch 1, wobei die BVM folgendes
umfaßt:
einen Boundary-Scan-Master (BSM) (20), der
jeder Leiterplatte zugeordnet ist und von jeder
Leiterplatte getragen wird, wobei der BSM das für die
ihm zugeordnete Leiterplatte spezifische Prüfprogramm
ausführt, um die Leiterplatte zu prüfen und um aus der
Leiterplattenprüfung Informationen zu erhalten, die
deren Funktion anzeigen;
einen Programmspeicher (22), der jedem
einzelnen BSM zugeordnet ist, um ein für die
Leiterplatte, die den BSM trägt, spezifisches
Prüfprogramm auszuführen; und
einen Boundary-Scan-Interpretierer (18) zur
Interpretation des Prüfungseinleitungsbefehls aus dem
Prüf- und Diagnose-Host, um so zu bewirken, daß jeder
BSM sein entsprechendes Prüfprogramm ausführt, um seine
zugeordnete Leiterplatte zu prüfen, und zur
Interpretation von Prüfinformationen, die aus jedem BSM
empfangen werden, um dem Prüf- und Diagnose-Host
Prüfinformationen bereitzustellen, die die Funktion der
Leiterplatten anzeigen.
3. System nach Anspruch 2, wobei der Boundary-
Scan-Interpretierer folgendes umfaßt:
eine Mehrzahl von Datenregistern (54-60) zum
Speichern der besagten durch den Systemprüf- und
Diagnose-Host zu der BVM weitergeleiteten
Informationen, darunter die besagten Informationen, die
die Position des Prüfprogramms und Informationen über
während des Prüfens erkannte Fehler in jeder
Leiterplatte anzeigen;
eine Mehrzahl von Steuerregistern (62-68) zum
Speichern von Informationen zur Steuerung der Prüfung
jeder Leiterplatte, darunter Informationen über die
Ausführung des Prüfprogramms; und
eine Mehrzahl von Statusregistern (70-74), die
den Status von Fehlern aufzeichnen, die während des
Prüfens auftreten.
4. System nach Anspruch 1, wobei jedes
Prüfprogramm folgendes umfaßt:
einen Prüfprogrammkopf (24), der Informationen,
die die Leiterplatte anzeigen, für die das Programm
ausgeführt werden soll, und Informationen, die
anzeigen, welche Prüfungen auf der Leiterplatte
durchgeführt werden sollen, enthält; und
mindestens ein Prüfmodul (25), das eine auf der
Leiterplatte auszuführende Prüfung enthält.
5. Verfahren zur Prüfung mindestens einer
Leiterplatte (12) mit einer Mehrzahl von
Boundary-Scanprüfbaren, in einer seriellen Boundary-Scan-Kette
gekoppelten elektronischen Bauelementen (14), mit den
folgenden Schritten:
Erzeugung eines High-Level-Prüfbefehls in einem
Systemprüf- und Diagnose-Host (16) zur Einleitung der
Prüfung der Leiterplatte;
gekennzeichnet durch die folgenden weiteren
Schritte:
Weiterleiten von Parametern zu einer virtuellen
Boundary-Scan-Master-Maschine (BVM) (17), darunter
Informationen, die die Position eines Prüfprogramms,
den gewünschten Grad der Diagnoseauflösung und die Art
der Flußsteuerung anzeigen,
Interpretieren des Prüfbefehls aus dem
Systemprüf- und Diagnose-Host in der besagten (BVM)
(17), um jeder Leiterplatte (12) einen Prüfbefehl
bereitzustellen, um zu bewirken, daß jede Leiterplatte
ein für sie spezifisches Prüfprogramm ausführt, und um
Prüfergebnisse zu erzeugen, die Fehler in der
Leiterplatte anzeigen; und
Interpretieren der Prüfergebnisse aus der
Leiterplatte (12) in der besagten (BVM) (17) zur
Herstellung von Prüfinformationen, die die Funktion der
Leiterplatte anzeigen, die durch einen jede
Leiterplatte in der BVM (17) koppelnden
Kommunikationsbus (21) zu dem Systemprüf- und Diagnose-
Host (16) übertragen werden.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/113,460 US5444716A (en) | 1993-08-30 | 1993-08-30 | Boundary-scan-based system and method for test and diagnosis |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69416471D1 DE69416471D1 (de) | 1999-03-25 |
DE69416471T2 true DE69416471T2 (de) | 1999-08-05 |
Family
ID=22349570
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69416471T Expired - Fee Related DE69416471T2 (de) | 1993-08-30 | 1994-08-17 | Abtastpfadsystem und Prüf- und Diagnoseverfahren |
Country Status (8)
Country | Link |
---|---|
US (1) | US5444716A (de) |
EP (1) | EP0640920B1 (de) |
JP (1) | JPH07181231A (de) |
KR (1) | KR0138225B1 (de) |
CA (1) | CA2127612C (de) |
DE (1) | DE69416471T2 (de) |
ES (1) | ES2130361T3 (de) |
TW (1) | TW276300B (de) |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5774644A (en) * | 1993-12-17 | 1998-06-30 | International Business Machines Corporation | Method and apparatus for generating a pair of interoperating communications programs |
US5537052A (en) * | 1994-06-17 | 1996-07-16 | Emc Corporation | System and method for executing on board diagnostics and maintaining an event history on a circuit board |
DE69634515T2 (de) * | 1995-06-09 | 2005-09-29 | Fujitsu Ltd., Kawasaki | Verfahren, system und anordnung zur effizienten generierung binärer zahlen zum testen von spreichervorrichtungen |
US5706297A (en) * | 1995-08-24 | 1998-01-06 | Unisys Corporation | System for adapting maintenance operations to JTAG and non-JTAG modules |
WO1997024670A1 (fr) * | 1995-12-27 | 1997-07-10 | Koken Co., Ltd. | Dispositif de controle |
US5768288A (en) * | 1996-03-28 | 1998-06-16 | Cypress Semiconductor Corp. | Method and apparatus for programming a programmable logic device having verify logic for comparing verify data read from a memory location with program data |
US5835503A (en) * | 1996-03-28 | 1998-11-10 | Cypress Semiconductor Corp. | Method and apparatus for serially programming a programmable logic device |
US5805794A (en) * | 1996-03-28 | 1998-09-08 | Cypress Semiconductor Corp. | CPLD serial programming with extra read register |
US5815510A (en) * | 1996-03-28 | 1998-09-29 | Cypress Semiconductor Corp. | Serial programming of instruction codes in different numbers of clock cycles |
US5668947A (en) * | 1996-04-18 | 1997-09-16 | Allen-Bradley Company, Inc. | Microprocessor self-test apparatus and method |
US5968196A (en) * | 1998-04-21 | 1999-10-19 | Atmel Corporation | Configuration control in a programmable logic device using non-volatile elements |
US6378094B1 (en) * | 1999-04-01 | 2002-04-23 | Lucent Technologies Inc. | Method and system for testing cluster circuits in a boundary scan environment |
US6327687B1 (en) * | 1999-11-23 | 2001-12-04 | Janusz Rajski | Test pattern compression for an integrated circuit test environment |
US6874109B1 (en) * | 1999-11-23 | 2005-03-29 | Janusz Rajski | Phase shifter with reduced linear dependency |
US9134370B2 (en) | 1999-11-23 | 2015-09-15 | Mentor Graphics Corporation | Continuous application and decompression of test patterns and selective compaction of test responses |
US6353842B1 (en) * | 1999-11-23 | 2002-03-05 | Janusz Rajski | Method for synthesizing linear finite state machines |
US9664739B2 (en) | 1999-11-23 | 2017-05-30 | Mentor Graphics Corporation | Continuous application and decompression of test patterns and selective compaction of test responses |
EP1242885B1 (de) * | 1999-11-23 | 2009-10-07 | Mentor Graphics Corporation | Ständige anwendung und dekompression von prüfmustern zu einer zu testenden integrierten schaltung |
US6684358B1 (en) | 1999-11-23 | 2004-01-27 | Janusz Rajski | Decompressor/PRPG for applying pseudo-random and deterministic test patterns |
US8533547B2 (en) * | 1999-11-23 | 2013-09-10 | Mentor Graphics Corporation | Continuous application and decompression of test patterns and selective compaction of test responses |
US6557129B1 (en) | 1999-11-23 | 2003-04-29 | Janusz Rajski | Method and apparatus for selectively compacting test responses |
US7493540B1 (en) | 1999-11-23 | 2009-02-17 | Jansuz Rajski | Continuous application and decompression of test patterns to a circuit-under-test |
US7062696B2 (en) * | 2000-01-14 | 2006-06-13 | National Semiconductor | Algorithmic test pattern generator, with built-in-self-test (BIST) capabilities, for functional testing of a circuit |
US6959257B1 (en) * | 2000-09-11 | 2005-10-25 | Cypress Semiconductor Corp. | Apparatus and method to test high speed devices with a low speed tester |
US20020093356A1 (en) * | 2000-11-30 | 2002-07-18 | Williams Thomas W. | Intelligent test vector formatting to reduce test vector size and allow encryption thereof for integrated circuit testing |
US6744256B2 (en) * | 2001-10-29 | 2004-06-01 | Agilent Technologies, Inc. | Boundary-scan testing of opto-electronic devices |
TW200401194A (en) * | 2002-07-11 | 2004-01-16 | Advanced Micro Devices Inc | Method and apparatus for determining a processor state without interrupting processor operation |
US20050159925A1 (en) * | 2004-01-15 | 2005-07-21 | Elias Gedamu | Cache testing for a processor design |
US20050172178A1 (en) * | 2004-01-15 | 2005-08-04 | Elias Gedamu | Cache-testable processor identification |
US20050172182A1 (en) * | 2004-01-15 | 2005-08-04 | Elias Gedamu | Optimal operational voltage identification for a processor design |
US7906982B1 (en) | 2006-02-28 | 2011-03-15 | Cypress Semiconductor Corporation | Interface apparatus and methods of testing integrated circuits using the same |
US8453026B2 (en) * | 2006-10-13 | 2013-05-28 | Advantest (Singapore) Pte Ltd | Process for improving design limited yield by efficiently capturing and storing production test data for analysis using checksums, hash values, or digital fault signatures |
US8615691B2 (en) * | 2006-10-13 | 2013-12-24 | Advantest (Singapore) Pte Ltd | Process for improving design-limited yield by localizing potential faults from production test data |
US20080239082A1 (en) * | 2007-03-29 | 2008-10-02 | Analogix Semiconductor, Inc. | HDMI format video pattern and audio frequencies generator for field test and built-in self test |
US10776233B2 (en) | 2011-10-28 | 2020-09-15 | Teradyne, Inc. | Programmable test instrument |
US9759772B2 (en) | 2011-10-28 | 2017-09-12 | Teradyne, Inc. | Programmable test instrument |
CN102520344B (zh) * | 2011-12-16 | 2014-04-02 | 大唐微电子技术有限公司 | 一种用于智能卡测试的边界扫描模块、边界扫描系统 |
CN102621483B (zh) * | 2012-03-27 | 2014-04-16 | 中国人民解放军国防科学技术大学 | 多链路并行边界扫描测试装置及方法 |
US9595350B2 (en) * | 2012-11-05 | 2017-03-14 | Nxp Usa, Inc. | Hardware-based memory initialization |
US10184980B2 (en) * | 2016-09-06 | 2019-01-22 | Texas Instruments Incorporated | Multiple input signature register analysis for digital circuitry |
TWI736721B (zh) * | 2017-12-13 | 2021-08-21 | 英業達股份有限公司 | 連接器的腳位連接測試系統及其方法 |
US10515039B2 (en) * | 2018-01-05 | 2019-12-24 | Molex, Llc | Vehicle USB hub system |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4872169A (en) * | 1987-03-06 | 1989-10-03 | Texas Instruments Incorporated | Hierarchical scan selection |
US4872125A (en) * | 1987-06-26 | 1989-10-03 | Daisy Systems Corporation | Multiple processor accelerator for logic simulation |
US5029166A (en) * | 1989-05-31 | 1991-07-02 | At&T Bell Laboratories | Method and apparatus for testing circuit boards |
EP0417905B1 (de) * | 1989-08-09 | 1997-11-05 | Texas Instruments Incorporated | Architektur des Abtastpfads eines Systems |
US5132635A (en) * | 1991-03-05 | 1992-07-21 | Ast Research, Inc. | Serial testing of removable circuit boards on a backplane bus |
GB2260414A (en) * | 1991-10-10 | 1993-04-14 | Genrad Inc | Circuit tester with scanner path assignment |
-
1993
- 1993-08-30 US US08/113,460 patent/US5444716A/en not_active Expired - Fee Related
-
1994
- 1994-07-07 CA CA002127612A patent/CA2127612C/en not_active Expired - Fee Related
- 1994-08-10 TW TW083107398A patent/TW276300B/zh active
- 1994-08-17 EP EP94306040A patent/EP0640920B1/de not_active Expired - Lifetime
- 1994-08-17 DE DE69416471T patent/DE69416471T2/de not_active Expired - Fee Related
- 1994-08-17 ES ES94306040T patent/ES2130361T3/es not_active Expired - Lifetime
- 1994-08-29 JP JP6226018A patent/JPH07181231A/ja active Pending
- 1994-08-29 KR KR1019940021970A patent/KR0138225B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
ES2130361T3 (es) | 1999-07-01 |
CA2127612A1 (en) | 1995-03-01 |
US5444716A (en) | 1995-08-22 |
EP0640920B1 (de) | 1999-02-10 |
JPH07181231A (ja) | 1995-07-21 |
KR950006470A (ko) | 1995-03-21 |
KR0138225B1 (ko) | 1998-06-15 |
EP0640920A1 (de) | 1995-03-01 |
DE69416471D1 (de) | 1999-03-25 |
TW276300B (de) | 1996-05-21 |
CA2127612C (en) | 1998-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69416471T2 (de) | Abtastpfadsystem und Prüf- und Diagnoseverfahren | |
DE3903835C2 (de) | ||
DE68921269T2 (de) | Integrierte Prüfschaltung. | |
DE69030528T2 (de) | Verfahren und Anordnung zum Testen von Schaltungsplatten | |
DE60211659T2 (de) | Verfahren und vorrichtung zur diagnose von ausfällen in einer integrierten schaltung unter verwendung von techniken des typs design-for-debug (dfd) | |
DE60025789T2 (de) | Logische eingebaute Selbstprüfung (LBIST) Steuerschaltungen, Systeme und Verfahren mit automatischer Bestimmung der maximalen Abtastkettenlänge | |
DE69506337T2 (de) | Von einem LSI-Prüfer mit einer verminderten Anzahl von Stiften testbare integrierte Halbleiterschaltung | |
DE60218498T2 (de) | Elektronisches gerät | |
DE69209404T2 (de) | Selbsttest integrierter Schaltungen mit hybriden Mustern | |
DE60220511T2 (de) | Verfahren und system zur optimierung der testkosten und deaktivierungsdefekte für scan- und bist-speicher | |
DE69031362T2 (de) | Verzögerungsfehler-Testvorrichtung | |
DE69220715T2 (de) | Eingebaute Selbsttestschaltung | |
DE69226001T2 (de) | Hochgeschwindigkeitsprüfung einer integrierten Schaltung mit JTAG | |
DE19952272B4 (de) | Verfahren und System zum Prüfen von auf eingebetteten Bausteinen basierenden integrierten Systemchip-Schaltungen | |
DE3852862T2 (de) | System zur umfassenden Ereignisqualifikation. | |
DE68928837T2 (de) | Prüf-Puffer/Register | |
DE69124170T2 (de) | Automatisches Prüfausrüstungssystem, das eine Stiftscheibenarchitektur verwendet | |
DE3687842T2 (de) | Verfahren und Gerät zum Software-Austesten. | |
DE69533275T2 (de) | Ein Steuergerät zur Durchführung der Abtastprüfung | |
DE2728676C2 (de) | Stufenempfindliches, als monolithisch hochintegrierte Schaltung ausgeführtes System aus logischen Schaltungen mit darin eingebetteter Matrixanordnung | |
EP0186724B1 (de) | Prüf- und Diagnoseeinrichtung für Digitalrechner | |
DE69114183T2 (de) | System zur Reduzierung von Prüfdatenspeichern. | |
DE69126575T2 (de) | Durch Ereignis befähigte Prüfarchitektur | |
DE3750236T2 (de) | Gerät zur In-line-Abfragesteuerung für Datenprozessorprüfung. | |
DE60023882T2 (de) | System auf einem Chip mit reprogrammierbarem Testgerät, Fehlerbeseitiger und Busüberwachung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |