DE19751578A1 - Testverfahren für Festwertspeicher - Google Patents

Testverfahren für Festwertspeicher

Info

Publication number
DE19751578A1
DE19751578A1 DE1997151578 DE19751578A DE19751578A1 DE 19751578 A1 DE19751578 A1 DE 19751578A1 DE 1997151578 DE1997151578 DE 1997151578 DE 19751578 A DE19751578 A DE 19751578A DE 19751578 A1 DE19751578 A1 DE 19751578A1
Authority
DE
Germany
Prior art keywords
memory
address
read
adr0
memory cell
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
Application number
DE1997151578
Other languages
English (en)
Inventor
Rainer Kreuzburg
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Technology Solutions GmbH
Original Assignee
Wincor Nixdorf International GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wincor Nixdorf International GmbH filed Critical Wincor Nixdorf International GmbH
Priority to DE1997151578 priority Critical patent/DE19751578A1/de
Publication of DE19751578A1 publication Critical patent/DE19751578A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/10Test algorithms, e.g. memory scan [MScan] algorithms; Test patterns, e.g. checkerboard patterns 

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Description

Die Erfindung betrifft eine Datenverarbeitungsanlage mit einem Festwertspeicher, in der ein Prozessor Befehle ei­ nes Testprogramms ausführt, um den Festwertspeichers zu testen.
Ein Festwertspeicher ist im Gegensatz zu einem Schreib- Lese-Speicher ein Speicher, aus dem in einer Betriebspha­ se nur Daten gelesen werden. Solche Festwertspeicher sind zum Beispiel maskenprogrammierbare ROM (Read Only Memo­ ry), PROM (Programmable ROM), EPROM (Electrically PROM) und EEPROM (Erasable EPROM) bzw. EAROM (Electrically Al­ terable ROM).
Es ist zweckmäßig, einen solchen Speicher, der Teil einer Datenverarbeitungsanlage ist, beim Einschalten zu testen, damit Fehler frühzeitig erkannt werden können. Im Rahmen der Programmierung eines Festwertspeichers ist ein Test durch Vergleich mit dem jeweiligen Sollinhalt möglich. Da dies beim Einschalten nicht möglich ist, weil keine Refe­ renz vorhanden ist, wird bei einem bekannten Testverfah­ ren eine Prüfsumme verwendet, welche über alle Zellen des Speichers gebildet und mit einem Referenzwert verglichen wird. Eine Prüfsumme ist jedoch nur dann anwendbar, wenn der Referenzwert gespeichert werden oder ein vorbestimm­ ter Referenzwert wie Null verwendet werden kann. Auch er­ laubte es eine Prüfsumme nicht, festzustellen, bei wel­ cher Speicheradresse ein Fehler auftrat.
Für Schreib-Lese-Speicher sind Testverfahren bekannt, die den Speicher, zumindest vorübergehend, verändern. Sie sind daher auf Festwertspeicher nicht anwendbar.
Es ist Aufgabe der Erfindung, ein einfaches Verfahren zum Testens eines in eine Datenverarbeitungsanlage eingebau­ ten Speichers anzugeben, das ohne Prüfsummen und ohne Schreiboperationen auskommt.
Diese Aufgabe wird durch ein Verfahren mit den Merkmalen des Patentanspruchs 1 gelöst.
Die Erfindung geht von der Beobachtung aus, daß eine Feh­ ler in den aus einem Festwertspeicher gelesenen Daten nicht nur dadurch verursacht sein können, daß der eigent­ liche Festwertspeicher fehlerhaft ist. Vielmehr kommen auch die Ansteuerbausteine und Verbindungsleitungen in Frage. Auch kann die Spannungsversorgung instabil oder ungenügend entkoppelt sein. Viele Fehler können sich auch erst im Laufe der Zeit durch Alterung zeigen und dann als sporadische Fehler darstellen. Daher benutzt die Erfin­ dung die Erkenntnis, daß ein wiederholtes Lesen einer Speicherstelle mit dazwischenliegendem Zugriff auf andere Speicherstellen, insbesondere solche mit bitweise inver­ tierter Adresse, solche Fehler durch unterschiedliche Werte offenbart. Die Genese der Fehler ist dabei sekundär und nicht Teil der Erfindung.
Es handelt sich also um ein Verfahren zum Testen eines Festwertspeichers einer Datenverarbeitungsanlage, bei dem die zu testende Speicherzelle mehrfach ausgelesen und die gelesenen Werte auf Gleichheit verglichen werden, wobei zwischen den Lesezugriffen auf die zu testende Adresse ein Lesezugriff auf eine andere Adresse stattfindet.
Weitere Merkmale und Vorteile der Erfindung ergeben sich aus der folgenden Beschreibung, welche in Verbindung mit den beigefügten Zeichnungen die Erfindung an Hand eines Ausführungsbeispiels erläutert.
Es zeigen:
Fig. 1 den Aufbau einer Datenverarbeitungsanlage in Bezug auf die Erfindung und
Fig. 2 die Verfahrensschritte eines Testprogramms zum Testen eines Festwertspeichers in der Datenver­ arbeitungslage.
Fig. 1 zeigt den Aufbau einer Datenverarbeitungsanlage 10, welche einen Prozessor 12, einen Festwertspeicher 14, eine Ein-/Ausgabeeinheit 16, einen Adreßtreiber 18 und ein Bussystem 20 enthält. Außerdem enthält die Datenver­ arbeitungslage 10 als Arbeitsspeicher einen nicht darge­ stellten Schreib-Lese-Speicher. Je nach Anwendungsfall kann dieser ebenfalls mit dem Bussystem 20 verbunden sein oder im Prozessor als Register enthalten sein, wie dies beispielsweise bei Mikrocontrollern der Fall ist.
Der Prozessor 12 führt aus einem Programmspeicher 13 Be­ fehle aus. Die Art dieses Programmspeichers ist für die Erfindung ohne Bedeutung; es kann sich um einen weiteren Festwertspeicher handeln.
Der zu testende Festwertspeicher 14 enthält die in Daten­ worten DW0 bis DWN, wobei n eine natürliche Zahl ist. Im Ausführungsbeispiel sind acht Datenworte DW0 bis DW7 im Festwertspeicher 14 gespeichert, so daß N=7 ist. Die Da­ tenworte DW0 bis DW7 haben im Beispiel jeweils eine Länge von acht Datenbits d0 bis d7, wobei Wortbreite sich nach dem Prozessor und den Zugriffspfaden richtet. Jedes Da­ tenwort DW0 bis DW7 ist in einer jeweiligen Speicherzelle 22 bis 36 gespeichert. Die Speicherzelle 22 für das Da­ tenwort DW0 hat eine Adresse ADR0. Ebenso haben die Spei­ cherzellen 24 bis 36 für die Datenworte DW1 bis DW7 je­ weils eine Adresse ADR1 bis ADR7.
Der Festwertspeicher 14 hat im Beispiel von acht Spei­ cherzellen drei Adreßanschlüsse für jeweils eine Adreß­ leitung 40 bis 44. Auf der Adreßleitung 40 wird der Signalwert eines Adreßbits a0 an den Festwertspeicher 14 angelegt. Das Adreßbit a0 definiert das Bit mit der ge­ ringsten Wertigkeit in einem Adreßdatenwort ADR0 bis ADR7. Auf der Adreßleitung 42 wird ein Adreßbit a1 über­ tragen, welches die mittlere Bitstelle eines aktuellen Adreßwortes ADR0 bis ADR7 festlegt. Ein Adreßbit a2 auf der Datenleitung 44 legt das Bit mit der höchsten Wertig­ keit fest. Zum Adressieren der Adresse ADR0 wird z. B. das Adreßwort "000" an die Adreßleitungen 40 bis 44 angelegt.
Die Adreßleitungen 40 bis 44 sind mit Ausgängen des Adreßtreibers 18 verbunden. Der Adreßtreiber 18 ist ein­ gangsseitig mit Adreßleitungen des Bussystems 20 verbun­ den und gewährleistet, daß das Bussystem 20 durch den Festwertspeicher 14 kaum belastet wird.
Das Bussystem 20 enthält Adreßleitungen, Datenleitungen und Steuerleitungen. Die Datenleitungen des Bussystems 20 sind mit dem Ausgang des Festwertspeichers 14 verbunden. Außerdem ist das Bussystem 20 mit weiteren Geräten, z. B. einer Ein-/Ausgabeeinheit 16 verbunden.
Fig. 2 zeigt Verfahrensschritte eines Testprogramms zum Testen des Festwertspeichers 14 gemäß Fig. 1, so daß beim Erläutern der Fig. 2 auch auf die Fig. 1 Bezug ge­ nommen wird.
Das Testverfahren beginnt in einem Verfahrensschritt 100. In einem Verfahrensschritt 104 wird die Anfangsadresse festgelegt, an welcher der Test der Speicherzellen des Festwertspeichers 14 beginnen soll. Außerdem wird im Schritt 104 festgelegt, welche angibt, bis zu welcher Speicherzelle der Test durchgeführt werden soll. Im Aus­ führungsbeispiel sei angenommen, daß die Anfangsadresse die Adresse ADR0 und die Endadresse die Adresse ADR7 ist. Die Adresse ADR0 hat in binärer Schreibweise den Wert "000", und die Adresse ADR7 hat in binärer Schreibweise den Adreßwert "111". Diese Festlegungen werden in Varia­ blen abgestellt. Beispielsweise erhält eine Zählvariable n den Wert Null. In einer Variablen N wird die Anzahl der zu testenden Speicherzellen im Festwertspeicher 14 fest­ gelegt. Die Variable N hat im Ausführungsbeispiel den Wert Acht, weil acht Speicherzellen 22 bis 36 im Fest­ wertspeicher 14 getestet werden sollen.
In einem Verfahrensschritt 106 werden die zu invertieren­ den Bitstellen der Adressen des Festwertspeichers 14 festgelegt. Im Ausführungsbeispiel sind das die letzten drei Bitstellen der Adresse. Das bedeutet, daß die höher­ wertigen Adreßbits a3 bis a15 beim Invertieren ausgeblen­ det werden. Durch diese Maßnahme wird erreicht, daß sich das Invertieren nur auf Adressen innerhalb des Festwert­ speichers 14 bezieht. Die Invertierung wird im Beispiel durch eine Maske MASK mit dem Wert "111", linksbündig mit Nullen aufgefüllt, erreicht, die mit einer XOR Operation auf die Adresse n angewendet wird.
Im folgenden Verarbeitungsschritt 108 wird bereits die Adresse ADR(0) an den im Schritt 106 festgelegten Stellen bitweise invertiert. Aus der Adresse "000" wird die Adresse "111", d. h. die Adresse der Speicherzelle 36. Da­ mit stehen für die nachfolgenden Schritte eine Adresse und eine invertierte Adresse bereit, wofür Indexregister des Prozessors verwendet werden. Die frühzeitige Bereit­ stellung ist für die Effizienz des Verfahrens zweckmäßig, um die nachfolgenden drei Schritte unmittelbar aufeinan­ derfolgend durchführen zu können. Falls nur ein Indexre­ gister zur Verfügung steht, können die Schritte 108 und 110 auch vertauscht und nach Schritt 112 eine erneute In­ vertierung eingefügt werden.
Im folgenden Schritt 110 wird ein Wert X aus der Adresse ADR(0) gelesen, da die Zählvariable n beim ersten Abar­ beiten des Schritts 110 den Wert Null hat. Der Wert X wird in einem Register des Prozessors 12 zur weiteren Be­ arbeitung gespeichert.
In einem Schritt 112 wird aus der Speicherzelle 36 mit der im Schritt 108 bereitgestellten invertierten Adresse "111" ein Wert gelesen. Dieser Wert wird zur weiteren Be­ arbeitung nicht mehr benötigt, wie unten weiter ausge­ führt wird, so daß er z. B. in einem beliebigen Register des Prozessors 12 gespeichert wird.
In einem Verfahrensschritt 114 wird ein Wert Y aus der nicht invertierten Adresse ADR(0) gelesen. Das bedeutet, daß die Speicherzelle 22 zum zweiten Mal gelesen wird.
In einem Verfahrensschritt 116 werden anschließend die beiden Werte und Y miteinander verglichen. Sind die Werte Wert1 und Wert2 nicht gleich, so wird in einem Verfah­ rensschritt 118 eine Fehlermeldung ausgegeben und das Verfahren beendet oder mit Schritt 120 fortgesetzt. Der Schritt 120 folgt unmittelbar nach dem Schritt 116, wenn der Wert X gleich dem Wert Y ist.
Durch den schnell aufeinander folgenden Zugriff mit einer Adresse und der invertierten Adresse werden alle betrof­ fenen Bitstellen der Adresse umgeschaltet; somit wird die maximale Leistung von dem Adreßsystem verlangt, da z. B. alle kapazitiven Lasten umgeladen werden müssen. Damit werden insbesondere Geschwindigkeitsfehler, wie sie durch ungenügende Entkopplung oder Probleme mit der Spannungs­ versorgung entstehen, aufgedeckt.
Im Verfahrensschritt 120 wird geprüft, ob die Zählvaria­ ble n einen Wert hat, der kleiner ist als der Wert in der Variablen N vermindert um Eins. Ist der Wert der Zählva­ riablen n kleiner als dieser Wert, so folgt unmittelbar nach dem Verfahrensschritt 120 ein Verfahrensschritt 122, in welchem der Wert der Zählvariablen n um Eins erhöht wird. Das Testverfahren befindet sich dann in einer Schleife aus den Verfahrensschritten 108 bis 122. Diese Schleife wird solange durchlaufen, bis alle Speicherzel­ len des Festwertspeichers 14 zwischen der im Verfahrens­ schritt 108 festgelegten Anfangsadresse und Endadresse getestet worden sind.
Wird im Schritt 110 die Adresse ADR(1) invertiert, so entsteht aus dem binären Wert "001" die Adresse "110", d. h. die Adresse der Speicherzelle 34.
Im Schritt 114 wird beim zweiten Durchlauf der Bearbei­ tungsschleife aus den Schritten 108 bis 122 wieder die Speicherzelle 24 gelesen.
Die Schleife aus den Verfahrensschritten 108 bis 122 wird solange durchlaufen, bis im Schritt 120 festgestellt wird, daß der Wert der Zählvariablen n nicht mehr kleiner als die um den numerischen Wert Eins verringerte Anzahl der zu testenden Zellen N ist. In diesem Fall folgt un­ mittelbar nach dem Schritt 120 ein Verfahrensschritt 124, in welchem das Testverfahren beendet wird.
Sofern im Testverfahren Ungleichheit erkannt wird, ist davon auszugehen, daß der Speicher unzuverlässig arbei­ tet. Die Behandlung dieses Fehlerzustands hängt von dem Einsatz ab, wird vom Fachmann in bekannter Art behandelt und daher nicht weiter beschrieben.
Die Invertierung der Adresse ist die bevorzugte Methode, um eine möglichst hohe Effizienz zu erreichen. Ist jedoch bekannt, daß die Adressleitungen anders verschaltet sind, so kann auch einen andere Funktion verwendet werden. Wird beispielsweise ein additiver Versatz bereits vom Prozes­ sor angewendet, so erreicht eine einfache Invertierung nicht die maximale "Bewegung" auf den Adressleitungen vom Prozessor zum Speicher. In diesem Fall sollte vor der Invertierung der additive Versatz kompensiert werden. An­ dere Varianten können auch beispielsweise durch Versuche in Entwicklungsphase ermittelt werden, indem eine Anzahl von anderen Funktionen unter erschwerten Bedingungen, z. B. reduzierter Versorgungssparinung, erprobt werden.

