DE3886038T2 - Speichergerät, das einen zur Ausführung einer Selbstprüfung adaptierten statischen RAM-Speicher enthält und integrierte Schaltung, die als eingebauten statischen RAM-Speicher ein solches Gerät enthält. - Google Patents

Speichergerät, das einen zur Ausführung einer Selbstprüfung adaptierten statischen RAM-Speicher enthält und integrierte Schaltung, die als eingebauten statischen RAM-Speicher ein solches Gerät enthält.

Info

Publication number
DE3886038T2
DE3886038T2 DE3886038T DE3886038T DE3886038T2 DE 3886038 T2 DE3886038 T2 DE 3886038T2 DE 3886038 T DE3886038 T DE 3886038T DE 3886038 T DE3886038 T DE 3886038T DE 3886038 T2 DE3886038 T2 DE 3886038T2
Authority
DE
Germany
Prior art keywords
data
test
memory
register
address
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.)
Expired - Fee Related
Application number
DE3886038T
Other languages
English (en)
Other versions
DE3886038D1 (de
Inventor
Franciscus Petrus Mari Beenker
Robertus Wilhelmus Corn Dekker
Joris Frans Pieter Jansen
Aloysius Petrus Thijssen
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.)
Koninklijke Philips NV
Original Assignee
Philips Gloeilampenfabrieken NV
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 Philips Gloeilampenfabrieken NV filed Critical Philips Gloeilampenfabrieken NV
Publication of DE3886038D1 publication Critical patent/DE3886038D1/de
Application granted granted Critical
Publication of DE3886038T2 publication Critical patent/DE3886038T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C19/00Digital stores in which the information is moved stepwise, e.g. shift registers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/20Address generation devices; Devices for accessing memories, e.g. details of addressing circuits using counters or linear-feedback shift registers [LFSR]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/40Response verification devices using compression techniques

