DE69031676T2 - Architektur des Abtastpfads eines Systems - Google Patents

Architektur des Abtastpfads eines Systems

Info

Publication number
DE69031676T2
DE69031676T2 DE69031676T DE69031676T DE69031676T2 DE 69031676 T2 DE69031676 T2 DE 69031676T2 DE 69031676 T DE69031676 T DE 69031676T DE 69031676 T DE69031676 T DE 69031676T DE 69031676 T2 DE69031676 T2 DE 69031676T2
Authority
DE
Germany
Prior art keywords
bus
primary
test
data
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE69031676T
Other languages
English (en)
Other versions
DE69031676D1 (de
Inventor
Lee D Whetsel
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US07/391,751 external-priority patent/US5056093A/en
Priority claimed from US07/391,801 external-priority patent/US5054024A/en
Application filed by Texas Instruments Inc filed Critical Texas Instruments Inc
Application granted granted Critical
Publication of DE69031676D1 publication Critical patent/DE69031676D1/de
Publication of DE69031676T2 publication Critical patent/DE69031676T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2294Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by remote test
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318558Addressing or selecting of subparts of the device under test
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/88Monitoring involving counting

Landscapes

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

Description

    [Beschreibung] TECHNISCHES GEBIET DER ERFINDUNG
  • Diese Erfindung bezieht sich allgemein auf integrierte Schaltungen und insbesondere auf eine Vorrichtung zum Unterstützen eines selektiven Abtastzugriffes auf mehrere Teilsysteme in einem Systementwurf.
  • [Stand der Technik] HINTERGRUND DER ERFINDUNG
  • Die Fähigkeit zum Testen der Funktion von Vorrichtungen in einem System sowie der Verbindungen zwischen den Vorrichtungen wurde mit zunehmender Komplexität der Systeme, die eine oder mehrere integrierte Schaltungsplatinen verwenden, immer wichtiger. Während die Fortschritte in der Platinenverbindungstechnik, wie z. B. die Oberflächenmontage und die Gatterdichte der integrierten Schaltungen (IS), einen positiven Einfluß auf den Entwurf von Elektroniksystemen des Standes der Technik gehabt haben, haben sie die Testbarkeit auf Systemebene nachteilig beeinflußt. Die erhöhte Komplexität der Schaltungsplatinen macht es für einen Hersteller schwieriger und kostenaufwendiger, Platinenentwürfe unter Verwendung herkömmlicher Testtechniken zu prüfen. Eines der Testgebiete, das durch die fortschrittlichen Technologien kritisch beeinflußt wird, ist das systeminterne Testen. Herkömmliche Verfahren des systeminternen Testens beruhen auf der Fähigkeit des physikalischen Zugriffs auf die Platine unter Verwendung von Prüfvorrichtungen zum Anlegen eines Stimulus und zum Messen der Antwort von der getesteten Schaltung. Mit dichter werdenden Platinenlayouts wurde jedoch der für die Prüfung belegte Raum reduziert und in einigen Fällen vollständig weggelassen.
  • Boundary-Scan ist die Anwendung eines gemeinsamen Abtastrings am Rand von IS-Entwürfen, um einen Steuerbarkeits- und Beobachtbarkeitszugriff über Abtastoperationen zu schaffen. Die Anwendung eines Abtastpfades (eine Verbindung einer oder mehrerer Abtastvorrichtungen, die so verbunden sind, daß zwischen den Vorrichtungen serielle Daten weitergeleitet werden können) am Rand von integrierten Schaltungsentwürfen bietet eine integrierte Testfähigkeit, die die Testzugriffsprobleme überwinden kann, die sich bei komplexen Platinenentwürfen ergeben. Allgemein erlaubt das serielle Abtasttesten die Beobachtung und die Steuerung isolierter Knoten, die mit seriell verbundenen Knoten verknüpft sind.
  • In einem komplexen System ist es wünschenswert, die Platinen in mehrere Abtastpfade aufzuteilen, auf die entweder individuell oder in Verbindung mit einem weiteren zugegriffen werden kann. Um hierbei Zugriff auf einen der Abtastpfade in jedem Platinenentwurf zu erhalten, benötigt der primäre Busmaster eine Anzahl von Ausgangssignalen, die gleich der Summe aller Abtastpfade jeder Platine im System ist. In einem System mit N Platinenentwürfen, bei dem jede Platine m auswählbare Abtastpfade aufweist, muß z. B. der primäre Busma ster eine Anzahl von Ausgangssignalen gleich mN aufweisen. Bei einem System mit 20 Platinen, von denen jede jeweils fünf einzeln auswählbare Abtastpfade aufweist, erfordert somit die Gesamtzahl der Ausgangssignale, die vom primären Busmaster benötigt werden, 100 IS-Gehäuseanschlußstifte, gemeinsam mit zusätzlichen Anschlußstiften für Takt- und Daten- Eingangs/Ausgangs-Signalen.
  • Ferner sorgen Systeme des Standes der Technik nicht für ein inhärent fehlertolerantes Abtastpfadnetzschema. Wenn somit eine Unterbrechungs- oder eine Kurzschlußfehlerbedingung auf einem der Abtastpfade auftritt, wird der Betrieb des gesamten Systemabtastpfades beeinträchtigt.
  • Ein weiteres Problem, das mit dem Stand der Technik einhergeht, ist, daß nicht vorgesehen ist, entweder einer primären oder einer entfernten Testbusmastervorrichtung zu ermöglichen, Daten auszuwählen und durch irgendeinen der sekundären Abtastpfade zu schieben.
  • Somit entstand in der Industrie Bedarf an der Schaffung einer Vorrichtung, die sekundäre Abtastpfade auf einem primären Abtastpfad selektieren oder deselektieren kann, um die Gesamtlänge des primären Abtastpfades für eine bestimmte Abtastoperation anzupassen. Ferner sollte die Vorrichtung eine Fehlertoleranz und die Fähigkeit zum Auswählen primärer und entfernter Busmaster aufweisen.
  • In IEEE Transactions on Industrial Electronics, Bd. 36, Nr. 2, Mai 1989, S. 231-240, befindet sich ein Dokument mit dem Titel "A universal test and maintainance controller for modules and boards", in dem eine Teststeuervorrichtung MMC beschrieben ist, wobei in einem prüfbaren System mehrere dieser Steuervorrichtungen verwendet werden, die jeweils in den prüfbaren Modulen des Systems enthalten sind. Die MMCs unterscheiden sich in den Testprogrammen, die sie ausführen und die von den Chips abhängen, die in den jeweiligen Modulen enthalten sind. Jede MMC besitzt einen Prozessor mit zugehörigem Speicher und überträgt Testdaten zu den Chips und empfängt die Ergebnisse von diesen sowohl für lokale als auch für systemweite Tests.
  • In Proceedings of the First European Test Conference, Paris, 12.-14. April, 1989, S. 112-118, befindet sich ein Dokument mit dem Titel "Design and implementation of a hierarchical testable architecture using the boundary scan standard". Dieses Dokument beschreibt eine Boundary-Scan-Testschaltung die einen wahlweise betreibbaren Umleitungspfad enthält, der ermöglicht, Testdaten und Ergebnisse um einen bestimmten Abschnitt des Boundary-Scan-Testpfades herumzuleiten.
  • [Aufgabe der Erfindung]
  • Gemäß einem ersten Aspekt der vorliegenden Erfindung wird eine Serienabtast-Testschaltungsanordnung geschaffen, mit mehreren im voraus definierten Schaltungen, wovon jede mehrere Sekundärabtastpfade besitzt, wobei die Anordnung ferner enthält:
  • einen Testbus mit Steuer- und Datensignalleitungen, die an die im voraus definierten Schaltungen angeschlossen sind;
  • eine Testbus-Steuereinrichtung zum Senden und Empfangen von Signalen an die im voraus definierten Schaltungen bzw. von diesen auf dem Bus; und
  • mehrere Vorrichtungsauswahlmodule, die an entsprechende im voraus definierte Schaltungen angeschlossen sind und auf Signale auf den Steuer- und Datenleitungen ansprechen, um die Sekundärabtastpfade der im voraus definierten Schaltungen wahlweise mit einem Primärabtastpfad zu koppeln, so daß die Länge des Primärabtastpfades für eine gewünschte Serienabtast-Testoperation optimiert wird.
  • Gemäß einem zweiten Aspekt der vorliegenden Erfindung wird eine Serienabtast-Testschaltungsanordnung geschaffen, mit mehreren im voraus definierten Schaltungen, wovon jede mehrere Sekundärabtastpfade enthält, wobei die Anordnung ferner enthält:
  • einen Testbus zum Koppeln von Steuer- und Datensignalen an die im voraus definierten Schaltungen;
  • eine Testbus-Steuereinrichtung zum Senden und Empfangen von Signalen an die im voraus definierten Schaltungen bzw. von diesen auf dem Bus;
  • mehrere primäre Vorrichtungsauswahlmodule, die an entsprechende im voraus definierte Schaltungen angeschlossen sind und auf die Steuersignale ansprechen, um die Sekundärabtastpfade der im voraus definierten Schaltungen wahlweise mit einem Primärabtastpfad zu koppeln, so daß die Länge des Primärabtastpfades für eine gewünschte Serienabtast- Testoperation optimiert wird; und
  • mehrere sekundäre Vorrichtungsauswahlmodule, die an die primären Vorrichtungsauswahlmodule gekoppelt sind, wobei jedes der sekundären Vorrichtungsauswahlmodule so betrieben werden kann, daß es zugeordnete Pfade der Sekundärabtastpfade über die primären Vorrichtungsauswahlmodule wahlweise an den Primärabtastpfad koppelt.
  • Gemäß einem dritten Aspekt der vorliegenden Erfindung wird ein Verfahren zum Ausführen eines Serienabtast-Tests in einer Schaltungsanordnung mit mehreren im voraus definierten Schaltungen geschaffen, wovon jede mehrere Sekundärabtastpfade enthält, wobei das Verfahren die Schritte umfaßt:
  • Senden und Empfangen von Steuer- und Datensignalen auf einem Testbus an die im voraus definierten Schaltungen bzw. von diesen; und
  • wahlweises Koppeln einiger der Sekundärabtastpfade an einen Primärabtastpfad als Antwort auf die Steuer- und Datensignale, so daß die Länge des Primärabtastpfades für eine gewünschte Serienabtast-Testoperation optimiert wird.
  • Gemäß einem vierten Aspekt der vorliegenden Erfindung wird eine Serienabtast-Testschaltungsanordnung geschaffen, mit mehreren im voraus definierten Schaltungen, wovon jede mehrere Sekundärabtastpfade enthält, wobei die Anordnung ferner enthält:
  • einen primären Bus zum Transportieren von Steuerund Datensignalen an die im voraus definierten Schaltungen;
  • eine primäre Bussteuereinrichtung zum Senden von Signalen an den Bus und zum Empfangen von Signalen von dem Bus;
  • ein Vorrichtungsauswahlmodul, das einer der im voraus definierten Schaltungen zugeordnet ist und auf Steuersignale anspricht, um einen der Sekundärabtastpfade, die der einen im voraus definierten Schaltung zugeordnet sind, wahlweise an einen Primärabtastpfad zu koppeln, so daß die Länge des Abtastpfades für eine gewünschte Serienabtast- Testoperation optimiert wird; und
  • eine entfernte Bussteuereinrichtung, die dem Vorrichtungsauswahlmodul zugeordnet ist und so betrieben werden kann, daß sie an der zugeordneten im voraus definierten Schaltung unabhängig von der primären Bussteuereinrichtung einen Serienabtast-Test ausführt.
  • Die vorliegende Erfindung schafft den technischen Vorteil der Reduzierung der Zeitspanne, die erforderlich ist, um Daten über eine benutzerdefinierte Konfiguration von primären und ausgewählten sekundären Abtastpfaden abzutasten, da die seriellen Daten und Takte, die benötigt werden, um die Daten durch die nicht benötigten sekundären Abtastpfade zu schieben, beseitigt werden können. Die Fähigkeit zur Durchquerung einer Systemabtastpfadkonfiguration in der kürzest möglichen Zeitspanne führt zu einer Reduzierung der Gesamttestzeit des Systems, was sich in geringeren Systemtestkosten und Wartungskosten widerspiegelt. Ferner kann die vorliegende Erfindung in Verbindung mit dem von der IEEE vorgeschlagenen Norm- Testbus 1149.1 verwendet werden, der einen einzelnen TMS- Ausgangsstift verwendet, um die sekundären Abtastpfade auszuwählen. Somit kann der Testbus klein bleiben (mit einem Minimum von vier Leitungen), während die Anzahl der Sekundärabtastpfade groß ist.
  • Zusätzlich zur Beibehaltung einer minimalen Testschnittstelle zum getesteten System schaffen die Vorrichtungsauswahlmodule die Basis für ein inhärent fehlertolerantes Abtastpfadnetzschema. Die Pufferwirkung isoliert Fehler, die in einem oder mehreren der Abtastpfade der Vorrichtung auftreten können, so daß sie keinen nachteiligen Einfluß auf den primären Abtastpfad haben.
  • Die Schaltung zur Durchführung des Serienabtast-Tests der vorliegenden Erfindung enthält eine Primärbussteuervorrichtung zum Übertragen von Testsignalen auf einem Primärtestbus zu mehreren vordefinierten Schaltungen. Jede vordefinierte Schaltung enthält mehrere Sekundärabtastpfade, die wahlweise über Vorrichtungsauswahlmodule, die den entsprechenden vordefinierten Schaltungen zugeordnet sind, mit einem der Primärabtastpfade gekoppelt werden können. Entfernte Bussteuervorrichtungen, die den entsprechenden Vorrichtungsauswahlmodulen zugeordnet sind, können so betrieben werden, daß sie einen Serienabtast-Test mit der zugeordneten vordefinierten Schaltung unabhängig von der Primärbussteuervorrichtung durchführen können. Die vordefinierten Schaltungen umfassen typischerweise Schaltungsplatinen, die mit dem Primärbus gekoppelt sind; jedoch kann die Architektur der vorliegenden Erfindung verwendet werden, um z. B. unterschiedliche Schaltungen auf einem integrierten Schaltungsbaustein zu testen.
  • Die vorliegende Erfindung bietet den Vorteil, daß die entfernte Bussteuervorrichtung lokale Test- und Abtastoperationen auf Schaltungsebene handhaben kann, wodurch der Primärbussteuervorrichtung ermöglicht wird, Systemaufgaben höherer Ebene zu handhaben, wie z. B. Fehlerprotokollführung, Systemdiagnose und Kommunikation mit der Außenwelt. Ferner wird im Vergleich zum sequentiellen Durchlauf durch jedes lokale Teilsystem mittels der Primärbussteuervorrichtung die Systemtestzeit reduziert, da mehrere verteilte entfernte Busmaster gleichzeitig lokale Teilsystemtests durchführen können.
  • In einer bevorzugten Ausführungsform der vorliegenden Erfindung umfaßt die entfernte Bussteuervorrichtung einen Prozessor zum Ausführen eines in einem lokalen Speicher gespeicherten Testprogramms. Eine Testbussteuervorrichtung sendet und empfängt serielle Daten und Steuersignale auf einem Parallelbus, der mit der entfernten Bussteuerung und mit dessen zugehörigem Vorrichtungsauswahlmodul gekoppelt ist. Die Testbussteuervorrichtung enthält ein Flip-Flop, um einen Abtastumleitungspfad zur Verfügung zu stellen, wenn die entfernte Bussteuervorrichtung gesperrt ist.
  • In einer weiteren Ausführungsform der vorliegenden Erfindung können die entfernte Bussteuervorrichtung und das Vorrichtungsauswahlmodul wahlweise unter Verwendung von Dreizustands-Vorrichtungen vom Parallelbus getrennt werden. Ausgewählte Leitungen des Parallelbusses sind mit Pull-up- und Pull-down-Widerständen verbunden, die einen Identifizierungscode auf den Parallelbus legen, wenn weder die entfernte Bussteuervorrichtung noch das Vorrichtungsauswahlmodul Daten auf den Parallelbus ausgeben. Die Primärbussteuervorrichtung und die entfernte Bussteuervorrichtung können über den Parallelbus und über eine Unterbrechungsschaltung kommunizieren, die zwischen den beiden Steuervorrichtungen angeschlossen ist.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Für ein vollständigeres Verständnis der vorliegenden Erfindung und ihrer Vorteile wird im folgenden auf die folgenden Beschreibungen in Verbindung mit den beigefügten Zeichnungen Bezug genommen; in welchen:
  • Fig. 1 ein Blockschaltbild einer Abtastpfadarchitektur auf Systemebene zeigt;
  • Fig. 2 ein Blockschaltbild eines Vorrichtungsauswahlmoduls zeigt;
  • Fig. 3 ein Blockschaltbild eines Datenregisters (D-REG) des Vorrichtungsauswahlmoduls zeigt;
  • Fig. 4 ein Schaltbild der TMS-Auswahlschaltung des Vorrichtungsauswahlmoduls zeigt;
  • Fig. 5 ein Schaltbild eines Multiplexers zeigt, der im Vorrichtungsauswahlmodul verwendet wird;
  • Fig. 6 ein Blockschaltbild einer typischen Platinenebenenimplementierung des Vorrichtungsauswahlmoduls zeigt, das in Verbindung sowohl mit primären als auch entfernten Busmastern verwendet wird;
  • Fig. 7a-c ein Blockschaltbild des lokalen Kommunikationspfades zwischen dem Primärbusmaster und dem entfernten Busmaster gemeinsam mit lokalen Quittungsprotokollen zwischen diesen zeigen;
  • Fig. 8a-c ein Blockschaltbild des globalen Kommunikationspfades zwischen dem Primärbusmaster und dem entfernten Busmaster und die globalen Quittungsprotokolle zwischen diesen zeigen;
  • Fig. 9 ein Blockschaltbild der vertikalen und horizontalen Erweiterung der Auswahl des Sekundärabtastpfades unter Verwendung mehrerer Vorrichtungsauswahlmodule zeigt;
  • Fig. 10 ein Blockschaltbild des Primärbusmasters der vorliegenden Erfindung zeigt;
  • Fig. 11 ein Blockschaltbild der Primärtestbussteuervorrichtung des Testbusmasters zeigt;
  • Fig. 12 ein Blockschaltbild des entfernten Busmasters der vorliegenden Erfindung zeigt; und
  • Fig. 13 ein Blockschaltbild der entfernten Testbussteuervorrichtung des entfernten Masters zeigt.
  • GENAUE BESCHREIBUNG DER ERFINDUNG
  • Die bevorzugte Ausführungsform der vorliegenden Erfindung wird am besten verstanden mit Bezug auf die Fig. 1 bis 9 der Zeichnungen, wobei ähnliche Bezugszeichen für ähnliche und entsprechende Teile der verschiedenen Zeichnungen verwendet werden.
  • Fig. 1 zeigt ein Blockschaltbild einer Abtastpfadarchitektur auf Systemebene. Ein Primärbusmaster 12 ist mit einem Testbus 14 mit vier Testbussignalen verbunden: ein Testtaktsignal (TCK) zum Takten serieller Daten durch einen Abtastpfad, ein Testmodusauswahlsignal (TMS) zur Test- und Abtaststeuerung, ein Testdateneingangssignal (TDI) zum Eingeben serieller Daten in einen Abtastpfad, sowie ein Testdatenausgangssignal (TDO) zum Ausgeben serieller Daten von einem Abtastpfad. Der Testbus 14 ist mit mehreren Schaltungsplatinen verbunden, von denen zwei 16a-b gezeigt sind. Jede Schaltungsplatine enthält ein entsprechendes Vorrichtungsauswahlmodul (DSM) 18a-b. Der TDO-Ausgang des Primärbusmasters 12 ist mit dem TDI-Eingang des ersten DSM 18a verbunden. Der TDO-Ausgang des DSM 18a ist mit dem TDI-Eingang des DSM der nächsten Platine am Bus verbunden. Mit anderen Worten, die DSMs 18 der jeweiligen Platinen sind kettenartig über ihre TDI- und TDO-Anschlüsse verbunden. Der TDO des DSM 18b der letzten Platine in der Kette ist mit dem TDI-Eingangssignal des Testbusses 14 verbunden. Das TCK-Signal des Testbusses 14 ist mit dem DSM 18 jeder Platine verbunden, ebenso wie das TMS-Signal.
  • Das DSM 18 jeder Platine gibt ein Vorrichtungstestdatenausgangssignal (DTDO) an mehrere Teilsysteme oder "Sekundärabtastpfade" aus. Die einzelnen Abtastpfade jeder Platine sind mit PATH1 bis PATHm bezeichnet. Jeder der Sekundärabtastpfade PATH1-m gibt ein Signal aus, das mit dem Vorrichtungstestdateneingang (DTDI) des DSM 18 der entsprechenden Platine verbunden ist. Das DSM 18 gibt ferner ein Vorrichtungstesttaktsignal (DTCK) aus, das parallel zu den jeweiligen Sekundärabtastpfaden angeschlossen ist und gibt mehrere Vorrichtungstestmodusauswahlsignale (DTMS) aus, die jeweils mit einem entsprechenden Sekundärabtastpfad verbunden sind. Mit anderen Worten, DTMS(1) ist mit PATH1 verbunden, während DTMS(m) mit PATHm verbunden ist.
  • In der bevorzugten Ausführungsform ist der Testbus von Fig. 1 kompatibel mit der IEEE-Norm 1149.1 1989/D3 "IEEE Standard Access Port and Boundary Scan Architecture".
  • Im Betrieb können die DSMs 18 der jeweiligen Platinen 16 vom Primärbusmaster 12 konfiguriert werden, um einen der Abtastpfade (1 bis m) auf deren entsprechenden Platinen auszuwählen oder um die Sekundärabtastpfade vollständig zu umgehen. Durch Selektieren oder Deselektieren der Sekundärabtastpfade auf dem Primärabtastpfad ist es möglich, die Gesamtlänge des Primärabtastpfades so anzupassen, daß er nur die erforderlichen Sekundärabtastpfade für eine bestimmte Abtastoperation enthält. Diese Fähigkeit führt zu einer Verkürzung der Zeitspanne, die zum Abtasten von Daten über eine benutzerspezifizierte Konfiguration der primären und ausgewählten sekundären Abtastpfade erforderlich ist, da die seriellen Daten und Takte, die erforderlich sind, um die Daten durch nicht benötigte Sekundärabtastpfade zu schieben, weggelassen werden können. Die Möglichkeit zur Durchquerung einer Systemabtastpfadkonfiguration in der kürzest möglichen Zeitspanne führt zu einer Verkürzung der Gesamttestzeit des Systems, was sich in niedrigeren Systemtestkosten und Wartungs kosten widerspiegelt.
  • Wenn ein Sekundärabtastpfad ausgewählt ist, wird der Primärabtastpfad vom TDO-Ausgang des Primärbusmasters 12 zum TDI-Eingang des DSM 18, über den DSM 18 zu dessen DTDO- Ausgang, über den ausgewählten Vorrichtungsabtastpfad und zurück zum DSM 18 über den DTDI-Eingang des DSM, über den DSM zum TDO-Ausgang und zurück zum TDI-Eingang des Primärbusmasters 12 geleitet. Wenn kein Vorrichtungsabtastpfad ausgewählt ist, wird der Primärabtastpfad vom TDO-Ausgang des Primärbusmasters 12 zum TDI-Eingang eines DSM 18, über den DSM 18 zu dessen TDO-Ausgang und zurück zum TDI-Eingang des Primärbusmasters 12 geleitet.
  • Durch Verwenden der DSMs 18 für den Entwurf der Systemabtastpfadarchitektur, wie in Fig. 1 gezeigt, kann ein Primärbusmaster 12 mit nur einem einzigen TMS-Ausgangssignal Zugriff auf jeden Abtastpfad (PATH 1, 2, ... m) jedes Platinenentwurfs (1, 2, ... N) im System erhalten. Dies ist möglich, da die DSMs 18 interne Schalter enthalten, die durch eine Anweisung gesetzt werden können, die vom Primärbusmaster 12 in ein individuelles DSM 18 geschoben wird, um das primäre TMS- Eingangssignal über eines der DTMS-Ausgangssignale (DTMS1, DTMS2, ... DTMSn) mit einem der auswählbaren Vorrichtungsabtastpfade zu koppeln. Dies führt zu einem Abtastpfadauswahlsystem, das nur einen einzigen TMS-Ausgangsstift der Primärbusmaster-IC und ein minimales Systemtestschnittstellenkabel mit vier Leitungen und eine Anschlußbusbreite zum Aufnehmen der IEEE-Normtestbussignale TCK, TMS, TDI und TDO benötigt.
  • Zusätzlich zu ihrer Fähigkeit, eine minimale Testschnittstelle für das getestete System zu erhalten, schaffen die DSMs 18 die Basis für ein inhärent fehlertolerantes Abtastpfadnetzschema. In Fig. 1 wird deutlich, daß die DSMs 18 alle Signale zwischen den primären und auswählbaren sekundären Abtastpfaden puffern. Diese Pufferwirkung isoliert Fehler, die auf einem oder mehreren der Abtastpfade der Vorrichtungen auftreten können, so daß sie keine nachteilige Auswirkung auf den Primärabtastpfad haben.
  • Wenn z. B. auf irgendeinem der Sekundärabtastpfad-Ausgangssignale (DTMS, DTCK, DTDI oder DTDO) eine Unterbrechungs- oder Massekurzschlußfehlerbedingung auftritt, wird das Schieben der seriellen Daten in den Sekundärabtastpfad verhindert. Fehler dieser Art können toleriert werden, bis sie repariert werden, indem einfach die fehlerhafte Platine vom Primärabtastpfad deselektiert wird, so daß der Primärabtastpfad nur durch das DSM vom TDI-Eingang zum TDO-Ausgang verläuft. Auf diese Weise wird der fehlerhafte Abschnitt im Abtastpfadnetz des Systems wirksam umgangen, so daß der Abtastzugriff auf andere Abtastpfade im System erhalten bleibt.
  • Ein weiterer Vorteil des DSM 18 ist, daß es mit einer Doppelanschluß-Testbusschnittstelle versehen sein kann, die entweder einer primären oder einer entfernten Testbusmastervorrichtung erlaubt, Daten auszuwählen und durch irgendeinen seiner Sekundärabtastpfade zu schieben. Um das nützliche Umschalten der Testbussteuerung zwischen primären und entfernten Busmastern sowie die Übertragung von Daten und Steuersignalen zu erleichtern, kann das DSM Unterbrechungsanschlußstifte und einen bidirektionalen Datenbus enthalten. Ferner wurde ein spezielles Kommunikationsprotokoll definiert, das eine einfache und effiziente Übertragung von Informationen zwischen primären und entfernten Testbusmastern ermöglicht. Dieser Aspekt der Erfindung wird in Verbindung mit den Fig. 6-9 genauer beschrieben.
  • Es ist zu beachten, daß die Erfindung, obwohl sie hier in Verbindung mit einem Testbus beschrieben ist, der mit mehreren Platinen verbunden ist, in Verbindung mit irgendwelchen vordefinierten Schaltungen verwendet werden kann, die hierdurch definierte Abtastpfade aufweisen. Zum Beispiel können die von den Platinen 16a-b definierten Schaltungen auf einer einzigen integrierten Schaltung ausgebildet sein, gemeinsam mit den DSMs 18, dem Testbus 14 und dem Primärbusmaster 12.
  • Fig. 2 zeigt ein Blockschaltbild der Architektur des DSM 18. Das DSM 18 umfaßt zwei Testanschlüsse 20 und 22. Der Primärtestanschluß 20 ist mit den Signalen TMS und TCK des Testbusses 14 gemeinsam mit einem externen Testrücksetzsignaleingang (TRSTZ) für Initialisierungszwecke verbunden. Die Signale TMS, TCK und TRSTZ werden über Puffer 24 in den Primärtestanschluß 20 eingegeben. Ein Testanschlußbus 26 ist mit einem Befehlsregister (I-REG) 28, einem Datenregister (D-REG) 30, einem Auswahlanschluß eines ersten Multiplexers (MUX1) 32 und dem Freigabeanschluß eines Dreizustands-Puffers 34 verbunden.
  • DSM-Architektur
  • Das I-REG 28 ist über die Signalleitung 36 mit dem D-REG 30 verbunden. Das D-REG 30 und das I-REG 28 geben über Signalleitungen 38 bzw. 40 Signale an den ersten Multiplexer 32 aus. Der Ausgang des ersten Multiplexers 32 wird über den Dreizustands-Puffer 34 zum TDO-Signal des DSM weitergeleiüet.
  • Das D-REG 30 gibt einen Steuerbus 42 aus, der mit den Freigabeanschlüssen der Dreizustands-Puffer 44, die die DTMS- Signale ausgeben, dem Freigabeanschluß eines Dreizustands- Puffers 46, der das DTDO-Signal ausgibt, dem entfernten Testanschluß 22, dem Auswahlanschluß eines zweiten Multiplexers (MUX2) 48, dem Freigabeanschluß eines Dreizustands- Puffers 50, der das DCO-Signal (Vorrichtungszustandsausgang) ausgibt, dem Freigabeanschluß eines Dreizustands-Puffers 52, der das DTCK-Signal ausgibt, sowie mit dem Eingang eines UND- Gatters 54 verbunden ist. Das TRSTZ-Signal ist mit dem anderen Eingang des UND-Gatters 54 verbunden; der Ausgang des UND-Gatters 54 ist über den Puffer 56 mit dem DTRSTZ-Signal gekoppelt. Das TCK-Signal ist mit dem Eingang des Puffers 52 verbunden. Der Steuerbus 42 ist ferner mit dem Auswahlanschluß eines dritten Multiplexers (MUX3) 58 und mit dem Auswahlanschluß eines vierten Multiplexers (MUX4) 60 verbunden.
  • Die Signale DTDI, TDI, MCI und DCI werden über Puffer 59 in das DSM 18 eingegeben. Das TDI-Signal ist ferner mit dem MUX3 58 verbunden. Das MCI-Signal ist mit einem invertieren den Eingang eines NICHT-UND-Gatters 62 und über den Puffer 64 mit dem MCO-Ausgang verbunden. Das DCI-Signal ist mit einem Eingang des NICHT-UND-Gatters 62 und mit dem Eingang des MUX4 60 verbunden. Das DCI-Signal ist ferner direkt mit dem D-REG 30 verbunden. Der Steuerbus 42 ist mit dem dritten Eingang des NICHT-UND-Gatters 62 verbunden, dessen Ausgang mit dem Freigabeanschluß eines Dreizustands-Puffers 66 verbunden ist. Die Signalleitung 68 vom D-REG 30 ist mit einem zweiten Eingang des MUX4 60 und mit dem Eingang des Dreizustands-Puffers 66 verbunden. Der Ausgang des Dreizustands Puffers 66 ist mit dem Signalbus ID1-8 und über den Puffer 68 mit dem D-REG verbunden. Der Ausgang des MUX4 ist über den Dreizustands-Puffer 50 mit dem DCO-Ausgang verbunden. Die Signalleitung 70 wird vom D-REG 30 an den zweiten Eingang des MUX3 58 ausgegeben. Der Ausgang des MUX3 58 ist über den Puffer 46 mit dem DTO-Signal verbunden. Das D-REG 30 ist über die Signalleitung 72 mit dem entfernten Testanschluß 22 verbunden. Das D-REG 30 ist über die Signalleitung 76 mit einer TMS-Auswahlschaltung 74 verbunden. Das TCK-Signal ist über die Signalleitung 78 mit dem entfernten Testanschluß 22 verbunden. Das TMS-Signal ist über die Signalleitung 80 mit der TMS-Auswahlschaltung 74 verbunden. Das OTMS-Signal wird in die TMS-Schaltung 74 und über den Puffer 82 in den Ferntestanschluß 22 eingegeben. Die TMS-Schaltung 74 gibt über die Puffer 44 mehrere DTMS-Signale (DTMSI-4) aus. Die Signale DTDI und TDI sind mit den Eingängen des MUX2 48 verbunden, dessen Ausgang über die Signalleitung 60 mit dem D-REG 30 und dem I-REG 28 verbunden ist. Das DTDI-Signal ist ferner direkt mit dem D-REG 30 verbunden.
  • Die Grundarchitektur stimmt mit der verallgemeinerten Architektur der vorgeschlagenen IEEE-Norm P1149.1 überein, da sie einen 4-Draht-Testbuseingang (TCK, TMS, TDI, TDO) besitzt und parallelen Zugriff auf ein internes Befehlsregister (I-REG 28) und ein Datenregister (D-REG 30) bietet. Wenn auf dem 4- Draht-Testbus ein Steuersignal in den Primärtestanschluß 20 eingegeben wird, antwortet der Primärtestanschluß 20, um Daten vom TDI-Eingang entweder durch das I-REG oder das D-REG zum TDO-Ausgang zu schieben.
  • Primärtestanschluß 20
  • Der Primärtestanschluß 20 ist eine Steuervorrichtung, die eine externe Eingabe von den Eingangssignalen TCK und TMS des Primärabtastpfades empfängt. Sie empfängt ferner eine Eingabe von einem externen Testrücksetzeingang (TRSTZ) zu Initialisierungszwecken. Der Primärtestanschluß 20 gibt über den Bus 26 ein Steuersignal aus, um Daten zu laden und entweder durch das I-REG 28 oder durch eines der Schieberegister im D-REG 30 zu schieben (siehe Fig. 3). Wenn das Steuersignal zum Laden und Verschieben von Daten ausgegeben wird, schiebt der ausgewählte Pfad, das I-REG 28 oder das D-REG 30 Daten vom seriellen Ausgang 60 des MUX2 48 zum TDO-Ausgang des DSM.
  • Ferntestanschluß 22
  • Der Ferntestanschluß 22 ist eine Steuervorrichtung, die eine externe Eingabe von einem entfernten Busmaster über den optionalen TMS-Eingang (OTMS) und vom primären TCK-Eingang empfängt. Sie empfängt ferner ein internes Steuereingangssignal vom D-REG 30 über den Bus 42, um ihre Operation freizugeben oder zu sperren. Wenn sie freigegeben ist, antwortet der Ferntestanschluß 22 auf das OTMS-Eingangssignal und gibt über den Bus 72 ein Steuersignal aus, um Daten vom DTDI- Eingangssignal über das Auswahlregister im D-REG 30 (siehe Fig. 3) zum DTDO-Ausgangssignal über den MUX3 58 und die D- REG-Ausgangssignalleitung 70 zu schieben.
  • I-REG 28
  • Das I-REG 28 ist ein Schieberegister, das eine Serie von Abtastzellen umfaßt. Das I-REG 28 wird verwendet, um Befehle zu speichern, die vom DSM 18 ausgeführt werden. Das I-REG 28 empfängt ein Steuereingangssignal vom Primärtestanschluß 20 über den Bus 26 sowie ein serielles Dateneingangssignal vom MUX2 48 über die Signalleitung 60. Das I-REG gibt über den Bus 36 ein Steuersignal an das D-REG 30 und serielle Daten über die Signalleitung 40 an den MUX1 aus.
  • D-REG 30
  • Das D-REG 30 umfaßt vier interne Abtastpfade, die parallel zwischen dem serielle Datenausgang vom MUX2 48 und der seriellen Dateneingangsleitung 38 des MUX1 32 angeordnet sind (siehe Fig. 3). Das D-REG 30 empfängt ein Eingangssignal vom Primärtestanschluß 20 über den Bus 26, vom Ferntestanschluß 22 über den Bus 72, vom I-REG 28 über den Bus 36, externe Identifikationseingangssignale (ID1-8) vom Bus über die Puffer 68, ein serielles Dateneingangssignal vom DTDI-Signal und vom MUX2-Ausgangssignal 60 sowie ein externes Vorrichtungszustandseingangssignal (DCI). Das D-REG 30 gibt ein Steuersignal auf dem Bus 76 an die TMS-Auswahlschaltung 74 und vom Bus 42 zu den MUX2 48, MUX3 58 und MUX4 50, an das UND-Gatter 54, das NICHT-UND-Gatter 62 und an die Dreizustands-Ausgangspuffer 44, 46, 50 und 52 aus. Das D-REG 30 gibt Daten- und Statussignale auf dem Bus 68 an die ID1-8- Ausgangspuffer 66 bzw. den MUX4 60 aus. Das D-REG gibt sen elle Daten über die Signalleitung 70 an den MUX3 58 aus.
  • In Fig. 3 ist eine detaillierte Ansicht des D-REG 30 gezeigt. Das D-REG 30 umfaßt vier separate Abtastpfadregister: das Auswahlregister 84, das Zählerregister 86, das Steuerregister 88 sowie das Umleitungsregister 90. Diese Register sind parallel zwischen dem seriellen Dateneingangssignal 60 vom MUX2 48 und dem seriellen Datenausgangssignal 38 eines fünften Multiplexers (MUX5) 94 angeordnet. Das Steuereingangssignal vom I-REG 28 auf dem Bus 36 wählt den seriellen Ausgang von einem der vier Register aus, um ihn mit dem Ausgangssignal 38 des MUX5 94 zu koppeln. Das Steuereingangssignal vom Primärtestanschluß 20 auf dem Bus 26 wählt eines der vier Register aus, um Daten vom seriellen Eingang 60 zu laden und über den MUX5 94 zum seriellen Ausgang 38 zu schieben. Ein zusätzlicher Steuereingangsbus 72 vom Ferntestanschluß 22 wird in das D-REG 30 eingegeben und verwendet, um Daten durch das Auswahlregister 84 zu schieben, wenn einem entfernten Testbusmaster ermöglicht wird, auf die Vorrichtungsabtastpfade über DTMS1-4 DTDI und die DTDO- Vorrichtungsabtastpfadsignale zuzugreifen. Die Entscheidung, ob der Ferntestanschluß 22 freigegeben wird, um auf die Vorrichtungsabtastpfade zuzugreifen, wird vom Primärtestbusmaster getroffen.
  • D-REG-Umleitungsregister-Abtastpfad
  • Der Zweck des Umleitungsregisters 90 ist, einen abgekürzten Abtastpfad durch das D-REG 30 zu schaffen. Wenn der Umleitungsabtastpfad ausgewählt ist, koppelt er das serielle Dateneingangssignal 60 über eine einzige Abtastzelle mit dem seriellen Datenausgang 38 des MUX5 94. Dieses Umleitungsmerkmal ist konsistent zur vorgeschlagenen IEEE-Norm P1149.1. Das Steuersignal zum Schieben der Daten durch diesen Abtastpfad kommt vom Primärbusmaster 12 über den Primärtestanschluß 20 und den Testanschlußbus 26.
  • D-REG-Steuerregister-Abtastpfad
  • Der Zweck des Steuerregisters 88 ist, einen Speicher für Steuerbits zu schaffen, die verwendet werden, um: (1) den Betriebsmodus des Zählerregisters zu setzen, (2) den Ferntestanschluß 22 freizugeben oder zu sperren, um Daten durch das Auswahlregister 84 und die Vorrichtungsabtastpfade zu schieben, (3) den seriellen Dateneingang (entweder vom Bus 60 oder vom DTDI-Signal) des Auswahlregisters 84 über einen sechsten Multiplexer (MUX6) 96 auszuwählen, (4) auszuwählen, welcher Eingang des MUX4 (siehe Fig. 2) mit dem DCO- Ausgangssignal zu koppeln ist, (5) die Dreizustands-Bedingung der Vorrichtungsausgänge (DTMS1-4, DTDO, DCO und DTCK) zu steuern, sowie (6) eine Rücksetzbedingung auf dem Vorrichtungsrücksetzausgangssignal DTRSTZ über das UND-Gatter 54 auszugeben. Das Steuersignal zum Schieben von Daten durch diesen Abtastweg kommt vom Primärbusmaster über den Primärtestanschluß 20 und den Bus 26.
  • D-REG-Zählerabtastpfad
  • Der Zweck des Zählerregisters 86 ist, eine programmierbare Zählerfunktion zu schaffen, die verwendet wird, um die Anzahl der vom DCI-Eingangssignal empfangenen Eingaben zu zählen. Zusätzlich zu seiner Zählfähigkeit kann der Zähler 86 verwendet werden, um Daten auf dem bidirektionalen Bus ID1-8 einzugeben und auszugeben. Im Dateneingangsmodus kann der Primärtestanschluß 20 ein Steuersignal über den Bus 26 ausgeben, um den Zähler 86 zu veranlassen, den externen Dateneingang auf dem Bus ID1-8 zu lesen und ihn zur Untersuchung herauszuschieben. Im Ausgangsmodus kann der Zähler Daten ausgeben, die vom Primärabtastpfad über den Primärtestanschluß 20 hineingeschoben worden sind, vom Bus ID1-8 über den internen Bus 68 an eine externe Vorrichtung wie z. B. eine entfernte Testbusmaster-IC ausgeben.
  • Die Zählerfunktion kann so programmiert werden, daß sie aufwärts oder abwärts zählt. Im Abwärtszählmodus kann der Zähler so eingestellt werden, daß er das Zählen anhält, wenn ein Zählwert von Null erreicht ist, oder so, daß er über den Zählwert 0 hinaus weiterzählt. Der Abwärtszählmodus wird verwendet, um von einer vorgegebenen erwarteten Anzahl von DCI-Eingangssignalen abwärts zu zählen. Wenn der Zählwert erreicht ist, kann der Zähler ein Signal auf dem DCO-Ausgang über den MUX4 60 und den Bus 68 (Fig. 2) ausgeben, um dem Testbusmaster 12 anzuzeigen, daß der Zählwert 0 erreicht worden ist.
  • Im Aufwärtszählmodus kann der Zähler verwendet werden, um eine unbekannte Anzahl von DCI-Eingangsimpulsen zu zählen. Am Ende der Aufwärtszähloperation kann der Primärbusmaster den Zählwert herausschieben, um die Anzahl der gezählten DCI- Eingangsimpulse zu ermitteln. Wenn ein maximaler Aufwärtszählwert erreicht wird, kann der Zähler ein Signal auf dem DCO-Ausgang über den MUX4 60 und den Bus 68 ausgeben, um dem Primärbusmaster 12 anzuzeigen, daß ein Maximalzählwert erreicht worden ist. Der Testbusmaster 12 kann aufgrund des Empfangens eines Maximalaufwärtszähl-Eingangssignals einen internen Software- oder Hardwarezähler inkrementieren, um die Anzahl der Maximalaufwärtszählsignale aufzuzeichnen, die das DSM ausgegeben hat. Dieser Vorgang kann verwendet werden, um den Zähler im DSM mit einem größeren Zähler im Primärbusmaster zu kaskadieren, um den Aufwärtszählbereich zu erweitern. Der Zähler kann so eingestellt werden, daß er entweder mit der steigenden oder mit der fallenden Flanke des DCI-Eingangs ausgelöst wird. Das Steuersignal zur Auswahl der Auslöse Flanke des Zählers kommt vom Steuerregister 68 über den Bus 42.
  • D-REG-Auswahlabtastpfad
  • Das Auswahlregister 84 enthält die Steuerbits, die verwendet werden, um die Ausgangsbedingung der vier DTMS-Ausgänge (in der dargestellten Ausführungsform DTMS1-4) von der TMS- Auswahlschaltung 74 auszuwählen. Das Auswahlregister 84 besitzt zwei Steuerbits für jedes Ausgangssignal DTMS1-4, um zu ermöglichen, daß jeder Ausgang auf einen von vier möglichen Ausgangsmodi eingestellt wird. Außerdem besitzt das Auswahlregister einen Fehlerdetektionslogikabschnitt, um sicherzustellen, daß die Steuerbiteinstellungen, die in das Auswahlregister eingelesen werden, zu einem Zeitpunkt nur ein DTMS-Ausgangssignal freigeben, um Daten durch einen ausgewählten Vorrichtungsabtastpfad zu schieben. Der Ausgang dieser Fehlerdetektionslogik wird über den Bus 76 in die TMS- Auswahlschaltung des Auswahlregisters eingegeben.
  • Normalerweise empfängt das Auswahlregister 84 ein Steuersignal vom Primärtestbusmaster 12 über den Primärtestanschluß 20 und den Bus 26, um Daten zu laden und zu schieben. Das Auswahlregister kann jedoch ferner ein Steuersignal zum Laden und Verschieben von Daten von einem entfernten Busmaster über den Ferntestanschluß 22 und den Bus 72 empfangen. Der Primärbusmaster kann einen entfernten Busmaster auswählen, um auf das Auswahlregister zuzugreifen, indem er die Steuerbits im Steuerregister setzt. Wenn ein entfernter Busmaster ausgewählt ist, wird in das Auswahlregister 84 über einen siebten Multiplexer (MUX7) 98 der Steuerbus 72 vom Ferntestanschluß 22 anstelle des Steuerbusses 26 vom Primärtestanschluß 20 eingegeben. Während des Zugriffs durch einen entfernten Busmaster werden serielle Daten vom DTDI-Eingangssignal in das Auswahlregister 84 eingegeben, wobei serielle Daten vom Auswahlregister 84 über die Signalleitung 70 zum MUX3 58 (Fig. 3) ausgegeben werden. Während ein entfernter Busmaster zur Steuerung des Auswahlregisters ausgewählt ist, kann der Primärbusmaster nicht auf das Auswahlregister zugreifen.
  • TMS-Auswahlschaltung
  • Wie in den Fig. 2 und 3 gezeigt, schafft die TMS-Auswahlschaltung (TMS-SEL) 74 die Umschalt-Schaltungsanordnung, die benötigt wird, um einen der Abtastpfade einer Vorrichtung mit dem Primärabtastpfad zu koppeln. Die TMS-SEL-Schaltung 74 empfängt ein Eingangssignal auf dem Bus 76 vom Auswahlregister 84, um den Ausgangszustand jedes der vier Ausgangssignale DTMS1-4 auszuwählen. Die TMS-SEL-Schaltung 74 empfängt ferner ein Eingangssignal vom Primärabtastpfadsignal TMS und vom optionalen TMS-(OTMS)-Signal. Während die TMS-SEL- Schaltung 74 ein Steuersignal für die vier Vorrichtungsabtastpfade über die Ausgangssignale DTMS1-4 ausgibt, kann eine beliebige Anzahl von DTMS-Ausgangssignalen in der TMS-SEL- Schaltung 74 implementiert sein, um auf zusätzliche sekundäre Vorrichtungsabtastpfade zuzugreifen.
  • In Fig. 4 ist ein Implementierungsbeispiel der TMS-SEL- Schaltung gezeigt. Die Schaltung umfaßt vier identisch konfigurierte 4:1-Multiplexer 100, 102, 104 und 106. Der Ausgang jedes Multiplexers treibt einen DTMS-Ausgang (1-4) über Dreizustands-Puffer 44 (Fig. 2). Jeder 4:1-Multiplexer 100 bis 106 empfängt dieselben vier Eingangssignale, einen logischen Hochpegeleingang, einen logischen Niedrigpegeleingang, das OTMS-Eingangssignal sowie das TMS-Eingangssignal. Jeder Multiplexer empfängt ein einzigartiges Paar von Steuerbiteingängen (CBXA und CBXB, wobei x den speziellen Multiplexer bezeichnet) vom Auswahlregister über den Bus 76. Jeder Multiplexerausgang wird in einen entsprechenden Dreizustands- Ausgangspuffer 44 eingegeben, um die Ausgangssignale DTMS1-4 für die Vorrichtungsabtastpfade zu treiben. Ein Dreizustands- Steuersignal für die Ausgangspuffer wird vom Steuerregister 88 über das Freigabesignal auf dem Bus 42 in den D-REG- Abschnitt eingegeben. Das Freigabeeingangssignal vom Bus 42 kann sowohl die Ausgänge DTMS1-4 als auch die Ausgänge DTDO und DTCK (siehe Fig. 2) in den hochohmigen Zustand versetzen, um einer weiteren Quelle, wie z. B. einer externen Testvorrichtung, zu erlauben, die an diese Ausgänge angeschlossenen Abtastpfade anzusteuern.
  • Die Steuerbitpaare (CBxA und CBxB) werden über ein entsprechendes Paar von UND-Gattern 116, 118, 120 und 122 in jeden Multiplexer 100-106 eingegeben. Jedes UND-Gatter-Paar 116-122 empfängt ferner ein Fehlereingangssignal mit aktivem Niedrigpegel vom Auswahlregister 84 über den Bus 76. Das Fehlereingangssignal wird verwendet, um die Multiplexerausgänge DTMS1- 4 auf einen logischen Hochpegel zu zwingen, wenn mehr als ein Paar der Steuerbiteingänge gesetzt ist, um mehr als einen Multiplexer auszuwählen und die Abtaststeuersignale OTMS oder TMS auszugeben. Da das DSM 18 zu einem Zeitpunkt nur auf einen Vorrichtungsabtastpfad zugreifen kann, verhindert dieses Fehlereingangssignal, daß das DSM mehr als einen Vorrichtungsabtastpfad auswählt, wenn die Steuerbits im Auswahlregister 84 falsch gesetzt sind.
  • Wenn die Steuerbiteingänge in einen der Multiplexer den logischen Hochpegeleingang auswählen, um ihn am Ausgang DTMSx auszugeben, wird der Abtastpfad, der mit dem Ausgangssignal DTMSx verbunden ist, in einen Testlogikrücksetzzustand versetzt, wobei der serielle Datenausgang vom Abtastpfad in einen hochohmigen Zustand versetzt wird. Im Testlogikrücksetzzustand können im Abtastpfad keine Abtast- oder Testoperationen ausgeführt werden. Der Testlogikrücksetzzustand ist einer der Zustände, die für einen Abtastpfad in der IEEE-Norm P1149.1 definiert sind.
  • Wenn die Steuerbiteingänge in einen der Multiplexer den logischen Niedrigpegeleingang auswählen, um diesen am Ausgang DTMSx auszugeben, wird der Abtastpfad, der mit dem Ausgangssignal DTMSx verbunden ist, in einen Leerlaufzustand versetzt, wobei der serielle Datenausgang des Abtastpfades in einen hochohmigen Zustand versetzt wird. Im Leerlaufzustand ist die Testlogik im Abtastpfad freigegeben, jedoch können keine Abtastoperationen ausgeführt werden. Der Leerlaufzustand ist einer der Zustände, die für einen Abtastzustand in der IEEE-Norm P1149.1 vorgeschlagen sind.
  • Wenn die Steuerbiteingänge in einen der Multiplexer 100-106 den TMS-Ausgang vom Primärabtastpfad auswählen, um diesen am Ausgang DTMSx auszugeben, führt der Abtastpfad, der mit dem Ausgangssignal DTMSx verbunden ist, die am TMS-Steuersignal eingegebene Abtastoperation durch. Wenn an DTMSx der TMS- Eingang ausgegeben wird, schiebt der Vorrichtungsabtastpfad Daten während jedes Taktausgangs DTCK aus dem DTDO-Ausgang des DSM über den Abtastpfad heraus zum DTDI-Eingang des DSM (Fig. 1). Während der Abtastoperationen ist der serielle Datenausgang des Abtastpfades aktiv, um Daten an den DTDI- Eingang des DSM 18 auszugeben. Während ein DTMSx die TMS- Steuersignale ausgibt, müssen alle anderen Ausgänge DTMSx entweder auf einen logischen Hochpegel oder einen logischen Niedrigpegel gesetzt sein. Die durchgeführte Abtastoperation ist konform zu dem Protokoll, das in der vorgeschlagenen IEEE-Norm P1149.1 zum Abtasten von Daten über einen Abtastpfad eingerichtet ist.
  • Wenn die Steuerbiteingänge in einen der Multiplexer den OTMS- Eingang einer externen Testbussteuerquelle auswählen, um diesen am Ausgang DTMSx auszugeben, führt der mit dem Ausgangssignal DTMSx verbundene Abtastpfad die auf dem OTMS- Steuersignal eingegebene Abtastoperation durch. Wenn der OTMS-Eingang am DTMSx ausgegeben wird, schiebt der Vorrichtungsabtastpfad Daten während jedes DTCK-Taktausgangs aus dem DTDO-Ausgang des DSM über den Abtastpfad zum DTDI-Eingang des DSM (Fig. 1). Während der Abtastoperationen ist der serielle Datenausgang des Abtastpfades aktiv, um Daten an den DTDI- Eingang des DSM auszugeben. Während ein DTMSx OTMS- Steuersignale ausgibt, müssen alle anderen Ausgänge DTMSx entweder auf einen logischen Hochpegel oder auf einen logischen Niedrigpegel gesetzt sein. Die durchgeführte Abtastoperation ist konform zu dem in der IEEE-Norm P1149.1 vorgeschlagenen Protokoll zum Abtasten von Daten über einen Abtastpfad.
  • DCO MUX4
  • In Fig. 5 ist ein Implementierungsbeispiel des DCO-Ausgangs über MUX4 gezeigt. MUX4 empfängt ein Steuersignal auf dem Bus 42 vom Steuerregister 88 des D-REG 30, um einen von fünf Eingängen auszuwählen und diesen am DCO-Ausgangssignalanschlußstift auszugeben. Während Herunterzähloperationen des Zählerregisters 86 des D-REG 30 kann der DCO-Ausgang den Minimalzählwert (MNCNT) des Zählers, dessen Komplement (MNCNTZ) oder den DCI-Eingang ausgeben, der den Zähler taktet. Während Aufwärtszähloperationen des Zählerregisters 86 kann der DCO-Ausgang den Maximalzählwert (MUXCNT) des Zählers, dessen Komplement (MUXCNTZ) oder den DCI-Eingang ausgeben, der den Zähler taktet.
  • ID1-8-Ausgangspuffersteuerungs-NICHT-UND-Gatter
  • Wie in Fig. 2 gezeigt, wird das NICHT-UND-Gatter 62 verwendet, um die Ausgangspuffer auf dem Bus ID1-8 freizugeben und Daten an eine externe Vorrichtung auszugeben. Normalerweise ist das NICHT-UND-Gatter 52 so eingestellt, daß die ID1-8- Busanschlußstifte so konfiguriert sind, daß sie nur Eingänge sind, so daß ein Identifizierungscode zu Identifizierungszwecken in das DSM eingegeben werden kann. Das NICHT-UND- Gatter 62 empfängt das vom MCI-Eingangssignal eingegebene Komplement, das DCI-Eingangssignal sowie ein Freigabeausgangssteuersignal vom Steuerregister 88 des D-REG 30 über den Bus 42. Das NICHT-UND-Gatter 62 gibt ein Dreizustands- Steuersignal an die Ausgangspuffer 66 der ID1-8- Busanschlußstifte aus. Wenn MCI auf Niedrigpegel liegt, DCI auf Hochpegel liegt und das Freigabesteuerbit auf Hochpegel liegt, sind die IDI1-8-Ausgangspuffer freigegeben, um die im Zählerregister 86 vorliegenden Daten an das D-REG 30 auszugeben.
  • DSM-BEFEHLE Zählerregister-Abtastbefehl
  • Während dieses Befehls ist das Zählerregister 86 des D-REG 30 vom Befehlsregisterausgangsbus 36 ausgewählt, um ein Steuersignal vom Primärtestanschluß 20 zu empfangen und Daten zu laden und anschließend vom seriellen Datenausgang von der MUX2-Signalleitung 60 zum TDO-Ausgang des DSM 18 zu schieben. Während der Ladeoperation lädt das Zählerregister 86 die auf dem ID1-8-Eingangsbus eingegebenen Daten. Dieser Befehl wird verwendet, um die auf dem ID1-8-Bus eingegebenen Daten zu lesen.
  • Zählerregister-Lesebefehl
  • Während dieses Befehls ist das Zählerregister 86 des D-REG 30 vom Befehlsregisterausgangsbus 36 ausgewählt, um ein Steuersignal vom Primärtestanschluß 20 zu empfangen und Daten zu laden und anschließend vom seriellen Datenausgang 60 des MUX2 48 zum TDO-Ausgang des DSM 18 zu schieben. Während der Ladeoperation verharrt das Zählerregister 86 in seinem aktuellen Zustand. Dieser Befehl wird verwendet, um den Zählwert im Zählerregister 86 zu lesen.
  • Auswahlregister-Abtastbefehl
  • Während dieses Befehls ist das Auswahlregister 84 des D-REG vom Befehlsregisterausgangsbus 36 ausgewählt, um ein Steuersignal vom Primärtestanschluß 20 zu empfangen und Daten zu laden und anschließend vom seriellen Datenausgang 60 des MUX2 48 zum TDO-Ausgang des DSM 18 zu schieben. Während der Ladeoperation verharrt das Auswahlregister 84 in seinem aktuellen Zustand. Dieser Befehl wird verwendet, um die in die TMS-SEL-Schaltung 74 eingegebenen DTMS-Steuerbits zu setzen, um den Ausgangsmodus der vier Ausgangssignale DTMS1-4 auszuwählen. Der Ausgangsbus 76 vom Auswahlregister wird während des Ladens und der Schiebeabtastoperation in seinem aktuellen Zustand gehalten. Nach der Abtastoperation werden die ausgewählten Registerausgänge auf dem Bus 76 mit den neuen ausgewählten Daten aktualisiert, die in das Auswahlregister geschoben worden sind. Auf diese Weise ändern sich die Steuereingänge CBxA und CBxB der Multiplexer 100, 102, 104 und 106 der TMS-Auswahlschaltung alle gleichzeitig und sind synchron zum TCK-Takteingang vom Testbus 14. Dies erlaubt eine synchrone Selektion und Deselektion der Vorrichtungsabtastpfade über die Ausgangssignale DTMS1-4.
  • Steuerregister-Abtastbefehl
  • Während dieses Befehls ist das Steuerregister 88 des D-REG 30 vom Befehlsregisterausgangsbus 36 ausgewählt, um ein Steuersignal vom Primärtestanschluß 20 zu empfangen und Daten zu laden und anschließend vom seriellen Datenausgang 60 des MUX2 48 zum TDO-Ausgang des DSM 18 zu schieben. Während der Ladeoperation verharrt das Steuerregister 84 in seinem aktuellen Zustand. Dieser Befehl wird verwendet, um die Steuerbits im Befehlsregister 88 zu setzen und das Zählerregister 86 in einen bestimmten Betriebsmodus zu versetzen. Ferner besitzt das Steuerregister 88 Steuerbits zum Ausgeben einer Rücksetzbedingung an die Vorrichtung auf dem DTRSTZ- Ausgangssignal und zum Versetzen der Vorrichtungsabtaststeuersignale DTMS1-4, DTCK, DTDO sowie des Vorrichtungszustandsausgangssignals (DCO) des DSM in einen hochohmigen Zustand. Außerdem kann das Steuerregister 88 verwendet werden, um den entfernten Testanschluß 22 freizugeben und über den Bus 72 auf das Auswahlregister 84 zuzugreifen, wenn am OTMS-Signal ein externes Steuersignal eingegeben wird. Der Ausgangsbus 68 des Steuerregisters wird während der Lade- und Abtastoperation in seinem aktuellen Zustand gehalten. Nach der Abtastoperation werden die Ausgänge des Busses 68 mit den neuen Steuerdaten aktualisiert, die in das Steuerregister geschoben worden sind. Auf diese Weise schalten alle Steuerausgänge gleichzeitig und sind synchron mit dem TCK- Eingangssignal auf dem Bus 14.
  • Zählerfreigabebefehl
  • Wenn dieser Befehl in das I-REG 28 geladen ist, wird das Zählerregister 86 freigegeben, um aufwärts oder abwärts zu zählen, was durch die Steuerbiteinstellung im Steuerregisterabtastpfad bestimmt wird. Der Zähler inkrementiert oder dekrementiert während jedes DCI-Eingangsimpulses, wenn er durch diesen Befehl freigegeben ist.
  • Umleitungsabtastbefehl
  • Während dieses Befehls ist das Umleitungsregister 90 im D-REG vom Befehlsregisterausgangsbus 36 ausgewählt, um ein Steuersignal vom Primärtestanschluß 20 zu empfangen und Daten zu laden und anschließend aus dem seriellen Datenausgang 60 des MUX2 48 zum TDO-Ausgang des DSM 18 zu schieben. Während der Ladeoperation ist das Umleitungsregisterbit auf einen logischen Niedrigpegel gesetzt. Dieser Befehl wird verwendet, um den Abtastpfad durch das D-REG 30 auf nur eine einzige Abtastzelle oder ein Flip-Flop zu verkürzen.
  • Beschreibung der Operation
  • In Fig. 6 ist ein typisches Implementierungsbeispiel einer DSM-IC auf Platinenebene gezeigt. In diesem Beispiel ist ein optionaler entfernter Busmaster 124 gezeigt, der auf dem Platinenentwurf gemeinsam mit dem DSM 18 vorhanden ist. Der entfernte Busmaster 124 zeigt die Doppelanschluß-Fähigkeit des DSM, die einem auf der Platine vorhandenen entfernten Busmaster 124 ermöglicht, anstelle des Primärbusmasters auf die Vorrichtungsabtastpfade für Abtast- und Testoperationen zuzugreifen. Ferner zeigt Fig. 6, wie eine lokalisierte Teststeuervorrichtung auf Platinenebene, wie der entfernte Busmaster und die Primärbusmastersteuervorrichtung, miteinander über die zwei Unterbrechungssignalpfade (DCI/DCO und MCI/MCO) und den bidirektionalen Bus ID1-8 kommunizieren können. Die Kommunikation über den Unterbrechungsbus und den bidirektionalen Bus erlaubt den primären und entfernten Busmastern 12 und 124, die Kommunikation aufrechtzuerhalten, wenn der entfernte Busmaster 124 die Test- oder Abtastoperation auf dem Platinenentwurf steuert. Wenn diese Kommunikationsverbindung nicht verfügbar wäre, würde das Weiterleiten von Daten, dem Status und dem Befehl zwischen den primären und entfernten Mastern verhindert, während der entfernte Busmaster die Vorrichtungsabtastpfade steuert.
  • Die Schaltung der Fig. 6 ist im wesentlichen die gleiche wie die Schaltung der Fig. 1, mit einigen Ausnahmen. Der DTDI- Eingang des DSM 18 ist mit dem TDO-Ausgang des entfernten Busmasters 124 verbunden. Der TDI-Eingang des entfernten Busmasters 124 ist mit den TDO-Ausgängen der Sekundärabtastpfade verbunden. Der entfernte Busmaster 124 gibt die Signale OTMS und DCI an das DSM 18 aus und empfängt die Signale DTMS1-4, MCO, DTCK und DTRSTZ vom DSM 18. Der Bus ID1-8 schafft eine bidirektionale Kommunikation zwischen dem entfernten Busmaster 124 und dem DSM 18. Der entfernte Busma- ster 124 empfängt ferner die DCI-Ausgänge von den Sekundärabtastpfaden.
  • Wie in Fig. 6 gezeigt, sind die Signale, die das DSM mit dem Primärabtastpfad verbinden, in drei Kategorien unterteilt; Steuersignale, Datensignale und Unterbrechungssignale. Die Steueranschlußstifte am Primärabtastpfad sind die Signale TCK, TMS und TRSTZ. Die Datenanschlußstifte am Primärabtastpfad sind der TDI-Eingang und der TDO-Ausgang. Die Unterbrechungsanschlußstifte des Primärabtastpfades sind der DCO- Ausgang (Vorrichtungszustandsausgang) und der MCI-Eingang (Masterzustandseingang).
  • In ähnlicher Weise.sind die Signale, die das DSM mit den Vorrichtungsabtastpfaden und dem entfernten Busmaster verbinden, in die drei selben Kategorien unterteilt; Steuersignale, Datensignale und Unterbrechungssignale. Die Steueranschlußstifte des Vorrichtungsabtastpfades sind die Signale DTCK, DTMS1-4 und DTRSTZ. Die Datenanschlußstifte der Vorrichtungsabtastpfade sind der DTDI-Eingang und die DTDO-Ausgänge. Die Unterbrechungsanschlußsti fte des Vorrichtungsabtastpfades sind der DCI-Eingang (Vorrichtungszustandseingang) und der MCO-Ausgang (Masterzustandsausgang).
  • Die Steuersignale TCK und TMS werden vom Primärbusmaster auf den Primärabtastpfad ausgegeben. Diese Signale werden in den Primärtestanschluß 20 des DSM (Fig. 2) eingegeben, um zu bewirken, daß serielle Daten vom Primärbusmaster über den DSM-Abtastpfad vom TDI-Eingang zum TDO-Ausgang und zurück zum Primärbusmaster geschoben werden. Die Steuersignale TCK und TRSTZ werden gepuffert und vorn DSM 18 über die Ausgänge DTCK und DTRSTZ ausgegeben, um die Vorrichtungsabtastpfadschaltungsanordnung zu steuern.
  • Wenn kein Vorrichtungsabtastpfad ausgewählt ist, gelangen die seriellen Daten über den TDI-Eingang in das DSM 18, laufen durch den MUX2 48 (Fig. 2) und das D-REG oder das I-REG, um aus dem TDO-Ausgang über den MUX1 32 ausgegeben zu werden. Falls nicht ausgewählt, werden die Vorrichtungsabtastpfade und der entfernte Busmaster von den durch den internen Abtastpfad des DSM abgetasteten Daten nicht nachteilig beeinflußt.
  • Wenn ein Vorrichtungsabtastpfad ausgewählt ist, gelangen die seriellen Daten über den TDI-Eingang in das DSM 18, durchlaufen den MUX3 58 (Fig. 2), um über den DTDO-Ausgang in den Vorrichtungsabtastpfad eingegeben zu werden. Die vom DTDO- Ausgang ausgegebenen seriellen Daten durchlaufen den ausgewählten Abtastpfad und anschließend den entfernten Busmaster, bevor sie über den DTDI-Eingang wieder in das DSM 18 gelangen. Während der entfernte Busmaster 124 nicht als Master freigegeben ist, erscheint er als einfaches Schieberegister, das in Serie zum ausgewählten Vorrichtungsabtastpfad liegt. Die seriellen Daten, die am TDI-Eingang des entfernten Busmasters erscheinen und vom TDO-Ausgang eines ausgewählten Abtastpfades stammen, werden während jedes DTCK- Eingangssignals durch das interne Schieberegister getaktet und am TDO-Ausgangsanschlußstift des entfernten Busmasters ausgegeben, um über den DTDI-Eingang in das DSM 18 eingegeben zu werden. Das Schieberegister im entfernten Testbusmaster 124 kann verwendet werden, um Informationen zwischen den entfernten und primären Busmastern hin und zurück weiterzuleiten, während die Abtastoperationen vom Primärbusmaster gesteuert werden. Der TDO-Ausgang vom entfernten Busmaster wird über den DTDI-Eingang in das DSM 18 eingegeben. Nach dem Eintritt in das DSM gelangen die Daten durch den MUX2 48 und das D-REG 30 oder das I-REG 28 und werden über den TDO- Ausgang aus dem DSM ausgegeben. Es ist wichtig, zu beachten, daß der entfernte Busmaster immer in Serie zum ausgewählten Abtastpfad liegt.
  • Wenn einer der vier DTMS-Ausgänge ausgewählt ist, arbeitet der Vorrichtungsabtastpfad, der mit dem ausgewählten DTMS- Ausgang verbunden ist (Fig. 6), synchron mit dem DTCK- Taktausgang, der vom TCK-Takteingang des Primärabtastpfades angesteuert wird. Das ausgewählte Ausgangssignal DTMS1-4 schaltet mit dem ausgewählten Abtaststeuereingang TMS oder OTMS um, um Daten durch den ausgewählten Vorrichtungsabtastpfad zu schieben. Die TMS-SEL-Schaltung 74 in Fig. 2 schafft die Schaltungsanordnung zum Verbinden und Trennen von einem der vier DTMS-Ausgänge mit entweder dem primären TMS- oder dem entfernten OTMS-Steuereingang.
  • Im DSM-Beispiel der Fig. 6 sind nur vier DTMS-Ausgänge gezeigt, jedoch kann eine beliebige Anzahl von DTMS-Ausgängen implementiert werden, um zusätzliche Vorrichtungsabtastpfade zu unterstützen. Wenn ein DTMS-Ausgang entweder mit dem TMS- oder dem OTMS-Eingang verbunden ist, werden die anderen drei DTMS-Ausgänge entweder auf einen logischen Hochpegel- oder einen logischen Niedrigpegelzustand gesetzt, um deren Abtastpfade inaktiv zu halten, während der ausgewählte Abtastpfad geschoben wird.
  • Wenn das TRSTZ-Signal am Primärabtastpfad auf Niedrigpegel wechselt, wird die Schaltungsanordnung innerhalb des DSM 18 initialisiert. Nach der Initialisierung sind keine Vorrichtungsabtastpfade ausgewählt, wobei eine vom Primärtestbusmaster ausgegebene Abtastoperation nur durch das DSM 18 vom TDI-Eingang zum TDO-Ausgang läuft, bis das DSM 18 eingestellt wird, um einen Vorrichtungsabtastpfad auszuwählen. Ferner wird das TRSTZ-Eingangssignal gepuffert und zu Initialisierungszwecken über das DTRSTZ-Ausgangssignal an die Vorrichtungsabtastpfade und den entfernten Busmaster ausgegeben. Zusätzlich kann das DTRSTZ-Ausgangssignal durch ein Steuerbit im internen Steuerregister 88 des D-REG 30 des DSM auf Niedrigpegel gesetzt werden, um ein programmierbares Zurücksetzen einer einzigen zugeordneten Vorrichtung zu ermöglichen, im Gegensatz zur globalen Rücksetzung aller Vorrichtungen unter Verwendung des TRSTZ-Eingangssignals.
  • In den Fig. 2 und 6 wird deutlich, daß das DSM 18 zwei unidirektionale Signalpfade besitzt, die verwendet werden können, um eine Unterbrechungsmöglichkeit zwischen den primären und entfernten Busmastern 12 und 124 zu schaffen. Der Primärbusmaster 12 kann eine Unterbrechung an einen entfernten Busmaster 124 ausgeben, indem er ein Signal in den Masterzustand seingangsanschlußstift (MCI) des DSM eingibt. Dieses Signal wird gepuffert und über den Masterzustandsausgangsanschlußstift (MCO) an den entfernten Busmaster 124 ausgegeben. In ähnlicher Weise kann der entfernte Busmaster 124 eine Unterbrechung an den Primärbusmaster 12 ausgeben, indem er ein Signal in den Vorrichtungszustandseingangsanschlußstift (DCI) des DSM eingibt. Dieses Signal wird gepuffert und über den Vorrichtungszustandsausgangsanschlußstift (DCO) an den Primärbusmaster 12 ausgegeben. Optional kann der DCO- Ausgangsanschlußstift so eingestellt werden, daß er ein Maximumaufwärtszählsignal oder ein Minimumabwärtszählsignal an den Primärbusmaster 12 ausgibt, wenn der interne Zähler 86 des DSM freigegeben ist. Der Zähler 86 wird durch die Vorrichtungseingangssignale am DCI-Eingang getaktet. Der DCI- Eingang kann entweder vom entfernten Busmaster 124 oder von einem ausgewählten Vorrichtungsabtastpfad über einen Multiplexer innerhalb des entfernten Busmasters 124 stammen.
  • Um eine Identifikation unterschiedlicher DSMs am Primärabtastpfad zu bewerkstelligen, stehen acht Identifizierungsanschlußstifte (ID1-8) zur Verfügung. Obwohl wiederum acht Anschlußstifte für die dargestellte Ausführungsform gewählt sind, kann eine beliebige Anzahl von Anschlußstiften implementiert werden. Die Anschlußstifte ID1-8 können mittels externer Pull-up-Widerstände auf Hochpegel oder Niedrigpegel gezogen werden, um die Identität des DSM auf einen von 255 möglichen Binär-ID-Codes zu programmieren. Der binäre Code von Hexadezimal "00", im folgenden mit 00H bezeichnet, ist für die Verwendung im DSM-Kommunikationsprotokoll reserviert und kann nicht für Identifizierungszwecke verwendet werden. Der ID-Code-Eingang am Bus ID1-8 kann in das interne Zählerregister 86 des DSM geladen werden und zum Primärbusmaster 12 herausgeschoben werden, um dieses bestimmte DSM 18 und die damit verbundene Platine zu identifizieren.
  • In Fig. 6 wird deutlich, daß das DSM 18 einen optionalen Eingang TMS (OTMS) besitzt, der dem entfernten Busmaster 124 ermöglicht, ein Steuersignal zum Schieben von Daten durch einen der Vorrichtungsabtastpfade über das OTMS-Steuersignal, das an einen ausgewählten Ausgang DTMS1-4 weitergeleitet wird, und durch das interne Auswahlregister des DSM über den OTMS-Steuereingang zum internen Steuertestanschluß 22 auszugeben (Fig. 2). Der Primärbusmaster 12 kann den entfernten Busmaster freigeben, indem er interne Steuerbits im Steuerregister des DSM setzt, gefolgt vorn Senden einer Nachricht über die DSM-Unterbrechungsanschlußstifte und den Bus ID1-8 zum entfernten Busmaster, um diesen darüber zu informieren, daß er die Kontrolle zum Zugreifen auf die Vorrichtungsabtastpfade erhalten hat.
  • In dieser Konfiguration kann der entfernte Busmaster 124 ein Steuersignal auf dem OTMS-Signal ausgeben, um intern gespeicherte Daten aus seinem TDO-Ausgang zum DTDI-Eingang des DSM über das interne Auswahlregister des DSM zum DTDO-Ausgang, durch den ausgewählten Vorrichtungsabtastpfad und zurück über seinen TDI-Eingang in den entfernten Busmaster 124 zu schieben. Da das Auswahlregister 84 des DSM immer im Abtastpfad des entfernten Testbusmasters liegt, gemeinsam mit einem ausgewählten Vorrichtungsabtastpfad, kann der entfernte Busmaster die Steuerbiteinstellungen des Auswahlregisters so einstellen, daß irgendeiner der Vorrichtungsabtastpfade ausgewählt ist. Auf diese Weise kann der entfernte Testbusmaster 124 Daten hindurchschieben und einen Test auf einen beliebigen der Vorrichtungsabtastpfade anwenden, in genau derselben Weise wie der Primärbusmaster 12.
  • Während der entfernte Busmaster 124 Daten durch das DSM 18 aus dem DTDI-Eingang, durch das Auswahlregister 84 zum DTDO- Ausgang schiebt, kann der Primärtestbusmaster Daten durch das DSM 18 vom TDI-Eingang über das I-REG 28 oder das D-REG 30 (mit Ausnahme des Auswahlregisters) zum TDO-Ausgang schieben. Sowohl primäre als auch entfernte Abtastoperationen sind synchron zum primären TCK-Eingang. Da die primären und entfernten Busmaster Daten durch unterschiedliche Abtastpfade innerhalb des DSM schieben, können diese nicht direkt über Abtastoperationen kommunizieren. Während entfernte und primäre Abtastoperationen durchgeführt werden, können jedoch die entfernten und primären Busmaster miteinander über ein Protokoll kommunizieren, das auf den Unterbrechungs- und ID1-8- Bus-Anschlußstiften bewerkstelligt wird, um Daten, einen Befehl, sowie Statusinformationen zwischen den beiden Mastern weiterzuleiten.
  • Der Vorteil, der durch Delegieren von Autorität an den entfernten Busmaster 124 erhalten wird, um lokale Test- und Abtastoperationen auf Platinenebene (oder Teilsystemebene) zu handhaben, liegt darin, daß der Primärbusmaster 12 freigehalten wird, um Systemaufgaben höherer Ebene zu handhaben, wie z. B. Fehlerlogbuchführung, Systemdiagnose und Kommunikation mit der Außenwelt. Ferner wird im Vergleich zu einem Primärbusmasterablauf durch jeden lokalen Teilsystemtest zu einem Zeitpunkt die Systemtestzeit verkürzt, da mehrere verteilte entfernte Busmaster gleichzeitig lokale Teilsystemtests durchführen können.
  • KOMMUNIKATIONSPROTOKOLL ZWISCHEN PRIMAREN UND ENTFERNTEN BUSMASTERN
  • Wie in Fig. 6 gezeigt, können die Anschlußstifte ID1-8 als bidirektionaler Datenbus zwischen den entfernten und primären Busmastern verwendet werden. Wenn sie auf diese Weise verwendet werden, wird das DSM 18 so eingestellt, daß es zu einer Vorrichtung wird, durch die Daten hin und zurück über den Bus ID1-8 übertragen werden können, um die Kommunikation zwischen den primären und entfernten Busmastern 12 und 124 zu erleichtern. Dieser Betriebsmodus wird freigegeben durch Setzen eines Steuerbits im internen Steuerregister 88 des Abtastpfades des DSM. Dieses Steuerbit wird über den Bus 42 in das NICHT-UND-Gatter 62 eingegeben, um dem Bus ID1-8 zu ermöglichen, Daten in das interne Zählerregister 86 einzugeben bzw. aus diesem auszugeben, wenn an den DCI- und MCI- Unterbrechungsanschlußstiften geeignete Protokolle eingegeben werden.
  • Da ein binärer ID-Code über Pull-up- und Pull-down- Widerstände implementiert ist und nicht fest mit Hochpegel oder Niedrigpegel verdrahtet ist, können die Ausgangspuffer des entfernten Busmasters und des DSM 18 die Widerstandslasten an jedem ID1-8-Anschlußstift übersteuern, um Daten bidirektional über den ID1-8-Bus auszugeben. Es ist wichtig, zu beachten, daß die ID-Codes so definiert worden sind, daß sie ein beliebiges binäres Muster von 01H bis FFH, mit Ausnahme des Musters 00H, enthalten. Der Grund für die Reservierung des Binärmusters 00H wird im folgenden erläutert.
  • In den Fig. 7 und 8 sind Implementierungsbeispiele gezeigt, die darstellen, wie ein entfernter Busmaster (RBM) und ein Primärbusmaster (PBM) miteinander lokal oder global kommunizieren, indem sie die Signale DCI/DCO, MCI/MCO und den Bus 1D1-8 der DSM-IC verwenden. Ferner ist der Protokollzeitablauf gezeigt, der auf den Unterbrechungssignalpfaden MCI/MCO und DCI/DCO definiert ist, um ein Sende-(T)- und Bestätigungs-(A)-Quittungsprotokoll zwischen dem PBM und den RBMs zu erzeugen. In der in Fig. 7 gezeigten Konfiguration kann das PBM 12 zu einem Zeitpunkt nur mit einem RBM 124 kommunizieren, da nur ein DCO-Ausgang vom DSM aktiv sein kann, um den verdrahteten ODER-Bus anzusteuern, der die DCO-Signale in den PBM 12 eingibt. In der in Fig. 8 gezeigten Konfiguration kann der PBM 12 gleichzeitig mit allen RBMs kommunizieren, da zusätzliche DCO-Eingänge am PBM 12 vorgesehen sind, um die einzelnen DCO-Ausgänge der DSMs 18 zu empfangen. Sowohl in den lokalen als auch den globalen Kommunikationsprotokollen leitet immer der Prirmärbusmaster die Übertragung von Daten ein. Der entfernte Busmaster kann auf eine eingeleitete Datenübertragungsanforderung antworten, kann jedoch selbst keine einleiten.
  • LOKALES PBM-ZU-RBM-KOMMUNIKATIONS PROTOKOLL
  • Im lokalen PBM-zu-RBM-Kommunikationsprotokollzeitablauf in Fig. 7 wird die Übertragung von Daten vom PBM zu einem der RBMs über ein DSM vom PBM eingeleitet, der seinen MCI-Ausgang auf einen logischen Niedrigpegel steuert. Vor dem Setzen des MCI-Signals auf Niedrigpegel hat der PBM 12 ein Protokollvorspannmuster von OOH in ein internes Zählerregister eines ausgewählten DSM geschoben (siehe Fig. 3) und die Ausgangspuffer ID1-8 des DSM freigegeben, um das Vorspannmuster auszugeben. Ferner wird der DCO-Ausgangspuffer des ausgewähl ten DSM 18 freigegeben, während alle anderen DSM-DCO-Ausgänge in einen gesperrten Zustand versetzt werden. Auf diese Weise kann der DCO-Ausgang des ausgewählten DSM das in den PBM eingegebene verdrahtete DCO-Bussignal treiben. Die Ausgangspuffer ID1-8 der nicht ausgewählten DSMs verharren im hochohmigen Zustand, um zu ermöglichen, daß der ID-Code auf dem Bus ID1-8 bleibt.
  • Das vom PBM 12 ausgegebene MCI-Signal wird durch die DSMs geleitet und über die MCO-Eingangssignale in die RBMs 124 eingegeben. Der Niedrigpegeleingang an MCO zeigt dem RBM die Verfügbarkeit von Daten am Bus ID1-8 an. Wenn die RBMs den Niedrigpegel an ihrem MCO-Eingang erfassen, lesen sie die Daten am Bus ID1-8. Die vom Bus ID1-8 gelesenen Daten werden von jedem RBM untersucht, um zu ermitteln, ob er für eine Kommunikationsprotokolloperation ausgewählt worden ist.
  • Wenn kein RBM für ein Kommunikationsprotokoll ausgewählt worden ist, entsprechen die vom Bus ID1-8 gelesenen Daten dem mittels externer Widerstände getriebenen ID-Code des DSM, einem bestimmten Binärwert innerhalb des Bereichs 01H bis FFH. Wenn der ID-Code gelesen wird, ergreift der RBM keine weitere Maßnahme auf der Grundlage des ersten empfangenen MCO-Eingangssignals. Jedoch untersucht der RBM die Daten auf dem Bus ID1-8 nach dem Empfangen folgender MCO- Eingangssignale, um zu ermitteln, ob er immer noch nicht ausgewählt ist.
  • Wenn ein RBM für ein Kommunikationsprotokoll ausgewählt ist, entsprechen die vom Bus ID1-8 gelesenen Daten dem Vorspannmuster 00H. Wenn der RBM feststellt, daß das gelesene Muster gleich dem Protokollvorspann 00H ist, setzt er sein DCI- Ausgangssignal auf Niedrigpegel, um dem PBM zurückzumelden, daß das Vorspannmuster gelesen worden ist. Dies ist der Grund dafür, daß das Binärmuster00H reserviert ist und nicht als ID-Code-Muster decodiert wird, um ein Verfahren zu schaffen zum Ermitteln, ob ein RBM für ein Kommunikationsprotokoll ausgewählt ist oder nicht. Der DCI-Ausgang vom RBM läuft durch das DSM und wird über das DCO-Eingangssignal in den PBM eingegeben.
  • Wenn der PBM den Niedrigpegel am DCO-Eingang erfaßt und bestätigt, daß das zum ausgewählten RBM 124 gesendete Vorspannmuster gelesen worden ist, setzt er sein MCI- Ausgangssignal auf Hochpegel. Der RBM 124 setzt nach dem Erfassen des logischen Hochpegels vom PBM 12 am MCO- Eingangssignal sein DCI-Ausgangssignal auf Hochpegel. Der PBM 12 schiebt nach dem Erfassen des logischen Hochpegels vom RBM 124 am DCO-Eingangssignal ein Befehlsmuster in den internen Zähler 86 des ausgewählten DSM und legt das Befehlsmuster auf den Bus ID1-8. Nachdem der Befehl ausgegeben worden ist, führen der PBM 12 und der RBM 124 die Quittungsprotokollsequenz auf den Unterbrechungssignalen DCI/DCO und MCI/MCO durch, wie oben für das Vorspannmuster beschrieben worden ist, um das Befehlsmuster zu senden und dessen Empfang zu bestätigen.
  • Der Typ des vom PBM zum RBM gesendeten Befehls legt fest, ob zusätzliche Muster in das Kommunikationsprotokoll aufzunehmen sind. Wenn ein Befehl zusätzliche zu sendende Muster erfordert, folgt dem Befehlsmuster ein Zählermuster, um die Anzahl der zusätzlichen zu sendenden Muster zu spezifizieren. Die gleiche Protokollprozedur wird verfolgt beim Senden irgendwelcher zusätzlicher Muster, wie bei der Übertragung des Vorspanns und des Befehlsmusters beschrieben worden ist. Das letzte vom PBM 12 zum RBM 124 gesendete Muster am Ende des Kommunikationsprotokolls ist das Vorspannmuster 00H. Nachdem ein RBM den Empfang des Vorspannmusters bestätigt hat, versetzt der PBM 12 die Ausgangspuffer ID1-8 des DSM in einen hochohmigen Zustand, um zu ermöglichen, daß erneut der mittels Widerständen getriebene ID-Code auf den Bus ID1-8 gelegt wird.
  • LOKALES RBM-ZU-PBM-KOMMUNIKATIONSPROTOKOLL
  • Im lokalen Kommunikationsprotokollablauf vom RBM 124 zum PBM 12 in Fig. 7 wird die Übertragung von Daten von einem RBM 124 zum PBM 12 über das DSM vom RBM 124 eingeleitet, der seinen DCI-Ausgang auf einen logischen Niedrigpegel setzt. Bevor der RBM 124 das DCI-Signal auf Niedrigpegel setzt, hat er seine Ausgangspuffer freigegeben, um ein Protokollvorspannmuster von 00H auf den Bus ID1-8 auszugeben. Das DCI-Signal wird durch das DSM 18 geleitet und über das DCO-Eingangssignal in den PBM 12 eingegeben. Der Niedrigpegeleingang am DCO zeigt dem PBM 12 die Verfügbarkeit von Daten auf dem Bus ID1-8 an. Wenn der PBM 12 den Niedrigpegel am DCO-Eingang erfaßt, gibt er ein Steuersignal an das DSM aus, um das Zählerregister 86 mit dem am ID1-8-Bus eingegebenen Muster zu laden, und schiebt anschließend das Zählerregister 86 heraus, um das geladene Muster zu untersuchen.
  • Das vom Bus ID1-8 gelesene Muster wird vom PBM 12 untersucht, um zu ermitteln, ob das Vorspannmuster gesendet worden ist. Wenn der ID-Code anstelle des Vorspannmusters gesendet worden ist, nimmt der PBM 12 an, daß der DCO-Eingang eine testbezogene Unterbrechung und keine Anforderung für eine Information war. Wenn dies der Fall ist, ergreift der PBM 12 geeignete Maßnahmen, um die Quelle der Unterbrechung zu ermitteln. Wenn das Vorspannmuster gesendet worden ist, setzt der PBM 12 sein MCI-Ausgangssignal auf Niedrigpegel, um dem RBM 124 zurückzumelden, daß das Vorspannmuster empfangen worden ist.
  • Der MCI-Ausgang vom PBM 12 wird durch das DSM 18 geleitet und über das MCO-Eingangssignal in den RBM 124 eingegeben. Wenn der RBM 124 den Niedrigpegel am MCO-Eingang erfaßt und bestätigt, daß das gesendete Vorspannmuster gelesen worden ist, setzt er sein DCI-Ausgangssignal auf Hochpegel. Der PBM 12 setzt nach dem Erfassen des logischen Hochpegels vom RBM 124 an seinem DCO-Eingangssignal sein MCI-Ausgangssignal auf Hochpegel. Der RBM 124 gibt nach dem Erfassen des logischen Hochpegels vom PBM an seinem MCO-Eingangssignal ein Befehlsmuster auf den Bus ID1-8 aus. Nachdem der Befehl ausgegeben worden ist führen der RBM 124 und der PBM 12 die Quittungsprotokollsequenz auf den Unterbrechungssignalen DCI/DCO und MCI/MCO durch, wie oben beim Vorspannmuster beschrieben worden ist, um den Befehl zu senden und dessen Empfang zu bestätigen.
  • Der Typ des vom RBM 124 zum PBM 12 gesendeten Befehls legt fest, ob zusätzliche Muster in das Kommunikationsprotokoll aufzunehmen sind. Wenn ein Befehl zusätzliche zu sendende Muster erfordert, folgt dem Befehlsmuster ein Zählermuster, um die Anzahl der zusätzlichen zu sendenden Muster zu spezifizieren. Die gleiche Protokollprozedur wird verfolgt beim Senden irgendwelcher zusätzlicher Muster, wie bei der Übertragung des Vorspanns und des Befehlsmusters beschrieben worden ist. Das letzte vom RBM 124 zum PBM 12 gesendete Muster am Ende des Kommunikationsprotokolls ist das Vorspannmuster 00H. Nachdem ein PBM den Empfang des Vorspannmusters bestätigt hat, versetzt der RBM 124 seine Ausgangspuffer ID1- 8 in den hochohmigen Zustand, um zu ermöglichen, daß der mittels Widerständen getriebene ID-Code erneut auf den Bus ID1-8 gelegt wird.
  • GLOBALES PBM-ZU-RBM-KOMMUNIKATIONSPROTOKOLL
  • In Fig. 8 ist ein Beispiel gezeigt, das ein konkurrierendes Kommunikationsprotokoll zwischen dem PBM 12 und allen RBMs 124 unterstützt. Da der PBM 12 mehrere DCO-Eingänge besitzt, kann zwischen dem PBM 12 und den RBMs 124 zum gleichen Zeitpunkt eine globale Quittungsprotokolloperation stattfinden. Die übertragenen Datenmuster sind in ihrer Definition und im Format denjenigen ähnlich, die im lokalen Kommunikationsprotokoll beschrieben worden sind, nämlich Vorspann, Befehl, (zusätzliche Daten), Vorspann.
  • Im globalen Kommunikationsprotokollzeitablauf vom PBM 12 zum RBM 124 in Fig. 8 wird die Übertragung von Daten vom PBM 12 zu den RBMs 124 vom PBM 12 eingeleitet, der seinen MCI- Ausgang auf einen logischen Niedrigpegel setzt. Vor dem Setzen des MCI-Ausgangs auf Niedrigpegel hat der PBM 12 in jedes DSM 18 ein Datenmuster eingelesen und veranlaßt, daß das Muster auf den DSM-Bus ID1-8 ausgegeben worden ist. Das MCI-Ausgangssignal vom PBM 12 läuft durch jedes DSM und wird in jeden RBM 124 eingegeben. Als Antwort auf den MCO-Eingang liest jeder RBM 124 das auf dem jeweiligen DSM-Bus ID1-8 ausgegebene Datenmuster und setzt anschließend seinen DCI- Ausgang auf Niedrigpegel, um das Lesen der Daten zu bestätigen. Da nicht unbedingt alle RBMs 124 gleichzeitig bestätigen müssen, sind die Ausgangssignale DCO (1, 2, N) von den DSMs versetzt dargestellt. Wenn der PBM 12 feststellt, daß alle RBMs 124 den Empfang des gesendeten Datenmusters bestätigt haben, setzt er seinen MCI-Ausgang auf Hochpegel. Die RBMs 124 antworten auf das Hochpegelsignal an MCI durch Setzen ihrer DCI-Ausgänge auf Hochpegel.
  • Diese Protokollsequenz beschreibt eine globale Übertragung von Daten vom PBM 12 zu jedem RBM 124. Dieses Protokoll wird für jedes neue Datenmuster wiederholt, das global an alle RBMs 124 zu senden ist. Im Zeitablaufbeispiel ist gezeigt, daß nach der dritten Datenübertragung das Kommunikationsprotokoll vom PBM 12 zu den RBMs 2 bis N abgeschlossen ist, während das Kommunikationsprotokoll vom PBM zum RBM 1 für drei zusätzliche Datenübertragungsoperationen fortgesetzt wird. Dies zeigt, daß während eines globalen Kommunikationsprotokolls Datenübertragungen zwischen dem PBM und jedem RBM unterschiedliche Musterübertragungslängen aufweisen können.
  • GLOBALES RBM-ZU-PBM-KOMMUNIKATIONSPROTOKOLL
  • Im globalen RBM-zu-PBM-Kommunikationsprotokollzeitablauf in Fig. 8 wird die Übertragung von Daten von jedem RBM 124 zum PBM 12 von den RBMs eingeleitet, die ihre DCI-Ausgänge auf einen logischen Niedrigpegel setzen. Vor dem Setzen des DCI- Ausgangs auf Niedrigpegel gibt jeder RBM 124 ein Datenmuster auf dem Bus IDL-8 aus, das in die DSMs 18 eingegeben werden soll. Die DCI-Ausgangssignale von den RBMs 124 laufen durch die DSMs 18 und werden über die DCO-Eingänge (1, 2, N) in den PBM 12 eingegeben. Da jeder RBM 124 nicht unbedingt gleichzeitig die DCI-Ausgangssignale senden muß, sind die DCO- Ausgangssignale (1, 2, N) von den DSMs versetzt dargestellt. Wenn alle DCO-Eingangssignale (1, 2, N) auf Niedrigpegel gesetzt sind, führt der PBM 12 eine Abtastoperation der DSMs 18 aus, um die auf den Bussen ID1-8 angegebenen Datenmuster zu laden und herauszuschieben. Nachdem der PBM 12 die Datenmuster gelesen hat, setzt er seinen MCI-Ausgang auf Niedrigpegel, um das Lesen der Daten zu bestätigen. Das MCI-Signal wird durch die DSMs weitergeleitet und über das MCO-Signal in die RBMs 124 eingegeben. Wenn die RBMs 124 den Niedrigpegel an MCO erfassen, was bestätigt, daß der PBM 12 die gesendeten Datenmuster gelesen hat, setzen sie ihre DCI-Ausgänge auf Hochpegel. Der PBM 12 antwortet auf die Hochpegel an den DCO- Eingängen von den RBMs 124 durch Setzen seines MCI-Signals auf Hochpegel.
  • Diese Protokollsequenz beschreibt eine globale Übertragung von Daten von den RBMs 124 zum PBM 12. Dieses Protokoll wird für jedes neue Datenmuster wiederholt, das global von jedem RBM 124 zum PBM 12 gesendet werden soll. Im Zeitablaufbeispiel ist gezeigt, daß nach der dritten Datenübertragung das Kommunikationsprotokoll von den RBMs 2 bis N zum PBM 12 abgeschlossen ist, während das Kommunikationsprotokoll vom RBM 1 zum PBM für drei zusätzliche Datenübertragungsoperationen fortgesetzt wird. Dies zeigt, daß während eines globalen Kommunikationsprotokolls die Datenübertragungen zwischen den jeweiligen RBMs 124 und dem PBM 12 unterschiedliche Musterübertragungslängen aufweisen können.
  • KOMMUNIKATIONSPROTOKOLLBEFEHLE UND FORMATE
  • Es sind zwei allgemeine Typen von Datenübertragungsformaten definiert, die mit dem Kommunikationsprotokoll verwendet werden, nämlich Nur-Befehl und Befehl-mit-Daten. Der Typ der Datenübertragung (Nur-Befehl oder Befehl-mit-Daten) wird vom gesendeten Befehlsmuster (zweites Muster) spezifiziert.
  • (1) Nur-Befehl-Formate
  • (Vorspann) (Befehl) (Vorspann)
  • Der Nur-Befehl-Typ des Formats umfaßt ein führendes Vorspannmuster 00H gefolgt von einem Befehlsmuster, dem ein abschließendes Vorspannmuster 00H folgt, wie oben gezeigt ist. Der PBM verwendet diesen Typ von Kommunikationsprotokollformat, um Befehle an die RBMs auszugeben. Die von einem PBM 12 zu einem oder mehreren RBMs 124 gesendeten Nur-Befehl-Typ- Kommunikationsformate können verwendet werden, um: (1) die RBMs aufzufordern, eine lokale Testoperation einzuleiten, (2) die RBMs aufzufordern, von einer Testoperation gesammelte Daten zurückzusenden, (3) die RBMs aufzufordern, Teststatusinformationen einer durchgeführten Testoperation, d. h. "Test läuft" oder "Test abgeschlossen", zurückzusenden, oder (4) eine Fehlernachricht zu einem oder mehreren RBMs zu senden, um anzuzeigen, daß er einen unbekannten Befehl empfangen hat. Ferner können die RBMs dieses Kommunikationsformat verwenden, um eine Fehlernachricht zum PBM 12 zurückzusenden, um den Empfang eines unbekannten Befehls anzuzeigen.
  • (2) Befehl-mit-Daten-Formate
  • (Vorspann) (Befehl) { (Zähler) (Daten 1-N) } { (Zähler) (Daten 1-N) } ... (Vorspann)
  • Die Befehl-mit-Daten-Typformate umfassen ein führendes Vorspannmuster gefolgt von einem Befehlsmuster, dem wenigstens ein Zählermuster und eine entsprechende Anzahl von Datenmustern folgt, gefolgt von einem abschließenden Vorspannmuster. Das Zählermuster spezifiziert die Anzahl der Datenmuster, die dem Zählermuster folgen. Bei diesem Format kann die Anzahl der nach dem Zählermuster gesendeten Datenmuster 1 bis 256 betragen, aufgrund der Breite des Busses ID1-8 von 8 Bit. Wenn mehr als 256 Datenmuster zu senden sind, wird nach dem letzten Datenmuster des vorangehenden Zählers ein weiteres Zählermuster zwischen 1 und 256 gesendet, um die Datenübertragungsoperation fortzusetzen. Wenn keine weiteren Datenmuster zu senden sind, wird das Vorspannmuster 00H nach dem letzten Datenmuster gesendet. Die empfangende Vorrichtung betrachtet das dem letzten Datenmuster folgende Muster, um festzustellen, ob es gleich dem Vorspann (00H) oder einem Zählermuster (1-256) ist, um zu ermitteln, ob der Empfang von Daten zu beenden ist. Der PBM gibt diesen Typ von Kommunikationsformat aus, wenn er eine Serie von Daten, einen Status oder ein Befehlsmuster an einen oder mehrere RBMs 124 überträgt. Die RBMs geben diesen Typ von Kommunikationsformat aus, um dann, wenn sie vom PBM 12 aufgefordert werden, Daten oder einen Status oder Befehle zum PBM 12 zurückzusenden.
  • VERTIKALE UND HORIZONTALE ERWEITERUNG DER DSM-IC's
  • In Fig. 9 ist ein Beispiel dafür gezeigt, wie mehrere DSMs vertikal (1 bis M) und horizontal (1 bis N) miteinander verbunden werden, um ein Abtastpfadnetz zu erzeugen. Die Verbindungen für die Horizontalerweiterung der DSMs ist bereits beschrieben worden und wird einfach bewerkstelligt, indem die mit dem Primärabtastpfad verbundenen DSMs in Serie vom TDO-Ausgang eines ersten primären DSM (1:1) zum TDO- Eingang des nächsten primären DSM (N:1) im Abtastpfad wie in Fig. 10 gezeigt verbunden werden. Ferner werden die Primärsteuersignale TMS und TCK parallel an jedes DSM weitergeleitet, das am Primärabtastpfad angeschlossen ist.
  • Die Verbindung zur Erweiterung von einem DSM 18 auf einer primären ersten vertikalen Ebene (1:1) zu einem DSM 126 auf einer zweiten vertikalen Ebene (1:2) verwendet die Verbindung der Signale DTDO, DTDI und DTMSx des DSM 18 der ersten vertikalen Ebene mit den Signalen TDI, TDO und TMS des DSM 126 der zweiten vertikalen Ebene. Die Erweiterung auf ein (nicht gezeigtes) DSM der dritten vertikalen Ebene (1:3) von einem DSM der zweiten vertikalen Ebene (1:2) wird bewerkstelligt, indem die gleichen Verbindungen zwischen dem DSM der niedrigeren vertikalen Ebene und dem DSM der nächst höheren vertikalen Ebene eingerichtet werden. Unter Verwendung dieses Verbindungsansatzes ist es möglich, DSMs bis zu einer beliebigen vertikalen Ebene 128 (1:M) zu stapeln.
  • In Fig. 9 ist wichtig zu beachten, daß die Signale Primärtestbustakt (TCK) und Steuerung (TMS) direkt bis zum jeweiligen vertikalen DSM geleitet und in die entsprechenden Eingänge TCK und OTMS der DSMs eingegeben werden. Wenn die DSMs vertikal gestapelt werden, wird das primäre TMS-Signal in den OTMS-Eingang der DSMs eingegeben (siehe Fig. 2). Das primäre TMS-Signal wird anschließend ausgewählt, um es über eines der Ausgangssignale DTMS1-4 an den TMS-Eingang des DSM der nächsten vertikalen Ebene auszugeben. Auf diese Weise ist die Ausbreitungsverzögerung vom primären TMS-Signal zu einem DSM irgendeiner vertikalen Ebene konstant und entspricht der Verzögerung von OTMS zu DTMSx durch ein DSM. Dies überwindet das Versatzproblem, das aufgrund der zusätzlichen Verzögerungen auftreten würde, die entstehen, wenn die primären TCK- und TMS-Signale durch die DSMs der jeweiligen vertikalen Ebenen von TCK und TMS zu DTCK und DTMSx weitergeleitet werden.
  • Durch Kombinieren der vertikalen und horizontalen Erweiterungsmöglichkeiten der DSMs in Fig. 7 kann ein Netz von DSMs (N:M) erzeugt werden, um eine hierarchische Systemabtastpfadarchitektur zu unterstützen.
  • PRIMARBUSMASTEROPERATION UND ARCHITEKTUR
  • Ein Implementierungsbeispiel der Primärbusmasterschaltung 12 ist in Fig. 10 gezeigt. Die Schaltung ist eine typische Computerarchitektur, die einen Prozessor 129 und Peripherieschaltungen umfaßt, die einen Speicher (ROM 132 und RAM 134), eine Unterbrechungshandhabungsvorrichtung 136, Eingangs- und Ausgangsanschlüsse 138 (E, A) sowie eine primäre Testbussteuerschaltung 140 enthält. Der Prozessor 129 kommuniziert mit den Peripheriegeräten über seine Daten-, Adreß- und Steuerbusse 142, 144 und 146. Jedes Peripheriegerät wird durch eine Adreßdecodierungslogik für eine Lese- oder Schreiboperation als Antwort auf eine bestimmte Adresse oder einen Adreßbereich, der vom Prozessor 129 ausgegeben wird, ausgewählt. Ein ausgewähltes Peripheriegerät empfängt Lese- oder Schreib- Steuereingangssignale (R/W) vom Prozessor 129, um zu ermöglichen, daß zwischen dem Prozessor und dem ausgewählten Peripheriegerät Daten übertragen werden.
  • Das Speicherperipheriegerät 130 enthält sowohl Nur-Lese- Speicher (ROM 132) als auch Schreib/Lese-Speicher (RAM 134). Der Prozessor operiert, indem er Befehle und Daten bearbeitet, die im Speicher gespeichert sind. Der ROM 132 wird als Permanentspeicher genutzt, während der RAM 134 als flüchtiger Speicher genutzt wird.
  • Das Unterbrechungsbehandlungsvorrichtungs-Peripheriegerät 136 enthält die Logik, die erforderlich ist, um mehrere Unterbrechungseingänge zu empfangen und zwischenzuspeichern und um ein einzelnes Unterbrechungssignal an den Prozessor 129 auszugeben. Jedes Unterbrechungseingangssignal kann vom Prozessor freigegeben oder ausmaskiert werden. Wenn ein freigegebenes Unterbrechungseingangssignal empfangen wird, speichert die Behandlungsvorrichtung 136 das Eingangssignal und benachrichtigt anschließend den Prozessor 129 über seinen einzelnen Unterbrechungsausgang. Der Prozessor 129 antwortet auf die Unterbrechung und liest die Zwischenspeicher innerhalb der Behandlungsvorrichtung, um zu ermitteln, welches Unterbrechungseingangssignal einen Dienst angefordert hat. Nach der Identifizierung der Unterbrechung führt der Prozessor 129 eine Routine aus dem Speicher aus, um die Unterbrechung zu bedienen. In diesem Beispiel empfängt die Unterbrechungsbehandlungsvorrichtung mehrere Vorrichtungszustandsausgänge (DCO 1, 2, ... N). Die DCO- Unterbrechungen werden von den DSMs, die am Primärbus 14 angeschlossen sind, in den Primärbusmaster eingegeben, wie in den Fig. 7 und 8 gezeigt ist.
  • Der E/A-Anschluß 138 schafft die Vorrichtung für den Prozessor zum Eingeben und Ausgeben von Steuersignalen und Daten zu weiteren Peripheriegeräten in der Schaltung sowie zu Schaltungen außerhalb des Primärbusmasters 12. Der E/A-Anschluß 138 gibt Befehls- und Zählerinformationen (CMD/CNT) an das Primärtestbussteuervorrichtungsperipheriegerät 140 sowie ein Testrücksetzsignal (TRSTZ) und ein Masterzustandseingangssignal (MCI) auf den in den Fig. 7 und 8 gezeigten Primärbus 16 aus. Der E/A-Anschluß 138 empfängt ein Statuseingangssignal von der Primärtestbussteuervorrichtung. Um eine Schnittstelle zu anderen Vorrichtungen zu schaffen, gibt der E/A-Anschluß Daten auf Standardkommunikationsanschlüssen wie z. B. RS232 aus und ein.
  • Die Primärtestbussteuervorrichtung 140 stellt die Schaltung zum Senden und Empfangen serieller Daten und Steuersignale auf dem Primärbus über die Signale TCK, TMS, TDI und TDO zur Verfügung. In Fig. 11 ist die Architektur der Primärtestbussteuervorrichtung gezeigt. Die Primärtestbussteuervorrichtung 140 umfaßt einen Seriell-Parallel-Empfängerabschnitt 148 zum Speichern ankommender serieller Daten vom TDI-Eingang, einen Parallel-Seriell-Sendeabschnitt 150 zum Ausgeben serieller Daten auf dem TDO-Ausgang, einen Steuerlogikabschnitt 152 zum Steuern der Sender- und Empfängerabschnitte und zum Erzeugen der Ausgangssteuersignale TCK und TMS, sowie einen Taktoszillator 154 zum Erzeugen des Taktes, der benötigt wird, um den Steuerlogikabschnitt zu betreiben.
  • Der Parallel-Seriell-Sender 150 enthält einen First-in-first- out-(FIFO)-Speicher 156 sowie ein Paralleleingang-Seriellausgang-Schieberegister 158. Der Prozessor 129 lädt den FIFO- Speicher 156 mit Daten unter Verwendung der Daten, -Auswahl- und R/W-Steuerbusse. Der Prozessor 129 ermittelt, ob der FIFO 156 bereit zum Lesen ist (RTW), indem er das Statusausgangssignal der Steuerlogik 152 über den E/A-Anschluß 138 liest.
  • Der Seriell-Parallel-Empfänger 148 enthält einen First-in- first-out-(FIFO)-Speicher 160 sowie ein Serielleingang- Parallelausgang-Schieberegister 162. Der Prozessor 129 entnimmt die Daten aus dem FIFO-Speicher 160 unter Verwendung der Daten-, Auswahl- und Leselschreib-Steuerbusse. Der Prozessor ermittelt, ob der FIFO 160 zum Lesen bereit ist (RTR), indem er das Statusausgangssignal von der Steuerlogik 152 über das E/A-Anschluß-Peripheriegerät 138 liest.
  • Wenn der Prozessor den Sender-FIFO 156 mit Daten gefüllt hat, die über den TDO-Ausgang auf den Primärbus herausgeschoben werden sollen, wird ein Befehls- und Zählermuster (CMD/CNT) in den E/A-Anschluß 138 geschrieben und an den Steuerlogikabschnitt 152 der Primärbussteuervorrichtung ausgegeben. Der Befehl informiert die Steuerlogik 152 über die Ausführung einer Schiebeoperation. Der Zählwert spezifiziert, wieviel Bits zu schieben sind.
  • Als Antwort auf das Eingangssignal CMD/CNT gibt die Steuerlogik 152 ein Steuersignal aus, das das Schieberegister 158 des Senders veranlaßt, Daten aus dem FIFO-Speicher 156 zu laden. Nachdem der Sender 150 auf das Ausgeben serieller Daten eingestellt worden ist, wird der Empfängerabschnitt 148 freigegeben, um ankommende serielle Daten vom TDI-Eingang zu speichern. Nach dieser Prozedur gibt die Steuerlogik 152 ein Steuersignal. auf den Ausgängen TCK und TMS aus, um das Schieben der Daten auf den Primärbus 14 zu starten und sendet zum Prozessor 129 den Status zurück, der anzeigt, daß die Schiebeoperation läuft. Die Länge der Schiebeoperation wird ermittelt anhand des Zählerwerts, der über den CMD/CNT-Bus eingegeben worden ist. Der Zählwert wird in einen internen Abwärtszähler innerhalb der Steuerlogik 152 geladen. Der Zähler wird jedes mal dann dekrementiert, wenn ein serielles Datenbit auf dem Primärbus 14 übertragen worden ist. Wenn der Zähler einen Minimalzählwert erreicht, beendet die Steuerlogik 152 die Schiebeoperation und gibt an den Prozessor 129 einen Status aus, der anzeigt, daß die Schiebeoperation abgeschlossen ist.
  • Wenn eine Schiebeoperation gestartet worden ist, überwacht die Steuerlogik 152 die Ausgangssignale von den Sende- und Empfangsschieberegistern 158 und 162, die anzeigen, wann die Schieberegister leer bzw. voll sind. Wenn das Sendeschieberegister das letzte Datenbit herausschiebt, gibt es ein Schieberegisterleersignal (SRE) an die Steuerlogik aus. Wenn die Steuerlogik 152 das SRE-Eigangssignal empfängt, gibt es ein Steuersignal aus, um zu veranlassen, daß das nächste Wort im Sende-FIFO-Speicher 156 in das Schieberegister 158 geladen wird.
  • Wenn das Empfangsschieberegister 162 das letzte Datenbit annimmt, das es halten kann, gibt es in ähnlicher Weise ein Schieberegistervollsignal (SRF) an die Steuerlogik 152 aus. Wenn die Steuerlogik das SRF-Eingangssignal empfängt, gibt es ein Steuersignal aus, um zu veranlassen, daß die Daten im Empfangsschieberegister 162 in den FIFO-Speicher 160 geladen werden. Die Datenübertragungen zwischen den Schieberegistern und den FIFOS werden so durchgeführt, daß die Schiebeoperation auf dem Primärbus 14 nicht unterbrochen wird. Wenn der Sende-FIFO 156 Daten in das Schieberegister 158 lädt, treten in seiner internen Speichermatrix Freiräume auf. Wenn eine Speicherstelle frei ist, gibt der Sende-FIFO 156 ein Fertigzum-Schreiben-Signal (RTW) aus, um den Prozessor zu informieren, daß er Daten annehmen kann. Wenn der Prozessor 129 das RTW-Signal über den Statusausgang von der Steuerlogik 152 empfängt, schreibt er Daten über die Daten-, Auswahl- und R/W-Steuerbusse in den Sende-FIFO 156.
  • Wenn der Empfangs-FIFO 160 Daten vom Schieberegister 162 lädt, beginnen sich in ähnlicher Weise dessen Speicherstellen zu füllen. Wenn eine Speicherstelle geladen wird, gibt der Ernpfangs-FIFO 160 ein Fertig-zum-Lesen-Signal (RTR) aus, um den Prozessor 129 zu informieren, daß er Daten ausgeben kann. Wenn der Prozessor 129 das RTR-Signal über den Statusausgang von der Steuerlogik 152 empfängt, liest er über die Daten-, Auswahl- und R/W-Steuerbusse Daten vom Empfangs-FIFO 160.
  • In dem Fall, daß der Prozessor 129 unfähig ist, die RTW- und RTR-Anfragen der FIFOs zu bedienen, werden die Sende- und Empfangsspeicher 156 und 160 evtl. leer bzw. voll. Wenn der Sende-FIFO 156 leer wird, gibt er ein FIFO-Speicherleersignal (FME) aus. Wenn der Empfangs-FIFO 160 voll wird, gibt er ein FIFO-Speichervollsignal (FMF) aus. Die Steuerlogik 152 unterbricht aufgrund des Empfangs dieser Zustandseingangssignale die Schiebeoperation auf dem Primärbus 14 und gibt an den Prozessor 129 Statusinformationen aus, die anzeigen, daß das Schieben angehalten worden ist.
  • Wenn der Prozessor 129 erneut fähig ist, die FIFO-Speicher 156 und 160 zu bedienen, leitet er Lese- und Schreiboperationen ein, um zu ermöglichen, daß die Schiebeoperation fortgesetzt wird. Wenn die Speicherstellen im Sende-FIFO 156 durch die Prozessorschreiboperationen gefüllt werden, wird der FME- Eingang deaktiviert. In ähnlicher Weise wird der FMF-Eingang deaktiviert, wenn die Speicherstellen im Empfangs-FIFO 160 durch die Prozessorleseoperationen geleert werden. Wenn beide Signale FME und FMF deaktiviert sind, fährt die Steuerlogik mit der Schiebeoperation fort und gibt an den Prozessor einen Status aus, der anzeigt, daß die Schiebeoperation wieder aufgenommen worden ist.
  • Wenn der Zähler innerhalb der Steuerlogik 152 auf einen Minimalzählwert heruntergezählt hat, beendet die Steuerlogik 152 die Schiebeoperation und gibt einen Status an den Prozessor 129 aus, der anzeigt, daß die Schiebeoperation beendet ist.
  • ARCHITEKTUR UND OPERATION DES ENTFERNTEN BUSMASTERS
  • Ein Implementierungsbeispiel der entfernten Busmasterschaltung 124 ist in Fig. 12 gezeigt. Die Architektur ist insofern derjenigen des Primärbusmasters ähnlich, als sie einen Prozessor 164 und Peripheriegeräte umfaßt, die einen Speicher, eine Unterbrechungsbehandlungsvorrichtung 168, einen E/A- Anschluß 170 und eine entfernte Testbussteuervorrichtung 172 enthalten. Die Architektur enthält ferner einen 2:1- Multiplexer 174, der ermöglicht, daß der Vorrichtungszustandsausgang (DCI) vom E/A-Anschluß oder von einem externen DCI-Unterbrechungseingang betrieben wird.
  • Die Unterbrechungsbehandlungsvorrichtung 168 operiert wie in Verbindung mit dem Primärbusmaster 12 beschrieben. Die Unterbrechungsbehandlungsvorrichtung 168 empfängt ein Testrücksetzsignal (TRSTZ), einen Masterzustandsausgang- (MCO) -Eingang sowie einen DCI-Eingang von einem Abtastpfad, wie in Fig. 6 gezeigt ist.
  • Der E/A-Anschluß 170 operiert wie in Verbindung mit dem Primärbusmaster beschrieben. Der EIA-Anschluß 170 gibt Befehls- und Zählerinformationen (CMD/CNT) sowie ein TDOSEL- Signal an die entfernte Testbussteuervorrichtung aus. Ferner gibt der E/A-Anschluß 170 ein DCI-Ausgangssignal (DCIOUT) und ein DCI-Auswahlsignal (DCISEL) an den 2:1-Multiplexer aus. Der E/A-Anschluß 170 empfängt ein Statuseingangssignal von der entfernten Testbussteuervorrichtung 172 und kann Daten auf dem Bus ID1-8 empfangen oder ausgeben.
  • Der Datenbus ID1-8 und die Signale MCO und DCI ermöglichen dem entfernten Busmaster 124 mit dem DSM 18 und dem Primärbusmaster 12 zusammenzuarbeiten, um das in dieser Beschreibung beschriebene Kommunikationsprotokoll auszuführen. Wenn der entfernte Busmaster ein Kommunikationsprotokoll ausführt, wird das DCISEL-Signal gesetzt, um den Multiplexer 174 zu veranlassen, das DCOOUT-Signal auf dem DCI-Ausgang auszugeben. Wenn ein entfernter Busmaster 124 kein Kommunikationsprotokoll ausführt, kann er so eingestellt werden, daß er dem Multiplexer 174 ermöglicht, das externe Unterbrechungseingangssignal (DCI) auf dem DCI-Ausgang auszugeben.
  • Die entfernte Testbussteuervorrichtung 172 stellt die Schaltungsanordnung zum Senden und Empfangen serieller Daten und Steuersignale auf dem Sekundärbus über die Signale TCK, TMS, TDI und TDO zur Verfügung. In Fig. 13 ist die Architektur der Primärtestbussteuervorrichtung gezeigt. Die Architektur und die Operation sind ähnlich denjenigen der Primärtestbussteuervorrichtung. Der Hauptunterschied liegt darin, daß die entfernte Testbussteuervorrichtung 172 die Eingangssignale TCK und TRSTZ von einer externen Quelle empfängt. Sie empfängt ferner die Eingangssignale DTMS vom DSM und enthält eine Umleitungstaktfreigabeschaltung, einen 2:1-Multiplexer 176 sowie ein Flip-Flop 178, um einen Abtastumleitungspfad von TDI zu TDO zu schaffen, wenn die entfernte Testbussteuervorrichtung gesperrt ist.
  • Dieses Multiplexen des TDO-Signals zwischen dem Umleitungs- Flip-Flop 178 und dem Sende-Schieberegister ermöglicht der entfernten Testbussteuervorrichtung, entweder als einfaches Schieberegister im externen Abtastpfad oder als Busmaster zu agieren, der ein Steuersignal ausgeben kann, um Daten auf den externen Abtastpfad zu schieben. Die entfernte Bussteuervorrichtung umfaßt ferner einen Sender 180 (der ein Schieberegister 182 und einen FIFO 184 enthält), einen Empfänger 186 (der ein Schieberegister 188 und ein FIFO 190 enthält) sowie eine Steuerlogik 192, wie in Verbindung mit Fig. 11 beschrieben ist.
  • Wenn die entfernte Testbussteuervorrichtung gesperrt ist, wählt der TDOSEL-Eingang vom E/A-Anschluß den Q-Ausgang vom Urnleitungs-D-Flip-Flop aus, um das TDO-Ausgangssignal zu treiben. Während sie gesperrt ist, empfängt die entfernte Testbussteuervorrichtung 124 die Eingangssignale TCK und DTMS1-4 vom DSM, um das Umleitungs-Flip-Flop 178 zu veranlassen, Daten aus dem TDI-Eingang zum TDO-Ausgang über den 2:1- Multiplexer 176 zu schieben. Die Umleitungstaktfreigabeschaltung 194 empfängt die Eingangssignale TCK und DTMS1-4 und gibt ein Taktsignal an das Umleitungs-Flip-Flop 178 aus. Die Umleitungstaktfreigabeschaltung 194 wird aktiviert, um den Takt des Umleitungs-Flip-Flops 178 auszugeben, wenn einer der Eingänge DTMS1-4 für die Abtastoperation ausgewählt ist. Wenn ein Eingang DTMS1-4 ausgewählt ist oder wenn die durchgeführte Abtastoperation vorübergehend angehalten ist, wird der Taktausgang zum Umleitungs-Flip-Flop 178 angehalten und das Flip-Flop verharrt in seinem aktuellen Zustand. Wenn der Takteingang des Umleitungs-Flip-Flops 178 nicht durch die Umleitungstaktfreigabeschaltung 194 ein und ausgeschaltet wird, geht das Datenbit im Umleitungs-Flip-Flop 178 verloren, wenn eine Abtastoperation angehalten wird. Auf diese Weise ermöglicht die durch den Primärbusmaster gesteuerte Abtastoperation, daß Daten durch das Umleitungs-Flip-Flop vom TDI-Eingang durch das Flip-Flop und den Multiplexer zum TDO- Ausgang geschoben werden. Wenn die entfernte Bussteuervorrichtung freigegeben ist, wählt der TDOSEL-Eingang vom E/A- Anschluß den Ausgang des Sende-Schieberegisters aus, um das TDO-Ausgangssignal über den 2:1-Multiplexer zu treiben, wobei die entfernte Testbussteuervorrichtung so arbeitet, daß sie serielle Daten sendet und empfängt, wie in Verbindung mit der Primärtestbussteuervorrichtung beschrieben worden ist.

Claims (15)

1. Serienabtast-Testschaltungsanordnung mit mehreren im voraus definierten Schaltungen (16), wovon jede mehrere Sekundärabtastpfade (PATH1, PATH2 ... PATHm) besitzt, wobei die Anordnung ferner enthält:
einen Testbus (14) mit Steuer- und Datensignalleitungen, die an die im voraus definierten Schaltungen angeschlossen sind;
eine Testbus-Steuereinrichtung (12) zum Senden und Empfangen von Signalen an die im voraus definierten Schaltungen bzw. von diesen auf dem Bus; und
mehrere Vorrichtungsauswahlmodule (18), die an entsprechende im voraus definierte Schaltungen angeschlossen sind und auf Signale auf den Steuer- und Datenleitungen ansprechen, um die Sekundärabtastpfade der im voraus definierten Schaltungen wahlweise mit einem Primärabtastpfad zu koppeln, so daß die Länge des Primärabtastpfades für eine gewünschte Serienabtast-Testoperation optimiert wird.
2. Schaltungsanordnung nach Anspruch 1, in der die Testbus- Steuereinrichtung (12) eine Prozessorschaltungsanordnung enthält, die Steuer- und Datensignale auf dem Testbus an ausgewählte, gewünschte Sekundärabtastpfade sendet, welche mit dem Primärabtastpfad gekoppelt werden sollen.
3. Schaltungsanordnung nach Anspruch 1 oder Anspruch 2, in der jedes der Vorrichtungsauswahlmodule (18) einen primären Testport für den Empfang von Steuer- und Datensignalen von der Testbus-Steuereinrichtung enthält.
4. Serienabtast-Testschaltungsanordnung mit mehreren im voraus definierten Schaltungen (16), wovon jede mehrere Sekundärabtastpfade (PATH1, PATH2 ... PATHm) enthält, wobei die Anordnung ferner enthält:
einen Testbus (14) zum Koppeln von Steuer- und Datensignalen an die im voraus definierten Schaltungen;
eine Testbus-Steuereinrichtung (12) zum Senden und Empfangen von Signalen an die im voraus definierten Schaltungen bzw. von diesen auf dem Bus;
mehrere primäre Vorrichtungsauswahlmodule (18), die an entsprechende im voraus definierten Schaltungen angeschlossen sind und auf die Steuersignale ansprechen, um die Sekundärabtastpfade der im voraus definierten Schaltungen wahlweise mit einem Primärabtastpfad zu koppeln, so daß die Länge des Primärabtastpfades für eine gewünschte Serienabtast- Testoperation optimiert wird; und
mehrere sekundäre Vorrichtungsauswahlmodule (128), die an die primären Vorrichtungsauswahlmodule gekoppelt sind, wobei jedes der sekundären Vorrichtungsauswahlmodule so betrieben werden kann, das es zugeordnete Pfade der Sekundärabtastpfade über die primären Vorrichtungsauswahlmodule wahlweise an den Primärabtastpfad koppelt.
5. Schaltungsanordnung nach Anspruch 4, in der die Steuersignale parallel an jedes der primären Vorrichtungsauswahlmodule geleitet werden.
6. Schaltungsanordnung nach Anspruch 4, in der die Steuersignale direkt an jedes sekundäre Vorrichtungsauswahlmodul geleitet werden, um die Laufzeiten zu minimieren.
7. Schaltungsanordnung nach Anspruch 4, in der jedes der primären und sekundären Vorrichtungsauswahlmodule ein Datenregister enthält, das als Anwort auf ein von einem Testport empfangenes Steuersignal Datensignale vom Testbus empfängt.
8. Verfahren zum Ausführen eines Serienabtast-Tests in einer Schaltungsanordnung mit mehreren im voraus definierten Schaltungen, wovon jede mehrere Sekundärabtastpfade enthält, wobei das Verfahren die Schritte enthält:
Senden und Empfangen von Steuer- und Datensignalen auf einem Testbus an die im voraus definierten Schaltungen bzw. von diesen; und
wahlweises Koppeln einiger der Sekundärabtastpfade an einen Primärabtastpfad als Anwort auf die Steuer- und Datensignale, so daß die Länge des Primärabtastpfades für eine gewünschte Serienabtast-Testoperation optimiert wird.
9. Verfahren nach Anspruch 8, ferner mit dem Schritt des wahlweisen Speicherns von Steuer- und Datensignalen vom Testbus in einem Datenregister, das einer der im voraus definierten Schaltungen zugeordnet ist.
10. Serienabtast-Testschaltungsanordnung mit mehreren im voraus definierten Schaltungen (16), wovon jede mehrere Sekundärabtastpfade (PATH1, PATH2 ... PATHm) enthält, wobei die Anordnung ferner enthält:
einen primären Bus (14) zum Transportieren von Steuer- und Datensignalen an die im voraus definierten Schaltungen;
eine primäre Bussteuereinrichtung (12) zum Senden von Signalen an den Bus und zum Empfangen von Signalen von dem Bus;
ein Vorrichtungsauswahlmodul (18), das einer der im voraus definierten Schaltungen zugeordnet ist und auf Steuersignale anspricht, um einen der Sekundärabtastpfade, die der einen im voraus definierten Schaltung zugeordnet sind, wahlweise an einen Primärabtastpfad zu koppeln, so daß die Länge des Abtastpfads für eine gewünschte Serienabtast- Testoperation optimiert wird; und
eine entfernte Bussteuereinrichtung (124), die dem Vorrichtungsauswahlmodul zugeordnet ist und so betätigt werden kann, das sie an der zugeordneten im voraus definierten Schaltung unabhängig von der primären Bussteuereinrichtung einen Serienabtast-Test ausführt.
11. Schaltungsanordnung nach Anspruch 10, ferner mit einem parallelen Bus, der die entfernte Bussteuereinrichtung mit dem Vorrichtungsauswahlmodul koppelt.
12. Schaltungsanordnung nach Anspruch 11, ferner mit Tristate-Vorrichtungen, die der entfernten Bussteuereinrichtung und dem Vorrichtungsauswahlmodul zugeordnet sind, um die entfernte Bussteuereinrichtung oder das Vorrichtungsauswahlmodul wahlweise vom parallelen Bus abzukoppeln.
13. Schaltungsanordnung nach Anspruch 11 oder Anspruch 12, in der die entfernte Bussteuereinrichtung enthält:
einen Prozessor für die Ausführung von Testprogrammen;
einen Speicher zum Speichern der Testprogramme;
eine Eingabe/Ausgabe-Schaltungsanordnung zum Empfangen von Daten vom parallelen Bus und zum Senden von Daten an den parallelen Bus; und
eine Testbus-Steuereinrichtung zum Senden und Empfangen der Daten in serieller Form.
14. Schaltungsanordnung nach irgendeinem der Ansprüche 11 bis 13, ferner mit Pull-up- und Pull-down-Widerständen, die zwischen den parallelen Bus und entsprechende vorgegebene Spannungen geschaltet sind, so daß in Perioden, in denen weder die entfernte Bussteuereinrichtung noch das Vorrichtungsauswahlmodul an den parallelen Bus Daten ausgeben, ein Identifizierungscode auf den parallelen Bus geschickt werden kann.
15. Schaltungsanordnung nach Anspruch 10, in der das Vorrichtungsauswahlmodul einen primären Testport für den Empfang von Steuer- und Datensignalen von der primären Bussteuereinrichtung enthält.
DE69031676T 1989-08-09 1990-08-08 Architektur des Abtastpfads eines Systems Expired - Fee Related DE69031676T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/391,751 US5056093A (en) 1989-08-09 1989-08-09 System scan path architecture
US07/391,801 US5054024A (en) 1989-08-09 1989-08-09 System scan path architecture with remote bus controller

Publications (2)

Publication Number Publication Date
DE69031676D1 DE69031676D1 (de) 1997-12-11
DE69031676T2 true DE69031676T2 (de) 1998-03-12

Family

ID=27013620

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69031676T Expired - Fee Related DE69031676T2 (de) 1989-08-09 1990-08-08 Architektur des Abtastpfads eines Systems

Country Status (4)

Country Link
EP (1) EP0417905B1 (de)
JP (1) JPH03240851A (de)
KR (1) KR100212256B1 (de)
DE (1) DE69031676T2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19917686A1 (de) * 1999-04-19 2000-10-26 Thomson Brandt Gmbh Testverfahren für Schaltungen, die integrierte Schaltkreise enthalten

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5483518A (en) * 1992-06-17 1996-01-09 Texas Instruments Incorporated Addressable shadow port and protocol for serial bus networks
DE69321663T2 (de) * 1992-06-17 1999-05-06 Texas Instruments Inc., Dallas, Tex. Hierarchisches Verbindungsverfahren, -gerät und -protokoll
US5617420A (en) * 1992-06-17 1997-04-01 Texas Instrument Incorporated Hierarchical connection method, apparatus, and protocol
US5640521A (en) * 1992-06-17 1997-06-17 Texas Instruments Incorporated Addressable shadow port and protocol with remote I/O, contol and interrupt ports
US5951703A (en) * 1993-06-28 1999-09-14 Tandem Computers Incorporated System and method for performing improved pseudo-random testing of systems having multi driver buses
US5444716A (en) * 1993-08-30 1995-08-22 At&T Corp. Boundary-scan-based system and method for test and diagnosis
US6988232B2 (en) * 2001-07-05 2006-01-17 Intellitech Corporation Method and apparatus for optimized parallel testing and access of electronic circuits

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19917686A1 (de) * 1999-04-19 2000-10-26 Thomson Brandt Gmbh Testverfahren für Schaltungen, die integrierte Schaltkreise enthalten

Also Published As

Publication number Publication date
KR100212256B1 (ko) 1999-08-02
EP0417905A2 (de) 1991-03-20
KR910005063A (ko) 1991-03-29
EP0417905B1 (de) 1997-11-05
JPH03240851A (ja) 1991-10-28
DE69031676D1 (de) 1997-12-11
EP0417905A3 (en) 1992-04-08

Similar Documents

Publication Publication Date Title
DE69021594T2 (de) Hochgeschwindigkeitsdatenübertragung auf einem Rechnersystembus.
DE3882266T2 (de) Abfrageprüfgerät für digitale Systeme mit dynamischem Direktzugriffspeicher.
DE69713856T2 (de) Integrierte Halbleiterspeicheranordnung und Kommunikationsverfahren dafür
DE3587715T2 (de) Integrierte Schaltung.
DE69030528T2 (de) Verfahren und Anordnung zum Testen von Schaltungsplatten
EP0146645B1 (de) Prüf- und Diagnoseeinrichtung für Digitalrechner
DE69223461T2 (de) Konfigurable Selbstprüfung für integrierte RAMs
DE69031362T2 (de) Verzögerungsfehler-Testvorrichtung
US5054024A (en) System scan path architecture with remote bus controller
DE69715345T2 (de) Eine integrierte Schaltung mit einer TAP (Testzugriffport) Steuerungsvorrichtung
DE2729053C2 (de) Prüfverfahren für eine monolithisch integrierte stufenempfindliche, einseitig verzögerungsabhängige logische Einheit
DE69019402T2 (de) Prüfverfahren und -gerät für integrierte Schaltungen.
DE68928837T2 (de) Prüf-Puffer/Register
DE3789651T2 (de) Hochleistungsfehlererkennung und Fehlersuche in einem Taktsystem.
DE69506337T2 (de) Von einem LSI-Prüfer mit einer verminderten Anzahl von Stiften testbare integrierte Halbleiterschaltung
DE69705813T2 (de) Diagnosesystem und Verfahren bei einer integrierten Halbleiterschaltung
DE69321663T2 (de) Hierarchisches Verbindungsverfahren, -gerät und -protokoll
DE69832015T2 (de) Halbleiterspeicher mit einer verbesserten Prüfschaltung
EP0126785B1 (de) Prüf- und Diagnoseeinrichtung für Digitalrechner
DE69024138T2 (de) Verfahren und Einrichtung zur Erzeugung von Steuersignalen
DE69802977T2 (de) Steuervorrichtung einer Auslösesignalreihenfolge
DE69321207T2 (de) Abtastprüfung für integrierte Schaltkreise
DE69116663T2 (de) Integrierter Schaltkreis mit Peripherieprüfungssteuerung
DE69031291T2 (de) Testmethode, Testschaltung und integrierter Halbleiterschaltkreis mit Testschaltung
DE69724742T2 (de) Speicherfeldprüfschaltung mit Fehlermeldung

Legal Events

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