DE1935945B2 - Taktsteuereinrichtung fuer mehrere speicher und eine ihnen gemeinsame fehlerkorrektureinrichtung - Google Patents

Taktsteuereinrichtung fuer mehrere speicher und eine ihnen gemeinsame fehlerkorrektureinrichtung

Info

Publication number
DE1935945B2
DE1935945B2 DE19691935945 DE1935945A DE1935945B2 DE 1935945 B2 DE1935945 B2 DE 1935945B2 DE 19691935945 DE19691935945 DE 19691935945 DE 1935945 A DE1935945 A DE 1935945A DE 1935945 B2 DE1935945 B2 DE 1935945B2
Authority
DE
Germany
Prior art keywords
memory
circuit
clock
register
error correction
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.)
Granted
Application number
DE19691935945
Other languages
English (en)
Other versions
DE1935945A1 (de
DE1935945C3 (de
Inventor
Cornelius John La Grangevüle N.Y. Enright jun (V.St.A.)
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE1935945A1 publication Critical patent/DE1935945A1/de
Publication of DE1935945B2 publication Critical patent/DE1935945B2/de
Application granted granted Critical
Publication of DE1935945C3 publication Critical patent/DE1935945C3/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/1044Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • 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/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Detection And Correction Of Errors (AREA)
  • Electric Clocks (AREA)

Description

Die vorliegende Erfindung betrifft eine Taktsteuercinrichtung für mehrere, vorzugsweise zwei von einer Datenverarbeitungsanlage mittels Auswahlsignale belegte interne Matrixspeicher mit einer gemeinsamen Fehlerkorrektureinrichtung, wobei gegenüber einem vollständigen Lese-Schreib-Zyklus eines Speichers der Minimalabstand der Auswahlsignale wesentlich kürzer ist.
In den Speichern der erfindungsgemäßen Anordnung werden Daten gespeichert, deren größte Einhei'en, die sogenannten »Worte«, beispielsweise eine Länge von 72 Binärstellen, sogenannten »Bits«, haben, die in 8 »Bytes« genannten Gruppen aus je 9 Bits angeordnet sind. Während eines Lese-Schreih-Zyklus eines Speichers wird in dessen erstem Teil ein Daten-Wort aus einem durch eine Adresse bestimmten Speicherplatz herausgelesen und zur Übertragung in die zugehörige Anlage bereitgestellt, während gleichzeitig die Daten aus diesem Speicherplatz gelöscht werden. Letzterer wird dadurch für den bevorstehenden Schreibteil des Speicherzyklus vorbereitet, in dem dann entweder erneut das vorher herausgelesene Wort oder ein neues Wort in diesen Speicherplatz eingeschrieben wird.
Üblicherweise ist jedem Speicher ein Taktgeber zugeordnet, dessen vorbestimmte Folge von Taktsignalen die einzelnen Vorgänge im Speicher während des Lese-Schreib-Zyklus zeitlich steuert. Die zum Speicher gehörende Datenverarbeitungsanlage liefert diesem die Adresse des Speicherplatzes, wo der Lese-Schreib-Zyklus ablaufen soll, ferner die in diesen Speicherplatz neu einzuschreibenden Daten sowie ein sogenanntes »Auswahl«-Signal, das den Taktgeber des Speichers startet.
Andere Signale aus der zugehörigen Anlage, sogenannte Markierungs-Bits, bezeichnen die Speicherplätze bestimmter Bytes, die neue Daten erhalten sollen; sie werden in einem dem Speicher zugeordneten Markierungsregister gespeichert.
Von den 9 Bits jedes Daten-Bytes sind 8 Daten-Bits und 1 Paritäts-Prüfbit, so daß also jedes Wort aus 8 Bytes 64 Daten-Bits und 8 Paritäts-Bits enthält. Die zum Speicher gehörende Anlage enthält Paritäts-Prüf kreise, die mittels des Paritätsbits jedes Bytes einen Fehler in einer einzelnen Bitstelle feststellen können. Einfache Paritäts-Prüfkreise können nur solche Einzelfehler, jedoch nicht Doppelfehler oder Fehler höherer Ordnung ermitteln. Es ist nun vorteilhaft, die Speicherstellen für die 8 Paritätsbits jedes Wortes zur Speicherung einer Gruppe von Bits für die Korrektur von Einzelfehlern (die durch eine einfache Paritätsprüfung nur ermittelt, aber nicht korrigiert werden können) und für die Ermittlung von Doppelfehlern zu benutzen.
Wenn ein Lese-Schreib-Zyklus nur die Aufgabe hat, Daten aus dem Speicher in die zugehörige Anlage zu übertragen, so wird dieser Vorgang »Abruf« genannt. Beim Abrufvorgang eines Speichers mit Fehlerkorrektur wird das Datenwort zunächst aus dem Speicher herausgelesen; es wird auf Fehler geprüft und nach der Korrektur von Einzelfehlern in die zugehörige Anlage übertragen. Beim folgenden Schreibteil des Zyklus wird entweder das ursprüngliche oder das korrigierte Wort in denselben Speicherplatz eingeschrieben.
Bei einer »Speicherung« liefert die zugehörige Anlage ein in den Speicher einzuschreibendes Wort zusammen mit je einem Paritäts-Prüfbit für jedes der 8 Bytes des Wortes. Die Daten-Bits werden zu Fehlerkorrektur-Bits verschlüsselt, und Daten-Bits sowie Fehlerkorrektur-Bits werden in den adressierten Speicher-
h5 platz eingeschrieben.
Eine »Teilspeicherung« findet statt, wenn das Markierungsregister Byteplätzc feststellt, die neue Daten erhalten sollen und andere Byteplätze, die ihre
ursprünglichen Daten beibehalten.
Die Abrufschaltung empfängt vom Speicher ein ganzes Wort und prüft es auf Fehler.
Die Speicherschaltung empfängt von der Datenanlage neue Bytes sowie von der Abrufrchaltung die beizubehaltenden Bytes und bildet einen neuen Satz von Fehlerkoirektur-Bits für den bevorstehenden Schreibteil des Speicherzyklus. In den beizubehaltenden Bytes gefundene Fehler werden korrigiert. Bei einem solchen Speicher kann der übliche Lese-Schreib-Zyklus verlängert werden, um die Zeit, die zwischen dem Leseteil und dem Schreibteil für diese Korrektur benötigt wird.
Weil der Speicher während des größten Teils seines Arbeitszyklus von der zugehörigen Datenanlage unabhängig arbeitet, ist es vorteilhaft, die Arbeiten von mehreren vorhandenen Speichern zu überlappen, derart, daß ein Speicher aus der Anlage Daten empfängt oder Daten in sie überträgt, während andere Speicher unabhängig davon in solchen Teilen des Lese-Schreib-Zyklus arbeiten, an denen die Daten^.nlage nicht beteiligt ist.
Der vorliegenden Erfindung liegt daher die Aufgabe zugrunde, eine Taktsteuereinrichtung zu schaffen, die mehrere Speicher im Überlappungsbetrieb mit gemeinsamer Fehlerkorrektureinrichtung so steuert, daß diese Speicher ohne gegenseitige Störung arbeiten.
Die verwendeten üblichen Datenspeicher haben einen Lese-Schreib-Zyklus von 1 Mikrosekunde Dauer. Die mit den Speichern zusammenarbeitende normale Datenanlage ruft die verschiedenen Speicher in einem vorbestimmten kleinstmöglichen Zeitabstand von etwa Ά Mikrosekunde mittels Auswahlsignalen auf, die l. B. in Abständen von etwa 80 Nanosekunden zur Verfügung gestellt werden. Ein einmal durch ein Auswahlsignal eingeleiteter Lese-Schreib-Zyklus eines Speichers muß ungestört ganz ablaufen können. Die erfindungsgemäße Taktsteuerung hat also die Aufgabe, ein während eines solchen Zyklus etwa auftretendes weiteres Auswaiilsignal für denselben Speicher unwirksam zu machen. Die Taktsteuerung hat ferner die Aufgabe, die Fehlerkorrektureinrichtung und andere gemeinsame Schaltungen zeitlich zu steuern, ohne Rücksicht darauf, welcher Speicher gerade Zugang dazu hat. Da die Arbeitsdauer der gemeinsamen Fehlerkorrektureinrichtung nur '/5 eines Lese-Schreib-Zyklus, also 200 Nanosekunden, beträgt, d. h. nur eine von 5 »Zeitzonen« eines Zyklus beansprucht und somit kleiner ist als der tatsächliche Minimalabstand von 1Ai ns (250 ns) zweier aufeinanderfolgender Speicherauswahlsignale, kann ein Speicher seine Zusammenarbeit mit dieser gemeinsamen Einrichtung beenden, bevor ein vom nächsten Auswahlsignal aufgerufener zweiter Speicher seine Zusammenarbeit mit ihr beginnt. Die Taktsteuerung muß also die Speicher so steuern, daß diejenigen Zeitabschnitte (»Zonen«) ihrer Lese-Schreib-Zyklen, in denen sie mit der gemeinsamen Einrichtung zusammenarbeiten, niemals zusammenfallen können, sondern daß die Speicher zur gleichen Zeit immer in unterschiedlichen Zonen ihres Schreib-Lese-Zyklus arbeiten. w)
Die genannte Aufgabe wird durch die kennzeichnenden Merkmale des Patentanspruchs 1 gelöst.
Ferner ist es wünschenswert, z. B. bei der Speicherung das von der angeschlossenen Anlage beschickte Eingangsregister für einen folgenden Arbeitsvorgang t>r, möglichst schnell wieder freizubekommen, also die Datenentnahme aus ihm vorzuverlegen, sofern nicht ein anderer Speicher gerade in der dieser Zone unmittelbar vorausgehenden Zone arbeitet, '.vas zu gegenseitiger Störung führen würde. Die Taktstem-rung muß somit eine entsprechende Auswahl zwischen zeitlich verschiedenen Steuerimpulsen treffen können.
Dieses Problem wird durch die im Anspruch ζ gekennzeichnete Weiterbildung des Gegenstandes des Anspruchs 1 gelöst.
Nachstehend wird ein Ausführungsbeispiel mit zwei Speichern für die erfindungsgemäße Speicher-Überlappungssteuerung an Hand von Zeichnungen genauer beschrieben.
Von letzteren stellen dar
Fig. 1 das Blockschaltbild einer zwei Speichern gemeinsam zugeordneten Fehlerkorrektureinrichtung,
F i g. 2 das Blockschaltbild eines beiden Speichern gemeinsamen Taktgebers,
Fig. 3 das Blockschaltbild einer Auswahlschaltung für unterschiedliche Taktimpulse für einen Speicher in Abhängigkeit vom Arbeitszustand des anderen Speichers.
Das Blockschaltbild Fig. 1 zeigt zwei schnell arbeitende Datenspeicher A und B mit je einem zugehörigen Datenregister und mit gemeinsamen Schaltungen für die Lese- und Schreiboperationen sowie für die Fehlerkorrektur. Jeder Speicher enthält ferner nicht dargestellte Kreise für die entsprechenden Zeitsteuerungen, die erst in Fig. 2 und 3 genauer bezeichnet sind. Die zu den Speichern gehörende und ebenfalls nicht dargestellte Datenanlage üblicher Art bereitet einen Lese-Schreib-Zyklus eines Speichers durch die Übertragung der Adresse des betreffenden Speicherplatzes in den Speicher vor und löst ihn mittels eines Auswahlsignals für den betreffenden Speicher aus. Die in einen Speicher einzuspeichernden Daten werden von der Anlage über eine Eingabeleitung zugeführt: die einem Speicher entnommenen Daten erscheinen auf einer Ausgabeleitung. Die Anlage liefert außerdem für jeden Speicher Markierungssignale zur Bezeichnung zu ändernder bzw. beizubehaltender Bytes, die in entsprechenden Markierungsregistern gespeichert werden. Die Buchstabenbezeichnungen d, c und ρ an verschiedenen Verbindungsleuungen in F i g. 1 bedeuten, daß diese Leitungen Datenbits bzw. Fehlerkorrekturbits bzw. Paritätsbits übertragen. Auf der Eingabe- und der Ausgabeleitung erscheint das übertragene Won also mit Paritätsbits, in den Speichern in korrigierter Form. Die Wirkungsweise der zwischen diesen beiden Leitungen und den Speichern angeordneten Schahungsteile ergibt sich aus der folgenden Beschreibung des Speicher-, des Abruf- und des Teilspeicherungs-Betriebes.
Bei einer Speicherung werden die Daten einschließlich Paritätsbits über die Eingabeleitung in ein Eingabe-Register übertragen, wo nicht dargestellte Prüfkreise eine normale Paritätsprüfung durchführen. Der Datenteil des Wortes wird dann in ein Speicher-Register übertragen und von dort einem Speicher-Korrektur-Register zugeführt. In beiden Registern befindet sich das Wort während des größten Teils der Fehlerkorrektur. Das Speicher-Register lietert den Datenteil des Wortes auch an einen ersten Fehlerkorrekturbit-Generatorkreis, der die Datenbits, zu Fehlerkorrektur-Codebits verschlüsselt. Diese Fehierkorrektur-Codebits werden ebenfalls in das Speicher-Korrektur-Register übertragen, und zwar in die vorher von den Pai itätsbits eingenommenen Stellen. Aus diesem Register gelangen die vollständigen neuen Daten über einen von zwei Torkreisen in den zugehörigen ausgewählten Speicher.
um in den adressierten Speicherplatz eingeschrieben zu werden.
Während der eben beschriebenen Vorgänge läuft in diesem Speicher ein Lesevorgang ab, der den adressierten Speicherplatz löscht, d. h. für den nachfolgenden Schreibvorgang frei macht.
Bei einem Abruf wird ein Wort in der Fehlerkorrekturform aus dem ausgewählten Speicher in ein Abruf-Register übertragen. Dann wird der Datenteil des Wortes aus dem Abruf-Register in das Speicher-Register überführt, von woaus er der vorstehend beim Speichervorgang beschriebenen Fehlerkorrektur unterworfen und im Speicher-Korrektur-Register für die nachfolgende Wiedereinspeicherung in den ausgewählten Speicher bereitgestellt wird. Der Datenteil des Wortes wird zugleich parallel in ein Abruf-Korrektur-Register sowie in einen zweiten Fehlerkorrekturbit-Generatorkreis übertragen. Der letztere Kreis erzeugt den Datenbits entsprechende Paritätsbits und führt sie ebenfalls dem Abruf-Korrektur-Register zu sowie verschlüsselt gleichzeitig die Datenbits zu neuen Fehlerkorrektur-Codebits.
Diese neuen Fehlerkorrektur-Codebits werden in einem Vergleicherkreis mit den aus dem ausgewählten Speicher zusammen mit den Datenbits abgerufenen und im Abruf-Register zwischengespeicherten alten Fehlerkorrektur-Codebits verglichen. Wenn beide Fehlerkorrektur-Codebits nicht übereinstimmen, also ein Fehler im abgerufenen Wort vorliegt, dann erzeugt der Vergleicherkreis Syndrome genannte Ausgangssignale, aus denen ein Entschlüßlerkreis die Lage der fehlerhaften Bits in den Speicher- und Abruf-Korrektur-Registern ermittelt. Über sein mit den fehlerhaften Bitstellen dieser beiden Register verbundenen Ausgänge korrigiert der Entschlüßler die falschen Datenbits und erzeugt gleichzeitig im Speicher-Korrektur-Register neue richtige Fehlerkorrektur-Codebits sowie im Abruf-Korrektur-Register neue richtige Paritätsbits. Andere Ausgangssignale des Entschlüßlers zeigen das Vorhandensein eines Einzelfehlers oder eines Doppelfehlers an. Nun steht das korrigierte Wort im Abruf-Korrektur-Register zur Weiterleitung über einen Torkreis und die Ausgabeleitung bereit. Da das Abruf-Register Daten erst gegen Ende des Lesevorgangs empfängt, können die Daten für einen Abrufvorgang im Abruf-Korrektur-Register gespeichert werden, während die Daten für den nächsten Speichervorgang bereits in das Speicherregister eingegeben werden.
Bei einer Teil-Speicherung wird das zum ausgewählten Speicher gehörende Markierungsregister eingestellt, so daß es ein oder mehrere Bytes des über die Eingabeleitung zugeführten Wortes — jedoch weniger als das ganze Wort — kennzeichnet, welche die entsprechenden Bytes eines adressierten Speicherwortes ersetzen sollen. Dieses Markierungsregister steuert die Übertragung nur der beizubehaltenden, also wiedercinzuschreibenden Bytes des Speicherwortes aus dem Abruf-Register in das Speicher-Register. Das nun im Speicher-Register stehende neue Wort wird der schon beim Speichervorgang beschriebenen Fehlerkorrektur unterworfen. Die mit dem Abruf-Register verbundenen Fehlerkorrekturkreise prüfen das ganze .Speicherwort, um in den beizubehaltenden Bytes etwa enthaltene Fehler zu ermitteln und zu korrigieren. Das Markicrungsregister verhindert dabei unerwünschte Korrekturen der neuen Bytes im Speicher-Korrektur-Register auf Grund von Fehlern in den nicht wicdcrcin/uschrcibcndcn Bytes des Spcicherwortes.
Fig. 1 zeigt also mehrere Speicher mit zugehörigen eigenen Schaltungsteilen für voneinander unabhängiges Arbeiten während beträchtlicher Teile ihrer Lese-Schreib-Zyklen. Andere den Speichern gemeinsam zugeordnete Schaltungsteile, nämlich die eigentliche Fehlerkorrektureinrichtung arbeiten nur während eines bestimmten kleineren Teils jedes Lese-Schreib-Zyklus eines Speichers. Einzelne Schaltungsteile hängen bezüglich des Zeitpunktes ihrer Arbeit von anderen
ίο Schaltungsteilen ab.
Die erfindungsgemäße Taktsteuereinrichtung für die vorstehend beschriebenen Arbeitsvorgänge beider Speicher bei einem möglichst wirtschaftlichen Überlappungsbetrieb derselben zeigen die nachstehend beschriebenen F i g. 2 und 3.
Zahlreiche Schaltungsteile der Fig. 2 sind für die beiden Speicher A und B doppelt angeordnet und mit denselben Nummern sowie unterscheidenden Indizes a oder b gekennzeichnet. Auf diese Teile wird ohne Indexbezeichnung verwiesen, wo sich die Beschreibung allgemein anwenden läßt.
Ein in die Beschreibung der Fig.! eingeführtes Auswahlsignal wird von der zugehörigen Datenverarbeitungsanlage auf einer Leitung 12 empfangen und über eine UND-Schaltung 13 auf eine Leitung 14 übertragen, die an den gewählten Speicher angeschlossen ist. Das Ausgangssignal der Schaltung 13 wird außerdem über eine Schaltung 15 auf einen Erregereingang (E) einer Verriegelungsschaltung 16 gegeben.
Wenn die Verriegelungsschaltung 16 erregt ist, liefert sie an ihrem Ausgang 1 ein Belegt-Signal, welches in üblicher Weise anzeigt, daß ein Speicher gewählt wurde und für eine weitere Wahl nicht mehr zur Verfügung steht. Die Verriegelungsschaltung 16 ist außerdem über eine UND-Schaltung 18 mit der Schaltung 13 verbunden, um die Annahme weiterer Auswahlsignale zu verhindern, während der Speicher belegt ist. Die Verriegelungsschaltung 16 wird, wie nachstehend erläutert, am Ende eines Lese-Schreib-Zyklus gelöscht und gibt so den Speicher für eine weitere Operation frei.
Die Verriegelungsschaltung 16 umfaßt vorzugsweise
zwei UND-Schaltungen, deren Ausgänge mit den Eingängen einer ODER-Umkehrschaltung verbunden sind (nicht dargestellt). Das Ausgangssignal dieser Schaltung ist als eine Null im Blockschaltbild der Verriegelungsschaltung gezeigt. Das Ausgangssignal der ODER-Umkehrschaltung läuft über eine weitere Umkehrschaltung (ebenfalls nicht dargestellt) und bildet ein 1-Ausgangssignal, welches auf einen Eingang einer UND-Schaltung (ebenfalls nicht dargestellt) wird, deren zweiter Eingang als Lösch-Eingang (L) im Blockschaltbild dargestellt ist. Die zweite UND-Schaltung empfängt als Eingang das Einschaltsignal. Für andere Verriegelungsschaltungen der F i g. 2 und 3 erfordern zweite UND-Schaltungen die gleichzeitige Erregung zum Einschalten der Verriegelung, oder eine dritte UND-Schaltung liefert eine ODER-Funktion zum Einschalten der Verriegelung, wie später für die einzelnen Schaltungen genauer erklärt wird.
W) Das Ausgangssignal jeder UND-Schaltung 13a, 13£ wird außerdem über eine gemeinsame ODER-Schaltung 21 geleitet, um ein Ausgangssignal zum Starten einer Zeitgeberschaltung zu liefern, die als nächste beschrieben wird. Das Ausgangssignal der Zeitgeberschaltung
ι·'· ist ebenfalls über herkömmliche nicht dargestellte Schaltungen für das Löschen der Eingaberegister und die anschließende Einstellung der Eingaberegister zum Speichern des Wortes auf der Eingabeleitung am
Anfang eines Zyklus vorgesehen.
Die Zeitgeberschaltung enthält einen Zeitimpulsgenerator, der vorzugsweise eine Verzögerungsleitung 24 und eine Impulsformerschaltung 25 umfaßt, welche beim Empfang eines Signals vom Ausgang der ODER-Schaltung 21 einen Anfangsimpuls auf die Verzögerungsleitung gibt. Die Verzögerungsleitung ist angezapft, um Impulse in einer vorbestimmten Zeitfolge abzugeben. Die Verzögerungsleitung ist betriebsmäßig in 5 mit den Zahlen I —V bezeichnete Zeitzonen unterteilt. Die Leitung kann konstruktiv in entsprechende Abschnitte durch Schaltungen unterteilt werden, die die Zeitimpulse am Ende eines Abschnitts empfangen und ein verstärktes Eingangssignal auf den nächsten Abschnitt geben. Die Abschnitte können teilweise doppelt vorhanden sein, um zusätzliche Anzapfungen zu ermöglichen, und sie können überlappt sein zwecks genauerer Zeitfixierung von taktimpulsen, die in Beziehung zueinander stehen und in verschiedenen Zeitzonen auftreten.
Der soweit beschriebene Taktgeber liefert Signale, die zu bestimmten Zeitpunkten in dem von einem Auswahlsignal eingeleiteten Arbeitszyklus des Speichers auftreten, jedoch ohne Rücksicht darauf, welcher Speicher tatsächlich in der entsprechenden Phase seines Arbeitszyklus steht. Die Zeitzonen sind etwas kleiner gehalten als das Intervall zwischen den Auswahlimpulsen von der zugehörigen Datenanlage, so daß nur ein Speicher in jeweils einer Zone arbeiten kann. Die Teile der Fehlerkorrekturschaltungen, die voneinander zeitabhängig gesteuert werden, arbeiten innerhalb einer einzigen Zeitzone. Somit betätigen die direkt von der Verzögerungsleitung abgenommenen Taktsignale die Schaltungen, welche beiden Speichern gemeinsam sind.
Solche der Verzögerungsleitung direkt entnommenen Taktimpulse steuern beispielsweise viele Teile der Fehlerkorrektureinrichtung. Andere Taktimpulse sind für Schaltungen bestimmt, die für jeden Speicher doppelt vorhanden sind, und es sind Einrichtungen vorgesehen, um diese Signale auf den entsprechenden Speicher zu leiten.
So werden bestimmte Zeitsignale nach Bedarf dem Speicher A oder dem Speicher B zugeführt. Zu diesem Zweck ist jeder Speicher mit je einem Verriegelungskreis in Form einer bistabilen Kippschaltung für jede Zeitzone ausgerüstet. In der Zeichnung F i g. 2 sind diese Verriegelungskreise durch die Buchstaben A oder Bund die römische Zahl der Zeitzone bezeichnet. Diese Kreise sind mit der Verzögerungsleitung so verbunden, daß immer nur ein Verriegelungskreis für jede Zeitzone und für jeden Speicher erregt werden kann. Der Erreger-Eingang E des Verriegelungskreises A I wird vom Ausgang der Schaltung 15a am Anfang eines Arbeitszyklus für den Speicher A erregt, wenn die Schaltung 15A das Auswahlsignal zur Verriegelungsschaltung 16a durchläßt. Der Kreis A I empfängt an seinem Löscheingang ein Signal unmittelbar vor dem Ende der ersten Zeitzone und ist somit so lange erregt, wie der Speicher A in der Zeitzone I arbeitet. Der Verriegelungskreis A II wird durch das gleichzeitige Auftreten eines Taktimpulses am Ende der Zeitzone I und des 1-Ausgangssignals der vorhergehenden Verriegelung A I an seinen beiden Erregereingängen eingeschaltet. Das Eingangssignal von der Verriegelung A I stellt sicher, daß die Verriegelung A II nur erregt wird, wenn der Speicher A in seinem Arbeitszyklus in die Zeitzone II eintritt. Die Verriegelungskreise A III, A IV und A V sind ähnlich wie A II geschaltet und werden nacheinander ein- und ausgeschaltet, wenn der Speicher A die entsprechenden Zeitzonen durchläuft. Die Verriegelungskreise ß I — B V für den Speicher B sind ebenso geschaltet und mit denselben Punkten der Verzögerungsleitung verbunden wie die entsprechenden Verriegelungskreise Al-AW des Speichers A. Mit Hilfe geeigneter, von diesen Verriegelungskreisen gesteuerter Schaltmittel können somit jedem Speicher getrennt die richtigen Taktimpulse zugeführt werden.
Fig. 2 zeigt zwei solche Schaltungen, mit denen die Übertragung eines bestimmten Taktimpulses der Verzögerungsleitung an die gewünschte Schaltungsstelle durch jeweils einen Verriegelungskreis der betreffenden Zeitzone und des betreffenden Speichers gesteuert wird. Ein UND-Kreis 29a kombiniert das Ausgangssignal des Verriegelungskreises A V und ein Taktsignal am Ende der Zeitzone V zu einem Löschsignal für den Verriegelungskreis 16a am Ende des Zyklus des Speichers A. Ein entsprechender UND-Kreis 29/> kombiniert dasselbe Taktsignal mit dem Ausgangssignal des Verriegelungskreises θ V zu einem Löschsignal für den Verriegelungskreis 16fo Somit erhält jeder Speicher das nur für ihn bestimmte Taktsignal zur Steuerung seiner Arbeit in dem entsprechenden Zeitpunkt innerhalb seines Zyklus.
Die bereits im Zusammenhang mit F i g. 1 beschriebenen Schaltungen erhalten die erforderlichen richtigen Taktimpulse entweder aus Schaltungen von der Art der UND-Kreise 29 oder direkt von der Verzögerungsleitung 24. Während der Zeitzone I werden die Markierungsregister des jeweils arbeitenden Speichers eingestellt. In der Zeitzone I bereitet außerdem der in F i g. 2 mit f 1 bezeichnete Taktimpuls die Schaltung F i g. 3 für die Einstellung des Speicherregisters vor. Die Zeitzone II liefert einen Taktimpuls 12 oder / 4 über die Schaltung F i g. 3 als Steuersignal für die Einstellung des Speicherregisters und weitere Steuerimpulse zum Löschen und anschließenden Einstellen eines Registers in der Vergleicherschaltung, das die während des Vergleichsvorgangs erzeugten Syndrome speichert, zum Einstellen der Speicher-Korrekturregister und Abruf-Korrekturregister und anschließenden Löschen dieser Register, zur Anzeige in der zugehörigen Datenverarbeitungsanlage, daß auf der Ausgangsleitung eine Datenausgabe bevorsteht, und zum Löschen der Datenregister des Speichers. Die Zeitzone IV liefert ein Steuersignal an einen ausgewählten Torkreis zwecks Informations-Übertragung vom Abruf-Korrektur-Register auf die Datenausgabeleitung. Die Zeitzone V liefen am Ende des Speicherzyklus verschiedene Löschsignale Somit entsprechen die Zeitzonen I und II etwa dem Lesevorgang eines Speichers, die Zeitzone III dei Fehler-Korrektur und die Zeitzonen IV und V derr Schreibvorgang innerhalb des Speicherzyklus.
Die bereits erwähnte, aber noch nicht erklärt« Schaltung 15 in F i g. 2 liefert ein weiteres Eingangssignal auf die Schaltung. Wenn die Versorgungsspannung ausfällt und dann wiederkehrt, ist es zweckmäßig all« Verriegelungsschaltungen in ihren Anfangszustanc zurückzuversetzen. Ein dann auf die Schaltungen 15i und 15/5) gegebenes Eingangssignal und ein ähnliche! Eingangssignal zum Einstellen der Verriegelungskreis« 16 und der Leitungen in den Registern steuert die Schaltungen in geeigneter Weise durch einen voller Zyklus, um alle Verriegelungskreise zu löschen. Du Datenübertragung wird während dieses Löschvorgang! gesperrt.
Der in Fig.2 beschriebene Taktgeber liefert somi
eine feste Folge von Taktimpulsen, gewährleistet eine ausreichende zeitliche Trennung der Zusammenarbeit mehrerer Speicher mit einer gemeinsamen (z. B. Fehlerkorrektur-) Einrichtung und führt bei gleichzeitigem, überlappendem Betrieb mehrerer Speicher die erforderlichen Steuerimpulse nur dem jeweils zuständigen Speicher zu.
Die im Zusammenhang mit den Taktimpulsen 11 bis /4 der Zeitzone Ii bereits genannte und nachstehend genauer beschriebene Schaltung F i g. 3 verlegt bestimmte Arbeitsvorgänge eines Speichers innerhalb seines Arbeitszyklus vor oder verzögert sie in Abhängigkeit vom Arbeitszustand anderer Speicher in einer benachbarten Zeitzone.
Die Schaltung F i g. 3 empfängt vom Taktgeber nach F i g. 2 Taktimpulse und Ausgangssignale der Zeitzonen-Verriegelungskreise und steuert mit ihrem Ausgangssignal die Einstellung des Speicher-Registers durch das Eingaberegister. Für jeden der beiden Speicher ist ein eigener Schaltungsteil vorgesehen, dessen Bezugszeichen einen den zugehörigen Speicher kennzeichnenden Indexbuchstaben (a oder b) tragen. Der Taktimpuls 12 ist ein früher Impuls in der Zeitzone II, der nur dann die Einstellung des Speicherregisters einleiten kann, wenn kein anderer Speicher in einer unmittelbar vorausgehenden Zeitzone z. B. III arbeitet. Der Zeitpunkt 11 ist ein früherer Zeitpunkt in der Zeitzone I, bei welchem entschieden wird, ob das Speicherregister zum frühen Zeitpunkt 12 oder erst zu einem späteren Zeitpunkt f4 eingestellt werden kann. Der Zeitpunkt ί 4 liegt so spät, daß das Speicherregister ungeachtet der Operation eines anderen Speichers eingestellt werden kann. Zum Zeitpunkt i5 wird ein Löschsignal für die Verriegelungskreise des betreffenden Schaltungsteils der Fig. 3 abgegeben. Die einzelnen Schaltelemente werden bei der Beschreibung der Auswahl des frühen Signals f2 und des späten Signals 14 erläutert.
Der 1-Ausgang eines Verriegelungskreises 53 steuert den Durchlaß des Taktimpulses f2 durch eine Torschaltung 54 zu einem allen Speichern gemeinsamen ODER-Kreis 56, dessen Ausgangssignal die Einstellung des Speicher-Registers auslöst. Der Verriegelungskreis 53 wird durch ein Signal an einem seiner beiden Eingänge erregt. Das Eingangssignal 58 wird von einem UND-Kreis 59 geliefert, der den in der Zeitzone I auftretenden Taktimpuls ti, das 1-Ausgangssignal des Verriegelungskreises der Zone I für einen bestimmten Speicher und das O-Ausgangssignal des Verriegelungskreises 53 des anderen Speichers empfängt. Die genannten Schaltelemente 53 und 59 sind so untereinander verbunden, daß der Verriegelungskreis 53 immer
ίο nur eines Speichers erregt werden kann, um den frühen Taktimpuls 12 zu benutzen. Wenn z. B. der Speicher B in der Zone Il arbeitet, ist sein Verriegelungskreis 53i> erregt und sperrt den UND-Kreis 59 des Speichers A. Wenn der Speicher A in der Zone I arbeitet, darf er den frühen Taktimpuls nicht auch benutzen, da dies die Arbeit des Speichers B stören würde. Daher verhindert die Sperrung des UND-Kreises 59a für die Signale 11 und A I eine Erregung des Verriegelungskreises 53a und somit die Benutzung des frühen Taktimpulses f 2 durch den Speicher A
Der späte Taktimpuls f4 wird über einen UND-Kreis 62 zugeführt, der von einem Verriegelungskreis 63 gesteuert wird. Dieser Verriegelungskreis 63 wurde am Ende einer vorhergehenden Arbeit des betreffenden Schaltungsteils der Fig.3 zurückgestellt, so daß der UND-Kreis 62 das späte Zeitsignal ί 4 durchlassen kann. Der Verriegelungskreis 63 wird ebenfalls durch das Ausgangssignal des zugehörigen UND-Kreises 59 erregt und sperrt den Durchlaß eines späten Taktimpulses, wenn der frühe benutzt werden soll und umgekehrt, verhindert also die gleichzeitige Benutzung eines frühen und eines späten Taktimpulses i2 und f 4 in demselben Speicherzyklus. Ein UND-Kreis 64 empfängt einen dem Taktimpuls f 2 dicht folgenden Taktimpuls f 3 sowie ein Ausgangssignal des Verriegelungskreises der Zone II für den zugehörigen Speicher. Das Ausgangssignal des Kreises 64 erregt den zugehörigen Verriegelungskreis 53, dessen O-Ausgang die Benutzung desselben Taktimpulses f2 oder /4 durch einen anderen Speicher verhindert. Ein UND-Kreis 65 empfängt am Ende der Taktimpuls-Auswahl die Eingangssignale f5 und A III oder Z? III und löscht die zugehörigen Verriegelungskreise 53 und 63.
Hierzu 2 Blatt Zeichnungen

