-
Die
vorliegende Erfindung betrifft ein Verfahren und eine Vorrichtung
zum Speicherselbsttest von eingebetteten Speichern in Halbleiterchips.
-
Fortschritte
in Halbleiterdesign und Herstellungsverfahren ermöglichen
eine zunehmende Miniaturisierung von elektronischen Schaltkreisen.
Vollständige
Systeme aus Mikroprozessoren, Kommunikationslogik und insbesondere
Speicher sind dabei auf einem einzigen Halbleiterchip zu finden.
Solche Systeme auf einem Chip (systems-on-a-chip = SOC) weisen eine
Vielzahl von Technologien auf, die zuvor als separate Komponenten
auf einer Schaltungsplatine einen hohen Platzbedarf aufwiesen.
-
Während in
der Vergangenheit Halbleiterchips von logischen Funktionen dominiert
waren und separate Speicher außerhalb
vorgesehen waren, erfordern moderne integrierte Schaltkreise zunehmend eingebetteten
Speicher auf dem Halbleiterchip selbst. Eingebettete Speicher können in
Halbleiterchips als verschiedene Speicherblöcke in verschiedenen Größen und
Formen vorliegen. Durch das Integrieren von Speichern auf einem
Halbleiterchip kann Platz eingespart werden und die Geschwindigkeit
von Speicherzugriffen durch das Einsparen von Schnittstellen und
geschwindigkeitsbremsende Faktoren wie Schaltungsplatinen erhöht werden.
-
Eingebettete
Speicher in einem system-on-a-chip müssen sehr zuverlässig sein
und dementsprechend getestet werden. Daher wird meist in einem system-on-a-chip
mit eingebetteten Speichern eine Speicherselbstteststeuerung vorgesehen, die
auf die in dem System vorgesehenen eingebetteten Speicher zugeschnitten
ist. Eine derartige Speicherselbstteststeuerung (BIST = built-in
self test) führt
dann beispielsweise nach der Herstellung des entsprechenden Halbleiterchips
oder auch bei jedem Hochfahren des SOCs einen Speicherselbsttest durch.
-
Beispielsweise
beschreibt das US Patent
US 6,681,354
B2 eine Selbsttestvorrichtung eines Halbleiterchips, die über einen
internen konfigurierbaren Bus gesteuert wird. Dabei führt ein
FPGA (feldprogrammierbares Gate-Array) extern getriggert ein Speichertestprogramm
durch. Nach Beendigung des Testes wird das entsprechende FPGA zur
Durchführung
weiterer Funktionen verwendet.
-
Die 1 zeigt schematisch einen
Halbleiterchip SOC mit eingebetteten Speichern M1, M2, M3 und einer
Speicherselbstteststeuerung BIST nach dem Stand der Technik.
-
Der
Halbleiterchip SOC bzw. das System auf einem Halbleiterchip weist
eingebettete Speicher M1, M2, M3 auf, die an ein Bussystem L, S,
A gekoppelt sind. Die eingebetteten Speicher M1, M2, M3 weisen jeweils
adressierbare Speicherzellen auf, die über eine Adressleitung A adressiert
werden, und über
einen Schreib-/Lesebus bzw. -leitung L, S beschrieben oder ausgelesen
werden. In der Figur ist nur beispielhaft die jeweilige Zugriffsrichtung
des Adressierens A, Lesens L und Schreibens S der Speicher M1, M2, M3
dargestellt.
-
Es
ist ferner eine zentrale Chipsteuerungseinrichtung CPU vorgesehen,
die zum Adressieren, Schreiben und Lesen der Speicher ebenfalls
an das Bussystem L, S, A gekoppelt ist, vorgesehen.
-
Es
ist zusätzlich
eine Speicherselbstteststeuerung BIST vorgesehen, die über den
Adressbus und den Schreib-/Lesebus an die Speicher M1, M2, M3 gekoppelt
ist. Die Speicherselbstteststeuerung BIST ist von einem externen
Selbstteststeuersignal STS steuerbar.
-
Über das
externe Selbstteststeuersignal STS wird der Speicherselbstteststeuerung
BIST mitgeteilt, dass ein Speicherselbsttest durchgeführt werden
soll. Dies geschieht in der Regel nach der Fertigung, kann jedoch
auch beim Hochfahren des Systems auf dem Halbleiterchip SOC geschehen.
Nach der Durchführung
des Speicherselbsttestes durch die Speicherselbstteststeuerung BIST
liefert diese ein Ergebnis FS zur Auswertung an eine externe Testapparatur
zurück.
Das Einleiten des Speicherselbsttestes und die Auswertung der Testergebnisse
FS kann auch wie durch die gestrichelten Linien angedeutet durch
die Chipsteuerungseinrichtung CPU erfolgen.
-
Jedem
der eingebetteten Speicher M1, M2, M3 ist ein Speicheradressbereich
im Adressraum zugeordnet. Dies ist schematisch in der 2 dargestellt.
-
Der
Speicheradressbereich eines jeweiligen Speichers ist durch eine
Anfangs- und eine Endadresse gegeben. Beispielsweise sind die in
dem eingebetteten Speicher M1, M2, M3 vorgesehenen Speicherzellen
durch Speicheradressen adressierbar, die zwischen einer Anfangsspeicheradresse AM1,
AM2, AM3 und einer Endspeicheradresse EM1, EM2, EM3 liegen. Ferner
werden in dem Adressraum Adressen für Register BIST1, BIST2, BIST3
der Speicherselbstteststeuerung BIST vorgehalten. In die Register
BIST1, BIST2, BIST3 der Selbstteststeuerung BIST werden beispielsweise
Anweisungen bzw. Programmcodes für
den durchzuführenden
Speichertest eingeschrieben. Die Register BIST1, BIST2, BIST3 beinhalten
auch den jeweiligen Status des getesteten Speichers M1, M2, M3 bzw. das
jeweilige Testergebnis. Je nachdem wie viele eingebettete Speicher
M1, M2, M3 auf einem Halbleiterchip vorgesehen sind, müssen jeweils
Adressbereiche für
die Speicherselbstteststeuerungsregister BIST1, BIST2, BIST3 vorgesehen
und definiert werden. Auch die Datenbreite und der Speicherumfang der
jeweiligen Register hängen
von den eingebetteten Speichern M1, M2, M3 ab.
-
Ein
entsprechendes Verfahren zum Speicherselbsttest und ein Halbleiterchip
mit eingebetteten Speichern und einer Speicherselbstteststeuerung nach
dem Stand der Technik ist daher aufwendig, weil Teile des Adressraumes
durch die Register der Selbstteststeuerung belegt sind. Ferner kann
eine dementsprechende Selbstteststeuerung nach dem Stand der Technik
nur auf einen Typ von Halbleiterchips mit eingebetteten Speichern
eingesetzt werden. Es muss also die Selbsttestteuerung angepasst werden,
wenn sich die Speicherkonfiguration durch beispielsweise Zahl oder
Größe der Speicher ändert.
-
Es
ist daher Aufgabe der Erfindung, ein Verfahren und eine Vorrichtung
zum Speicherselbsttest von eingebetteten Speichern in Halbleiterchips
zu schaffen, das keine Einschränkung
des adressierbaren Raumes bedingt und flexibel einsetzbar ist, d.h. an
verschiedene Kombinationen von eingebetteten Speichern leicht anpassbar
ist.
-
Erfindungsgemäß wird diese
Aufgabe durch das Verfahren mit den Merkmalen des Patentanspruchs
1 sowie einen Halbleiterchip mit eingebetteten Speichern mit den
Merkmalen des Patentanspruchs 10 gelöst.
-
Demgemäß ist ein
Verfahren zum Speicherselbsttest von eingebetteten Speichern in
Halbleiterchips vorgesehen, wobei einem zu testenden Speicher ein
Speicheradressbereich zugeordnet ist und wobei mindestens einem
Speicherselbstteststeuerungsregister einer Speicherselbstteststeuerung
zum Speichern von Speichertestkonfigurationsdaten Adressen aus demselben
Speicheradressbereich des zu testenden Speichers zugewiesen werden.
-
Die
der Erfindung zugrundeliegende Idee besteht darin, dass die Adressen
der Speicherselbstteststeuerungsregister während eines Speicherselbsttestes
für auf
den Speicher zugreifende Systemkomponenten auf die Adressen der
jeweiligen zu testenden Speicher abgebildet werden. Dadurch wird der
gesamte adressierbare Raum für
das System auf dem entsprechenden Halbleiterchip besser genutzt und
die Anzahl bzw. Größe der Speicherselbstteststeuerungsregister
kann ohne Vorhalten von weiterem Adressraum vergrößert werden.
Da während
eines Speicherselbsttestes nicht auf den entsprechenden Speicher
zugegriffen wird, wird der entsprechende Speicheradressbereich erfindungsgemäß zum Adressieren
der Register der Speicherselbstteststeuerung genutzt. Ferner bietet
das erfindungsgemäße Verfahren
den Vorteil, dass die Register der Speicherselbstteststeuerung lediglich
einfach vorgehalten werden, auch für verschiedene zu testende
Speicher, die sich einge bettet auf dem Halbleiterchip befinden.
Auch wenn jedem Speicher jeweils eine erfindungsgemäße Speicherselbstteststeuerung
zugeordnet wird bietet das erfindungsgemäße Verfahren ein einfaches
standardisiertes Zugriffsschema auf die entsprechenden Speicherselbstteststeuerungsregister.
Eine nach dem erfindungsgemäßen Verfahren
arbeitende Speicherselbstteststeuerung ist daher flexibel in Halbleiterchips
einsetzbar, die auch verschiedene Kombinationen von eingebetteten
Speichern aufweist.
-
Eine
bevorzugte Ausführungsform
des erfindungsgemäßen Verfahrens
sieht die folgenden Schritte vor:
- (a) Bereitstellen
von mindestens einem zu testenden Speicher mit Speicherzellen, welchen
Adressen aus dem Speicheradressbereich zugeordnet sind, wobei die
Speicherzellen adressierbar, auslesbar und beschreibbar sind;
- (b) Ändern
der Zuordnung von Adressen aus dem Speicheradressbereich, dem die
zu testenden Speicherzellen zugeordnet sind, wodurch die entsprechenden
Adressen dem mindestens einem Speicherselbstteststeuerungsregister
zugewiesen werden;
- (c) Adressieren der dem Speicherselbstteststeuerungsregister
zugewiesenen Adressen;
- (d) Schreiben von Speichertestkonfigurationsdaten gemäß der Adressierung;
- (e) Auswählen
von Adressen der zu testenden Speicherzellen aus dem Speicheradressbereich in
Abhängigkeit
von den Speichertestkonfigurationsdaten durch die Speicherselbstteststeuerung;
- (f) Adressieren gemäß der ausgewählten Adressen
der zu testenden Speicherzellen;
- (g) Schreiben von Testmusterdaten in die zu testenden Speicherzellen
und Auslesen der entsprechenden Speicherzelleninhalte der zu testenden Speicherzellen
gemäß der Adressierung;
- (h) Vergleichen der Testmusterdaten mit den ausgelesenen Speicherinhalten
der zu testenden Speicherzellen, wobei ein Speicherzellenfehler erkannt
wird, wenn ein ausgelesener Speicherzelleninhalt von dem entsprechenden
eingeschriebenen Testmusterdatum abweicht.
-
Die
bevorzugte Ausführungsform
des erfindungsgemäßen Verfahrens
hat den Vorteil, dass wenn ein Speicherselbsttestmodus des Systems
auf dem Halbleiterchip eingenommen wird, die Speicherselbstteststeuerungsregister
beispielsweise für
eine zentrale Chipsteuerung in dem Adressbereich sichtbar werden,
der dem zu testenden Speicher zugeordnet war. Somit ist ein Einschreiben
von Speichertestkonfigurationsdaten in die Speicherselbstteststeuerungsregister
und Lesen von Teststatusinformationen einfach und vor allem auf
einheitliche Weise für
alle zu testenden Speicher möglich.
-
Vorteilhafterweise
wird der Speicherselbsttest in einem Unterbereich des zu testenden
Speichers durchgeführt,
wobei der Unterbereich durch eine Start-Speicheradresse und eine
Stop-Speicheradresse
bestimmt ist. Dies ermöglicht
während
des Betriebs des Halbleiterchips, nur Teile der vorliegenden eingebetteten
Speicher einem Speicherselbsttest zu unterziehen. Die jeweilige
Start-Speicheradresse und Stop-Speicheradresse, die den Unterbereich
definiert wird dann als Teil der Speichertestkonfigurationsdaten
in eines der Speicherselbstteststeuerungsregister eingeschrieben.
-
In
einer bevorzugten Ausführungsform
ist der Speicheradressbereich des zu testenden Speichers durch eine
Anfangs- und eine End-Speicheradresse bestimmt, und einem Speicherselbstteststeuerungsregister
ist mindestens die Anfangs-Speicheradresse
zugewiesen. Dadurch ist standardmäßig jeweils die Anfangs-Speicheradresse
der eingebetteten Speicher als eine Referenzadresse für ein jeweiliges
Speicherselbstteststeuerungsregister vorgegeben. Diese bevorzugte
Zuweisung vereinfacht eine Standardisierung des Verfahrens in verschiedenen Halbleiterchips
und bei verschiedenen Kombinationen von eingebetteten Speichern.
-
Vorteilhafterweise
wird durch eine wiederholte Durchführung des Speichertestverfahrens
und Änderung
der Start- und Stop-Adressen
ein größter zusammenhängender
fehlerfreier Speicherbereich erkannt. Die Testergebnisse bzw. Zeilenadressen
und Bit-Positionen von fehlerhaften Speicherzellen werden während des
Speichertestes bevorzugt in einem nicht zu testenden Speicher gespeichert.
Letzteres hat den Vorteil, dass eine zentrale Chipsteuerung oder
die Speicherselbstteststeuerung aus Kenntnis der Adressen der fehlerhaften
Speicherzellen und dem Testergebnis, welches beispielsweise in einem Redundanzspeicher
gespeichert wird, Maßnahmen zur
Fehlerbehandlung ableiten kann.
-
Bevorzugt
weisen die Testmuster dann ein Schachbrettmuster aus binären logischen
Zuständen auf,
sodass in direkt benachbarten zu testenden Speicherzellen des Speichers
unterschiedliche binäre
Zustände
eingeschrieben werden. Es ist ferner vorteilhaft, wenn dies nacheinander
alternierend geschieht, sodass verschiedene Testmusterdaten nacheinander
in die zu testenden Speicherzellen geschrieben und gelesen werden.
-
Die
Erfindung schafft ferner einen Halbleiterchip mit eingebetteten
Speichern, insbesondere zur Durchführung des erfindungsgemäßen Verfahrens mit:
- (a) mindestens einem Speicher mit adressierbaren
Speicherzellen, welchem Speicheradressen aus einem Speicheradressbereich
des zu testenden Speichers zugeordnet sind;
- (b) einer Speicherselbstteststeuerung, die mindestens ein Speicherselbstteststeuerungsregister aufweist,
und die über
einen Adressbus und einen Schreib-/Lesebus an den Speicher gekoppelt
ist;
- (c) einer zentralen Chipsteuerungseinrichtung, die über mindestens
eine Adressleitung, Schreib- und Leseleitung zum Schreiben von Speichertestkonfigurationsdaten
und mindestens eine Steuerleitung für ein Speicherselbstteststeuerungssignal zum
Einleiten eines Speicherselbsttestes an die Speicherselbstteststeuerung
gekoppelt ist;
wobei in Abhängigkeit von einem Speicherselbstteststeuerungssignal
dem mindestens einen Speicherselbstteststeuerungsregister Adressen
des Speicheradressbereichs zugewiesen sind.
-
In
einer bevorzugten Weiterbildung weist die Speicherselbstteststeuerung
eine Steuerlogik mit Speicherselbstteststeuerungsregistern, mit
einem Eingang für
das Speicherselbstteststeuerungssignal, mit einem mit der Adressleitung
verbundenen Eingang, einem Ausgang für ein Registerlesesignal und mit
Steuerausgängen
zur Ausgabe von Steuersignalen auf. Die Speicherselbstteststeuerung
wertet die auf der Adressleitung anliegenden Adresssignale in Abhängigkeit
von dem Speicherselbstteststeuerungssignal aus und weist einen Adressgenerator zum
Erzeugen von Speicheradressen und Adressieren von zu testenden Speicherzellen
in Abhängigkeit von
einem zweiten Steuersignal von der Steuerlogik, einen Testdatengenerator,
der über
mindestens eine Steuerleitung an die Steuerlogik gekoppelt ist,
zum Erzeugen und Schreiben von Testmusterdaten in die zu testenden
Speicherzellen in Abhängigkeit
von einem dritten Steuersignal von der Steuerlogik, und weist eine
Vergleichseinrichtung auf, die über
mindestens eine Leitung an die Steuerlogik und eine Leitung an den
Testmustergenerator gekoppelt ist, zum Auslesen und Vergleichen
der Speicherzelleninhalte der zu testenden Speicherzellen in Abhängigkeit
von einem vierten Steuersignal von der Steuerlogik.
-
In
einer weiteren Weiterbildung der Erfindung ist einen Redundanzlogik
mit Redundanzspeichereinrichtungen zum Ersetzen von fehlerhaften Speicherzellen
des Speichers durch mindestens eine Redundanzspeichereinrichtung,
der eine Ersatzspeicheradresse zugeordnet ist, vorgesehen, welche
zwischen der Speicherselbstteststeuerung und dem Adress-, Schreib-
und Lesebus vorgesehen ist. Dabei lenkt die Redundanzlogik bei einem
Speicherzugriff auf eine fehlerhafte Speicherzelle den entsprechenden
Zugriff auf eine Redundanzspeichereinrichtung mit der entsprechenden
Ersatzspeicheradresse, und die Speicherselbstteststeuerung schreibt
während
des Speicherselbsttestes mindestens ein Fehlerbit in die Redundanzspeichereinrichtung
mit der entsprechenden Ersatzspeicheradresse.
-
Weil
fehlerhafte Speicherzellen in eingebetteten Speichern meist durch
Redundanzspeicher kompensiert werden, können diese Redundanzspeicher
vorteilhaft der Aufnahme von Fehlerinformationen während des
Speichertestes dienen, welche die Adressen und Bit-Positionen der
defekten Speicherzellen anzeigen.
-
Weitere
vorteilhafte Ausgestaltungen und Weiterbildungen der Erfindung sind
Gegenstand der Unteransprüche
sowie der Beschreibung unter Bezugnahme auf die Zeichnungen.
-
Die
Erfindung wird nachfolgend anhand der schematischen Figuren und
der Ausführungsbeispiele
näher erläutert. Es
zeigt dabei:
-
1 einen
Halbleiterchip mit eingebetteten Speichern und einer Speicherselbstteststeuerung nach
dem Stand der Technik;
-
2 eine
schematische Darstellung des Adressraumes nach dem Stand der Technik;
-
3 einen
erfindungsgemäßen Halbleiterchip
mit eingebetteten Speichern und einer Speicherselbstteststeuerung;
-
4 eine
schematische Darstellung des Adressraumes gemäß der Erfindung;
-
5 eine
bevorzugte Ausführungsform
der erfindungsgemäßen Speicherselbstteststeuerung; und
-
6 eine
bevorzugte Weiterbildung der erfindungsgemäßen Speicherselbstteststeuerung.
-
In
den Figuren sind gleiche bzw. funktionsgleiche Elemente, sofern
nichts anderes angegeben ist, mit gleichen Bezugszeichen versehen.
-
Die 3 zeigt
einen erfindungsgemäßen Halbleiterchip 1 mit
eingebetteten Speichern 2, 3, 4, einer
zentralen Chipsteuerungseinrichtung 5 und einer erfindungsgemäßen Speicherselbstteststeuerung 6.
Die eingebetteten Speicher 2, 3, 4 weisen adressierbare
Speicherzellen auf, welchen Speicheradressen aus einem Speicheradressbereich
zugeordnet sind.
-
Die
Speicherselbstteststeuerung 6 ist über einen Adressbus A an die
Speicher 2, 3, 4 zum Adressieren der
Speicherzellen gekoppelt und über einen
Schreib-/Lesebus L, S an die eingebetteten Speicher 2, 3, 4 gekoppelt.
Das Bussystem L, S, A ist hier schematisch in Form von Pfeilen dargestellt,
die Adressieren A, Lesen L und Schreiben S anzeigen. Die zentrale
Chipsteuerungseinrichtung 5 ist über eine Adressleitung A' und Schreib-/Leseleitungen
S', L' an die Speicherselbstteststeuerung 6 gekoppelt. Ferner
sind die zentrale Chipsteuerungseinrichtung 5 und die Speicherselbstteststeuerung 6 über mindestens
eine Steuerleitung für
ein Steuersignal STS miteinander gekoppelt.
-
Die
zentrale Chipsteuerungseinrichtung zeigt durch ein Speicherselbstteststeuerungssignal STS
der Speicherselbstteststeuerung 6 an, dass ein Speicherselbsttest
eingeleitet werden soll. Dadurch übernimmt die Speicherselbstteststeuerung 6 bzw. deren
Speicherselbstteststeuerungsregister die Adressen des Speicherbereiches
des eigentlichen Speichers, der getestet werden soll. Die zentrale Chipsteuerung 5 adressiert
also, wenn sie Adressen aus dem Speicheradressbereich wählt, die
Speicherselbstteststeuerungsregister. Über die Schreib- und Leseleitung
S', L' schreibt die zentrale
Chipsteuerung 5 Speichertestkonfigurationsdaten in die
Speicherselbstteststeuerungsregister. Diese Konfigurationsdaten
können
beispielsweise eine Start-Adresse und eine Stop-Adresse aufweisen,
die einen Unterbereich des zu testenden Speichers bestimmen. Die Speichertestkonfigurationsdaten
können
ferner den Typ des Speichertestes beispielsweise Schreiben und Lesen
von Schachbrettmustern auswählen.
-
Die 4 zeigt
eine schematische Darstellung des Adressraums gemäß der Erfindung.
-
Den
eingebetteten Speichern 2, 3, 4 sind
jeweils Speicheradressen aus Speicheradressbereichen zugeordnet,
die durch eine Anfangs-Speicheradresse 2A, 3A, 4A und
eine End-Speicheradresse 2E, 3E, 4E festgelegt
sind. Erfindungsgemäß sind die Speicherselbstteststeuerungsregister
während
eines jeweiligen Speicherselbsttestes auf Adressen beginnend mit
der jeweiligen Anfangsadresse 2A, 3A, 4A der
zu testenden Speicher 2, 3, 4 abgebildet.
-
Im
folgenden wird beispielhaft ein Test des eingebetteten Speichers 2 beschrieben.
Durch das Speicherselbstteststeuerungssignal STS wird der Speicherselbstteststeuerung 6 mitgeteilt,
dass ein Speichertest am Speicher 2 durchgeführt werden soll.
Somit werden die Speicherselbstteststeuerungsregister auf Speicheradressen,
beginnend mit der Anfangsadresse 2A des Speichers 2 abgebildet.
-
Die
zentrale Chipsteuerung 5 schreibt durch Adressieren von
Adressen die der Anfangsadresse 2A folgen, Speichertestkonfigurationsdaten
in die Speicherselbstteststeuerungsregister 6R2. Diese Speichertestkonfigurationsdaten
zeigen an, dass ein Speicherselbsttest in dem Speicherbereich zwischen der
Start-Adresse 2ST und der Stop-Adresse 2SP durchgeführt werden
soll.
-
Die
Speicherselbstteststeuerung 6 adressiert nun über den
Adressbus A die entsprechenden Speicherzellen des Speichers 2 und
schreibt Testmusterdaten in die Speicherzellen. Anschließend liest
die Speicherselbstteststeuerung 6 die entsprechenden Speicherzelleninhalte
und vergleicht mit den Testmusterdaten. Ein Speicherzellenfehler
wird dann erkannt, wenn ein ausgelesener Speicherzelleninhalt von
dem entsprechenden eingeschriebenen Testmusterdatum abweicht.
-
Die
Speicherselbstteststeuerung 6 schreibt an bestimmte Stellen
ihrer Speicherselbstteststeuerungsregister, also für die zentrale
Chipsteuerung 5 an eine Adresse des zu testenden Speicherbereichs, den
Status des Speicherselbsttestes. Die zentrale Chipsteuerung 5 kann
daraus den Zustand des zu testenden Speicherbereiches, der von der Start-Adresse 2ST und
Stop-Adresse 2SP begrenzt ist, ablesen.
-
Durch
das Einschränken
des Speicherselbsttestes auf einen Speicherunterbereich, kann der
Speicherselbsttest auch während
des Betriebs des Halbleiterchips stattfinden.
-
5 zeigt
eine bevorzugte Ausführungsform
der erfindungsgemäßen Speicherselbstteststeuerung 6 als
Blockschaltbild.
-
Die
Speicherselbstteststeuerung 6 hat einen ersten Eingang 7 für ein Adresssignal
A' der zentralen
Chipsteuerung 5 (siehe 4), einen
Steuereingang 8 für
das Speicherselbstteststeuerungssignal STS, einen Eingang 9 für ein von
der zentralen Chipsteuerung 5 kommendes Schreibsignal S', einen Ausgang 10 zum
Auskoppeln eines Lesesignals L', einen
Ausgang 11 zum Auskoppeln eines Adresssignals A in das
Bussystem des Halbleiterchips, einen Ausgang für ein Schreibsignal S zum Auskoppeln
in das Bussystem des Chips und einen Eingang 13 zum Einkoppeln
eines Lesesignals L aus dem Bussystem des Chips.
-
Die
Speicherselbstteststeuerung 6 weist eine Steuerlogik 14 auf,
einen Adressgenerator 16, einen Testdatengenerator 17,
eine Vergleichseinrichtung 18, einen ersten, zweiten und
dritten Multiplexer 19, 20, 21.
-
Die
Steuerlogik 14 koordiniert den Adress-, Schreib- und Lesesignalfluss über die
Multiplexer 19, 20, 21 und steuert den
Adressgenerator 16, den Testdatengenerator 17 und
die Vergleichseinrichtung 18.
-
Die
Steuerlogik 14 ist über
einen Eingang an den Eingang 7 für das Adresssignal A' von der zentralen
Chipsteuerungseinrichtung gekoppelt und wertet in Abhängigkeit
von dem Speicherselbstteststeuerungssignal STS das Adresssignal
A' aus. Die Steuerlogik
weist einen Ausgang 15 für die Auskopplung eines Registerlesesignals
L'', welches die Speicherselbstteststeuerungsregisterdaten
liefert, auf. Falls das Speicherselbstteststeuerungssignal STS eine
Speicherselbsttest signalisiert, steuert die Steuerlogik 14 den
ersten Multiplexer 19 mit einem ersten Schaltsignal ST1
so, dass eine Chipsteuerungseinrichtung am Ausgang 10 der
Speicherselbstteststeuerung 6 als Lesesignal das Registerlesesignal
L'' erhält. Im Normalbetrieb
schaltet der Multiplexer Multiplexer 21 das Lesesignal
L vom Speicher bzw. Bussystem durch.
-
Der
Adressgenerator 16 erzeugt in Abhängigkeit von einem ersten Steuersignal
ST2, welches von der Steuerlogik 14 erzeugt ist, Adresssignale
SA, welche Adressen von zu testenden Speicherzellen entsprechen.
Die von dem Adressgenerator 16 er zeugten Adresssignale
SA sind an den zweiten Multiplexer 20 geführt, welcher
in Abhängigkeit
von einem zweiten Schaltsignal ST3 der Steuerlogik 14 entweder
das Adresssignal A' der
Chipsteuerungseinrichtung 5 durchschaltet oder die Signale
SA, welche von dem Adressgenerator 16 erzeugt werden. Diese
werden dann an den Ausgang 11 zum Auskoppeln in den Adressbus
geführt.
-
Der
Testdatengenerator 17 ist über mindestens eine Steuerleitung
zum Empfang eines zweiten Steuersignals ST4 an die Steuerlogik 14 gekoppelt. Der
Testdatengenerator 17 erzeugt Testdaten TD, die an den
dritten Multiplexer 21 geführt sind. Der Multiplexer 21 schaltet
in Abhängigkeit
von einem dritten Schaltsignal ST5, welches von der Steuerlogik 14 geliefert
ist, entweder die Testdatensignale TD oder das von der zentralen
Chipsteuerungseinrichtung gelieferter Schreibsignal S' an den Ausgang 12 als Schreibsignal
zum Einkoppeln in den Schreib-/Lesebus durch.
-
Die
Vergleichseinrichtung 18 ist über eine Steuerleitung zur Übertragung
von dritten Steuersignalen ST6 an die Steuerlogik 14 gekoppelt.
Ferner empfängt
die Vergleichseinrichtung 17 von dem Testdatengenerator 17 die
Testdatensignale TD.
-
Im
Normalbetrieb schaltet der erste Multiplexer 19 durch das
erste Schaltsignal ST1 die Lesesignale vom Lesebus bzw. Speicher
durch. Der zweite Multiplexer 20 schaltet dann alle Adresssignale
A' vom Eingang 7 zum
Auskoppeln in den Adressbus durch. Der dritte Multiplexer 21 schaltet
dann durch das dritte Schaltsignal ST5 der Steuerlogik 14 gesteuert,
alle Schreibsignale S' an
den Ausgang 12 durch.
-
Wird
jedoch durch das Speicherselbstteststeuerungssignal STS der Steuerlogik 14 angezeigt, dass
ein Speicherselbsttest durchgeführt
werden soll, sind die Adressen aus dem Adressbereich des zu testenden
Speichers praktisch auf die Register der Speicherselbstteststeuerungslogik 14 umgeleitet,
da die Steuerlogik über
den ersten Multiplexer 19 die Registerlesesignale L'' an den Leseausgang 10 führt. Auch
die Schreibsignale S' der
Chipsteuerungseinrichtung sind von der Steuerlogik 14 abgegriffen,
und an die Speicherselbstteststeuerungsregister geführt. Diese
werden nun mit Speichertestkonfigurationsdaten beschrieben. Die
Steuerlogik 14 koordiniert nun den Adressgenerator 16,
den Testdatengenerator 17, die Vergleichseinrichtung 18 und
die Multiplexer 19, 20, 21 so, dass in
die gewünschten
Speicherzellen, welche zu testen sind, Testmusterdaten TD geschrieben
werden, gelesen werden und die Testmusterdaten mit den gelesenen
Speicherinhalten der zu testenden Speicherzellen von der Vergleichseinrichtung 18,
die ständig
die Testmusterdaten TD und die Lesesignale L erhält, wobei die Ergebnisse an
die Steuerlogik über
die dritten Steuerleitungen ST6 übermittelt werden,
verglichen werden. Falls ein ausgelesener Speicherzelleninhalt von
dem entsprechenden eingeschriebenen Testmusterdatum abweicht, wird
ein Speicherzellenfehler erkannt.
-
Die 6 zeigt
eine vorteilhafte Weiterbildung der erfindungsgemäßen Speicherselbstteststeuerung 26.
-
Die
vorteilhafte Weiterbildung der Speicherselbstteststeuerung 26 weist
im Wesentlichen dieselben Elemente wie in 5 auf, wobei
jedoch zusätzlich
eine Redundanzlogik 22 vorgesehen ist.
-
Die
Redundanzlogik 22 ist über
ein viertes Steuersignal ST8 von der Steuerlogik 24 gesteuert und
weist Redundanzspeichereinrichtungen auf. Die Redundanzlogik 22 empfängt die
von dem zweiten Multiplexer 20 durchgeschalteten Adresssignale
A, vergleicht die angesprochenen Adressen mit einer Liste von Adressen
von fehlerhaften Speicherzellen und lenkt diese entsprechenden Adressen
auf interne Redundanzspeichereinrichtungen der Redundanzlogik 22.
Falls eine fehlerhafte Speicherzelle adressiert ist, wird also bei
einem Schreibzugriff das von dem dritten Multiplexer 21 durchgeschaltete Schreibsignal S
an eine Redundanzspeichereinrichtung geführt, oder bei einem Lesezugriff
liefert die Redundanzlogik 22 ein Lesesignal L''',
das an den ersten Multiplexer 19 geführt ist, der dann dieses Lesesignal
L'' als Lesesignal an
den Ausgang 10 oder die Vergleichseinrichtung 18 führt.
-
Während eines
Speichertestes ist die Funktion der Redundanzlogik 22 abgeschaltet,
und die Steuerlogik 24 beschreibt beim Auftreten von fehlerhaften
Speicherzellen aus dem zu testenden Speicher eine entsprechende
Fehlermaske in die entsprechend vorgesehenen Redundanzspeichereinrichtungen
an die Ersatzadresse. Am Ende eines Speichertestes kann dann die
zentrale Chipsteuerungseinrichtung die Adressen der fehlerhaften
Speicherzellen die Bit-Position der Fehler auslesen und beispielsweise
in einem nichtflüchtigen
Speicher ablegen. Durch das erfindungsgemäße Abbilden der Speicherselbstteststeuerungsregister
auf den Adressbereich der Speicher hat die zentrale Steuerungseinrichtung
des Chips direkten Zugriff auf die Fehlerinformation und kann entsprechende
Maßnahmen
ohne Rückgriff
auf einen externen Chiptester vornehmen.
-
Obgleich
die vorliegende Erfindung anhand eines speziellen Ausführungsbeispiels
erläutert
wurde, ist sie nicht darauf beschränkt sondern auf vielfältige Art
und Weise ausführbar.
Insbesondere können verschiedenste
Testalgorithmen zur Prüfung
der zu testenden Speicherzellen auch mehrfach nacheinander durchgeführt werden.
Die entsprechenden Steuerinformationen für die Speicherselbstteststeuerung werden
erfindungsgemäß in die
Speicherselbstteststeuerungsregister geschrieben.
-
Selbstverständlich kann
auch jedem einzelnen auf dem system-on-a-chip vorliegenden Speicher eine
Speicherselbstteststeuerungseinrichtung zugewiesen sein, die die
Testabläufe
für den
entsprechenden Speicher steuert. Dann ist die zentrale Chipsteuerungseinrichtung über das
Bussystem an die Speicherselbstteststeuerungseinrichtungen gekoppelt,
und Speicherselbsttests sind parallel durchführbar.
-
Die
Speicherselbstteststeuerungsregister können auf beliebig festgelegte
Adresspositionen des Adressbereichs des zu testenden Speichers abgebildet
werden. Im Ausführungsbeispiel
wurde nur beispielhaft die jeweilige Anfangsadresse des zu testenden
Speichers für
den Beginn der Speicherselbstteststeuerungsregister gewählt. Beliebige
standardisierte Positionen sind hier möglich.
-
Das
erfindungsgemäße Verfahren
und ein erfindungsgemäßer Halbleiterchip
mit eingebetteten Speichern bietet eine effiziente Nutzung des adressierbaren
Raumes in dem System auf dem Halbleiterchip. Das Verfahren ist flexibel
einsetzbar und auf verschiedene Kombinationen von eingebetteten Speichern
anwendbar. Das universelle Schema, wonach erfindungsgemäß die Speicherselbstteststeuerungsregister
auf Adressen der zu testenden Speicherzellen gelenkt werden, ist
für eine
Vielzahl von Systemen auf einem Halbleiterchip geeignet.
-
- SOC
- Halbleiterchip
- CPU
- zentrale
Chipsteuerungseinrichtung
- M1,
M2, M3
- eingebettete
Speicher
- BIST
- Speicherselbstteststeuerung
- A,
A'
- Adressbus
- S,
S'
- Schreibzugriff
- L,
L', L'' , L'''
- Lesezugriff
- STS
- Speicherselbstteststeuerungssignal
- FS
- Fehlersignal
- AM1,
AM2, AM3
- Anfangs-Adresse
- EM1,
EM2, EM3
- End-Adresse
- BIST1,
BIST2, BIST3
- Speicherselbstteststeuerungsregister
- 1
- Halbleiterchip
- 2,
3, 4
- eingebettete
Speicher
- 5
- zentrale
Chipsteuerungseinrichtung
- 6
- Speicherselbstteststeuerung
- STS
- Speicherselbstteststeuerungssignal
- 2ST
- Start-Adresse
- 3SP
- Stop-Adresse
- 2A,
3A, 4A
- Anfangs-Adresse
- 2E,
3E, 4E
- End-Adresse
- 6R2,
6R3, 6R4
- Speicherselbstteststeuerungsregister
- 7,
8, 9
- Eingang
- 10
- Ausgang
- 11,
12
- Ausgang
- 13
- Eingang
- 14
- Steuerlogik
- 15
- Ausgang
- 16
- Adressgenerator
- 17
- Testdatengenerator
- 18
- Vergleichseinrichtung
- 19,
20, 21
- Multiplexer
- ST1-ST8
- Steuersignale
- TD
- Testdaten
- SA
- Speicheradressen
- 22
- Redundanzlogik
- 24
- Steuerlogik
- 26
- Speicherselbstteststeuerung