DD258096A1 - Speicheranordnung mit vierfachem parallelem lesezugriff - Google Patents

Speicheranordnung mit vierfachem parallelem lesezugriff Download PDF

Info

Publication number
DD258096A1
DD258096A1 DD30032787A DD30032787A DD258096A1 DD 258096 A1 DD258096 A1 DD 258096A1 DD 30032787 A DD30032787 A DD 30032787A DD 30032787 A DD30032787 A DD 30032787A DD 258096 A1 DD258096 A1 DD 258096A1
Authority
DD
German Democratic Republic
Prior art keywords
address
memory
memory blocks
addresses
data
Prior art date
Application number
DD30032787A
Other languages
English (en)
Inventor
Ernst Kutschbach
Dietmar Uhlig
Original Assignee
Robotron Veb K
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 Robotron Veb K filed Critical Robotron Veb K
Priority to DD30032787A priority Critical patent/DD258096A1/de
Publication of DD258096A1 publication Critical patent/DD258096A1/de

Links

Landscapes

  • Static Random-Access Memory (AREA)

Abstract

Die Erfindung betrifft eine Speicheranordnung, bei der vier Informationen parallel gelesen werden koennen, ohne dass Einschraenkungen in den Adressen vorhanden sind, fuer die Anwendung in Rechnern, die mit Mehradressenbefehlen arbeiten oder parallel zur Befehlsausfuehrung einen DMA-Betrieb zulassen sowie Globalspeicher in Mehrrechnersystemen. Jede der vier Adressen besteht aus den Teilen Blockadresse und Adresse im Speicherblock. Ueber eine Adressensteuerschaltung, die von den Blockadressen beeinflusst wird, werden die zweiten Teile der Adressen den Speicherbloecken zugefuehrt. Fuer n2 Blockadressen werden (n1)2 eine Matrix bildende Speicherbloecke angeordnet, von denen die direkt adressierten die zugehoerigen Worte und die dazwischenliegenden die modulo-2-Summe benachbarter Worte der Zeile bzw. Spalte enthalten. Die Lesedaten werden den Ausgaengen ueber Multiplexer zugefuehrt, die von den Blockadressen gesteuert werden und die Daten von den adressierten Speicherbloecken oder von modulo-2-Summierern abnehmen, in die die Daten aller Speicherbloecke der Zeile bzw. Spalte ausser dem adressierten oder des verbleibenden rechteckigen Feldes eingehen. Fig. 2

Description

Charakteristik des bekannten Standes der Technik
Speicher sind wesentliche Bestandteile informationsverarbeitender Geräte. Die wichtigsten, leistungsbestimmenden Kenngrößen der Speicher sind die Speicherkapazität und die Zugriffszeit. Zur Erhöhung der Speicherkapazität ist eine mehrfache Anordnung von Speichereinheiten möglich. Die Zugriffszeit wird durch den Aufbau und die verwendeten Speicherelemente bestimmt, eine Verbesserung ist hier nur durch Parallelarbeit zuerreichen.
Ausgangspunkt für alle Speicher ist das Grundprinzip, daß durch eine Adresse eine Speicherzelle ausgewählt wird, deren Inhalt damit gelesen oder in die eine neue Information eingeschrieben werden kann.
Um den Inhalt von vier beliebigen Speicherzellen eines Speicherbereiches gleichzeitig lesen zu können, ist es beim Grundprinzip erforderlich, vier Speicher mit gleichem Inhalt anzuordnen, die unabhängig voneinander arbeiten und aus denen jeweils ein Inhalt gelesen wird.
Zur Reduzierung des Aufwandes wurde vorgeschlagen, den Speicherbereich in Blöcke zu unterteilen, die unabhängig voneinander arbeiten. Bei einer solchen Anordnung können zwei oder mehr Speicherzellen gleichzeitig gelesen werden, wenn sie so verteilt sind, daß aus jedem Speicherblock nur höchstens eine Speicherzelle zu lesen ist, indem ein Teil jeder Adresse zur Auswahl des Speicherblockes genutzt wird und nur dem ausgewählten Speicherblock der zugehörige andere Teil der Adresse zugeführt wird. Das Verfahren ist aber nicht mehr anwendbar, wenn auf zwei oder mehr Speicherzellen zugegriffen werden soll, die in einem Speicherblock liegen. Ausführungsformen dieses Prinzipes sind in der DE-OS 3302539 (G 11 C8/00) und im EP 0165822 (G 06 F 12/06) angegeben.
Ein uneingeschränkter Zugriff zu zwei oder mehreren Speicherzellen eines Speichers ist dann möglich, wenn im Grundaufbau des Speichers zwei oder mehrere vollständige Systeme von Auswahlleitungen und Informationsleitungen vorhanden sind, so daß jede Speicherzelle über eine erste Aaswahlleitung mit einer zweiten und dritten Informationsleitung verbunden werden kann. Eine Ausführungsform für einen Halbleiterspeicher ist im EP 0137318(G 11 C 8/00) dargestellt. Mit Einschränkungen wurde das gleiche Prinzip in der DE-AS 1524898 (G 11 C 7/00) für Ferritkernspeicher mit mehreren Leseleitungen vorgeschlagen.
Eine weitere Variante für einen Halbleiterspeicher, der mit zwei Leseleitungen ausgestattet ist, wurde in der DE-AS 1774948(G 11 C 7/00) angegeben.
Für die Verwendung als Pufferspeicher zur Kopplung zweier Einheiten werden Speicher mit zwei Ausschlüssen, die alternativ arbeiten können, ausgestattet. Dabei wird die Arbeiterfunktion allgemein in den Speicher verlegt, so daß die angeschlossenen Einheiten ohne Zusatzaufwand alternativ mit dem Speicher arbeiten können. Gleiche Bedingungen ergeben sich für den Speicher, wenn er als Globalspeicher in einem Mehrrechnersystem eingesetzt ist. Der Zugriff zum Speicher ist jedoch immer nur durch eine der angeschlossenen Einheiten möglich.
Ziel der Erfindung
Ziel der Erfindung ist es, eine Speicheranordnung zu schaffen, die einen parallelen Lesezugriff von vier Einheiten erlaubt, ohne daß Einschränkungen in den Adressen bestehen oder daß für die eingesetzten Speicherbauelemente bzw. Speichereinheiten eine spezielle Ausstattung erforderlich ist. Außerdem soll die Speicheranordnung mit minimalem Aufwand realisierbar sein.
Darlegung des Wesens der Erfindung
Die Aufgabe der Erfindung besteht darin, eine Anordnung für einen Speicher anzugeben, der mit vier Einheiten zusammenarbeiten kann und der einen parallelen Lesezugriff durch die angeschlossenen Einheiten erlaubt. Hierzu sollen keine Einschränkungen in den Adressen bestehen und keine spezielle Ausstattung für die eingesetzten Speicherbauelemente bzw. Speicheremheiten erforderlich sein.
Erfindungsgemäß wird die Aufgabe dadurch gelöst, daß der Speicherbereich in n2 Speicherblöcke eingeteilt wird und daß 2n + 1 zusätzliche Speicherblöcke angeordnet sind.
Es sind Eingänge für drei aus je zwei Teilen bestehende Adressen vorhanden, wovon der jweils erste Teil die Blockadressen zur Auswahl der Speicherblöcke enthält und der zweite Teil der Adresse zur Adressierung innerhalb der Speicherblöcke dient. Die Adressenumschaltung für die zweiten Teile der Adressen wird durch die Blockadressen gesteuert, indem der erste Teil der ersten Adresse über einen ersten DecoderTorschaltungen so steuert, daß derzweite Teil der ersten Adresse dem durch den ersten Teil der Adresse ausgewählten Speicherblock zuführbar ist. Der erste Teil der zweiten Adresse und das von einer ersten Vergleichseinrichtung gebildete Signal steuern über einen zweiten Decoder und Gatter Torschaltungen so, daß der zweiten Adresse ausgewählten Speicherblock zuführbar ist, wenn die ersten Teile der ersten Adresse und der zweiten Adresse ungleich sind oder der erste Teil der zweiten Adresse und das von der ersten Vergleichseinrichtung gebildete Signal steuern über den zweiten Decoder und Gatter Torschaltungen so, daß der zweite Teil der zweiten Adresse jeweils zwei Speicherblöcken zugeführt werden, wenn die ersten Teile der ersten und zweiten Adresse gleich sind.
Der erste Teil der dritten Adresse steuert in Verbindung mit den Signalen einer zweiten und dritten Vergleichseinrichtung über einen dritten Decoder und Gatter Torschaltungen so, daß zweite Teil der dritten Adresse dem durch ersten Teil der dritten Adresse ausgewählten Speicherblock zuführbar ist, wenn dem ausgewählten Speicherblock weder der zweite Teil der ersten noch der zweiten Adresse zugeführt wird oder der erste Teil der dritten Adresse steuert in Verbindung mit den Signalen der zweiten und dritten Vergleichseinrichtung über einen dritten Decoder und Gatter Torschaltungen so, daß der Zweite Teil der dritten Adresse jeweils zwei Speicherblöcken zugeführt ist, wenn dem ausgewählten Speicherblock der zweite Teil der ersten oder zweiten Adresse zugeführt wird.
Weitere Torschaltungen sind über Gatter, die eingangsseitig mit den Steuersignalen für die Torschaltungen für die zweiten Teile der ersten drei Adressen verbunden sind, beeinflußbar, wodurch der zweite Teil der vierten Adresse allen Speicherblöcken zugeführt wird, außer denen, die mit den zweiten Teilen der ersten drei Adressen beauflagt sind.
In den n2 Speicherblöcken, die den Blockadressen zugeordnet sind, sind die den zugehörigen Adressen entsprechenden Worte gespeichert. In den 2 η zusätzlichen Speicherblöcken sind die modulo-2-Summen aus jeweils zwei der n2 Speicherblöcke mit gleicher Adresse innerhalb der Speicherblöcke gespeichert. In dem weiteren zusätzlichen Speicherblock ist die modulo-2-Summe aus den n2 Speicherblöcken mit gleicher Adresse der Speicherblöcke gespeichert.
Die Daten des durch die erste Adresse adressierten Wortes sind über einen ersten Multiplexer einem ersten Datenausgang zuführbar, wobei der Multiplexer vom ersten Teil der ersten Adresse gesteuert wird und die Daten direkt von dem adressierten Speicherblock abnimmt.
Die Daten des durch die zweite Adresse adressierten Wortes sind über zweiten Multiplexer einem zweiten Datenausgang zuführbar, wobei der Multiplexer vom ersten Teil der zweiten Adresse und dem Signal von der ersten Vergleichseinrichtung gesteuert wird und die Daten von dem adressierten Speicherblock abnimmt, wenn die ersten Teile der ersten und zweiten Adresse ungleich sind oder die Daten von dem modulo-2-Summierer abnimmt, der die modulo-2-Summe aus jeweils zwei Worten der Speicherblöcke bildet, wenn die ersten Teile der ersten und zweiten Adresse gleich sind. Die Daten des durch die dritte Adresse adressierten Wortes sind über einen dritten Multiplexer einem dritten Datenausgang zuführbar, wobei der Multiplexer vom ersten Teil der dritten Adresse und von den Signalen der zweiten und dritten Vergleichseinrichtung gesteuert wird und die Daten von dem adressierten Speicherblock abnimmt, wenn diesem der zweite Teil der dritten Adresse zugeführt wird oder von einem modulo-2-Summierer abnimmt, der die modulo-2-Summe aus jeweils zwei Worten der Speicherblöcke bildet, wenn dem adressierten Speicherblock der zweite Teil der ersten oder zweiten Adresse zugeführt wird.
Die Daten des durch die vierte Adresse adressierten Wortes sind über einen vierten Multiplexer einem vierten Datenausgang zuführbar, wobei der Multiplexer vom ersten Teil der vierten Adresse und von den Ausgangssignalen zweier Gatter, die eingangsseitig mit den Steuersignalen für die Torschaltungen für den zweiten Teil der vierten Adresse verbunden sind, gesteuert wird und die Daten von dem adressierten Speicherblock abnimmt, wenn diesem der zweite Teil der vierten Adresse zugeführt wird oder von einem modulo-2-Summierer abnimmt, der die.modulo-2-Summe aus den Worten der Speicherblöcke bildet.
Zum Einschreiben von Informationen wird die gleiche Adressensteuerung verwendet und allen vier Adresseneingängen wird die Adresse des zu schreibenden Wortes parallel zugeführt, so daß anallen Speicherblöcken der gleiche zweite Teil der Adresse des zu schreibenden Wortes anliegt.
Der erste Teil der ersten Adresse steuert über einen ersten Decoder und eine erste Gruppe von Gattern eine zweite Gruppe von Gattern so, daß das Umschaltsignal für Schreiben an den Speicherblöcken wirksam wird, deren Inhalt das einzuschreibende Wort zu verändern ist. Die anderen Speicherblöcke werden auf Lesen betrieben und die Ausgangssignale der Speicherblöcke, in denen die den zugehörigen Adressen entsprechenden Worte gespeichert sind, werden über Gatter geleitet, deren andere Eingänge mit dem Umschaltsignal für Schreiben des jeweiligen Speicherblockes verbunden sind. Die Schreibdaten werden den Speicherblöcken, in denen die den zugehörigen Adressen entsprechenden Worte gespeichert sind, direkt zugeführt. Die einzuschreibenden Daten für die anderen Speicherblöcke werden an modulo-2-Summierern abgenommen, die eingangsseitig die Lesesignale von den auf Lesen arbeitenden Speicherblöcken über die nachgeschalteten Gatter und weiterhin die Schreibdaten erhalten.
Weitere Merkmale der Erfindung beziehen sich auf Ausführungsyarianten oder die Gestaltung spezieller Teile der Erfindung. In den Speicherblöcken, die den Blockadressen entsprechen, werrden die negierten Werte gespeichert, indem an den Datenaus- und -eingängen der Anordnung für jedes bit genau eine negierde Stufe angeordnet ist.
In allen Speicherblöcken werden die negierten Worte bzw. der modulo-2-Summen gespeichert, indem an den Ein- und Ausgängen eines jeden Speicherblockes genau eine negierende Stufe angeordnet ist.
Der Aufbau der Adressen-und Datensteuerschaltung kann als hochintegrierte Schaltung erfolgen, bei der die Zusammenschaltung der Stufen als geschlossener Komplex erfolgt.
Ausführungsbeispiel
Anhand des nachfolgenden Ausführungsbeispieles soll die erfindungsgemäße Lösung gezeigt und beschrieben werden. Es zeigen:
Fig. 1: ein Ausführungsbeispiel der Speicheranordnung mit vierfachem parallelem Lesezugriff, (Figuren 1a, 1 b, 1c)
Fig. 2: die Anordnung der n2 + (2n + 1) Speicherblöcke in Form einer quadratischen Matrix,
Fig.3: die Zusatzanordnung für das Einschreiben von Informationen in die Speicheranordnung nach Fig. 1,
Fig.4: die Adressen- und Datenzuordnung für die durch die ersten drei Adressen adressierten Worte entsprechend Fig.2,
Fig. 5: die Datenzuordnung für das durch die vierte Adresse adressierte Wort entsprechend Fig. 2 und
Fig.6: die Datenzuordnung für das Einschreiben eines Wortes entsprechend Fig. 2.
Für die Darstellung wird ein Beispiel gewählt, bei dem der Speicherbereich in n2 = 4 Speicherblöcke eingeteilt ist. Zur Vereinfachung wird mit einer Wortlänge von 1 bit gearbeitet. Für größere Wortlängen sind die Schaltungsteile zwischen den Ausgängen der Speicherblöcke und den Datenausgängen der Anordnung bzw. zwischen dem Dateneingang der Anordnung und den Dateneingängen der Speicherblöcke mehrfach, d.h. für jedes bit des Wortes einmal, vorzusehen.
In Fig. 1 ist ein Ausführungsbeispiel der erfindungsgemäßen Lösung dargestellt. Die Adressen bestehen jeweils aus zwei Teilen und werden
— fürdieerste Adresse Überx1,y1
— fürdiezweite Adresse überx2,y2
— für die dritte Adresse über x3, y 3 und
— für die vierte Adresse über x4, y4
zugeführt. Die zugehörigen Informationen können an Datenausgängen D01, D02, D03 bzw. D04 abgenommen werden. Zur Auswahl der Speicherblöcke dienen die ersten Adressenteile y1,y 2, y 3 und y 4 als Blockadressen. Dabei besteht für.alle Adressen die Zuordnung:
— Speicherblock 00 y = 00
— Speicherblock 01 y = 01
— Speicherblock 02 y=10
— Speicherblock 03 y = 11
Über die Blockadressen werden die Wege gesteuert, durch die die zweiten Adressenteile χ 1, x2, x3 bzw. x4, die der Adressierung innerhalb der Speicherblöcke dienen, den Speicherblöcken zugeführt werden. Die Übertragung der zweiten Adressenteile erfolgt
— fürxi über Torschaltungen 11 ...14
— fürx2 über Torschaltungen 21 ...26
— fürx3 über Torschaltungen 31 ...38
— für x4 über Torschaltungen 41 ...48.
Die Steuerung dieser Torschaltungen erfolgt
— fürxi über einen ersten Decoder 50,
— für x2 über Gatter 64...69, einen zweiten Decoder 60, sowie eine erste Vergleichseinrichtung 63 und 61,62,
— fürx3 über Gatter 81 ...88, einen dritten Decoder 70, sowie eine zweite Vergleichseinrichtung 62 und eine dritte Vergleichseinrichtung 78 und 61, 62,71 ...77,
— für x4 über Gatter 91...98.
Fig. 2 zeigt eine schematische Anordnung der Speicherblöcke. Die den Blockadressen direkt zugeordneten Speicherblöcke 00,01, 02,03 enthalten auch die diesen Adressen zugeordneten Inhalte. Für die anderen Speicherblöcke gilt die Zuordnung:
— Speicherblock 001 enthält 00 + 01
— Speicherblock 002 enthält 00+ 02
— Speicherblock 013 enthält 01 +03
— Speicherblock 023 enthält 02 + 03
— Speicherblock 0123 enthält 00 + 01+02 + 03
Mit der Adressensteuerschaltung nach Fig. 1 ergibt sich für die zweiten Adressenteile die in Fig.4 dargestellte Zuschaltung. Hierbei gilt:
— x1 wird immer dem adressierten Speicherblock zugeführt, siehe Fig.4a (Ausgänge 0...3 des ersten Decoders 50)
— x2 wird dem adressierten Speicherblock zugeführt, wenn y 1 Φ y 2 ist, siehe Fig. 4a (Ausgänge 0... 3 des zweiten Decoders 60)
• x2 wird jeweils zwei Speicherblöcken zugeführt, wenn y 1 = y 2 ist, siehe Fig.4b (Ausgänge 4...7 des zweiten Decoders 60)
— x3 wird dem adressierten Speicherblock zugeführt, wenn dieser keine der Adressen x1 oder x2 erhält (Ausgang der dritten
Vergleichseinrichtung 78 ist „low"), siehe Fig.4a (Ausgänge 0...3 bzw. 4...7 des dritten Decoders70).
• x3 wird jeweils zwei in gleicher Zeile liegenden Speicherblöcken zugeführt, wenn der adressierte Speicherblock eine der
Adressen χ 1 oder x2 erhält und y 1 und y 2 Speicherblöcke in unterschiedlichen Zeilen adressierten (Ausgang der zweiten Vergleichseinrichtung 62 ist „low", Ausgang der dritten Vergleichseinrichtung 78 ist „high"), siehe Fig.4b (Ausgänge 8... -11 des dritten Decoders 70)
x3 wird jeweils zwei in gleicher Zeile liegenden Speicherblöcken zugeführt, wenn der adressierte Speicherblock eine der
Adressen χ 1 oder x2 erhält und y1 und y 2 Speicherblöcke in unterschiedlichen Zeilen adressierten (Ausgang der zweiten Vergleichseinrichtung 62 ist „low", Ausgang der dritten Vergleichseinrichtung 78 ist „high"), siehe Fig.4b (Ausgänge 8... 11 des dritten Decoders 70)
— x4 wird in allen Speicherblöcken zugeführt, die nicht mit χ 1, x2 oder χ 3 beauflagt sind. Die Steuerung erfolgt über die Gatter
91 ...98.
Mit dieser Steuerung wird sichergestellt, daß alle Speicherblöcke die erforderlichen zweiten Teile der Adressen erhalten. Die Datenausgänge D01 ...D04in Fig. 1 sind identisch mit den Ausgängen von Multiplexern 100,110,120,130. Hierbei werden die ersten drei Multiplexer 100,110 und 120 indergleichen Weise gesteuert, wie die Decoder 50,60 und 70. Dementsprechend gilt auch Fig.4 für die Datenzuordnung.
— D01 erhält die Daten von den adressierten Speicherblöcken, siehe Fig.4a
— DO2 erhält die Daten von den adressierten Speicherblöcken, wenn y1 Φ y2 ist, siehe Fig.4a
• DO2 erhält die Daten von modulo-2-Summierem 111 ...114, wenn y1 = y2 ist, siehe Fig.4b
— DO3 erhält die Daten von den adressierten Speicherblöcken, wenn diese nicht die Adressen χ 1 oder x2 erhalten, siehe Fig. 4a
• DO 3 erhält die Daten von den modulo-2-Summierern 111 ...114, wenn der adressierte Speicherblock eine der Adressen χ 1
oder x2 erhält und y 1 und y2 Speicherblöcke in unterschiedlichen Zeilen adressieren, siehe Fig.4b
• DO3 erhält die Daten von modulo-2-Summierern 121 ...124, wenn der adressierte Speicherblock eine der Adressen χ 1 oder
x2 erhält und y 1 und y2 Speicherblöcke in gleicher Zeile adressieren, siehe Fig.4c.
Die Steuerung des vierten Multiplexers 130 erfolgt durch die Blockadresse y 4 und Gatter 136 und 137, deren Ausgänge angeben, welcher Speicherblock die Adresse x4 erhält.
— Speicherblock 00erhältx4 136:0 137:0
— Speicherblock 01erhältx4 136:0 137:1
— Speicherblock 02 erhält x4 136:1 137:0
— Speicherblock 03erhältx4 136:1 137:1
Die Zusammenhänge für die Erzeugung der Ausgangsdaten am vierten Datenausgang DO 4 zeigt Fig. 5. Für den ersten Fall (Speicherblock 00 erhält x4) gilt Fig.5a.
— y4 = 00 ; D04 kann am Speicherblock 00 abgenommen werden
— y4 = 01 ; DO4kann am modulo-2-Summierer 112 (00 + 001) abgenommen werden.
— y4 = 10 ; DO4kann am modulo-2-Summierer 123 (00 + 002) abgenommen werden.
— y4 = 11 ; DO4 kann an einem modulo-2-Summierer 131 (00 + 001 + 002 + 0123) abgenommen werden.
In der gleichen Weise gilt
— Fig.5b, wenn Speicherblock 01 mit x4 beauflagt wird
— Fig. 5c, wenn Speicherblock 02 mit x4 beauflagt wird und
— Fig. 5d, wenn Speicherblock 03 mit x4 beauflagt wird.
Fig. 3 zeigt die Zusatzanordnung für das Einschreiben von Informationen in die Speicheranordnung. Dabei ist nur der für das Schreiben notwendige Teil der Anordnung dargestellt. Die Adressensteuerung entspricht der Anordnung in FIg. 1. Für die Arbeitsweise wird vorausgesetzt, daß zum Einschreiben die Adresse des zu schreibenden Wortes parallel an alle vier Adresseneingänge y1 undxi; y2undx2; y3undx3; y4 und x-4 angelegt wird. Dadurch ist sichergestellt, daß an allen Speicherblöcken der gleiche zweite Teil der Adresse χ 1 = x2 = x3 = x4 anliegt. Die Umschaltung auf Schreiben wird durch „Iow"-Pegel eines Umschaltsignals für Schreiben W ausgelöst. Diese Umschaltung wird nur an den Speicherblöcken wirksam, deren Inhalt durch das Einschreiben des Wortes zu verändern ist, indem es über Gatter 141... 148 mit den Ausgangssignalen des Decoders 50 bzw. mit den Ausgangssignalen von Gattern 151 ...154 verknüpft wird. Am Speicherblock 0123 wird die Umschaltung aufschreiben bei allen Blockadressen wirksam. Die jeweils anderen Speicherblöcke werden· auf Lesen betrieben. Dabei werden für die Speicherblöcke 00...03 die Ausgangsdaten für den auf Schreiben umgeschalteten Speicherblock über Gatter 161... 164 auf 0 gelegt.
Die Zusammenstellung der Daten beim Einschreiben von Informationen zeigt Fig. 6. Wenn die Blockadresse 00 anliegt, gilt Fig.6a,d.h.:
— Dem Speicherblock 00 werden Schreibdaten Dl zugeführt
— Dem Speicherblock 001 wird die Summe von einem modulo-2-Summierer 169 (01 + Dl) zugeführt.
— Dem Speicherblock 002 wird die Summe von einem modulo-2-Summierer 167 (02 + Dl) zugeführt.
— Dem Speicherblock0123 wird dieSumme von einem modulo-2-Summierer 165(01 + 02 + 03 + Dl)zugeführt. In der gleichen Weise gilt
— Fig.: 6b für die Blockadresse 01
— Fig.: 6c für die Blockadresse 02
— Fig.: 6d für die Blockadresse 03.
In Abhängigkeit von den verwendeten Bauelementen kann es vorteilhaft sein, anstelle der Daten in den Speicherblöcken 00... 03 die negierten Daten zu speichern, indem an den Datenein- und -ausgängen der Anordnung für jedes bit des Wortes eine negierende Stufe angeordnet wird. Ebenso können sich Vorteile ergeben, wenn in allen Speicherblöcken 00,01,02,03,001,002, 013,023,0123 die negierten Werte gespeichert werden. In diesen Fällen muß jeweils eine negierende Stufe in den entsprechenden Datenwegen für das Lesen und Schreiben eines jeden Speicherblockes vorhanden sein. Die gesamte Speicheranordnung kann in Form einer hochintegrierten Schaltung realisiert werden. Ebenso können Teile der Anordnung als integrierte Schaltung zusammengefaßt werden. IOn diesen Fällen ist die strenge Trennung in Teilschaltungen nicht mehr vorhanden, vorteilhafterweise können dann die einzelnen Bauelemente als geschlossener Komplex realisiert werden.

Claims (5)

1. Speicheranordnung mit vierfachem parallelem Lesezugriff zu beliebigen vier Speicherinhalten mit mehreren gleichartigen Speicherblöcken, einer Adressen- und einer Datensteuerschaltung, dadurch gekennzeichnet, daß der Speicherbereich in n2 Speicherblöcke (00; 01; 02; 03) eingeteilt ist und daß 2 η + 1 zusätzliche Speicherblöcke (001; 002; 013; 023; 0123) angeordnet sind, daß Eingänge für vier aus je zwei Teilen bestehende Adressen (y 1 und x1;y2undx2;y3undx3;y4 und x4) vorgesehen sind, wovon der jeweils erste Teil (y 1; y 2; y 3; y 4) die Blockadressen zur Auswahl der Speicherblöcke (00; 01; 02; 03) enthält und der jeweils zweite Teil (x 1; x2; x3; x4) zur Adressierung innerhalb der Speicherblöcke (00; 01; 02; 03) dient, daß die ersten Teile der Adressen (y 1; y 2; y 3; y 4) zur Umschaltung für die zweiten Teile der Adressen (x 1; x2; x3; x4) vorgesehen sind, indem der erste Teil der ersten Adresse (y 1) über einen ersten Decoder (50) an Torschaltungen (11 ...14) gelegt ist, durch die der zweite Teil der ersten Adresse (x1) dem durch den ersten Teil der ersten Adresse (y 1) ausgewählten Speicherblock (00; 01; 02; 03) zuführbar ist, indem der erste Teil der zweiten Adresse (y2) und das von einer ersten Vergleichseinrichtung (63, 61,62) gebildete Signal über einen zweiten Decoder (60) und Gatter (64... 67) an Torschaltungen (21 ...24) gelegt ist, durch die der zweite Teil der zweiten Adresse (x2) dem durch den ersten Teil der zweiten Adresse (y2) ausgewählten Speicherblock (00; 01; 02; 03) zuführbar ist, wenn die ersten Teile der ersten beiden Adressen (y1 undy2) ungleich sind oder indem der erste Teil der zweiten Adresse (y2) und das von der ersten Vergleichseinrichtung (63,61,62) gebildete Signal über den zweiten Decoder (60) und Gatter (64...69) an Torschaltungen (21 ...26) gelegt ist, durch die der zweite Teil der zweiten Adresse (x2) jeweils zwei Speicherblöcken (00 und 001; 01 und 001; 02 und 023; 03 und 023) zuführbar ist, wenn die ersten Teile der ersten beiden Adressen (y 1 und y 2) gleich sind, indem der erste Teil der dritten Adresse (y3) in Verbindung mit dem Signal einer zweiten Vergleichseinrichtung (62) und dem Signal einer dritten Vergleichseinrichtung (78,75,76,77, 61, 62,71,72,73,74) über einen dritten Decoder (70) und Gatter (81 ...84) an Torschaltungen (31 ...34) gelegt ist, durch die der zweite Teil der dritten Adresse (x3) dem durch den ersten Teil der dritten Adresse (y 3) ausgewählten Speicherblock (00; 01; 02; 03) zuführbar ist, wenn an dem ausgewählten Speicherblock weder der zweite Teil der ersten noch der zweiten Adresse (x 1, χ 2) anliegt oder indem der erste Teil der dritten Adresse (y3) in Verbindung mit dem Signal der zweiten Vergleichseinrichtung (62) und dem Signal der dritten Vergleichseinrichtung (62) und dem Signal der dritten Vergleichseinrichtung (78,75,76, 77, 61, 62, 71,72,73,74) über den dritten Decoder (70) und Gatter (81 ...88) an Torschaltungen (31 ...38) gelegt ist, durch die der zweite Teil der dritten Adresse (x3) jeweils zwei Speicherblöcken (00 und 001; 01 und 001; 02 und 023; 03 und 023; 00 und 002; 02 und 002; 01 und 013; 03 und 013) zuführbar ist, wenn am ausgewählten Speicherblock der zweite Teil der ersten oder der zweiten Adresse (x1 oder x2) anliegt und indem Torschaltungen (41...48) über Gatter (91 ...98), die eingangsseitig mit den Steuersignalen für die Torschaltungen (11... 14, 21 ...26 und 31 ...38) für die zweiten Teile der ersten drei Adressen (x 1; χ 2; x3) verbunden sind, beeinflußbar sind, wodurch der zweite Teil der vierten Adresse (x4) allen Speicherblöcken (00; 01; 02; 03; 001; 002; 013; 023; 0123) zuführbar ist, außer denen, die mit den zweiten Teilen der ersten drei Adressen (x1; x2; x3) beauflagt sind,
daß in den n2 Speicherblöcken (00; 01; 02; 03), die den Blockadressen zugeordnet sind, die den zugehörigen Adressen entsprechenden Worte gespeichert sind, daß in den 2 η zusätzlichen Speicherblöcken (001; 002; 013; 023) die modulo-2-Summen aus jeweils zwei der n2 Speicherblöcke (00; 01; 02; 03) mit gleicher Adresse innerhalb der Speicherblöcke gespeichert sind und daß in dem weiteren zusätzlichen Speicherblock (0123) die moduIo-2-Summe aus den n2 Speicherblöcken (00; 01; 02; 03) mit gleicher Adresse innerhalb der Speicherblöcke gespeichert ist, daß die Daten des durch die erste Adresse (y 1; χ 1) adressierten Wortes über einen Multiplexer (100) einem ersten Datenausgang (D01) zuführbar sind, wobei der Multiplexer (100) vom ersten Teil der ersten Adresse (y 1) steuerbar ist und die Daten von dem adressierten Speicherblock abnimmt,
- 2 - ΔΟΟ USD
daß die Daten des durch die zweite Adresse (y2; x2) adressierten Wortes über einen zweiten Multiplexer (110) einem zweiten Datenausgang (DO2) zuführbar sind, wobei der Multiplexer (110) vom ersten Teil der zweiten Adresse (y2) und dem Signal von der ersten Vergleichseinrichtung (63, 61,62) steuerbar ist und die Daten von dem adressierten Speicherblock abnimmt, wenn die ersten Teile der ersten beiden Adressen (y 1 und y 2) ungleich sind oder die Daten von einem modulo-2-Summierer (111 ...114) abnimmt, der die modulo-2-Summeaus jeweils zwei Worten der Speicherblöcke (00 und 001; 01 und 001; 02 und 023; 03 und 023) bildet, wenn die ersten Teile der ersten beiden Adressen (y 1 und y2) gleich sind,
daß die Daten des durch die dritte Adresse (y3; x3) adressierten Wortes über einen dritten Multiplexer (120) einem dritten Datenausgang (DO 3) zuführbar sind, wobei der Multiplexer (120) vom ersten Teil der dritten Adresse (y3), vom Signal der zweiten Vergleichseinrichtung (62) und vom Signal der dritten Vergleichseinrichtung (78,75,76,77, 61, 62,71,72,73,74) steuerbar ist und die Daten von dem adressierten Speicherblock abnimmt, wenn diesem der zweite Teil der dritten Adresse (x3) zugeführt wird oder die Daten von einem modulo-2-Summierer (11... 114; 121... 124) abnimmt, der die modulo-2-Summe aus jeweils zwei Worten der Speicherblöcke (00 und 001; 01 und 001; 02 und 023; 03 und 023; 00 und 002; 02 und 002; 01 und 013; 03 und 013) bildet, wenn dem adressierten Speicherblock der zweite Teil einer der ersten beiden Adressen (x 1 oder x2) zugeführt wird und
daß die Daten des durch die vierte Adresse (y4; x4) adressierten Wortes über einen vierten Multiplexer (130) einem vierten Datenausgang (DO4) zuführbar sind, wobei der Multiplexer (130) vom ersten Teil der vierten Adresse (y4) und den Ausgangssignalen zweier Gatter (136; 137), die eingangsseitig mit den Steuersignalen für die Torschaltungen (41 ...43) für den zweiten Teil der vierten Adresse (x4) verbunden sind, steuerbar ist und die Daten von dem adressierten Speicherblock abnimmt, wenn diesem der zweite Teil der vierten Adresse (x4) zugeführt wird oder die Daten von einem modulo-2-Summierer(111... 114; 121...124; 131 ...134) abnimmt, der die modulo-2-Summe aus den Worten der Speicherblöcke (00 und 001; 01 und 001; 02 und 023; 03 und 023; 00 und 002; 02 und 002; 01 und 013; 03 und 013; 00 und 01; 02 und 03) bildet.
2. Speicheranordnung mit vierfachem parallelem Lesezugriff zu beliebigen vier Speicherinhalten mit mehreren gleichartigen Speicherblöcken, einer Adressen- und einer Datensteuerschaltung für das Einschreiben eines Wortes nach Anspruch 1, dadurch gekennzeichnet, daß für das Einschreiben die Adressensteuerschaltung für das Lesen unverändert nutzbar ist und allen vier Adresseneingängen (y1 undxi; y2 undx2; y3 und x3; y4undx4) die Adresse des zu schreibenden Wortes parallel zuführbar ist, daß an allen Speicherblöcken (00; 01; 02; 03; 001; 002; 013; 023; 0123) der gleiche zweite Teil der Adresse (x1; x2; x3;x4) des zu schreibenden Wortes anliegt, daß der erste Teil der ersten Adresse (y 1) über einen ersten Decoder (50) und eine erste Gruppe von Gattern (151 ...JJ4) eine zweite Gruppe von Gattern (141... 148) so steuert, daß ein Umschaltsignal für Schreiben (W) an den Speicherblöcken (00; 01; 02; 03; 001; 002; 013; 023; 0123) wirksam wird, deren Inhalt durch das einzuschreibende Wort zu verändern ist, daß die anderen Speicherblöcke in der Funktion Lesen betrieben werden und daß die Ausgangssignale der Speicherblöcke (00; 01; 02; 03) in denen die den zugehörigen Adressen entsprechenden Worte gespeichert sind, über Gatter (161 ...164) geleitet werden, deren andere Eingänge mit dem Umschaltsignal für Schreiben (W) des jeweiligen Speicherblockes (00; 01; 02; 03) verbunden sind,
daß Schreibdaten (Dl) den Speicherblöcken (00; 01; 02; 03), in denen die den zugehörigen Adressen entsprechenden Worte gespeichert sind, direkt zuführbar sind und daß die einzuschreibenden Daten für die anderen Speicherblöcke (001; 002; 013; 023; 0123) an modulo-2-Summierern (165... 169) abgenommen werden, die eingangsseitig die Lesesignale von den auf Lesen arbeitenden Speicherblöcken (00; 01; 02; 03) über die nachgeschalteten Gatter (161 ...164) und weiterhin die Schreibdaten (Dl) erhalten.
3. Speicheranordnung nach Anspruch 1 und 2, dadurch gekennzeichnet, daß in den Speicherblöcken (00; 01; 02; 03), die den Blockadressen direkt entsprechen, die negierten Werte der Worte gespeichert sind, indem an den Datenaus- und -eingängen (D01; D02; D03; D04; Dl) für jedes bit genau eine negierende Stufe angeordnet ist.
4. Speicheranordnung nach Anspruch 1 und 2, dadurch gekennzeichnet, daß in allen Speicherblöcken (00; 01; 02; 03; 001; 002; 013; 023; 0123), die negierten Werte der Worte bzw. die negierten Werte der modulo-2-Summen gespeichert sind, indem an den Ein- und Ausgängen eines jeden Speicherblockes (00; 01; 02; 03; 001; 002; 013; 023; 0123) genau eine negierende Stufe angeordnet ist.
5. Speicheranordnung nach Anspruch 1 bis 4, dadurch gekennzeichnet, daß der Aufbau der Adressen- und Datensteuerschaltung als hochintegrierte Schaltung erfolgt, bei der die Zusammenschaltung der Stufen als geschlossener Komplex vorliegt.
Hierzu 8 Seiten Zeichnungen
Anwendungsgebiet der Erfindung
Die Erfindung betrifft einen Speicher, bei dem vier Informationen parallel gelesen werden können, ohne daß Einschränkungen in den Adressen vorhanden sind. Die Anwendung erfolgt in informationsverarbeitenden Geräten, z. B.
— bei Rechnern, die mit Zwei- oder Dreiadressbefehlen arbeiten, wobei zwei Operanden und ein Befehl parallel bereitgestellt werden und ein direkter Speicherkanal zusätzlich parallel arbeiten kann.
— bei Rechnern, bei denen mehrere direkte Speicherkanäle vollständig parallel zum Rechenwerk arbeiten können.
— bei Mehrrechnersystemen, bei denen ein Speicher als globaler Speicher fungiert, wobei vier Rechner synchron auf den Globalspeicher zugreifen können.
Die Anordnung dient der Erhöhung der Verarbeitungsleistung in diesen Geräten oder Gerätesystemen. Die Verarbeitung großer Informationsmengen, wie z. B. bei grafischen Informationen, kann so mit hoher Geschwindigkeit erfolgen.
DD30032787A 1987-03-02 1987-03-02 Speicheranordnung mit vierfachem parallelem lesezugriff DD258096A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DD30032787A DD258096A1 (de) 1987-03-02 1987-03-02 Speicheranordnung mit vierfachem parallelem lesezugriff

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DD30032787A DD258096A1 (de) 1987-03-02 1987-03-02 Speicheranordnung mit vierfachem parallelem lesezugriff

Publications (1)

Publication Number Publication Date
DD258096A1 true DD258096A1 (de) 1988-07-06

Family

ID=5587149

Family Applications (1)

Application Number Title Priority Date Filing Date
DD30032787A DD258096A1 (de) 1987-03-02 1987-03-02 Speicheranordnung mit vierfachem parallelem lesezugriff

Country Status (1)

Country Link
DD (1) DD258096A1 (de)

Similar Documents

Publication Publication Date Title
DE69019697T2 (de) Reparierbare Speicherschaltung.
DE19740695C2 (de) Datenspeicher mit Mehrebenenhierarchie
DE2803989A1 (de) Wahlfreie zugriffsspeichervorrichtung fuer digitale daten
DE2617408B2 (de) Speichermodul für ein Datenverarbeitungsgerät mit Speicherhierarchie
DE102006062399A1 (de) Halbleiterspeicherbauelement mit mehreren Speicherbereichen, Zugriffsverfahren und Testverfahren
DE2364785B2 (de) Integrierter halbleiterspeicher mit nach guten und defekten speicherzellen sortierten speicherzellen
DE3716518A1 (de) Halbleiterspeichervorrichtung
DE69020384T2 (de) Integrierte Halbleiterspeicherschaltung mit Möglichkeit zum Maskieren des Schreibens im Speicher.
DE69030914T2 (de) Halbleiterspeicheranordnung
DE2926322C2 (de) Speicher-Subsystem
DE1524773B2 (de) Adressierungssystem für Speichervorrichtungen
EP0224887A1 (de) Gate Array Anordnung in CMOS-Technik
DE4129133C1 (de)
DE2403669C3 (de) SpezialComputer
DE68922738T2 (de) Hochintegrierter Halbleiterspeicher mit Mehrfachzugang.
DE69025782T2 (de) Registerbankschaltung
EP0052669A1 (de) Mehrfach adressierbarer hochintegrierter Halbleiterspeicher
CH495584A (de) Datenverarbeitungsanlage
DE3101270C2 (de) Rechneranordnung zur Wortverarbeitung mit einer Einrichtung zur Funktionserweiterung
DE3348201C2 (en) Semiconductor memory device
DE4206079A1 (de) Halbleiterspeichereinrichtung und datenleseverfahren hierfuer
DD258096A1 (de) Speicheranordnung mit vierfachem parallelem lesezugriff
DE10128254A1 (de) Integrierter Speicher mit einem Speicherzellenfeld mit mehreren Segmenten und Verfahren zu seinem Betrieb
DE2836873C2 (de) Speichersystem mit wahlfreiem Zugriff
DE68915646T2 (de) Adressierbare Speichereinheit mit Einheitsauswahlschaltung.

Legal Events

Date Code Title Description
ENJ Ceased due to non-payment of renewal fee