DE69400891T2 - Einrichtung zur Speicherung von Daten - Google Patents

Einrichtung zur Speicherung von Daten

Info

Publication number
DE69400891T2
DE69400891T2 DE69400891T DE69400891T DE69400891T2 DE 69400891 T2 DE69400891 T2 DE 69400891T2 DE 69400891 T DE69400891 T DE 69400891T DE 69400891 T DE69400891 T DE 69400891T DE 69400891 T2 DE69400891 T2 DE 69400891T2
Authority
DE
Germany
Prior art keywords
memory
circuit
address
pseudorandom
circuits
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
DE69400891T
Other languages
English (en)
Other versions
DE69400891D1 (de
Inventor
Laurent Carre
Patrick Correard
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.)
STMicroelectronics SA
Original Assignee
SGS Thomson Microelectronics SA
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 SGS Thomson Microelectronics SA filed Critical SGS Thomson Microelectronics SA
Publication of DE69400891D1 publication Critical patent/DE69400891D1/de
Application granted granted Critical
Publication of DE69400891T2 publication Critical patent/DE69400891T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/88Masking faults in memories by using spares or by reconfiguring with partially good memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Error Detection And Correction (AREA)
  • Memory System (AREA)

Description

  • Die vorliegende Erfindung bezieht sich auf eine Vorrichtung zur Speicherung von Daten, insbesondere zur Speicherung von Daten vom sogenannten AUDIO-Typ, deren Eigenschaft es ist, daß von Zeit zu Zeit auftretende Fehler bei der Speicherung ohne allzu deutlich hörbare Konsequenzen insbesondere bei der Wiedergabe ausgeglichen werden können. Dasselbe gilt für Bilddaten, insbesondere solche, die komprimiert sind. Man verwendet daher hier den Term AUDIO, auch für solche Daten. Um die Speicherkosten für die AUDIO-Informationen zu senken, möchte man statische oder dynamische elektronische Speicher vom AUDIO-Typ verwenden: das heißt Speicher mit fehlerhaften Speicherpunkten.
  • Damit eine solche Umsetzung möglich wird, darf die Fehlerquote einen bestimmten Wert nicht überschreiten, und im übrigen müssen die gegebenen Fehler während der Wiedergabe, der erneuten Übertragung des AUDIO-Signals, gleichmäßig verteilt sein. Auf bekannte Art und Weise fügt man zur Begrenzung der möglichen Konsequenzen dieser Fehler der numerischen Information, die ein AUDIO-Signal darstellt, einen Code zur Erfassung und Korrektur von Fehlern bei. Diese Schutzcodes sind ausreichend wirksam bei isolierten Fehlern. Sie sind vom Typ her bekannt. Sie erfordern den Einsatz von Algorithmen zur Korrektur von Fehlern.
  • Um Speicher vom AUDIO-Typ zu verwenden, ist man also insgesamt mit zwei Einschränkungen konfrontiert. Die erste Einschränkung besteht darin, daß im Speicher eine vorgegebene Fehlerquote nicht überschritten werden darf: TMAX. Zweitens müssen die Fehler gleichmäßig in der Speicherebene des Speichers verteilt sein. Mit anderen Worten, die Speicher mit beliebigem Zugriff, RAM genannt, vom AUDIO-Typ enthalten zwei Fehlertypen. Einerseits umfassen sie isolierte fehlerhafte Speicherpunkte. Und andererseits Gruppen von fehlerhaften Speicherpunkten. Der letztere Fehlertyp liegt insbesondere bei fehlerhaften Speicherreihen oder -spalten vor. Man stellt fest, daß der letztere Fehlertyp nicht kompatibel mit der zweiten obigen Einschränkung ist. Die Wahl des AUDIO-Speichers muß daher auf solche eingeschränkt werden, bei denen die Quote der isolierten fehlerhaften Speicherpunkte niedriger als TMAX ist und deren Quote an Gruppen von fehlerhaften Speicherpunkten Null ist. Der Nachteil hierbei ist, daß die verwendbaren Audio-Speicher gesichtet werden müssen, um die zu finden, die gut funktionieren. Im übrigen werden einige Speicher am Ende der Sichtung aussortiert.
  • Um Probleme dieser Art zu lösen, wird bereits beim Einschalten vor dem Schreiben der Daten eine Verifizierung des Speicherzustandes und der zu adressierenden Zellen durchgeführt. Jedesmal wenn ein Fehler erfaßt wird, wird eine Fehlertabelle aufgestellt, man sichert ihn und man veranlaßt eine Umleitung der Adressen, die fehlerhafte Speicherzellen zum Ziel haben, zu redundanten Speicherzellen. Diese Operationen haben den Nachteil, einerseits komplex zu sein und andererseits einen Zeitverlust bei der Nutzung zu bedeuten. Das Resultat einer solchen Nutzung ist außerdem, daß die Nutzungsquote des Speichers nicht mehr 100 % beträgt und der mittlere Durchsatz des Speichers verlangsamt wird. Der Nachteil früherer Techniken ist, daß die Entwicklung einer Applikation mit solchen Speichern abhängt von der "Null Fehler" genannten Qualität der verwendeten Speicher.
  • Die erste Aufgabe der Erfindung, wie sie in Anspruch 1 beansprucht wird, ist es, alle Einschränkungen zu überwinden und Schaltkreise zur Speicherung von Daten in den Speichern vom AUDIO-Typ von minderer Qualität anzugeben, ohne sich mit der genauen Qualität dieser Speicher auseinandersetzen zu müssen. Bei der Erfindung reicht es, sich mit der Kenntnis der Fehlerquote T zufriedenzugeben, die vom Hersteller des AUDIO-Speichers angegeben wird, und zu verifizieren, daß sie niedriger als TMAX ist. In der Praxis sind solche AUDIO-Speicher dynamische Speicher, können aber auch statische Speicher oder selbst nichtflüchtige Speicher sein, auf die beliebig zugegriffen werden kann.
  • EP-A-0 068 099 beschreibt einen Schaltkreis zur beliebigen Adressierung eines Speichers zur Visualisierung, der vorgesehen ist, aufeinanderfolgende Daten an verschiedenen Orten im Speicher zu verteilen. In dieser Schrift wird jedoch nicht dargestellt, wie man Gruppierungen von Fehlern umgeht.
  • Bei der Erfindung, so wie sie in dem unabhängigen Anspruch beansprucht wird, nutzt man, daß die AUDIO-Daten, die ausgegeben werden (die mittels Lautsprechern ausgestrahlt werden) aufeinanderfolgend kohärent (oder zusammenhängend) sind. Beim Schreiben werden die aufeinanderfolgenden Daten, die also aufeinanderfolgenden Tönen entsprechen, zufällig an verschiedenen Stellen im Speicher verteilt oder eher pseudozufällig. Beim Lesen wird die Abfolge der gespeicherten AUDIO-Daten in derselben Pseudozufallssequenz wieder gelesen. Unter Berücksichtigung des Zufallscharakters der Speicherung überwindet man daher ohne Schwierigkeiten Fehlergruppen.
  • Beim Lesen, bei der Wiedergabe, werden selbst gruppierte Fehler als gleichförmig in der Speicherebene verteilt angesehen. Man kann daher Speicher mit einer Fehlerquote unterhalb der maximal zulässigen Quote ohne Einschränkung in bezug auf den Fehlertyp verwenden.
  • Im übrigen werden die Daten sequentiell geschrieben und gelesen, beginnend mit einer Anfangsadresse, wobei die Adressen von einem Generator für Pseudozufälle ganz ausgegeben werden. Nach Initialisierung des Pseudozufallsadressengenerators mit einem Startwert erzeugt das System automatisch die folgenden Adressen. Das Schreiben und das Lesen erfolgen vorzugsweise sequentiell. Um den sequentiellen Charakter zu vermeiden, der bisweilen den Zugriff auf die Daten behindert, ist erfindungsgemäß vorgesehen, daß der Generator für die Pseudozufallscodes unter anderem Ansteuereingänge umfaßt, um ihn auf einen beliebigen Wert setzen zu können und so den Beginn einer Sequenz oder wenigstens eines Lesens oder Schreibens an einem beliebigen vorgesehenen Ort beginnen zu lassen.
  • Um die Verwaltung der Information in den Speicherebenen der elektronischen Speicher zu vereinfachen, seien es AUDIO-Speicher oder andere, sind die Speicherebenen im allgemeinen in Sektoren unterteilt. Die unmittelbarste Umsetzung der Sektorierung einer Speicherebene im Rahmen der Erfindung führt dazu, wenn man alle Speicherworte in einem Sektor prüft vor Übergang zum nächsten Sektor, für jeden Sektor eine notwendige Fehlerquote zu behalten, die gleich der globalen Fehlerquote des in die Anzahl von Sektoren aufgeteilten Speichers ist. Diese Quote ist also unter Umständen zu klein und der Speicher könnte nicht genutzt werden.
  • Gemäß der Erfindung, so wie sie im Anspruch 1 beansprucht wird, hatte man zur Lösung dieses zusätzlichen Problems die Idee, bei jeder neuen vom Generator pseudozufällig gebildeten Adresse den Sektor zu wechseln. In einer bevorzugten Variante ist dieses Wechseln des Sektors selbst nicht zufällig oder pseudozufällig, sondern fortlaufende, modulo der Anzahl der Sektoren. Unter diesen Bedingungen kann einerseits die Fehlerquote gleich der bleiben, die vom Hersteller angegeben wird. Andererseits bleibt die Adressierung einfach. In diesem Fall besteht die Adresse also aus zwei Teilen: Ein erster Teil betrifft die Zahl des Sektors und ein anderer Teil ist vollständig pseudozufällig.
  • Im übrigen besteht noch ein anderes Problem, das mit der Größe der zu speichernden Speicherworte zusammenhängt. Man stellt nämlich fest, daß in bestimmten Fällen, die mit Herstellungsproblemen zusammenhängen, ein Satz von fortlaufenden Zellen in der Speicherebene defekt ist. Unter diesen Bedingungen wird, wenn man ein ganzes Wort in eine Gruppe von zusammenhängenden Zellen bei jedem Zugriff schreibt, die Vorrichtung zur pseudozufälligen Adressierung ineffizient. Man läuft Gefahr, Pakete von z.B. vier ungültigen Bits für den Fall zu erzeugen, daß man es mit Worten von vier Bits zu tun hat. Wenn man im übrigen Zyklen von Lesen/Modifizieren/Schreiben für das Schreiben nur eines einzigen Bits zur Zeit verwendet, verliert man den Zeitgewinn beim Zugriff auf die Information.
  • Um dieses andere Problem zu lösen, geht man bei einer Variante der Erfindung, so wie sie im abhängigen Anspruch 2 beansprucht wird, von der Hypothese aus, daß es keine Korrelation zwischen den Fehlern von mehreren unterschiedlichen Speicherbereichen gibt. Man bildet also physikalisch eine Speicherebene, die über einen Datenbus mit mehreren Bits Breite, z.B. vier Bits, zusammenhängt, um mehrere Speicherbereichsschaltkreise von einem Bit, z.B. vier Schaltkreise, parallelzuschalten. Man greift also parallel und gleichzeitig auf einzelne Speicherzellen zu, die sich an denselben pseudozufälligen Adressen in jedem der Speicherbereichsschaltkreise befinden. Jeder Speicherbereichsschaltkreis liefert also über eine Leitung eine Information von einem Bit aus. Diese Leitung bildet also eine Leitung eines Datenbusses mit vier Leitungen für den Satz von Speicherbereichsschaltkreisen.
  • Der Erfindung liegt somit die Aufgabe zugrunde, eine Vorrichtung zur Speicherung von kohärenten Daten, die eins nach dem anderen in Speicherworten in Speichern mit wahlfreiem Zugriff aufeinanderfolgen, anzugeben, so wie sie in dem Anspruch 1 beansprucht ist.
  • Andere Aufgaben werden vorteilhaft gelöst, dank der Eigenschaften der abhängigen Ansprüche 2 bis 9.
  • Die Erfindung wird verständlich werden anhand der folgenden Beschreibung und der beigefügten Figuren. Letztere sind nur Andeutungen und in keiner Weise die Erfindung einschränkend. Die Figuren zeigen:
  • - Figur 1: einen erfindungsgemäßen Speicher;
  • - Figuren 2a und 2b: ein Ausführungsbeispiel eines pseudozufälligen Generators gemäß der Erfindung;
  • - Figur 3: ein Flußdiagramm für den Pseudozufallsgenerator im invertierten Modus;
  • - Figur 4: eine Besonderheit bei der Ausführung des erfindungsgemäßen Schaltkreises als integrierte Speicherschaltkreise vom dynamischen Typ.
  • Figur 1 zeigt eine Vorrichtung 1 zur Speicherung von aufeinanderfolgenden Daten in Speicherworten 2 in einem Speicher mit wahlfreiem Zugriff 3. Erfindungsgemäß umfaßt die Vorrichtung zur Speicherung einen Pseudozufallsadressengenerator C1, C2, C3 zur Verteilung der aufeinanderfolgenden Daten auf aufeinanderfolgende pseudozufällige Adressen 4, 5, 6, 7 etc. Figur 2 zeigt ein Ausführungsbeispiel eines solchen Pseudozufallsgenerators. Dieser kann nichtsdestotrotz beliebig sein und insbesondere vom Typ sein, wie er in dem Buch "Digital Systems Testing and Testable Design", herausgegeben von Computer Science Press 1990, von Miron ABRAMOVICI, Melvin A. BREUER und Arthur D. FRIEDMAN auf den Seiten 432 bis 441 beschrieben wurde.
  • Gemäß einer bevorzugten Ausführungsform der Erfindung umfaßt der Pseudozufallsadressengenerator einen ersten Schaltkreis C1 zur sukzessiven Ausgabe von pseudozufälligen Binärworten mit P Bits, die die ersten Teile eines Adreßsignals darstellen. In einem Beispiel beträgt P 15. Der Generator umfaßt außerdem einen zweiten Schaltkreis C2 zur synchronisierten Ausgabe von angrenzenden Binärworten mit Q Bits. In einem Beispiel beträgt Q 7. Diese Binärworte sind jeweils an den Ausgängen A'1 und A'2 der Schaltkreise C1 und C2 über Busse mit P und Q Bits verfügbar, die so zusammengefügt sind, daß sie einen Bus A'3 mit (Q + P) Bits bilden.
  • Die Funktion des Schaltkreises C1-C2 ist die folgende. Ausgehend von einem ursprünglichen Zustand wird das gleiche Signal zur Inkrementierung T an die Schaltkreise C1 und C2 angelegt. Die Übertragung des Signals wird synchronisiert durch das Starten der Schaltkreise C1 und C2 mittels eines Taktsignals CK, das als Auslösung wirkt. Das Signal T ist einfach ein Impulssignal. Der Schaltkreis C1 ist ein Schaltkreis, der ein pseudozufälliges Signal mit einer Periode von 2P unterschiedlicher Binärzustände ausgibt. Bei jedem Zyklus erzeugt der Schaltkreis C1 dieselben pseudozufälligen Abschnitte.
  • Die Figur 2a zeigt ein Beispiel für den Aufbau des Schaltkreises C1. Jener wird gebildet von einem Satz von fünfzehn Registern RL0 bis RL14, die zu einem Schieberegister zusammengesetzt sind. So ist der Ausgang des Registers RL0 mit dem Eingang des Registers RL1 verbunden. Jener des Registers RL1 ist mit dem Eingang des Registers RL2 verbunden usw. Der Ausgang des Registers RL14 wie der Ausgang des Registers RL0 sind mit den zwei Eingängen eines EXKLUSIV-ODER-Gatters, XOR, 8 verbunden, dessen Ausgang mit dem Eingang des Registers RL0 verbunden ist. Die Ausgänge der Register RL0 bis RL14 geben Adreßsignale L0 bis L14 aus. Alle diese Register werden aktiviert durch ein Signal h, das aus der Auslösung des Signals T durch das Taktsignal CK resultiert.
  • Normalerweise kann ein solcher Generator von Pseudozufallszuständen mit P Ausgängen nur 2P-1 unterschiedliche Zustände erzeugen. Der Zustand 000...000 oder in bestimmten Fällen der Zustand 111...111 ist nämlich nicht zum Starten des Abarbeitens des Generators in der Lage. Diese Binärzustände werden Löcher genannt, da sie das Arbeiten des Generators blockieren. Sie werden erfindungsgemäß erfaßt und decodiert. Das Resultat dieser Decodierung wird herangezogen, um den Schaltkreis C1 in einen Zustand zu setzen. In einem Beispiel umfaßt der Schaltkreis zur Decodierung einfach ein NOR-Gatter 9, das die Signale L0 bis L14 einliest. Sobald alle Signale Null sind, erzeugt das NOR-Gatter 9 ein Signal F für das Setzen in den Zustand 1. Das Signal F wird an das XOR-Gatter 8 angelegt und setzt den Ausgang dieses Gatters 8 in den Zustand 1. Folglich wird beim folgenden Impuls h das Signal L0, das wie alle Signale L0 bis L14 Null war, auf 1 gesetzt. Unter diesen Bedingungen kann die Erzeugung der Pseudozufallscodes erneut beginnen. Bei der Ausgabe von 2P-1 Schritten muß der Mikroprozessor C1 mit "alles auf Null" erneut laden.
  • Der Schaltkreis C2 besteht vorzugsweise aus einem Zähler, hier ein Zähler bis 128 mit sieben Ausgängen und erzeugt fortschreitend bei jedem Schritt eine Stufe. Die Entwicklung der Ausgänge der Schaltkreise C2 sind leicht vorhersehbar.
  • Als Schaltkreis C1 wurden in Figur 2a eine Serie von Umschaltern I0 bis I14 zwischen den Ausgängen der Schieberegister und den Eingängen der folgenden Schieberegister eingezeichnet. Diese Umschalter I0 bis I14 erlauben es, die Eingänge der Register RL0 bis RL14 mit den fünfzehn Leitungen eines Eingangsbusses 10 zu verbinden. Das Steuersignal für die Umschalter I0 bis I14 wird über einen Eingang 11 des Schaltkreises C1 angelegt. Dasselbe gilt für die Ausgänge vom Zähler des Schaltkreises C2, die mit den sieben Leitungen eines Busses 12 verbunden werden können, sobald ein Befehl auf einer Steuerleitung 13 des Zählers C2 anliegt, wenn dieser Befehl auf einen verfügbaren Binärzustand auf dem Bus 10 und 12 angewendet wird und am Eingang der Register RL0 und RL14 und den Steuereingängen des Zählers C2 anliegt. Wenn einmal das Laden erfolgt ist, sind beim folgenden Impuls h die Steuerzustände auf dem Bus 26 an den Ausgängen der Schaltkreise C1 und C2 verfügbar.
  • Es kommt bisweilen vor, daß man bei der Aufnahme von AUDIO-Signalen es mit der Aufnahme von stillen Passagen zu tun hat. Bevor man viel Platz im Speicher zum Speichern solcher stillen Passagen verbraucht, mißt man vorzugsweise die Dauer und speichert gemäß einem geeigneten Protokoll ein codiertes Wort, das der Dauer dieser stillen Passage entspricht. Es gilt also das Problem zu lösen, zu einem Zeitpunkt t zu erkennen, daß man es mit einer stillen Passage der Dauer n zu tun hat, die zur Zeit t-n beginnt und die man beginnend mit der Adresse, die der Zeit t-n+1 entspricht, aufzeichnen möchte. Man möchte ein codiertes Wort aufzeichnen (vorzugsweise mit einem geeigneten Fehlercode), beginnend mit der Adresse, die der Zeit t-n+1 entspricht.
  • Das Problem ist also, zur Pseudozufallsadresse zurückzukehren, die der Zeit t-n+1 entspricht und zwar vollständig determiniert. Was im Augenblick t bekannt ist, ist einerseits die Zahl n der ausgeführten Schritte und andererseits der Zustand der Ausgänge der Schaltkreise C1 und C2 in diesem Moment t. Man möchte dies für den Augenblick t-n+1 wissen.
  • Um also den Zustand der Ausgänge des Schaltkreises C2 im Moment t-n+1 zu kennen, kann man einfach eine Subtraktion modulo 128 von diesem Zustand mit dem Datum t weniger dem Wert n selbst durchführen. Demgegenüber müßte man beim Schaltkreis C1 dieses ins Inverse umdrehen, was unmöglich ist. Gemäß der Erfindung löst man dieses Problem mit Hilfe eines Mikroprozessors 14, der ein im Speicher 15 enthaltenes Programm abarbeiten kann und dessen Ziel es ist, die Ausgänge des Schaltkreises C1 in einen zu bestimmenden Zustand zu setzen. Das Programm im Speicher 15 erlaubt einerseits die Bestimmung dieses Zustandes und bei seiner Ausgabe diesen an den Ausgang des Schaltkreises C1 gemäß der oben mit dem Bus 10 und 12 und dem Befehl 11 beschriebenen Art anzulegen.
  • Figur 3 zeigt das Flußdiagramm der zu diesem Zweck von dem Mikroprozessor 14 durchzuführenden Aktionen. Bei jedem späteren Rechenschritt muß unter Berücksichtigung, daß man es mit einem Schieberegister zu tun hat, ein Befehl 16 den theoretischen Ausgang eines Registers RL im Moment t - i ausrechnen, indem dieser gleich dem Ausgang eines Registers RL u + 1 im Moment t - i + 1 gesetzt wird. Dies gilt für alle Register bis auf das letzte. Tatsächlich besitzt das Register RL14 keinen Nachfolger. Unter Berücksichtigung der Funktion XOR des Gatters 8 wird bei einem Befehl 17 also der theoretische Ausgang des Registers RL14 im Moment t - i ausgerechnet, wie er gleich dem Resultat einer Funktion EXKLUSIV-ODER ist, die angewendet wird auf die Binärsignale der Ausgänge der Register RL0 und RL1 im Moment t - i + 1. Aus Gründen der Kohärenz wird nichtsdestotrotz der Befehl 17 vor dem Befehl 16 ausgeführt.
  • Es bleibt das Problem, welches auftritt, wenn der Ausgang des Registers RL0 im Zustand 1 ist und wenn die Ausgänge der anderen Register im Zustand 0 sind. Tatsächlich ist der diesem Zustand vorangegangene Zustand der Zustand des Lochs, aus dem man normalerweise nicht herauskommt und in welches man folglich nicht rückwärts eintreten kann. Zu diesem Zweck sucht man im Lauf des Tests 18 bei jedem Schritt eine solche Situation zu erfassen. Wenn sie auftritt, zwingt man mit einem Befehl 19 den Wert aller vorangegangenen Ausgänge der Register RL14 bis RL0 auf Null. Der Test 18 erfolgt selbstverständlich vor dem Befehl 17. Der Satz der Befehle und Tests 16 bis 19 wird n-mal durchgeführt. Zu diesem Zweck wird ein Inkrement i verwendet, dessen Wert zu Beginn 1 beträgt, und man stoppt die Durchführung dieses Kalküls, wenn i einen vorgesehenen Wert erreicht hat.
  • Bei Ausgabe eines Tests 20 mit diesem Ergebnis zwingt man mittels Befehl 21 also elektrisch die Ausgänge des Schaltkreises C1 auf die Werte L0 bis L14, die zuletzt berechnet wurden. In der Praxis lädt also der Mikroprozessor 14 über seinen Datenbus 22 den Bus 10 des Schaltkreises C1 und gibt über einen Befehlsausgang 23 den Befehl 11 aus. Es ist das gleiche für den Schaltkreis C2, außer daß das Programm zur Berechnung der Werte, die dem Bus 12 aufgesetzt werden sollen, sehr viel einfacher ist. Diese Berechnung besteht aus einer einfachen Subtraktion.
  • Der Speicher 3 steht in Beziehung zu der Außenwelt über einen Datenbus 24. In einem Beispiel ist der Bus 24 ein Bus mit 4 Bits. Er empfängt im übrigen die Adressen zum Lesen/Schreiben oder Modifizieren über einen Adreßbus 25, der mit dem Bus 26 mit (P + Q) -Leitungen von den Schaltkreisen C1 und C2 zusammenhängt. In der Praxis sind aus Gründen der Realisierung für den Fall, daß der Speicher 3 dynamisch ist, die Busadressen auf 11 Leitungen beschränkt. In dem Fall erlaubt es ein Multiplexerschaltkreis C3, doppelt so schnell einen Bus 27 mit 11 Leitungen zu versorgen. Im Speicher 3 wird ein solcher Bus mit 11 Leitungen gemultiplext, um die Adreßworte mit der gewollten Anzahl von Bits wiederherzustellen: 22 Bits. Aus praktischen Gründen ist der Schaltkreis 1 ein monolithisch integrierter Schaltkreis und man hielt es für nützlich, in diesen den Multiplexer C3 zu integrieren. Die Funktion des Multiplexers ist bekannt und braucht hier nicht gesondert beschrieben zu werden. Der Multiplexer C3 wird nur durch ein Signal 2h mit doppelter Frequenz wie der des Signals h angesteuert. In einer Variante können der Datenbus 24 des Speichers sowie gewisse Leitungen zur Steuerung CAS und RAS über den integrierten Schaltkreis 1 verlaufen.
  • In einer bevorzugten Form ist der Speicher 3 zusammengesetzt als Parallelschaltung von vier Speichermodulen M1 bis M4, die alle identisch sind und jeweils 2P+Q = vier Megazellen Speicher besitzen. Die von dem Schaltkreis 1 erarbeiteten Adressen werden gleichzeitig an den Adresseneingängen der Adreßdecoder der vier Module M1 bis M4 angelegt. Jeder der Module ist mit einem Datenbus mit einer Leitung verbunden. Diese vier Datenbusse 28 bis 31 mit einer Leitung werden zusammengefaßt in einem Bus 24 mit vier Leitungen. Auf diese Art stellt man sicher, daß ein Wort mit vier 4 Bits für jedes der vier Bits jeweils in den vier Speichermodulen M1 bis M4 geladen wird. Es wird auch vermieden, daß man in einem einzigen Modul ein Speicherwort von vier Bits laden muß, das dieselbe Information darstellt. Dieses machte die Wiederherstellung der Information schwierig, wenn das betreffende Speicherwort fehlerhaft wäre.
  • Figur 4 zeigt eine praktische Anordnung der Adressen der Speicherelemente M1 bis M4. Am Ausgang des Schaltkreises C1 hat man die 15 Signale L0 bis L14. Am Ausgang des Schaltkreises C2 hat man die Signale H0 bis H6. Auf dem Bus 26 befinden sich durch einfaches Nebeneinanderlegen die Adressensignale A0 bis A21. Am Ausgang des Multiplexers C3 hat man aufeinanderfolgend einerseits die Signale A0 bis A10 und dann alternativ die Signale A11 bis A21. In der Praxis sind die Signale A0 bis A10 Signale, die an die Decoder zwischen den Speicherelementen M1 bis M4 anzulegen sind, während die Signale A11 bis A21 an die Kolonnendecoder anzulegen sind. Aus diesem Grund ist die Darstellung der Sektoren in Figur 1 nur schematisch und nicht real.
  • Aufgrund der Tatsache, daß die Zahl 2P an Zuständen des Schaltkreises C1 größer als die Zahl 2Q an Zuständen des Schaltkreises C2 ist, ist die Folge, daß mehrere vollständige Sondierungen oder Rotationen durchgeführt werden, bevor der Schaltkreis C1 denselben ursprünglichen Zustand ausliefert. In der Praxis bedeutet dies 2P-Q Rotationen. In dem zitierten Beispiel bedeutet dies 256 Rotationen. Am Ende aller dieser Rotationen besteht nichtsdestotrotz das Risiko, sich in einer Situation wiederzufinden, in welcher der Schaltkreis C1 einen selben binären Zustand wie vordem erzeugt, während der Schaltkreis C2 gleichermaßen einen Binärzustand wiederherstellte. Man riskierte in diesem Fall, nur auf 2P Speicherworte im Speicher 3 zuzugreifen. Zu diesem Zweck führt man mit dem Mikroprozessor 14 und dem Speicherprogramm 15 ein Programm aus, das einfach die Zahl der Rotationen des Zählers C2 zählt. Bei Ausgabe von 2 Rotationen läßt man den Schaltkreis C2 alleine einen Schritt vorrücken und man lädt C1 auf "alles auf Null". Man beginnt wiederum nachfolgend seine Rotationen zu zählen, bis man 256 erreicht hat und so weiter.

