-
Gebiet der Erfindung
-
Die
vorliegende Erfindung bezieht sich im Allgemeinen auf eine Prüfung integrierter
Schaltungen und im Besonderen auf eine automatische Abtastprüfung der
Funktionalität
komplexer integrierter Schaltungen.
-
Hintergrund
der Erfindung
-
Komplexe
integrierte Schaltungen enthalten oft einen oder mehr eingebettete
Kerndatenprozessoren, die mit Peripheriegeräten, Speichern oder anderen
Schaltkreisen auf demselben Substrat kommunizieren. In dem US-Patent
Nr. 5 717 700, erteilt an den vorliegenden Antragsteller, wird ein
Verfahren der automatischen Abtastprüfung solcher integrierten Schaltungen
beschrieben.
-
Die
Komplexität
der modernen integrierten Schaltungen ('Chips') nimmt weiterhin dramatisch zu. Moderne
integrier te Schaltungen umfassen Millionen von Transistoren, die
auf einem einzelnen Substrat enthalten sind. Um die Millionen von
Transistoren auf dem Substrat zu erzeugen, hat die Größe eines
jeden Transistors dramatisch abgenommen. Somit nimmt heute eine
einzelne integrierte Schaltung weniger Raum ein, arbeitet schneller
und verbraucht weniger Strom als jemals zuvor. Mit dem Anstieg der
Transistorzahlen auf jeder integrierten Schaltung nimmt jedoch auch
die Wahrscheinlichkeit zu, dass mindestens ein auf der integrierten
Schaltung enthaltener Transistor nach der Herstellung schlecht funktioniert, und
seine Prüfung
wird zunehmend komplex. Daher werden automatische Prüfverfahren
verwendet, um den Betrieb von integrierten Schaltungen nach der Fertigung,
aber vor dem Verkauf, zu verifizieren.
-
Wenn
es z. B. 3 Millionen Transistoren auf einer integrierten Schaltung
gibt, die in einem 300 Pin-Paket verpackt sind, müssen bestenfalls
durchschnittlich (3.000.000/300)=10.000 Transistoren durch jeden
Pin geprüft
werden. Ferner können
viele Techniken, die verwendet worden sind, um dicht gepackte Leiterplattenkonstruktionen
zu prüfen
und zu verifizieren, nicht im Betrieb der integrierten Schaltung
verwendet werden, weil es keinen direkten Zugriff zu vielen der
Schaltungen in der verpackten und versiegelten integrierten Schaltung
gibt.
-
Die
in dem US-Patent Nr. 5 717 700 beschriebene Abtastprüftechnik
ist eine kosteneffektive Lösung,
den Betrieb integrierter Schaltungen zu prüfen, die funktionale Logikelemente
und Registerelemente, wie z. B. Flip-Flop-Schaltungen oder Latches, mit funktionalen
Verbindungen zwischen den verschiedenen Elementen umfasst. Die integrierte Schaltungskonstruktion
umfasst eine spezifische Be reitstellung zum Neukonfigurieren der
Verbindungen zwischen den Elementen der integrierten Schaltung, so
dass Prüfdatensignale,
die seriell an einem oder mehr Eingangspins eintraten, im Unterschied
zu dem normalen funktionalen Systempfad entlang einer Abtastkette
von einem Registerelement zum anderen verschoben ('abgetastet') werden können, um
die Signale des Prüfvektors
an den gewünschten
Standorten anzuordnen. Die integrierte Schaltung kehrt dann vorübergehend
für einen
oder mehr Taktimpulse zu ihrer normalen funktionalen Systemkonfiguration
zurück,
um entsprechend einem besonderen Ergebnis der Logikfunktion aus
den normalen Logikfunktionen in den integrierten Schaltungen bei
gegebenen Werten des Prüfvektors
Prüfausgaben
zu erzeugen. Die integrierte Schaltung kehrt dann zu der Abtastkonfiguration
zurück
und verschiebt die Prüfausgaben entlang
der Abtastkette zu einem oder mehr Ausgangspins, wo sie abgerufen
und mit den erwarteten Ergebnissen verglichen werden können, um
Fehler zu diagnostizieren.
-
Dieses
Abtastprüfverfahren
muss während der
Konstruktion der integrierten Schaltung zur Verfügung gestellt werden ("Design-for-Test" _ 'Konstruktion für die Prüfung'). Es werden zusätzliche
Abtastverbindungswege für
die Abtastkette eingefügt,
die alternative Abtasteingänge
und – ausgänge für Abtastdaten
parallel zu den funktionalen Dateneingängen und -ausgängen einbinden,
und die zu bestimmten der Basiselemente (Flip-Flop-Schaltungen und Latches)
in den integrierten Schaltungen hinzugefügt werden. Der alternative
Eingang für
die Abtastdaten eines Abtastelementes kann durch Anordnen eines Multiplexers
vor dem Standardeingang des Abtastelementes implementiert werden,
um entweder Abtastdaten oder funktionelle Daten auszuwählen. Diese 'ab tastkonfigurierbaren' Elemente werden
dann während
der Abtastkonfiguration durch Verbinden des Abtastausgangs eines
Elementes mit dem Abtasteingang des nächsten Elementes der Abtastkette,
in Reaktion auf ein Abtastfreigabesignal, das an einen Freigabeeingang
der abtastkonfigurierbaren Elemente anliegt, in der Art eines seriellen
Verschieberegisters zusammenverbunden. Die Abtastkette kann dann,
dadurch dass den Abtastdaten gestattet wird, auf jeder aktiven Abtasttaktflanke
von einem Element zum anderen übertragen
zu werden, Abtastprüfdaten
laden (und gleichzeitig die Prüfergebnisse, die
interne Statusinformationen über
die integrierte Schaltung bereitstellen, entladen). Nach dem Laden der
Abtastprüfdaten,
um die Elemente der Abtastkette in einen gewünschten Zustand für die Prüfung zu versetzen,
liegt das Abtastfreigabesignal vorübergehend nicht an (Einstellen
auf 'Null', wenn sein anliegender
Wert 'Eins' ist), um den funktionellen
Dateneingang des Abtastelementes zu verwenden, um Daten aus den
Logikschaltungselementen zu erfassen, die sich für einen oder mehr Taktzyklen
im funktionellen Modus befinden. Das Abtastfreigabesignal liegt dann
neu an und die Prüfergebnisse
werden entladen (und frische Abtastprüfdaten für die nächste Phase der Prüfung werden
gleichzeitig geladen).
-
Durch
selektives Laden von Abtastdaten und Variieren der Abtasttaktfrequenzen
kann die Technik des Bereitstellens von Prüfdaten im Abtastmodus und des
Schaltens in den funktionellen Modus für mehr als einen Taktzyklus
eingesetzt werden, um Zeitverzögerungen
von Teilen des Logikschaltkreises in der integrierten Schaltung
zu verifizieren.
-
Die
Abtastkonstruktion hat somit den Effekt, dass sie jede ausgewählte sequenzielle
abtastkonfigurierbare Vorrichtung (Flip-Flop-Schaltung oder Latch)
in einen internen Prüfpunkt
verwandelt. In einer typischen abtastkonfigurierbaren Vorrichtung, wie
z. B. einer Flip-Flop-Schaltung, wird der Standardeingang als der
D-Eingang bezeichnet, während
der Standardausgang als der Q-Ausgang bezeichnet wird, wobei der
Abtastprüfdateneingang
und -ausgang jeweils als SD-Eingang und SD-Ausgang bezeichnet werden.
Somit ist der D-Eingang von jeder abtastkonfigurierbaren Vorrichtung
ein einstellbarer Prüfpunkt
und der Q-Ausgang ein primärer
Ausgangsprüfpunkt,
während
der SD-Eingang und der SD-Ausgang Datenladungs- und Datenentladungspunkte
in der Abtastkette sind.
-
Es
ist klar, dass nicht jedes Speicherelement in ein Abtastelement
umgewandelt werden muss, um Vorteile während des Abtastens zur Verfügung zu stellen.
Wenn alle Elemente versammelt sind, dann ist die Konstruktionsarchitektur
als Voll-Abtastung bekannt. Wenn jedoch nur ausgewählte Speicherelemente
versammelt sind, dann ist die Konstruktionsarchitektur als Teil-Abtastung
bekannt. wenn sowohl eine voll-Abtastung als auch eine Teil-Abtastung
unterstützt
wird, verbessert sich die Ökonomie
der Prüfung.
Eine Abtastarchitektur beider Arten erlaubt es jeder abgetasteten
sequentiellen Vorrichtung so angesehen zu werden, als ob sie ein
Verpackungspin ist, der das Gate/Transistor-zu-Pin-Verhältnis verringert
(z. B. haben 3 Millionen Transistoren in einer 300 Pin-Packung mit
10.000 abtastkonfigurierbaren sequentiellen Elementen einen Gütefaktor
von 291 Transistoren pro Pin). Weil die Logikfunktionen zugänglicher
sind, benötigt
eine integrierte Schaltung, die eine Abtastarchi tektur umfasst,
weniger Prüfvektoren
und weniger Prüfzeit.
Eine Verringerung in der Prüfzeit
resultiert in einer Verringerung der Stückkosten beim Herstellen der
integrierten Schaltung.
-
Ein
einzelner Chip kann auch durch Verwenden mehrerer Module konstruiert
werden, die zuvor für
unterschiedliche Chips konstruiert worden sind, und in einer neuen
Konfiguration zusammengebracht werden. Eine Teilabtastung befähigt die
für diese
Module entwickelten Prüfmuster,
auch in der neuen Chipkonstruktion wiederverwendet zu werden. Eine Teilabtastung
stellt z. B. außerdem
eine Verbesserung der Verfügbarkeit
von Pins zum Einführen
externer Abtastprüfsignale
und mehr Flexibilität
in der Wahl verschiedener Prüftechniken
für verschiedene Module
zur Verfügung.
-
Ein
potentielles Problem bei der Teilabtastung liegt darin, dass die
Dateneingangssignale an bestimmten Punkten, besonders z. B. an den
Schnittstellen (oder 'Dichtungen') der Module, nicht
gesteuert werden können,
d. h. dass die verbreiteten Signale 'unbekannt' (unvorhersehbar) sein können. Sogar wenn
die Dateneingangssignale in dem Chip, für den die Module zuerst konstruiert
wurden, gesteuert werden, ist es wünschenswert, ein Wiederverwenden des
Moduls mit einem Minimum an Neukonstruktion seiner Architektur und
Software in zukünftigen
anderen Chips zur Verfügung
zu stellen. Entsprechend ist es wünschenswert, eine selektive
Steuerung mindestens bestimmter Abtastprüfdateneingangssignalen zur
Verfügung
zu stellen.
-
Ein
Prüfen
des im Wesentlichen ganzen Chips kann durch Teilen des vollständigen Chips
in verschiedene Prüfdomänen erreicht
werden, wobei jede mehrere parallele Abtastketten umfasst und deren
Grenzen in bestimmten Fällen
mit den Grenzen der verschiedenen Module übereinstimmen; ein Modul kann
jedoch mehr als eine Domäne
enthalten, oder, was typischer ist, eine Domäne kann mehr als ein Modul
enthalten. Während
der Abtastkonfiguration werden die Domänen in Reaktion auf ein Abtastmodussignal
getrennt. Die Abtastdaten der verschiedenen Domänen werden dann eingegeben
und die Prüfungen
der verschiedenen Domänen
sequentiell eingesetzt. Ein solches System und Verfahren wird hierin
als ein 'Domänabtast'-Testsystem und -Verfahren
bezeichnet.
-
Ein
Grenzabtastsystem für
Leiterplatten wird in dem US-Patent Nr. 5 450 415 und Nr. 6 115
827 beschrieben. Es ist möglich,
ein solches Grenzabtastsystem für
integrierte Schaltungen durch Hinzufügen von Flip-Flop- und Multiplexelementen,
die als Abtastmitläufer
("scan wrapper") bezeichnet werden,
zu adaptieren, um Endelemente der Abtastketten in die integrierten
Schaltungen einzugeben, um die Werte der Abtastprüfdatensignale
an jedem Punkt zu definieren, wo das Signal andernfalls unbekannt
wäre. Diese
Konfiguration erzeugt jedoch eine beträchtliche zusätzliche
Hardware (ein großer
Chip kann 7 Abtastdomänen
und 30 oder mehr Module umfassen, von denen jedes die Steuerung
vieler unbekannter Eingaben an den Schnittstellen erfordert), führt eine zusätzliche
Zeitverzögerung
in die Systembetriebsfunktionen ein, ist hinsichtlich einer Wiederverwendung
der Module in anderen zukünftigen
Chips unflexibel, und das Prüfen
des realen funktionalen Pfades ist suboptimal.
-
Zusammenfassung
der Erfindung
-
Die
vorliegende Erfindung stellt ein Verfahren zum Prüfen einer
integrierten Schaltung, wie in den begleitenden Ansprüchen beschrieben,
und eine integrierte Schaltung, die, wie in den begleitenden Ansprüchen beschrieben,
durch ein Verfahren geprüft
wird, zur Verfügung.
-
Kurze Beschreibung
der Zeichnungen
-
1 ist ein schematisches
Diagramm eines vereinfachten Elementarmoduls in einem bekannten Typ
einer vollabtastungskonfigurierbaren integrierten Schaltung,
-
2 ist ein verallgemeinertes
schematisches Diagramm eines Moduls in einem bekannten Typ einer
teilabtastungskonfigurierbaren integrierten Schaltung, das eine
Domänegrenze
aufweist,
-
3 ist ein Diagramm, das
Signale zeigt, die in dem Domäneabtastbetrieb
einer teilabtastkonfigurierbaren integrierten Schaltung, wie z.
B. der integrierten Schaltung von 2,
auftreten.
-
4 ist ein schematisches
Diagramm eines Moduls in einer teilabtastkonfigurierbaren integrierten
Schaltung gemäß einer
Ausführungsform
der vorliegenden Erfindung,
-
5 ist ein schematisches
Diagramm eines Abtastelementes in der teilabtastkonfigurierbaren
integrierten Schaltung von 4,
und
-
6 ist ein schematisches
Diagramm eines Moduls in einer teilabtastkonfigurierbaren integrierten
Schaltung gemäß einer
anderen Ausführungsform
der vorliegenden Erfindung.
-
Beschreibung
einer bevorzugten Ausführungsform
-
1 stellt ein vereinfachtes
Modul 1 in einer integrierten Schaltung dar. Das Modul
umfasst die Logikelemente 2, einschließlich z. B. Gates und Inverter,
und die Registerelemente 3, wobei die Logikelemente 2 und
die Registerelemente 3 in einer funktionalen Konfiguration
durch die elektrisch leitenden Verbindungen 4 zwischen
den Dateneingangspunkten 5 und den Datenausgangspunkten 6 normal verbunden
sind. Das Modul 1 umfasst außerdem einen Taktsignaleingangspunkt 7,
dem Taktsignale zugeführt
werden, wobei diese Taktsignale an entsprechenden Takteingängen der
Registerelemente 3 anliegen, um eine Zustandsänderung
der Registerelemente freizugeben.
-
Das
Modul 1 umfasst außerdem
einen Abtastdateneingangspunkt 8, dem Abtastdatensignale zugeführt werden,
wobei der Abtastdateneingangspunkt 8 der Beginn einer Abtastkette
ist, die Folgendes umfasst: die elektrisch leitenden Abtastleiter 9, die
die Registerelemente 3 mit dem Abtastdateneingangspunkt 8 verbinden,
wobei der Abtastdateneingang SDI der Registerelemente 3 mit
den Abtastdatenausgängen
SDO des vorherigen Registerelementes 3 in der Kette verbunden
ist, mit Ausnahme des ersten Registerelementes 3 in der
Kette, das mit dem Abtastdateneingangspunkt 8 verbunden
ist, und des letzten Registerelementes 3 in der Kette,
dessen Abtastdatenausgang SDO mit einem Abtastdatenausgangspunkt 10 verbunden
ist. Das Modul 1 umfasst außerdem einen Abtastfreigabeeingangspunkt 11, der
mit den Abtastfreigabeleitern 12 verbunden ist, die verbunden
sind, um die Eingänge
SEN der Registerelemente 3 zu steuern, wobei der Steuereingang SEN
die Registerelemente von ihren normalen Dateneingängen D auf
die Abtastdateneingänge
SDI umschaltet, wenn ein Abtastfreigabesignal an dem Eingang 11 anliegt.
-
Unter
normalen Betriebsbedingungen des Moduls 1, sind die Logikelemente 2 und
die Registerelemente 3 durch die Leiter 4 zwischen
dem Dateneingangspunkt 5 und dem Datenausgangspunkt 6 verbunden.
Das dem Abtastfreigabeeingangspunkt 11 zugeführte Abtastfreigabesignal
liegt nicht an, so dass die Dateneingänge D der Registerelemente 3 und
nicht die Abtastdateneingänge
SDI funktional sind. Das Modul führt
dann seinen normalen funktionalen Betrieb in Reaktion auf die dem
Takteingangspunkt 7 zugeführten Taktsignale durch.
-
Während der
Abtastprüfung
liegt das dem Abtastfreigabeeingangspunkt 11 zugeführte Abtastfreigabesignal
an, so dass die Abtastdateneingänge SDI
der Registerelemente 3 anstatt der funktionalen Eingänge D in
Betrieb sind. Die dem Abtastdateneingang 8 zugeführten seriellen
Daten können
dann entlang der Kette der Registerelemente 3 verschoben werden,
in Reaktion auf Taktimpulse, die dem Takteingangspunkt 7 zugeführt werden,
um bekannte Daten in die Registerelemente 3 zu laden und
sie auf den gewünschten
Zustand einzustellen. Das dem Eingangspunkt 11 zugeführte Abtastfreigabesignal liegt
dann für
einen oder mehr Zyklen von Taktimpulsen nicht an, so dass die Logikelemente 2 und
das Registerelement 3 wieder durch die funktionale Konfiguration
der Leiter 4 verbunden werden, und das Modul 1 führt seine
Logikfunktion mit den den Dateneingangspunkten 5 zugeführten Daten
und den in die Registerelemente 3 geladenen Daten durch.
Schließlich
liegt das dem Eingangspunkt 11 zu geführte Abtastfreigabesignal wieder
an und der neue Zustand der Registerelemente 3 im Anschluss
an das Arbeiten des Moduls 1 mit den geladenen Daten entlang der
Leiter 9 und der Kette von Registerelementen 3 zu
dem Abtastdatenausgangspunkt 10 herausgeschoben, wo er
mit erwarteten Werten der Prüfergebnisse
verglichen werden kann, um das richtige Funktionieren des Moduls 1 zu überprüfen.
-
Das
Modul 1 wird mit allen Registerelementen 3 gezeigt,
die durch die Abtastleiter 9 in der Abtastkette schaltbar
sind. Es ist jedoch klar, dass in der Praxis, besonders bei großen Modulen,
die eingesetzte Architektur eine Teilabtastung sein kann, bei der
nur bestimmte, ausgewählte
der Registerelemente 3 in der Abtastkette verbunden sind.
-
2 stellt ein zuvor vorgeschlagenes Grenzabtastsystem
schematisch dar. In dem in 2 dargestellten
Modul wird ein Register 3 gezeigt, das mit dem Anschluss 4 verbunden
ist, der Daten abliefert, wobei der Leiter 12 das Abtastfreigabesignal
abliefert und ein Leiter 9 das Abtastdateneingangssignal
abliefert, wobei der Rest der Logikelemente bei 13 global
dargestellt wird. Ein zusätzliches
Register 14, wie z B. eine Flip-Flop-Schaltung, wird für einen
Punkt zur Verfügung
gestellt, dessen Eingänge
als unbekannt behandelt werden und der daher gesteuert werden muss.
Das Register 14 empfängt
Dateneingänge über die
funktionalen Konfigurationsleiter 4 in dem Modul, Abtastdateneingangssignale über die
Abtastkettenleiter 9 und Abtastfreigabesignale über die
Leiter 12. Der Ausgang des Registers 14 ist mit
dem Eingang eines Multiplexers 15 verbunden, der außerdem ein
Dateneingangssignal von dem Moduldateneingangspunkt 5 empfängt. Ein
Abtastmodussignal wird einem Steuereingang 16 des Multiplexers 15 zugeführt, um
entweder das Dateneingangssignal von dem Dateneingangspunkt 5 in funktioneller
Konfiguration oder den Ausgang des Registers 14 in Abtast-
und Abtastprüfkonfiguration auszuwählen.
-
Es
wird nun auf 3 Bezug
genommen. Darin wird das Timing der zugeführten Signale zusammen mit
den entsprechenden Betrieben der Register dargestellt. Für jene Module,
die abgetastet werden sollen, liegt das Abtastmodussignal bei 16 an und
zunächst
liegt das Abtastfreigabesignal während einer
ersten Verschiebungsphase 17, während der den Leitern 7 Taktimpulse
zugeführt
werden, bei 12 an. Gleichzeitig werden dem Abtastdaten-Eingangspunkt 8 die
gewünschten
Abtastdateneingänge
seriell zugeführt
und über
die Abtastkonfigurationsleiter 9 durch die Registerelemente 3 übertragen.
Wenn alle Abtastdateneingangssignale auf den verschiedenen Registerelementen 3,
und im Falle des in 2 gezeigten
Moduls einschließlich
des Registerelementes 14, angeordnet sind, liegt das Abtastfreigabesignal an
den Leitern 12 nicht an, wodurch die D-Eingänge der
Registerelemente 3 und 14 geführt werden. Die entsprechenden
Werte erscheinen dann bei den Ausgängen der bei 19 gezeigten
Registerelemente 3 und 14. Ein oder mehr Taktimpulse
werden bei dem Takteingangspunkt 7 zur Verfügung gestellt,
wie bei 20 gezeigt, so dass die Logikelemente 13,
die nun in der funktionalen Konfiguration sind, die Daten über die Verbindung
des Anschlusses 4 verarbeiten. Das Abtastfreigabesignal
liegt dann an dem Abtastfreigabeeingangspunkt 11 neu an,
um die Registerelemente 3 und 14 in der Abtastkonfiguration
durch die Leiter 9 neu zu verbinden, und während einer
zweiten Verschiebephase 22 werden Taktimpulse erneut dem Takteingangspunkt 7 zugeführt, um
die Daten von den Ausgän gen
der Registerelemente 3 und 14 seriell zu dem Ausgangspunkt 10 zu
verschieben. Es ist klar, dass, während die Abtastdaten in der
ersten Phase 17 geladen werden, Daten aus einer vorherigen
Prüfung
gleichzeitig aus denselben Registerelementen entladen werden, und
umgekehrt können während der
zweiten Verschiebephase 22, wenn Daten entladen werden,
Daten für
die nächste
Abtastung für
die nächste
Prüfung
geladen werden.
-
Obwohl
in 2 gezeigt wird, dass
ein einzelnes Element, das das Register 14 und den Multiplexer 15 umfasst,
gesteuert wird, ist klar, dass in einem typischen Modul mehrere
Punkte in dem Modul gesteuert werden und für jeden ein zusätzliches
Register 14 und ein zusätzlicher
Multiplexer 15 in diesem System nach dem Stand der Technik,
wie durch die Wiederholungssymbole für die Elemente 14 und 15 angezeigt,
zur Verfügung
gestellt werden. Darüber
hinaus werden die zusätzlichen
Elemente 14 und 15 in den Datenflusspfad der funktionalen
Konfiguration, einschließlich
dem Leiter 4, eingefügt
und sie führen
zusätzliche
Zeitverzögerungen
in die Betriebsfunktionen des Systems ein.
-
4 zeigt eine Ausführungsform
der vorliegenden Erfindung, die jeden beliebigen Bedarf an einem
zusätzlichen
Speicher, wie z. B. 14, oder einem zusätzlichen Multiplexer, wie z.
B. 15, vermeidet. In dieser Ausführungsform der Erfindung wird
das Abtastmodussignal auf dem Leiter 16 direkt dem Abtastfreigabeeingang
SEN eines jeden der normalen Registerelemente, die einen Teil des
Betriebsschaltkreises des Moduls bilden, anstatt des Abtastfreigabesignals,
für jene
Elemente zugeführt,
wo es gewünscht wird,
die Daten zu steuern, die das Register über die funktionalen Konfigurationsleiter 4 während der
Datenerfassungsphasen 18 bis 21 der Abtastprüfung überträgt. Unter
Betriebsbedingungen liegt für
diese Domäne
während
der gesamten Abtastprüfung
das Abtastmodussignal an dem Leiter 16 an, so dass die entsprechenden
Registerelemente 3 die Abtastdateneingangssignale auf den
Leitern 9 und nicht die Datensignale aus den über die
Leiter 4 abgelieferten Logikelementen erfassen.
-
5 zeigt die Struktur jener
Registerelemente 3, deren Eingänge auf diese Weise gesteuert werden
sollen. Das Registerelement 3 ist in diesem Falle zu einem
Multiplexerteilelement 23, das als Eingänge die Daten auf dem Datenleiter 4 aus
dem Logikelement und die Abtastdatensignale auf dem Leiter 9 empfängt, äquivalent,
wobei die Auswahl zwischen den zwei Eingängen durch das Abtastmodussignal
vorgenommen wird, das über
den Leiter 16 einem Steuereingang des Multiplexerteilelementes 23 zugeführt wird.
Der Ausgang des Multiplexerteilelementes 23 ist ein "Abtast-Immer"-Signal, das sich während der
gesamten Abtastprüfung
auf das Abtastdatensignal bezieht, einschließlich sowohl den Verschiebephasen 17 und 22 als
auch den Prüfphasen 18 bis 21.
Das Abtast-Immer-Signal wird dem Dateneingang einer einfachen digitalen Flip-Flop-Schaltung 24 zugeführt, dessen
Ausgang die Datensignale auf den Leiter 4 und die Abtastdatensignale
auf die Abtastkonfigurationsleiter 9 gibt.
-
Während die
in 4 und 5 dargestellte Ausführungsform der Erfindung verglichen
mit dem Stand der Technik wesentliche Vorteile bietet, bietet die
in 6 gezeigte Ausführungsform
eine wesentliche Verbesserung in der Flexibilität der Verwendung auf Kosten
einer geringen Zunahme an Hardware und zusätzlicher Eingangspunkte.
-
In
der in 6 gezeigten Ausführungsform der
Erfindung werden Gruppen der Registerelemente 3, deren
Datenein gänge über die
Leitung 4 während des
Abtastprüfprozesses
gesteuert oder nicht gesteuert werden sollen, mit einem zusätzlichen
Multiplexerelement 25 verbunden, wobei so viele Multiplexerelemente 25 zur
Verfügung
gestellt werden, wie es verschiedene Gruppen von Registerelementen 3 gibt,
die getrennt gesteuert werden sollen. Jedes Multiplexerelement 25 hat
einen Eingang, der mit einem Abtastfreigabeleiter 12 verbunden
ist, und einen anderen Eingang, der mit einem Abtastmodusleiter 16 verbunden
ist. Ein Steuereingang des Multiplexers 25 ist mit einem
entsprechenden Leiter 26 verbunden, dem ein 'Abtast-Immer-Freigabe'-Signal von einem
Eingangspunkt zugeführt
wird. Der Ausgang der Multiplexerelemente 25 wird über die "Abtast-Immer"-Leiter 27 den
Abtastfreigabeeingängen
SEN ihrer jeweiligen Gruppen von Registerelementen 3 zugeführt.
-
Unter
Betriebsbedingungen wird, wenn es gewünscht wird, die während der
Abtastprüfung
für eine
bestimmte Gruppe von Registerelementen 3 verwendeten Eingänge zu steuern,
das Immer-Abtastfreigabesignal liegt für diese Gruppe an der Leitung 26 an
und der entsprechende Multiplexer 25 wählt das Abtastmodussignal auf
dem Leiter 16 anstatt des Abtastfreigabesignal auf dem
Leiter 12 aus. Das Abtastmodussignal wird dann auf dem
Abtast-Immer-Leiter 27 der Gruppe von Registerelementen 3 an
Stelle eines Abtastfreigabesignals zugeführt und das Abtastmodussignal,
das anliegt, wenn diese Domäne
abgetastet werden soll, liegt an den Abtastfreigabeeingängen SEN
dieser Gruppe von Registerelementen 3 während des gesamten Abtastbetriebs
an. Wenn sich andererseits die Gruppe von Registerelementen 3 während des
Abtastverfahrens in einer normalen Abtastfunktion verhalten soll,
liegt das Immer-Abtastfreigabe-Signal an dem Leiter 26 während des
Abtastverfahrens nicht an, so dass der entsprechende Multiplexer 25 das
Abtastfreigabesignal auf dem Leiter 12 auswählt. Dieses
Signal erscheint dann bei dem Immer-Abtastleiter 27 und
wird dann, wie in 3 gezeigt,
dem Abtastfreigabeeingang SEN der entsprechenden Gruppe von Registerelementen 3 zugeführt.
-
Es
ist klar, dass diese Ausführungsformen der
Erfindung keine zusätzliche
Hardware in den Datenflusspfad der funktionellen Konfiguration zwischenschalten,
so dass während
des Prüfverfahrens keine
Zeitverzögerungen
eingeführt
werden. Die Weitergabe unbekannter Werte während des Prüfverfahrens
wird vermieden, ohne wesentliche zusätzliche Hardware, und die Ausführungsform
von 6 bietet eine flexible
Lösung,
die im Besonderen wertvoll ist, wo ein Modul in zukünftigen
integrierten Schaltungen verwendet werden soll oder andererseits
nicht immer in einem Abtastdomänenmodus
implementiert werden soll.