DE3718182A1 - Verfahren und anordnung zur ausfuehrung eines selbsttestes eines wortweise organisierten rams - Google Patents
Verfahren und anordnung zur ausfuehrung eines selbsttestes eines wortweise organisierten ramsInfo
- Publication number
- DE3718182A1 DE3718182A1 DE19873718182 DE3718182A DE3718182A1 DE 3718182 A1 DE3718182 A1 DE 3718182A1 DE 19873718182 DE19873718182 DE 19873718182 DE 3718182 A DE3718182 A DE 3718182A DE 3718182 A1 DE3718182 A1 DE 3718182A1
- Authority
- DE
- Germany
- Prior art keywords
- address
- addresses
- word
- data
- test
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/10—Test algorithms, e.g. memory scan [MScan] algorithms; Test patterns, e.g. checkerboard patterns
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
Landscapes
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Tests Of Electronic Circuits (AREA)
Description
Die Erfindung bezieht sich auf ein Verfahren und eine Anord
nung zur Ausführung eines Selbsttestes eines wortweise organi
sierten RAM, dessen Speicherzellen wortweise adressierbar sind.
Durch den Einsatz moderner Entwicklungswerkzeuge für VSLI-
Bausteine (CAD Verfahren) und Fortschritte in der Technologie
können heute komplexe, hierarchische Strukturen auf einem
Chip integriert werden. Auch Semicustom Entwurfsysteme bieten
inzwischen die Möglichkeit, komplexe Schaltungen wie PLAs,
ROMs oder RAMs auf einem Chip mit unterzubringen. Da sehr
viele VLSI Bausteine programmierbare Prozessoren enthalten,
sind dort RAMs unerläßlich. Solche RAMs, bei denen die Adreß-
Daten- und Steuersignale nicht durch die Anschlußstifte des
Chips direkt zugänglich sind, sind schwer zu testen, wenn die
Testmuster über Eingabe/Ausgabe Anschlußstifte und dazwischen
liegende Logikschaltkreise eingestellt und beobachtet werden
müssen. Aus diesem Grunde wurde schon sehr früh versucht, durch
spezielle Testschaltungen die Testbarkeit zu erhöhen und damit
die Testkosten zu senken.
Die Prüfpfadmethode, die bei logikorientierten VLSI Chips ver
mehrt Anwendung findet, läßt sich auch zum Testen von solchen
RAMs verwenden. Bei dieser Technik werden Adressen, Daten und
Kontrollmuster über den Prüfpfad eingeschoben. In gleicher
Weise können die Lesedaten wieder ausgeschoben werden. Der dazu
erforderliche zusätzliche Hardware-Aufwand ist zwar gering,
aber die Testzeit steigt sehr stark an. Auch kann nicht mit der
Betriebsfrequenz getestet werden.
Die der Erfindung zugrundeliegende Aufgabe besteht darin, die
Verfahren und eine Anordnung anzugeben, mit deren Hilfe ein
Selbsttest eines RAMs durchgeführt werden kann.
Diese Aufgabe wird bei einem Verfahren der eingangs ange
gebenen Art durch die im Kennzeichen des Patentanspruchs 1
angegebenen Schritte gelöst.
Eine Anordnung zur Durchführung dieses Verfahrens ergibt
sich aus dem Kennzeichen des Patentanspruchs 3.
Weiterbildungen der Erfindung ergeben sich aus den Unter
ansprüchen.
Das vorgeschlagene Verfahren und die zur Durchführung vorge
schlagene Anordnung verzichtet somit vollständig auf einen
Prüfpfad. Es genügt, von außen ein Testsignal anzulegen und
das Testergebnissignal auszuwerten. Die Überprüfung der zum
Selbsttest erforderlichen Testlogik auf dem Chip wird durch
ein Selbstprüfverfahren während des Testbetriebes sicher
gestellt. Der zusätzliche Hardware-Aufwand im Vergleich zur
Prüfpfadmethode wird durch den Verzicht auf den Prüfpfad
wieder ausgeglichen.
Anhand eines Ausführungsbeispiels, das in den Figuren dar
gestellt ist, wird die Erfindung weiter erläutert. Es zeigt
Fig. 1 ein Blockschaltbild der zur Prüfung eines RAMs erfor
derlichen Anordnung,
Fig. 2 ein Ausführungsbeispiel eines RAMs,
Fig. 3 ein Ablaufdiagramm eines Prüfverfahrens,
Fig. 4 eine Ausführung eines Adreßzählers,
Fig. 5 eine Ausführung eines Dateninverters,
Fig. 6 ein Blockschaltbild einer Prüfsteuerung,
Fig. 7 die Ablaufsteuerung der Prüfsteuerung im Stromlaufplan,
Fig. 8 ein Taktgenerator der Prüfsteuerung im Strom
laufplan,
Fig. 9 ein Zeitdiagramm, das die Aufeinanderfolge eines Lese-
und Schreibschrittes zeigt,
Fig. 10 und 11 eine Ausführung einer Prüfschaltung,
Fig. 12 die Zusammenschaltung von mehreren Prüfschaltungen nach
Fig. 10 und Fig. 11.
Bevor auf die Ausführungsbeispiele eingegangen wird, werden
die Grundlagen des Speichertestes erläutert. Bei bekannten
Speichertestverfahren spielen Testzeit und Fehlererkennungs
grad eine wesentliche Rolle. Bei der Auswahl eines Prüfver
fahrens und dessen Ausführung mit Hilfe eines Selbsttestes
sind noch weitere Faktoren von Bedeutung:
- - Die zusätzliche Prüflogik für den Selbsttest eines RAMs führt zu eier Vergrößerung des Chips; sie sollte darum so klein wie möglich sein;
- - durch die Selbsttestlogik kann es zu einer Verlängerung der Zugriffszeiten im Normalbetrieb kommen. Diese Verzögerung sollte so gering wie möglich gehalten werden;
- - da die Testkosten von der Testzeit abhängen, muß diese mög lichst kurz sein;
- - um einen korrekten Ablauf des Selbsttests zu gewährleisten, muß auch die Selbsttestlogik geprüft werden.
Trotz der besonderen Anforderungen an den Selbsttest muß der
Großteil der bei statischen RAMs auftretenden Fehler erkannt
werden. Zur Verdeutlichung dieser Fehler wird ein RAM Speicher
entsprechend der Fig. 2 angenommen. Der Speicher nach Fig. 2
weist ein Speicherfeld SP mit n (n = 1, 2 . . .) Segmenten SG 1, SG 2
. . . SGn auf. Die Speicherzellen, die zur Aufnahme eines Bits
dienen, sind wortweise adressierbar und werden zur Speicherung
von Datenworten oder Teilen davon verwendet. Die Ansteuerung eines
Datenwortes im Speicher SP erfolgt über einen Wortdecoder WD,
über den Wortleitungen WL ausgewählt werden und über einen
Spaltendecoder SPD, über den die einem Datenwort zugeord
neten Speicherzellen ausgewählt werden. Der Zugriff zu einem
Datenwort im Speicher SP erfolgt über eine Adresse A, die
z. B. aus m bit besteht, so daß 2 m Datenworte im Speicher SP
adressierbar sind. Die Wortbreite kann z. B. n bit sein, so daß
pro Speichersegment SG eine einem Datenwort zugeordnete Spei
cherzelle vorgesehen ist. Die Adressierung der Speicherzellen
im Segment SG kann mit Hilfe von b bit der Adresse A erfolgen,
so daß 2 b Speicherzellen pro Wortleitung adressierbar sind.
Die in den Speicher SP einzuschreibenden Datenworte werden nach
Fig. 2 über einen Datenbus DI und über eine Schreiblogik
SL über den Spaltendecoder SPD dem Speicher SP zugeführt; die
ausgelesenen Datenworte werden über den Spaltendecoder SPD
und eine Leselogik LL einem Datenbus DA zugeführt. Der Datenbus
DI und DA kann in einem bidirektionalen Datenbus zusammengefaßt
werden.
Der RAM Speicher nach Fig. 2 ist bekannt, so daß auf seine
Funktion nicht näher eingegangen werden muß.
Für ein solches Speichermodell sollen beim Test Kurzschlüsse,
unterbrochene Leitungen, Koppelfehler sowie Haltefehler er
kannt werden, zu dem Fehler, die eine Grundlage darin haben,
daß eine Leitung z. B. immer auf logisch 1 oder auf logisch 0
liegt (stuck-at 0/1-Fehler). Die Fehler können jeweils in den
einzelnen Blöcken des RAMs verschiedene Auswirkungen haben. Da
Fehler im Speicherfeld am häufigsten auftreten, wird auf sie
näher eingegangen. Viele Fehler in der restlichen Selbsttest
logik lassen sich ebenfalls auf solche Fehler abbilden:
- - Eine oder mehrere Speicherzellen liegen ständig auf 0 bzw. 1.
- - Ein oder mehrere Paare benachbarter Speicherzellen sind mit einander gekoppelt. Das bedeutet, daß beim Zugriff auf eine Speicherzelle ebenfalls eine der benachbarten Speicherzellen beeinflußt wird. Dies setzt nicht die entsprechende Kopp lung in umgekehrter Richtung voraus. Bei dieser Art der Kopplung lassen sich zwei Fälle unterscheiden. Eine Kopp lung auf den Wortleitungen beeinflußt zwei Speicherzellen auf derselben Bitleitung. Es wird dabei in beiden Speicher zellen der gleiche Wert geschrieben. Beim Lesen führt dies je nach Technologie zu einer UND- bzw. ODER-Verknüpfung am Ausgang. Bei einer Kopplung zwischen Bit- und invertierter Bitleitung der Nachbarzelle werden diese mit zueinander in vertierten Daten beschrieben. Beim Lesen findet keine Ver knüpfung statt, da der Spaltendecoder SPD nur eine Bitlei tung durchschaltet.
- - Eine oder mehrere Speicherzellen sind kurzgeschlossen. Der Inhalt der Speicherzellen ist derjenige, der als letztes in einer der Speicherzellen geschrieben wurde.
- - Eine oder mehrere Speicherzellen verlieren ihren Inhalt, wenn nach dem Beschreiben einer Speicherzelle Zugriffe auf andere Speicherzellen durchgeführt werden.
Nicht betrachtet werden hier Nachbarschaftsfehler, bei denen
mehr als zwei Speicherzellen beteiligt sind. Diese spielen im
Gegensatz zu dynamischen Speichern bei den hier betrachteten
statischen Speichern eine untergeordnete Rolle.
In der Decoderlogik, bestehend aus dem Wortdecoder WD und dem
Spaltendecoder SPD können ebenfalls Fehler auftreten. Die De
coder wählen die adressierte Speicherzelle aus. Ein fehler
haftes Verhalten kann dazu führen, daß keine, eine falsche
oder mehrere Speicherzellen gleichzeitig ausgewählt werden:
- - Im Wortdecoder WD wird entweder eine Wortleitung WL ständig oder nie ausgewählt, wenn ein Stuck-at-0/1 Fehler vor liegt. Dieser bewirkt, daß die Leitung entweder ständig auf 0 oder ständig auf 1 liegt. Solche Fehler bewirken im Spaltendecoder SPD eine Verfälschung der Lese- und Schreib daten.
- - Kurzschluß- und Koppelfehler im Wortdecoder WD sprechen wie der mehrere Speicherzellen gleichzeitig an. Im Spaltendeco der SPD kommt es zu einer Verknüpfung der Datenbits.
In der Schreib- und Leselogik SL wirken sich Stuck-at-0/1
Fehler wie solche im Speicherfeld aus und sind leicht erkenn
bar.
- - Kurzschlüsse und Koppelfehler verlangen unterschiedliche lo gische Pegel auf physikalisch benachbarten Datenleitungen, um sie zu erkennen.
Um die erläuterten Fehler im RAM zu erkennen, wird nach fol
gendem in Fig. 3 dargestellten Verfahren vorgegangen:
In einem ersten Schritt INIT werden aufeinanderfolgend in festgelegter Reihenfolge als Datenworte die jeweilige Adresse WA oder ein Teil davon in die den Adressen zugeordneten Spei cherzellen eingeschrieben. Zum Beispiel wird die Adresse A = 1 in die Speicherzellen, die dieser Adresse zugeordnet sind, eingeschrieben, anschließend die Adresse zwei oder ein Teil davon in die Speicherzellen eingeschrieben, die von dieser Adresse A = 2 adressiert werden usw. bis am Schluß die Adresse An in die Speicherzellen eingeschrieben wird, die die ser Adresse zugeordnet sind.
In einem ersten Schritt INIT werden aufeinanderfolgend in festgelegter Reihenfolge als Datenworte die jeweilige Adresse WA oder ein Teil davon in die den Adressen zugeordneten Spei cherzellen eingeschrieben. Zum Beispiel wird die Adresse A = 1 in die Speicherzellen, die dieser Adresse zugeordnet sind, eingeschrieben, anschließend die Adresse zwei oder ein Teil davon in die Speicherzellen eingeschrieben, die von dieser Adresse A = 2 adressiert werden usw. bis am Schluß die Adresse An in die Speicherzellen eingeschrieben wird, die die ser Adresse zugeordnet sind.
In einem zweiten Schritt PH 1 werden aufeinanderfolgend in der
festgelegten Reihenfolge die in den wortweise organisierten
Speicherzellen gespeicherten Adressen RA ausgelesen, mit der
zugeordneten Adresse A verglichen und gleichzeitig die inver
tierte Adresse A′ als Datenwort WA′ in die adressierte
Speicherzelle eingeschrieben. Somit wird in die erste Speicher
zelle mit der Adresse A = 1 die vorher eingeschriebene Adresse
RA ausgelesen und anschließend diese Adresse invertiert als
Datenwort WA′ eingeschrieben. Dies erfolgt wieder aufein
anderfolgend in der festgelegten Reihenfolge bis die der Adres
se AN zugeordneten Speicherzellen auf diese Weise betrieben
worden sind.
Im dritten Schritt PH 2 werden aufeinanderfolgend wiederum in
der festgelegten Reihenfolge die vorher einbeschriebenen inver
tierten Adressen RA′ ausgelesen, mit der zugeordneten Adresse
verglichen und anschließend als Datenwort WA die richtige
Adresse wieder eingeschrieben. Dies erfolgt wieder aufeinander
folgend bis zur letzten Adresse AN.
Im vierten Schritt PH 3 wiederholt sich der erläuterte Vor
gang in umgekehrter Reihenfolge. Jetzt wird mit der letzten
Adresse AN begonnen, das von dieser Adresse AN adressierte
Datenwort RA im Speicher SP ausgelesen und mit der zugeord
neten Adresse verglichen und anschließend als Datenwort WA′
die invertierte Adresse AN eingeschrieben. Dies setzt sich fort
bis am Schluß das von der Adresse A 1 adressierte Datenwort im
Speicherfeld SP ausgelesen worden ist und als Datenwort WA′
die invertierte Adresse A 1 eingeschrieben worden ist.
Im letzten Schritt PH 4 wird wiederum in umgekehrter Reihen
folge die im Schritt PH 3 eingeschriebenen Datenworte RA′ aus
gelesen und mit der zugeordneten Adresse verglichen und an
schließend wieder als Datenwort WA die zugeordneten Adres
sen eingeschrieben.
Wesentlich ist, daß bei den Schritten PH im Speicherfeld SP
erst zu den Speicherzellen der nächsten Adresse fortgeschrit
ten wird, wenn aus den Speicherzellen der vorhergehenden
Adresse das Datenwort RA oder RA′ ausgelesen worden ist und
als Datenwort die Adresse WA oder WA′ eingeschrieben wor
den ist. Auf diese Weise wird erreicht, daß die durch das
Einschreiben des Datenwortes WA bzw. WA′ aufgrund von
Fehlern bedingte Beeinflussung von anderen Speicherzellen
in den darauffolgenden Lesevorgängen erkannt wird.
Die Reihenfolge der Adressierung der einzelnen Speicherworte
im Speicherfeld SP ist beliebig, jedoch muß eine einmal ge
wählte Reihenfolge dann eingehalten werden.
Als Testmuster zur Überprüfung des RAMs werden somit die
Adressen der einem Datenwort zugeordneten Speicherzellen
verwendet. Ist die Datenbreite kleiner als die Adreßbreite,
so wird nur ein Teil der Adresse als Testmuster verwendet.
Bei einem breiteren Datenwort werden die Adreßbits mehrmals
verwendet.
Mit dem Verfahren werden Koppelfehler und Kurzschlüsse im
Spaltendecoder sowie in der Lese- und Schreiblogik erkannt.
Zwischen zwei beliebigen Datenbits treten hier alle vier
Bitkombinationen auf. Da jede Speicherzelle während des
Tests mindestens einmal die 0 und die 1 enthält, lassen
sich Stuck-at-0/1-Fehler im Speicherfeld SP und auf den Da
tenleitungen leicht erkennen. Solche Fehler auf den Adreß-
und Wortleitungen werden durch den Kontrollesevorgang vor
jedem Schreiben des Datenwortes WA erkannt. Durch das
Schreiben beider Datenwerte 0 bzw. 1 in aufsteigender und
fallender Adreßrichtung können die einseitigen Kopplungen
gefunden werden. Auf den Bit- und Datenleitungen werden diese
erkannt, da zwischen den Datenleitungen alle vier Kombina
tionen von Datenmustern angelegt werden. Kurzschlüsse werden
noch einfacher als Koppelfehler erkannt, da sie nicht einsei
tig wirken. Haltefehler werden erkannt, da zwischen dem be
schreiben einer Speicherzelle und dem Kontrollesen jeweils
andere Worte angesprochen werden.
Eine Anordnung zur Durchführung des Selbsttestes ent
sprechend dem beschriebenen Verfahren kann der Fig. 1
entnommen werden. Der Speicher RAM, der z. B. entsprechend
Fig. 2 aufgebaut sein kann, ist auf dem Chip bereits vor
handen. Zusätzlich erfordert die Selbsttestlogik einen
Adreßzähler AZ, einen Dateninverter INV, eine Prüfschaltung
CH, eine Prüfsteuerung ST. Zusätzlich ist eine Treiberstufe
TR vorteilhaft und an die Prüfschaltung CH kann ein EXKLUSIV
ODER Glied AQ 1, ein ODER Glied OG und ein Fehlerflipflop EFF
angeschlossen sein. Die Schaltungen AQ 1, OG und E-FF können
selbstverständlich auch in der Prüfschaltung CH enthalten sein
oder in anderer Weise ausgeführt sein.
Mit Hilfe des Adreßzählers AZ werden in der festgelegten
Reihenfolge Adressen A, z. B. von 8 Bit erzeugt und über den
Adreßbus dem Speicher RAM zugeführt. Ein Teil dieser Adresse,
z. B. 4 Bit, werden über einen Datenbus DB zum Speicher RAM
übertragen. Dieser Teil A 1 der Adresse wird dann unter der
Adresse A im Speicher RAM eingeschrieben. Mit Hilfe des
Dateninverters INV kann dieser Adreßteil A 1 invertiert oder
nicht invertiert in den Speicher RAM unter der Adresse A
eingeschrieben werden. Dieser Adreßteil wird gleichzeitig über
den Bus DI auch der Prüfschaltung CH zugeführt. Der im Speicher
RAM gespeicherte Adreßteil kann bei Adressierung mit Hilfe der
Adresse A ausgelesen werden, über den Datenbus DA der Prüf
schaltung CH zugeführt werden und dort mit dem über den Daten
bus DI zugeleiteten Adreßteil verglichen werden. Ergeben sich
bei diesem Vergleich Unterschiede, dann liegt ein Fehler vor.
Der Ablauf im Selbsttest wird mit Hilfe der Prüfsteuerung ST
durchgeführt, die dazu von außen Steuerbefehle STS erhält.
Im Ausführungsbeispiel werden bidirektionale Datenbusse DA ver
wendet, über die jeweils ein Adreßteil A 1 in den Speicher RAM einge
schrieben werden kann bzw. diese Adresse aus dem Speicher
RAM wieder ausgelesen werden kann.
Aus Fig. 4 ergibt sich, wie z. B. der Adreßzähler AZ aufge
baut sein kann. Der Adreßzähler AZ kann ein Binärzähler sein.
In Fig. 4 ist eine Realisierung mit Hilfe eines rückge
koppelten Schieberegisters gezeigt. Für das Verfahren ist näm
lich nur notwendig, daß eine feste Reihenfolge der Adressen
durchlaufen wird. Diese muß allerdings auch in der entgegen
gesetzten Richtung durchlaufen werden können. Ein solcher
Zähler läßt sich einfach mit einem Schieberegister SR auf
bauen, welches in beide Richtungen schieben, sowie parallel
geladen werden kann.
Das verwendete NOR-Glied NR 1, NR 2 in den Rückkopplungen RL
sorgt dafür, daß der 0-Zustand im Schieberegister SR eingefügt
wird. Der Ausgang des Schieberegisters SR gibt die Adressen A
ab, die über den Adreßbus AB 1 dem Speicher RAM zugeführt
werden. Ein Teil der Adreßleitungen im Adreßbus AB 1 werden zum
Schieberegister SR zur Rückkopplung verwendet und führen zu
einer EXOR-Schaltung AQ 2, AQ 3. Von der EXOR-Schaltung AQ 2 führt
eine Leitung RL zum Eingang C-UP des Schieberegisters SR, von
der EXOR-Schaltung AQ 3 eine Leitung RL zum Eingang C-DO des
Schieberegisters SR. Die Schaltkreise NR 1, AQ 2 sind dann in
Betrieb, wenn das Schieberegister SR aufwärts zählt, die Schalt
kreise NR 2, AQ 2 sind in Betrieb, wenn das Schieberegister SR
abwärts zählt. Dementsprechend werden von den Adreßleitungen im
Adreßbus AB 1 Leitungen AK zur EXOR-Schaltung AQ 2, Leitungen AK + 1
zur EXOR-Schaltung AQ 3 geführt. Mit Hilfe der aus der Adresse A
verwendeten Adreßleitungen kann die Reihenfolge der vom Schie
beregister SR erzeugten Adressen A festgelegt werden.
Das Schieberegister SR kann mit einer externen Adresse AX
über den Adreßbus AB geladen werden, um dann als
Adreßregister im Normalbetrieb verwendet zu werden. Am Aus
gang des Schieberegisters SR erscheinen die Adressen AO
bis Am-1, die dem Speicher RAM über den Adreßbus AB 1 zuge
leitet werden.
Schließlich ist noch eine Schaltung SC vorgesehen, die an
hand des Ausgangssignals vom NOR-Glied NR 1, eines Signales
UP zur Festlegung der Aufwärtszählung und des Adreßsignals
Am-1 feststellt, ob ein Durchlauf beendet ist. Dem Schiebe
register SR werden Steuersignale zugeführt, um dessen Betrieb
einzustellen. Das Steuersignal UP legt fest, daß das Schiebe
register aufwärts zählt, das Signal DO legt fest, daß das
Schieberegister abwärts zählt, das Signal RCH legt fest, daß
das Schieberegister zurückgesetzt wird, das Signal LOAD, daß
das Schieberegister mit der externen Adresse AX geladen wird.
Mit Hilfe eines Taktsignals CLKA wird der Schiebetakt des
Schieberegisters SR festgelegt.
Ein Fehler im Adreßzähler AZ wird nicht selbst erkannt.
Dies hat jedoch keine nachteiligen Folgen, da ein solcher
Fehler zu einem fehlerhaften Datenvergleich führt und damit
in jedem Fall erkannt wird. Ein Fehler führt entweder dazu,
daß entweder nur eine Zählrichtung betroffen ist oder der
Endzustand nicht mehr auftritt. Der erste Fall wird beim
Durchlaufen der zweiten Richtung erkannt. Das fehlende End
signal wird von außen erkannt.
Eine Ausführung des Dateninverters INV zeigt Fig. 5. Der Da
teninverter INV ist an Adreßleitungen des Busses DB angeschlos
sen, z. B. für die Adresse AO bis An-1 und gibt am Ausgang das
zugeordnete Adreßbit entweder nicht invertiert oder invertiert
als Signal DO bis Dn-1 ab. Dazu ist pro Leitung ein
EXKLUSIV ODER Glied AQ 5 und ein Treiberglied TR vorgesehen.
Mit Hilfe eines Signals IN kann festgelegt werden, ob das
Adreßbit invertiert wird oder nicht, mit Hilfe eines Signals
ENA kann festgelegt werden, ob ein Adreßbit an den Speicher RAM
angelegt wird oder nicht.
Auch diese Schaltung ist nicht selbstprüfend. Stuck-at-Fehler
auf den Steuerleitungen für IN und ENA oder auf den EXOR-Aus
gängen, sowie den Treibergliedern führen jedoch dazu, daß
Datenbits nie bzw. dauernd invertiert werden. Dies wird in
der Prüfschaltung erkannt. Ein Stuck-at-Fehler am Adreßeingang
des EXOR Gliedes AQ 5 wird nicht erkannt, da der Eingang korrekt
invertiert wird. Ein einzelner Fehler stört aber das Verfahren
nicht, da zwischen dieser Datenleitung und den anderen Daten
leitungen immer noch eine komplementäre Datenkombination auf
tritt. Der Inverter IN kann in der gezeigten Form verwendet
werden.
Der Ablauf des Selbsttests wird durch die Prüfsteuerung ST
gesteuert. Diese besteht nach dem Blockschaltbild der Fig. 6
aus einer Ablaufsteuerung KA und einem Taktgenerator TG. Der
Prüfsteuerung werden Steuersignale STS von außen zugeführt
wie z. B. ein Taktsignal CLK, ein Signal TM zur Einstellung
des Prüfbetriebes, ein Signal R/W, um festzulegen, ob ge
schrieben oder gelesen wird und ein Signal RN für das Zurück
setzen der Schaltkreise der Testlogik. Weiterhin wird das
Endesignal E vom Binärzähler zugeführt. Aus diesen Steuer
signalen erzeugt die Prüfsteuerung Taktsignale CLKA, CLKB,
interne Schreib- und Lesesignale R/WI, ein Auslösesignal ENA
und ein Rücksetzsignal RCH. Die Prüfsteuerung erzeugt weiter
hin Steuersignale wie das Steuersignal UP für die Aufwärtszäh
lung des Adreßzählers, das Steuersignal DO für die Abwärts
zählung, das Steuersignal IN für die Invertierung des Daten
inverters und das Signal TE für Testende. Schließlich gibt
die Ablaufsteuerung KA Signale Y 0 bis Y 3 ab, die der Prüfschal
tung CH zugeführt werden und die es der Prüfschaltung
ermöglicht, festzustellen, ob der Prüfsteuerteil ST fehlerfrei
arbeitet.
Ein Stromlaufplan des Taktgenerators TG zeigt Fig. 8, ein
Stromlaufplan der Ablaufsteuerung KA die Fig. 7. Der Aufbau
der Stromlaufpläne erfolgt mit üblichen Bausteinen. Weiterhin
sind die Signale eingezeichnet, so daß anhand der Stromlauf
pläne der Fig. 7 und der Fig. 8 ohne weiteres festgestellt
werden kann, wie aus den Steuersignalen STS und dem Endesignal E
die Signale erzeugt werden, die am Ausgang der Prüfsteuerung
abgegeben werden.
Das Zeitdiagramm der Fig. 9 zeigt noch einmal, wie eine Lese
schritt und ein Schreibschritt aufeinanderfolgen. Der Lese
schritt ist mit R, der Schreibschritt mit W bezeichnet. Auf den
Schreibschritt W folgt eine Erholungsphase RG für den Speicher.
An der Stelle DV wird der Datenvergleich zwischen der ausgele
senen Adresse und der zugeordneten Adresse durchgeführt. Es
ist aus dem Zeitdiagramm erkennbar, wie in Abhängigkeit des
Taktsignals CLKA die Adresse A angelegt wird und Daten DI ein
geschrieben bzw. Daten DA ausgelesen werden. Der Datenvergleich DV
erfolgt in Abhängigkeit des Taktsignals CLKB. Ob gelesen
wird oder geschrieben wird, wird mit Hilfe des Signals R/WI
festgelegt.
Die Prüfschaltung CH kann den Fig. 10 und 11, deren Zusammen
schaltung der Fig. 12 entnommen werden. Da in das RAM jeweils
die invertierten Lesedaten zurückgeschrieben werden, muß die
Prüfschaltung diese Invertierung überprüfen. Hierfür ist die
Prüfsignalanordnung RT der Fig. 10 vorgesehen. Diese hat zwei
Gruppen von Eingängen A und B. Die Eingänge A sind die Adres
sensignale, die über die Leitung DI zugeführt werden, die
Signale B, die Signale, die über die Leitung DA vom Speicher
RAM geliefert werden. In der Schaltungsanordnung der Fig. 10
wird der Datenvergleich durchgeführt und festgestellt, ob
ein Fehler vorliegt. Im Ausführungsbeispiel der Fig. 10
sind die beiden Ausgänge F und G komplementär zueinander, so
lange alle Eingangspaare A, B, komplementär sind und die
Prüfschaltung keinen Fehler enthält. Bei mehr Eingängen als
vier nach Fig. 10 muß die Schaltungsanordnung nach Fig. 10
zu einem Baum nach Fig. 12 zusammengeschaltet werden. Dort
ist eine Schaltungsanordnung mit 12 Eingängen gezeigt.
Zur Prüfschaltung CH gehört zudem eine Schaltungsanordnung CH 1
zur Überprüfung der Fehlerfreiheit der Prüfsteuerung ST.
Diese ist entsprechend der Fig. 11 ausgeführt. Der Prüf
steuerung steuert die einzelnen Schritte des Prüfverfah
rens mit Hilfe eines zwei aus vier Codes. Er benötigt da
zu sechs Codeworte, die derart aufgebaut sein können, daß
ein Fehler in einem Codewort immer dazu führt, daß dieses
Codewort nicht zu einem anderen erlaubten Codewort führt.
Mit Hilfe der Schaltungsanordnung der Fig. 11 werden die
vier Bit Y 0 bis Y 3 der Codeworte daraufhin überprüft, ob
sie zu einem erlaubten Codewort gehören oder zu einem nicht
erlaubten Codewort. Die Ausgangssignale Z 1 und Z 2 dieser
Schaltungsanordnung werden ebenfalls einer Prüfsignal
schaltung RT entsprechend der Fig. 10 zugeführt. Die Aus
wertung der Signale F, G erfolgt durch die EXKLUSIV ODER
Schaltung AQ 1 und führt zum Setzen des Fehlerflipflops E-FF,
wenn ein Fehlersignal vorliegt. Dieses gibt dann das Fehler
signal G 0 ab.
Das beschriebene Selbsttestverfahren bietet für RAM Speicher,
die von außen über Anschlußstifte nicht direkt zugänglich
sind wesentliche Vorteile:
- - Es ist kein Zugang zum RAM über externe Anschlüsse not wendig,
- - der Test erfolgt mit Betriebsfrequenz,
- - es ist eine Einbindung in einen Systemtest möglich.
Die Selbsttest-Hardware soll den Normalbetrieb des RAMs mög
lichst nicht beeinflussen. Alle Prüfpfadtechniken gehen je
doch von Ein- und Ausgangsregistern im Datenweg aus, was
die Zugriffszeiten verschlechtern kann. Das hier beschriebene
Verfahren benötigt weder einen Prüfbus noch Datenregister. Da
her wird der Normalbetrieb nicht beeinflußt.
Durch die implizierte Überprüfung der Testlogik während des
Testablaufs ist im Gegensatz zu anderen Techniken keine ge
sonderte Überprüfung der Test-Hardware nötig. Das Verfahren
stellt somit eine sehr einfache und effektive Methode dar,
um RAMs zu prüfen.
Claims (5)
1. Verfahren zur Ausführung eines Selbsttestes eines wort
weise organisierten RAMs, dessen Speicherzellen wortweise
adressierbar sind, gekennzeichnet durch
folgende Schritte:
- - Für alle Adressen wird in die von einer jeweiligen Adresse adressierten Speicherzellen die jeweilige Adresse oder ein Teil davon als Datenwort eingeschrieben und dies aufein anderfolgend für alle Adressen in festgelegter Reihenfolge,
- - die unter der jeweiligen Adresse als Datenwort gespeicherte Adresse wird ausgelesen und mit der jeweiligen Adresse ver glichen und anschießend die jeweilige Adresse in invertierter Form in die von der jeweiligen Adresse adressierten Speicher zellen eingeschrieben und dies für alle Adressen aufeinander folgend in festgelegter Reihenfolge durchgeführt,
- - die unter der jeweiligen Adresse gespeicherte invertierte Adresse wird als Datenwort aus den von der jeweiligen Adresse adressierten Speicherzellen ausgelesen und mit der jeweiligen Adresse verglichen und dann die jeweilige Adresse wieder in diese Speicherzellen eingeschrieben und dies wird für alle Adressen aufeinanderfolgend in der festgelegten Reihenfolge durchgeführt,
- - die unter den jeweiligen Adressen gespeicherten Datenworte werden entsprechend aufeinanderfolgend, aber in umgekehrter Reihenfolge aus den einzelnen durch die jeweiligen Adressen adressierten Speicherzellen ausgelesen und mit der jeweiligen Adressen verglichen und gleichzeitig die invertierten jeweili gen Adressen eingeschrieben,
- - die Datenworte werden entsprechend wortweise aufeinander folgend in umgekehrter Reihenfolge aus den von den jeweiligen Adressen adressierten Speicherzellen ausgelesen und mit den jeweiligen Adresse verglichen und gleichzeitig wieder die je weilige Adresse eingeschrieben.
2. Verfahren nach Anspruch 1, dadurch gekenn
zeichnet, daß die jeweils aus den Speicher
zellen ausgelesenen Datenworte jeweils mit der als
nächste Adresse in die Speicherzellen einzuschreibenden
Adressen verglichen werden.
3. Anordnung zur Durchführung des Verfahrens nach An
spruch 1 oder 2, gekennzeichnet durch
folgende Merkmale:
- - Es ist ein Adreßzähler (BZ) zur aufeinanderfolgenden Er zeugung von Adressen für den RAM vorgesehen die zur wort weisen Ansteuerung der Speicherzellen im RAM dienen,
- - es ist ein Dateninverter zur Invertierung der Adressen oder Teile davon vorgesehen,
- - es ist eine Prüfschaltung (CH) vorgesehen, die die jeweilige Adresse mit der aus dem Speicher ausgelesenen Adresse ver gleicht und die Abhängigkeit des Vergleichsergebnisses ein Testsignal abgibt,
- - es ist eine Prüfschaltung (ST) vorgesehen, die den Ablauf der Prüfung steuert.
4. Anordnung nach Anspruch 3, dadurch gekennzeich
net, daß die Prüfsteuerung (ST) Codeworte in einem zwei
aus vier Code verwendet, die so aufgebaut sind, daß ein Fehler
erkennbar ist.
5. Anordnung nach Anspruch 3 oder 4, gekenn
zeichnet durch folgende Merkmale:
- - Der Adreßzähler (AZ) ist über einen Adreßbus (AB 1) mit den Adreßeingängen des RAM verbunden,
- - vom Adreßbus (AB 1) führt ein Bus (DB) zum Dateninverter (INV),
- - der Ausgang des Dateninverters (INV) ist über ein Bus (DI) sowohl mit der Prüfschaltung (CH) als auch über einen Trei ber (TR) mit dem Dateneingang des RAM verbunden,
- - der Datenausgang des RAM ist über einen Bus (DA) mit der Prüfschaltung (CH) verbunden.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19873718182 DE3718182A1 (de) | 1987-05-29 | 1987-05-29 | Verfahren und anordnung zur ausfuehrung eines selbsttestes eines wortweise organisierten rams |
PCT/DE1988/000256 WO1988009554A1 (en) | 1987-05-29 | 1988-04-29 | Process and arrangement for self-checking of a word-oriented ram |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19873718182 DE3718182A1 (de) | 1987-05-29 | 1987-05-29 | Verfahren und anordnung zur ausfuehrung eines selbsttestes eines wortweise organisierten rams |
Publications (1)
Publication Number | Publication Date |
---|---|
DE3718182A1 true DE3718182A1 (de) | 1988-12-15 |
Family
ID=6328724
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19873718182 Withdrawn DE3718182A1 (de) | 1987-05-29 | 1987-05-29 | Verfahren und anordnung zur ausfuehrung eines selbsttestes eines wortweise organisierten rams |
Country Status (2)
Country | Link |
---|---|
DE (1) | DE3718182A1 (de) |
WO (1) | WO1988009554A1 (de) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5479413A (en) * | 1994-06-06 | 1995-12-26 | Digital Equipment Corporation | Method for testing large memory arrays during system initialization |
US5689466A (en) * | 1995-04-07 | 1997-11-18 | National Semiconductor Corporation | Built in self test (BIST) for multiple RAMs |
US6041426A (en) * | 1995-04-07 | 2000-03-21 | National Semiconductor Corporation | Built in self test BIST for RAMS using a Johnson counter as a source of data |
US7418636B2 (en) * | 2004-12-22 | 2008-08-26 | Alcatel Lucent | Addressing error and address detection systems and methods |
FR2919401B1 (fr) * | 2007-07-24 | 2016-01-15 | Thales Sa | Procede de test des chemins de donnees dans un circuit electronique |
GB2542214B (en) | 2015-11-11 | 2019-08-28 | Imagination Tech Ltd | Hardware monitor to verify memory units |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2209253A1 (de) * | 1972-02-26 | 1973-09-06 | Ibm Deutschland | Verfahren und schaltungsanordnung zur fehlerpruefung einer speicheradressierung |
US4724531A (en) * | 1984-07-18 | 1988-02-09 | Hughes Aircraft Company | Gate array with bidirectional symmetry |
US4715034A (en) * | 1985-03-04 | 1987-12-22 | John Fluke Mfg. Co., Inc. | Method of and system for fast functional testing of random access memories |
-
1987
- 1987-05-29 DE DE19873718182 patent/DE3718182A1/de not_active Withdrawn
-
1988
- 1988-04-29 WO PCT/DE1988/000256 patent/WO1988009554A1/de unknown
Also Published As
Publication number | Publication date |
---|---|
WO1988009554A1 (en) | 1988-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69825234T2 (de) | Verfahren und vorrichtung zur selbstprüfung von multi-port-rams | |
EP0197363B1 (de) | Verfahren zum Betreiben eines Halbleiterspeichers mit integrierter Paralleltestmöglichkeit und Auswerteschaltung zur Durchführung des Verfahrens | |
DE2555435C2 (de) | Monolithische hochintegrierte Halbleiterschaltung | |
DE3588247T2 (de) | Dynamischer Halbleiterspeicher mit einer statischen Datenspeicherzelle | |
DE2555439C2 (de) | Monolithische hochintegrierte Halbleiterschaltung | |
DE3412676C2 (de) | ||
DE3906494C2 (de) | ||
DE4328605A1 (de) | Halbleiterspeichereinrichtung | |
DE19630746A1 (de) | Verfahren und Vorrichtung zum Testen einer Assoziativspeicherschaltung und einer Assoziativspeicherschaltung mit redundanter Funktion | |
DE2256135A1 (de) | Verfahren zum pruefen von monolithisch integrierten halbleiterschaltungen | |
DE4011935C2 (de) | ||
DE19951534A1 (de) | Integrierte Halbleiterschaltung | |
DE10337284B4 (de) | Integrierter Speicher mit einer Schaltung zum Funktionstest des integrierten Speichers sowie Verfahren zum Betrieb des integrierten Speichers | |
DE3634352A1 (de) | Verfahren und anordnung zum testen von mega-bit-speicherbausteinen mit beliebigen testmustern im multi-bit-testmodus | |
DE2946119C2 (de) | Datenverarbeitungseinrichtung mit einer Vielzahl von Datenverarbeitungselementen, denen ein einziger Strom von Steuersignalen zugeführt wird | |
EP1055238B1 (de) | Testschaltung und verfahren zum prüfen einer digitalen halbleiter-schaltungsanordnung | |
EP0286852B1 (de) | Schaltungsanordnung und Verfahren zum Testen von Speicherzellen | |
DE10296828T5 (de) | Halbleiterspeichertestgerät und Adressgenerator zur Defektanalyse | |
DE3718182A1 (de) | Verfahren und anordnung zur ausfuehrung eines selbsttestes eines wortweise organisierten rams | |
EP0283906A1 (de) | Verfahren und Schaltungsanordnung zum Prüfen eines Halbleiterspeichers | |
DE10229164B4 (de) | Speicherbaustein mit einem Datengenerator und einer Testlogik und Verfahren zum Testen von Speicherzellen eines Speicherbausteins | |
DE4018669C2 (de) | ||
DE10123582B4 (de) | Mustergenerator für ein Halbleiterprüfsystem sowie Verfahren zur Prüfmustererzeugung | |
DE19730958B4 (de) | Halbleiterspeichervorrichtung | |
DE10050212A1 (de) | Verfahren und integrierte Schaltung zum Testen eines Speichers mit mehreren Speicherbänken |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8139 | Disposal/non-payment of the annual fee |