Claims (9)

1. Vorrichtung zur Speicherung von kohärenten Daten, die eins nach dem anderen in Speicherworten in einem Speicher mit wahlfreiem Zugriff aufeinanderfolgen, umfassend einen Pseudozufallsadressengenerator, um die aufeinanderfolgenden Daten an die pseudozufälligen Adressen im Speicher zu verteilen, dadurch gekennzeichnet, daß sie umfaßt im Pseudozufallsadressengenerator einen ersten Schaltkreis, um nacheinander binäre Pseudozufallsworte mit P Bits auszugeben, die die ersten Teile von Adreßsignalen darstellen, und einen zweiten Schaltkreis, um danach angrenzende binäre Worte mit Q Bits auszugeben, die die zweiten Teile von Adreßsignalen darstellen, eine Vorrichtung zur Synchronisierung des ersten und des zweiten Schaltkreises und einen Schaltkreis zum Aneinanderhängen eines ersten und eines zweiten Teils des Adreßsignals, so daß eine Zufallsadresse von P + Q Bits erzeugt wird, um aufeinanderfolgende Daten in geographisch unterschiedlichen Sektoren des Speichers zu verteilen.
2. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß sie umfaßt im Speicher eine Anordnung von N (N = 4) integrierten Schaltkreisen zur Speicherung, die jeweils in 2M (M = 22) Speicherworte unterteilt sind, deren Länge R (R = 1) Bits beträgt, wobei diese N integrierten Schaltkreise über ihren Datenbus mit R Leitungen jeweils mit R anderen Leitungen eines Datenbusses mit N R Leitungen von dem Speicher verbunden sind, wobei die N integrierten Schalkreise zur Speicherung parallel mit demselben Adressbus mit M Leitungen verbunden sind.
3. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß der erste und der zweite Schaltkreis Treibereingänge haben, um ihre Ausgänge in einen vorgegebenen Zustand zu bringen.
4. Vorrichtung nach Anspruch 3, dadurch gekennzeichnet, daß der erste und der zweite Schaltkreis eine Pseudozufallsperiode von 2P Binärzuständen hat, und daß der zweite Schaltkreis eine Periode von 2Q Binärzuständen hat.
5. Vorrichtung nach Anspruch 2, dadurch gekennzeichnet, daß R gleich 1 ist.
6. Vorrichtung nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß sie einen Schaltkreis zur Berechnung einer vorangehenden Zufallsadresse aufgrund der Kenntnis einer aktuellen Adresse umfaßt.
7. Vorrichtung nach Anspruch 6, dadurch gekennzeichnet, daß der Schaltkreis zur Berechnung einen Mikroprozessor und einen Programmspeicher umfaßt, wobei der Mikroprozessor mit diesem Programmspeicher verbunden ist, um ein Mikroprogramm auszuführen, das sich in diesem Programmspeicher befindet.
8. Vorrichtung nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, daß der Schaltkreis zum Aneinanderhängen einen Multiplexer umfaßt.
9. Vorrichtung nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, daß der Speicher ein dynamischer Speicher ist.
DE69400891T 1993-07-19 1994-06-22 Einrichtung zur Speicherung von Daten Expired - Fee Related DE69400891T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR9308832A FR2708115B1 (fr) 1993-07-19 1993-07-19 Dispositif de stockage de données.