Claims (4)

Patentansprüche:
1. Taktsteuereinrichtung für mehrere, vorzugsweise zwei von einer Datenverarbeitungsanlage mittels Auswahlsignale belegte interne Matrixspeicher mit einer gemeinsamen Fehlerkorrektureinrichtung, wobei gegenüber einem vollständigen Lese-Schreib-Zyklus eines Speichers der Minimalabstand der Auswahlsignale wesentlich kürzer ist, gekennzeichnet durch einen von den Auswahlsignalen (auf Leitung 12a, b) ausgelösten Taktimpulsgenerator (24, 25) mit einer einem Lese-Schreib-Zyklus eines Speichers entsprechenden Taktzeit, die in mehrere verschiedenen Zyklusabschnitten zugeordnete Zeitzonen (1 bis V) mit je einer kleineren Dauer als der Minimalabstand der Auswahlsignale unterteilt ist, durch den Matrixspeiehern (A, B) getrennt zugeordnete Ketten aus bistabilen Kippschaltungen (A I bis /4 V; BI bis SV), die mit logischen und Verriegelungsschaltkreisen (13, 15, 18, 21; 16) zur Sperrung gegen weitere Auswahlsignale während eines Lese-Schreib-Zyklus sowie zur Verhinderung der Erregung von mehr als einer bistabilen Kippschaltung während einer jeden Zeitzone verbunden sind, durch eine, den Matrixspeichern (A, B) zugeordnete Auswahlschaltung (Fig.3) für den Durchlaß eines von zwei für einen Speicher (z. B. A) bestimmten Taktimpulsen (t 2,14) einer Zeitzone (II) zu einem den Matrixspeichern (A, B) gemeinsamen Speicherregister in Abhängigkeit vom Arbeitszustand des anderen Speichers (z. B. B).
2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß in der Auswahlschaltung (Fig.3) der für einen Speicher bestimmte frühe Taktimpuls (t 2) nur dann nicht von einem zugehörigen UND-Kreis (54) zu dem gemeinsamen Speicher-Register durchgelassen wird, wenn ein Frühsteuerungs-Verriegelungskreis (53) des anderen Speichers bzw. eines anderen Speichers über seinen Eingangs-UND-Kreis (59) von einem Vorbereitungs-Taktimpuls (t 1) bereits zwei Zeitzonen früher erregt wurde und durch Sperrung des Eingangs-UND-Kreises (59) des betreffenden Speichers die Erregung von dessen Frühsteuerung-Verriegelungskreis (53) in der vorhergehenden Zeitzone (I) verhinderte.
3. Anordnung nach den Ansprüchen 1 und 2, dadurch gekennzeichnet, daß ein parallel zum Frühsteuerungs-Verriegelungskreis (53) erregter Spätsteuerungs-Verriegelungskreis (63) mit zugehörigem UND-Kreis (62) den Durchlaß eines spaten Taktimpulses (T4) und eines Frühimpulses (72) durch die Auswahlschaltung in derselben Zeitzone verhindert.
4. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß der Taktimpulsgenerator aus einer in fünf, vorzugsweise gleiche, Abschnitte unterteilten Verzögerungsleitung (24) besteht, die über einen I mpulsformer (25) und die logischen Schaltkreise (13, 21) mit den Speicher-Auswahlsignalen (Leiig. 12) gespeist wird.
DE1935945A 1968-07-15 1969-07-15 Taktsteuereinrichtung für mehrere Speicher und eine ihnen gemeinsame Fehlerkorrektureinrichtung Expired DE1935945C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US745010A US3560942A (en) 1968-07-15 1968-07-15 Clock for overlapped memories with error correction

Publications (3)

Publication Number Publication Date
DE1935945A1 DE1935945A1 (de) 1970-01-22
DE1935945B2 true DE1935945B2 (de) 1978-01-05
DE1935945C3 DE1935945C3 (de) 1978-08-31

Family

ID=24994852

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1935945A Expired DE1935945C3 (de) 1968-07-15 1969-07-15 Taktsteuereinrichtung für mehrere Speicher und eine ihnen gemeinsame Fehlerkorrektureinrichtung

Country Status (5)

Country Link
US (1) US3560942A (de)
JP (1) JPS4749205B1 (de)
DE (1) DE1935945C3 (de)
FR (1) FR2012945A1 (de)
GB (1) GB1250926A (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3659275A (en) * 1970-06-08 1972-04-25 Cogar Corp Memory correction redundancy system
US3691534A (en) * 1970-11-04 1972-09-12 Gen Instrument Corp Read only memory system having increased data rate with alternate data readout
US3771145B1 (en) * 1971-02-01 1994-11-01 Wiener Patricia P. Integrated circuit read-only memory
US3806880A (en) * 1971-12-02 1974-04-23 North American Rockwell Multiplexing system for address decode logic
US3893070A (en) * 1974-01-07 1975-07-01 Ibm Error correction and detection circuit with modular coding unit
US3906453A (en) * 1974-03-27 1975-09-16 Victor Comptometer Corp Care memory control circuit
DE2651314C2 (de) * 1976-11-10 1982-03-25 Siemens AG, 1000 Berlin und 8000 München Sicherheits-Ausgabeschaltung für eine Binärsignale abgebende Datenverarbeitungsanlage
DE2811318C2 (de) * 1978-03-16 1983-02-17 Ibm Deutschland Gmbh, 7000 Stuttgart Einrichtung zur Übertragung und Speicherung eines Teilwortes
US4758963A (en) * 1982-09-14 1988-07-19 Analogic Corporation Modular computing oscilloscope with high speed signal memory

Also Published As

Publication number Publication date
DE1935945A1 (de) 1970-01-22
US3560942A (en) 1971-02-02
GB1250926A (de) 1971-10-27
FR2012945A1 (de) 1970-03-27
JPS4749205B1 (de) 1972-12-11
DE1935945C3 (de) 1978-08-31

Similar Documents

Publication Publication Date Title
DE1549468C3 (de) Speicheranordnung für eine programmgesteuerte Datenverarbeitungsanlage
DE1524225B2 (de) Verfahren zum betriebe einer redigier- und wiedergabeeinrichtung
DE2230119C2 (de) Einrichtung zur elektronischen Überwachung des Auftretens von Ereignissen innerhalb bestimmter Zeitabschnitte
DE1951552B2 (de) Speichereinrichtung mit Sicherung durch Schutzschlüssel
DE2928488A1 (de) Speicher-subsystem
DE2551238A1 (de) Informationsuebertragungseinrichtung
DE2115198A1 (de) Verfahren zum Wiederauffinden von Datensätzen
DE1524788A1 (de) Schaltungsanordnung zur Erkennung und zum automatischen Ersetzen von schadhaften Speicherstellen in Datenspeichern
DE1935945C3 (de) Taktsteuereinrichtung für mehrere Speicher und eine ihnen gemeinsame Fehlerkorrektureinrichtung
DE2906923C2 (de) Speichergesteuerte, kraftangetriebene Schreibmaschine
DE1524111B2 (de) Elektronische Datenverarbeitungsanlage
DE1201586B (de) Programmgesteuerte Daten-Auswertmaschine
DE1474351C3 (de) Datenspeicher
DE1293188B (de) Schaltungsanordnung zur UEbertragung von Pruefinformationen mit vorbestimmter Paritaet in Datenverarbeitungsanlagen
DE2331928C3 (de) Druckvorrichtung zum Ausdrucken von Daten in einer Tabelle
DE1285218B (de) Datenverarbeitungsanlage
DE1499671A1 (de) Puffer-Datenspeichersystem mit einem zyklischen Speicher
DE1449774C3 (de) Speichereinrichtung mit kurzer Zugriffszeit
CH640783A5 (de) Tabulatorsteuervorrichtung.
DE2316321C2 (de) Schaltungsanordnung an der Schnittstelle zwischen einer Steuerung eines Rechenwerkes und einem Hauptspeichers einer Rechenanlage
DE2404887C2 (de) Schaltungsanordnung für den Informationsaustausch mit einem Rechner
DE2610428C3 (de) Anordnung zur Steuerung der Zwischenspeicherung von zwischen zwei Funktionseinheiten zu übertragenden Daten in einem Pufferspeicher
DE2547031C3 (de) Datenverarbeitungseinrichtung
DE1499846A1 (de) Verfahren und Einrichtung zum Lesen eines inhaltsadressierbaren Speichers
DE1449816C3 (de) Schaltungsanordnung zur Steuerung des Zugriffs zu einem Magnettrommelspeicher

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
8339 Ceased/non-payment of the annual fee