Landscapes

  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Dram (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Description

  • Die Erfindung betrifft eine Speicheranordnung, die einen wortorientierten statischen RAM-Speicher enthält, und daran angeschlossen
  • - ein Adreßregister,
  • - ein Dateneingangsregister mit aufeinanderfolgenden Bitpositionen und
  • - ein Steuerregister,
  • wobei alle diese Register extern zugängliche funktionelle Verbindungen für die Kommunikation von Informationen haben und wobei ein erstes Steuermittel vorgesehen ist, um den genannten Speicher wahlweise in einem Betriebszustand oder in einem Selbstprüfungs-Zustand zu aktivieren; wobei im genannten Betriebszustand das genannte Adreßregister und das genannte Dateneingangsregister wirksam mit dem Speicher verbunden sind, und wobei im genannten Selbstprüfungs-Zustand das genannte Adreßregister, das genannte Dateneingangsregister und das genannte Steuerregister wirksam sind, um bei Abwesenheit jeglicher Informationskommunikation über einen Informationseingang der Speicheranordnung aufeinanderfolgende Datentestmuster und Adressenprüfmuster zum Schreiben in den Speicher zu bilden.
  • Eine solche Speicheranordnung ist aus einer Publikation von S.K. Jain et al. mit dem Titel "Built in self testing of embedded memories" in IEEE Design and Test of Computers Vol. 3, Nr. 5, Oktober 1986, Seite 27 - 37, bekannt.
  • Bei einer Speicheranordnung lassen sich folgende Fehler unterscheiden:
  • Eine Speicherzelle wird als "hängengeblieben" (stuck-at) bezeichnet, wenn der Logikwert der Zelle nicht durch eine Einwirkung auf die Zelle oder durch den Einfluß von anderen Zellen geändert werden kann. Eine Zelle wird als "hängengeblieben auf 0 oder 1" (stuck-at-0(1)) bezeichnet, wenn ihr gelesener Wert immer 0 bzw. 1 ist.
  • Eine Speicherzelle wird als "offengeblieben" (stuck-open) bezeichnet, wenn kein Zugriff auf die Zelle möglich ist. Die Ursache eines "Stuck-open"-Fehlers besteht darin, daß die Durchgangstransistoren der Zelle immer geöffnet sind.
  • Eine Zelle mit einem Übergangsfehler ist nicht in der Lage, von 0 auf 1 oder von 1 auf 0 überzugehen.
  • Eine Speicherzelle i wird als zustandsgekoppelt mit einer anderen Speicherzelle j bezeichnet, wenn sich die Zelle i nur dann wie "hängengeblieben" auf einem bestimmten Wert x(xE{0,1}) benimmt, wenn sich Zelle j in einem bestimmten Zustand y(yE{0,1}) befindet. Mit anderen Worten: Wenn sich Zelle j in einem definierten Zustand befindet, ist der Zustand von Zelle i definiert und kann gelesen werden, aber nicht mit einem Schreibvorgang geändert werden. Das bedeutet nicht, daß Zelle j ebenfalls zustandsgekoppelt mit Zelle i ist.
  • Eine Speicherzelle i wird als übergangsgekoppelt mit Zelle j bezeichnet, wenn ein Ubergang xT (xE{0,1}) einen Übergang yT (yE{0,1}) der Zelle i erzwingt. Dies braucht nicht zu bedeuten, daß Zelle j ebenfalls übergangsgekoppelt ist mit Zelle i.
  • Die Übertragung von elektrischen/elektronischen Fehlern auf die obigen funktionellen Fehler hängt von der Schaltungsimplementierung ab und wird nicht weiter betrachtet.
  • Die Speicheranordnung muß auf solche Fehler geprüft werden. Üblicherweise erfolgt diese Prüfung, indem ein festgelegtes Datenmuster an eine festgelegte Adresse geschrieben wird. Zu einem späteren Zeitpunkt werden die Daten wieder ausgelesen. Die eigentliche Prüfung besteht aus dem Vergleich der ausgelesenen Datenmuster mit den Daten, die an diesen Speicherplatz geschrieben werden sollten. Wenn beim Vergleich eine ausreichende Anzahl Übereinstimmungen gefunden wurde, wird der Speicher als in Ordnung betrachtet. Die Prüfung einer solchen Speicheranordnung als eingebauter Speicher wurde in der Literatur beschrieben. Die folgende Publikation wird als relevante Technik angeführt: Z. Sun et al., Self-testing of embed-25 ded RAM's, IEEE 1984 International Test Conference Proeeedings, Proceedings Seite 148 - 156, Abhandlung 4.3. Aus dem Stand der Technik ist bekannt, daß zwei Datenmuster für die Prüfung verwendet werden. Dies hat den Nachteil, daß nicht alle Kopplungsfehler zwischen Zellen an der gleichen Adresse erkannt werden.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Unter anderem hat die vorliegende Erfindung zur Aufgabe, eine Speicheranordnung entsprechend der Einleitung zu schaffen, die sowohl für den eingebauten als auch für den eigenständigen Betrieb angepaßt ist und eine Selbstprüfung durchführt, deren Prüfungseinrichtungen sich für eine einfache Parametrierung eignen, wobei die Anzahl der Testmuster und damit die erforderliche Prüfungszeit begrenzt sind, und die nach der Initialisierung der Prüfung unabhängig weitere Prüfoperationen durchführen kann.
  • Insbesondere soll die Selbstprüfung Kopplungsfehler zwischen Zellen an der gleichen Adresse erkennen. Zu diesem Zweck sind mehrere, als Daten-Hintergründe bezeichnete Testmuster während der Speicherprüfung erforderlich.
  • Einige andere Aufgaben der Erfindung sind:
  • 1. Der Prüfalgorithmus der Selbstprüfungs-Vorrichtung muß über hervorragende Möglichkeiten zur Fehlererkennung verfügen.
  • 2. Die Struktur der Selbstprüfungs-Vorrichtung ist unabhängig von der Adressen- und Datenverwürfelung.
  • 3. Die Selbstprüfungs-Vorrichtung erzeugt Daten-Hintergründe auf dem Chip und eignet sich daher sowohl für bitorientierte als auch für wortorientierte SRAMs.
  • 4. Sie bietet die Möglichkeit zur Prüfung der Daten-Erhaltung.
  • 5. Sie eignet sich sowohl für eingebaute SRAMs als auch für eigenständige SRAMs und paßt ausgezeichnet in eine Boundary-Scan-Umgebung. Eine solche Umgebung wurde insbesondere offengelegt in der niederländischen Patentanmeldung 8502476, den US- Patentschriften Nr. 4.879.717 und Nr. 4.791.358, die durch Nennung als hierin aufgenommen betrachtet werden. Außerdem ist eine Scan-Prüfung der Selbstprüfungs-Logik durchführbar.
  • 6. Aufgrund der regelmäßigen und symmetrischen Struktur des Prüfalgorithmus werden die Gemeinkosten für den Speicher gering gehalten (3% für einen synchronen 16K- SRAM).
  • Erfindungsgemäß ist die Speicheranordnung dadurch gekennzeichnet, daß für das genannte Dateneingangsregister ein Voreinstell-Mechanismus vorgesehen ist, um im letztgenannten Register ein anfängliches Datentestmuster zu erzeugen, das eine maximale Anzahl 1-0-Differenzen zwischen den aufeinanderfolgenden Bitpositionen hat, wobei das Dateneingangsregister mit einem zweiten Steuermittel versehen ist, um aus dem genannten Datentestmuster weitere nachfolgende Datentestmuster zu erzeugen, und wobei das zweite Steuermittel so angeordnet ist, daß die Bits von der ersten Hälfte des Datentestmusters jeweils auf zwei Bits in einem nächstfolgenden Testmuster projiziert werden. Die projizierten Muster können weniger (1-0)-Differenzen zwischen den aufeinanderfolgenden Bitpositionen haben. Weitere Wiederholungen führen schließlich zu einem Bitmuster mit einem gleichförmigen Bitwert. Für n Bits sind insgesamt ²log n+1 Muster erforderlich, was eine vorteilhaft niedrige Anzahl ist.
  • Vorzugsweise stellen alle genannten Register jeweils Teile einer seriell aktivierbaren Prüf-Scan-Kette dar, die einen seriellen Eingang zum Empfangen der Voreinstell-Informationen und einen seriellen Ausgang zum Ausgeben eines Signaturmusters hat, wobei das erste Steuermittel vorgesehen ist, um den genannten Speicher abwechselnd in einem Scan-Zustand, im Betriebszustand oder im Selbstprüfungs- Zustand zu aktivieren; im genannten Scan-Zustand sind alle Register gekoppelt, um ein serielles Schieberegister in der genannten Scan-Kette zu bilden. Auf diese Weise paßt der Speicher in eine Boundary-Scan-Umgebung.
  • In einer Ausführungsform der erfindungsgemäßen Speicheranordnung sind im genannten Selbstprüfungs-Zustand das genannte Adreßregister, das genannte Dateneingangsregister und das genannte Steuerregister wirksam, um die anfänglichen Datentestmuster und die nachfolgenden weiteren Datenmuster jeweils in alle Wort- Speicherplätze im Speicher einzuschreiben. Diese Selbstsequenz macht eine kontinuierliche Steuerung auf einem höheren Organisationsniveau überflüssig. Die vorläufige Signatur wird jedesmal in einer "latch"-artigen Organisation festgehalten, was eine vorteilhafte synchrone Organisation darstellt. Vorteilhaft ist auch, daß die Prüfungs- Steuerungseinrichtungen und der Speicher selbst direkt einer Scan-Prüfung unterzogen werden können. Obwohl die Wahrscheinlichkeit einer fehlerhaften Steuerung an sich gering ist (aufgrund der relativ kleinen Fläche), ermöglichen diese Einrichtungen eine schnelle Prüfung des spezifischen Steuermittels sowie eine schnelle Prüfung von vorgegebenen Teilen der Speicheranordnung. Vorteilhafterweise enthält der Speicher zusätzlich zu seinem Adreßzähler einen Wartezähler, um selbständig eine Wartezeit für die Datenhalteprüfung herunterzuzahlen. Statische RAMs müssen eine angemessene Datenhaltezeit haben. Durch die Prüfung der Haltezeit wird die erwartete Zuverlässigkeit der Speicheranordnung daher erhöht. Vorteilhafterweise wird die Steuerung durch eine Vorrichtung mit finitem Zustand durchgeführt. Die Realisierung dieser Vorrichtung durch ROM, programmierbares Logik-Array, "wild logic" oder ein anderes Mittel ist, wie noch gezeigt wird, mit einer unerwartet geringen Anzahl von Logiksteuerungs-Ausdrücken möglich. Vorteilhafterweise kann der Speicher bei N verschiedenen Adressen nach einer 9N- oder nach einer 13N-Adressen-Prüfsequenz-Methode geprüft werden. Dies stellt eine relativ geringe Anzahl von Zugriffen auf jeden Speicherplatz dar, die außerdem nur in der Anzahl der Speicherplätze linear ist.
  • Die Erfindung betrifft auch eine integrierte Schaltung mit einer prüfbaren Speicheranordnung entsprechend der obigen Beschreibung, die im genannten Betriebszustand wirksam mit mindestens einem weitere Datenverarbeitungs-Subsystem auf der integrierten Schaltung verbunden ist. Die Prüfbarkeit des jetzt eingebauten RAM- Speichers erhöht die Zuverlässigkeit der Gesamtschaltung wesentlich.
  • KURZE BESCHREIBUNG DER ZEICHNUNG
  • Die Erfindung wird im folgenden in bezug auf die beigefügten Zeichnungen näher beschrieben. Es zeigen:
  • Figur 1 einen 13N-Prüfalgorithmus mit Datenhalteprüfung;
  • Figur 2 Daten-Hintergründe für die Prüfung eines 16 Bit breiten SRAMs,
  • Figur 3 eine globale Architektur einer erfindungsgemäßen Speicheranordnung;
  • Figur 4 eine modifizierte Registerzelle für die Verwendung in Figur 3;
  • Figur 5 eine weitere Abwandlung für einen eigenständigen RAM-Speicher;
  • Figur 6 ein Zustandsdiagramm für eine Selbstprüfüngs-Steueranordnung;
  • Figur 7 eine Tabelle der verschiedenen Betriebsarten der Steueranordnung;
  • Figur 8 eine exemplarische Schaltungsrealisierung der Selbstprüfungs- Steueranordnung;
  • Figur 9 eine exemplarische Schaltungsrealisierung des parametrierbaren Datengenerators;
  • Figur 10a, 10b, 10c, 10d eine exemplarische Schaltungsrealisierung eines Acht-Bit-Adressengenerator-Zählers und eines zusätzlichen Drei-Bit-Wartezählers sowie speziell abgeänderte Registerzellen für die Verwendung darin;
  • Figur 11 eine exemplarische Schaltungsrealisierung eines Acht-Bit- Signaturgenerators;
  • Figur 11a eine modifizierte Registerzelle hierfür.
  • ORGANISATION EINES BEVORZUGTEN AUSFÜHRUNGSBEISPIELS
  • Figur 1 zeigt einen 13N-Prüfalgorithmus mit Datenhalteprüfung. N ist die Anzahl der Adressen 0 ... N-1 in der ersten Spalte. Die zweite Spalte gibt die Initialisierung an, wobei alle Adressen nacheinander mit 0 beschrieben werden. Die Adressensequenz erfolgt durch Inkrementieren der Adressen jeweils um +1. Auf ähnliche Weise haben die dritte und die vierte Spalte ansteigende Adressen. Die fünfte und sechste Spalte hingegen haben absteigende Adressen, die um -1 inkrementiert werden.
  • Diese Prüfung basiert auf einem realistischen Fehlermodell einschließlich "Stuck-at"-Fehlern, "Stuck-open"-Fehlern, Übergangsfehlern, Kopplungsfehlern und Datenhaltefehlern. In den Figuren wird eine RAM-SCHREIB-Anweisung mit Wr (Write) bezeichnet und eine LESE-Anweisung mit Rd (Read). Die Orientierung der Daten ist in Klammern angegeben. Die RAM-Adresse, bei der die Anweisung ausgeführt wird, ist in der ersten Spalte der Figur angegeben. Die erforderliche Wartezeit für die Datenhalteprüfung hängt weitgehend vom Entwurf ab. In unserem Entwurf verwenden wir als Beispiel 50 ms. Ein bitorientierter SRAM wird mit diesem Prüfalgorithmus eingehend geprüft. Bei der Prüfung eines wortorientierten SRAM muß jedoch jede Adresse mit einem kompletten Wort beschrieben und von dort gelesen werden. Um Kopplungsfehler zwischen Zellen an der gleichen Adresse zu erkennen, sind bei der Speicherprüfung mehrere Datenworte, die als Daten-Hintergründe bezeichnet werden, erforderlich.
  • Figur 2 zeigt Daten-Hintergründe für einen 16 Bit breiten RAM-Speicher. Im ersten Daten-Hintergrund befindet sich ein 0-1-Übergang zwischen jedem Paar aufeinanderfolgender Bitpositionen. Die Umsetung in die nächsten vier Daten-Hintergründe erfolgt folgendermaßen: Für die Bitpositionen 0... i ... n-1 wird Bit i in die Bitpositionen 2i und (2i-1) für den nächsten Daten-Hintergrund kopiert. Bei 16 Bits wird nach vier erfolgreichen Umsetzungen ein Hintergrund erreicht, bei dem nur Nullen vorliegen. Die untere Hälfte der Figur zeigt Daten-Hintergründe, die in bezug auf einen entsprechenden Daten-Hintergrund in der oberen Hälfte bitweise invertiert sind. Allgemeiner ausgedrückt, das Kopieren oder Projizieren in der oberen Hälfte kann auf verschiedene Weise erfolgen, indem die Hälfte der Bits jeweils auf zwei Bitpositionen projiziert wird. Bei bestimmten Einstellungen kann das Kopieren mit einer Invertierung erfolgen. Das oben gezeigte Schema scheint sich sehr leicht implementieren zu lassen.
  • Eine komplette Selbstprüfung für einen wortorientierten SRAM läuft folgendermaßen ab: Zuerst wird der 13N-Prüfalgorithmus mit dem ersten Daten- Hintergrund ausgeführt, dann mit dem zweiten Daten-Hintergrund usw. Zum Schluß werden sowohl der 13N-Prüfalgorithmus als auch die Datenhalteprüfung mit dem letzten Daten-Hintergrund ausgeführt.
  • Die Datenhalteprüfung impliziert zwei Warte-Intervalle sowohl in der siebten als auch in der neunten Spalte. Während dieser Intervalle wird der Speicher deaktiviert und der Dateninhalt muß daher unverändert bleiben. Die Methode kann schneller gemacht werden, indem die Funktion Sofortiges-Lesen-nach-dem-Schreiben (direct-read-after-write) nicht benutzt wird. Hierdurch wird die Methode auf ein 9N- Verfahren reduziert. Die Muster der zweiten Hälfte von Figur 2 werden, wie im folgenden gezeigt wird, durch Invertierung realisiert. Die Invertierung findet vor der Umsetzung statt. Die Halteprüfung wird nur für zwei Hintergrunde durchgeführt: Muster mit ausschließlich Nullen und Muster mit ausschließlich Einsen.
  • ANORDNUNG EINER BEVORZUGTEN AUSFÜHRUNGSFORM
  • Figur 3 zeigt eine globale Architektur einer erfindungsgemäßen Speicheranordnung. Die Speichermatrix enthält Speicherzellen in einem Reihen- und Spalten- Array, die herkömmliche Schaltungen beinhalten können. Ein Adreßeingang 22 wird durch das Adreßregister 24 versorgt, das über den externen Adreßpfad 26 Adressen von einer nicht dargestellten Quelle empfangen kann. Ein Dateneingang 28 wird durch ein Datenregister 30 versorgt, das über den externen Datenpfad 32 Daten von einer nicht dargestellten Datenquelle empfangen kann. Ein externer Datenausgang 34 ist parallel zum Datenausgangsregister 36 angeordnet. Ein Steuerregister 38 erhält externe Steuersignale (Read, Write, Chip-select u.ä.) auf dem externen Pfad 40 und gibt auf den Leitungen 41 Steuersignale für die Matrix aus. Ein Selbstprüfungs-Steuergerät 42 enthält ein Registerzellen-Mittel 68 und kommuniziert über die Steuersignalleitungen 44, 46, 50, 54 mit verschiedenen anderen Subsystemen. Der abgebildete SRAM kann einen internen Teil einer komplizierten integrierten Schaltung, zum Beispiel eines Mikroprozessors, eines Modems oder eines speziellen Gerätes darstellen, für den/das er als eingebauter Speicher fungiert. Ein solches Gerät kann ein Rechenwerk (arithmetic and logic unit, ALU), einen Multiplizierer, einen "barrel shifter", "wild logic", ein programmierbares Logik-Array, Register, Eingabe-/Ausgabe-Schaltungen, AD-DA-Umsetzer,- Bus-Organisationen und anderes enthalten. Diese können den Speicher mit Adreß-, Daten- und Steuersignalen versorgen und Daten vom Speicher erhalten. Alternativ kann PHNI2.624EP 8 nur eine Auswahl dieser Funktionen vorhanden sein, wenn die verbleibenden Daten- /Adreß- und Steuerverbindungen direkt mit den zugehöhren Bond-Pads des Chips verbunden sind. Insoweit diese Subsysteme selbst in herkömmlicher Technologie aufgebaut sind, wird keine weitere Offenbarung als notwendig erachtet. Auf der anderen Seite kann der dargestellte Speicher ein eigenständiger Speicher sein, wenn die externen Verbindungen direkt zu den zugehörigen Bond-Pads führen.
  • Für die Prüfung von Objekten wurden folgende Elemente vorgesehen: Es wird eine serielle Scan-Kette nach einem bekannten Prinzip gebildet, die die schraffiert dargestellten Elemente enthält. Die verbindende Scan-Leitung umfaßt Eingang 62, die Verbindungsstrecken 52, 48, 31, 39 und den seriellen Ausgang 64. Alle auf diese Weise verbundenen Register können als ein serielles Schieberegister unter der Steuerung der Steuersignale C1, C2 auf Leitung 58 gesteuert werden, die im nachfolgenden erörtert werden. Eingang 62 und Ausgang 64 können mit einer nicht abgebildeten Host-Vorrichtung gekoppelt werden. Der Host kann außerdem die Leitungen 58 mit geeigneten Steuersignalen ansteuern. Das Dateneingangsregister 30 wurde mit einem Datenerzeugungs-Mechanismus zum Modifizieren der Datenmuster versehen; es tauscht Steuersignale mit dem Steuerungs-Subsystem 42 aus. Das Adreßregister 24 hat zusätzliche Einrichtungen 72, um einen Zähler zu bilden. Register 66 hat auf entsprechende Weise die Einrichtungen 77, um einen Wartezähler für die Ausführung der Datenhalteprüfung zu bilden. Die Einrichtungen 72, 77 tauschen über Leitung 50 Steuersignale mit dem Steuerungs-Subsystem 42 aus. Das Datenausgangsregister 36 hat Einrichtungen zum Erzeugen eines Signaturmusters aus einer Folge von aufeinanderfolgenden Datenergebnismustern. Das Signaturmuster kann über Leitung 64 weitergeleitet werden. Die letztgenannten Einrichtungen erhalten Steuersignale über Leitung 54. Schließlich kann das Steuerungs-Subsystem 42 die Steuersignale auf Leitung 44 übertragen, um die prüfungsbezogenen Betriebsarten zu steuern.
  • Figur 4 zeigt eine modifizierte Registerzelle für die Verwendung in der Schaltung aus Figur 3. Die Registerzelle enthält einen Speicherteil 92 und einen Eingangs-Multiplexer 90, der zwei Steuersignale C1, C2 erhält. Die Funktion dieser Steuersignale ist in der zugehörigen Tabelle dargestellt: bei C1 = C2 = 0 ist der normale Eingang N aktiviert. Wenn C1 = 0, C2 = 1, ist der Selbstprüfungseingang T aktiviert. Wenn C1 = 1 und C2 "don't care'" ist, ist der Scan-Eingang S aktiviert. Der Speicherteil 92 wird durch einen Takt CLK aktiviert. Das Ausgangssignal vom Speicherteil kann für den normalen Ausgang, den Scan-Ausgang oder, falls erforderlich, für den Selbstprüfungs-Ausgang verwendet werden. "Normal" impliziert den standardmäßigen Speicherbetrieb. "Scan" impliziert, daß die Registerzelle ein Teil eines Schieberegisters aus Registerzellen ist. "Test" wird im folgenden näher beschrieben. Wenn die "Test"-Einrichtung nicht erforderlich ist, brauchen die zugehörigen Anschlüsse nicht vorhanden zu sein.
  • Figur 5 zeigt eine weitere Abwandlung einer Registerzelle für die Verwendung in einem eigenständigen Speicher. In diesem Fall wurden zwei Multiplexer 94, 96 vorgesehen. Der erste ist eine reduzierte Ausführung des Multiplexers 90 aus Figur 4, der zweite wird nur verwendet, um zwischen "Normal"- und "Nicht-normal"- Situationen zu unterscheiden. Bei normaler Situation erfolgt keine Speicherung. Die Signale "test-out" und "scan-out" stehen am Ausgang der Speicherzelle an.
  • BESCHREIBUNG DES AUSFÜHRUNGSPROZESSES
  • In dieser Hinsicht zeigt Figur 7 die Folge der Betriebsarten des Steuergerätes. Zuerst, bei C1 = C2 = 0, wird der RAM-Speicher in normalem Modus betrieben. Anschließend werden bei C1 = C2 = 1 alle Register initialisiert. Nachdem C2 auf 0 gesetzt wurde, läuft die Selbstprüfung ab, bis sie nach der Beendung unabhängig stoppt. Dann wird C2 wieder auf 1 gesetzt und die Prüfungsergebnisse einschließlich des Signaturmusters können seriell ausgegeben werden. Schließlich werden beide Steuersignale auf Null gesetzt und die Schaltung steht wieder für den normalen Betrieb zur Verfügung.
  • Figur 6 zeigt das Zustandsdiagramm eines Selbstprüfungs-Steuergerätes für die Ausführung der 13N-Prüfung aus Figur 1. Die regelmäßige Struktur der Prüfmethode führt zu einem Zustandsdiagramm von geringer Komplexität und damit zu einem Selbstprüfungs-Steuergerät mit geringer Komplexität.
  • Jeder Zustand ist mit einem Kreis markiert. Der erste Zustand S0 führt die zweite Spalte von Figur 1 aus und befindet sich daher in einer Endlosschleife, wobei jedesmal die nächste Adresse (Spalte 6) generiert wird. Der Daten-Hintergrund bleibt unverändert (Spalte 9), die Adressenreihenfolge wird nicht invertiert (Spalte 8), die Daten werden nicht invertiert (Spalte 7) und die letzte Adresse wurde nicht erreicht (Spalte 6). Wenn die letzte Adresse erreicht wird, geht das System (siehe Spalte 7) in den nächsten Zustand S1 über. Die Daten werden invertiert (Spalte 7), die Adresse wird inkrementiert, so daß wieder die erste Adresse erreicht wird. Anschließend wird die vorliegende Adresse ausgelesen (Zustand S1), mit den neuen Daten beschrieben (Zustand S2) und erneut ausgelesen (Zustand S3). Danach kehrt das System zum Zustand S1 zurück, geht ohne Änderung zur nächsten Adresse (Zeile 3, Spalte 6) über und der Zyklus wird wiederholt (S1, S2, S3). Wenn die letzte Adresse gefunden ist (Zeile 4, Spalte 5), werden die Daten invertiert (Spalte 4), die Adresse wird inkrementiert (Spalte 6) und der gesamte Adreßbereich wird erneut durchlaufen. Dieser Vorgang entspricht der Ausführung der vierten Spalte von Figur 1. Nach der Abarbeitung aller Adressen wird die fünfte Reihe erreicht. Hier werden die Daten invertiert (Spalte 7), die Adressenreihenfolge wird invertiert (Spalte 8), die Adressenreihenfolge ist "normal" (Spalte 3), das heißt: Es erfolgt keine weitere Änderung und keine weitere Invertierung der Daten (Spalte 4). Wenn die letzte Adresse erreicht ist, fährt das System mit Zeile 6 fort. Hier wird die Adressenreihenfolge invertiert (Spalte 8), der nächste Daten-Hintergrund wird geschrieben (Spalte 9), die Adressenreihenfolge ist absteigend (Spalte 3). Solange der letzte Daten-Hintergrund nicht erreicht ist, erfolgt die Ausgabe von Zustand S3 an Zustand S0, wobei der neue Daten-Hintergrund nacheinander an alle Speicheradressen geschrieben wird. Anschließend werden die Zustände S1, S2, S3 erneut wiederholt durchlaufen. Bei Erreichen des letzten Daten-Hintergrundes geht das System über Spalte 7 in den Zustand S4. Hier wird der Adreßzähler aktiviert (Spalte 6), aber der Speicher selbst bleibt deaktiviert. Wenn die Wartezeit beendet ist (Spalte 1, Zeile 9), geht das System in Zustand S5, wo die erste Adresse gelesen wird. Anschließend werden in Zustand S6 neue Daten geschrieben und diese beiden Zustände werden für jede unterschiedliche Adresse einmal durchlaufen. Wenn die letzte Adresse wieder erreicht ist (Reihe 11), geht das System in Zustand S7. Hier gibt es wieder eine Wartezeit für die Prüfung der Datenerhaltung. Anschließend werden in Zustand S8 alle Speicherpositionen gelesen, und nach Erreichen der letzten Adresse geht das System in Zustand S9, in dem der Speicher deaktiviert wird, und die Prüfung ist beendet. Als einziges bleibt die Ausgabe der Informationen zur Prüfungsauswertung einschließlich des Signaturmusters, das hier nicht abgebildet ist.
  • BEVORZUGTE AUSFÜHRUNGSFORMEN VON VERSCHIEDENEN PRÜFUNGSSUBSYSTEMEN
  • Figur 8 zeigt eine exemplarische Schaltungsrealisierung des Selbstprüfungs-Steuergerätes (Teil 42 in Figur 3). Die Programmierung erfolgt in dem programmierbaren Logik-Array PLA 100 mit ausreichender Speicherkapazität. Es sind neun Eingänge und neun Ausgänge vorhanden. Die Eingänge sind folgende: Zustandseingänge 102, die die zehn Zustände aus Figur 6 (S0 ... S9) definieren können. Eingang 104 gibt die Richtung der Adressen-Inkrementierung an. Eingang 108 gibt die invertierte oder normale Situation in bezug auf die Daten (Spalte 4 in Figur 6) an. Eingang 110 signalisiert das Erreichen des letzten Daten-Hintergrundes: Das betreffende Signal wird durch den im folgenden zu beschreibenden Datengenerator erzeugt; der Block gibt die Signalisierung eines stabilen Zustandes an. Eingang 112 gibt das Erreichen der letzten Adresse eines Zyklus durch alle Speicheradressen an. Eingang 114 signalisiert den Ablauf der Wartezeit für die Datenhalteprüfung. Die Signale 112, 114 werden durch den im folgenden beschriebenen Adressen-/Wartezähler erzeugt; der Block gibt die Realisierung eines stabilen Zustandes an.
  • Die Ausgänge des PLA sind folgende: Die Ausgänge 116 geben den nächsten zu erreichenden Zustand des Systems an und sind über die Halte-Registerzellen mit den Eingängen 102 rückgekoppelt. Ausgang 118 aktiviert das im folgenden beschriebene LFSR (linear feedback shift register, Lineares Rückkopplungs-Schieberegister), um ein Signaturmuster zu erzeugen. Ausgang 120 gibt die nächste zu aktivierende Adresse an. Ausgang 122 gibt an, daß die Daten zu invertieren sind. Ausgang 124 gibt an, daß die Richtung der Adressen-Inkrementierung umzukehren ist. Ausgang 126 gibt an, daß der nächste Daten-Hintergrund zu aktivieren ist. Die Ausgangssignale werden folgendermaßen verarbeitet: Die Ausgänge 122, 126 sind mit dem Datengenerator verbunden, der durch Block 128 symbolisiert wird. Ausgang 120 ist mit dem Adressenzähler verbunden, der durch Block 130 symbolisiert wird. Die Zustandsausgänge Out 4, Out 3 sind mit dem durch Block 134 symbolisierten RAM-Speicher verbunden, um dort die Betriebsarten Aktivieren/Deaktivieren bzw. Schreiben/Lesen zu steuern. Die lokalen Eingangssignale (102, 104, 108) werden durch die Flipflops 132 erzeugt, deren Aufbau in Block 136 genauer dargestellt ist: Die eigentliche Registerzelle 138 ist ein Daten- Flipflop, das durch den Takt clk gesteuert wird; ihm ist ein 2:1-Multiplexer 140 vorgeschaltet, der durch das oben beschriebene Steuersignal C1 gesteuert wird. Er hat zwei Eingänge, und zwar den Selbstprüfungs-Eingang und den seriellen Scan-Eingang. Element 142 ist eine weitere derartige Zelle, die durch den PLA-Ausgang Out 1 versorgt wird. Die Zellen 142, 132 können in einem seriellen Schieberegister zur Ausführung einer Scan-Prüfung so verbunden werden, daß sie durch Eingang 144 gespeist werden und die Daten über Ausgang 146 ausgegeben werden. Zusammen stellen sie den schraffierten Teil 68 des Steuergerätes 42 in Figur 3 dar. Der Ausgang von Element 142 ist mit dem signaturbildenden Gerät verbunden, das im folgenden beschrieben wird. Die Ausgangssignale 122, 124 werden über ein EXKLUSIV-ODER-Gatter ihren zugehörigen Register-Flipflops zugeführt. Die Eingänge 104, 102 zum PLA 100 sind mit dem Adressenzähler 130 verbunden, um dort die Richtung der Adressen-Inkrementierung umzukehren und die Wartezeit für die Datenhalteprüfung zu aktivieren.
  • Das PLA kann durch eine kombinatorische Logik mit der gleichen Funktionalität ersetzt werden (z.B. eine Standardzellen-Ausführung oder eine Gatter- Matrix). Da das PLA alle Informationen zum Prüfalgorithmus enthält, braucht nur das PLA neu entworfen zu werden, wenn ein anderer Prüfalgorithmus verwendet wird.
  • Figur 9 zeigt eine exemplarische Schaltungsrealisierung eines parametrierbaren Datengenerators. Für ein Datenmuster mit acht Bits besteht dieser Datengenerator aus acht Stufen, die jeweils einen Multiplexer mit drei Eingängen (200 ... 214) und eine Registerzelle enthalten, die entsprechend Figur 4 modifiziert wurde (216 ... 230). Mit ihren S-Eingängen kann diese Registerzelle einen Teil einer seriellen Scan-Kette bilden. Jeder Eingangs-Multiplexer versorgt eine Registerzelle, die mit dem Ausgang des vorgenannten Bauelementes verbunden ist. Die Registerzellen wiederum versorgen ihre jeweiligen Eingangsmultiplexer folgendermaßen: Ein Signal INVDATA = 1, unter Synchronisierungssteuerung (nicht abgebildet), invertiert die Daten mit Hilfe des invertierenden Eingangs 01 (angegeben durch einen Kreis). Dies impliziert, daß alle gespeicherten Datenbits gleichzeitig invertiert werden. Das zugehörige Steuerbit wird durch die Anordnung aus Figur 8 erzeugt. Das invertierte Datenbit wird gespeichert.
  • Unter der Steuerung eines Steuersignals NEXTDBGR = 1 wird das nächstfolgende Muster in den Registerzellen gespeichert, indem jedesmal der Ausgang von Registerzelle j den Eingang 10 der Eingangs-Multiplexer von der Registerzelle 2j, 2j+i versorgt, also von 216 nach 200, 202, von 218 nach 204, 206, von 220 nach 208, 210, von 222 nach 212, 214. Die Parametrierung erfolgt auf einfache Weise folgendermaßen: Durch Übergehen auf die doppelte Länge (16 Bit) werden die Ausgangssignale der Registerzellen 224 - 230 zu den Multiplexer-Eingängen der nächstfolgenden acht Stufen geleitet. Dies impliziert eine zusätzliche Verbindung für jede Bitlängen-Zunahme des Musters.
  • Unter der Steuerung von zwei Steuersignalen INVDATA = 0 und NEXTDBGR = 0 wird das Bit in der entsprechenden Registerzelle zum zugehörigen Multiplexer-Eingang zurückgekoppelt und in der Registerzelle wiederhergestellt. Auf diese Weise wird dafür gesorgt, daß die Anordnung vollständig synchron arbeitet. Die Registerzellen sind oben in der Figur genauer dargestellt. Alle Registerzellen können einen Datenbit-Eingang des Speichers versorgen. Außerdem können alle Registerzellen mit ihren S-Eingängen zu einer seriellen Scan-Kette verbunden werden.
  • Die Kombination der Steuersignale NEXTDBGR = 1 und INVDATA = 1 tritt nicht auf. Die Registerzelle 230 versorgt eine zusätzliche Registerzelle 232 (die mit einem Multiplexer 234 mit zwei Eingängen und einem weiteren Multiplexer 236 mit zwei Eingängen versehen ist). Das Ausgangssignal dieser Registerzelle gibt an, daß der letzte Daten-Hintergrund aufgetreten ist. Der Multiplexer 234 wählt zwischen dem Scan-Betrieb und dem Selbstprüfungs-Betrieb. Der Multiplexer 239 wählt zwischen dem vorhandenen Daten-Hintergrund, der synchron zurückgekoppelt und wiederhergestellt wird, und dem nächsten Daten-Hintergrund, der unter der Steuerung des Steuersignals NEXTDBGR seinem -1-Eingang zugeführt wird. Die letztgenannte Möglichkeit liegt vor, wenn Bits in den Zellen 216 und 222 das gleiche Vorzeichen haben: Dann ist das neue Muster der letzte Daten-Hintergrund. Bei einem 16-Bit-Muster muß das EXKLUSIV-ODER-Gatter 238 durch die erste und die achte Registerzelle versorgt werden. Das Ausgangssignal der Zelle 232 dient für den Eingang 110 in Figur 8. Wenn die Folgemuster für den Daten-Hintergrund auf eine andere Weise erzeugt werden, muß die Erkennung des letzten Daten-Hintergrundes unmittelbar berichtigt werden.
  • Auf der anderen Seite ist der Datengenerator für einen bitorientierten Speicher besonders einfach, da er nur aus einem einzigen Flipflop und wenigen Gattern besteht. Die beiden erforderlichen Daten-Hintergründe werden durch Invertieren des Flipflops erzeugt.
  • Die Figuren 10a, b, c, d zeigen eine exemplarische Schaltungsrealisierung eines Acht-Bit-Adressengenerator-Zählers une eines digitalen Drei-Bit-Wartezählers sowie insbesondere die für den Einsatz in dieser Anordnung angepaßten Zellen.
  • Der Adressengenerator und der Wartezähler sind kombiniert, um die Speicherkosten zu reduzieren. Die Anzahl der Adreßbits und die Anzähl der Wartezähler-Bits definieren zusammen mit der Taktfrequenz die Gesamt-Wartezeit für die Datenhalteprüfung.
  • Zwei mögliche Schaltungsausführungen des Adreßzählers werden berücksichtigt: ein lineares Rückkopplungs-Schieberegister (Linear Feedback Shift Register, LFSR) und ein binärer Aufwärts-/Abwärts-Zähler. Das LFSR weist für diesen Zweck jedoch einige Nachteile auf:
  • 1. Der Reihenfolge der Adressenabtastung kann nicht ohne einen erheblichen Aufwand an zusätzlicher Logik umgekehrt werden.
  • 2. Die Erzeugung der Adresse aus reinen Nullen (all zero) erfordert zusätzliche Hardware.
  • 3. Die Erzeugung eines Ausführungs-Signals erfordert zusätzliche Logik.
  • Wir haben eine Ausführung mit einem binären Aufwärts-/Abwärts-Zähler gewählt, weil hiermit eine kleinere Schaltung erreicht wurde. Ein Problem beim Binärzähler stellt die Verzögerung des Ripple-Übertragssignals dar. Einschließlich des Wartezählers kann sich die Anzahl der Stufen im Zähler auf bis zu 20 Bits belaufen. Wir haben dieses Problem gelöst, indem wir einen Aufwärts-/Abwärts-Zähler mit Pipeline-Übertragssignal entworfen haben. Die maximale Verzögerung wird auf diese Weise auf die Verzögerung einer Reihe von vier UND-Gattern mit zwei Eingängen reduziert.
  • Damit können alle Adressen erzeugt werden. Es gibt eine Adresse, an der die Folge zurückkehren kann. Bei jeder Adresse kann die Zählung angehalten werden; die Adressen-Erzeugung ist synchron. Für beide Zählrichtungen wird ein Signal geliefert, das das Erreichen der letzten Zählposition angibt. Der Entwurf ist parametrierbar. Die Adressenzähler-Zellen sind entsprechend Figur 10b angepaßt. Die eigentliche Zelle hat einen Eingangs-Multiplexer und zwei zusätzliche EXKLUSIV-ODER-Gatter. Der Multiplexer wird durch das bei 130 in Figur 8 dargestellte Signal "-nextaddr" und "addr.dir" gesteuert. Das erste EXKLUSIV-ODER-Gatter ändert unter der Steuerung des Übertrag-Eingangssignals (carry-in) den Inhalt der Registerzelle. Das zweite EXKLUSIV-ODER-Gatter des Signals für die Richtung der Adressen-Inkrementierung und des Zelleninhaltes erzeugt das Übertrag-Ausgangssignal (carry-out) für die nächste Stufe. Eine Reihe von UND-Gattern erzeugt unter der Steuerung der Übertrag-Eingangssignale (carry-in) und -Ausgangssignale (carry-out) das Ripple-Übertragssignal. Der Wartezähler hat in diesem Fall drei Stufen, die in Figur 10d genauer dargestellt sind. Diese sind etwas einfacher, da sie nur in einer Richtung zu zählen brauchen. Der Wartezähler stellt die höchstwertigen Bit-Stufen in bezug auf den Adressenzähler dar.
  • Um den Zähler schneller zu machen, wurden zwei Pipeline-Flipflops zwischen die Reihen von Ripple-UND-Gattern eingefügt, die in Figur 10c ausführlich dargestellt sind. Insoweit ihre einzige Funktion darin besteht, das Eingangssignal vom Ausgangssignal zu trennen, ist ihr Aufbau sehr einfach. Das Erreichen der letzten Adresse einer Adressensequenz wird durch ein UND-Gatter am Ausgang der achten Stufe signalisiert. Dieses Signal wird zum Eingang 112 in Figur 8 weitergeleitet. Die niedrigste Bitposition des Wartezählerpostens erhält ein Aktiviersignal aus Figur 3 (Block 130). Die höchste Bitposition des Wartezählers gibt ein Signal "Ende der Wartezeit" an den Eingang 114 in Figur 8 weiter.
  • Das in Figur 10a dargestellte schnelle Ripple-Netzwerk selbst war Gegenstand der niederländischen Patentanmeldung 8800860 vom 5. April 1988, die der internationalen Patentanmeldung WO 89/10028 entspricht, das durch Nennung als hierin aufgenommen betrachtet wird. Der Kürze halber wird die Funktionsweise dieser Schaltung nicht weiter beschrieben.
  • Figur 11l zeigt eine exemplarische Schaltungsrealisierung für einen Acht- Bit-Signaturgenerator oder Datenrezeptor und Figur 11 eine hierfür modifizierte Registerzelle.
  • Die Daten, die durch den RAM-Speicher während der Lese-Vorgänge des Prüfalgorithmus erzeugt werden, werden zum Datenrezeptor geleitet. Es gibt zwei Möglichkeiten, diese Daten mit den erwarteten Daten zu vergleichen:
  • 1. Die gelesenen Daten während jedes Lese-Vorgangs mit den erwarteten Daten vergleichen und ein PASS/FAlL-Bit setzen, wenn eine Abweichung erkannt wird.
  • 2. Die Daten auf dem Chip durch polynome Division in einem parallelen Signatur-Analysator (PSA) komprimieren. Der resultierende Inhalt des PSA wird als Signatur bezeichnet.
  • Wir wählen die LFSR-Implementierung, da bei dieser Lösung die Speicherkosten gering sind und die Verzögerung eines LFSR gering und von der Anzahl der Bits unabhängig ist.
  • Nach der Beendigung der Selbstprüfung muß die resultierende Signatur mit einer Signatur verglichen werden, die zuvor durch ein spezielles Software-Tool errechnet wurde. Der Vergleich erfolgt außerhalb des Chips. Aus diesem Grunde muß die Signatur nach der Beendigung der Prüfung aus dem PSA herausgeschoben werden. Ein Halte-Betrieb ist beim PSA erforderlich, um zu verhindern, daß die resultierende Signatur nach der Beendigung der Prüfung im PSA verlorengeht. Das Halte-Steuersignal wird im Selbstprüfungs-Steuergerät erzeugt.
  • Da die Fehlererfassung des PSA mit der Reduzierung der Anzahl PSA- Stufen exponentiell abnimmt, werden mindestens acht PSA-Stufen für erforderlich gehalten. Normalerweise entspricht die Anzahl der PSA-Stufen der Anzahl Datenausgänge des SRAM. Wenn die Anzahl der Datenausgänge des SRAM kleiner ist als acht, werden die restlichen PSA-Eingänge mit Vss verbunden.
  • Die Figur zeigt eine mögliche Schaltungsrealisierung für einen Acht-Bit- PSA. Ein Minimal-Polynom wird im PSA verwendet, um eine maximale Fehlererfassung sicherzustellen und Timing-Probleme aufgrund von Polynom-Rückkopplungen im PSA auf ein Minimum zu reduzieren. Die Wahl des Startparameters des PSA (Initialisierung) ist willkürlich. Wir wählen der Einfachheit halber das Wort, das nur aus Nullen besteht.
  • Figur 11a zeigt den Aufbau einer einzigen Zelle in allen Einzelheiten. Sie ist mit dem Standard-Speicher-Port versehen, dem ein Multiplexer vorgeschaltet ist, der zwischen Prüfungs-Betrieb und seriellem Scan-Betrieb wählt, sowie ein zweiter Multiplexer, der zwischen dem vorliegenden Zelleninhalt (über Rückkopplung) und einem Prüfsignal wählt, das durch ein EXKLUSIV-ODER-Gatter gesteuert wird. Die Wahl wird durch ein LFSR-Aktivier-Signal gesteuert, das durch das Element 142 in Figur 8 erzeugt wird. Die Eingangs-EXKLUSIV-ODER-Gatter können ein Datenbit direkt vom RAM erhalten. Weitere EXKLUSIV-ODER-Gatter bilden die Rückkopplungsregister maximaler Länge auf in der Technik bekannte Weise. Der Ausgang ist seriell. Wenn der RAM-Speicher eine kleinere Datenbreite hat, brauchen weniger Stufen durch den Datenausgang versorgt werden.

Claims (6)

1. Speicheranordnung, die einen wortorientierten statischen RAM-Speicher enthält, und daran angeschlossen
- ein Adreßregister (24),
- ein Dateneingangsregister (30) mit aufeinanderfolgenden Bitpositionen und
- ein Steuerregister (38),
wobei alle diese Register extern zugängliche funktionelle Verbindungen für die Kommunikation von Informationen haben und wobei ein erstes Steuermittel vorgesehen ist, um den genannten Speicher wahlweise in einem Betriebszustand oder in einem Selbstprüfungs-Zustand zu aktivieren; wobei im genannten Betriebszustand das genannte Adreßregister (24) und das genannte Dateneingangsregister (30) wirksam mit dem Speicher verbunden sind, und wobei im genannten Selbstprüfungs-Zustand das genannte Adreßregister (24), das genannte Dateneingangsregister (30) und das genannte Steuerregister (38) wirksam sind, um bei Abwesenheit jeglicher Införmationskommunikation über einen Informationseingang der Speicheranordnung aufeinanderfolgende Datentestmuster und Adressenprüfmuster zum Schreiben in den Speicher zu bilden, dadurch gekennzeichnet, daß für das genannte Dateneingangsregister (30) ein Voreinstell- Mechanismus vorgesehen ist, um im letztgenannten Register ein anfängliches Datentestmuster zu erzeugen, das eine maximale Anzahl 1-0-Differenzen zwischen den aufeinanderfolgenden Bitpositionen hat, wobei das Dateneingangsregister mit einem zweiten Steuermittel versehen ist, um aus dem genannten Datentestmuster weitere nachfolgende Datentestmuster zu erzeugen und wobei das zweite Steuermittel so angeordnet ist, daß die Bits von der ersten Hälfte des Datentestmusters jeweils auf zwei Bits in einem nächstfolgenden Testmuster projiziert werden.
2. Speicheranordnung nach Anspruch 1, dadurch gekennzeichnet, daß alle genannten Register (24, 30, 38) jeweils Teile einer seriell aktivierbaren Prüf- Scan-Kette darstellen, die einen seriellen Eingang (62) zum Empfangen von Voreinstell- Information und einen seriellen Ausgang (64) zum Ausgeben eines Signaturmusters hat, wobei das erste Steuermittel vorgesehen ist, um den genannten Speicher abwechselnd in einem Scan-Zustand, im Betriebszustand oder im Selbstprüfungs-Zustand zu aktivieren; wobei im genannten Scan-Zustand alle Register (24, 30, 38) gekoppelt sind, um ein serielles Schieberegister in der genannten Scan-Kette zu bilden.
3. Speicheranordnung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß im genannten Selbstprüfungs-Zustand das genannte Adreßregister (24), das genannte Dateneingangsregister (30) und das genannte Steuerregister (38) wirksam sind, um die anfänglichen Datentestmuster und die nachfolgenden weiteren Datenmuster jeweils in alle Wort-Speicherplätze im Speicher einzuschreiben.
4. Speicheranordnung nach einem der vorhergehenden Ansprüche 1 bis 3, dadurch gekennzeichnet, daß das genannte Adreßregister (24) mit einem Ablaufsteuerungsmittel versehen ist, um ein Initialisierungsmuster sequentiell in eine Folge von Folgemustern umzusetzen, und daß das genannte Umsetzungsmittel synchron mit der Erzeugung der genannten Folgemuster arbeitet.
5. Speicheranordnung nach Anspruch 4, dadurch gekennzeichnet, daß diese Anordnung ein Datenausgangsregister (36) enthält, das wirksam ist für das Empfangen von aufeinanderfolgenden Datenergebnismustern und ein Umsetzungsmittel zum anschließenden Umsetzen der aufeinanderfolgenden Datenergebnismuster in ein Signaturmuster, wobei das Umsetzungsmittel über einen Halte-Zustand zum Erhalten von hierin erzeugten vorläufigen Signaturmustern verfügt.
6. Integrierte Schaltung mit einer Speicheranordnung nach mindestens einem der Ansprüche 1 bis 5, und mit einem weiteren Datenverarbeitungs-Subsystem, das im genannten Betriebszustand wirksam mit mindestens einem genannten Dateneingangsregister oder einem genannten Adreßregister oder einem Datenausgang des Speichers verbunden ist.
DE3886038T 1988-07-13 1988-07-13 Speichergerät, das einen zur Ausführung einer Selbstprüfung adaptierten statischen RAM-Speicher enthält und integrierte Schaltung, die als eingebauten statischen RAM-Speicher ein solches Gerät enthält. Expired - Fee Related DE3886038T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP88201501A EP0350538B1 (de) 1988-07-13 1988-07-13 Speichergerät, das einen zur Ausführung einer Selbstprüfung adaptierten statischen RAM-Speicher enthält und integrierte Schaltung, die als eingebauten statischen RAM-Speicher ein solches Gerät enthält

Publications (2)

Publication Number Publication Date
DE3886038D1 DE3886038D1 (de) 1994-01-13
DE3886038T2 true DE3886038T2 (de) 1994-05-19

Family

ID=8199820

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3886038T Expired - Fee Related DE3886038T2 (de) 1988-07-13 1988-07-13 Speichergerät, das einen zur Ausführung einer Selbstprüfung adaptierten statischen RAM-Speicher enthält und integrierte Schaltung, die als eingebauten statischen RAM-Speicher ein solches Gerät enthält.

Country Status (5)

Country Link
US (1) US5325367A (de)
EP (1) EP0350538B1 (de)
JP (1) JP3162061B2 (de)
KR (1) KR970004074B1 (de)
DE (1) DE3886038T2 (de)

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR920001079B1 (ko) * 1989-06-10 1992-02-01 삼성전자 주식회사 직렬데이타 통로가 내장된 메모리소자의 테스트방법
US5173906A (en) * 1990-08-31 1992-12-22 Dreibelbis Jeffrey H Built-in self test for integrated circuits
JPH06504396A (ja) * 1991-01-11 1994-05-19 シーメンス アクチエンゲゼルシヤフト マクロセルとして半導体素子に配置されたメモリを自己検査方式で検査するための方法およびこの方法を実施するための装置
US5528600A (en) 1991-01-28 1996-06-18 Actel Corporation Testability circuits for logic arrays
FR2682522B1 (fr) * 1991-10-11 1997-01-10 Sgs Thomson Microelectronics Procede pour verifier le contenu apres effacement d'une memoire permanente effacable, notamment de type eprom, dispositif pour sa mise en óoeuvre et memoire integrant ce dispositif.
CZ383292A3 (en) * 1992-02-18 1994-03-16 Koninkl Philips Electronics Nv Method of testing electronic circuits and an integrated circuit tested in such a manner
EP0599524A3 (de) * 1992-11-24 1996-04-17 Advanced Micro Devices Inc Selbsttest für integrierte Speichernetzwerke.
US5627842A (en) * 1993-01-21 1997-05-06 Digital Equipment Corporation Architecture for system-wide standardized intra-module and inter-module fault testing
US5450455A (en) * 1993-06-28 1995-09-12 Tandem Computers Incorporated Method and apparatus for including the states of nonscannable parts in a scan chain
US5416783A (en) * 1993-08-09 1995-05-16 Motorola, Inc. Method and apparatus for generating pseudorandom numbers or for performing data compression in a data processor
US5617531A (en) * 1993-11-02 1997-04-01 Motorola, Inc. Data Processor having a built-in internal self test controller for testing a plurality of memories internal to the data processor
US5448525A (en) * 1994-03-10 1995-09-05 Intel Corporation Apparatus for configuring a subset of an integrated circuit having boundary scan circuitry connected in series and a method thereof
US5608897A (en) * 1994-04-05 1997-03-04 International Business Machines Corporation Programmable linear feedback shift register timeout mechanism
US5592493A (en) * 1994-09-13 1997-01-07 Motorola Inc. Serial scan chain architecture for a data processing system and method of operation
US6070252A (en) * 1994-09-30 2000-05-30 Intel Corporation Method and apparatus for interactive built-in-self-testing with user-programmable test patterns
US5535164A (en) * 1995-03-03 1996-07-09 International Business Machines Corporation BIST tester for multiple memories
US5675545A (en) * 1995-09-08 1997-10-07 Ambit Design Systems, Inc. Method of forming a database that defines an integrated circuit memory with built in test circuitry
US5867507A (en) * 1995-12-12 1999-02-02 International Business Machines Corporation Testable programmable gate array and associated LSSD/deterministic test methodology
US5748640A (en) * 1996-09-12 1998-05-05 Advanced Micro Devices Technique for incorporating a built-in self-test (BIST) of a DRAM block with existing functional test vectors for a microprocessor
US5909049A (en) 1997-02-11 1999-06-01 Actel Corporation Antifuse programmed PROM cell
US5961653A (en) * 1997-02-19 1999-10-05 International Business Machines Corporation Processor based BIST for an embedded memory
US5954830A (en) * 1997-04-08 1999-09-21 International Business Machines Corporation Method and apparatus for achieving higher performance data compression in ABIST testing by reducing the number of data outputs
US6115789A (en) * 1997-04-28 2000-09-05 International Business Machines Corporation Method and system for determining which memory locations have been accessed in a self timed cache architecture
US6272588B1 (en) 1997-05-30 2001-08-07 Motorola Inc. Method and apparatus for verifying and characterizing data retention time in a DRAM using built-in test circuitry
US6205564B1 (en) * 1997-06-02 2001-03-20 Lucent Technologies Inc. Optimized built-in self-test method and apparatus for random access memories
US6115836A (en) * 1997-09-17 2000-09-05 Cypress Semiconductor Corporation Scan path circuitry for programming a variable clock pulse width
US5953285A (en) * 1997-09-17 1999-09-14 Cypress Semiconductor Corp. Scan path circuitry including an output register having a flow through mode
US6006347A (en) * 1997-09-17 1999-12-21 Cypress Semiconductor Corporation Test mode features for synchronous pipelined memories
US5936977A (en) 1997-09-17 1999-08-10 Cypress Semiconductor Corp. Scan path circuitry including a programmable delay circuit
US6161204A (en) * 1998-02-17 2000-12-12 Micron Technology, Inc. Method and apparatus for testing SRAM memory cells
US6473727B1 (en) * 1998-03-06 2002-10-29 Lsi Logic Corporation Processor development systems
US6173425B1 (en) 1998-04-15 2001-01-09 Integrated Device Technology, Inc. Methods of testing integrated circuits to include data traversal path identification information and related status information in test data streams
US6260164B1 (en) * 1998-07-31 2001-07-10 International Business Machines Corporation SRAM that can be clocked on either clock phase
GB2345976B (en) * 1999-01-22 2003-06-25 Sgs Thomson Microelectronics Test circuit for memory
KR100305679B1 (ko) * 1999-02-24 2001-09-26 윤종용 반도체 메모리 장치의 테스터의 테스터 방법 및 그 장치
DE19911939C2 (de) * 1999-03-17 2001-03-22 Siemens Ag Verfahren für den eingebauten Selbsttest einer elektronischen Schaltung
US6286116B1 (en) * 1999-03-26 2001-09-04 Compaq Computer Corporation Built-in test method for content addressable memories
GB9911043D0 (en) * 1999-05-12 1999-07-14 Sgs Thomson Microelectronics Memory circuit
US6560740B1 (en) 1999-08-03 2003-05-06 Advanced Micro Devices, Inc. Apparatus and method for programmable built-in self-test and self-repair of embedded memory
IT1313865B1 (it) * 1999-11-11 2002-09-24 St Microelectronics Srl Apparato per la verifica della ritenzione di dati in memorie nonvolatili.
US6327687B1 (en) 1999-11-23 2001-12-04 Janusz Rajski Test pattern compression for an integrated circuit test environment
US6557129B1 (en) 1999-11-23 2003-04-29 Janusz Rajski Method and apparatus for selectively compacting test responses
US9664739B2 (en) 1999-11-23 2017-05-30 Mentor Graphics Corporation Continuous application and decompression of test patterns and selective compaction of test responses
WO2001039254A2 (en) * 1999-11-23 2001-05-31 Mentor Graphics Corporation Continuous application and decompression of test patterns to a circuit-under-test
US6353842B1 (en) 1999-11-23 2002-03-05 Janusz Rajski Method for synthesizing linear finite state machines
US7493540B1 (en) 1999-11-23 2009-02-17 Jansuz Rajski Continuous application and decompression of test patterns to a circuit-under-test
US6684358B1 (en) * 1999-11-23 2004-01-27 Janusz Rajski Decompressor/PRPG for applying pseudo-random and deterministic test patterns
US8533547B2 (en) * 1999-11-23 2013-09-10 Mentor Graphics Corporation Continuous application and decompression of test patterns and selective compaction of test responses
US9134370B2 (en) 1999-11-23 2015-09-15 Mentor Graphics Corporation Continuous application and decompression of test patterns and selective compaction of test responses
US6874109B1 (en) 1999-11-23 2005-03-29 Janusz Rajski Phase shifter with reduced linear dependency
US6643807B1 (en) 2000-08-01 2003-11-04 International Business Machines Corporation Array-built-in-self-test (ABIST) for efficient, fast, bitmapping of large embedded arrays in manufacturing test
US6979504B2 (en) * 2001-07-25 2005-12-27 Ballard Power Systems Inc. Fuel cell system automatic power switching method and apparatus
US20030022036A1 (en) * 2001-07-25 2003-01-30 Ballard Power Systems Inc. Fuel cell controller self inspection
US7401271B1 (en) * 2001-08-20 2008-07-15 Emc Corporation Testing system and method of using same
US7290184B2 (en) * 2001-08-23 2007-10-30 Seagate Technology Llc Emulation system for evaluating digital data channel configurations
JP2005004876A (ja) * 2003-06-11 2005-01-06 Toshiba Corp 半導体記憶装置とその評価方法
US7546505B2 (en) * 2006-11-08 2009-06-09 Lsi Corporation Built in self test transport controller architecture
US7707467B2 (en) * 2007-02-23 2010-04-27 Micron Technology, Inc. Input/output compression and pin reduction in an integrated circuit
US7913128B2 (en) 2007-11-23 2011-03-22 Mosaid Technologies Incorporated Data channel test apparatus and method thereof
US7779316B2 (en) * 2007-12-05 2010-08-17 Oracle America, Inc. Method of testing memory array at operational speed using scan
KR100994669B1 (ko) 2008-05-19 2010-11-16 프롬써어티 주식회사 메모리 성능 파라미터의 측정 대기시간을 제어하는 장치
TW201126529A (en) * 2010-01-18 2011-08-01 Realtek Semiconductor Corp Memory with self-testing function and the test method thereof
US9104568B2 (en) 2013-03-15 2015-08-11 International Business Machines Corporation Detection of memory cells that are stuck in a physical state

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3961251A (en) * 1974-12-20 1976-06-01 International Business Machines Corporation Testing embedded arrays
JPS6244674A (ja) * 1985-08-23 1987-02-26 Toshiba Corp 評価容易化回路
US4701920A (en) * 1985-11-08 1987-10-20 Eta Systems, Inc. Built-in self-test system for VLSI circuit chips
US4903266A (en) * 1988-04-29 1990-02-20 International Business Machines Corporation Memory self-test

Also Published As

Publication number Publication date
EP0350538B1 (de) 1993-12-01
JP3162061B2 (ja) 2001-04-25
KR970004074B1 (ko) 1997-03-24
DE3886038D1 (de) 1994-01-13
US5325367A (en) 1994-06-28
JPH0287400A (ja) 1990-03-28
KR900002331A (ko) 1990-02-28
EP0350538A1 (de) 1990-01-17

Similar Documents

Publication Publication Date Title
DE3886038T2 (de) Speichergerät, das einen zur Ausführung einer Selbstprüfung adaptierten statischen RAM-Speicher enthält und integrierte Schaltung, die als eingebauten statischen RAM-Speicher ein solches Gerät enthält.
DE2728676C2 (de) Stufenempfindliches, als monolithisch hochintegrierte Schaltung ausgeführtes System aus logischen Schaltungen mit darin eingebetteter Matrixanordnung
DE69825234T2 (de) Verfahren und vorrichtung zur selbstprüfung von multi-port-rams
DE68921269T2 (de) Integrierte Prüfschaltung.
DE2555439C2 (de) Monolithische hochintegrierte Halbleiterschaltung
DE3788487T2 (de) Integrierte Schaltung mit Speicherselbstprüfung.
DE2349377C2 (de) Schaltwerk zur Durchführung von Datenverarbeitungsoperationen
DE2349324C2 (de) Verfahren zum Prüfen einer Funktionseinheit und Einrichtung zur Durchführung des Verfahrens
DE60220511T2 (de) Verfahren und system zur optimierung der testkosten und deaktivierungsdefekte für scan- und bist-speicher
DE102011053359B4 (de) Latch-basierte Speichervorrichtung und Verfahren zum Testen derselben
DE10150321A1 (de) Verfahren und Vorrichtung zum Testen von integrierten Schaltungen
DE2517356A1 (de) In datenverarbeitungsanlagen universell einsetzbarer logischer modul- baustein
DE2614000A1 (de) Einrichtung zur diagnose von funktionseinheiten
DE102004009693A1 (de) Technik zum Kombinieren eines Abtasttests und eines eingebauten Speicherselbsttests
DE3788586T2 (de) Schaltung zur Prüfung des Eingangsspannungssignals für eine halbleiterintegrierte Schaltung.
DE19630746A1 (de) Verfahren und Vorrichtung zum Testen einer Assoziativspeicherschaltung und einer Assoziativspeicherschaltung mit redundanter Funktion
EP0186724A1 (de) Prüf- und Diagnoseeinrichtung für Digitalrechner
DE69912545T2 (de) Schaltkreis mit einer einheit zum testen von verbindungen und ein verfahren zum testen von verbindungen zwischen einem ersten und zweiten elektronischen schaltkreis
DE69016509T2 (de) Integrierte Halbleiterschaltungsanordnung mit Testschaltung.
DE3412677C2 (de)
DE3782020T2 (de) Elektronischer zaehler.
EP0628832B1 (de) Integrierte Schaltung mit Registerstufen
DE3814875C2 (de)
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

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: PHILIPS ELECTRONICS N.V., EINDHOVEN, NL

8327 Change in the person/name/address of the patent owner

Owner name: KONINKLIJKE PHILIPS ELECTRONICS N.V., EINDHOVEN, N

8339 Ceased/non-payment of the annual fee