Publications (2)

Publication Number Publication Date
DE69400891D1 DE69400891D1 (de) 1996-12-19
DE69400891T2 true DE69400891T2 (de) 1997-04-03

Family

ID=9449360

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69400891T Expired - Fee Related DE69400891T2 (de) 1993-07-19 1994-06-22 Einrichtung zur Speicherung von Daten

Country Status (5)

Country Link
US (1) US5535173A (de)
EP (1) EP0635786B1 (de)
JP (1) JPH0793212A (de)
DE (1) DE69400891T2 (de)
FR (1) FR2708115B1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG43256A1 (en) * 1995-03-29 1997-10-17 Toshiba Kk Apparatus and method for reading and writing data
US5892775A (en) * 1995-12-27 1999-04-06 Lucent Technologies Inc. Method and apparatus for providing error-tolerant storage of information
WO2001069392A2 (en) * 2000-03-16 2001-09-20 Boden Scott T Method and apparatus for secure and fault tolerant data storage
US7966518B2 (en) * 2007-05-15 2011-06-21 Sandisk Corporation Method for repairing a neighborhood of rows in a memory array using a patch table
US7958390B2 (en) * 2007-05-15 2011-06-07 Sandisk Corporation Memory device for repairing a neighborhood of rows in a memory array using a patch table
US9323609B2 (en) * 2013-11-15 2016-04-26 Intel Corporation Data storage and variable length error correction information

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3279425D1 (en) * 1981-06-18 1989-03-09 Ibm Fault tolerant machine/human interface unit
US5276826A (en) * 1988-01-04 1994-01-04 Hewlett-Packard Company Apparatus for transforming addresses to provide pseudo-random access to memory modules
JPH07113904B2 (ja) * 1990-04-11 1995-12-06 株式会社東芝 メモリ・アクセス装置
KR930004823B1 (ko) * 1990-04-14 1993-06-08 삼성전자 주식회사 텔레비젼 신호의 스크램블링 및 디스크램블링 회로