Claims (3)

1. Verfahren zum Testen eines Festwertspeichers (14) in einer Datenverarbeitungsanlage (10), wobei der Spei­ cher (14) an seinen Speicheradressen (ADR0 bis ADRN) Datenworte (DW0 bis DWN) speichert und ein Prozessor (12) beim Abarbeiten der Befehle eines Testprogramms (13) für mindestens eine zu testende Speicherzelle (22) des Speichers (14) nacheinander die folgenden Schritte ausführt:
  • a) Bestimmen einer ersten Speicheradresse (ADR0) der zu testenden Speicherzelle (22),
  • b) Ermitteln einer von der ersten Speicheradresse (ADR0) abweichenden zweiten Speicheradresse (ADRn) nach einem vorbestimmten Verfahren,
  • c) Lesen des mit der ersten Speicheradresse (ADR0) adressierten Datenwortes (DW0) und Zwischenspei­ chern eines ersten gelesenen Wertes (X) in einem vom dem zu testenden Speicher unabhängigen. Spei­ cher, insbesondere einem Register des Prozessors,
  • d) Lesen des mit der zweiten Speicheradresse (ADRn) adressierten Datenwortes (DWn) und Ignorieren des gelesenen Wertes,
  • e) nochmaliges Lesen des mit der ersten Speicheradres­ se (ADR0) adressierten Datenwortes (DW0), welches einen zweiten gelesenen Wert (Y) ergibt,
  • f) Vergleich des ersten gelesenen Wertes (X) mit dem zweiten gelesenen Wert (Y) auf Gleichheit.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß das vorgegebene Verfahren ein Invertieren der Speicheradresse innerhalb des Adreßbereichs des Spei­ chers ist (Schritt 110)
