DE2746805C2 - Hauptspeicher mit einem die Adressen defekter Speicherplätze des Hauptspeichers speichernden Assoziativspeicher - Google Patents

Hauptspeicher mit einem die Adressen defekter Speicherplätze des Hauptspeichers speichernden Assoziativspeicher

Info

Publication number
DE2746805C2
DE2746805C2 DE2746805A DE2746805A DE2746805C2 DE 2746805 C2 DE2746805 C2 DE 2746805C2 DE 2746805 A DE2746805 A DE 2746805A DE 2746805 A DE2746805 A DE 2746805A DE 2746805 C2 DE2746805 C2 DE 2746805C2
Authority
DE
Germany
Prior art keywords
memory
line
signal
address
register
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
Application number
DE2746805A
Other languages
English (en)
Other versions
DE2746805A1 (de
Inventor
James Hermann St. Paul Minn. Scheuneman
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.)
Sperry Corp
Original Assignee
Sperry 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 Sperry Corp filed Critical Sperry Corp
Publication of DE2746805A1 publication Critical patent/DE2746805A1/de
Application granted granted Critical
Publication of DE2746805C2 publication Critical patent/DE2746805C2/de
Expired legal-status Critical Current

Links

Classifications

    • 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
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • G06F11/1052Bypassing or disabling error detection or correction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/18Handling requests for interconnection or transfer for access to memory bus based on priority control

Description