Also Published As

Publication number Publication date
FR2708115A1 (fr) 1995-01-27
US5535173A (en) 1996-07-09
DE69400891D1 (de) 1996-12-19
EP0635786B1 (de) 1996-11-13
FR2708115B1 (fr) 1995-09-01
EP0635786A1 (de) 1995-01-25
JPH0793212A (ja) 1995-04-07

Similar Documents

Publication Publication Date Title
DE3115541C2 (de)
DE2008663C3 (de) Datenspeicher- und Datenspeicheransteuerschaltung
DE2916710C2 (de)
DE2828698C2 (de) Monolithische integrierte Schaltungsvorrichtung mit einem Speicher
DE2364408C3 (de) Schaltungsanordnung zur Adressierung der Speicherplätze eines aus mehreren Chips bestehenden Speichers
DE2061854C3 (de) Speicher aus Schieberegistern
DE2328869C2 (de) Verfahren und Schaltungsanordnung zum Betreiben eines digitalen Speichersystems
DE3689128T2 (de) Halbleiterspeichergerät mit einer Korrekturfunktion.
DE2312707A1 (de) Pruefanordnung fuer einen computer
DE19830111A1 (de) Integrierter Speicher
DE69126057T2 (de) Ein Informationsverarbeitungsgerät mit einer Fehlerprüf- und Korrekturschaltung
DE112005002390T5 (de) Burst-Betrieb für die Speichertransaktion und Speicherkomponenten, welche die zeitweilig multiplexierte Fehlerkorrekturcodierung unterstützen
DE19713421A1 (de) Halbleiterspeicher-Testvorrichtung
DE2746505C2 (de)
DE4441007C2 (de) Multibit-Testschaltkreis einer Halbleiterspeichereinrichtung
DE2854782A1 (de) Datenverarbeitungssystem
DE2515099A1 (de) Schaltung zur staendigen erzeugung eines longitudinalen paritaetswortes fuer den hauptspeicher eines digitalen rechenautomaten
DE19738893A1 (de) Schaltsignalgenerator und diesen verwendendes, synchrones SRAM
DE3587374T2 (de) Halbleiterspeichergeraet mit einer bit-fehlererkennungsfunktion.
DE2946119C2 (de) Datenverarbeitungseinrichtung mit einer Vielzahl von Datenverarbeitungselementen, denen ein einziger Strom von Steuersignalen zugeführt wird
DE69400891T2 (de) Einrichtung zur Speicherung von Daten
DE2357654C2 (de) Assoziativspeicher
DE10134985A1 (de) Test eines Halbleiterspeichers mit mehreren Speicherbänken
DE102008013099A1 (de) Speichertestschaltung
DE3851651T2 (de) Schaltungsanordnung zur Erzeugung von Adressen.

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee