DE102008003450A1 - Digitalschaltungen und Verfahren zum Testen einer Digitalschaltung - Google Patents

Digitalschaltungen und Verfahren zum Testen einer Digitalschaltung Download PDF

Info

Publication number
DE102008003450A1
DE102008003450A1 DE102008003450A DE102008003450A DE102008003450A1 DE 102008003450 A1 DE102008003450 A1 DE 102008003450A1 DE 102008003450 A DE102008003450 A DE 102008003450A DE 102008003450 A DE102008003450 A DE 102008003450A DE 102008003450 A1 DE102008003450 A1 DE 102008003450A1
Authority
DE
Germany
Prior art keywords
memory elements
data
digital circuit
elements
registers
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.)
Granted
Application number
DE102008003450A
Other languages
English (en)
Other versions
DE102008003450B4 (de
Inventor
Wilhard von Dr. Wendorff
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
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
Application filed by Infineon Technologies AG filed Critical Infineon Technologies AG
Publication of DE102008003450A1 publication Critical patent/DE102008003450A1/de
Application granted granted Critical
Publication of DE102008003450B4 publication Critical patent/DE102008003450B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/30Accessing single arrays
    • G11C2029/3202Scan chain

Abstract

Die vorliegende Erfindung betrifft Digitalschaltungen und Verfahren zum Testen einer Digitalschaltung. Gemäß einem Aspekt der vorliegenden Erfindung wird eine Digitalschaltung bereitgestellt, die eine erste Vielzahl von Speicherelementen und eine zweite Vielzahl von Speicherelementen aufweist, wobei die Digitalschaltung in einem ersten Betriebsmodus und in einem zweiten Betriebsmodus betrieben werden kann und dadurch gekennzeichnet ist, dass im ersten Betriebsmodus die Speicherelemente von der ersten Vielzahl von Speicherelementen entsprechend ihres Verwendungszwecks innerhalb der Digitalschaltung operieren und die Speicherelemente von der zweiten Vielzahl von Speicherelementen in Reihe geschaltet sind, und dadurch gekennzeichnet, dass im zweiten Betriebsmodus die erste Vielzahl von Speicherelementen mit der zweiten Vielzahl von Speicherelementen verbunden wird, um einen Datenaustausch zwischen der ersten Vielzahl von Speicherelementen und der zweiten Vielzahl von Speicherelementen zu ermöglichen.

Description

  • Die vorliegende Erfindung betrifft Digitalschaltungen und Verfahren zum Testen einer Digitalschaltung.
  • HINTERGRUND DER ERFINDUNG
  • Oftmals ist es erforderlich, den korrekten Betrieb von Digitalschaltungen, z. B. von Mikroprozessoren oder Mikrokontrollern, wiederholt zu überprüfen. Insbesondere im Automotivbereich ist es äußerst wichtig, den korrekten Betrieb von Mikroprozessoren oder Mikrokontrollern sicherzustellen, die in Steuereinrichtungen vorhanden sind.
  • Allgemein bekannte Verfahrensweisen zum Testen der Funktionalität eines Mikroprozessors in einer Steuereinrichtung, oder genauer erklärt, eines Prozessorkerns bzw. einer zentralen Prozessoreinheit (CPU) im Hauptprozessor basieren z. B. auf redundanten Systemen [Doppelsystemen]. Zu diesem Zweck werden zwei Prozessoren mit ähnlicher Rechnerleistung bereitgestellt. Auf beiden Prozessoren wird ein entsprechender Steuerungsalgorithmus ausgeführt. Die Ergebnisse, und manchmal auch die Zwischenergebnisse, werden beispielsweise vor dem Aktivieren der jeweiligen Ausgabesignale verglichen. Wenn sich die Ergebnisse signifikant unterscheiden, wird in einem von den zwei Prozessoren von einem Fehler ausgegangen und das ganze System wird in einen „Ausfallsi cherungszustand" versetzt, in dem zum Beispiel das System heruntergefahren wird, damit eine nicht korrekte Steuerung vermieden wird. Da jedoch die Prozessorsteuerung während eines regulären Betriebs durchgeführt wird, werden Fehler, die zu einem Herunterfahren des Steuerungssystems führen können, erst erfasst, wenn sich das Auto bewegt, wobei dies in Bezug auf den Autofahrer zu gefährlichen Situationen führen kann.
  • Ein anderer Lösungsansatz zum Testen einer CPU besteht darin, einen Selbsttest in der CPU zu integrieren, den so genannten eingebauten Selbsttest (BIST). Der BIST benötigt einen speziell zugeschnittenen Schaltkreis zum Durchführen des Selbsttests des Prozessors. Dies beinhaltet jedoch die Notwendigkeit einer vollständigen Fehlerentkopplung und heißt, es gewährleistet sein, dass ein einziger Fehler nicht die normale Funktion sowohl der CPU als auch die der Selbsttestlogik verändern kann. Somit bringt eine Implementierung der BIST -Funktionalität in einem Prozessor eine Kostensteigerung für Entwicklung, Design und Produktion mit sich.
  • Ein noch weitergehender Lösungsansatz ist die so genannte Abtastungsprüfung [Scan-Test] zum Testen der internen Schaltkreise in einem Prozessor. Ähnlich wie beim BIST müssen die zu überprüfenden Prozessoren speziell ausgelegt sein, z. B. müssen bestimmte prüfungstechnische Merkmale in einem mikroelektronischen Hardware-Produktdesign hinzugefügt werden, damit solche Tests möglich sind. Daher werden diese Designtechniken auch „Design for Test" bzw. „Testgerechter Entwurf" genannt. In einem Abtastungsdesign umfassen sämtliche Speicherelemente (z. B. Speicherregister, Flipflop-Speicher oder Signalspeicher) zwei Betriebsvorgehensweisen. Im ersten Betriebsmodus op erieren die Speicherelemente entsprechend ihres Verwendungszwecks in der Digitalschaltung und im zweiten Betriebsmodus sind alle Speicherelemente in einem langen Schieberegister (Abtastungskette) verbunden, das verwendet wird, um Zugang zu internen Knoten in der Digitalschaltung zu erhalten. Im Allgemeinen werden einige Speicherelemente der Abtastungskette mit Eingabeanschlussstellen verbunden, um der seriellen Kette von Speicherelementen Testdaten zur Verfügung zu stellen, wobei einige Speicherelemente der Abtastungskette mit Ausgangsanschlussstellen verbunden werden, damit die verarbeiteten Testdaten ausgelesen werden können.
  • Wenn aber ein Testen der Digitalschaltung während des normalen Schaltungsbetriebs erfolgt, entstehen folgende zwei Probleme:
    Erstens, der Schaltkreiszustand verändert sich nach dem Test im Hinblick auf den Schaltkreiszustand vor dem Test, da die Testdaten in die Abtastungskette eingegeben und im Schaltkreis aufbereitet worden sind.
  • Zweitens, der Schaltkreis kann während der Abtastungsprüfung, die eine gewisse Zeit in Anspruch nimmt, nicht seine zweckbestimmte Funktion ausführen. Bei langen Abtastungsketten ist die benötigte Zeit besonders lang, da das Verschieben der Testdaten oder Prüfmuster bei allen in Reihe geschalteten Speicherelementen der Kette so viele Taktimpulse benötigt wie die Anzahl der Speicherelemente ist, die in der Kette enthalten sind.
  • Ein Lösungsansatz für das zweite Problem besteht darin, eine lange, sequenzielle Abtastungskette in mehrere, kürzere Teilabtastungsketten zu unterteilen. Je doch muss ein Eingaben-/Ausgaben-Anschlussstellenpaar für jede partielle Kette bereitgestellt werden. Hinzu kommt, dass wegen der hohen Anzahl an benötigten Anschlussstellen die Taktfrequenz für die Ein-/Ausgabe von Daten über externe Anschlussstellen allgemein erheblich niedriger als im Hinblick auf eine einzige für die Übertragung von Daten innerhalb von integrierten Elementen ist.
  • Daher besteht ein Bedarf für eine Designentwicklung einer Digitalschaltung und für ein Verfahren zum Testen einer Digitalschaltung, der einerseits kostengünstig ist (und daher nicht auf teuere Spezialanwendungen limitiert ist) und andererseits eine zuverlässige Überprüfung einer Digitalschaltung während ihres Betriebs ohne störenden Eingriff in den ordnungsgemäßen Schaltkreisbetrieb und mit nur einer minimalen Unterbrechung des normalen Schaltkreisbetriebs bereitstellt.
  • KURZE ZUSAMMENFASSUNG DER ERFINDUNG
  • Gemäß einem Aspekt der vorliegenden Erfindung wird eine Digitalschaltung bereitgestellt, die eine erste Vielzahl von Speicherelementen und eine zweite Vielzahl von Speicherelementen aufweist, wobei die Digitalschaltung in einem ersten Betriebsmodus und in einem zweiten Betriebsmodus betrieben werden kann und dadurch gekennzeichnet ist, dass im ersten Betriebsmodus die Speicherelemente von der ersten Vielzahl von Speicherelementen entsprechend ihres Verwendungszwecks in der Digitalschaltung operieren und die Speicherelemente von der zweiten Vielzahl von Speicherelementen in Reihe geschaltet sind, und die außerdem dadurch gekennzeichnet ist, dass im zweiten Betriebsmodus die erste Vielzahl von Speicherelementen mit der zweiten Vielzahl von Speicherelementen verbunden wird, um einen Datenaustausch zwischen der ersten Vielzahl von Speicherelementen und der zweiten Vielzahl von Speicherelementen zu ermöglichen.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein Verfahren zum Testen einer Digitalschaltung bereitgestellt, das dadurch gekennzeichnet ist, dass die Schaltung eine erste Vielzahl von Speicherelementen und eine zweite Vielzahl von Speicherelementen aufweist, wobei das Verfahren umfasst:
    Bereitstellen eines ersten Betriebsmodus, in dem Testdaten in die zweite Vielzahl von Speicherelementen geladen werden, und in dem die erste Vielzahl von Speicherelementen entsprechend ihres Verwendungszwecks in der Digitalschaltung betrieben wird;
    des Weiteren Bereitstellen eines zweiten Betriebsmodus, in dem Dateninhalte von der ersten Vielzahl von Speicherelementen mit Dateninhalten von der zweiten Vielzahl von Speicherelementen ausgetauscht werden.
  • Weitere kennzeichnende Merkmale, Aspekte und Vorteile der vorliegenden Erfindung gehen aus der nachfolgenden, detaillierten Beschreibung der Erfindung unter Bezugnahme auf die zugehörigen Zeichnungen hervor.
  • KURZE BESCHREIBUNG VON DEN VERSCHIEDENEN DARSTELLUNGEN DER ZEICHNUNG/EN
  • Die Begleitzeichnungen befinden sich anliegend, um ein besseres Verständnis der vorliegenden Erfindung vermitteln zu können, wobei sie in dieser beinhaltet und ein Bestandteil von dieser Patentschrift sind. Die Zeichnungen veranschaulichen Ausführungsformen gemäß der vorliegenden Erfindung und zusammen mit der Beschreibung dienen sie dazu, die erfindungsgemäßen Grundsätze zu erklären. Andere Ausführungsformen gemäß der vorliegenden Erfindung und viele zu erzielende Vorteile gemäß der vorliegenden Erfindung werden sodann positiv bewertet, wenn sie unter Bezug auf die nachfolgende, detaillierte Beschreibung besser verstanden werden.
  • 1a zeigt ein vereinfachtes Schaltschema von einem Ausführungsbeispiel einer herkömmlichen Digitalschaltung.
  • 1b zeigt ein vereinfachtes Schaltschema von einem Ausführungsbeispiel einer herkömmlichen Digitalschaltung mit einer Abtastungsprüfkapazität.
  • 2 zeigt ein als Beispiel gewähltes Schaltschema einer Digitalschaltung gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 3 zeigt ein als Beispiel gewähltes Schaltschema einer Digitalschaltung gemäß einer weiteren Ausführungsform der vorliegenden Erfindung.
  • 4 zeigt ein als Beispiel gewähltes Schaltschema einer Digitalschaltung gemäß einer weiteren Ausführungsform der vorliegenden Erfindung.
  • 5 zeigt einen vereinfachten, schematischen Programmablaufplan, der ein Verfahren zum Testen einer Digitalschaltung gemäß einer weiteren Ausführungsform der vorliegenden Erfindung zeigt.
  • AUSFÜHRLICHE BESCHREIBUNG DER ERFINDUNG
  • In der nachfolgenden Beschreibung in den Einzelheiten wird auf die begleitenden Zeichnungen Bezug genommen, die ein Bestandteil hierzu sind, und in der anhand der Veranschaulichung von einzelnen Ausführungsformen die Erfindung gezeigt wird, wie sie ausgeführt werden kann. Es versteht sich jedoch, dass andere Ausführungsformen angewendet und strukturelle oder sonstige Veränderungen vorgenommen werden können, ohne dass der Schutzumfang der vorliegenden Erfindung aufgegeben wird. Die nachfolgende, detaillierte Beschreibung ist daher nicht in einschränkender Hinsicht zu bewerten und der Schutzumfang der vorliegenden Erfindung wird durch die anhängenden Patentansprüche definiert.
  • 1a zeigt ein vereinfachtes Schaltschema von einem Ausführungsbeispiel für eine herkömmliche Digitalschaltung.
  • Der dargestellte Schaltkreis umfasst eine erste Vielzahl von Registern 11a, eine zweite Vielzahl von Registern 11b, eine dritte Vielzahl von Registern 11c, eine vierte Vielzahl von Registern 11d, eine erste Vielzahl von Logikelementen 13a, eine zweite Vielzahl von Logikelementen 13b und eine dritte Vielzahl von Logikelementen 13c. Die erste Vielzahl von Registern 11a empfängt über Verbindungsleitungen 101 eine Vielzahl von Eingangssignalen, wobei jedes Register von der ersten Vielzahl von Registern 11a ein Eingangssignal empfängt.
  • Die erste Vielzahl von Registern 11a ist über die Verbindungen 102 mit der ersten Vielzahl von Logikelemen ten 13a verbunden, welche die Eingangssignale aus der ersten Vielzahl von Registern 11a empfangen, die Signale verarbeiten und die verarbeiteten Signale über Verbindungen 103 an die zweite Vielzahl von Registern 11b weiterleiten. Die zweite Vielzahl von Registern 11b stellt diese Signale über Verbindungen 104 an die zweite Vielzahl von Logikelementen 13b bereit, welche die empfangenen Signale verarbeiten und die verarbeiteten Signale über Verbindungen 105 an die dritte Vielzahl von Registern 11c weiterleiten. Die dritte Vielzahl von Registern 11c stellt diese Signale über Verbindungen 106 an die dritte Vielzahl von Logikelementen 13c bereit, welche die empfangenen Signale verarbeiten und die verarbeiteten Signale über Verbindungen 107 an die vierte Vielzahl von Registern 11d weiterleiten. Die vierte Vielzahl von Registern 11d gibt die empfangenen Signale über die Verbindungsleitung 108 aus. Die erste, zweite, dritte und vierte Vielzahl von Registern 11a, 11b, 11c, 11d empfangen jeweils über die Verbindungen 16a, 16b, 16c und 16d ein Taktsignal.
  • 1b zeigt eine Digitalschaltung auf Basis des Schaltkreises aus 1a, weist aber des Weiteren eine konventionelle Abtastungsprüffunktionalität auf. Zum Implementieren der Abtastungsprüffunktionalität können die erste, zweite, dritte und vierte Vielzahl von Registern 11a, 11b, 11c, 11d mit zwei verschiedenen Betriebsmoden ausgeführt werden, wobei ein erster Betriebsmodus als „normaler" Betriebsmodus funktioniert und ein zweiter Betriebsmodus als Testmodus.
  • Zu diesem Zweck wird ein Steuersignal an die erste, zweite, dritte und vierte Vielzahl von Registern 11a, 11b, 11c, 11d jeweils über die Verbindungen 17a, 17b, 17c und 17d bereitgestellt, um den Testmodus zu aktivieren oder zu deaktivieren.
  • Im Normalbetrieb operieren die Register entsprechend ihrer zweckbestimmten Funktionalität innerhalb der Digitalschaltung, wogegen im Testmodus alle Register sequenziell mit einer Abtastungskette verbunden sind, d. h. die Register innerhalb jeder Vielzahl von Registern 11a, 11b, 11c, 11d werden sequenziell verbunden, wobei die Vielzahl von Registern 11a, 11b, 11c, 11d außerdem sequenziell verbunden wird, um eine Abtastungskette zu bilden.
  • Zum Ausführen einer Abtastungsprüfung wird das Steuersignal aktiviert, um zu bewirken, dass die Register im Testmodus operieren, wozu zum Beispiel das Steuersignal von einem „0"-Zustand, der den Normalbetrieb repräsentiert, in einen „1"-Zustand, der den Testmodus darstellt, geschaltet wird.
  • Danach werden Testvektoren oder andere geeignete Testdaten über einen Abtastungseingang in das erste Register von der Abtastungskette eingegeben und anschließend von einem Register zum nächsten Register in der Abtastungskette sequenziell weitergeleitet. Daher wird ein Taktimpuls für jedes Serienregister zum Hinausschieben und zum Hineinschieben in ein einziges Testvektorelement bei allen Registern von der Abtastungskette beansprucht.
  • Anschließend wird das Steuersignal deaktiviert, um zu bewirken, dass die Register im Normalbetrieb operieren, wozu das Steuersignal zum Beispiel von einem „1"-Zustand in einen „0"-Zustand geschaltet wird. Für einen oder für mehrere Taktimpulse werden die Testvektoren verarbeitet und über die Vielzahl von Logikelementen 13a, 13b, 13c propagiert bzw. verbreitet, bevor das Steuersignal wieder aktiviert wird, um damit zu bewirken, dass die Register im Testmodus operieren.
  • Nun werden die verarbeiteten Testvektoren aus den Registern hinausgeschoben, d. h. sie werden aus dem letzten Register von der Abtastungskette über einen Datenausgang ausgegeben, indem sie über die Register der Serienabtastungskette sequenziell weitergeleitet werden. Daher wird für jedes Serienregister zum Schieben und zum Ausgeben der Testvektoren aus allen Registern in der Abtastungskette ein Taktimpuls beansprucht.
  • Folglich werden zum Ausführen der Abtastungsprüfung als Beispiel mindestens 201 Takte für eine Abtastungskette von 100 Serienregistern benötigt (100 Takte zum Eingeben der Testvektoren in die Serienregister, mindestens ein Takt zum Propagieren der Testvektoren über die Vielzahl von Logikelementen und 100 Takte zum Ausgeben der Testvektoren aus den Serienregistern). Da während dieser ziemlich langen Zeitperiode die Digitalschaltung ihre zweckbestimmte Funktion nicht ausführen kann und außerdem der erste Betriebszustand des Schaltkreises verloren geht, wird diese konventionelle Abtastungsprüfung mittlerweile nur für die Fertigungsprüfung verwendet.
  • 2 zeigt ein als Beispiel gewähltes Schaltschema eines Abschnitts in einer Digitalschaltung Schaltkreis gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Aus Gründen der Vereinfachung ist in 2 nur ein kleiner Abschnitt eines digitalen Schaltkreises, d. h. werden nur sehr wenige Register, bildlich dargestellt. Der dargestellte Abschnitt des digitalen Schaltkreises umfasst eine erste Vielzahl bzw. einen Satz Speicherelemente 21a, 21b, 21c, 21d sowie eine Vielzahl von Logikelementen 23a, 23b, 23c. In der dargestellten Ausführungsform sind die Speicherelemente 21a, 21b, 21c, 21d die Register. Die vorliegende Erfindung ist jedoch nicht auf diese Register beschränkt, sondern es können auch Speicherelemente jedes beliebigen Typs verwendet werden.
  • Die Speicherelemente 21a, 21b, 21c, 21d sowie die Logikelemente 23a, 23b, 23c können in einer alternierenden Abfolge verbunden werden. Das Register 21a ist mit dem Logikelement 23a verbunden, welches des Weiteren mit dem Register 21b verbunden ist, das wiederum weiter mit dem Logikelement 23b verbunden ist, welches wiederum mit dem Register 21c weiter verbunden ist, das wiederum mit dem Logikelement 23c weiter verbunden ist, welches wiederum mit dem Register 21d weiter verbunden ist.
  • Der Schaltkreis der 2 umfasst ferner eine zweite Vielzahl bzw. einen zweiten Satz Speicherelemente 22a, 22b, 22c, 22d und eine Vielzahl bzw. einen Satz Multiplexer 24a, 24b, 24c, 24d, von denen jeder mit einem Speicherelement des zweiten Satzes von Speicherelementen verbunden ist. In der dargestellten Ausführungsform sind die Speicherelemente 22a, 22b, 22c, 22d die Register. Die vorliegende Erfindung ist jedoch nicht auf diese Register beschränkt, sondern es können auch Speicherelemente jedes beliebigen Typs verwendet werden.
  • Außerdem ist ein einzelner Multiplexer 25 vorgesehen, der zwei verschiedene Taktsignale, einen internen Takt und einen externen Takt, empfängt.
  • Ähnlich wie beim Schaltkreis der 1b kann auch in dem Schaltkreis der 2 der erste Satz von Registern 21a, 21b, 21c, 21d mit zwei verschiedenen Betriebsmoden ausgeführt werden, wobei ein erster Betriebsmodus als „normaler" Betriebsmodus funktioniert und ein zweiter Betriebsmodus als Testmodus.
  • Dementsprechend wird ein erstes Modussteuersignal jedem Register des ersten Satzes von Registern 21a, 21b, 21c, 21d über die Verbindungen 27a, 27b, 27c, 27d zugestellt, um den Betriebsmodus für den ersten Satz Register 21a, 21b, 21c, 21d zu spezifizieren. Zum Beispiel kann der Testmodus durch eine „1" dargestellt werden und der normale Betriebsmodus durch eine „0", die in dem ersten Modussteuersignal, oder umgekehrt, enthalten ist, aber auch andere Mittel des Anzeigens/Steuerns des Betriebsmodus sind möglich.
  • Im normalen Betriebsmodus operiert der erste Satz Register 21a, 21b, 21c, 21d entsprechend dessen zweckbestimmter Funktionalität innerhalb des digitalen Schaltkreises, wogegen im Testmodus jedes Register im ersten Registersatz 21a, 21b, 21c, 21d von den Logikelementen 23a, 23b, 23b des Schaltkreises getrennt und mit einem korrespondierenden Register aus der zweiten Vielzahl von Registern 22a, 22b, 22c, 22d verbunden wird.
  • Auch der zweite Registersatz 22a, 22b, 22c, 22d kann in einem ersten Betriebsmodus und in einem zweiten Betriebsmodus ausgeführt werden.
  • Dementsprechend wird ein zweites Modussteuersignal jedem Register des zweiten Registersatzes 22a, 22b, 22c, 22d über die Verbindungen 28a, 28b, 28c, 28d zugestellt, um den Betriebsmodus für den zweiten Registersatz zu spezifizieren. Zum Beispiel kann der zweite Betriebsmodus durch eine „1" dargestellt werden und der erste Betriebsmodus durch eine „0", die in dem zweiten Modussteuersignal, oder umgekehrt, enthalten ist, aber auch andere Mittel des Anzeigens/Steuerns des Betriebsmodus sind möglich.
  • Außerdem wird das zweite Modussteuersignal über die Verbindung 28e dem zusätzlichen, einzelnen Multiplexer 25 zugestellt, um einen der Takte, den internen oder den externen, an den Eingängen des zusätzlichen Einzelmultiplexers 25 zu selektieren. Das selektierte Taktsignal wird dem ersten Registersatz 21a, 21b, 21c, 21d über die Verbindungen 29a, 29b, 29c, 29d und dem Multiplexersatz 24a, 24b, 24c, 24d über die Verbindungen 29e, 29f, 29g, 29h zur Verfügung gestellt. Das selektierte Taktsignal ist der Takt, mit dem Daten in die zweite Vielzahl von Registern 22a, 22b, 22c, 22d transferiert werden können. Dies kann aber ein ziemlich langsamer Takt sein, wenn die jeweiligen Daten zum Schaltkreis extern gespeichert sind, und wenn sie beispielsweise über entsprechende Pads eingespeist werden müssen, oder aber es kann ein schneller Takt sein, wenn die jeweiligen Daten im digitalen Schaltkreis gespeichert sind.
  • Zu Beginn eines Tests für den digitalen Schaltkreis in 2 werden Testdaten, z. B. Testvektoren, in den zweiten Registersatz 22a, 22b, 22c, 22d ge laden. Zu diesem Zweck wird der zweite Registersatz 22a, 22b, 22c, 22d bzw. genauer gesagt, der Multiplexersatz 24a, 24b, 24c, 24d im ersten Betriebsmodus ausgeführt (wobei das zweite Modussteuersignal beispielsweise eine „0" umfasst).
  • Im ersten Betriebsmodus leitet jeder Multiplexersatz 24a, 24b, 24c, 24d die an seinem ersten Eingang empfangenen Daten an das mit ihm verbundene Register des zweiten Registersatzes 22a, 22b, 22c, 22d weiter.
  • Ein erster Multiplexer 24d aus dem Multiplexersatz 24a, 24b, 24c, 24d hat seinen ersten Eingang mit einem Abtastungsdateneingang über die Verbindung 220 zum Empfangen jeweils der Testdaten oder der Testvektoren verbunden.
  • Alle anderen Multiplexer aus dem Multiplexersatz 24a, 24b, 24c, 24d haben deren erste Eingänge mit einem Ausgang eines „vorausgehenden" Registers des zweiten Registersatzes 22a, 22b, 22c, 22d verbunden. Mit anderen Worten, der erste Eingang des Multiplexers 24c ist mit dem Ausgang des Registers 22d über die Verbindung 221 verbunden, der erste Eingang des Multiplexers 24b ist mit dem Ausgang des Registers 22c über die Verbindung 222 verbunden, der erste Eingang des Multiplexers 24a ist mit dem Ausgang des Registers 22b über die Verbindung 223 verbunden.
  • Das „quasi" letzte Register 22a (dessen Ausgang nicht mit einem ersten Eingang eines „folgenden" Multiplexers verbunden ist) hat seinen Ausgang mit einem Datenausgang über die Verbindung 224 zum Ausgeben von Daten verbunden, die aus der Überprüfung des Schaltkreises resultieren.
  • Wenn folglich der erste Betriebsmodus ausgeführt wird, bildet der zweite Registersatz 22a, 22b, 22c, 22d eine sequenzielle Abtastungskette bzw. effektiv ein Schieberegister, in das/aus dem die Testvektoren sequenziell geladen bzw. ausgelesen werden können.
  • Während des Vorgangs des Ladens der Testvektoren in den zweiten Registersatz 22a, 22b, 22c, 22d wird der erste Registersatz 21a, 21b, 21c, 21d im normalen Betriebsmodus ausgeführt und deshalb wird der Normalbetrieb der Digitalschaltung nicht unterbrochen.
  • Nachdem der vorstehend beschriebene Vorgang des Ladens der Testvektoren beendet ist, empfängt der Multiplexersatz 24a, 24b, 24c, 24d, der mit dem zweiten Registersatz 22a, 22b, 22c, 22d verbunden ist, ein entsprechendes zweites Modussteuersignal (z. B. „1"), was bewirkt, dass die Multiplexer in den zweiten Betriebsmodus geschaltet werden. Außerdem schaltet der erste Registersatz 21a, 21b, 21c, 21d in den Testmodus, nachdem er ein entsprechendes erstes Modussteuersignal (z. B. „1") empfangen hat.
  • Im zweiten Betriebsmodus leitet jeder Multiplexersatz 24a, 24b, 24c, 24d die an seinem zweiten Eingang empfangenen Daten an das mit ihm verbundene Register des zweiten Registersatzes 22a, 22b, 22c, 22d weiter.
  • Im Testmodus wird jedes Register im ersten Registersatz 21a, 21b, 21c, 21d von den Logikelementen 23a, 23b, 23c des Schaltkreises getrennt und mit einem korrespondierenden Register aus der zweiten Vielzahl von Registern 22a, 22b, 22c, 22d verbunden.
  • Zum besseren Verständnis des weiteren Betriebs des Schaltkreises wird ein Registerpaar, das aus einem Register 21d des ersten Registersatzes und aus einem Register 22d des zweiten Registersatzes besteht, nachfolgend genauer erläutert.
  • Bei diesem als Beispiel gewählten Registerpaar ist ein Ausgang des Registers 21d mit einem Eingang des Registers 22d über den Multiplexer 24d und ein Ausgang des Registers 22d mit einem Eingang des Registers 21d verbunden, was einen Austausch von Dateninhalten ermöglicht, die in den Registern 21d und 22d gepuffert sind. Dementsprechend werden die Testdaten oder Testvektoren vom Register 22d zu dem Register 21d übertragen und der Erstinhalt des Registers 21d wird in das Register 22d transferiert.
  • In den anderen Registerpaaren, welche auch ein Register des ersten Registersatzes 21a, 21b, 21c, 21d und ein korrespondierendes Register des zweiten Registersatzes 22a, 22b, 22c, 22d enthalten, findet ein Datentransfer in einer analogen Weise statt.
  • Folglich bleibt der tatsächliche Betriebszustand des Schaltkreises im zweiten Registersatz 22a, 22b, 22c, 22d erhalten und die Testvektoren werden in den ersten Registersatz geladen, wobei ein minimaler Zeitaufwand erforderlich ist, da die Testvektoren in einer parallelen Weise geladen werden. Im Gegensatz dazu geht in herkömmlichen Systemen, wie in 1b dargestellt, der tatsächliche Betriebszustand des Systems verloren, wenn die Testvektoren in die Register geladen werden, wobei der Vorgang des Ladens erheblich mehr Zeit erfordert, da die Testvektoren in die Register sequenziell geladen werden müssen.
  • Anschließend wird der erste Registersatz 21a, 21b, 21c, 21d veranlasst, durch ein entsprechendes erstes Modussteuersignal (z. B. „0") in den ersten Betriebsmodus umzuschalten, damit die Testvektoren über die Logikelemente mindestens einen Takt lang propagieren können.
  • Daraufhin wird der erste Registersatz 21a, 21b, 21c, 21d veranlasst, durch ein entsprechendes erstes Modussteuersignal (z. B. „1") in den zweiten Betriebsmodus zurückzuschalten, damit ein Rückaustausch von Daten zwischen den jeweiligen Registerpaaren aus dem ersten und dem zweiten Registersatz ermöglicht wird, d. h. die verarbeiteten Testvektoren werden aus dem ersten Registersatz 21a, 21b, 21c, 21d in den zweiten Registersatz 22a, 22b, 22c, 22d übertragen und die Dateninhalte des zweiten Registersatzes 22a, 22b, 22c, 22d werden in den ersten Registersatz 21a, 21b, 21c, 21d zurücktransferiert, um den Betriebszustand wieder herzustellen, in dem sich der Schaltkreis vor dem Test befand.
  • Anschließend wird der erste Registersatz 21a, 21b, 21c, 21d veranlasst, durch ein entsprechendes erstes Modussteuersignal (z. B. „0") in den normalen Betriebsmodus zurückzuschalten, um einen kontinuierlichen Normalbetrieb des Schaltkreises zu ermöglichen.
  • Gleichzeitig empfängt der Multiplexersatz 24a, 24b, 24c, 24d, der mit dem zweiten Registersatz 22a, 22b, 22c, 22d verbunden ist, ein entsprechendes zweites Modussteuersignal (z. B. „0"), was bewirkt, dass die Multiplexer in den ersten Betriebsmodus umgeschaltet werden. Im ersten Betriebsmodus werden die ersten Eingänge der Multiplexer aktiviert, so dass der zweite Registersatz 22a, 22b, 22c, 22d effektiv ein Schieberegister bildet, von dem die Prüfergebnisse, d. h. die verarbeiteten Testvektoren, zum Abtastungsausgang sequenziell ausgegeben werden.
  • 3 zeigt ein als Beispiel gewähltes Schaltschema eine Digitalschaltung gemäß einer weiteren Ausführungsform der vorliegenden Erfindung.
  • Der dargestellte Schaltkreis umfasst eine erste Vielzahl von Speicherelementen 31a, eine zweite Vielzahl von Speicherelementen 31b, eine dritte Vielzahl von Speicherelementen 31c, eine vierte Vielzahl von Speicherelementen 31d, eine erste Vielzahl von Logikelementen 33a, eine zweite Vielzahl von Logikelementen 33b und eine dritte Vielzahl von Logikelementen 33c. Die erste Vielzahl von Speicherelementen 31a empfängt über Verbindungsleitungen 301 eine Vielzahl von Eingangssignalen, wobei jedes Register aus der ersten Vielzahl von Speicherelementen 31a ein Eingangssignal empfängt.
  • Die erste Vielzahl von Speicherelementen 31a ist über die Verbindungen 302 mit der ersten Vielzahl von Logikelementen 33a verbunden, welche die Eingangssignale aus der ersten Vielzahl von Speicherelementen 31a empfangen, die Signale verarbeiten und die verarbeiteten Signale über Verbindungen 303 an die zweite Vielzahl von Speicherelementen 31b weiterleiten. Die zweite Vielzahl von Speicherelementen 31b stellt diese Signale über Ver bindungen 304 an die zweite Vielzahl von Logikelementen 33b bereit, welche die empfangenen Signale verarbeiten und die verarbeiteten Signale über Verbindungen 305 an die dritte Vielzahl von Speicherelementen 31c weiterleiten. Die dritte Vielzahl von Speicherelementen 31b stellt diese Signale über Verbindungen 306 an die dritte Vielzahl von Logikelementen 33c bereit, welche die empfangenen Signale verarbeiten und die verarbeiteten Signale über Verbindungen 307 an die vierte Vielzahl von Speicherelementen 31d weiterleiten. Die vierte Vielzahl von Speicherelementen 31d gibt die empfangenen Signale über die Verbindungsleitung 308 aus.
  • Der Schaltkreis der 3 umfasst ferner eine erste weitere Vielzahl von in Reihe geschalteten Speicherelementen 32a, eine zweite weitere Vielzahl von in Reihe geschalteten Speicherelementen 32b, eine dritte weitere Vielzahl von in Reihe geschalteten Speicherelementen 32c, eine vierte weitere Vielzahl von in Reihe geschalteten Speicherelementen 32d und eine Vielzahl von bzw. einen Satz Multiplexern 34a, 34b, 34c, 34d, von denen jeder mit einer jeweiligen Vielzahl von Speicherelementen aus den weiteren Vielzahlen von Speicherelementen 32a, 32b, 32c, 32d verbunden ist.
  • In der dargestellten Ausführungsform sind die Speicherelemente aus den Vielzahlen von Speicherelementen 31a, 31b, 31c, 31d und aus den weiteren Vielzahlen von Speicherelementen 32a, 32b, 32c, 32d die Register. Die vorliegende Erfindung ist jedoch nicht auf diese Register beschränkt, sondern es können auch Speicherelemente jedes beliebigen Typs verwendet werden. Des Weiteren ist die vorliegende Erfindung nicht auf eine bestimmte Zahl von Vielzahlen von (weiteren) Speicherelementen beschränkt. Eine Digitalschaltung gemäß der Erfindung kann mindestens zwei, aber auch viele mehr (weitere) Vielzahlen von Speicherelementen aufweisen.
  • Außerdem ist ein einzelner Multiplexer 35 bereitgestellt, der zwei verschiedene Taktsignale, einen internen Takt und einen externen Takt, empfängt.
  • Ähnlich wie beim Schaltkreis der 1b können auch in dem Schaltkreis der 3 die Vielzahlen von Registern 31a, 31b, 31c, 31d mit zwei verschiedenen Betriebsmoden ausgeführt werden, wobei ein erster Betriebsmodus als „normaler" Betriebsmodus und ein zweiter Betriebsmodus als Testmodus funktioniert.
  • Dementsprechend wird ein erstes Modussteuersignal jedem Register von den Vielzahlen der Register 31a, 31b, 31c, 31d über die Verbindungen 37a, 37b, 37c, 37d bereitgestellt, um den Betriebsmodus für die Vielzahl von Registern 31a, 31b, 31c, 31d zu spezifizieren. Zum Beispiel kann der Testmodus durch eine „1" dargestellt werden und der normale Betriebsmodus durch eine „0", die, oder umgekehrt, in dem ersten Modussteuersignal enthalten ist, aber auch andere Mittel des Anzeigens/Steuerns des Betriebsmodus sind möglich.
  • Im normalen Betriebsmodus operieren die Vielzahlen von Registern 31a, 31b, 31c, 31d entsprechend deren zweckbestimmter Funktionalität innerhalb des digitalen Schaltkreises, wogegen im Testmodus jede der ersten, zweiten, dritten und vierten Vielzahlen von Registern 31a, 31b, 31c, 31d von den Logikelementen 33a, 33b, 33c des Schaltkreises getrennt und mit einem korrespon dierenden Register aus den weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d verbunden werden.
  • Auch die weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d können in einem ersten Betriebsmodus und in einem zweiten Betriebsmodus ausgeführt werden.
  • Dementsprechend wird ein zweites Modussteuersignal jeder der weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d über die Verbindungen 38a, 38b, 38c, 38d zugestellt, um den Betriebsmodus für die weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d zu spezifizieren. Zum Beispiel kann der zweite Betriebsmodus durch eine „1" dargestellt werden und der erste Betriebsmodus durch eine „0", die, oder umgekehrt, in dem zweiten Modussteuersignal enthalten ist, aber auch andere Mittel des Anzeigens/Steuerns des Betriebsmodus sind möglich.
  • Außerdem wird das zweite Modussteuersignal über die Verbindung 38e des Weiteren dem zusätzlichen, einzelnen Multiplexer 35 bereitgestellt, um jeweils einen der Takte, den internen oder den externen, an den Eingängen des zusätzlichen Einzelmultiplexers 35 zu selektieren. Das selektierte Taktsignal wird den Vielzahlen von Registern 31a, 31b, 31c, 31d über die Verbindungen 39a, 39b, 39c, 39d und dem Satz von Multiplexern 34a, 34b, 34c, 34d über die Verbindungen 39e, 39f, 39g, 39h zur Verfügung gestellt. Das selektierte Taktsignal ist der Takt, mit dem Daten in die weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d transferiert werden können. Dies kann ein ziemlich langsamer Takt sein, wenn die jeweiligen Daten zum Schaltkreis extern gespeichert sind, und wenn sie beispielsweise über entsprechende Pads eingespeist werden müssen, oder aber es kann ein schneller Takt sein, wenn die jeweiligen Daten im digitalen Schaltkreis gespeichert sind.
  • Zu Beginn eines Test für den digitalen Schaltkreis der 3 werden Testdaten, z. B. Testvektoren, in die weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d geladen. Zu diesem Zweck werden die Vielzahlen von Registern 32a, 32b, 32c, 32d, bzw. genauer gesagt, der Satz von Multiplexern 34a, 34b, 34c, 34d im ersten Betriebsmodus ausgeführt (wobei das zweite Modussteuersignal beispielsweise eine „0" umfasst).
  • Im ersten Betriebsmodus leitet jeder Multiplexersatz 34a, 34b, 34c, 34d die an seinem ersten Eingang empfangenen Daten an das jeweils eine mit ihm verbundene Register aus den weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d weiter.
  • Ein erster Multiplexer 34d aus dem Multiplexersatz 34a, 34b, 34c, 34d hat seinen ersten Eingang mit einem Dateneingang über die Verbindung 320 zum Empfangen jeweils der Testdaten oder der Testvektoren verbunden.
  • Alle anderen Multiplexer aus dem Multiplexersatz 34a, 34b, 34c, 34d haben deren erste Eingänge mit einem Ausgang eines „vorausgehenden" Registers aus den weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d verbunden. Mit anderen Worten, der erste Eingang des Multiplexers 34c ist mit dem Ausgang der vierten weiteren Vielzahl von Registern 32d über die Verbindung 321 verbunden, der erste Eingang des Multiplexers 34b ist mit dem Ausgang der dritten weiteren Vielzahl von Registern 32c über die Verbindung 322 verbunden und der erste Eingang des Multiplexers 34a ist mit dem Ausgang der zweiten weiteren Vielzahl von Registern 32b über die Verbindung 323 verbunden.
  • Die erste weitere Vielzahl von Registern 32a (deren Ausgang nicht mit einem ersten Eingang eines „folgenden" Multiplexers verbunden ist) hat ihren Ausgang mit einem Abtastungsdatenausgang über die Verbindung 324 zum Ausgeben von Daten verbunden, die aus der Überprüfung des Schaltkreises resultieren.
  • Wenn folglich der erste Betriebsmodus ausgeführt wird, werden alle Register von den weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d sequenziell mit einer Abtastungskette verbunden bzw. effektiv mit einem langen Schieberegister, in das die Testvektoren sequenziell geladen werden, wobei die Register innerhalb einer jeden der weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d sequenziell verbunden werden, und wobei außerdem die weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d verbunden werden, um das eine, lange Schieberegister zu bilden.
  • Während des Vorgangs des Ladens der Testvektoren in die weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d werden die Vielzahlen von Registern 31a, 31b, 31c, 31d im normalen Betriebsmodus ausgeführt und deshalb wird der Normalbetrieb der Digitalschaltung nicht unterbrochen.
  • Nachdem der vorstehend beschriebene Vorgang des Ladens der Testvektoren beendet ist, empfängt der Multiplexersatz 34a, 34b, 34c, 34d, der mit den weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d verbunden ist, ein entsprechendes zweites Modussteuersignal (z. B. „1"), was bewirkt, dass die Multiplexer in den zweiten Betriebsmodus umgeschaltet werden. Auch die Vielzahlen von Registern schalten in den Testmodus, nachdem sie ein entsprechendes erstes Modussteuersignal (z. B. „1") empfangen haben.
  • Im zweiten Betriebsmodus leitet jeder Multiplexersatz 34a, 34b, 34c, 34d die an seinem zweiten Eingang empfangenen Daten an das eine mit ihm verbundene Register aus den weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d weiter.
  • Im Testmodus wird jedes von den Vielzahlen der Register 31a, 31b, 31c, 31d von den Logikelementen 33a, 33b, 33c des Schaltkreises getrennt und mit einem korrespondierenden Register aus den weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d verbunden.
  • Zum besseren Verständnis des weiteren Betriebs des Schaltkreises wird ein Registerpaar aus den Vielzahlen von Registern, das aus der vierten Vielzahl von Registern 31d und den vierten weiteren Vielzahlen von Registern 32d besteht, nachfolgend genauer erläutert.
  • Bei diesem als Beispiel gewählten Registerpaar aus den Vielzahlen von Registern ist ein Ausgang von der vierten Vielzahl von Registern 31d mit einem Eingang von der vierten weiteren Vielzahl von Registern 32d über den Multiplexer 24d verbunden, wobei ein Ausgang von der vierten weiteren Vielzahl von Registern 32d mit einem Eingang von der vierten Vielzahl von Registern 31d verbunden ist, welches einen Austausch von Dateninhalten ermöglicht, die in jedem Register aus den Vielzahlen von Registern 31d und 32d gepuffert sind.
  • Demzufolge werden die Testvektoren von jedem Register von der vierten weiteren Vielzahl von Registern 32d in die jeweiligen Register von der vierten Vielzahl von Registern 31d transferiert und der Erstinhalt der Register von der vierten Vielzahl von Registern 31d wird in die jeweiligen Register von der vierten weiteren Vielzahl von Registern 32d übertragen.
  • In diesem Prozess werden die Inhalte der jeweiligen Register sequenziell übertragen, wobei der Inhalt des einen Registers per Takt übertragen wird, welcher ein schneller, interner Taktimpuls ist. Dieser Datenaustausch kann als ein Datenaustausch zwischen zwei FIFO-Registern (FIFO = First-In-First-Out) angesehen werden. Folglich nachdem so viele Zyklen, wie die Anzahl der Register in den vierten (weiteren) Vielzahlen von Registern ist, die Inhalte der vierten Vielzahl von Registern 31d sind und die vierte weitere Vielzahl von Registern 32d komplett ausgetauscht wird, umfasst z. B. die vierte Vielzahl von Registern 31d die Erstinhalte der vierten weiteren Vielzahl von Registern 32d und umgekehrt.
  • In den anderen Paaren aus den Vielzahlen von Registern, welche auch jeweils ein Register aus den Vielzahlen von Registern 31a, 31b, 31c und ein korrespondierendes Register aus den weiteren Vielzahlen von Registern 32a, 32b, 32c enthalten, findet die Datenübertragung in einer analogen Weise statt. Diese Datenübertragungen können mit dem schnellen internen Taktimpuls parallel ausgeführt werden, wobei sich die Zeitspanne, die für ein Laden der Testvektoren in die Vielzahlen von Registern 31a, 31b, 31c, 31d benötigt wird, signifikant reduziert. Dementsprechend wird eine lange Abtastungskette in mehrere kürzere Teilabtastungsketten, die parallel verarbeitet werden, unterteilt. Wenn man beispielsweise 96 Register annimmt, welche mit vier Teilabtastungsketten verbunden sind, dann werden nur etwa 49 Takte für die Abtastungsprüfung benötigt: 24 Takte zum Verschieben der Testvektoren in die Vielzahlen von Registern, etwa einen Takt zum Propagieren der Testvektoren über die Vielzahlen von Logikelementen und 24 Takte zum Verschieben der Ergebnisvektoren (die verarbeiteten Testvektoren) aus den Vielzahlen von Registern.
  • Ferner bleibt der tatsächliche Zustand des Schaltkreises in den weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d aufrechterhalten und wird in die Vielzahlen von Registern 31a, 31b, 31c, 31d zurückgeschoben, um nach der Abtastungsprüfung den Erstzustand der Digitalschaltung wieder herzustellen.
  • Im Gegensatz dazu geht in herkömmlichen Systemen, wie in 1b dargestellt, der tatsächliche Betriebszustand des Systems verloren, sobald die Testvektoren in die Register geladen werden, wobei zudem der Vorgang des Ladens erheblich mehr Zeit beansprucht, da die Testvektoren in die Register mit einem ziemlich langsamen externen Takt sequenziell geladen werden müssen.
  • Anschließend werden die Vielzahlen von Registern 31a, 31b, 31c, 31d veranlasst, durch ein entsprechendes erstes Modussteuersignal (z. B. „0") in den ersten Betriebsmodus umzuschalten, damit die Testvektoren über die Vielzahlen von Logikelementen mindestens einen Takt lang propagieren können.
  • Daraufhin werden die Vielzahlen von Registern 31a, 31b, 31c, 31d veranlasst, durch ein entsprechendes erstes Modussteuersignal (z. B. „1") in den zweiten Betriebsmodus zurückzuschalten, damit ein Rückaustausch von Daten zwischen den jeweiligen Registerpaaren aus den Vielzahlen von Registern 31a, 31b, 31c, 31d und den weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d ermöglicht wird, d. h. die verarbeiteten Testvektoren werden aus den Vielzahlen von Registern 31a, 31b, 31c, 31d zu den weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d übertragen und die Dateninhalte von den weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d werden zu den Vielzahlen von Registern 31a, 31b, 31c, 31d zurücktransferiert, um den Betriebszustand wieder herzustellen, in dem sich der Schaltkreis vor dem Test befand.
  • Anschließend werden die Vielzahlen von Registern 31a, 31b, 31c, 31d veranlasst, durch ein entsprechendes erstes Modussteuersignal (z. B. „0") in den normalen Betriebsmodus zurückzuschalten, um einen kontinuierlichen Normalbetrieb des Schaltkreises zu ermöglichen.
  • Gleichzeitig empfängt der Satz Multiplexer 34a, 34b, 34c, 34d, der mit den weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d verbunden ist, ein entsprechendes zweites Modussteuersignal (z. B. „0"), was bewirkt, dass die Multiplexer in den ersten Betriebsmodus geschaltet werden. Im ersten Betriebsmodus werden die ersten Eingänge der Multiplexer aktiviert, so dass alle Register aus den weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d effektiv ein Schieberegister bilden, wobei die Register innerhalb einer jeden von den weiteren Vielzahlen von Registern 32a, 32b, 32c, 32d sequenziell verbunden werden, und wobei außerdem die weiteren Vielzahlen von Re gistern 32a, 32b, 32c, 32d verbunden werden, um das lange Schieberegister zu bilden. Aus diesem langen Schieberegister werden die Prüfergebnisse, d. h. die verarbeiteten Testvektoren, an den Abtastungsausgang sequenziell ausgegeben.
  • 4 zeigt ein als Beispiel gewähltes Schaltschema einer Digitalschaltung gemäß einer weiteren Ausführungsform der vorliegenden Erfindung.
  • Der Schaltkreis der 4 basiert auf dem Schaltkreis der 3, umfasst jedoch außerdem zusätzlich zu den Elementen des Schaltkreises der 4 eine Datenkomprimiereinrichtung 41 und eine Datendekomprimiervorrichtung 42 zum Reduzieren des Datenvolumens, das von außen in die zu überprüfende Digitalschaltung eingeführt wird. Was die zu überprüfenden Schaltungen betrifft, so ist ein leicht zu bewältigendes Volumen von Fehlern zu erwarten, wofür der initiierende Testvektor durch eine Polynomteilung komprimiert werden kann, welches aber ein verlustreiches Komprimierungsverfahren ist. Dies bedeutet in diesem Zusammenhang, dass es eine gewisse Wahrscheinlichkeit gibt, dass sich Mehrfachfehler gegenseitig aufheben können. Da jedoch eine vollständige Überprüfung 100–1000 verschiedene Testvektoren aufweist, ist davon auszugehen, dass ein Fehler in den Mehrfachfehlern immer wieder getestet wird. Deshalb kann hier eine Datenkomprimierung durch Polynomteilung ausgeführt werden, um das von außen in die Digitalschaltung einzuführende und von außen zu untersuchende Datenvolumen nach der Abtastungsüberprüfung erheblich zu reduzieren. In der digitalen Schaltkreistechnologie ist diese Art der Datenkomprimierung in der Regel durch linear rückgekoppelte Schieberegister (LSFR) implementiert.
  • Zum Generieren von Testvektoren, die für eine Abtastungsprüfung in einer Digitalschaltung geeignet sind, können handelsübliche Computer-Softwareprogramme verwendet werden.
  • 5 zeigt einen vereinfachten, schematischen Programmablaufplan, der ein Verfahren zum Testen einer Digitalschaltung gemäß einer weiteren Ausführungsform der vorliegenden Erfindung zeigt.
  • Im Betriebsschritt 501 wird die erste Vielzahl von Speicherelementen entsprechend deren Verwendungszweck in der Digitalschaltung ausgeführt, wobei – simultan – im Schritt 502 die Testdaten in die zweite Vielzahl von Speicherelementen geladen werden.
  • Dann wird im Schritt 503 der Betriebsvorgang der ersten Vielzahl von Speicherelementen entsprechend für deren Verwendungszweck in der Digitalschaltung angehalten. In der Zwischenzeit werden – im Schritt 504 – die Dateninhalte von der ersten Vielzahl von Speicherelementen mit Dateninhalten von der zweiten Vielzahl von Speicherelementen ausgetauscht.
  • Nachdem der Datenaustausch im Schritt 504 beendet worden ist, wird die erste Vielzahl von Speicherelementen entsprechend deren Verwendungszweck in der Digitalschaltung ausgeführt, um im Schritt 505 die Testdaten verarbeiten.
  • Dann wird – im Schritt 506 – der Betriebsvorgang der ersten Vielzahl von Speicherelementen entsprechend für deren Verwendungszweck in der Digitalschaltung erneut angehalten und im Schritt 507 werden die Dateninhalte von der ersten Vielzahl von Speicherelementen mit den Dateninhalten von der zweiten Vielzahl von Speicherelementen ausgetauscht.
  • Obwohl einzelne Ausführungsformen veranschaulicht und beschrieben worden sind, wird von den Fachleuten auf dem Gebiet positiv bewertet werden, dass diese einzelnen, aufgezeigten und beschriebenen Ausführungsformen mit einer Vielfalt an alternativen und/oder äquivalenten Implementierungen ersetzt werden können, ohne dass der Schutzumfang der vorliegenden Erfindung aufgegeben wird. Diese Patentanmeldung soll sämtliche Adaptierungen oder Varianten im Hinblick auf die in der Beschreibung erläuterten, spezifischen Ausführungsformen einschließen. Dementsprechend ist die vorliegende Erfindung nur durch die Patentansprüche und deren Entsprechungen einzuschränken.

Claims (18)

  1. Digitalschaltung, welche umfasst: eine erste Vielzahl von Speicherelementen und eine zweite Vielzahl von Speicherelementen, wobei die Digitalschaltung in einem ersten Betriebsmodus und in einem zweiten Betriebsmodus ausgeführt werden kann; wobei im ersten Betriebsmodus die Speicherelemente von der ersten Vielzahl von Speicherelementen entsprechend ihres Verwendungszwecks innerhalb der Digitalschaltung operieren und die Speicherelemente von der zweiten Vielzahl von Speicherelementen in Reihe geschaltet sind, und wobei im zweiten Betriebsmodus die erste Vielzahl von Speicherelementen mit der zweiten Vielzahl von Speicherelementen verbunden wird, um einen Datenaustausch zwischen der ersten Vielzahl von Speicherelementen und der zweiten Vielzahl von Speicherelementen zu ermöglichen.
  2. Digitalschaltung gemäß Anspruch 1, welche ferner umfasst: einen Dateneingang und einen Datenausgang, dadurch gekennzeichnet, dass im ersten Betriebsmodus ein Speicherelement von der zweiten Vielzahl von Speicherelementen mit dem Dateneingang verbunden ist, und ein weiteres Speicherelement von der zweiten Vielzahl von Speicherelementen mit dem Datenausgang verbunden ist.
  3. Digitalschaltung gemäß Anspruch 2, dadurch gekennzeichnet, dass in dem ersten Betriebsmodus über den Dateneingang sequenziell Testdaten in Speicherelemente von der zweiten Vielzahl von Speicherelementen geladen werden.
  4. Digitalschaltung gemäß Anspruch 3, dadurch gekennzeichnet, dass im zweiten Betriebsmodus der Datenaustausch zwischen der ersten Vielzahl von Speicherelementen und der zweiten Vielzahl von Speicherelementen einen Transfer von Testdaten von der zweiten Vielzahl von Speicherelementen zu der ersten Vielzahl von Speicherelementen umfasst und einen Transfer von Daten, die einen Betriebszustand der Digitalschaltung von der ersten Vielzahl von Speicherelementen in der zweiten Vielzahl von Speicherelementen charakterisiert darstellen.
  5. Digitalschaltung, welche umfasst: eine erste Vielzahl von Speicherelementen, eine zweite Vielzahl von Speicherelementen, eine dritte Vielzahl von Speicherelementen, die in Reihe geschaltet sind, und eine vierte Vielzahl von Speicherelementen, die in Reihe geschaltet sind, wobei die Digitalschaltung in einem ersten Betriebsmodus und in einem zweiten Betriebsmodus ausgeführt werden kann; dadurch gekennzeichnet, dass im ersten Betriebsmodus die erste Vielzahl von Speicherelementen und die zweite Vielzahl von Speicherelementen entsprechend ihres Verwendungszwecks innerhalb der Digitalschaltung operieren und die dritte Vielzahl von Speicherelementen und die vierte Vielzahl von Speicherelementen in Reihe geschaltet sind, dadurch gekennzeichnet, dass im zweiten Betriebsmodus die erste Vielzahl von Speicherelementen mit der dritten Vielzahl von Speicherelementen verbunden wird, um einen Datenaustausch zwischen der ersten Vielzahl von Speicherelementen und der dritten Vielzahl von Speicherelementen zu ermöglichen, und wobei die zweite Vielzahl von Speicherelementen mit der vierten Vielzahl von Speicherelementen verbunden wird, um einen weiteren Datenaustausch zwischen der zweiten Vielzahl von Speicherelementen und der vierten Vielzahl von Speicherelementen zu ermöglichen.
  6. Digitalschaltung gemäß Anspruch 5, welche ferner umfasst: einen Dateneingang und einen Datenausgang dadurch gekennzeichnet, dass im ersten Betriebsmodus ein Speicherelement von der dritten Vielzahl von Speicherelementen mit dem Dateneingang verbunden wird und ein Speicherelement von der vierten Vielzahl von Speicherelementen mit dem Datenausgang verbunden wird, so dass alle Speicherelemente von der dritten Vielzahl und von der vierten Vielzahl von Speicherelementen zwischen dem Dateneingang und dem Datenausgang verbunden sind.
  7. Digitalschaltung gemäß Anspruch 6, dadurch gekennzeichnet, dass in dem ersten Betriebsmodus über den Dateneingang sequenziell Testdaten in Speicherelemente von der dritten und vierten Vielzahl von Speicherelementen geladen werden.
  8. Digitalschaltung gemäß Anspruch 7, dadurch gekennzeichnet, dass im zweiten Betriebsmodus der Datenaustausch zwischen der ersten Vielzahl von Speicherelementen und der dritten Vielzahl von Speicherelementen einen Transfer von Testdaten von der dritten Vielzahl von Speicherelementen in die erste Vielzahl von Speicherelementen umfasst und einen Transfer von Daten, die einen Betriebszustand der Digitalschaltung von der ersten Vielzahl von Speicherelementen in der zweiten Vielzahl von Speicherelementen charakterisiert darstellen, und der weitere Datenaustausch zwischen der zweiten Vielzahl von Speicherelementen und der vierten Vielzahl von Speicherelementen einen Transfer von weiteren Testdaten von der vierten Vielzahl von Speicherelementen in die zweite Vielzahl von Speicherelementen umfasst und einen Transfer von weiteren Daten, die einen Betriebszustand der Digitalschaltung von der zweiten Vielzahl von Speicherelementen in der vierten Vielzahl von Speicherelementen charakterisiert darstellen.
  9. Digitalschaltung, welche umfasst: eine erste Vielzahl von Speicherelementen und eine zweite Vielzahl von Speicherelementen, dadurch gekennzeichnet, dass die zweite Vielzahl von Speicherelementen so konfiguriert ist, um Testdaten zu Puffern und um die Testdaten an die erste Vielzahl von Speicherelementen zu transferieren für einen Test der Digitalschaltung unter Anwendung der Testdaten; und dadurch gekennzeichnet, dass die zweite Vielzahl von Speicherelementen des Weiteren so konfiguriert ist, um Daten zu Puffern, die in der ersten Vielzahl von Speicherelementen vor dem Testen der Digitalschaltung gespei chert wurden, um einen Zustand der Digitalschaltung wie vor dem Testen der Digitalschaltung zu halten.
  10. Digitalschaltung gemäß Anspruch 9, welche ferner einen Dateneingang aufweist und dadurch gekennzeichnet ist, dass die zweite Vielzahl von Speicherelementen ferner zum Empfangen der Testdaten über den Dateneingang konfiguriert ist.
  11. Digitalschaltung gemäß Anspruch 9, welche des Weiteren eine Datenkomprimiereinrichtung eine Datendekomprimiervorrichtung aufweist.
  12. Integrierte Schaltkreiseinrichtung, welche die Digitalschaltung gemäß Anspruch 1 aufweist.
  13. Elektroniksystem, welches die integrierte Schaltkreiseinrichtung gemäß Anspruch 12 aufweist.
  14. Verfahren zum Testen einer Digitalschaltung, dadurch gekennzeichnet, dass die Schaltung eine erste Vielzahl von Speicherelementen und eine zweite Vielzahl von Speicherelementen aufweist, wobei das Verfahren umfasst: Betreiben der ersten Vielzahl von Speicherelementen entsprechend deren Verwendungszweck in der Digitalschaltung und gleichzeitig Laden von Testdaten in die zweite Vielzahl von Speicherelementen; Anhalten des Betreibens der ersten Vielzahl von Speicherelementen entsprechend deren Verwendungszweck in der Digitalschaltung; Austauschen von Dateninhalten von der ersten Vielzahl von Speicherelementen mit Dateninhalten von der zweiten Vielzahl von Speicherelementen zum ersten Mal; Betreiben der ersten Vielzahl von Speicherelementen entsprechend deren Verwendungszweck in der Digitalschaltung, um die Testdaten zu verarbeiten; Anhalten des Betreibens der ersten Vielzahl von Speicherelementen entsprechend deren Verwendungszweck in der Digitalschaltung; Austauschen von Dateninhalten von der ersten Vielzahl von Speicherelementen mit Dateninhalten von der zweiten Vielzahl von Speicherelementen zum zweiten Mal.
  15. Verfahren gemäß Anspruch 14, dadurch gekennzeichnet, dass das Austauschen von Dateninhalten von der ersten Vielzahl von Speicherelementen mit den Dateninhalten von der zweiten Vielzahl von Speicherelementen beim ersten Mal das Folgende umfasst: respektives Transferieren von Daten, die in der ersten Vielzahl von Speicherelementen gepuffert sind, in die zweite Vielzahl von Speicherelementen, und simultanes Transferieren der Testdaten von der zweiten Vielzahl von Speicherelementen in die erste Vielzahl von Speicherelementen.
  16. Verfahren gemäß Anspruch 15, dadurch gekennzeichnet, dass das Austauschen von Dateninhalten von der ersten Vielzahl von Speicherelementen mit den Dateninhalten von der zweiten Vielzahl von Speicherelementen beim zweiten Mal das Folgende umfasst: respektives Transferieren der verarbeiteten Testdaten, die in der ersten Vielzahl von Speicherelementen gepuffert sind, in die zweite Vielzahl von Speicherelementen, und simultanes Transferieren der Daten, die in der zweiten Vielzahl von Speicherelementen gepuffert sind, in die erste Vielzahl von Speicherelementen.
  17. Verfahren zum Testen einer Digitalschaltung, dadurch gekennzeichnet, dass die Schaltung eine erste Vielzahl von Speicherelementen und eine zweite Vielzahl von Speicherelementen aufweist, wobei das Verfahren umfasst: Bereitstellen eines ersten Betriebsmodus, in dem Testdaten in die zweite Vielzahl von Speicherelementen geladen werden und in dem die erste Vielzahl von Speicherelementen entsprechend ihres Verwendungszwecks in der Digitalschaltung betreiben wird; des Weiteren ein Bereitstellen eines zweiten Betriebsmodus, in dem Dateninhalte von der ersten Vielzahl von Speicherelementen mit Dateninhalten von der zweiten Vielzahl von Speicherelementen ausgetauscht werden.
  18. Verfahren gemäß Anspruch 17, dadurch gekennzeichnet, dass im zweiten Betriebsmodus das Austauschen von Dateninhalten von der ersten Vielzahl von Speicherelementen und der zweiten Vielzahl von Speicherelementen ein Transferieren von Testdaten von der zweiten Vielzahl von Speicherelementen in die erste Vielzahl von Speicherelementen umfasst und ein simultanes Transferieren von Dateninhalten von der ersten Vielzahl von Speicherelementen in die zweite Vielzahl von Speicherelementen, dadurch gekennzeichnet, dass in den Dateninhalten von der ersten Vielzahl von Speicherelementen ein Betriebszustand der Digitalschaltung aufgezeichnet ist.
DE102008003450.9A 2007-12-26 2008-01-08 Digitalschaltungen und Verfahren zum Testen einer Digitalschaltung Active DE102008003450B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/964,465 US8365029B2 (en) 2007-12-26 2007-12-26 Digital circuits and methods for testing a digital circuit
US11/964,465 2007-12-26

Publications (2)

Publication Number Publication Date
DE102008003450A1 true DE102008003450A1 (de) 2009-08-06
DE102008003450B4 DE102008003450B4 (de) 2017-02-09

Family

ID=40800008

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102008003450.9A Active DE102008003450B4 (de) 2007-12-26 2008-01-08 Digitalschaltungen und Verfahren zum Testen einer Digitalschaltung

Country Status (2)

Country Link
US (1) US8365029B2 (de)
DE (1) DE102008003450B4 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101738941B1 (ko) * 2010-03-23 2017-05-24 삼성전자주식회사 재구성 가능 어레이 및 재구성 가능 어레이의 제어 방법
EP2381265B1 (de) * 2010-04-20 2013-09-11 STMicroelectronics Srl System zur durchfürung einer Prüfung von digitalen Schaltkreisen
US10215803B1 (en) * 2014-10-15 2019-02-26 Santiago Remersaro Method and apparatus for concurrent inter-test response compaction and diagnosis
KR20190105337A (ko) * 2018-03-05 2019-09-17 삼성전자주식회사 반도체 메모리 장치

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2725258B2 (ja) * 1987-09-25 1998-03-11 三菱電機株式会社 集積回路装置
JPH01320544A (ja) * 1988-06-22 1989-12-26 Toshiba Corp テスト容易化回路
US5729553A (en) * 1994-08-29 1998-03-17 Matsushita Electric Industrial Co., Ltd. Semiconductor integrated circuit with a testable block
US5694402A (en) * 1996-10-22 1997-12-02 Texas Instruments Incorporated System and method for structurally testing integrated circuit devices
DE10033349A1 (de) 2000-07-08 2002-01-17 Bosch Gmbh Robert Verfahren und Anordnung zum Testen digitaler Schaltungen
US6738939B2 (en) * 2001-05-21 2004-05-18 Intel Corporation Method and apparatus for fault tolerant and flexible test signature generator
US6877119B2 (en) * 2001-09-14 2005-04-05 Stmicroelectronics Limited Circuit scan output arrangement
JP2004093462A (ja) * 2002-09-02 2004-03-25 Oki Electric Ind Co Ltd 半導体集積回路とその試験方法
US6990618B1 (en) * 2002-12-03 2006-01-24 Cypress Semiconductor Corporation Boundary scan register for differential chip core
US7373568B1 (en) * 2003-01-21 2008-05-13 Marvell Israel Ltd. Scan insertion
US7428678B1 (en) * 2004-09-22 2008-09-23 Cypress Semiconductor Corporation Scan testing of integrated circuits with high-speed serial interface
US7415645B2 (en) * 2005-07-28 2008-08-19 International Business Machines Corporation Method and apparatus for soft-error immune and self-correcting latches
US7461242B2 (en) * 2005-11-03 2008-12-02 Ati Technologies Ulc Method and apparatus for providing context switching of logic in an integrated circuit using test scan circuitry
JP4303719B2 (ja) * 2005-12-08 2009-07-29 Necエレクトロニクス株式会社 半導体集積回路およびその制御方法
US7739568B1 (en) * 2006-11-14 2010-06-15 Marvell International Ltd. Scan testing system for circuits under test

Also Published As

Publication number Publication date
US20090172282A1 (en) 2009-07-02
US8365029B2 (en) 2013-01-29
DE102008003450B4 (de) 2017-02-09

Similar Documents

Publication Publication Date Title
EP1097460B1 (de) Integrierte schaltung mit einer selbsttesteinrichtung zur durchführung eines selbsttests der integrierten schaltung
DE102006059156B4 (de) Verfahren zum Testen eines integrierten Schaltkreischips mit zumindest zwei Schaltungskernen sowie integrierter Schaltkreischip und Testsystem
EP0186724B1 (de) Prüf- und Diagnoseeinrichtung für Digitalrechner
DE102004009693A1 (de) Technik zum Kombinieren eines Abtasttests und eines eingebauten Speicherselbsttests
DE4305442A1 (de) Vorrichtung zum Testen eines elektronischen Gerätes
DE3702408C2 (de)
EP2553578A1 (de) Computersystem und verfahren zum vergleichen von ausgangssignalen
DE60109321T2 (de) Prüfung von asynchroner rücksetzschaltung
EP0903587A2 (de) Verfahren zum Testen einer elektronischen Schaltung
DE102008003450B4 (de) Digitalschaltungen und Verfahren zum Testen einer Digitalschaltung
EP0628832B1 (de) Integrierte Schaltung mit Registerstufen
EP0766092A1 (de) Testbare Schaltungsanordnung mit mehreren identischen Schaltungsblöcken
DE3817143C2 (de)
DE10032256C2 (de) Chip-ID-Register-Anordnung
DE60112723T2 (de) Lssd schnittstelle
EP1221097B1 (de) Schaltungszelle zur testmuster-generierung und testmuster-kompression
EP3739479B1 (de) Verfahren zur fehlersuche in der programmlogik eines systems verteilter programmierbarer gatteranordnungen
DE60320057T2 (de) System und Verfahren zur Schaltungsprüfung
DE3839289C1 (en) Circuit for the operation of an integrated circuit of which it is a component, optionally in a test operation mode or a functional operation mode
EP0012794B1 (de) Verfahren und Einrichtung für eine elektronische Datenverarbeitungsanlage zur Prüfung der aus einer Instruktion abgeleiteten Steuersignale
EP0240578B1 (de) Anordnung und Verfahren für externe Testzugriffe auf die chipinternen funktionellen Speicherelemente hochintegrierter logischer Netzwerke
DE102008022750B4 (de) Verbesserte JTAG-Schnittstelle
DE102009000698A1 (de) Prüfschaltung zur Prüfung einer Durchführung eines Handshake-Protokolls und Verfahren zur Prüfung einer Durchführung eines Handshake-Protokolls
EP1440324B1 (de) Elektronischer baustein mit ausgangsbuffersteuerung
DE10112560A1 (de) Verfahren und Vorrichtung zum Prüfen von Schaltungsmodulen

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R082 Change of representative