DE3587374T2 - Halbleiterspeichergeraet mit einer bit-fehlererkennungsfunktion. - Google Patents

Halbleiterspeichergeraet mit einer bit-fehlererkennungsfunktion.

Info

Publication number
DE3587374T2
DE3587374T2 DE8585102254T DE3587374T DE3587374T2 DE 3587374 T2 DE3587374 T2 DE 3587374T2 DE 8585102254 T DE8585102254 T DE 8585102254T DE 3587374 T DE3587374 T DE 3587374T DE 3587374 T2 DE3587374 T2 DE 3587374T2
Authority
DE
Germany
Prior art keywords
parity
data
memory cells
bits
memory
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 - Lifetime
Application number
DE8585102254T
Other languages
English (en)
Other versions
DE3587374D1 (de
Inventor
Jun-Ichi C O Patent Tsujimoto
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Application granted granted Critical
Publication of DE3587374D1 publication Critical patent/DE3587374D1/de
Publication of DE3587374T2 publication Critical patent/DE3587374T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Detection And Correction Of Errors (AREA)
  • Dram (AREA)

Description

  • Diese Erfindung betrifft ein Halbleiterspeichergerät mit einer Bit-Fehlererkennungsfunktion zum Detektieren einer Bit-Fehlerkorrektur.
  • In den neuesten in Mikrotechnik hergestellten Halbleiterspeichergeräten wurden die grundlegenden Bauelemente bezüglich der Größe beachtlich verkleinert, und ihre Packungsdichte wurde vergrößert. Ferner ist die Menge der Ladung, die als Datum gespeichert ist, minimal. Die darin gespeicherten Daten sind dementsprechend empfindlich auf externe Strahlen, wie z. B. Alpha-Strahlen. Als ein Ergebnis wird ein ernst zunehmendes Soft-Fehlerproblem (bzw. Fehlerproblem durch Fremdkörpereinwirkung) verursacht. Auf diese Weise kann der Bitfehler infolge z. B. Alpha-Strahlen einfach in einem Speichergerät mit hoher Packungsdichte auftreten. Wenn der Bitfehler auftritt, ist es natürlich notwendig, ihn zu detektieren und zu korrigieren.
  • Ein typisches herkömmliches Detektierungs- und Korrekturssystem eines Bitfehlers wird kurz mit Bezug auf Fig. 1 dargestellt. In dieser Abbildung ist eine Vielzahl von Speicherzellen 1, wobei jede ein einziges Bit speichert, in einer vertikalen (X)-Richtung und in einer horizontalen (Y)-Richtung in einem Matrixspeicherzellenarray 2 angeordnet. Zusätzlich zu dem Speicherzellenarray 2 ist eine erste Paritätsspeicherschaltung 4 bereitgestellt, welche aus einer Vielzahl von Paritätsspeicherzellen 3 zum Speichern der Paritätsbits für die horizontal angeordneten Speicherzellen des Speicherzellenarrays 2 besteht. Ferner ist eine zweite Paritätsspeicherschaltung 2 bereitgestellt, welche aus einer Vielzahl von Paritätsspeicherzellen 5 zum Speichern von Paritätsbits für die vertikal angeordneten Speicherzellen des Speicherzellenarrays 2 besteht.
  • Mit einer solchen Anordnung werden zum Speichern von Daten in die Speicherzellen 1 des Speicherzellenarays 2 die Paritätsbits sukzessive für die Daten all der Speicherzellen 1 des Speicherzellenarrays 2 Reihe für Reihe erhalten. Die erhaltenen Paritätsbits werden jeweils in die entsprechenden Paritätsspeicherzellen 3 der ersten Paritätsspeicherschaltung 4 gespeichert. Auf ähnliche Weise werden die Paritätsbits all der Daten in den Speicherzellen 1, welche in dem Speicherzellenarray 2 angeordnet sind, Spalte für Spalte erhalten. Die erhaltenen Paritätsbits werden jeweils in die entsprechenden Paritätsspeicherzellen 5 der zweiten Paritätsspeicherschaltung 6 gespeichert.
  • Zum Datenauslesen von den Speicherzellen 1 des Speicherzellenarrays 2 werden die Paritätsbits in den entsprechenden Paritätsspeicherzellen 3 der ersten Paritätsspeicherschaltung 4 ausgelesen. Das voreingestellte Paritätsbit in der Paritätsspeicherzelle 5 in der zweiten Paritätsspeicherschaltung 6 wird ausgelesen. Dann werden die von der Speicherzelle 1 ausgelesenen Daten auf Parität überprüft, wobei die ausgelesenen Paritätsbits verwendet werden. Es wird nämlich überprüft, ob ein Fehler in den ausgelesenen Daten enthalten ist oder nicht. Wenn ein Datenfehler detektiert ist, wird bestimmt, daß der Bitfehler auftritt, und die ausgelesenen Daten der Speicherzellen 1 werden bezüglich des Logikpegels invertiert und damit korrigiert.
  • Ein anderes bekanntes Verfahren zum Detektieren und Korrigieren des Bitfehlers von bis zu zwei Bits verwendet einen Adreßcomputer.
  • Das in Fig. 1 gezeigte Speichergerät kann den Bitfehler nur für ein Bit korrigieren. Ferner erfordert es Datenauslesebitleitungen zum Empfangen der ausgelesenen Daten von den Speicherzellen 1; eine für vertikale und die andere für horizontale. So muß die zusätzliche Bitleitung für die Vertikale in einem Design eines allgemeinen Typen eines Halbleiterspeichergeräts bereitgestellt werden, in welchem Wortleitungen in einer (vertikalen) Richtung bereitgestellt sind, und Bitleitungen in der anderen (horizontalen) Richtung. Dieses herkömmliche Speichergerät macht den Herstellungsprozeß komplizierter.
  • In dem Fall des Bitfehler-Detektions-/Korrektur-Verfahren, welches den Adreßcomputer verwendet, wenn er an das Halbleiterspeichergerät gelegt ist, ist ein Design des Speichergerätes, welches zu verwenden ist, von dem des konventionellen, welches große Schwierigkeiten verursacht, völlig verschieden. Ferner ist es notwendig, die Adressen in dem Halbleiterspeicherchip zu berechnen, was eine lange Zeitdauer zur Folge hat.
  • Ein Halbleiterspeichergerät, wie es im kennzeichnenden Teil im Anspruch 1 spezifiziert ist, ist von dem zum Stand der Technik gehörenden Dokument COMPUTER, vol. 14, no. 10, Oktober 1981, Tutorial Series 13, pages 93-110, IEEE, New York, US; AV PHOM et al.: "Computer Memory Systems" bekannt. In diesem Dokument ist jedoch nichts darüber geoffenbart, auf welcher Grundlage von Beziehungen Paritätsbitoperationen tatsächlich durchgeführt werden, und zahlreiche Wege für die Paritätsberechnung sind nur wertend erwähnt.
  • Einer dieser Wege ist in dem zum Stand der Technik gehörenden Dokument US-A-4 317 201 beschrieben, welches eine Fehlerdetektions- und -korrektur-RAM-Baugruppe offenbart, welche einen Paritätsgenerator und einen Paritätskomparator beinhaltet, um das Vorliegen eines Fehlers zu bestimmen. Der Paritätsgenerator antwortet auf Eingangsdatenbits entsprechend einer spezifischen Beziehung, um einige Überprüfungsbits zu erzeugen. Diese Überprüfungsbits werden in einen Überprüfungsbit-Speicherteilbereich eines RAMs geladen, so daß die Datenbits und die entsprechenden Überprüfungsbits in geeigneten Adressen-Speicherzellen in diesem RAM gespeichert sind. In anderen Worten verwendet die Baugruppe, die aus Dokument US-A-4 317 201 bekannt ist, eine Vielzahl von Überprüfungsbits zum Speichern der Paritätsbits, was auf verschiedenen Kombinationen der Datenbits basiert. Jedoch ist- es in dieser. RAM-Baugruppe unmöglich, auf alle einer Vielzahl von Datenbits zur gleichen Zeit zuzugreifen, da eine Vielzahl von Datenbits, welche zum Generieren der Paritätsbits verwendet werden, auf zufällige Art kombiniert sind. Dann ist es notwendig, auf die Datenbits in verschiedenen Zeiten zuzugreifen, so daß dieses bekannte Überprüfungsbit-Erzeugungsverfahren dazu ungeeignet ist, auf die Struktur eines allgemeinen Halbleiterspeichers angewendet zu werden.
  • Ferner offenbart das zum Stand der Technik gehörende Dokument IEEE JOURNAL OF SOLID STATES CIRCUITS, vol. SC-18, number 5, Okt. 1983, Seiten 463-470, IEEE, New York, US; T. MANO et al.: "Circuit Techniques for a VLSI Memory" ein Logikdiagramm eines ECC-RAMs, wobei eine bidirektionelle Paritätsüberprüfung verwendet wird. In diesem Logikdiagramm sind zusätzlich zu (k · m) grundlegenden Speicherzellen (k + m) Paritätszellen mit jeder Wortleitung verbunden. Zur Fehlererkennung sind zwei Arten von Paritätsüberprüfung ausgeführt, wobei m Bit V-Gruppendaten, k Bit H-Gruppendaten und 2-Bit-Paritätszelldaten verwendet werden, und die endgültige Korrektur durch das Vergleichen der Paritätsspeicherüberprüfungsergebnisse mit ausgewählten Speicherzellendaten bestimmt wird. Wenn z. B. ein Logikdiagramm (4 · 4) grundlegende Speicherzellen in diesem Logikdiagramm umfaßt, müssen (4 + 4) Paritätszellen mit jeder Wortleitung verbunden werden.
  • Schließlich offenbart das zum Stand der Technik gehörende Dokument Patent Abstract of Japan, vol. 6, number 152 (P-134)[1030], 12. August 1982; & JP-A-57 071 596 (FUJITSU K.K), 4. Mai 1982, einen monolithischen Speicherchip, der mit einer Korrekturfunktion bereitgestellt ist. Dieser Speicherchip verwendet die gleiche Paritätserzeugungsschaltung zum Erzeugen der Parität sowohl in dem Schreib- als auch im Lese-Mode eines Speichers.
  • Es ist Aufgabe der vorliegenden Erfindung, ein Halbleiterspeichergerät mit einer Bit-Fehlererkennungsfunktion bereitzustellen, welche ein Design erfordert, das sich kaum von dem eines herkömmlichen Halbleiterspeichergeräts mit keinen weiteren Komplikationen im Herstellungsprozeß unterscheidet, und welche eine einfache Struktur besitzt.
  • Um diese Aufgabe zu erfüllen, stellt die vorliegende Erfindung ein Halbleiterspeichergerät, wie in Anspruch 1 spezifiziert, bereit.
  • In dem Halbleiterspeichergerät entsprechend der vorliegenden Erfindung beinhaltet eine Paritätsspeicherschaltung eine Vielzahl von ersten Paritätsspeicherzellen und eine Vielzahl von zweiten Paritätsspeicherzellen. Die ersten Paritätsspeicherzellen speichern Paritätsbits, welche für die Daten, die in vorbestimmten Speicherzellen des Speicherzellenarrays in der X- oder Y-Richtung gespeichert sind, bereitgestellt sind, wobei die vorbestimmten Speicherzellen so spezifiziert sind, daß die vorbestimmten Bits einer Vielzahl von Adressenbits der vorbestimmten Speicherzellen auf dem gleichen logischen Pegel sind. Ferner speichern die zweiten Paritätsspeicherzellen Paritätsbits für all die Daten, die in der Vielzahl von Speicherzellen auf jedem linearen Speicherzellenarray entweder in der X- oder in der Y- Richtung gespeichert sind.
  • Das Halbleiterspeichergerät der vorliegenden Erfindung, wie es oben beschrieben ist, kann Paritätsbits, welche auf Speicherdaten der Speicherzellen basieren, deren Adressen auf dem gleichen logischen Pegel sind, mitten unter Speicherzellen auf jedem linearen Speicherzellenarray, welche entweder in X- oder in Y-Richtung angeordnet sind, unter Berücksichtigung einer Vielzahl von ersten Paritätsspeicherzellen speichern. Zum Beispiel werden in einem Fall, wo die Speicherzellen in der X-Richtung des Speicherzellenarrays durch eine 2-Bit-Adresse ausgewählt werden, die aus X1 und X2 gebildet ist, die zwei ersten Paritätsspeicherzellen in jedem linearen Speicherzellenarray in der X-Richtung bereitgestellt. Eine der ersten Paritätsspeicherzellen speichert Paritätsbits, die auf den Daten basieren, die in den zwei Speicherzellen gespeichert sind, deren Adressen X1 auf dem logischen "1"-Pegel sind. Die andere speichert Paritätsbits, die auf den Daten basieren, die in den zwei Speicherzellen gespeichert sind, deren Adressen X2 auf dem logischen "1"-Pegel sind.
  • Deshalb kann auf Speicherzellen durch die Verwendung der Adressen X1 und X2 in einem Fall zugegriffen werden, wo zu speichernde Paritätsbits in obigen zwei ersten Paritätsspeicherzellen gespeichert sind. Ein derartige Zugriffsverfahren kann auf die Struktur eines gewöhnlichen Halbleiterspeichers angepaßt werden.
  • Diese Erfindung kann in Verbindung mit den beiliegenden Abbildungen aus der folgenden ausführlichen Beschreibung besser verstanden werden, in welchen:
  • Fig. 1 ein Blockdiagramm ist, welches eine Anordnung eines herkömmlichen Halbleiterspeichergeräts zeigt;
  • Fig. 2 ein Blockdiagramm ist, welches eine Anordnung eines Halbleiterspeichergeräts zeigt, welches ein Ausführungsbeispiel der vorliegenden Erfindung ist;
  • Fig. 3 ein Blockdiagramm einer Anordnung eines Halbleiterspeichergeräts ist, welches ein weiteres Ausführungsbeispiel der vorliegenden Erfindung ist;
  • Fig. 4 ein Blockdiagramm ist, welches bei der Erklärung der Arbeitsweise des Geräts in Fig. 3 nützlich ist; und
  • Fig. 5 ein Schaltplan ist, der die Details des Geräts in Fig. 2 veranschaulicht.
  • Es wird Bezug auf Fig. 2 genommen, welche in Blockform eine Anordnung eines Geräts veranschaulicht, welches in der Lage ist, 1-Bitfehler zu detektierten und zu korrigieren, auf welches die vorliegende Erfindung angewendet ist.
  • In Fig. 2 bezeichnet die Referenzziffer 11 Speicherzellen, auf und von welchen 1-Bitdaten geschrieben und ausgelesen werden können. Diese Speicherzellen sind matrixartig in einem 4 · 4-Speicherzellenarray 12 mit einer Speicherkapazität von 16 Bit angeordnet. Die Speicherzellen 11 in dem Speicherzellenarray 12 werden jeweils durch eine horizontale Adresse X und eine vertikale Adresse Y adressiert. Üblicherweise ist eine Adresse des Speichergeräts durch eine binäre Zahl ausgedrückt. Zum Beispiel sind die horizontale und vertikale Adresse X und Y jeweils durch Kombinationen von Logiken von m und n Bits ausgedrückt, wie z. B. (x1, x2, . . ., und y1, y2, . . ., yn). In diesem Ausführungsbeispiel sind in jeder Reihe und in jeder Spalte des Speicherzellenarrays vier Bits enthalten. Dann gilt: m = n = 2. Die Kombination der Logiken der Horizontaladresse X = (x1, x2) ist wie in Fig. 2 gezeigt: Die Adresse (x1, x2) der Speicherzellen 11 auf der äußerst links liegenden Seite ist (0, 0) und auf der äußerst rechts liegenden Seite (1,1).
  • Dieses Ausführungsbeispiel wird ferner mit einer Paritätsspeicherschaltung 13 bereitgestellt. Die Paritätsspeicherschaltung 13 beinhaltet vier Sätze von Paritätsspeicherzellen 14a, 14b und 14c an den 0-ten bis 2-ten Bits, welche in einer Reihe in dem Speicherzellenarray 12 angeordnet sind. Die Nummer der Paritätsspeicherzellensätze entspricht der Nummer der Speicherzellen 11, die in einer Reihe in dem. Speicherzellenarray 12 angeordnet sind. In diesem Fall ist die Nummer, wie zuvor erwähnt, vier.
  • Von den drei Zellen eines jeden Paritätsspeicherzellensatzes speichert die Paritätsspeicherzelle 14a am 0-ten Bit ein Paritätsbit für die Daten, die in den vier Speicherzellen 11 in der entsprechenden Reihe in dem Speicherzellenarray 12 gespeichert sind. Jede der Paritätsspeicherzellen 14b an dem 1-ten Bit speichert ein Paritätsbit für die Daten, welche in den zwei Zellen der vier Speicherzellen 11 gespeichert sind, welche in der entsprechenden Reihe des Speicherzellenarrays 12 angeordnet sind. In diesem Fall ist der logische Zustand von x2 der Adresse X dieser Daten von jeder der beiden Zellen "1". Jede der Paritätsspeicherzellen 14c an dem 2-Bit speichert ein Paritätsbit für die Daten, die in den zwei der vier Speicherzellen 11 in der entsprechenden Reihe in dem Paritätsspeicherarray 12 gespeichert sind. In diesem Fall ist der logische Zustand von x1 der Adresse X von diesen Daten von jeder der zwei Zellen "1".
  • Beim Auslesen von Daten aus einer Speicherzelle 11 in dem Speicherzellenarray 12 durch das Adressieren dieser, erzeugt eine Paritätserzeugungsschaltung (nicht gezeigt) die obigen drei Paritätsbits in Verbindung mit den Zelldaten in den Zellen der gleichen Spalte, wobei die Zellen diese Zelle 11 beinhalten, aus welcher die Daten ausgelesen werden. Zur gleichen Zeit besteht das Ausgelesene aus drei voreingestellten Paritätsbits in einem Satz der Paritätsspeicherzellen 14a bis 14c in der Paritätsspeicherschaltung 13, welche die Paritätsbits für die Daten der vier Speicherzellen 11 darstellen, welche in einer Reihe angeordnet sind, welche die Speicherzelle 11 beinhaltet, von welcher die Daten ausgelesen werden sollen. Dann werden die erzeugten drei Paritätsbits jeweils mit den ausgelesenen verglichen. Durch den Vergleich wird überprüft, ob die beiden Paritäten Bit für Bit miteinander übereinstimmen oder nicht. Es ist angenommen, daß die Eingangsadresse X = (x1, x2) für die ausgelesenen Daten (0, 0) ist, und daß ein Bitfehler in den ausgelesenen Daten der Speicherzelle 11, wie durch diese Adresse spezifiziert, auftritt. In diesem Fall, bei dem die drei Paritätsbits vor kurzem zum Zeitpunkt des Datenauslesens erzeugt werden, stimmt das 0-te Bit nicht mit dem 0-ten Bit der ausgelesenen Paritätsbit der Paritätsspeicherschaltung 13 überein.
  • Ferner wird angenommen, daß die Eingangsadresse X = (x1, x2) = (0, 1) ist und daß in den ausgelesenen Daten der Speicherzellen 11 ein Bitfehler auftritt. Zu dieser Zeit stimmen von den drei Paritätsbits, die kürzlich zu dem Zeitpunkt des Datenauslesens erzeugt wurden, das 0-te Bit und das 1-te Bit mit den entsprechenden der ausgelesenen Paritätsbits der Paritätsspeicherschaltung 13 jeweils nicht überein.
  • Es wird ferner angenommen, daß die Eingangsadresse X = (x1, x2) = (1, 0) ist, und daß ein Bitfehler in den ausgelesenen Daten der Speicherzellen 11, wie durch diese Adresse spezifiziert, auftritt. In diesem Fall stimmen von den drei Paritätsbits das 0-te Bit und das 2-te Bit jeweils nicht mit den entsprechenden der ausgelesenen Paritätsbits der Paritätsspeicherschaltung 13 überein.
  • Es ist ferner angenommen, daß die Eingangsadresse X = (x1, x2) = (1, 1) ist, und daß ein Bitfehler in den ausgelesenen Daten der Speicherzellen 11, wie durch diese Adresse spezifiziert, auftritt. Zu dieser Zeit, stimmen die 0-ten bis 2-ten Bits der Parität, wie sie vor kurzem erzeugt wurden, jeweils nicht mit den entsprechenden der ausgelesenen Parität von der Paritätsspeicherschaltung 13 überein.
  • Wenn ein Bitfehler auftritt, ändert sich ein Bitmuster der drei Paritätsbits in Abhängigkeit von einem logischen Zustand einer Speicherzelle, wobei durch den Bitfehler eine Fehlfunktion auftritt, welcher einer der vier Speicherzellen in jeder Reihe des Speicherzellenarrays 12 ist. Dann werden beim Auslesen der Daten die drei Paritätsbits für die Auslesedaten erzeugt. Zur gleichen Zeit werden drei Paritätsbits aus der Paritätsspeicherschaltung 13 ausgelesen. Die erzeugten Paritätsbits werden jeweils mit den ausgelesenen Paritätsbits für die Paritätsüberprüfung verglichen. Durch die Paritätsüberprüfung kann die Bitfehlerüberprüfung für die 1-Bit-Speicherzellen 11 des Speicherzellenarrays 12 durchgeführt werden.
  • Wenn ein Bitfehler auf diese Art detektiert ist, falls der Pegel der ausgelesenen Daten der Speicherzelle 11 invertiert ist, wird ein korrigierter Pegel der Daten erhalten, was zu einer Bitfehlerkorrektur führt.
  • Beim Design eines gegenwärtigen Halbleiterspeichergeräts, welches auf diesem Ausführungsbeispiel basiert, zum Erzeugen der Paritätsbits, ist es ausreichend, die Zellendaten von dem Speicherzellenarray 12 nur in der horizontalen oder Reihenrichtung auszulesen. Das Speicherzellenarray 12 erfordert die Bitleitung zusätzlich nur in der horizontalen Richtung. Daher ist ein Design dieses Halbleiterspeichergerätes nur unwesentlich von dem eines konventionellen verschieden. Es ist möglich, zu vermeiden, daß der Herstellungsprozeß komplizierter gemacht wird.
  • Fig. 3 zeigt ein Blockdiagramm oder ein Gerät zum Detektieren und Korrigieren eines 2-Bit-Fehlers, in welchem das Halbleiterspeichergerät der vorliegenden Erfindung angewendet wird.
  • In dem zweiten Ausführungsbeispiel ist eine weitere Paritätsspeicherschaltung 15 zusätzlich in dem in Fig. 1 gezeigten Gerät bereitgestellt.
  • Die Paritätsspeicherschaltung 15 ist mit Paritätsspeicherzellen 16 bereitgestellt, von welchen die Nummer identisch der Nummer der Spalten der Speicherzellen 11 in dem Speicherzellenarray 12 ist. Die Speicherzellen 11 am 0-ten bis 2-ten Bit speichern jeweils Paritätsbits für die Daten, die in allen Speicherzellen 11 in den Spalten des Speicherzellenarrays 12 gespeichert sind.
  • In dem auf diese Weise angeordneten Speichergerät ist die Paritätsüberprüfung, wenn die Daten ausgelesen sind, ähnlich wie die im Gerät der Fig. 2. Die Bitfehlerkorrektur bis zu zwei Bits kann durch die Paritätsüberprüfungen von sowohl der horizontalen als auch der vertikalen Richtung durchgeführt werden. Es ist z. B., wie in Fig. 4 gezeigt, angenommen, daß ein Bitfehler in den zwei Speicherzellen 11 (in der Abbildung mit einem Kreis versehen), von denen die Adressen X = (x1, x2) (0, 1) und (1, 0) sind, auftritt. In diesem Fall, was die Parität für die horizontale Richtung anbetrifft, welche zu dem Zeitpunkt des Datenauslesens erzeugt werden, unterscheiden sich die Inhalte der Paritätsspeicherzellen 14b und 14c (im Bild mit einem Doppelkreis versehen) an den 1- und 2-Bits in der Paritätsspeicherschaltung 13 voneinander. Ferner, was die Parität der vertikalen Richtung anbetrifft, welche zu dem Zeitpunkt des Datenauslesens erzeugt wird, unterscheiden sich die Inhalte der zwei Paritätsspeicherzellen 16 (in der Abbildung durch ) in der Paritätsspeicherschaltung 15 voneinander.
  • In diesem Speichergerät kann der Bitfehler bis zu zwei Bits detektiert und korrigiert werden durch das Vergleichen der Paritätsbits, die in den Schaltungen 13 und 15 gespeichert sind, mit jenen, die zum Zeitpunkt des Datenauslesens erzeugt werden.
  • In dem Ausführungsbeispiel nach Fig. 3, ähnlich dem konventionellen Speichergerät, welches in Fig. 1 gezeigt ist, müssen in dem Speicherzellenarray 12 die Bitleitungen zum Auslesen der Daten sowohl für die horizontale als auch für die vertikale Richtung bereitgestellt werden. Es wird jedoch bemerkt, daß der Bitfehler bis zu zwei Bits mit dem Herstellungsprozeß korrigiert werden kann, der in einem solchen Grad verkompliziert wird, wie der in der 1-Bit-Fehlerkorrektur. Ferner kann das Design des vorliegenden Halbleiterspeichergeräts mit minimalen Modifikationen verwendet werden.
  • Die Paritätsüberprüfung, die in dem oben beschriebenen Ausführungsbeispiel verwendet wird, kann eine gerade oder ungerade Paritätsüberprüfung sein.
  • Fig. 5 zeigt einen Schaltplan, der im Detail das Ausführungsbeispiel nach Fig. 2 veranschaulicht.
  • In dem Speicherzellenarray 12 sind vier Speicherzellen 11, die in einer Reihe angeordnet sind, und drei Paritätsspeicherzellen 14a bis 14c, die ähnlich angeordnet sind, jeweils mit einer der einzelnen Wortleitungen 21 verbunden. Die vier Speicherzellen 11, welche in einer Spalte in dem Speicherzellenarray 12 angeordnet sind, sind mit einer von vier Bitleitungen 22 entsprechend verbunden. Auf ähnliche Weise ist in der Paritätsspeicherschaltung 13 eine der vier Paritätsspeicherzellen 14a bis 14c, welche in einer Spalte angeordnet sind, entsprechend mit einer von drei Bitleitungen 23 verbunden.
  • Irgendeine der vier Wortleitungen 21 ist entsprechend dem Ausgangssignal von einem Reihendecoder 24 ausgewählt. Die Auswähloperation des Reihendecoders 24 wird von einem Adreßtreiber 25 gesteuert, der mit Teilen der Adressen X und Y verbunden ist.
  • Die vier Bitleitungen 22, welche mit dem Speicherzellenarray 12 verbunden sind, und die drei Bitleitungen 23, die mit der Paritätsspeicherschaltung 13 verbunden sind, sind jeweils zu Abfrage-/Lese-Verstärkern (nicht gezeigt) verbunden, welche in einer Abfrage-/Lese-Verstärkerschaltung 26 enthalten sind. Zufällig ist die Anzahl der Abfrage-/Lese-Verstärker gleich der der Bitleitungen, und sie beträgt in diesem Ausführungsbeispiel "7".
  • Die Abfrage-/Lese-Verstärkerschaltung 26 hält die Daten, die in den vier Speicherzellen 11 und den drei Paritätsspeicherzellen 14a bis 14c gespeichert sind, wobei diese Zellen zusammen mit einer Einzelwortleitung 21 verbunden sind, wie durch den Reihendecoder 24 ausgewählt, und ferner hält sie die Daten für die Daten, die in diese Speicherzellen geschrieben werden. Zum Auslesen der Daten von den Speicherzellen 11 führt ein Spaltendecoder 27 die Schreibdaten für die vier Speicherzellen 11 der Abfrage-/Lese-Verstärkerschaltung 26 zu.
  • Ferner führt ein Paritätsschreib-Komparator 28 die Schreibparität für die drei Paritätsspeicherzellen 14 der Abfrage-/Lese-Verstärkerschaltung 26 zu. Dann werden die Daten oder die Paritätsbits in die Zellen 11 oder 14 geschrieben.
  • Beim Auslesen der Daten von den Speicherzellen 11, werden die Daten von den vier Speicherzellen 11 ausgelesen. Nur ein Bit der Daten, welche in den Abfrage-/ Lese-Verstärkern der Abfrage-/Lese-Verstärkerschaltung 26 gehalten werden, wird durch den Spaltendecoder 27 ausgewählt, und dann einer Datenpegelsteuerungsschaltung 29 zugeführt. Zum Auslesen der Paritätsbits von den Paritätsspeicherzellen 14, werden die Daten von den vier Speicherzellen 11 ausgelesen. Die vier Bits, welche in den Abfrage-/Lese-Verstärkern in der Abfrage-/Lese-Verstärkerschaltung 26 gehalten werden, werden einer Paritätserzeugungsschaltung 30 zugeführt.
  • Die Auswähloperation des Spaltendecoders 27 wird durch das Ausgangssignal von dem Adressentreiber 31 gesteuert, der mit Teilen der Adressen X und Y versorgt ist.
  • Die Paritätserzeugungsschaltung 30 erzeugt die drei Bits, wobei die zugeführten vier Datenbits verwendet werden, und führt die Paritätsbits einem Paritätsschreib-Komparator 28 zu. In einem Schreibmode des Speicherzellenarrays 12 führt der Paritätsschreib-Komparator 28 die drei Paritätsbits, wie sie durch die Paritätserzeugungsschaltung 30 erzeugt wurden, den drei Abfrage-/Lese-Verstärkern in der Abfrage-/Lese-Verstärkerschaltung 26 zu, um dadurch die Paritätsbits in die Paritätsspeicherschaltung 13 zu schreiben. In einem Lesemode des Speicherzellenarrays 12 werden die drei Paritätsbits von der Paritätserzeugungsschaltung 30 jeweils mit diesen verglichen, die in den drei Abfrage-/ Lese-Verstärkern der Abfrage-/Lese-Verstärkerschaltung 26 gehalten werden. Als ein Ergebnis dieser Paritätsüberprüfung, falls ein Bitfehler in den Ausgangsdaten vom Spaltendecoder 27 gefunden wird, weist der Paritätsschreib-Komparator 28 die Datenpegelsteuerungsschaltung 29 an, den Pegel der Daten zu invertieren, und eine Adresse für die Speicherzelle 11 zu erzeugen, welche den Bitfehler beinhaltet, und führt diese Adresse dem Spaltendecoder 27 zu. Daher erzeugt der Ausgangstreiber 32, der mit dem Ausgang der Datenpegelsteuerungsschaltung 29 versorgt ist, die Daten mit einem korrekten Pegel nach außen. Ferner werden die Daten, welche durch die Datenpegelsteuerungsschaltung 29 in den korrekten Pegel invertiert werden, dem ursprünglichen Abfrage-/Lese-Verstärker 26 entsprechend der Adresse der Speicherzelle zugeführt, welche die Fehlfunktion eines Bitfehlers aufweist. Folglich sind auch die Daten dieser Speicherzelle korrigiert.
  • Ein Eingangstreiber 33 wird extern mit Schreibdaten für jede der Speicherzellen 11 in dem Speicherzellenarray 12 versorgt. Die Ausgangsdaten von dem Eingangstreiber 33 werden mit Hilfe der Datenpegelsteuerungsschaltung 29 und des Spaltendecoders 27 an dem entsprechenden Abfrage-/Lese-Verstärker in der Abfrage-/Lese-Verstärkerschaltung 26 angelegt, und werden dann in einer Speicherzelle 11 in dem Speicherzellenarray 12 in der oben erwähnten Art und Weise gespeichert.
  • In dem oben erwähnten Ausführungsbeispiel sind die Paritätsbits für die Zellendaten in den zwei Speicherzellen 11, deren Adressen X = (x1, x2) auf einen "1"-Pegel gesetzt sind, welche in die Paritätsspeicherzellen 14b und 14c an dem 1-ten und dem 2-ten Bit in der Paritätsspeicherschaltung 13 gespeichert sind. Alternativ können die Paritätsbits für die Zellendaten in den zwei Speicherzellen, deren Adresse X = (x1, x2) auf logisch "0" gesetzt ist, in die Paritätsspeicherzellen 14b und 14c gespeichert werden.
  • Ferner kann die Speicherkapazität des Speicherzellenarrays 12 auf irgendeine Kapazität, jedoch nicht 16 Bits, gesetzt werden, falls dies notwendig ist. In diesem Fall ist es notwendig, die Anzahl der Bits in einem Satz der Paritätsspeicherzellen 14 der Paritätsspeicher- Schaltung 13 entsprechend der Speicherkapazität, wie ausgewählt, zu erhöhen oder zu erniedrigen.

Claims (2)

1. Halbleiterspeichergerät mit einer Bit-Fehlererkennungsfunktion, welches umfaßt:
- eine Datenspeicherschaltung (12), welche eine Vielzahl von Speicherzellen (11) beinhaltet, welche in der X- und in der Y-Richtung in einer Matrixart angeordnet sind, wobei die Vielzahl der Speicherzellen jeweils Adressen besitzen, die durch eine Vielzahl von Bits ausgedrückt sind;
- eine Paritätsspeicherschaltung (13), die eine Vielzahl von Paritätsspeicherzellen (14a, 14b, 14c) zum Speichern der Paritätsbits umfaßt, welche für die Daten, die in der Datenspeicherschaltung (12) gespeichert sind, bereitgestellt sind;
- eine Paritätserzeugungsschaltung (30) zum Erzeugen von Paritätsbits von den zu schreibenden Daten in einem Schreibmode der Datenspeicherschaltung (12), um in den Paritätsspeicherzellen (14a, 14b, 14c) gespeichert zu werden, und zum Erzeugen von Paritätsbits aus den ausgelesenen Daten in einem Lesemode, wobei die Paritätsbits den geschriebenen Daten entsprechen;
- eine Paritätsvergleichsschaltung (28) zum bitweisen Vergleich, in einem Lesemode der Datenspeicherschaltung (12), der Paritätsbits, die durch die Paritätserzeugungsschaltung (30) erzeugt werden, mit jenen, die in den Paritätsspeicherzellen (14a, 14b, 14c) der Paritätsspeicherschaltung (13) gespeichert sind; und
- eine Datenpegelsteuerungsschaltung (29) zum Erzeugen der Auslesedaten der Datenspeicherschaltung (12) mit dem nichtinvertierten Pegel der Auslesedaten, wenn das Ergebnis des bitweisen Vergleichs durch die Paritätsvergleichsschaltung (28) anzeigt, daß die verglichenen Paritätsbits jeweils miteinander übereinstimmen, und zum Erzeugen der Daten mit ihren invertierten Pegeln, wenn das Vergleichsergebnis eine Nichtübereinstimmung zwischen diesen anzeigt;
wobei das Halbleiterspeichergerät dadurch gekennzeichnet ist, daß
- die Paritätsspeicherschaltung (13) eine Vielzahl von ersten Paritätsspeicherzellen (14b, 14c) zum Speichern der Paritätsbits, welche für die Daten, die in vorbestimmten Speicherzellen des Speicherzellenarrays in der X- oder Y-Richtung gespeichert sind, wobei die vorbestimmten Speicherzellen so spezifiziert werden, daß vorbestimmte Bits der Vielzahl von Adressenbits der vorbestimmten Speicherzellen auf demselben logischen Pegel sind, und eine Vielzahl von zweiten Paritätsspeicherzellen (14a) zum Speichern der Paritätsbits für alle die Daten, die in der Vielzahl der Speicherzellen in jedem linearen Speicherzellenarray entweder in der X- oder in der Y-Richtung gespeichert sind, umfaßt.
2. Halbleiterspeichergerät nach Anspruch 1, gekennzeichnet durch ferner eine Datenschreibeinrichtung (27), um zu entscheiden, daß die Auslesedaten einen Fehler nur enthalten, wenn das Vergleichsergebnis Nichtübereinstimmung zwischen ihnen anzeigt, und zum Schreiben korrekter Daten in die Speicherzelle der Speicherschaltung (12), von welcher die Fehlerdaten ausgelesen sind.
DE8585102254T 1984-03-01 1985-02-28 Halbleiterspeichergeraet mit einer bit-fehlererkennungsfunktion. Expired - Lifetime DE3587374T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59039507A JPS60183653A (ja) 1984-03-01 1984-03-01 ビツト・エラ−検出機能を備えたメモリ

Publications (2)

Publication Number Publication Date
DE3587374D1 DE3587374D1 (de) 1993-07-08
DE3587374T2 true DE3587374T2 (de) 1993-09-23

Family

ID=12554953

Family Applications (1)

Application Number Title Priority Date Filing Date
DE8585102254T Expired - Lifetime DE3587374T2 (de) 1984-03-01 1985-02-28 Halbleiterspeichergeraet mit einer bit-fehlererkennungsfunktion.

Country Status (5)

Country Link
US (1) US4679196A (de)
EP (1) EP0153752B1 (de)
JP (1) JPS60183653A (de)
KR (1) KR890005049B1 (de)
DE (1) DE3587374T2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10245639A1 (de) * 2002-09-30 2004-04-15 Siemens Ag Verfahren zur Bitfehlerreduzierung einer zu übertragenden Datenbitfolge und zur empfangseitigen Decodierung dieser Datenbitfolge

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4849978A (en) * 1987-07-02 1989-07-18 International Business Machines Corporation Memory unit backup using checksum
JP2664236B2 (ja) * 1989-02-01 1997-10-15 富士通株式会社 半導体記憶装置
US5089993B1 (en) * 1989-09-29 1998-12-01 Texas Instruments Inc Memory module arranged for data and parity bits
US5164944A (en) * 1990-06-08 1992-11-17 Unisys Corporation Method and apparatus for effecting multiple error correction in a computer memory
JP3073610B2 (ja) * 1992-09-22 2000-08-07 株式会社東芝 半導体記憶装置
EP0709776B1 (de) * 1994-10-31 2000-02-23 STMicroelectronics S.r.l. Fehlernachweis- und Korrekturverfahren in einem mehrstufigen Speicher und Speicher für dieses Verfahren
US7010741B2 (en) * 2002-10-29 2006-03-07 Mosaid Technologies Method and circuit for error correction in CAM cells
CA2447204C (en) * 2002-11-29 2010-03-23 Memory Management Services Ltd. Error correction scheme for memory
JP2005203064A (ja) * 2004-01-19 2005-07-28 Toshiba Corp 半導体記憶装置
JP5179726B2 (ja) * 2006-06-27 2013-04-10 マーベル ワールド トレード リミテッド 半導体デバイス
JP2008059711A (ja) * 2006-09-01 2008-03-13 Toshiba Corp 半導体記憶装置
US20080281572A1 (en) * 2007-05-10 2008-11-13 Ruchir Puri Integrated circuit (ic) design method and method of analyzing radiation-induced single-event upsets in cmos logic designs
KR20180138394A (ko) * 2017-06-21 2018-12-31 에스케이하이닉스 주식회사 메모리 시스템 및 이의 동작 방법

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3599146A (en) * 1968-04-19 1971-08-10 Rca Corp Memory addressing failure detection
US3806716A (en) * 1972-07-17 1974-04-23 Sperry Rand Corp Parity error recovery
JPS5152708A (de) * 1974-11-05 1976-05-10 Casio Computer Co Ltd
JPS55105897A (en) * 1979-01-31 1980-08-13 Hitachi Koki Co Ltd Memory device
US4317201A (en) * 1980-04-01 1982-02-23 Honeywell, Inc. Error detecting and correcting RAM assembly
US4412314A (en) * 1980-06-02 1983-10-25 Mostek Corporation Semiconductor memory for use in conjunction with error detection and correction circuit
JPS5771596A (en) * 1980-10-20 1982-05-04 Fujitsu Ltd Nonolithic memory chip provided with correcting function
US4365332A (en) * 1980-11-03 1982-12-21 Fairchild Camera And Instrument Corp. Method and circuitry for correcting errors in recirculating memories
US4371963A (en) * 1980-12-24 1983-02-01 Ncr Corporation Method and apparatus for detecting and correcting errors in a memory
JPS6042560B2 (ja) * 1981-03-17 1985-09-24 日本電信電話株式会社 半導体記憶装置
US4453251A (en) * 1981-10-13 1984-06-05 Burroughs Corporation Error-correcting memory with low storage overhead and fast correction mechanism
US4464755A (en) * 1982-03-26 1984-08-07 Rca Corporation Memory system with error detection and correction

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10245639A1 (de) * 2002-09-30 2004-04-15 Siemens Ag Verfahren zur Bitfehlerreduzierung einer zu übertragenden Datenbitfolge und zur empfangseitigen Decodierung dieser Datenbitfolge

Also Published As

Publication number Publication date
KR850007159A (ko) 1985-10-30
EP0153752B1 (de) 1993-06-02
KR890005049B1 (ko) 1989-12-08
JPS60183653A (ja) 1985-09-19
DE3587374D1 (de) 1993-07-08
US4679196A (en) 1987-07-07
EP0153752A3 (en) 1988-11-30
EP0153752A2 (de) 1985-09-04

Similar Documents

Publication Publication Date Title
DE4027050C2 (de)
DE69825234T2 (de) Verfahren und vorrichtung zur selbstprüfung von multi-port-rams
DE3588247T2 (de) Dynamischer Halbleiterspeicher mit einer statischen Datenspeicherzelle
DE60217591T2 (de) Speicher-Steuerung für Mehrpegel-Speicherzelle
DE4110173C2 (de) Adressenansteuereinrichtung für einen SRAM und Verfahren zum Betreiben derselben
DE3587143T2 (de) Halbleiterspeichergeraet mit fehlererkennung/korrekturfunktion.
DE4241327C2 (de) Halbleiterspeichervorrichtung
DE4242810C2 (de) EEPROM mit einem Fehlerprüf- und Korrektur-Schaltkreis
DE3412676C2 (de)
DE3587374T2 (de) Halbleiterspeichergeraet mit einer bit-fehlererkennungsfunktion.
DE3032630C2 (de) Halbleiterspeicher aus Speicherbausteinen mit redundanten Speicherbereichen und Verfahren zu dessen Betrieb
DE3209679C2 (de)
DE4127698C2 (de)
DE3906494C2 (de)
DE10234684A1 (de) Speicherschaltung
DE112020006398T5 (de) Geräte, systeme und verfahren zur fehlerkorrektur
DE3876459T2 (de) Speicher und deren pruefung.
DE3412677C2 (de)
DE10206689B4 (de) Integrierter Speicher und Verfahren zum Betrieb eines integrierten Speichers
DE3329022A1 (de) Datenspeichereinrichtung
DE2515099A1 (de) Schaltung zur staendigen erzeugung eines longitudinalen paritaetswortes fuer den hauptspeicher eines digitalen rechenautomaten
DE2946119C2 (de) Datenverarbeitungseinrichtung mit einer Vielzahl von Datenverarbeitungselementen, denen ein einziger Strom von Steuersignalen zugeführt wird
DE10058030A1 (de) Integrierte Schaltung mit Datenprüfmitteln auf einem Chip
DE19908513A1 (de) Halbleiterspeicherbauelement mit eingebauter Schaltung zur parallelen Bitprüfung
DE2752377A1 (de) Fehlerpruefeinrichtung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)