3. Verfahren nach Anspruch 1, wobei zusätzlich zu der Invertierung ein additiver Versatz angewendet wird.
DE1997151578 1997-11-20 1997-11-20 Testverfahren für Festwertspeicher Withdrawn DE19751578A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE1997151578 DE19751578A1 (de) 1997-11-20 1997-11-20 Testverfahren für Festwertspeicher

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE1997151578 DE19751578A1 (de) 1997-11-20 1997-11-20 Testverfahren für Festwertspeicher

Publications (1)

Publication Number Publication Date
DE19751578A1 true DE19751578A1 (de) 1999-05-27

Family

ID=7849388

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1997151578 Withdrawn DE19751578A1 (de) 1997-11-20 1997-11-20 Testverfahren für Festwertspeicher

Country Status (1)

Country Link
DE (1) DE19751578A1 (de)

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
RHEIN,Dietrich, FREITAG,Heinz: Mikroelektronische Speicher, Springer-Verlag, Wien, New York, 1992, S.200-208 *

Similar Documents

Publication Publication Date Title
DE2619159C2 (de) Fehlererkennungs- und Korrektureinrichtung
DE69221045T2 (de) Verfahren und Gerät zur programmierbaren Speicherssteuerung mit Fehlerregelung und Prüffunktionen
DE2030760A1 (de) Speicherschaltung
DE102007038877B4 (de) Steuervorrichtung mit schneller I/O-Funktion und Steuerverfahren zum Steuern ihrer Daten
DE3024370C2 (de) Redundantes Steuersystem
DE69912545T2 (de) Schaltkreis mit einer einheit zum testen von verbindungen und ein verfahren zum testen von verbindungen zwischen einem ersten und zweiten elektronischen schaltkreis
DE2225841B2 (de) Verfahren und Anordnung zur systematischen Fehlerprüfung eines monolithischen Halbleiterspeichers
DE19963689A1 (de) Schaltungsanordnung eines integrierten Halbleiterspeichers zum Speichern von Adressen fehlerhafter Speicherzellen
DE102007058928A1 (de) Verfahren und Halbleiterspeicher mit einer Einrichtung zur Erkennung von Adressierungsfehlern
DE19835258B4 (de) Integrierte dynamische Speicherschaltung mit einer Selbsttesteinrichtung
WO2006045754A1 (de) Verfahren, betriebssystem und rechengerät zum abarbeiten eines computerprogramms
DE10256487B4 (de) Integrierter Speicher und Verfahren zum Testen eines integrierten Speichers
EP0347970B1 (de) Verfahren zum Prüfen eines Festwertspeichers und Anordnung zur Durchführung des Verfahrens
DE3200626C2 (de) Verfahren zur Überprüfung, ob ein außer dem Hauptspeicher vorgesehener weiterer Speicher in ein Mikrocomputersystem eingefügt ist
DE19751578A1 (de) Testverfahren für Festwertspeicher
EP0353660B1 (de) Verfahren zur Fehlersicherung in Speichersystemen von Datenverarbeitungsanlagen, insbesondere Fernsprechvermittlungsanlagen
DE10323237A1 (de) Verfahren und Vorrichtung zur Optimierung der Funktionsweise von DRAM-Speicherelementen
DE102005060901A1 (de) Verfahren zur Erkennung einer Versorgungsunterbrechung in einem Datenspeicher und zur Wiederherstellung des Datenspeichers
DE3718182A1 (de) Verfahren und anordnung zur ausfuehrung eines selbsttestes eines wortweise organisierten rams
DE102005018790A1 (de) Integrierter Schaltkreis und Verfahren zum Betreiben und parallelen Testen von integrierten Schaltkreisen
DE102004043063A1 (de) Halbleiter-Bauelement mit Test-Schnittstellen-Einrichtung
DE10050771A1 (de) Schaltung zum Testen eines Datenspeichers
DE2505475C3 (de) Verfahren und Vorrichtung zur Fehlerprüfung bei einem programmierbaren Logikwerk für die Ausführung logischer Operationen
EP0328989B1 (de) Schaltungsanordnung zur Anpassung eines langsamen Speichers an einen schnellen Prozessor
DE10356956A1 (de) Interne Datengenerierung und Datenvergleich über ungenutzte externe Anschlüsse

Legal Events

Date Code Title Description
OM8 Search report available as to paragraph 43 lit. 1 sentence 1 patent law
8127 New person/name/address of the applicant

Owner name: FUJITSU SIEMENS COMPUTERS GMBH, 81739 MUENCHEN, DE

8120 Willingness to grant licenses paragraph 23
8141 Disposal/no request for examination