-
Die vorliegende Erfindung bezieht
sich im Allgemeinen auf das Testen von integrierten Schaltkreiseinheiten,
die Speicherstrukturen beinhalten, sowie von Systemen, die derartige
integrierte Schaltkreise beinhalten, und im Besonderen auf die Erweiterung
von eingebauten Anordnungen für
einen Selbsttest (Built-In-Self-Test, BIST) auf den Systemtest.
-
Die Steigerung bei der Integrationsdichte von
integrierten Schaltkreisen hat zu einer deutlichen Zunahme von Leistungsfähigkeit
und Funktionalität der
Schaltkreise geführt,
die auf einem einzigen Halbleiterchip Platz finden. Die erhöhte Funktionalität erfordert
selbstverständlich
auch eine höhere
Schaltkreiskomplexität,
und nach dem gegenwärtigen Stand
der Technik können
viele unterschiedliche Funktionsbereiche wie Addierer, Prozessoren,
Logikanordnungen, Pufferspeicher, Umsetzer auf Decodiererebene usw.
auf einem einzigen Chip untergebracht werden. Diese Funktionsbereiche
sind häufig so
konstruiert, dass sie mit verschiedenen Taktraten und sogar mit
unterschiedlichen Spannungen arbeiten, während gleichzeitig jedoch eine
im Wesentlichen synchrone Kommunikation zwischen ihnen möglich sein
muss.
-
Der Entwurf von Speichereinheiten
und die Prozesse für
ihre Herstellung haben mittlerweile eine ziemlich hohe Komplexität erreicht
und zu sehr niedrigen Produktionskosten und äußerst geringen Speicherzellgrößen geführt. Aus
diesem Grund findet gegenwärtig
eine vergleichsweise große
Anzahl von Speicherzellen mit den Schaltungen für die digitale Signalverarbeitung
auf einem einzigen Chip Platz. Darüber hinaus hat sich die Verwendung
von Mehrkanalspeichern für
die Datenübertragung
zwischen den Funktionskomponenten eines Chips als extrem schnell
und leistungsfähig
erwiesen und konnte sich somit in relativ großem Umfang durchsetzen. Diese Speicher
werden in der Regel als eingebettete Speicher bezeichnet, wenn sie
gemeinsam mit Schaltkreisen, die eine über die Speicherung hinausgehende Funktion
aufweisen, auf einem Chip mit integrierten Schaltkreisen verwendet
werden.
-
Dennoch sind Speicherzellen und hier
insbesondere solche des dynamischen Typs, die Daten kapazitiv speichern,
vergleichsweise empfindliche Einheiten und können während der Herstellung oder nach
der Inbetriebnahme beschädigt
oder in ihrer Funktion beeinträchtigt
werden. Wenn derartige Einheiten für die Kommunikation und die
Datenübertragung
zwischen Funktionsbereichen oder -komponenten verwendet werden,
gewinnt die Zuverlässigkeit der
Speichereinheiten höchste
Bedeutung für
die einwandfreie Funktion des gesamten Chips. Aus diesem Grund ist
es wünschenswert,
Speicherzellen in verschiedenen Phasen von Herstellung, Leiterplattenbestückung und
Systembetrieb zu testen. Dieser Test wird in regelmäßigen Abständen oder
bei bestimmten Betriebszuständen
des Systems wie beispielsweise beim Hochfahren des Chips durchgeführt, um so
die Funktionsfähigkeit
der Speicherstrukturen sicherzustellen. Wünschenswert ist außerdem die
Bereitstellung umfassenderer Tests der verschiedenen zusammenwirkenden
Funktionselemente des Systems. Derartige Tests werden im Allgemeinen
als Tests auf Systemebene bezeichnet, können jedoch in der Regel nicht
durch programmierbare Speicher-BIST-Anordnungen durchgeführt werden, wie weiter unten
erläutert
wird.
-
Dessen ungeachtet können Systemausfälle auf
eine Beschädigung
zurückzuführen sein,
die durch externe Elemente, Fertigungsmängel und/oder Materialermüdung verursacht
wird. Eine Beschädigung
durch externe Elemente könnte
die einwandfreie Funktion eines elektronischen Systems oder eines
beliebigen Teils davon zu jedem Zeitpunkt seiner Nutzlebensdauer
beeinträchtigen.
Allerdings sind in der Anfangszeit des Systembetriebs Fertigungsmängel die
Hauptursache für
Systemausfälle,
während
in späteren
Phasen der Systemlebensdauer Materialermüdung die beherrschende Ursache
für Systemausfälle bildet.
Für Anwendungen
mit hohen Anforderungen an Zuverlässigkeit und Verfügbarkeit,
wie z. B. im Bankwesen und im Medizinbereich, ist daher die Durchführung periodischer
Tests der Systemmodule von größter Bedeutung.
-
Speichereinheiten befinden sich in
der Regel im kritischen Pfad eines Systems oder seiner einzelnen
Komponenten und werden daher so konstruiert, dass sichergestellt
ist, dass Speicher in kritischen Pfaden mehrere Male schneller arbeiten
als die sie umgebende Logik; hierfür wird beim Entwurf besonderes
Gewicht auf eine hohe Integrationsdichte bei der Fertigung und auf
neue Technologien gelegt. Diese Faktoren können dazu beitragen, dass eingebettete
Speicher eine höhere
Fehleranfälligkeit
aufgrund von Fertigungsmängeln
und Materialermüdung
aufweisen und daher nach der Inbetriebnahme zusätzlich zu Tests auf Fertigungs-
und Leiterplattenebene in regelmäßigen Abständen getestet
werden müssen.
-
Tests auf Systemebene könnten auch
von spezieller Hardware ausgeführt
werden, die unabhängig
von der Hardware ist, welche für
die Tests auf Fertigungs- und Leiterplattenebene eingesetzt wird. In
einem derartigen Fall hätte
die eigens für
Tests auf Fertigungs- und Leiterplattenebene vorgesehene Hardware,
die in der Regel als eingebaute Anordnung für einen Selbsttest bereitgestellt
wird, nach der Inbetriebnahme des Systems keine weitere Funktion, während die
zusätzliche
Hardware für
Tests auf Systemebene zu einem höheren
Hardwarebedarf für
alle Testarten führen
würde.
-
Der Zugriff auf eingebettete Speicher
zu Testzwecken ist jedoch häufig
schwierig, insbesondere dann, wenn Chip-Größe und externe Anschlüsse oberste
Priorität
genießen.
Aus diesem Grund wird der Bereitstellung eines Selbsttestschaltkreises auf
dem eigentlichen Chip der Vorzug gegeben. Eine Vielzahl von Arten
solcher Anordnungen sind bekannt und werden im Allgemeinen als eingebauter Schaltkreis
oder Maschine für
einen Selbsttest (BIST) bezeichnet. Dabei wurden bestimmte Arten von
BIST-Schaltkreisen entwickelt, welche die dynamische Anpassung der
Testabfolge auf Basis der Ergebnisse von Testroutinen gestatten,
um so den Testvorgang zu beschleunigen. Der für eine BIST-Anordnung auf einem
Chip zur Verfügung
stehende Platz ist äußerst begrenzt
und beträgt
im Allgemeinen nur etwa 2 Prozent der Fläche der zu testenden Speichereinheiten.
-
Diese Fläche muss auch Platz für eine Befehls-
oder Signalquelle beinhalten, wie z. B. einen Festwertspeicher (ROM)
und zumeist auch einen Decodierer, um die codierten Digitalsignale
zu erzeugen, die dem eingebetteten Speicher während der Selbsttestoperation
zur Verfügung
gestellt werden sollen. Nach dem gegenwärtigen Stand der Technik stellt
die Unterbringung der BIST-Anordnung auf einer derart begrenzten
Chip-Fläche
eine erhebliche Herausforderung dar, insbesondere, wenn die Speicherstruktur
komplex ist und eine größere Anzahl
von Signalfolgen erforderlich ist, um den Speicher angemessen zu
testen und/oder vom Speicher kommende Signale zu erfassen und während des
Selbsttests auszuwerten.
-
Selbst wenn die Chip-Fläche auf
einen kleinen Prozentsatz der Fläche
des zu testenden Speichers begrenzt ist, kann die Ausnutzung des Chip-Platzes
als ineffizient betrachtet werden, da die BIST-Anordnung für die übrigen vorgesehenen
Funktionen des Chips nicht genutzt wird. Dennoch kann die Verwendung
einer BIST-Anordnung das einzige praktikable Verfahren für den Zugriff
auf die Signalleitungen darstellen, die für das Testen eines eingebetteten
Speichers erforderlich sind. Aus diesem Grund wurden BIST-Architekturen
entwickelt, darunter auch programmierbare Speicher-BIST-Architekturen,
welche die Testroutine als Reaktion auf Testergebnisse abändern können. Programmierbare
BIST-Architekturen können
auch unterschiedliche Speichertest-Signalstrukturen verarbeiten,
die möglicherweise
für die
verschiedenen Speicherstrukturen notwendig sind, ohne dass hierfür größere Hardwaremodifizierungen
und die damit verbundenen Entwicklungskosten anfallen.
-
Eine programmierbare Speicher-BIST-Anordnung
beinhaltet häufig
eine programmierbare Speicher-BIST-Steuereinheit und andere Komponenten,
um die Signale zu erzeugen, die für das vollständige Prüfen und
Testen der jeweiligen Speicherstruktur notwendig sind. Die programmierbare
Speicher-BIST-Steuereinheit
beinhaltet im Allgemeinen eine Mikrocode basierte Steuereinheit und
ein Befehlsdecodierungsmodul, das für jeden Befehl ein oder mehrere
Mehrbitsignale (z. B. Mehrbitdaten-, -adress- und -kontrollsignale)
erzeugt.
-
Die von der programmierbaren Speicher-BIST-Steuereinheit
unterstützten
Befehle beschreiben oder bilden einen Speichertestalgorithmus, der
sich für
den Test des jeweiligen eingebetteten Speichers eignet, und werden
in einem Befehlsspeichermodul, vorzugsweise (bzw. entwurfsbedingt) innerhalb
der Mikrocode-basierten Steuereinheit, gespeichert. Bei dem Befehlsspeichermodul
kann es sich um einen beliebigen Typ einer Vielzahl von Typen handeln,
einschließlich,
ohne darauf beschränkt zu
sein, eines Festwertspeichers (ROM) wie beispielsweise ein EEPROM
oder einer Registerdatei. Im ersteren Fall (z. B. bei einem nichtflüchtigen
Speicher) ist das Laden der Testanweisungen nicht notwendig und
eventuell auch nicht möglich.
ROM- und kleinere RAM-Module machen es darüber hinaus schwieriger, das
System insgesamt zu testen.
-
Aus diesem Grund wird der Verwendung
einer Registerdatei für
die Speicherung der Testanweisungen im Allgemeinen der Vorzug gegeben.
In diesem Fall werden die Anweisungen für einen bestimmten, gewünschten
Test während
des Testvorgangs durch einen externen Tester geladen. (Dabei sollte
klar sein, dass – obwohl
ein externer Tester für die
Durchführung
einer Testroutine notwendig sein kann – die BIST-Anordnung den Zugriff
auf bestimmte Verbindungen in den Speicherstrukturen bereitstellen
kann, auf die andernfalls nicht ohne weiteres zugegriffen werden
kann.)
-
Bei einem Test auf Fertigungsebene
(z. B. während
der Chip-Produktion
und -Integration) werden die den Testalgorithmus bildenden unterstützten Befehle
wie oben beschrieben über
einen externen Tester eingegeben. Wenn die Speicherelemente in der
Registerdatei überprüfbar sind,
erfolgt der Ladeprozess seriell unter Verwendung eines beliebigen Prüfprotokolls,
das übernommen
wurde und/oder geeignet ist. Bei einem Test auf Leiterplattenebene
gemäß dem Standard
IEEE 1149.1 ist die Registerdatei als ein Testdatenregister definiert,
und der Zugriff auf sie erfolgt, indem ein geeigneter IEEE 1149.1-Befehl in das Befehlsregister
geladen wird. Die Speichertestanweisungen werden unter Verwendung
eines externen Testers geladen, während die Test-Access-Port
(TAP-)-Steuereinheit sich im Status SHIFT-DR befindet.
-
Allerdings können die BIST-Module, die Registerdateien
als Befehlsspeichermodul verwenden, nicht für Tests auf Systemebene herangezogen
werden. Der Grund hierfür
liegt darin, dass Registerdateien für den Befehlssatz, der den
Testalgorithmus bildet, initialisiert werden müssen. Aus diesem Grund ist
die BIST-Anordnung auf den Einsatz für Tests auf einer niedrigeren
Ebene beschränkt,
bei denen eine externe Steuerung einer solchen Initialisierung und eine
Quelle eines Testalgorithmus zur Verfügung steht, und führt somit
zu einer erheblichen Ineffizienz bei der Ausnutzung des Chip-Platzes,
wie weiter oben bereits erwähnt,
obwohl die BIST-Anordnung prinzipiell von grundlegender Wichtigkeit
ist, um die Funktionalität
eines Chips und der diesen Chip enthaltenden Leiterplatte zu gewährleisten.
-
Ein integrierter Schaltkreis, wie
er in der Einleitung von Anspruch 1 erwähnt wird, ist aus DE-A-198
35 258 bekannt.
-
Unter einem ersten Aspekte betrachtet,
stellt die vorliegende Erfindung somit einen integrierten Schaltkreis
nach Anspruch 1 zur Verfügung.
-
Vorzugsweise umfasst das Mittel für die Erzeugung
von Standardtestanweisungen ein Initialisierungsspeichermittel.
-
Vorzugsweise ist das Initialisierungsspeichermittel
ein Speicherinitialisierungsmodul.
-
Ein integrierter Schaltkreis gemäß dem ersten
Aspekt umfasst darüber
hinaus vorzugsweise ein Mittel für
die Aktivierung des Mittels für
die Erzeugung der Standardtestanweisungen, das auf die Abwesenheit
von Testanweisungen von einem externen Tester anspricht.
-
Ein integrierter Schaltkreis gemäß dem ersten
Aspekt umfasst des Weiteren vorzugsweise Mittel für die Steuerung
eines Testbetriebs, wobei das Mittel für die Steuerung eines Testbetriebs
Mittel für
die Bereitstellung eines Steuersignals an eine Befehlsspeichersteuereinheit
umfasst und außerdem
das Mittel für
die Speicherung der Testanweisungen umfasst.
-
Ein integrierter Schaltkreis gemäß dem ersten
Aspekt umfasst weiterhin vorzugsweise Mittel für die Aktivierung des Mittels
für die
Erzeugung der Standardtestanweisungen, wenn der Befehlsspeichersteuereinheit
lediglich das Steuersignal zur Verfügung gestellt wird.
-
Vorzugsweise umfasst das Mittel für die Erzeugung
von Standardtestanweisungen einen Speicher für die Speicherung der Standardtestanweisungen.
-
Unter einem zweiten Aspekt betrachtet,
stellt die vorliegende Erfindung ein elektronisches System bereit,
das einen integrierten Schaltkreis gemäß dem ersten Aspekt beinhaltet.
-
Unter einem dritten Aspekt betrachtet,
stellt die vorliegende Erfindung ein Verfahren nach Anspruch 10
bereit.
-
Die Ausführungsformen der vorliegenden
Erfindung stellen somit eine Verbesserung einer programmierbaren
Speicher-BIST-Anordnung
dar und erweitern ihre Einsatzmöglichkeiten
auf Tests auf Systemebene.
-
Die Ausführungsformen der vorliegenden
Erfindung bringen eine höhere
Effizienz bei der Ausnutzung des Speicherplatzes für BIST-Anordnungen
mit sich.
-
Die Ausführungsformen der vorliegenden
Erfindung bieten eine Standardinitialisierungsfunktion für eine programmierbare
Speicher-BIST-Anordnung, um so einen Standardsatz von gewünschten Testanweisungen
zu laden, wenn diese nicht durch einen externen Tester zur Verfügung gestellt
werden.
-
Vorzugsweise werden ein integrierter
Schaltkreis und ein elektronisches System, das einen integrierten
Schaltkreis beinhaltet, bereitgestellt, einschließlich einer
Speichereinheit für
die Speicherung von Testanweisungen und einschließlich einer
Anordnung für
den Empfang von Testanweisungen, die von einem externen Tester bereitgestellt
werden, einer Anordnung für
die Erzeugung von Standardtestanweisungen und einer Anordnung für die Bereitstellung
der Standardtestanweisungen an die Speichereinheit für die Speicherung
der Testanweisungen.
-
Des Weiteren wird vorzugsweise ein
Verfahren für
die Durchführung
von Tests auf Systemebene für
ein elektronisches System bereitgestellt, das Schritte für die Bereitstellung
eines Testalgorithmus auf Systemebene in einer eingebauten Anordnung für einen
Selbsttest beinhaltet, wobei der Testalgorithmus auf Systemebene
an eine Anordnung für
die Speicherung eines Testalgorithmus übertragen wird und die eingebaute
Anordnung für
einen Selbsttest unter Verwendung des Testalgorithmus auf Systemebene
betrieben wird.
-
Im Folgenden wird eine lediglich
als Beispiel zu verstehende bevorzugte Ausführungsform der Erfindung beschrieben,
wobei mit Blick auf die beigefügten
Zeichnungen gilt:
-
1 ist
ein Übersichtsblockschaltbild
einer beispielhaften Architektur einer programmierbaren Speicher-BIST-Anordnung;
-
2 ist
ein Ablaufdiagramm, das die Initialisierung für Tests auf Fertigungs- und
Leiterplattenebene zeigt;
-
3 ist
ein Übersichtsblockschaltbild,
das eine allgemeine Übersicht über eine
programmierbare Speicher-BIST-Architektur zeigt;
-
4 ist
ein Übersichtsblockschaltbild
der Mikrocodebasierten Steuereinheit gemäß der bevorzugten Ausführungsform
der Erfindung für
eine programmierbare Speicher-BIST-Anordnung, wie sie in 1 oder 3 beschrieben
wird; und
-
5 ist
ein Ablaufdiagramm, das den Betrieb der bevorzugten Ausführungsform
der Erfindung als eine zusätzliche
Funktion zeigt, die über
diejenige aus 2 hinausgeht.
-
Mit Blick auf die Zeichnungen und
hier insbesondere auf 1 wird
ein Übersichtsblockschaltbild einer
beispielhaften Architektur eines programmierbaren Speicher-BIST-Moduls
gezeigt. Im Mittelpunkt dieser Architektur steht eine programmierbare
Speicher-BIST-Steuereinheit 10, die vorzugsweise eine Mikrocode-basierte
Steuereinheit 100, ein Befehlspeichermodul 30 (beide
in 3 dargestellt) und
ein Befehlsdecodierungsmodul 20 umfasst.
-
Das Befehlsdecodierungsmodul erzeugt
Digitalsignale oder steuert die Erzeugung von Digitalsignalen und
beinhaltet Daten- (40), Adress- (50) und Steuersignalgeneratoren
(60), mit denen der zu testende Speicher geprüft werden
soll. Es ist außerdem allgemein
erstrebenswert, die Auswahl eines Teils des zu testenden Speichers
(70) und die Auswahl eines Anschlusses (80) zu
ermöglichen, über den
die Testanweisungen geladen werden können und über den die Reaktionen des
zu testenden Speichers auf die Testsignale zu Analysezwecken abgerufen
werden. Die bidirektionale Kommunikation zwischen der Steuereinheit 10 und
den Signalgeneratoren und den Selektoren 40 bis 80 bezieht
sich sowohl auf die Steuerung durch die Steuereinheit als auch auf
die Mitteilung des Status der betreffenden Generatoren und Selektoren
sowie auf die Aufrufe von Folgebefehlen. Die unidirektionale Kommunikation
mit dem Speicher macht deutlich, dass die BIST-Anordnung in erster
Linie für
die Prüfung
der betreffenden Speicherstruktur zuständig ist, und obwohl Vorkehrungen für den Abruf
von Signalen vom Speicher als Reaktion auf die Testroutine innerhalb
der BIST-Anordnung zur Verfügung
gestellt werden können,
sind derartige Anordnungen in der Technik hinreichend bekannt und
müssen
hier nicht näher
erläutert
werden.
-
Die Entwicklung und Initialisierung
von Tests auf Fertigungs- und
Leiterplattenebene wird in 2 dargestellt.
Der Prozess beginnt (110) mit dem Entwurf eines integrierten Schaltkreises,
der einen eingebetteten Speicher beinhaltet, welcher so konzipiert sein
muss, dass er bestimmte Funktionen des Chips wie die weiter oben
bereits erwähnte Übertragung zwischen
Funktionselementen ermöglicht.
Wenn es sich bei der Speicherstruktur um eine neue Bauart handelt,
für die
noch keine geeigneten Tests entwickelt wurden, erhält man den
Speichertestalgorithmus im Allgemeinen ausgehend von einer Beschreibung
einer Anzahl von Verhaltensweisen, welche die Speicherstruktur als
Folge einer bestimmten Steuerung aufweisen soll, wie dies in Schritt 115 dargestellt ist.
Dieser Satz von Verhaltensweisen wird anschließend in eine Liste der unterstützten Befehle übersetzt,
die wiederum zur Erzeugung von Signalen führt, welche in die Speicherstruktur
eingelesen werden, um diese Verhaltensweisen hervorzurufen, wie in
Schritt 120 dargestellt.
-
In der Regel werden mehrere Tests
entwickelt, um die Funktionalität
des Chips und/oder der Leiterplatte zu verschiedenen Zeitpunkten
während der
Fertigung oder Bestückung
zu prüfen.
Alle oder einige dieser Testalgorithmen befinden sich im Speicher
einer externen Testvorrichtung, die ein Bestandteil des Fertigungsprozesses
oder der Fertigungslinie ist und entweder von einem Bediener oder
aber automatisch ausgewählt
werden kann, wie dies für
die jeweilige Anwendung geeignet bzw. angemessen ist. Bei der Auswahl
einer bestimmten Testroutine wird in Schritt 125 ermittelt,
ob es sich um einen Test auf Fertigungs- oder Leiterplattenebene
handelt.
-
Wenn es sich um einen Test auf Fertigungsebene
handelt und das Befehlsspeichermodul der BIST-Anordnung eine Registerdatei
und überprüfbar ist
(wovon im Rahmen dieser Darlegung ausgegangen wird), wird in Schritt 130 eine
für einen
Prüfvorgang
ladbare Bitfolge von Befehlen erzeugt und am Prüfeingang bereitgestellt, wie
aus Schritt 135 hervorgeht. Danach wird die Bitfolge als
Befehle geladen, indem eine geeignete Anzahl von Prüftakten
der programmierbaren BIST-Steuereinheit 10 angewendet wird,
um die Bitfolge in das Befehlsspeichermodul 30 zu laden.
-
Wenn es sich andererseits um einen
Test auf Leiterplattenebene handelt, wird eine Bitfolge gemäß dem Standard
IEEE 1149.1 erzeugt, wie in Schritt 145 dargestellt ist,
und ein geeigneter IEEE 1149.1-Befehl wird in das Befehlsspeichermodul
geladen, indem eine geeignete Anzahl von Taktzyklen angewandt wird,
wie aus Schritt 150 hervorgeht. Danach wird die Bitfolge
der Testdatenschnittstelle (Test Data Interface, TDI) bereitgestellt,
wie aus Schritt 155 hervorgeht, und die TAP-Steuereinheit erhält den Status
SHIFT-DR, wie aus Schritt 160 hervorgeht, und eine geeignete
Anzahl von Taktzyklen wird angewandt, um die Bitfolge in das Befehlsspeichermodul 30 zu übertragen,
wie aus Schritt 160 hervorgeht.
-
Wie weiter oben bereits beschrieben,
wird sowohl bei Tests auf Fertigungsebene als auch auf Ebene der
Leiterplattenbestückung
zunächst
eine Bitfolge, die für
den ausgewählten
Speichertestalgorithmus steht, in die Pufferspeicher eines externen Testers
geladen. Anhand des geeigneten Prüfprotokolls lädt der externe
Tester diese Bitfolge in das Befehlsspeichermodul. Somit ist eine
programmierbarer Speicher-BIST-Anordnung abhängig von der Verfügbarkeit
eines externen Testers und kann daher ohne eine Ausführungsform
der vorliegenden Erfindung nicht für Tests auf Systemebene eingesetzt
werden, bei denen kein externer Tester vorhanden ist, um die programmierbare
Speicher-BIST-Anordnung mit der Bitfolge zu initialisieren, die
den Testalgorithmus bildet.
-
Mit Blick auf die 3 und 4 wird
im Folgenden die Architektur einer programmierbaren Speicher-BIST-Anordnung
erläutert,
die ebenfalls für Tests
auf Systemebene herangezogen werden kann. Die Architektur einer
programmierbaren Speicher-BIST-Anordnung, wie sie in 1 dargestellt ist, und insbesondere
die programmierbare Speicher-BIST-Steuereinheit 10 kann
auch wie in 3 gezeigt
entworfen werden, wobei sie hier in erster Linie eine Mikrocode-basierte
Steuereinheit 100 und ein Befehlsdecodierungsmodul umfasst.
Die Steuereinheit 100 stellt dem Befehlsdecodierungsmodul 20 Befehle
zur Verfügung
und empfängt
von ihm Statussignale und Folgebefehlsanforderungen. Das Befehlsdecodierungsmodul
wiederum kommuniziert mit bestimmten Signalgeneratoren und/oder
Registern, die der zu testenden Speicherstruktur Testsignalstrukturen
und -folgen zur Verfügung
stellen. Die Mikrocode-basierte Steuereinheit 100 empfängt außerdem Testanweisungen
für die
Testerinitialisierung, Status- und Steuersignale von einem externen
Tester oder einem zugehörigen
Schaltkreis, wie beispielsweise einem Detektor zur Überprüfung des
Einschaltstatus.
-
Wie weiter oben mit Blick auf 1 erläutert, umfasst die Steuereinheit 100 außerdem ein
Befehlsspeichermodul 30 und gemäß der bevorzugten Ausführungsform
der Erfindung eine Befehlsspeichersteuereinheit 200, welche
die Testanweisungen sowie Steuer- und Statussignale von einem externen Tester
oder einem anderen zugehörigen
Schaltkreis wie oben erwähnt
empfängt.
Außerdem
wird gemäß der bevorzugten
Ausführungsform
der Erfindung ein Initialisierungsspeichermodul 210 als
Eingang für
die Befehlsspeichersteuereinheit 200 bereitgestellt.
-
Eine wesentliche Funktion der Befehlsspeichersteuereinheit 200 besteht
darin, dem Initialisierungsspeichermodul 210 ein Aktivierungssignal 220 bereitzustellen,
wenn eine Testroutine aufgerufen wird, von einem externen Tester
jedoch keine Testanweisungen zur Verfügung gestellt werden. Beim Empfang
eines derartigen Aktivierungssignals 220 stellt das Initialisierungsspeichermodul
der Speichersteuereinheit 200 Standardtestanweisungen und Statussignale
zur Verfügung
(z. B. um den Abschluss des Auslesevorgangs anzuzeigen). Das Initialisierungsspeichermodul
kann auch Taktsignale bereitstellen, falls dies gewünscht wird
oder diese nicht anderweitig zur Verfügung gestellt werden.
-
Die im Initialisierungsspeichermodul 210 gespeicherten
Standardtestanweisungen sollten vorzugsweise für Tests auf Systemebene herangezogen werden,
ohne dass jedoch eine technische Notwendigkeit für eine solche Anwendungsbeschränkung besteht.
Dies bedeutet, dass ein beliebiger Test gespeichert und im Befehlsspeichermodul 30 der
programmierbaren BIST-Steuereinheit 10 als Standardtest
bereitgestellt werden kann, von der die Testroutine dann auf die
gewohnte Art und Weise ausgeführt werden
kann. Indem die Standardtestanweisungen aus dem Initialisierungsspeichermodul 210 an
das Befehlsspeichermodul 30 übertragen werden, bleibt außerdem die
Möglichkeit,
Befehle für
einen bestimmten Test, bei dem es sich entweder um einen Test auf
Fertigungs- oder auf Leiterplattenebene handeln kann, davon unberührt, ob
die bevorzugte Ausführungsform
der Erfindung in die programmierbare Speicher-BIST-Steuereinheit
aufgenommen wird, wie dies in 5 besonders
deutlich wird.
-
5 stellt
den Initialisierungsvorgang gemäß der bevorzugten
Ausführungsform
der Erfindung dar. Dabei dürfte
klar sein, dass mit Ausnahme von 125' die Schritte 110 bis 165 mit
den in 2 gezeigten und
oben erläuterten
Schritten übereinstimmen.
Bei der bevorzugten Ausführungsform
der Erfindung, wie sie in 5 dargestellt
ist, wird jedoch zwischen drei möglichen
Testtypen unterschieden: Fertigungsebene, Leiterplattenebene und
Systemebene. Die Unterscheidung von Tests auf Fertigungs- und Leiterplattenebene
bleibt hiervon unberührt.
-
Bei der bevorzugten Ausführungsform
der Erfindung können
Tests auf Systemebene durch das Fehlen von Befehlen von einem externen
Tester voneinander unterschieden werden. Allerdings könnten andere
Verfahren, wie z. B. die Unterscheidung nach einer Quelle eines
Testbefehls oder nach einem bestimmten Testbefehl selbst, herangezogen
werden und die Befehlsübertragung
von einem ausgewählten
Speicherinitialisierungsmodul 210 veranlassen, wenn mehr
als ein solches Speicherinitialisierungsmodul vorhanden ist. Die
einzige Beschränkung
für die
Anzahl von Testtypen, die wahlweise als Standardtests bereitgestellt
werden könnten, besteht
in der Anzahl der Bedingungen, die sich problemlos unterscheiden
lassen, und in der Chip-Fläche,
die einem Speicher oder einer anderen Hardware für die Erzeugung von Befehlen
für verschiedene
Tests auf System- oder anderweitiger Ebene, für die ein externer Tester nicht
ohne weiteres verwendet werden kann, wirksam zugewiesen werden kann.
-
Wenn ein Test aufgerufen wird und
festgestellt wird, dass keine Testanweisungen von einem externen
Tester vorliegen, wird das Initialisierungsspeichermodul durch das
Signal 220 aktiviert, wie oben erläutert und in Schritt 310 aus 5 dargestellt. Nach der
Aktivierung erzeugt das Initialisierungsspeichermodul 210 Standardtestanweisungen und
lädt sie
in das Befehlsspeichermodul 30 der programmierbaren Speicher-BIST-Steuereinheit 10,
wie aus Schritt 320 in 5 hervorgeht.
Wenn jedoch die Testanweisungen tatsächlich verfügbar sind, wird das Initialisierungsspeichermodul
nicht aktiviert, und die Befehle für einen Test auf Leiterplatten- oder Fertigungsebene
werden auf die normale Art und Weise geladen.
-
Aus obigen Erläuterungen geht hervor, dass die
bevorzugte Ausführungsform
der Erfindung einen Zugewinn an Nutzen und Funktionalität für eine eingebaute
Anordnung für
einen Selbsttest bedeutet und so die Effizienz bei der Ausnutzung
und Zuweisung von Chip-Platz erhöht.
Die bevorzugte Ausführungsform
der Erfindung ermöglicht
die volle Flexibilität
bei der Programmierung einer programmierbaren Speicher-BIST-Anordnung,
während
gleichzeitig unabhängig
von einem externen Tester zusätzlich gewünschte Tests
durchgeführt
werden können,
bei denen es sich z. B. um Tests auf Systemebene handeln kann, nachdem
der Chip mit einem eingebetteten Speicher und/oder die Leiterplatte
mit einem derartigen Chip in Betrieb genommen wurden.