Die Erfindung betrifft einen Hauptspeicher mit einem die Adressen defekter Speicherplätze des Hauptspeichers speichernden Assoziativspeicher, einem beide Speicher gemeinsam bedienenden Adreßregister, wobei der Assoziativspeicher, wenn die Adresse im Speicheradressenregister keiner der im Assoziativspeicher enthaltenen Adressen defekter Speicherplätze im Hauptspeicher entspricht, dies durch ein erstes Signal anzeigt, und wenn die Adresse im Speicheradressenregister einer der im Assoziativspeicher enthaltenen Adresse eines defekten Speicherplatzes im Hauptspeicher entspricht, dies durch ein zweites Signal anzeigt
Es ist bekannt, daß z. B. LSI-Halbleiterspeicher, d. h. Halbleiterspeicher mit einem hohen Integrationsgrad, fehlerhafte Daten beim Auslesen der eingespeicherten Information abgeben können. Derartige Fehler beim Auslesen von Daten haben ihre Ursache in der Regel in fehlerhaften Speicherzellen. Es sind daher schon viele Vorschläge gemacht worden, um zu verhindern, daß Fehler in den ausgelesenen Daten auf den Betrieb des zugeordneten Datenverarbeitungssystems unerwünschte Auswirkungen haben. So ist z.B. in der US-PS 38 00 286 ein System beschrieben, wo vor der Adressierung des Hauptspeichers mit einer bestimmten Adresse ein sogenannter inhaltsadressierter oder Assoziativspeicher konsultiert wird, um festzustellen, ob an der genannten Adresse im Hauptspeicher sin fehlerhafter Speicherplatz vorhanden ist Ist dies nicht der Fall, wird also die Adresse im Assoziativspeicher nicht gefunden, so wird der Hauptspeicher adressiert Ist jedoch die Adresse, mit der der Hauptspeicher adressiert werden soll, im Assoziativspeicher als Adresse eines fehlerhaften Speicherplatzes des Hauptspeichers registriert, so wird ein Pufferspeicher für eine Ersatzadresse konsultiert, die anzeigt, wo im Hauptspeieher Daten eingeschrieben oder gelesen werden können, die wegen des defekten Speicherplatzes unter der ursprünglichen Adresse nicht eingeschrieben oder gelesen werden können. Nachteilig ist aber dabei, daß durch die vorherige Prüfung die Zugriffszeit zum Hauptspeicher erhöht wird. Demgegenüber sieht die DE-PS 12 49 926 vor, daß der Hauptspeicher und der Assoziativspeicher gleichzeitig, also nicht nacheinander, adressiert werden, wobei dann im Falle, wo im Assoziativspeicher die für den Hauptspeicher benützte Adresse gefunden, diese also als Adresse eines fehlerhaften Speicherplatzes erkannt wird, ein Ersatzadressenwort erzeugt wird, das dem Hauptspeicher zugeleitet wird und diesen so adressiert, daß die Daten in eine einwandfreie Speicherstelle eingeschrieben bzw. aus dieser ausgelesen werden.
Bei diesem Verfahren ist die Zugriffszeit zum Hauptspeicher in der Regel nicht größer als bei einem perfekten Speicher ohne fehlerhafte Speicherplätze.
Eine Erhöhung der Zugriffszeit findet nur in den sehr wenigen Fällen einer fehlerhaften Speicherstelle statt. Nachteilig ist jedoch bei beiden vorbekannten Speichern, daß der Hauptspeicher zweimal adressiert werden muß. Auch wenn dies nur rel&iiv selten stattfindet, kann die Notwendigkeit hiefür zu e'ner erheblichen Beschränkung in der Architektur der Anlage führen, weil dadurch gewisse überlappende Vorbereitungsfunktionen, wie z. B. das Füllen des Adressenregisters mit einer nachfolgenden Adresse, unmöglich werden. Besonders nachteilig ist jedoch, daß bei beiden vorbekannten Speichern Ersatzspeicherplätze vorgesehen werden müssen, die, wenn sie beim Hauptspeicher selbst vorgesehen werden, dessen effektive Speicherkapazität vermindern.
Es ist daher Aufgabe der Erfindung, ein Verfahren der eingangs erwähnten Art aufzuzeigen, bei dem im Falle eines defekten Speicherplatzes kein Ersatz hiefür vorgesehen werden muß, so daß auch die mit einem solchen Ersatz verbundenen Nachteile wegfallen.
Gemäß der Erfindung wird dies dadurch erreicht, daß eine Fehlerkorrekturschaltung vorgesehen ist, und daß das erste bzw. zweite Signal die aus dem Hauptspeicher gelesenen Daten entweder (erstes Signal) direkt zu einem Kopplungsregister oder (zweites Signal) über die Fehlerkorrekturschaltung an das Kopplungsregister steuert
Dies hat den Vorteil, daß keine Ersatzspeicherplätze geschaffen und adressiert werden müssen. Die Fehlerkorrektur kann in der Regel in kürzerer Zeit durchgeführt werden, als eine erneute Speicheradressierung, so daß die effektive Zugriffszeit kleiner ist als bei den vorbekannten Verfahren.
In der nachfolgenden Beschreibung eines Ausführungsbeispiels wird als Hauptspeicher ein Speicher mit wahlfreiem Zugriff verwendet, der abgekürzt mit RAM bezeichnet wird. Der Assoziativspeicher wird abgekürzt mit CAM bezeichnet und die dem Hauptspeicher zugeordnete Fühl- und Korrekturschaltung als ECC. In den Zeichnungen zeigt
F i g. 1 ein Blockschaltbild eines Speichersystems mit einem Hauptspeicher gemäß der Erfindung,
F i g. 2a bis 2f Beispiele von Zeitsteuerdiagrammen, die dem Speichersystem der F i g. 1 zugeordnet sind,
Fig.3 eine Darstellung eines Flußdiagramms mit einer funktioneilen Beschreibung der Arbeitsweise des Speichersystems der F i g. 1,
Fig.4 eine Darstellung, wie die auswechselbaren 1024-Bitebenen in dem Speicher mit direktem Zugriff der F i g. 1 angeordnet sind,
F i g. 5 eine Darstellung des Aufbaus eines Adressenwortes, das verwendet wird, um eine adressierbare Stelle in dem Speicher mit direktem Zugriff der F i g. 1 zu adressieren und
F i g. 6 eine Darstellung des Aufbaus von Syndrom-Bits, die durch die Fehlerfühl- und Korrekturschaltung der F i g. 1 erzeugt werden.
In den F i g. 1,2a bis 2f und 3 sind ein Blockschaltbild des Hauptspeichers gemäß der Erfindung, Zeitsteuerdiagramme und ein Flußdiagramm einer funktionellen Beschreibung des Betriebs dargestellt. In dem elektronischen Datenverarbeitungssystem, in welchem das Speichersystem der F i g. 1 vorgesehen ist, werden eine Anzah! von, beispielsweise Λ/=8, Anforderungseinheiten R 0 bis R 7 verwendet. Alle Anforderungseinheiten R 0 bis R 7 können über ihr zugeordnetes Prioritäts-Anforderungssignal gleichzeitig einen Zugriff an dem zugeordneten Schreib/Lese-Hauptspeicher 10 anfor dem, für welchen es schwierig sein würde, die Anforderungen durchzuführen. Folglich koppeln in einem derartigen elektronischen DatenverarbeitungsEystejii die Anforderungseinheiten, welche verschiedenen numerischen Prioritäts-Betriebsdaten zugeordnet sind, ihre Prioritäts-Anforderungssignale an eine Prioritätsbestimmungslogik an. Die Prioritätsbestimmungslogik 12 legt fest, welcher von den beispielsweise bis zu 8 Anforderungseinheiten R 0 bis R 7, welche gleichzeitig
in einen Zugriff an dem zugeordneten RAM-Speicher anfordern können, Priorität zu gewähren ist. Moderne Pripritätssysteme können eine Drehpriorität zwischen Anforderungseinheiten schaffen, welche auf der zugeordneten Priorität*ntstehung beruhen (DE-OS
is 26 06 210).
In der Ausführungsform der Fig. 1 koppelt jede der Anforderungseinheiten R 0 bis R 7, wenn ein Zugriff auf den Speicher 10 gefordert wird, laufend an die Prioritätslogik 12 über eine Leitung 13 deren zugeordnetes Prioritätsanforderungssignal an und koppelt an ein, Speicheradressenregister (MAR) 14 über eine Leitung 15 deren zugeordnete Adresse an die adressierbare Stelle in dem RAM-Speicher 10 an, an welchem sie einen Zugriff zu bekommen sucht.
Zu vorgegebenen Zeitpunkten, die üblicherweise durch den Empfang eines Prioritätsanforderungssignais auf einer Leitung 13 von einer Anforderungseinheit oder durch eine interne zeitliche Steuerung des RAM-Speichers 10 bestimmt sind, wird die Prioritätslo- -gik 12 durch ein neues Taktgebarprioritätssignal (CNP-Signal) beispielsweise auf einer Leitung 16 beeinflußt. Das CNP-Signal schaltet alle Prioritätsan- -forderungssignale, die zu diesem (CNP-)Zeitpunkt angekoppelt sind, zu der Prioritätslogik 12 durch. Die Prioritätslogik 12 legt dann fest, welchem von den bis zu 8 Prioritätsanforderungssignalen von den zugeordneten Anforderungseinheiten RQ bis R7 aus Priorität zu gewähren ist. Die Prioritätslogik 12 erzeugt dann ein Einleitungssignal, welches eine zeitliche Speicherzugriffssteuerung über eine Leitung 20 und eine !Steuereinrichtung 18 einleitet, und koppelt auch an das Speicheradressenregister (M AR-Register) 14 den dekodierten Ausgang der Prioritätslogik 12 über eine angeschaltete Leitung der Sammelleitung 22 an. Durch eine angeschaltete Leitung der Sammelleitung 22 wird das MAR-Register 14 freigegeben, damit es die Adresse aufnimmt, die der einen Anforderungseinheit zugeordnet ist, welcher durch die Prioritätslogik 12 Priorität gewährt worden ist. Diese Adresse wird dann von dem
so MAR-Register 14 aus über eine Leitung 24 laufend an den RAM-Speicher 10 und an den inhaitsadressierten Speicher (den CAM-Speicher) 26 über eine Leitung 28 angekoppelt.
Die von dem RAM-Register 14 erhaltene Adresse der Anforderungseinheit, die sowohl an den RAM-Speicher 10 als auch an den CAM-Speicher 26 angekoppelt wird, kann dieselbe Mehrbit-Wortlänge haben; jedoch kann es in diesem Fall bzw. unter diesen Umständen erforderlich sein, daß der CAM-Speicher 26 dieselbe Anzahl adressierbarer (Speicher-)Stellen hat wie der RAM-Speicher 10. Dies würde dann natürlich auf einen unhandlich großen CAM-Speicher 26 hinauslaufen. Andererseits könnte der CAM-Speicher 26 eine vorbestimmte Größe mit einer wesentlich kleineren Zahl inhaltsadressierter Speicherstellen haben, um als ein Fehlersammeispeicher mit einer minimalen Kapazität, wie der Speicher in der US-PS 39 17 933, zu arbeiten. In der bevorzugten Ausführungsform der
Erfindung wird ein derartiges Verfahren angewendet, um korrigierbare Fehler in dem RAM-Speicher 10 bei dem Wortgruppen-Adressenpegel abzutrennen.
Der Speicher mit direktem Zugriff (der RAM-Speicher) 10 weist einen bekannten Aufbau gemäß F i g. 4 auf. Der RAM-Speicher 10 ist ein Halbleiterspeicher mit hohem Integrationsgrad, der beispielsweise 131K-Worte mit jeweils einer Länge von 45 Bits hat, die 38 Datenbits und 7 Prüfbits aufweisen. Der RAM-Speicher 10 ist in 128 Wortgruppen organisiert, wobei jede Wortgruppe 45 Bitebenen aufweist und jede Bitebene eine Ebene mit hohem Integrationsgrad (LSI) von 1024 Bits oder Speicherstellen ist. Die gleich angeordneten Bitebenen jeder der 128 Wortgruppen sind auch in 45 Bitebenen-Gruppen ausgebildet, von denen jede 128 Bitebenen aufweist. Der RAM-Speicher 10 wird laufend durch Auswählen einer der 128 Wortgruppen und eines gleich angeordneten Bits aus den 1024 Bits jeder 45 Bitebenen in der einen ausgewählten Wortgruppe adressiert. Dies hat das gleichzeitige Auslesen, d. h. ein paralleles Auslesen, der 45 gleich angeordneten Bits zur Folge, v/elche das eine ausgewählte oder adressierte Wort darstellen, das an der adressierten und adressierbaren Speicherstelle gespeichert ist.
Insbesondere in F i g. 5 ist der Aufbau eins Adressenwortes dargestellt, welches dazu verwendet wird, um ein Wort aus den 131k-Worten auswählen oder zu adressieren, die in dem RAM-Speicher 10 gespeichert sind. In dieser Konfiguration des Adressenwortes wählen oder adressieren die 7 Bits mit höherem Stellenwert, nämlich 216 bis 210, entsprechend den 1-en oder 0-en an der jeweiligen Bitstellen 216 bis 210 eine Wortgruppe aus den 128 Wortgruppen, während die 10 Bits mit niedrigerem Stellenwert, nämlich 29 bis 2°, ein Bit aus den 1024 Bits in jeder der 45 Bitebenen in der Wortgruppe auswählen oder adressieren, welche durch die Bits 216 bis 210 mit höherem Stellenwert ausgewählt ist.
In dem RAM-Speicher ist eine Doppelfehler-Fühl- und Einzeifehler-Korrekturschaitung (ECC) 30 verwendet (siehe hierzu die Veröffentlichung »Fehlerfühl- und Korrekturkode« von R. W. Hamming in The Bell System Journal, Band XXV! vom April 1950, Nr. 2, Seiten 147 bis 160), zum Fühlen und Korrigieren von Einzelbitfehlern in jedem der 45 Bitworte, die darin gespeichert sind. Das MAR-Register 14 ist das Speicheradressenregister, welches das Adressenwort des in Fig.5 wiedergegebenen Aufbaus aufnimmt, wenn es durch die entsprechend zugeordnete Anforderungseinheit angekoppelt wird, um eines von den 131k-45-Bitworten zu adressieren oder auszuwählen, die in dem RAM-Speicher 10 gespeichert sind.
Der RAM-Speicher 10 koppelt bei der Auswahl der ausgelesenen Daten, die an der adressierbaren Stelle gespeichert sind, welche durch die Adresse in dem MAR-Register 14 festgelegt ist, in Parallelbetrieb die unkorrigierten ausgelesenen Daten über eine Leitung 34 an ein Kopplungsregister 32 und die unkorrigiert ausgelesenen Daten plus die zugeordneten Prüfbits über eine Leitung 36 an die ECC-Schaltung 30 an. Die ECC-Schaltung 30 arbeitet mit den unkorrigiert ausgelesenen Daten plus den zugeordneten Prüfbits, um Fehler zu fühlen und festzustellen, und wenn ein korrigierbarer Fehler, d. h. ein einzelnes Bit gefühlt wird, korrigiert sie einen derartigen Fehler und koppelt dann über eine Leitung 38 die korrigierten, ausgelesenen Daten an da:- Kopplungsregister 32 an. Während die ECC-Schaltung 30 irgendeinen korrigierbaren Fehler in dem einen Wort, das in dem RAM-Speicher 10 adressiert worden ist, korrigiert, erzeugt sie auch:
ein Signal auf einer Leitung 40, welches das Fühlen eines unkorrigierbaren Fehlers anzeigt;
ein Signal auf einer Leitung 42, welches das Fühlen eines korrigierbaren Fehlers anzeigt, und
auf einer Leitung 44 sechs Syndrom-Bits, welche die Gruppe der 1-Bitebene kennzeichnet, welche das schadhafte Bit aus den 45 Bitebenen-Gruppen enthält, in
ίο welchen der RAM-Speicher 10 ausgebildet ist, wie vorher anhand der F i g. 4 ausgeführt worden ist. Die 6 Syndrom-Bits, die von der ECC-Schaltung 30 erzeugt worden sind, sind so angeordnet, wie in Fig.6 dargestellt ist.
Wie oben ausgeführt, werden bei jeder Bezugnahme auf den Speicher 10 auch der CAM-Speicher 26 gleichzeitig durch die Speicher-Adresse adressiert, die durch die Anforderungseinheit, der durch die Prioritätslogik 12 eine Priorität gewährt wird, an das MAR-Regi- ster 14 angekoppelt ist. Bei einer Speicherbezugnahme werden die unkorrigiert ausgelesenen Daten von dem Speicher 10 laufend unmittelbar an das Kopplungsregister 32 und auch unmittelbar an die ECC-Schaltung 30 und von dort (die korrigierten, ausgelesenen Daten, wenn sie korrigierbar sind) an das Kopplungsregister 32 angekoppelt Wenn bei der Speicherbezugnahme der CAM-Speicher 26 die Speicher-Adresse nicht enthält, werden die nicht korrigierten, ausgelesenen Daten, welche an das Kopplungsregister 32 angekoppelt sind, in das Kopplungsregister 32 eingegeben und aus dem Kopplungsregister 32 über eine Leitung 33 an die Anforderungseinheit bei einem ersten, verhältnismäßig frühen Steuerimpuls ausgetastet, welcher die Speicherzugriffszeit über die Steuereinrichtung 18 und ein ausgewähltes, nicht korrigiertes, ausgelesenes Datensigna! auf einer Leitung 46 festgelegt. Wenn jedoch der CAM-Speicher 26 die RAM-Adresse enthält, werden die korrigierten ausgelesenen Daten von der ECC-Schaltung 30 aus dann in das Kopplungsregister 32 eingegeben und aus dem Kcpplungsregister 32 an die Anforderungseinheit bei einem zweiten, entsprechend späteren Steuerimpuls ausgetastet, v/elcher eine Speicherzugriffszeit über die Steuereinrichtung 18 und ein ausgewähltes, korrigiertes, ausgelesenes Datensignal auf der Leitung 48 festlegt
Es werden die ECC-Schaltung 30 bei Fühlen eines korrigierbaren Fehlers in den unkorrigiert ausgelesenen Daten und in dem korrigierbaren, ausgelesenen Datenfehlersignal auf der Leitung 42 und der CAM-Speicher 26 bei der Festlegung, daß'die adressierte und adressierbare Stelle in dem RAM-Speicher 10 nicht in dem CAM-Speicher 26 gespeichert ist und ein nicht passendes oder passendes Signal auf der Leitung 52 vorhanden ist, zusammengefaßt, um an dem Generator 50 ein Prüf- oder Kontrollsignal zu erzeugen, welches über eine Leitung 51 an die Anforderungseinheit angekoppelt wird. Zu diesem Zeitpunkt wird dann auch die Adresse der adressierbaren Stelle in dem RAM-Speicher 10, in welchem der korrigierbare Fehler durch
die ECC-Schaltung 30 gefühlt wurde, über das
korrigierte, ausgelesene Datenfehlersignal auf den
Leitungen 42 und 43 in dem CAM-Speicher 26 gespeichert
Die Anforderungseinheit überspringt dann entspre-
chend dem Prüf- oder Kontrollsignal auf der Leitung 51 das fehlerhafte, unkorrigierte Signal, das sie von dem Kopplungsregister 32 über die Leitung 33 erhalten hat, und sie leitet mit derselben Adresse eine weitere
Bezugsnahme auf den Speicher ein, wenn als nächstes eine Priorität gewährt wird. Bei dem zweiten Versuch, die adressierten Daten auszulesen, korrigiert die ECC-Schaltung 30 die ausgelesenen Daten, und die korrigierten ausgelesenen Daten werden dann dem Kopplungsregister 32 zugeführt bzw. an dieses angekoppelt, da nunmehr eine Anpassung in dem CAM-Speicher und infolgedessen auch an der Anforderungseinheit bei dem zweiten, entsprechend späteren Ansteuerimpuls vorhanden ist, welcher die Speicherzugriffszeit festlegt
Wenn bei dem Auslesen der adressierten Daten die ECC-Schaltung 30 unkorrigierbare, ausgelesene Daten fühlt, koppelt die ECC-Schaliung 30 über eine Leitung 40 ein unkorrigierbares, ausgelesenes Datenfehlersignal
an .einen Generator 54 für ein Datenparitäts-Fehlersignal und damit über die Leitung 55 an die Anforderungseinheit an. Bei Anliegen des Datenparitäts-Fehlersignals auf der Leitung 55 kann die Anforderungseinheit eine von vielen möglichen Betriebsarten zur Regenerierung bzw. Rückgewinnung einleiten, um die Wirkung des Enjpfangs der unkorrigiert ausgelesenen Daten über das Kopplungsregister 32 und die Leitung 33 zu überwinden. Ίμ der nachfolgend wiedergegebenen Tabelle A ist in tabellarischer Form die Arbeitsweise des Speichersystems der F i g. 1 wiedergegeben, das funktionell durch das'Flußdiagramm der F ig. 3 beschrieben ist; jede der Betriebsbedingungen der Tabelle A ist deutlicher durch die^teuerungsdiagramme der Fig.2a bis 2f beschrieben.
Tabelle A N Fehler C U Verzögerung
d. Koppl.-
Reg. Allst.
X X X X X Kontrolle X X Laden des
CAM-Speichen
X X Datenpuitäts-
fehler
N Steuerungs-
<Kagramni
Anpassen N _ Y N γ y X Y N X Y X
Y X X - - X ■-* X X Fig. 2a,
X - X X - - X - X Fig. 2b
- X - X - "X X - X Rg. 2c
X - - - X - - Fig. 2d
- X - - X X - Fig. 2e
X - = ja.
= nein.
= korrigierbar,
nicht korrigierbar.
X Fig. 2f
-
Y
N
C
U
Bei keinem Fehler und der Anpassungsbedingung der F i g. 2a geben die Anforderungseinheiten laufend ihre Prioritätsanforderungssignale über die Leitung 13 an die Prioritätslogik 12 und ihre RAM-Adressen über die
ι -.:* 4Λ λ \.a α. η η :_* 4Λ ~u ιι/~__ ~:~
■-■ellung ι.* an uea iYi/ti\~i\cgi3iGi i*r au, ttciiii cm CNP-Signal anschließend über die Leitung 16 an die Prioritätslogik 12 angekoppelt wird, wird der Anforderungseinheit mit der höchsten Priorität gewährt, daß sie auf der zugeordneten Leitung der Sammelleitung 22 das Signal schafft, welches ihre zugeordnete RAM-Adresse an das MAR-Register 14 ankoppelt.
Nach der Prioritätsfestlegung durch die Prioritätslogik 12 gibt die Prioritätslogik 12 über die Leitung 20 ein Einleitungssignal an die Steuereinrichtung 18 ab, wobei dieses Einleitungssignal dann die zeitliche Steuerungskette startet, welche den Betrieb des Speichersystems der F i g. 1 steuert. Als nächstes gibt dann die Steuereinrichtung 18 über eine Leitung 61 eine Ladeadresse an das MAR-Register 14 ab, wodurch die Adresse durchgeschaltet wird, welche der Anforderungseinheit zugeordnet ist, welcher an dem MAR-Register 14 Priorität gewährt wurde. Durch das Ladeadressen-Signal wird die nunmehr in das MAR-Register 14 geladene Adresse an die Leitung 23 angekoppelt, wodurch die RAM-Gruppenadresse über die Leitung 28 an den CAM-Speicher 26 und die RAM-Wortadresse über eine Leitung 24 an den RAM-Speicher 10 angekoppelt ist Als nächstes erzeugt und koppelt die Steuereinrichtung 18 ein RAM-Einleitungssignal über eine Leitung 60 an den RAM-Speicher 10 und ein CAM-Einleitungssignal über eine Leitung 62 an den CAM-Speicher 26 an. Bei Erhalt des CAM-Einleitungssignals vergleicht der CAM-Speicher 26 die Gruppenadresse auf einer Leitung 28 mit den Adressen der
iv,
p vorher in dem CAM-Speicher 26 gespeichert worden sind und in welchem adressierbare Speicherstellen vorher als korrigierbare Fehler festgelegt worden sind. Bei einer Anpassungsbedingung, d. h. wenn die Adresse auf'der Leitung 28 einer vorher in dem CAM-Speicher 26 'gespeicherten Adresse entspricht, erzeugt der CAM-Speicher 26 ein Anpassungssignal und gibt es an die Leitung 64 ab. Das Anpassungssignal auf der Leitung 64·.
bewirkt über eine Leitung 66, daß die Steuereinrichtung 18 ein verzögertes, das Kopplungsregister ansteuerndes Signal erzeugt, welches auf einer Leitung 48 ein ausgewähltes, korrigiertes Datensignal an das Kopplungsregister 32 ankoppelt;
bewirkt über eine Leitung 68, daß die Steuereinrichtung 18 an einem hierfür vorgesehenen, Generator 58 ein
verzögertes Anforderungs-Bestätigungssignal auf einer Leitung 59 erzeugt;
koppelt über eine Leitung 52 ein Sperrkontrollsignal an den Generator 50 für korrigierbare Fehlersignale an, um die Erzeugung eines Prüf- oder Kontrolisignals auf der
Leitung 51 zu verhindern; und
koppelt über eine Leitung 70 ein die Ladeadresse sperrendes Signal zu sich selbst zurück, um das Laden der Adresse auf der Leitung 28 in eine der
inhaltsadressierten Stellen in dem CAM-Speicher 26 zu verhindern.
Gleichzeitig wird bei Empfang des RAM-Einleitungssignals auf der Leitung 60 durch den RAM-Speicher das unkorrigiert ausgelesene Signal plus den zugeordneten Prüfbits, welche an der adressierten, adressierbaren Speicherstelle in dem RAM-Speicher 10 gespeichert sind, über die Leitung .'3 an die ECC-Schaltung 30 angekoppelt, und die unkorrigiert ausgelesenen Daten werden über die Leitung 34 an das Kopplungsregister 32 angekoppelt. Wenn nun kein Fehler in den ausgelesenen Daten vorhanden ist, verarbeitet die ECC-Schaltung 30 die unkorrigiert ausgelesenen Daten plus die Prüfbits Iiuf der Leitung 36, um die korrigierten, ausgelesenen Daten zu erzeugen und sie über die Leitung 38 dem is Kopplungsregister 32 zuzuführen.
Durch die zeitliche Steuerungskette der Steuereinrichtung 18 wird, nachdem die Zeit die für die korrigierten, ausgelesenen Daten erforderlich ist, auf der Leitung 38 zur Verfügung steht, ein ausgewähltes, korrigiertes ausgelesenes Datensignal (ein verzögertes Kopplungsregister-Ansteuerungssignal) erzeugt und über die Leitung 48 an das Kopplungsregister 32 abgegeben. Auch etwa zur gleichen Zeit wird durch die zeitliche Steuerung der Steuereinrichtung 18 ein Fehlersignal-Ansteuerungssignal erzeugt und über eine Leitung 72 an den Generator 54 für unkorrigierbare Yehlersignale sowit an den Generator 50 für korrigierbare Fehlersignale sowie über eine Leitung 73 an den CAM-Speicher 26 angekoppelt. Wenn kein unkorrigierbares ausgelesenes Datenfehlersignal auf der Leitung 40 noch ein korrigierbares, ausgelesenes Datenfehlersignal auf der Leitung 42 anliegt, wenn aber ein die Ladeadresse sperrendes Signal auf der Leitung 70 vorhanden ist, werden kein entsprechendes Datenparitäts-Fehlersignal oder ein Prüfsignal über Leitungen 55 bzw. 51 an die Anforderungseinheit angekoppelt und es befindet sich auch nicht die Gruppenadresse auf der Leitung 28, weiche an einer der inhaltsadressierten Stellen in dem CAM-Speicher 26 gespeichert ist. Zu diesem Zeitpunkt ist dann die Speicherzugriffsfolge abgeschlossen, und es kann ein neues CNP-Signal an die Leitung 16 angekoppelt werden, um eine neue Bezugnahme auf den Speicher einzuleiten. Wenn eine überlappende Aneinanderreihung oder Steuerfolge verwendet wird, kann ein neues CNP-Signal wie zu dem Zeitpunkt eingeleitet werden, der durch das gestrichelte CNP-Signal 75 dargestellt ist. Bei der Bedingung der Fig.2b, bei welcher kein Fehler und keine Anpassung vorliegt, geben die Anforderungseinheiten laufend ihre Prioritätsanforderungssignaie über die Leitung 13 an die Prioritätslogik 12 und über die Leitung 15 ihre RAM-Adressen an das MAR-Register 14 ab. Wenn ein CNP-Signal anschließend über die Leitung 16 an die Prioritätslogik 12 abgegeben wird, wird der Anforderungseinheit mit der höchsten Priorität Priorität gewährt, wodurch auf der zugeordneten Leitung der Sammelleitung 22 das Signal geschaffen wird, das die zugeordnete RAM-Adresse an das MAR-Register 14 ankoppelt.
Nach der Prioritätsfestlegung durch die Prioritätslogik 12 gibt die Prioritätslogik 12 über die Leitung 20 ein Einleitungssignal an die Steuereinrichtung 18 ab, wobei das Einleitungssignal die zeitliche Steuerung auslöst, welche den Betrieb des Speichersystems der F i g. 1 steuert Die Steuereinrichtung 18 gibt dann als nächstes über die Leitung 61 ein entsprechendes Ladeadressen-Signal an das MAR-Register 14 ab, wodurch die Adresse angesteuert wird, die der Anforderungseinheit zugeordnet ist, welcher in dem MAR-Register 14 Priorität gewährt wurde. Durch das Ladeadressensignal wird die nunmehr in dem MAR-Register 14 geladene Adresse an die Leitung 23 abgegeben, wodurch die RAM-Gruppenadresse über die Leitung 28 an den RAM-Speicher 26 und die RAM-Wortadresse über die Leitung 24 an den RAM-Speicher 10 angekoppelt wird. Als nächstes schafft dann die Steuereinrichtung 18 ein RAM-Einleitungssignal und koppelt es über die Leitung 60 an den RAM-Speicher 10 an und erzeugt ferner ein CAM-Einleitungssignal und Koppelt es über die Leitung 62 an den CAM-Speicher 26 an.
Bei Empfang des CAM-Einleitungssignals vergleicht der CAM-Speicher 26 die Gruppenadresse auf der Leitung 28 mit den Adressen der adressierbaren Speicherstellen des RAM-Speichers 10, weiche vorher dem CAM-Speicher 26 gespeichert worden sind, und in welchem adressierbare Speicherstellen vorher als korrigierbare Fehler festgelegt worden sind. Wenn keine entsprechende (entsprechende) Bedingung vorliegt, d. h. wenn die Adresse auf der Leitung 28 nicht einer Adresse entspricht, die vorher in dem CAM-Speicher 26 gespeichert worden ist, erzeugt der CAM-Speicher 26 ein entsprechendes Signal und koppelt es an die Leitung 64 an. Das entsprechende Signal auf der Leitung 64:
bewirkt über die Leitung 66, daß die Steuereinrichtung 18 ein unverzögertes Kopplungsregister-Ansteuerungssignal erzeugt, welches auf der Leitung 46 ein ausgewähltes, unkorrigiert ausgelesenes Datensignal dem Kopplungsregister 32 zuführt:
bewirkt über eine Leitung 68, daß die Steuereinrichtung 18 ein unverzögertes, Anforderungs-Bestätigungssignal erzeugt, welches auf der Leitung 56 ein unverzögertes Anforderungs-Bestätigungssignal auf der Leitung 59 an den Generator 58 für das Anforderungs-Bestätigungssignal ankoppelt;
koppelt über die Leitung 52 ein Sperr-Prüfsigna! an dem
Generator 50 für korrigierbare Fehlersignale anj
koppelt über die Leitung 70 ein Ladeadressen-Sperr-Signal 2u sich selbst zurück.
Zu diesem Zeitpunkt werden bei Empfang des RAM-Einleitungssignals auf der Leitung 60 durch den RAM-Speicher 10 die unkorrigiert ausgelesenen Daten plus die zugeordneten Prüfbits, die an den adressierten, adressierbaren Speicherstellen in dem RAM-Speicher 10 gespeichert sind, über die Leitung 36 an die ECC-Schaltung 30 und die unkorrigiert ausgelesenen Daten über die Leitung 34 an das Kopplungsregister 32 angekoppelt. Wenn kein Fehler in den ausgelesenen Daten vorhanden ist, arbeitet die ECC-Schaltung 30 mit den unkorrigierten, ausgelesenen Daten plus den Prüfbits auf der Leitung 36, um die korrigierten, ausgelesenen Daten zu erzeugen und sie über die Leitung 38 an das Kopplungsregister 32 anzukoppeln. ' Durch die zeitliche Steuerung der Steuereinrichtung 18 wird, nachdem die für die unkorrigierten, ausgelesenen Daten erforderliche Zeit auf der Leitung 38 zur Verfügung steht, ein ausgewähltes, unkorrigiert ausgelesenes Datensignal (ein unverzögertes Kopplungsregister-Ansteuerungssigrial) erzeugt und über die Leitung 46 an das Kopplungsregister 32 angekoppelt Etwa zur selben Zeit wird durch die zeitliche Steuerung der Steuereinrichtung 18 ein Fehlersignal-Ansteuerungssignal erzeugt, und über die Leitung 72 an den Generator 74 für unkorrigierbare Fehlersignale sowie an den Generator 50 für korrigierbare Fehlersignale und über
:i
die Leitung 73 an den CAM-Speicher 26 angekoppelt Wenn kein unkorrigierbares ausgelesenes Datenfehlersignal auf der Leitung 40 oder ein korrigierbares, ausgelesenes Datenfehlersignal auf der Leitung 42 vorhanden ist, jedoch ein Ladeadressen-Sperrsignal auf s der Leitung 70 vorhanden ist, werden kein entsprechendes Datenparitäts-Fehlersignal oder ein Kontrollsignal über Leitungen 55 bzw. 51 an die Anforderungseinheit angekoppelt, noch wird die Gruppenadresse auf der Leitung 29 an einer der inhaltsadressierten Stellen in ι ο dem CAM-Speicher 26 gespeichert Zu diesem Zeitpunkt ist dann die Speicherzugriffsfolge beendet, und es wird dann ein neues CNP-Signal an die Leitung 16 angekoppelt um eine neue Bezugnahme auf den Speicher einzuleiten. Wenn eine sich überlappende Steuerfolge verwendet wird, kann ein neues CNP-Signal wie zu dem Zeitpunkt eingeleitet werden, der durch das gestrichelte CNP-Signal 74 dargestellt ist.
Bei der Anpassungsbedingung der Fig.2c für korrigierbare Fehler geben die Anforderungseinheiten ze ihre Paritätsanforderungssignale laufend über die Leitung 13 an die Paritätslogik 12 und ihre RAM-Adressen über die Leitung 15 an das MAR-Register 14 ab. Wenn anschließend ein CNP-Signal über die Leitung 16 an die Prioritätslogik 12 angekoppelt wird, wird der Anforderungseinheit mit der höchsten Priorität Priorität gewährt, wodurch auf der zugeordneten Leitung der Sammelleitung 22 das Signal geschaffen wird, das die zugeordnete RAM-Adresse an das MAR-Register 14 .ankoppelt
Nach der Prioritäisfestlegung durch die Prioritätsloigik 12 koppelt die Prioritätslogik 12 über die Leitung 20 ein Einleitungssignal an die Steuereinrichtung 18 an, wobei durch das Steuersignal die zeitliche Steuerung gestartet wird, welche den Betrieb des Speichersystems der F i g. 1 steuert. Als nächstes wird durch die Steuereinrichtung 18 über die Leitung 61 ein Ladeadressensignal an das MAR-Register 14 abgegeben, wodurch die Adresse angesteuert wird, welche der Anforderungseinheit zugeordnet ist, der an dem MAR-Register 14 Priorität gewährt wurde. Durch das Ladeadressensignal wird die nunmehr in dem MAR-Register 14 geladene Adresse an die Leitung 23 abgegeben, wodurch die RAM-Gruppenadresse über die Leitung 28 an den CAM-Speicher 26 und die RAM-Wortadresse über die Leitung 24 an den RAM-Speicher 10 angekoppelt wird. Die Steuereinrichtung 18 erzeugt ein RAM-Einleitungssignal und koppelt es über die Leitung 60 an den RAM-Speicher 10 an und erzeugt ferner ein CAM-Emleitungssignal und koppelt es über die Leitung 62 an den CAM-Speicher 26 an. Bei Empfang des CAM-Einleitungssignals wird in dem CAM-Speicher 26 die Gruppenadresse auf der Leitung 28 mit den Adressen der adressierbaren Stellen des RAM-Speichers 10 verglichen, die vorher in dem CAM-Speicher 26 gespeichert worden sind, und welchem adressierbare Speicherstellen vorher als korrigierbare Fehler festgelegt worden sind. Bei einer Anpassungsbedingung erzeugt der CAM-Speicher 26 ein Afipassungssignal und gibt es an die Leitung 64 ab. Das Anpassungssignal eo auf der Leitung 64
bewirkt, daß die Steuereinrichtung 18 über die Leitung 66 ein verzögertes Kopplungsregister-Ansteuerungssignal erzeugt, durch welches ein ausgewähltes, korrigiertes ausgelesenes Datensignal über die Leitung 48 an das Kopplungsregister 32 angelegt wird;
•!bewirkt ferner, daß über die Leitung 68 die Steuereinrichtung 18 ein verzögertes Anforderungs-Bestätigungssignal erzeugt, durch welches auf der Leitung 56 ein-Verzögertes Anforderungs-Bestätigungssignal auf der" Leitung 59 an den entsprechenden Generator 58 angekoppelt wird;
bewirkt weiter, daß über die Leitung 52 ein SperrkontroHsignal an den Generator 50 für korrigierbare Fehlersignale angelegt wird, um die Erzeugung eines Prüf1 oder Kontrollsignals auf der Leitung 51 zu sperren; und
koppelt über die Leitung 70 ein Ladeadressen-Sperrsignal zu sich selbst zurück, wodurch das Laden der Adresse auf der Leitung 28 in eine der inhaltsadress'iertertStellen in dem CAM-Speicher 28 verhindert wird.
Zu diesem Zeitpunkt werden bei Empfang des RAM-Einleitungssignals auf der Leitung 60 durch den RAM-Speicher 10 auch Λά ? ;--;gie<·* ausgelesenen Datensignale plus die zugeordneten Prüfbit», *. ·. V- τ,-deri adressierten, adressierbaren Stellen in dem RAM-Speicher 10 gespeichert sind, über die Leitung 36 an' die ECC-Schaltung 30 und die unkorrigiert ausgelesenen Daten über die Leitung 34 an das Köpplungsregister 32 angekoppelt Bei einem \jrrigic: baren Fehler in den ausgelesenen Daten arbeitet die ECC-Schaltung 30 mit den unkorrigiert ausgelesenei. Daten plus den Prüfbits auf der Leitung 36, um jeweils -•zu erzeugen und anzukoppeln
.über die Leitung 42 ein korrigierbares ausgelesenes -Datenfehlersignal an den entsprechenden Generator 50;
auf der Leitung 44 die sechs (6) Syndrombits, welche die eine Bitebenengruppe von den 45 Bitebenengruppen kennzeichnen, in welcher der korrigierbare Fehler liegt; und
über die Leitung 38 die korrigierten ausgelesenen Daten an das Kopplungsregister 32.
Durch die zeitliche Steuerung der Steuereinrichtung 18 wird, nachdem die für die korrigierten, ausgelesenen Daten erforderliche Zeit auf der Leitung 38 verfügbar ist ein ausgewähltes, korrigiertes, ausgelesenes Datensignal (ein verzögertes Kopplungsregister-Ansteuerungssignal) erzeugt und über die Leitung 48 an das Kopplungsregister 32 angekoppelt Etwa zu der gleichen Zeit wird durch die zeitliche Steuerung der Steuereinrichtung 18 ein Fehlersig.ial-Ansteuerungssignal erzeugt und über die Leitung 72 an den Cenerator 30 für unkorrigierbare, ausgelesene Datenfehlersignale sowie über die Leitung 73 an den CAM-Speicher 26 angekoppelt. Wenn kein unkorrigierbares ausgelesenes Datenfehlersignal auf der Leitung 40 aber ein korrigierbares ausgelesenes Datenfehlersignal auf der Leitung 42 sowie ein Ladeadressen-Sperrsignal auf der Leitung 70 vorhanden ist, wird kein entsprechendes Datenparitäts-Feftiersignal oder ein Kontrollsignal über die Leitungen 55 bzw. 51 an die Anforderungseinheit angekoppelt, solange die Gruppenadresse auf der Ceitung 80 nicht an einer der inhaltsadressierten Stellen irfdem CAM-Speicher 26 gespeichert ist. Zu diesem Zeitpunkt wird dann die Zugriffsfolge an dem Speicher beendet, und es kann ein neues CNP-Signal an die Leitung 16 abgegeben werden, um eine neue Speicherbezugnahme einzuleiten. Wenn eine überlappende Steuerfolge verwendet wird, kann ein neues CNP-Signal zfl'dem Zeitpunkt begonnen werden, der durch das gestrichelte CNP-Signal 75 dargestellt ist
vBei der in Fig.2d wiedergegebenen, nichtpassenden Bedingung für korrigierbare Fehler geben die Ankopplungseinheiten ihre Prioritätsanforderungssignale laufend über die Leitung 13 an die Prioritätslogik 12 und
ihre RAM-Adressen über die Leitung 15 an das MAR-Register 14 ab. Wenn anschließend ein CNP-Signal über die Leitung 16 an die Prioritätslogik 12 abgegeben wird, wird der Anforderungseinhe-t mit der höchsten Priorität Priorität gewährt, wodurch auf der entsprechenden Leitung der Sammelleitung 22 das Signal erzeugt wird, das die zugeordnete RAM-Adresse an das MAR-Register 14 ankoppelt.
Nach der Prioritätsfestlegung durch die Prioritätslogik 12 koppelt diese (12) über eine Leitung 20 ein Einleitungssignal an die Steuereinrichtung 18 an, wobei mit dem Einleitungssignal die zeitliche Steuerung begonnen wird, welche den Betrieb des Speichersystems der F i g. 1 steuert. Als nächstes wird durch die Steuereinrichtung 18 über die Leitung 61 ein Ladeadressen-Signal an das MAR-Register 14 abgegeben, wodurch die Adresse angesteuert wird, welche der Anforderungseinheit zugeordnet ist, der in dem MAR-Register 14 Priorität gewährt wurde. Durch das Ladeadressensignal wird die nunmehr in dem MAR-Register 14 geladene Adresse an die Leitung 23 abgegeben, wodurch die RAM-Gruppenadresse über die Leitung 28 an den CAM-Speicher 26 und die RAM-Wortadresse über die Leitung 24 an den RAM-Speicher 10 angekoppelt wird. Als nächstes erzeugt dann die Steuereinrichtung 18 ein RAM-Einleitungssignal und koppelt es über die Leitung 60 an den RAM-Speicher 10 an und erzeugt ferner ein CAM-Einleitungssignal und koppelt es über die Leitung 62 an 'Jen CAM-Speicher 26 an.
Nach Empfang des CAM-Einleitungssignals vergleicht der CAM-Speicher 26 die Gruppenadresse auf der Leitung 28 mit den Adressen der adressierbaren Speicherstellen des RAM-Speichers 10, welche vorher in dem CAM-Speicher 18 gespeichert worden sind und wobei an den adressierbaren Speicherstellen vorher festgestellt worden ist, daß es korrigierbare Fehler sind. Bei einer nicht entsprechenden (entsprechenden) Bedingung wird von dem CAM-Speicher 26 ein nicht passendes bzw. entsprechendes Signal erzeugt und an die Leitung 64 abgegeben. Das nicht passende bzw. entsprechende Signal auf der Leitung 64
bewirkt, daß über die Leitung 66 die Steuereinrichtung 18 ein unverzögertes Kopplungsregister-Ansteuerungssignal erzeugt, durch welches auf der Leitung 46 an das Kopplungsregister 32 ein ausgewähltes, unkorrigiertes, ausgelesenes Datensignal angekoppelt wird;
bewirkt, daß über die Leitung 68 die Steuereinrichtung 18 ein unverzögertes Anforderungs-Bestätigungssignal erzeugt, durch welches auf der Leitung 56 an dem Generator 58 ein unverzögertes Anforderungs-Bestätigungssignal auf der Leitung 59 angekoppelt wird;
koppelt über die Leitung 52 ein Sperr-Kontrollsignal an dem Generator 50 für korrigierbare Fehlersignale an, wodurch ein Prüf- oder Kontrollsignal auf der Leitung 51 erzeugt wird, wenn das Fehlersignai-Ansteurrungssignal anschließend an die Leitung 72 abgegeben wird; und
koppelt über die Leitung 70 ein Ladeadressen-Sperr-Signal auf sich selbst zurück, wodurch die Adresse auf der Leitung 28 in eine der inhaltsadressierten Stellen in dem CAM-Speicher 26 geladen wird, wenn das Fehlersignal-Ansteuerungssignal anschließend an die Leitung 72 abgegeben wird. Zu diesem Zeitpunkt werden bei Empfang des RAM-Einleitungssignals auf der Leitung 60 durch den RAM-Speicher 10 die unkorrigiert ausgelesenen Daten plus die zugeordneten Prüfbits, welche an adressierten, adressierbaren Speicherstellen in dem RAM-Speicher 10 gespeichert sind, über die Leitung 26 an die ECC-Schaltung 30 und die unkorrigiert ausgelesenen Daten über die Leitung 34 an das Kopplungsregister 32 angekoppelt Bei Vorliegen eines korrigierbaren Fehlers in den ausgelesenen Daten arbeitet die ECC-Schaltuag 30 mit den unkorrigiert ausgelesenen Daten plus den Prüfbits auf der Leitung 36, zu erzeugen und anzulegen über die Leitung 42 ein korrigierbares, ausgelesenes Datenfehlersignal an dem
ίο Generator 50 für korrigierbare Fehlersignale; auf der Leitung 44 sechs (6) Syndrombits, weiche die eine Bitebenengruppe von 45 Bitebenengruppen kennzeichnen, in welcher der korrigierbare Fehler liegt;
über die Leitung 38 die korrigierten ausgelesenen Daten an das Kopplungsregister 32.
Durch die zeitliche Steuerung der Steuereinrichtung 18 wird, nachdem die für die unkorrigiert ausgelesenen Daten erforderliche Zeit auf der Leitung 38 zur Verfügung steht, ein ausgewähltes, unkorrigiertes, ausgelesenes Datensignal (ein unverzögertes Kopp-Iungsregister-Ansteuerungssignal) erzeugt und über die Leitung 46 dem Kopplungsregister 32 zugeführt Etwa zur seiben Zeit ,vird durch die zeitliche Steuerung der Steuereinrichtung 18 ein Fehlersignal-Ansteuerungssignal erzeugt und über die Leitung 72 an den Generator 54 für unkorrigierbare Fehlersignale sowie an den Generator 50 für korrigierbare Fehlersignale sowie über die Leitung 73 an den CAM-Speicher 26 angekoppelt Wenn kein unkorrigierbares, ausgelesenes Datenfehlersignal auf der Leitung 40, aber ein korrigierbares, ausgelesenes Datenfehlersignal auf der Leitung 42 sowie ein Ladeadressen-Sperrsignal auf der Leitung 70 vorhanden ist, werden kein entsprechendes Datenparitäts-Fehlersignal sondern ein Kontroll- oder Prüfsignal über Leitungen 55 bzw. 51 an die Anforderungseinheit angekoppelt, solange die Gruppenadresse auf der Leitung 28 an einer der inhaltsadressierten Stellen in dem CAM-Speicher 26 gespeichert ist. Zu diesem Zeitpunkt ist dann die Zugriffsfolge an dem Speicher durchgeführt, und es kann ein neues CNP-Signal an die Leitung 16 abgegeben werden, um eine neue Speicherbezugnahme einzuleiten. Wenn eine überlappende Steuerfolge verwendet wird, kann ein neues CNP-Signal zu dem Zeitpunkt begonnen werden, der durch das gestrichelte CNP-Signal 74 wiedergegeben ist.
Für die in F i g. 2e dargestellte Anpassungsbedingung bei unkorrigierbaren Fehlern geben die Anforderungseinheiten laufend ihre Prioritätsanforderungssignale über die Leitung 13 an die Prioritätslogik 12 und über die Leitung 15 ihre RAM-Adressen an das MAR-Register 14 ab. Wenn ein CNP-Signal anschließend über die Leitung 16 an die Prioritätslogik 12 angekoppelt wird, wird der Anforderungseinheit mit der höchsten Priorität Priorität gewährt, wodurch auf einer zugeordneten Leitung der Sammelleitung 20 das Signal geschaffen
wird, das die zugeordneten RAM-Adresse an das MAR-Register 14 ankoppelt.
Nach der Prioritätsfestlegung durch die Prioritätslogik 12 gibt diese (12) über die Leitung 20 ein Einleitungssignal an die Steuereinrichtung 18 ab, wobei dann dieses Einleitungssignal die zeitliche Steuerung auslöst, welche den Betrieb des Speichersystems der F i g. 1 steuert Als nächstes gibt dann die Steuereinrichtung 18 über die Leitung 6i ein Ladeadressen-Signal an das MAR-Register 14 ab, das die Adresse durchsteuert, die der Anforderungseinheit zugeordnet ist, der in dem MAR-Register 14 Priorität gewährt wurde. Durch das
Ladeadressen-Signal wird die nunmehr in das MAR-Register 14 geladene Adresse an die Leitung 23 abgegeben, wodurch die RAM-Gruppenadr'sse über die Leitung 28 an den CAM-Speicher 26 und die RAM-Wortadresse aber die Leitung 24 an den RAM-Speicher 10 angekoppelt wird. Als nächstes erzeugt dann die Steuereinrichtung 18 ein RAM-Einleitungssignal und gibt es über die Leitung 60 an den RAM Speicher 10 ab und erzeugt ferner ein CAM-Einleitungssignal und gibt es über die Leitung 62 an den CAM-Speicher 26 ab. to Nach Empfang des CAM-Einleitungssignals vergleicht der CAM-Speicher 26 die Gruppenadresse auf der Leitung 28 mit den Adressen der adressierbaren Stellen des RAM-Speichers 10, welche in dem CAM-Speicher 26 gespeichert worden sind, und wobei die adressierbaren Adressen vorher als korrigierbare Fehler festgelegt worden sind. Bei einer Anpassungsbedingung erzeugt dann der CAM-Speicher 26 ein Anpassungssignal und gibt es an die Leitung 64 ab. Das Anpassungssigna) auf der Leitung 64 bewirkt dann, daß über die Leitung 66 die Steuereinrichtung 18 ein verzögertes Kopplungsregtster-Ansteuerungssignai erzeugt, um auf der Leitung 48 an das Kopplungsregister 32 ein ausgewähltes, korrigiertes, ausgelesenes Datensignal abzugeben; bewirkt, daß über die Leitung 68 die Steuereinrichtung 18 ein verzögertes Anforderungs-Betätigungssignal erzeugt, wodurch auf der Leitung 56 an den Generator 58 ein verzögertes Anforderungs-Bestätigungssignal auf der Leitung 59 angekoppelt wird; koppelt über die Leitung 52 das Sperr-KontroJlsignal an den Generator 50 an, wodurch die Schaffung eines Kontrollsignals auf der Leitung 51 verhindert wird; und koppelt über die Leitung 70 eine Ladeadressen-Sperrsignal auf sich selbst zurück, wodurch das Laden der Adresse auf der Leitung 28 in eine der inhaltsadressierbaren Stellen in dem CAM-Speicher 26 verhindert ist
Zu diesem Zeitpunkt werden bei Empfang des RAM-Einleitungssignals auf der Leitung 60 durch den RAM-Speicher 10 die unkorrigierten, ausgelesenen Daten plus die zugeordneten Prüfbits, weiche an den adressierbaren Speicheradressen in dem RAM-Speicher 10 gespeichert sind, über die Leitung 26 an die ECC-Schaltung 30 und die unkorrigiert ausgelesenen Daten über die Leitung 34 an das Kopplungsregister 32 abgegeben. Bei Vorliegen eines unkorrigierbaren Fehlers in den ausgelesenen Daten verarbeitet die ECC-Schaltung 30 die unkorrigiert ausgelesenen Daten plus die Prüfbits auf der Leitung, um die unkorrigierbaren ausgelesenen Daten zu schaffen und sie über die so Leitung 38 an das Kopplungsregister 32 abzugeben.
Durch die zeitliche Steuerung der Zeitsteuereinrichtung 18 wird, nachdem die für die korrigierten, ausgelesenen Daten erforderliche Zeit auf der Leitung 38 zur Verfügung steht, ein ausgewähltes, korrigiertes, ausgelesenes Datensigna! (ein verzögertes Kcppiungsregister-Ansteuerungssignal) erzeugt und über die Leitung 48 an das Kopplungsregister 32 abgegeben. Etwa zur selben Zeit wird dann durch die zeitliche Steuerung der Steuereinrichtung 18 ein Fehlersignal- eo Ansteuerungssignal erzeugt und über die Leitung 72 an den Generator 54 sowie an den Generator 50 und über die Leitung 73 an den CAM-Speicher 26 abgegeben. Wenn ein unkorrigierbares, ausgelesenes Datenfehlersignal auf der Leitung 10, kein korrigierbares, ausgelesenes Datenfehlersignal auf der Leitung 42, aber ein Ladeadressen-Sperrsignal auf der Leitung 20 vorhanden ist, werden ein entsprechendes Datenparitäts-Fehlersignal, aber kein Kontrollsignal, über die Leitungen 55 bzw. 51 an die Anforderungseinheit abgegeben, solange die Gruppenadresse auf der Leitung 28 nicht an einer der inhaltsadres&ierbaren Stellen in dem.'CAM-Speicher 26 gespeichert ist. Zu diesem Zeitpunkt ist dann die Zugriffsfolge an dem Speicher durengeführt, und es kann ein neues CNP-Signal an die Leitung 16 abgegeben werden, um mit einer neuen Speioherbezugnahme zu beginnen. Wenn eine sich überlappende Steuerfolge verwendet wird, kann ein neues CNP-Signal zu dem Zeitpunkt begonnen werden, der durch das gestrichelte CNP-Signal 75 dargestellt ist
Bei der in Fig.2f dargestellten nicht passenden Bedingung für unkorrigierbare Fehler geben die Anforderungseinheiten ihre Prioritätsanforderungssignale über die Leitung 13 an die Prioritätslogik 12 und ihre. RAM-Adressen über die Leitung 15 an das MAjR-Register 14 ab. Wenn anschließend ein CNP-Signai über die Leitung 16 an die Prioritätslogik 12 abgegeben wird, wird der Anforderungseinheit mit der höchsten Priorität Priorität gewährt, wodurch auf der zugeordneten Leitung 22 das Signal geschaffen wird, durch das die zugeordnete RAM-Adresse an das MAR-Register 14 angekoppelt wird.
Nach der Prioritätsfestlegung durch die Prioritätslogik(.12 koppelt diese (12) über die Leitung 20 ein Einleitungssignal an die Steuereinrichtung 18 an, wobei das Einleitungssignal die zeitliche Steuerung beginnt, durch welche der Betrieb des Speichersystems der F i g. 1 gesteuert wird. Durch die Steuereinrichtung 18 wird über die Leitung 61 als nächstes ein Ladeadressen-Signal an das MAR-Register 14 abgegeben, das die Adr.dsse durchschaltet, weiche der Anforderungseinheit zugeordnet ist, de>· in dem MAR-Register 14 Priorität gewährt wurde. Durch das Ladeadressensignal wird die nunmehr in das MAR-Register 14 geladene Adresse an die Leitung 23 abgegeben, wodurch die MAR-Gruppenadr'esse über die Leitung 28 an den CAM-Speicher 26 und die RAM-Wortadresse über die Leitung 24 an den RAM-Speicher 10 angekoppelt wird. Als nächstes erzeugt dann die Steuereinrichtung 18 ein RAM-Einleitungssignal und gibt es über die Leitung 60 an den RAM-Speicher 10 ab und erzeugt ferner ein CAM-Einleitungssignal und gibt es über die Leitung 62 an den CAM-Speicher 26 ab. Bei Empfang des CAM-Einleitungssignals vergleicht der CAM-Speicher 26 die Gruppenadresse auf der Leitung 28 mit den Adressen der. adressierbaren Stelle des RAM-Speichers 10, welche vorher in dem CAM-Speicher 26 gespeichert worden sind, und wobei an den adressierbaren Stellen vorher korrigierbare Fehler festgestellt worden sind. Bei einem nicht passenden bzw. entsprechendes Signal erzeugt der CAM-Speicher 26 ein nicht passendes bzw. entsprechendes Signal und gibt es an die Leitung 64 ab. Eif! nicht passendes bzw. entsprechendes Signal auf der Leiiung 64
bewirkt, daß über die Leitung 66 die Steuereinrichtung 18 fcin unverzögertes Kopplungsregister-Ansteuerungssignal erzeugt, durch welches auf der Leitung 46 an das Kopplungsregister 32 ein ausgewähltes, unkorrigiertes ausgelesenes Datensignal abgegeben wird; bewirkt ferner, daß über die Leitung 68 die Steuereinrichtung 18 ein unverzögertes Anforderungs-Bestätigurigssignal erzeugt, durch welches auf der Leitung 56 an dem Generator 58 ein unverzögertes Anforderungs-Bestätigungssignal auf der Leitung 59 abgegeben wird; kogpelt über die Leitung 52 ein Sperr-Kontrollsignal an den Generator 50 für korrigierbare Fehlersignale an;
ί7
und
koppelt l'ber die Leitung 70 ein Sperr-Ladeadressensignal auf sich selbst zurück.
Zu diesem Zeitpunkt werden bei Empfang des RAM-Einleitungssignals auf der Leitung 60 durch den s RAM-Speicher 10 die unkorrigiert ausgelesenen Daten plus die zugeordneten Prüfbits, welche an der adressierbaren Speicheradresse in dem RAM-Speicher 10 gespeichert sind, über die Leitung 36 an die ECC-Schaltung 30 und die unkorrigierten, abgelesenen ι ο Daten über die Leitung 34 an das Kopplungsregister 32 an. Bei einem unkorrigierbaren Fehler in den ausgelesenen Daten verarbeitet die ECC-Schaltung 30 die unkorrigierten, ausgelesenen Daten plus die Prüfbits auf der Leitung 36, um ein unkorrigiertes, ausgelesenes Datenfehlersignal zu erzeugen und über die Leitung 40 an den Generator 54 für unkorrigierbare Fehlersignale anzukoppeln und um das unkorrigierbare, ausgelesene Signal zu schaffen und die Leitung 38 an das
^Kopplungsregister 32 anzukoppeln.
Durch die zeitliche Steuerung der Steuereinrichtung
"118 wird, nachdem die für die unkorrigierten, ausgeleseiihen Daten erforderliche Zeit auf der Leitung 38 verfügbar ist, ein ausgewähltes, unkorrigiertes, ausgelesenes Datensignal (ein unverzögertes Kopplungsregi- -ster-Ansteuerungssignal) erzeugt und über die Leitung 46 an das Kopplungsregister 72 abgegeben. Etwa zur selben Zeit wird dann durch die zeitliche Steuerung der Steuereinrichtung 18 auch ein Fehlersignal-Ansteuerungssignal erzeugt und über die Leitung 72 an den Generator 54 für unkorrigierbare Fehlersignale sowie an den Generator 50 für korrigierbare Fehlersignale und über die Leitung 73 an den CAM-Speicher 26 abgegeben. Wenn ein unkorrigierbares, ausgelesenes Datenfehlersignal auf der Leitung 40, kein korrigierbares, ausgelesenes Datenfehlersignal auf der Leitung 42, aber ein Ladeadressensignal auf der Leitung 43 vorhanden ist, werden ein entsprechendes Datenparitäts-Fehlersignal, aber kein Kontrollsignal über die Leitungen 55 bzw. 51 an die Anforderungseinheit abgegeben, solange die Gruppenadresse auf der Leitung 28 nicht an einer der inhaltsadressierbaren Stellen in dem CAM-Speicher 26 gespeichert ist Zu diesem Zeitpunkt ist dann die Zugriffsfolge an dem Speicher durchgeführt, und es kann ein neues CNP-Signal auf die Leitung 16 gegeben werden, um eine neue Speicherbezugsnahme zu beginnen. Wenn eine überlappende Steuei folge verwendet wird, kann ein neues CNP-Signal zu dem Zeitpunkt begonnen werden, der durch das gestrichelte CWP-Signal 74 dargestellt ist.
Erläuterung von F i g. 3
ί Start
2 Adresse an Adressenregister ankoppeln; Anforderungssignal an Prioritätslogik abgeben
3 Bestimmen der Priorität
4 Adrei en laden in dem Adressenregister
5 Adresse an CAM, RAM abgeben
6 ausgelesene Daten von RAM an Kopplungsregister abgeben; ausgelesene Daten und Prüfbits von RAM 10 an ECC 30 abgeben
7 Anpassung?
8 Fehler?
9 korrigierbarer Fehler?
10 Schaffen eines Datenparitäts-Fehlersignals
11 Anforderungseinheit
12 Stop
13 Erzeugen eines Kontrollsignals
14 Anforderungseinrichtung
15 Stop
16 Schaffen einer verzögerten Kopplungsregisteransteuerung
17 korrigierte, ausgelesene Daten von ECC 30 an Kopplungsregister durchgeben
18 Anforderungseinheit
19 Stop
20 Schaffen einer Kopplungsregisteransteuerung
21 Durchgeben der ausgelesenen Daten von dem Kopplungsregister
22 Anforderungseinheit
23 Stop
24 Adressenladen in CAM 26
25 Stop
Hierzu 9 Blatt Zeichnungen

Claims (4)

Patentansprüche:
1. Hauptspeicher mit einem die Adressen defekter Speicherplätze des Hauptspeichers speichernden Assoziativspeicher, einem beide Speicher gemeinsam bedienenden Adreßregister, wobei der Assoziativspeicher, wenn die Adresse im Speicheradressenregister keiner der im Assoziativspeicher enthaltenen Adressen defekter Speicherplätze im Hauptspeicher entspricht, dies durch ein erstes Signal anzeigt, und wenn die Adresse im Speicheradressenregister einer der im Assoziativspeicher enthaltenen Adresse eines defekten Speicherplatzes im Hauptspeicher entspricht, dies durch ein zweites Signal anzeigt, dadurch gekennzeichnet, daß eine Fehlerkorrekturschaltung (30) vorgesehen ist, and daß das erste bzw. zweite Signal die aus dem Hauptspeicher (10) gelesenen Daten entweder
^ (erstes Signal) direkt zu einem Kopplungsregister '((32) oder (zweites Signal) über die Fehlerkorrekturschaltung (30) an das Kopplungsregister (32) steuert
2. Hauptspeicher nach Anspruch 1, gekennzeichnet durch eine Steuereinrichtung (18), die an den Assoziativspeicher (CAM 26) angekoppelt ist, um einen ersten, entsprechend frühen Kopplungsregister-Ansteuerimpuls an das Kopplungsregister (32) 'abzugeben, um die unkorrigierten, ausgelesenen Bits in dem Kopplungsregister (32) anzukoppeln, wenn der Vergleich eine passende Bedingung ergibt, welche eine Festlegung anzeigt, daß die in dem Speicheradreßregister (MAR 14) gespeicherten Adressenbits in einer zugeordneten Speicheradresse der inhaltsadressierbaren Speicheradressen gespeichert sind, oder um andererseits einen zweiten, entsprechend späteren Kopplungsregister-Ansteuerimpuls an das Kopplungsregister (32) abzugeben, um die korrigierten, ausgelesenen Bits an das Kopplungsregister (32) anzukoppeln, wenn der Vergleich eine passende Bedingung ergibt, die eine Festlegung anzeigt, daß die in dem Speicheradressenregister (MAR 14) gespeicherten Adressenbits nicht in einer zugeordneten Speicherstelle der inhaltsadressierbaren Speicherstellen gespeichert 'sind, wobei der erste Ansteuerungsimpuls den Fehlerfühl- und Korrekturbetrieb der logischen Fehlerfühl- und Korrekturschaltung (ECC 30) umgeht, welcher eine erste, verhältnismäßig schnelle Speicherzugriffszeit schafft, während der zweite Ansteuerimpuls den Fehlerfühl- und Korrekturbetrieb der logischen Fehlerfühl- und Korrekturschaltung (ECC 30) nicht umgeht, welche eine zweite, entsprechend langsame Speicherzugriffszeit schafft, welche alle durch den Vergleich festgelegt sind.
3. Hauptspeicher nach Anspruch 1 oder 2, gekennzeichnet durch einen Generator für ein Prüfoder Kontrollsignal, der mit der logischen Fehlerfühl- und Korrekturschaltung (ECC 30) und dem inhaltsadressierbaren Speicher (CAM 26) verbunden ist, um ein Prüf- oder Steuersignal zu erzeugen, wenn die logische Fehlerfühl- und Korrekturschaltung (ECC 30) festlegt, daß ein korrigierbarer Fehler in den unkorrigierten, ausgelesenen Bits vorhanden ist, und der inhaltsadressierbare Speicher (CAM 26) eine passende Bedingung festlegt, und durch eine Anforderungseinrichtung, an die das Prüf- oder Kontrollsignal zur Durchführung des Vergleichs
angekoppelt wird.
4. Hauptspeicher nach Anspruch 2, gekennzeichnet durch eine ein Paritätsfehlersignai erzeugende Einrichtung, die mit der logischen Fehlerfühl- und Korrekturschaltung (ECC 30) verbunden ist, um ein Paritätsfehlersigna! an die Anforderungseinrichtung anzukoppeln, wenn die logische Fehlerfühl- und Korrektureinrichtung (ECC 30) festlegt, daß ein unkorrigierbarer Fehler in den unkorrigierten, ausgelesenen Bits vorhanden ist.
DE2746805A 1976-10-18 1977-10-18 Hauptspeicher mit einem die Adressen defekter Speicherplätze des Hauptspeichers speichernden Assoziativspeicher Expired DE2746805C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/733,687 US4058851A (en) 1976-10-18 1976-10-18 Conditional bypass of error correction for dual memory access time selection

Publications (2)

Publication Number Publication Date
DE2746805A1 DE2746805A1 (de) 1978-04-20
DE2746805C2 true DE2746805C2 (de) 1984-01-26

Family

ID=24948711

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2746805A Expired DE2746805C2 (de) 1976-10-18 1977-10-18 Hauptspeicher mit einem die Adressen defekter Speicherplätze des Hauptspeichers speichernden Assoziativspeicher

Country Status (3)

Country Link
US (2) US4058851A (de)
JP (1) JPS5350624A (de)
DE (1) DE2746805C2 (de)

Families Citing this family (176)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4191996A (en) * 1977-07-22 1980-03-04 Chesley Gilman D Self-configurable computer and memory system
US4333142A (en) * 1977-07-22 1982-06-01 Chesley Gilman D Self-configurable computer and memory system
US4172281A (en) * 1977-08-30 1979-10-23 Hewlett-Packard Company Microprogrammable control processor for a minicomputer or the like
IT1089225B (it) * 1977-12-23 1985-06-18 Honeywell Inf Systems Memoria con dispositivo rivelatore e correttore a intervento selettivo
DE2811318C2 (de) * 1978-03-16 1983-02-17 Ibm Deutschland Gmbh, 7000 Stuttgart Einrichtung zur Übertragung und Speicherung eines Teilwortes
US4410988A (en) * 1978-08-04 1983-10-18 Honeywell Information Systems Inc. Out of cycle error correction apparatus
DE2915159A1 (de) * 1978-08-04 1980-02-21 Honeywell Inf Systems Verfahren und vorrichtung zur fehlerkorrektur bei datenverarbeitungssystemen
US4225959A (en) * 1978-08-04 1980-09-30 Honeywell Information Systems Inc. Tri-state bussing system
US4366540A (en) * 1978-10-23 1982-12-28 International Business Machines Corporation Cycle control for a microprocessor with multi-speed control stores
US4290105A (en) * 1979-04-02 1981-09-15 American Newspaper Publishers Association Method and apparatus for testing membership in a set through hash coding with allowable errors
FR2453468A1 (fr) * 1979-04-06 1980-10-31 Cii Honeywell Bull Procede et systeme d'exploitation d'une memoire adressable permettant d'associer a volonte des qualificatifs aux donnees contenues dans la memoire
FR2453467A1 (fr) * 1979-04-06 1980-10-31 Cii Honeywell Bull Procede et systeme d'exploitation d'une memoire adressable permettant d'associer a volonte des extensions aux donnees contenues dans la memoire
US4255808A (en) * 1979-04-19 1981-03-10 Sperry Corporation Hard or soft cell failure differentiator
US4310901A (en) * 1979-06-11 1982-01-12 Electronic Memories & Magnetics Corporation Address mapping for memory
US4254476A (en) * 1979-06-25 1981-03-03 Sanders Associates, Inc. Associative processor
DE2925966C2 (de) * 1979-06-27 1982-10-28 Siemens AG, 1000 Berlin und 8000 München Verfahren und Anordnung zur automatischen Erzeugung eines Gültigkeitssignals für aus einem Speicher mit wahlfreiem Zugriff gelesene Datenworte
US4336611A (en) * 1979-12-03 1982-06-22 Honeywell Information Systems Inc. Error correction apparatus and method
US4251494A (en) * 1979-12-21 1981-02-17 Exxon Research & Engineering Co. Process for removing acidic compounds from gaseous mixtures using a two liquid phase scrubbing solution
SE430733B (sv) * 1980-03-24 1983-12-05 Ellemtel Utvecklings Ab Sett och anordning for att under pagaende drift spara fel i ett berekningsforlopp
US4360891A (en) * 1980-04-14 1982-11-23 Sperry Corporation Address and data interface unit
US4485435A (en) * 1981-03-09 1984-11-27 General Signal Corporation Memory management method and apparatus for initializing and/or clearing R/W storage areas
US4468729A (en) * 1981-06-29 1984-08-28 Sperry Corporation Automatic memory module address assignment system for available memory modules
US4497020A (en) * 1981-06-30 1985-01-29 Ampex Corporation Selective mapping system and method
US4450524A (en) * 1981-09-23 1984-05-22 Rca Corporation Single chip microcomputer with external decoder and memory and internal logic for disabling the ROM and relocating the RAM
US4455655A (en) * 1981-09-28 1984-06-19 Hewlett-Packard Company Real time fault tolerant error correction mechanism
JPH0654586B2 (ja) * 1981-10-21 1994-07-20 富士通株式会社 トラックバイト保証方法
US4456996A (en) * 1981-12-02 1984-06-26 Bell Telephone Laboratories, Incorporated Parallel/series error correction circuit
JPS5958547A (ja) * 1982-09-28 1984-04-04 Fujitsu Ltd マイクロプログラム制御装置のエラ−処理方式
US4527272A (en) * 1982-12-06 1985-07-02 Tektronix, Inc. Signature analysis using random probing and signature memory
EP0139743A1 (de) * 1983-04-14 1985-05-08 Convergent Technologies Inc. Taktdehnungsschaltkreis
US4604750A (en) * 1983-11-07 1986-08-05 Digital Equipment Corporation Pipeline error correction
JPS61134988A (ja) * 1984-12-04 1986-06-23 Toshiba Corp 半導体メモリにおける誤り検出訂正機能制御系
US4758982A (en) * 1986-01-08 1988-07-19 Advanced Micro Devices, Inc. Quasi content addressable memory
US4803617A (en) * 1986-02-10 1989-02-07 Eastman Kodak Company Multi-processor using shared buses
US4780809A (en) * 1986-08-08 1988-10-25 Amdahl Corporation Apparatus for storing data with deferred uncorrectable error reporting
DE3782893T2 (de) * 1986-09-10 1993-04-08 Nec Corp Informationsverarbeitungssystem, faehig zur verminderung ungueltiger speicheroperationen durch erkennung von hauptspeicherfehlern.
US4852100A (en) * 1986-10-17 1989-07-25 Amdahl Corporation Error detection and correction scheme for main storage unit
IT1202527B (it) * 1987-02-12 1989-02-09 Honeywell Inf Systems Sistema di memoria e relativo apparato di rivelazione-correzione di errore
US4851993A (en) * 1987-04-20 1989-07-25 Amdahl Corporation Cache move-in bypass
US4800302A (en) * 1987-07-17 1989-01-24 Trw Inc. Redundancy system with distributed mapping
JPH0766340B2 (ja) * 1987-12-25 1995-07-19 松下電器産業株式会社 演算装置
JPH02166700A (ja) * 1988-12-15 1990-06-27 Samsung Electron Co Ltd エラー検査及び訂正装置を内蔵した不揮発性半導体メモリ装置
CA2030404A1 (en) * 1989-11-27 1991-05-28 Robert W. Horst Microinstruction sequencer
US5134619A (en) * 1990-04-06 1992-07-28 Sf2 Corporation Failure-tolerant mass storage system
EP0446534A3 (en) * 1990-03-16 1992-08-05 John Fluke Mfg. Co., Inc. Method of functionally testing cache tag rams in limited-access processor systems
US5287363A (en) * 1991-07-01 1994-02-15 Disk Technician Corporation System for locating and anticipating data storage media failures
JP2568031B2 (ja) * 1992-07-17 1996-12-25 インターナショナル・ビジネス・マシーンズ・コーポレイション 誤り検出及び訂正システム
US5490149A (en) * 1993-12-28 1996-02-06 International Business Machines Corporation Tactical read error recovery strategy based on dynamic feedback
US5535226A (en) * 1994-05-31 1996-07-09 International Business Machines Corporation On-chip ECC status
DE69421925T2 (de) * 1994-09-30 2000-03-16 St Microelectronics Srl Speichergerät mit Fehlerdetektion und -korrektur und Verfahren zum Schreiben und Löschen des Speichergeräts
US5666371A (en) * 1995-02-24 1997-09-09 Unisys Corporation Method and apparatus for detecting errors in a system that employs multi-bit wide memory elements
US5701313A (en) * 1995-02-24 1997-12-23 Unisys Corporation Method and apparatus for removing soft errors from a memory
US5511164A (en) * 1995-03-01 1996-04-23 Unisys Corporation Method and apparatus for determining the source and nature of an error within a computer system
US5596716A (en) * 1995-03-01 1997-01-21 Unisys Corporation Method and apparatus for indicating the severity of a fault within a computer system
EP0766174B1 (de) * 1995-09-29 2002-05-22 STMicroelectronics S.r.l. Speicheranordnung mit verbessertem Ergebnis und verbesserter Zuverlässigkeit
US6199140B1 (en) * 1997-10-30 2001-03-06 Netlogic Microsystems, Inc. Multiport content addressable memory device and timing signals
US6148364A (en) * 1997-12-30 2000-11-14 Netlogic Microsystems, Inc. Method and apparatus for cascading content addressable memory devices
US6240485B1 (en) 1998-05-11 2001-05-29 Netlogic Microsystems, Inc. Method and apparatus for implementing a learn instruction in a depth cascaded content addressable memory system
US6219748B1 (en) 1998-05-11 2001-04-17 Netlogic Microsystems, Inc. Method and apparatus for implementing a learn instruction in a content addressable memory device
US6381673B1 (en) 1998-07-06 2002-04-30 Netlogic Microsystems, Inc. Method and apparatus for performing a read next highest priority match instruction in a content addressable memory device
US6460112B1 (en) 1999-02-23 2002-10-01 Netlogic Microsystems, Llc Method and apparatus for determining a longest prefix match in a content addressable memory device
US6892272B1 (en) 1999-02-23 2005-05-10 Netlogic Microsystems, Inc. Method and apparatus for determining a longest prefix match in a content addressable memory device
US6574702B2 (en) 1999-02-23 2003-06-03 Netlogic Microsystems, Inc. Method and apparatus for determining an exact match in a content addressable memory device
US6539455B1 (en) 1999-02-23 2003-03-25 Netlogic Microsystems, Inc. Method and apparatus for determining an exact match in a ternary content addressable memory device
US6499081B1 (en) 1999-02-23 2002-12-24 Netlogic Microsystems, Inc. Method and apparatus for determining a longest prefix match in a segmented content addressable memory device
US6137707A (en) * 1999-03-26 2000-10-24 Netlogic Microsystems Method and apparatus for simultaneously performing a plurality of compare operations in content addressable memory device
US6567340B1 (en) 1999-09-23 2003-05-20 Netlogic Microsystems, Inc. Memory storage cell based array of counters
US6934795B2 (en) 1999-09-23 2005-08-23 Netlogic Microsystems, Inc. Content addressable memory with programmable word width and programmable priority
US7487200B1 (en) 1999-09-23 2009-02-03 Netlogic Microsystems, Inc. Method and apparatus for performing priority encoding in a segmented classification system
US7110407B1 (en) 1999-09-23 2006-09-19 Netlogic Microsystems, Inc. Method and apparatus for performing priority encoding in a segmented classification system using enable signals
US7143231B1 (en) 1999-09-23 2006-11-28 Netlogic Microsystems, Inc. Method and apparatus for performing packet classification for policy-based packet routing
US6944709B2 (en) 1999-09-23 2005-09-13 Netlogic Microsystems, Inc. Content addressable memory with block-programmable mask write mode, word width and priority
US7272027B2 (en) * 1999-09-23 2007-09-18 Netlogic Microsystems, Inc. Priority circuit for content addressable memory
US6700827B2 (en) 2001-02-08 2004-03-02 Integrated Device Technology, Inc. Cam circuit with error correction
US6914795B1 (en) 2001-08-03 2005-07-05 Netlogic Microsystems, Inc. Content addressable memory with selective error logging
US7237156B1 (en) 2001-08-03 2007-06-26 Netlogic Microsystems, Inc. Content addressable memory with error detection
US7257763B1 (en) 2001-08-03 2007-08-14 Netlogic Microsystems, Inc. Content addressable memory with error signaling
US7002823B1 (en) 2001-08-03 2006-02-21 Netlogic Microsystems, Inc. Content addressable memory with simultaneous write and compare function
US7283380B1 (en) 2001-08-03 2007-10-16 Netlogic Microsystems, Inc. Content addressable memory with selective error logging
US6597595B1 (en) 2001-08-03 2003-07-22 Netlogic Microsystems, Inc. Content addressable memory with error detection signaling
US7043673B1 (en) 2001-08-03 2006-05-09 Netlogic Microsystems, Inc. Content addressable memory with priority-biased error detection sequencing
US7301961B1 (en) 2001-12-27 2007-11-27 Cypress Semiconductor Corportion Method and apparatus for configuring signal lines according to idle codes
US6978343B1 (en) 2002-08-05 2005-12-20 Netlogic Microsystems, Inc. Error-correcting content addressable memory
US7877647B2 (en) * 2003-05-23 2011-01-25 Hewlett-Packard Development Company, L.P. Correcting a target address in parallel with determining whether the target address was received in error
US6987684B1 (en) 2003-07-15 2006-01-17 Integrated Device Technology, Inc. Content addressable memory (CAM) devices having multi-block error detection logic and entry selective error correction logic therein
US6870749B1 (en) 2003-07-15 2005-03-22 Integrated Device Technology, Inc. Content addressable memory (CAM) devices with dual-function check bit cells that support column redundancy and check bit cells with reduced susceptibility to soft errors
US7193876B1 (en) 2003-07-15 2007-03-20 Kee Park Content addressable memory (CAM) arrays having memory cells therein with different susceptibilities to soft errors
US7304875B1 (en) 2003-12-17 2007-12-04 Integrated Device Technology. Inc. Content addressable memory (CAM) devices that support background BIST and BISR operations and methods of operating same
US7797609B2 (en) * 2004-08-19 2010-09-14 Unisys Corporation Apparatus and method for merging data blocks with error correction code protection
US7304873B1 (en) 2005-01-25 2007-12-04 Netlogic Microsystems, Inc. Method for on-the-fly error correction in a content addressable memory (CAM) and device therefor
US7426672B2 (en) 2005-04-28 2008-09-16 International Business Machines Corporation Method for implementing processor bus speculative data completion
US7430703B1 (en) * 2005-05-24 2008-09-30 Xilinx, Inc. Error correction for multiple word read
US7757152B2 (en) * 2005-08-18 2010-07-13 Hewlett-Packard Development Company, L.P. Data corruption scrubbing for content addressable memory and ternary content addressable memory
WO2007132457A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Ltd. Combined distortion estimation and error correction coding for memory devices
WO2007132456A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Ltd. Memory device with adaptive capacity
CN103258572B (zh) 2006-05-12 2016-12-07 苹果公司 存储设备中的失真估计和消除
JP4891704B2 (ja) * 2006-08-28 2012-03-07 株式会社東芝 半導体記憶装置
WO2008053472A2 (en) 2006-10-30 2008-05-08 Anobit Technologies Ltd. Reading memory cells using multiple thresholds
KR20090087077A (ko) * 2006-11-21 2009-08-14 프리스케일 세미컨덕터, 인크. Ecc-유닛 및 부가 프로세싱 장치를 갖는 메모리 시스템
US8151163B2 (en) 2006-12-03 2012-04-03 Anobit Technologies Ltd. Automatic defect management in memory devices
US8151166B2 (en) 2007-01-24 2012-04-03 Anobit Technologies Ltd. Reduction of back pattern dependency effects in memory devices
CN101715595A (zh) 2007-03-12 2010-05-26 爱诺彼得技术有限责任公司 存储器单元读取阈的自适应估计
WO2008139441A2 (en) * 2007-05-12 2008-11-20 Anobit Technologies Ltd. Memory device with internal signal processing unit
US8234545B2 (en) 2007-05-12 2012-07-31 Apple Inc. Data storage with incremental redundancy
US8065583B2 (en) 2007-07-06 2011-11-22 Micron Technology, Inc. Data storage with an outer block code and a stream-based inner code
US8051358B2 (en) 2007-07-06 2011-11-01 Micron Technology, Inc. Error recovery storage along a nand-flash string
US8259497B2 (en) * 2007-08-06 2012-09-04 Apple Inc. Programming schemes for multi-level analog memory cells
US8174905B2 (en) 2007-09-19 2012-05-08 Anobit Technologies Ltd. Programming orders for reducing distortion in arrays of multi-level analog memory cells
WO2009050703A2 (en) 2007-10-19 2009-04-23 Anobit Technologies Data storage in analog memory cell arrays having erase failures
WO2009063450A2 (en) 2007-11-13 2009-05-22 Anobit Technologies Optimized selection of memory units in multi-unit memory devices
US8046542B2 (en) 2007-11-21 2011-10-25 Micron Technology, Inc. Fault-tolerant non-volatile integrated circuit memory
US8327245B2 (en) 2007-11-21 2012-12-04 Micron Technology, Inc. Memory controller supporting rate-compatible punctured codes
US8225181B2 (en) * 2007-11-30 2012-07-17 Apple Inc. Efficient re-read operations from memory devices
US8209588B2 (en) 2007-12-12 2012-06-26 Anobit Technologies Ltd. Efficient interference cancellation in analog memory cell arrays
US8456905B2 (en) * 2007-12-16 2013-06-04 Apple Inc. Efficient data storage in multi-plane memory devices
US8156398B2 (en) 2008-02-05 2012-04-10 Anobit Technologies Ltd. Parameter estimation based on error correction code parity check equations
US8230300B2 (en) 2008-03-07 2012-07-24 Apple Inc. Efficient readout from analog memory cells using data compression
US8400858B2 (en) 2008-03-18 2013-03-19 Apple Inc. Memory device with reduced sense time readout
US8493783B2 (en) 2008-03-18 2013-07-23 Apple Inc. Memory device readout using multiple sense times
US7995388B1 (en) 2008-08-05 2011-08-09 Anobit Technologies Ltd. Data storage using modified voltages
US8169825B1 (en) 2008-09-02 2012-05-01 Anobit Technologies Ltd. Reliable data storage in analog memory cells subjected to long retention periods
US8949684B1 (en) 2008-09-02 2015-02-03 Apple Inc. Segmented data storage
US8482978B1 (en) 2008-09-14 2013-07-09 Apple Inc. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8239734B1 (en) 2008-10-15 2012-08-07 Apple Inc. Efficient data storage in storage device arrays
US8261159B1 (en) 2008-10-30 2012-09-04 Apple, Inc. Data scrambling schemes for memory devices
JP5259343B2 (ja) * 2008-10-31 2013-08-07 株式会社東芝 メモリ装置
US8208304B2 (en) 2008-11-16 2012-06-26 Anobit Technologies Ltd. Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N
US8248831B2 (en) 2008-12-31 2012-08-21 Apple Inc. Rejuvenation of analog memory cells
US8397131B1 (en) 2008-12-31 2013-03-12 Apple Inc. Efficient readout schemes for analog memory cell devices
US8924661B1 (en) 2009-01-18 2014-12-30 Apple Inc. Memory system including a controller and processors associated with memory devices
US8228701B2 (en) * 2009-03-01 2012-07-24 Apple Inc. Selective activation of programming schemes in analog memory cell arrays
US8259506B1 (en) 2009-03-25 2012-09-04 Apple Inc. Database of memory read thresholds
US8832354B2 (en) 2009-03-25 2014-09-09 Apple Inc. Use of host system resources by memory controller
US8238157B1 (en) 2009-04-12 2012-08-07 Apple Inc. Selective re-programming of analog memory cells
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
US8495465B1 (en) 2009-10-15 2013-07-23 Apple Inc. Error correction coding over multiple memory pages
US8677054B1 (en) 2009-12-16 2014-03-18 Apple Inc. Memory management schemes for non-volatile memory devices
US8694814B1 (en) 2010-01-10 2014-04-08 Apple Inc. Reuse of host hibernation storage space by memory controller
US8572311B1 (en) 2010-01-11 2013-10-29 Apple Inc. Redundant data storage in multi-die memory systems
US8694853B1 (en) 2010-05-04 2014-04-08 Apple Inc. Read commands for reading interfering memory cells
US8386895B2 (en) 2010-05-19 2013-02-26 Micron Technology, Inc. Enhanced multilevel memory
US8572423B1 (en) 2010-06-22 2013-10-29 Apple Inc. Reducing peak current in memory systems
US8595591B1 (en) 2010-07-11 2013-11-26 Apple Inc. Interference-aware assignment of programming levels in analog memory cells
US9104580B1 (en) 2010-07-27 2015-08-11 Apple Inc. Cache memory for hybrid disk drives
US8767459B1 (en) 2010-07-31 2014-07-01 Apple Inc. Data storage in analog memory cells across word lines using a non-integer number of bits per cell
US8856475B1 (en) 2010-08-01 2014-10-07 Apple Inc. Efficient selection of memory blocks for compaction
US8493781B1 (en) 2010-08-12 2013-07-23 Apple Inc. Interference mitigation using individual word line erasure operations
US8694854B1 (en) 2010-08-17 2014-04-08 Apple Inc. Read threshold setting based on soft readout statistics
US8582338B1 (en) 2010-08-31 2013-11-12 Netlogic Microsystems, Inc. Ternary content addressable memory cell having single transistor pull-down stack
US8553441B1 (en) 2010-08-31 2013-10-08 Netlogic Microsystems, Inc. Ternary content addressable memory cell having two transistor pull-down stack
US8462532B1 (en) 2010-08-31 2013-06-11 Netlogic Microsystems, Inc. Fast quaternary content addressable memory cell
US8625320B1 (en) 2010-08-31 2014-01-07 Netlogic Microsystems, Inc. Quaternary content addressable memory cell having one transistor pull-down stack
US9021181B1 (en) 2010-09-27 2015-04-28 Apple Inc. Memory management for unifying memory cell conditions by using maximum time intervals
US8990631B1 (en) 2011-03-03 2015-03-24 Netlogic Microsystems, Inc. Packet format for error reporting in a content addressable memory
US8773880B2 (en) 2011-06-23 2014-07-08 Netlogic Microsystems, Inc. Content addressable memory array having virtual ground nodes
US8837188B1 (en) 2011-06-23 2014-09-16 Netlogic Microsystems, Inc. Content addressable memory row having virtual ground and charge sharing
US9183085B1 (en) 2012-05-22 2015-11-10 Pmc-Sierra, Inc. Systems and methods for adaptively selecting from among a plurality of error correction coding schemes in a flash drive for robustness and low latency
US9047214B1 (en) 2012-05-22 2015-06-02 Pmc-Sierra, Inc. System and method for tolerating a failed page in a flash device
US9021333B1 (en) 2012-05-22 2015-04-28 Pmc-Sierra, Inc. Systems and methods for recovering data from failed portions of a flash drive
US9021336B1 (en) 2012-05-22 2015-04-28 Pmc-Sierra, Inc. Systems and methods for redundantly storing error correction codes in a flash drive with secondary parity information spread out across each page of a group of pages
US9021337B1 (en) 2012-05-22 2015-04-28 Pmc-Sierra, Inc. Systems and methods for adaptively selecting among different error correction coding schemes in a flash drive
US9176812B1 (en) 2012-05-22 2015-11-03 Pmc-Sierra, Inc. Systems and methods for storing data in page stripes of a flash drive
US8788910B1 (en) 2012-05-22 2014-07-22 Pmc-Sierra, Inc. Systems and methods for low latency, high reliability error correction in a flash drive
US8793556B1 (en) 2012-05-22 2014-07-29 Pmc-Sierra, Inc. Systems and methods for reclaiming flash blocks of a flash drive
US8972824B1 (en) 2012-05-22 2015-03-03 Pmc-Sierra, Inc. Systems and methods for transparently varying error correction code strength in a flash drive
US8996957B1 (en) 2012-05-22 2015-03-31 Pmc-Sierra, Inc. Systems and methods for initializing regions of a flash drive having diverse error correction coding (ECC) schemes
US9577673B2 (en) 2012-11-08 2017-02-21 Micron Technology, Inc. Error correction methods and apparatuses using first and second decoders
US9026867B1 (en) 2013-03-15 2015-05-05 Pmc-Sierra, Inc. Systems and methods for adapting to changing characteristics of multi-level cells in solid-state memory
US9208018B1 (en) 2013-03-15 2015-12-08 Pmc-Sierra, Inc. Systems and methods for reclaiming memory for solid-state memory
US9053012B1 (en) 2013-03-15 2015-06-09 Pmc-Sierra, Inc. Systems and methods for storing data for solid-state memory
US9009565B1 (en) 2013-03-15 2015-04-14 Pmc-Sierra, Inc. Systems and methods for mapping for solid-state memory
US9081701B1 (en) 2013-03-15 2015-07-14 Pmc-Sierra, Inc. Systems and methods for decoding data for solid-state memory
US9477550B2 (en) 2013-10-24 2016-10-25 Globalfoundries Inc. ECC bypass using low latency CE correction with retry select signal
KR102453437B1 (ko) * 2018-01-25 2022-10-12 삼성전자주식회사 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 반도체 메모리 장치의 동작 방법
US11556416B2 (en) 2021-05-05 2023-01-17 Apple Inc. Controlling memory readout reliability and throughput by adjusting distance between read thresholds
US11847342B2 (en) 2021-07-28 2023-12-19 Apple Inc. Efficient transfer of hard data and confidence levels in reading a nonvolatile memory

Family Cites Families (3)

* 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
US3800286A (en) * 1972-08-24 1974-03-26 Honeywell Inf Systems Address development technique utilizing a content addressable memory
US3917933A (en) * 1974-12-17 1975-11-04 Sperry Rand Corp Error logging in LSI memory storage units using FIFO memory of LSI shift registers

Also Published As

Publication number Publication date
US4058851A (en) 1977-11-15
JPS5350624A (en) 1978-05-09
DE2746805A1 (de) 1978-04-20
US4112502A (en) 1978-09-05

Similar Documents

Publication Publication Date Title
DE2746805C2 (de) Hauptspeicher mit einem die Adressen defekter Speicherplätze des Hauptspeichers speichernden Assoziativspeicher
DE3115541C2 (de)
DE19782077B4 (de) Verfahren und Vorrichtung zum Korrigieren eines Mehrpegelzellenspeichers durch Verwendung fehlerlokalisierender Codes
DE3903496C2 (de)
DE3603926A1 (de) Halbleiter-speicherelement
DE2030760A1 (de) Speicherschaltung
DE1549468A1 (de) Speicheranordnung fuer ein programmgesteuertes Datenverarbeitungssystem
DE2132565B2 (de)
DE2835533A1 (de) Verfahren zur durchfuehrung einer korrektur eines doppel-bit-fehlers, in einem speichersystem, das nur eine korrekturlogik fuer einen einzel-bit-fehler enthaelt, und vorrichtung zur durchfuehrung des verfahrens
DE2456709C2 (de) Schaltungsanordnung zur Fehlererkennung und -korrektur
DE19839680B4 (de) Verfahren und Vorrichtung zur Veränderung des Speicherinhalts von Steuergeräten
DE2157829C2 (de) Anordnung zum Erkennen und Korrigieren von Fehlern in Binärdatenmustern
DE3045609A1 (de) Verfahren und schaltungsanordnung zur abgabe einer korrigierten datengruppe an eine bestimmungsschaltung
DE2719291B2 (de) Datenspeichersystem
DE10206689A1 (de) Integrierter Speicher und Verfahren zum Betrieb eines integrierten Speichers
DE2513262C3 (de) Digitale Codeumwandlungsanordnung
DE4335061C2 (de) Mehrspeichervorrichtung
EP0615211A1 (de) Verfahren zum Speichern sicherheitsrelevanter Daten
DE1935945C3 (de) Taktsteuereinrichtung für mehrere Speicher und eine ihnen gemeinsame Fehlerkorrektureinrichtung
DE3433679C2 (de)
DE102005060901A1 (de) Verfahren zur Erkennung einer Versorgungsunterbrechung in einem Datenspeicher und zur Wiederherstellung des Datenspeichers
DE3009317C2 (de) Hybrid-Assoziativspeicher
EP0453609B1 (de) Verfahren zum Testen einer kleinsten adressierbaren Einheit eines RAM&#39;s auf über einer bestimmten Zahl liegende Bitfehler
DE3716594A1 (de) Schaltungsanordnung fuer fernmeldeanlagen, insbesondere fernsprechvermittlungsanlagen, mit speichereinrichtungen, in denen gespeicherte informationsportionen auf ihre richtigkeit ueberprueft werden
DE3229111C1 (de) Verfahren zur Fehlerkorrektur von Daten

Legal Events

Date Code Title Description
OD Request for examination
OGA New person/name/address of the applicant
D2 Grant after examination
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Free format text: SCHWABE, H., DIPL.-ING. SANDMAIR, K., DIPL.-CHEM. DR.JUR. DR.RER.NAT., PAT.-ANW., 8000 MUENCHEN

8339 Ceased/non-payment of the annual fee