DE2649147C2 - Anordnung zum wahlweisen Durchführen von logischen und arithmetischen Operationen - Google Patents

Anordnung zum wahlweisen Durchführen von logischen und arithmetischen Operationen

Info

Publication number
DE2649147C2
DE2649147C2 DE2649147A DE2649147A DE2649147C2 DE 2649147 C2 DE2649147 C2 DE 2649147C2 DE 2649147 A DE2649147 A DE 2649147A DE 2649147 A DE2649147 A DE 2649147A DE 2649147 C2 DE2649147 C2 DE 2649147C2
Authority
DE
Germany
Prior art keywords
flip
register
input
flops
query
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
DE2649147A
Other languages
English (en)
Other versions
DE2649147A1 (de
Inventor
Aleksej Davidovič Ljubercy Moskovskaja oblast' Gvinepadze
Rem Vasil'evič Smirnov
Gurij Dmitrievič Moskau/Moskva Sofijskij
Georgij Viktorovič Moskau/Moskva Vitaliev
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Publication of DE2649147A1 publication Critical patent/DE2649147A1/de
Application granted granted Critical
Publication of DE2649147C2 publication Critical patent/DE2649147C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • G06F7/5057Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination using table look-up; using programmable logic arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8038Associative processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/48Indexing scheme relating to groups G06F7/48 - G06F7/575
    • G06F2207/4802Special implementations
    • G06F2207/4804Associative memory or processor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computational Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Error Detection And Correction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Complex Calculations (AREA)

Description

Die Erfindung betrifft eine Anordnung zum wahlweisen Durchführen der logischen Operationen UND, ODER, Antivalenz, Äquivalenz und Invertierung, der arithmetischen Addition und der Suche nach mehrstelligen Assoziativwörtern. Sie kann in vorteilhafter Weise für logische Operationen an großen Informationsmengen verwendet werden.
Bei dem gegenwärtigen Entwicklungsstand der Rechentechnik besteht ein Bedarf an Speichern, die größere
24 49 147
Informationsmengen speichern und in denen nach Merkmalen, die Teil der Informationsmengen selbst sind, gesucht werden kann, und weiter an den als Suchmerkmal vorliegenden Informationen gewisse logische Operationen ausgeführt werden können. Derartige Speicher können in einigen Fällen die herkömmlichen Systeme zur Verarbeitung von Binärinformationen praktisch vollständig ersetzen. Bei anderen Systemen werden die herkömmlichen normalen Speicherzellen nur zur Bereithaltung von Informationen benutzt, wobei die Informationen über ihre Adressen, unter welchen sie innerhalb der Informationsmengen stehen, zugänglich sind. Die eigentliche Verarbeitung von Informationen wird von einem zentralen Leitwerk und von logischen Einheiten durchgeführt, die im zentralen Prozessor vorhanden sind. Mit der Weiterentwicklung der Mikroelektronik sind integrierte, ci^ genannte Suche erlaubende assoziative Speicherelemente erschienen, aber ihre technischen Daten, insbesondere die aufgrund ihres komplizierten Aufbaus geringe Kapazität, genügen nicht den gegenwärtigen Anforderungen. Es liegt daher nahe, bei der Entwicklung von Assoziativspeichern größerer Kapazität bestehende normale Speichermodule zu benutzen, wobei sich ein Aufbau aus assoziativen Speicherelementen kapazitätsmäßig um ein bis zwei Größenordnungen günstiger gestalten läßt. Hierbei wird der erforderliche Grad der funktioneilen Anpassungsfähigkeit des Speichers viel leichter durch entsprechende bauliche Vereinigung von Speichermodulen als durch deren übermäßig komplizierten inneren Aufbau erreicht
Es sind Anordnungen mit A^soziativspeichern aus nicht-assoziativen, d. h. normalen Speicherelementen bekannt (vgl. US-PS 39 13 075, DD-PS 1 08 618 und JP-AS 81 744/75), die ein Eingaberegister mit in Gruppen eingeteilten Flipflops, ein Abfrageregister mit genausoviel in genausoviel Gruppen eingeteilten Flipflops wie das Eingaberegister, Koinzidenzgatter-Gruppen mit je zwei Koinzidenzgattern in einer Zahl je nach Zahl der Flipflops des Eingaberegisters, wobei der erste Eingang des ersten und zweiten Koinzidenzgat"-s der einzelnen Koinzidenzgatter-Gruppen an den nichtin vertier ten bzw. invertierten Ausgang der entsprechenden Flipflops des Eingaberegisters und der Ausgang des ersten und zweiten Koinzidenzgatters der einzelnen Koinzidenzgatter-Gruppen an den nichtinvertierten bzw. invertierten Eingang der entsprechenden Flipflops des Abfrageregisters angeschlossen sind, Abfragedecodierer, die eine der Zahl der Flipflops des Eingaberegisters gleiche Anzahl von ODER-Glieder-Gruppen mit je zwei ODER-Gliedern, wob^i der erste Eingang des ersten und zweiten ODER-Gliedes der einzelnen ODER-Glieder-Gruppen an den nichtinvertierten bzw. invertierten Ausgang der entsprechenden Flipflops des Abfrageregisters und ihr Ausgang an den entsprechenden Eingang der entsprechenden Abfragedecodierer gelegt sind, ein Maskenregister mit gleicher Anzahl von Flipflops wie das Eingaberegister, wobei die Flipflops je nach Zahl der Flipflop-Gruppen des Eingaberegisters zu Schieberegistern geschaltet und die nichtinvertierten Ausgänge der Flipflops des Maskenregisters mit den zweiten Eingängen der ODER-Glieder der entsprechenden ODER-Glieder-Gruppen verbunden sind, einen Operationsdecodierer, dessen erster und zweiter Ausgang an den zweiten Eingang des ersten und zweiten Koinzidenzgatters sämtlicher Koinzidenzgatter-Gruppen geschaltet sind, und einen Speicherblock mit in Form einer Matrix angeordneten normalen Speichermodulen, wobei die Zeilenzahl der Matrix gleich der Zahl der Flipflop-Gruppen des Eingaberegisters ist und die Adressenschienen der normalen Speiehermodule mit den Ausgängen der entsprechenden Abfragedecodierer elektrisch verbunden sind, aufweisen.
Bei diesen Anordnungen mit einem Assoziativspeicher werden Suchmerkmal-Informationen, die in Form vierteiliger Assoziativwörter in den zur gleichzeitigen Suche in Form einer Matrix angeordneten, normalen Speichermodulen gespeichert sind, gesucht bzw. mit einer Information im Eingaberegister logisch verknüpft. Dabei erfolgt der Suchzugriff zu dem gesuchten Assoziativwort (Deskriptor) durch Erkennung der Deckungsgleichheit eines Assoziativwortes mit der im Abfrageregiuer stehenden, im l-aus-AZ-Code verschlüsselten Abfragecodierung. Bei der Suche kann jedes Merkmal der Abfragecodierung oder jede Kombination der Abfragecodierungsmerkmale mit Hilfe der Maskenregister-Flipflops ausgeblendet werden. Die nichiinvertierten Ausgänge der genannten Flipflops steuern die Übertragung von Informationen von den Ausgängen der Abfrageregister-Flipflops über die entsprechenden ODER-Glieder auf die Eingänge der Abfragedecodierer.
Mit Hilfe des bereits erwähnten Maskenregisters und zusätzlicher, an den Speichermodulausgängen angeordneten ODER- und UND-Schaltungen lassen sich auch logische Operationen durchführen. Dabei kann jedoch eine solche Operation immer nur mit dem Operanden im Eingaberegister und einem einzigen Assoziativwort ausgeführt werden.
Der Erfindung liegt daher die Aufgabe zugrunde. Assoziativspeicher der eingangs genannten Art derart weiterzubilden, daß eine logische Operation zwischen Assoziativspeicherinhalt und dem ersten Operanden an sämtlichen Assoziativwörtern im Speicher gleichzeitig durchgeführt werden kann.
Die Lösung dieser Aufgabe erfolgt durch die Lehre nach Herr. Konnzeichen des Patentanspruchs 1.
Vorteilhafte A usgestaltungen der Erfindung sind in den Unteransprüchen angegeben.
Im folgenden wird die Erfindung anhand von Aurführungsbeispielen mitteL der Zeichnung näher erläutert. Es zeigt
F i g. 1 ein Blockschaltbild der Anordnung mit einem Assoziativspeicher gemäß der Erfindung.
F i g. 2 ein genaueres Schaltbild eines Ausführungsbeispiels des Eingaber-jgisters,
F i g. 3 ein genaueres Schaltbild einer Anordnung gemäß der Erfindung,
F i g. 4 ein genaueres Schaltbild eines weiteren Ausführungsbeispiels der Erfindung.
Die Anordnung mit einem Assoziativspeicher zur Suche nach Suchmerkmal-Informationen in Form vierstelliger Assoziativwörter, d. h. bestimmten Bitkombinationen, als Suchmerkmal und zur Durchführung von logischen Verknüpfungen hat zunächst ein Eingaberegister 1 (Fi g. 1) zur Aufnahme und Speicherung des ersten Operanden in Form einer bestimmten Bitkombination mit in Gruppen 3 eingeteilter Flipflops 2 je nach Bitanzähl der Codierung für de.i ersten Operanden. Die weiteren Bestandteile des Speichers sind ein Abfrageregister 4 zur Aufnahme und Speicherung eines Abfrageworts in Form einer bestimmten Bitkombination mit Flipflops 5 je nach Anzahl der Flipflops 2 des Eingaberegisters 1, die je nach Anzahl der Flipflop-Gruppen 2 des Eingaberegisters 1 in Gruppen 6 eingeteilt sind, und Koinzidenzgatter-Gruppen 8 mit je zwei Koinzidenzgattern 7 je nach
24 49 147
Anzahl der Flipflops 2 des Eingaberegisters 1. Der erste Eingang 9 des ersten und zweiten Koinzidenzgatters 7 der einzelnen Koinzidenzgatter-Gruppen 8 ist an den nichtinvertierten 10 bzw. invertierten Ausgang 11 der entsprechenden Flipflops 2 des Eingaberegisters 1 und der Ausgang des ersten und zweiten Koinzidenzgatters 7 der einzelnen Koinzidenzgruppen 8 an den nichtinvertierten 12 bzw. invertierten Eingang 13 der entsprechenden Flipflops 5 des Abfrageregisters 4 gekoppelt. Ferner weist der Speicher Abfragedecodierer 14 zur Umsetzung des Codes des Abfragewortes und ODER-Glieder-Gruppen 16 mit je zwei ODER-Gliedern 15 je nach Anzahl der Flipflops 2 des Eingaberegisters 1 auf. Der erste Eingang 17 des ersten und zweiten ODER-Gliedes 15 der einzelnen ODER-Glieder-Gruppen 16 ist an den nichtinvertierten 18 bzw. invertierten Ausgang 19 der entsprechenden Flipflops 5 des Abfrageregisters 4 und ihr Ausgang an den entsprechenden Eingang der entsprechenden Abfragedecodierer 14 gelegt. Die Abfragedecodierer 14 können aus Koinzidenzschaltungen aufgebaut werden (vgl. z.B. US-PS 39 13 075). Ein Maskenregister 20 zur Aufnahme und Speicherung der Codierung für die Maske in Form einer bestimmten Bitkombination, um die an der jeweiligen Suche nicht teilnehmenden Binärstellen der Abfragecodierung herauszulösen, hat Flipflops 21 je nach Anzahl der Flipflops 2 des Eingaberegisters 1, die je nach Anzahl der Flipflop-Gruppen 3 des Eingaberegisters 1 zu Schieberegistern 22 verschaltet sind. Die nichtinvertierten Ausgänge 23 der Flipflops 21 des Maskenregisters 20 sind mit den zweiten Eingängen 24 der ODER-Glieder 15 der entsprechenden ODER-Glieder-Gruppen 16 verbunden. Der Speicher schließt noch einen Operationsdecodierer 25 zur Steuerung der Übertragung von Informationen über den Ausgang der Flipflops 2 des Eingaberegisters 1 zum Eingang der entsprechenden Flipflops 5 des Abfrageregistcrs 4 im direkten oder ir.vcrsen Code je nach laufender logischer Operation ein. Der erste Ausgang 26 und zweite Ausgang 27 des Operationsdecodierers 25 sind an die zweiten Eingänge 28 des ersten bzw. zweiten Koinzidenzgatters 7 sämtlicher Koinzidenzgatter-Gruppen 8 geschaltet. Der Assoziativspeicher besteht im wesentlichen aus einem Speicherblock 29 zur Aufnahme von im l-aus-A/-Code verschlüsselten Datenwörtern der über mit den Ausgängen der entsprechenden Abfragedecodierer 14 verbundene Abfrageschiene 30 und Steuereingänge 31, die mit den entsprechenden Ausgängen des Operationsdecodierers 25 gekoppelt sind.
verfügt.
F i g. 2 zeigt eine bekannte (DD-PS 1 08 618) Ausführung für das Eingaberegistcr 1, bei der die Gruppen 3 der Flipflops 2 als Schieberegister ausgeführt sind.
Ein Ausführungsbeispiel der Gesamtanordnung mit dem Assozä iivspeicher, bei der sämtliche Assoziativwörter gleichzeitig mit dem ersten Operanden logisch verknüpft werden, ist in F i g. 3 gezeigt. Hier weist der eigentliche Assoziativspeicher zunächst einen Speicherblock 29 auf, der zur Suche und zur logischen Verknüpfung mit einem Operanden als Matrix angeordnete normale, mit dem 1-aus-MCode arbeitei.de Speichermodule 32 für die erwähnten Informationen besitzt. Die Speichermodule 32 sind mit Speicherelementen 33 für die Informationen bestückt und mit Adressenschienen 34 zum Zugriff und Einspeichern der Informationen, Ausgangsstellenschienen 35 zum Auslesen der Informationen, einem Eingang 36 zum Steuern des Schreibens der Informationen, einem Eingang 37 zum Steuern des Lesens der Informationen, einem Informationseingang 38 und Schreibstellenschienen 39 versehen. Ein Speicherelement 33 ist jeweils mit einer Schiene 34, einer Schiene 35 und einer Schiene 39 und den Eingängen ?6: 37 und 38 elektrisch verbunden. Dabei hat der Speichermodul 32 ebensoviel Schienen 39 wie Schienen 35 und es gibt genausovie! Zeilen in der Matrix der Speichermodule 32, wie das Eingaberegister 1 Flipflop-Gruppen 3 hat. Die Speichermodule 32 können als integrierte Schaltungen ausgeführt werden (vgl. z.B. US-PS 36 11 318). Die Adressenschienen 34 der Speichermodule 32 in jeder Matrixzeile sind über Abfrageschienen 30 an den Ausgängen des entsprechenden Abfragedecodierers 14 angeschlossen.
Gemäß der Erfindung schließt der Speicherblock 29 noch Modulo-2-Addierer 40 zur Steuerung der Schreibstellenschienen 39 der Speichermodule 32 ein. Diese letzteren sind dabei in den einzelnen Matrixzeilen zu Speichermodulpaaren A. B mit je zwei Speichermodulen 32 vereinigt. Die Ausgangsstellenschienen 35 des einen Speichermoduls 32Λ der einzelnen Speichermodulpaare sind jeweils mit den ersten Eingängen 41 der Modulo-2-Addierer 40 verbunden, deren Ausgänge an den gleichnamigen Schienen 39 des anderen Speichermoduls 32ß angeschlossen sind. Die zweiten Eingänge der Modulo-2-Addierer 40 in den einzelnen Matrixzeilen, die Informationssteuereingänge 38, Schreibsteuereingänge 36 und Lesesteuereingänge 37 der Speichermodule 32 liegen sämtlich an den entsprechenden Ausgängen des Operationsdecodierers 25, dessen Eingänge an die Ausgänge der entsprechenden Flipflops 2 des Eingaberegisters 1 angeschlossen sind.
Eine Weiterbildung der Anordnung mit einem Assoziativspeicher, bei der auch die arithmetische Addition (und damit auch auf diese zurückführbare andere, z. B. Subtraktion durch Addition des komplementären Wertes) durchführbar sind, ist in Fig.4 dargestellt Hier weist der Assoziativspeicher ebenfalls einen Speicherblock 29 auf, der genauso wie beim vorstehenden Ausführungsbeispiel gemäß Fig.3 zur Suche von und logischen Verknüpfung mit Datenwörtern in Form einer Matrix angeordnete normale Speichermodule 32 (F i g. 4) besitzt. Die Speichermodule 32 sind mit Speicherelementen 33 für die Informationen bestückt und mit Adressenschienen 34 zum Zugriff und Einspeichern der Informationen sowie Ausgangsstellenschienen 35 zum Auslesen der Informationen versehen. Ein Speicherelement 33 ist jeweils mit einer Schiene 34 und einer Schiene 35 elektrisch verbunden. Dabei ist die Zeilenzahl der Matrix der Speichermodule 32 gleich der Anzahl der Flipflopgruppen des Eingaberegisters 1. Darüber hinaus weist der Speicherblock 29 Detektoren 43 zur Anzeige des Speicherplatzes der gesuchten Information in Form einer bestimmten Bitkombination auf, deren Eingänge immer an den jeweiligen Ausgangsstellenschienen 35 der adressierbaren Speichermodule 32 der einzelnen Matrixspalten angeschlossen sind. Ein ebenfalls in die Schaltung eingehendes Ausgaberegister 44 zur Aufnahme und Bereithal-
S5 tung der aus den Speichermodulen 32 der einzelnen Matrixspalten gelesenen Informationen hat Flipflops 45 entsprechend der Anzahl der Flipflops 2 des Eingaberegisters 1, die entsprechend der Anzahl der Flipflop-Gruppen 3 des Eingaberegisters 1 in Gruppen 46 eingeteilt sind. Der Speicher enthält noch über mehrere Eingänge verfügende ODER-Glieder 47, deren Ausgänge mit den Eingängen der entsprechenden Flipflops 45 des Ausga-
24 49 147
beregisters 44 und deren eine Eingänge 48 jeweils mit den Ausgangsstellenschienen 35 der Speichermodule 32 |
der entsprechenden Matrixzeüe verbunden sind. Der Speicherblock 29 hat auch zusätzliche Koinzidenzgatter 49, die je nach der Zahl der Flipflopgruppen 3 des Eingaberegisters 1 zu Koinzidenzgatter-Gruppen 50 mit je zwei Koinzidenzgattern 49 vereinigt sind. Der erste Eingang 51 des ersten und zweiten Koinzidenzgatters 49 der einzelnen Koinzidenzgatter-Gruppen 50 sind an den nichtinvertierten 10 und invertierten Ausgang 11 der entsprechenden Flipflops 2 des Eingaberegisters 1, der zweite Eingang 52 jeweils an den entsprechenden Ausgang des Operationsdecodierers 25 und der Ausgang an den anderen Eingang 53 der entsprechenden OWSR-Glieder 47 gelegt. Nach einer Weiterbildung der Erfindung wird der Speicherblock 29 hier je nach der Anzahl der Gruppen 3 von Flipflops 2 des Eingaberegisters 1 durch Schieberegister 54 zur Verschiebung der die Ausgänge der Abfragedecodierer 14 belegenden Codierungen ergänzt. Die Schieberegister 54 haben Flipflops ι ο 55 je nach Anzahl der Ausgänge der Abfragedecodierer 14. Die Informationseingänge 56 des Flipflops 55 der einzelnen Schieberegister 54 sind über die Schienen 30 an die gleichnamigen Ausgänge der entsprechenden Abfragedecodierer 14, die Takteingänge 57 der Flipflops 55 der einzelnen Schieberegister 54 jeweils an den a
entsprechenden Steuerausgang 58 des Eingaberegisters 1 und die Ausgänge der Flipflops 55 des jeweiligen i
Schieberegisters 54 an die Adressenschienen 34 der Speichermodule 32 der entsprechenden Matrixzeüe angeschlossen. Hierbei können die Gruppen 3 der Flipflops 2 des Eingaberegisters 1 als Schieberegister ausgeführt werden, vgl. z. B. US-PS 36 33 114.
Die Gruppen 46 der Flipflops 45 des Ausgaberegisters 44 werden zweckmäßig als Schieberegister ausgeführt.
Die Funktion des Assoziativspeichers, bei dem eine bestimmte Operation gleichzeitig mit sämtlichen Assoziativwörtern ausgeführt wird (F i g. 3), wird an Beispielen von logischen Operationen, wie sie sich in Speichermodulgruppen (kurz Module genannt) und mit je zwei Speichermodulen 32 (d. h. die ungeraden Speichermodule 32 der oberen und der unteren Zeile in F i g. 3 gehören zu Speichermodulgruppen A, die geraden zu Speichermodulgruppen B. wobei die Zählung der Speichermodule 32 von links nach rechts erfolgt), acht Adressenschienen 34 und vier Ausgangsstellcnschienen 35 abspielen, gezeigt.
Beispiel 1
Es sei nun unter Bezugnahme auf F i g. 3 gezeigt, wie sich die Invertierung der in der Speichermodulgruppe A gespeicherten Menge von Wörtern schrittweise abwickelt. Alle Speicherelemente 33 der Speichermodulgruppe B "ind vorher in den Eins-Zustand gebracht. In den Speichermodulen (A) 32 stehen die vier Dual-Code-Wörter 011, 010, 001, 000, die dort aber mit Einsen in einem Nullenfeld eingeschrieben sind. Der Schreibbetrieb der Assoziativwörter in der Suchmerkmaleinheit der Anordnung und der Parallelsuchbetrieb (Abfrage) mit und ohne Maskierung, wie sie in diesem Beispiel verwendet werden, sind ausführlich in der (bereits eingangs genannten) DD-PS 1 08 618 (= DE-OS 23 57 654) beschrieben. Jedem dieser vier Wörter entspricht eine der Ausgangsstellenschienen des Speichermoduls A, d.h. eine der Spalten binärer Speicherelemente 33 in der folgenden Tabelle 1 unter dem Wort »Modul Λ«, welche Speicherelemente einer der Schienen 35 und 39 dieses Speichermoduis A entsprechen. Der Abfragedecodierer ΐ4, der mit d&n Adfessensehienen 34 dieses Speichennoduls A verbunden ist. wandelt beim Schreiben den Code von allen vier Dual-Code-Wörtern in den »l-aus-8«-Code um. Der Dual-Code des ersten Worts »011« wird also in den Code »00010000« umgewandelt, d. h. den Code des ersten Wortes der Spalte des Speichermoduls A von links (bei Ablesung von oben nach unten in Oberein-Stimmung mit der Numerierung der Ausgänge des Abfragedecodierers 14, die in den drei linken Spalten der Tabelle 1 angegeben ist), der Code »010« des zweiten Worts in den Code »00100000«, der Code »001« des dritten Worts in den Code »01000000« und der Code »000« des vierten Worts in den Code »10000000«, d. h. in den Code bzw. die zweite, dritte und vierte Spalte des Speichermoduls A. Entsprechend wird auch die Information in der Speichermodulgruppe B codiert. Der Code in der 2. Spalte der Tabelle 1 entspricht den erregten Ausgängen des Abfragedecodierers 14, wenn an seinen Eingängen die Signale anliegen, die dem Abfragecode »000« und dem Maskencode »110« entsprechen. Im übrigen ist die Funktionsweise der Rechenanlage mit der der Anlagen nach der DD-PS 1 08 618 (= DE-OS 23 57 654) identisch und dort ausführlich dargelegt. Im Eins-Zustand befinden sich also vier mit den vier Schienen 35 und vier Schienen 39 des Speichermoduls A verbundenen Speicherelemente 33. In das entsprechende Register 22, das hier als Maskenregister für die obigen Speichermodule 32 erscheint, wird die Codierung 110, in das entsprechende Register 3 die Codierung für den ersten Operanden (000) eingegeben. Über den Ausgang 11 des die niedrigste Stelle des Registers 3 besetzenden Flipflops 2 und die entsprechenden Eingänge der Koinzidenzgatter 7 einwirkend, bewirkt die Null das Rücksetzen der Flipflops 5 des entsprechenden Registers 6 in den Null-Zustand. Die bei den ODER-Gliedern 15 eingangsseitig anstehende Abfragecodierung 000 und Maskencodierung 110 bewirken, daß die vier geradzahligen Ausgänge 000,010,100, 110 des entsprechenden Abfragedecodierers 14 und die an diese angeschlossenen entsprechenden Schienen 34
der beiden Speichermodule erregt werden. Es erscheint somit ein -j- -aus-N-Codewort als Funktion der Maskencodierung und der Codierung des ersten Operanden.
24 49 147
Tabelle 1
Ausgänge des
Abfragedecodierers 14
Modul A
0 1 0 1 — Schienen 35
Modul B
(vor Einschreiben)
Modul B
(nach Einschreiben)
000 1
001 0
010 1
011 0
100 1
101 0
110 1
111 0
0 0 0 1 1111
0 0 10 1111
0 10 0 1111
10 0 0 1111
0 0 0 0 1111
0 0 0 0 1111
0 0 0 0 1111
0 0 0 0 1111 Schienen 39 — 0 1 0 1
10 10 1111 0 1 0
1 1
1 0
1 1
1 0
1 1
An den Eingang 37 des Speichermoduls A wird ein das Lesen freigebendes Signal (z. B. logische Null), an den Eingang 36 des Moduls B ein das Schreiben freigebendes Signal (z. B. logische Eins), an die Eingänge 37 der beiden Speichermodule ein den Zugriff freigebendes Signal und an den Eingang 38 des Speichermoduls B ein NuH-Si^nä! "sieben. Es erscheint die sus^sJesenc Si^nslkombinäticn QlQl suf den Schienen 35 des Sncichcnnoduls A. Die Eingänge 42 der Modulo-2-Addierer 40 des Speichermoduls B führen ein Null-Signal, weshalb die Signalkombination 0101 zu den Schreibschienen 39 dieses Speichermoduls durchgeschaltet und Nullen in die Kreuzungen der 2. und 4. Stellenschiene 39 mit den geradzahligen Adressenschienen 34 des Speichermoduls B eingeschrieben werden. Es werden somit dort Nullen eingeschrieben, wo eine Eins auf der Schiene 39 steht und auch ein Ausgang des Abfragecodierers erregt ist.
Im folgenden Takt der Invertierung wird die Codierung im Register 3 um einen Schritt verschoben —000, ebenfalls erfährt die Codierung im Register 22 eine zyklische Verschiebung —101, so daß es zur Erregung der Ausgänge 000, 001, 100, 101 des Abfragedecodierers 14 kommt. Nullen werden in den Speichermodul B in gleicher Weise wie im ersten Takt eingeschrieben, d. h„ einen Null-Zustand nehmen die an den Kreuzungen der erregten Schienen 34 und 39 stehenden Speicherelemente 33 an.
Tabelle 2
Ausgänge des
Abfragedecodierers
Modul A
0 0 11
Schienen 35
Modul B
(vor Einschreiben)
Moduli
(nach Einschreiben)
000 1
001 1
010 0
011 0
100 1
101 1
110 0
111 0
0 0 0 1
0 0 10
0 10 0
10 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
1 0 0
1 1 1
1 0 0
1 1 1
1 0 0
1 1 1
1 0 0
1 1 1
10 0 0
0 0
1 0 1 1
0 0 0
0 ö
1 0 1 1
Schienen 39 — 0 0 1 1
Im dritten Takt stellen sich infoige der Verschiebungen im Register 3 die Codierung 000, im Register 22 die Codierung 011 ein. Erregt werden jetzt die Ausgänge 000, 001, 010, 011 des Abfragedecodierers 14. Das Nulleinschreiben erfolgt ähnlich wie oben.
50 Tabelle 3 Modul Λ Schienen 39 Modul B Modul ß
Ausgänge des 1 1 1 I—Schienen35 (vor Einschreiben) (nach Einschreiben)
Abfragedecodierers 0 0 0 1 10 0 0 0 0 0 0
55 000 1 0 0 10 110 0 0 0 0 0
001 1 0 10 0 10 10 0 0 0 0
010 1 10 0 0 1111 0 0 0 0
011 I 0 0 0 0 i 0 0 0 10 0 0
100 0 0 0 0 0 110 0 110 0
60 101 0 0 0 0 0 10 10 10 10
110 0 0 0 0 0 1111 1111
111 0 — 1111
Im vierten Takt wird in das Register 3 die Codierung \ 11 (die invertierte Codierung 000) eingeschrieben, die Codierung im Register 22 wird weiter zyklisch verschoben. Nun steht dort die Bitkombination 110. Dabei werden die Ausgänge 001, 011, 101, 111 des Abfragedecodierers 14 erregt Im fünften Takt kommen die
24 49 147
Ausgänge O)O, 011, 110, 1111 irrt sechsten die Ausgänge 100, 101,110, 111 des Abfragedecodierers an die Reihe. Arn Ende enthält der Speichermodul S nach dem sechsten Takt folgende Information:
Tabelle 4
Moduls
(nach dem sechsmaligen Einschreiben)
0 0 0 0
0 0 0 0 !0
0 0 0 0
0 0 0 0
10 0 0
0 10 0
0 0 10
0 0 0 1
Das Zustandekommen dieser Information läßt sich zusätzlich mit Hilfe der Tabelle 4a verfolgen: Tabelle 4a ^
Beispiel 1, Invertierung
Takt 1
25
Register 3 000 000 000 111 111 111
Register 6 000 000 000 111 111 111
Register 22 110 101 011 110 101 011
Ausgang— 1010 1100 Uli 0101 0011 0000
Decod.14*) 1010 1100 0000 0101 0011 1111
Modules 0101 0011 1111 1010 1100 0000
Modul Ö42 0 0 0 0 0 0
*) Die Binärziffern, von links nach rechts gelesen, geben die Ausgangssignale des Decodierers 14 von oben nach unten an.
Hoc ir. TrtUöHn Λ alnnalranann Cn/tarnuknlc .O* .« klnnra- \/n»cnUl.".Knn1..nn »U^UUa/latiton^ mi* Αατ\ U/Äi**ö«i "-'"" '·« ■ «tr>-«n» -r x.tii£v»»i ugviiv s^l luv* g\»u-l IU »I, ItI Ullialvl Tu1OvlllUJ3UIUI15 g IvWv.ll L»v.viV.vl ivl ixJ «in* uwii ,τ x^i wt ii
100, 101, 110, 111. Diese letzteren aber sind die Invertierung derjenigen Wörter, die in der 1-aus-N-Code umgeschlüsselten Form ursprünglich im Speichermodul A standen.
Das Lesen von Wörtern aus dem Modul A in den Modul B im direkten Code verläuft analog, nur speist der Ausgang des Operationsdecodierers 25 die zweiten Eingänge 42 der Modulo-2-Addierer 40 des Speichermoduls B nicht mit Null, sondern mit Eins, weshalb die über die Schienen 35 des Speichermoduls A anliegende I nformation zu den Schienen 39 des Speichermoduls B invertiert gelangt.
Die Äquivalenz- oder Antivaienzverknüpfung (Addition modulo 2) des ersten Operanden mit den im Speichermodul A eingespeicherten Wörtern erscheint hier als stellenweise Invertierung oder Umschreibung im direkten Code, d. h„ es werden nebeneinander beide im vorliegenden Beispiel anfangs beschriebene Operationen ausgeführt Ist die jeweilige Stelle des im direkten bzw. inversen Code dargestellten Operanden im Register 3 mit einer Eins bzw. Null belegt, so wird die entsprechende Stelle der einzelnen mit dem Operanden zu verknüpfenden Wörter bei der Aquivalenzverknüpfung im direkten, bei der Antivalenzverknüpfung im inversen bzw. bei der ersten Verknüpfungsart im inversen, bei der zweiten im direkten Code aus dem Speichermödul A in den so Speichermodul B geschrieben. Wechselt die Eins auf Null, so liegen in den beiden Fällen die umgekehrten Verhältnisse vor.
Es folgt ein Beisp-el einer Addition modulo 2.
Beispiel 2
Es sei in das Register 3 die Bitkombination 101 als der erste Operand eingegeben, der Speichermodul A enthalte dieselbe Information wie im Beispiel 1. Der Inhalt des Registers 22 wechselt genauso wie im vorhergehenden Beispiel. Im vierten Takt wird ins Register 3 der invertierte erste Operand, d. h. die Codierung 010, eingelesen. Die einzelnen Zustände, die der Speichermodul B von Takt zu Takt annimmt, sind folgende:
85
24 49 147
Tabelle 5
0011 0011 0010 0010 0000
0001 0001 0001 0001 0000
1111 1111 1010 0000 0000
0101 0101 0101 0000 0000
0011 0011 0010 0010 0010
0001 0001 0001 0001 0001
1111 1111 1010 1000 1000
0101 0101 0101 0100 0100
ModuM Modulß
TaktO Taktl Takt 2 Takt 3 Takt 4 Takt 5 Takt 6
5 ~
0 0 0 1 1111 1111
0 0 10 1111 0101
0 10 0 1111 1111
10 0 0 illl OiOl
10 0 0 0 0 1111 1111
0 0 0 0 1111 0101
0 0 0 0 1111 1111
0 0 0 0 1111 0101
Die einzelnen Zwischenschritte ergeben sich aus der nachfolgenden Tabelle 5a: Tabelle 5a
Beispiel 2, Addition Modulo 2
~ ■
Takt
12 3 4 5 6
Register 3 101 010
Register6 111 000 111 000 111 000
Register 22 110 101 011 110 101 011
Ausgang-* 0101 1100 0000 1010 0011 1111
Decod.l4#) 0101 1100 Uli KHO 0011 0000
Modul A3S 1010 0011 0000 0101 1100 1111
Modul B42 0 10 0 10
Modul B39 1010 1100 0000 0101 0011 1111
Die Umsetzung des Ergebnisses des Taktes 6 in den Dual-Code würde zeigen, daß die ursprünglichen im Dual-Code vorliegenden und umgeschlüsselten im 1-aus-iV-Code im Speichermodul A stehenden Wörter mit dem Operanden »101« nach der Funktion »Antivalenz« verknüpft sind.
Beispiel 3
Im Speichermodul A stehen nach wie vor die Wörter aus dem Beispiel 1. Die Codierung für den ersten Operanden im Register 3 sieht wie 1 i 0 aus und wird im vierten Takt invertiert, wechselt also auf 001. Sonst ist der Betrieb bei den Registern 3,6 und 22 gleich dem im Beispiel 1. Ein Unterschied besteht darin, daß bei einer Null bzw. Eins an der jeweiligen Stelle des Operanden im direkten bzw. inversen Code der Zugriff zu dem Speichermodul A im entsprechenden Takt durch Abgabe eines Sperrsignals an den Eingang 37 dieses Speichermoduls gesperrt wird. An die Eingänge 42 der Modulo-2-Addierer 40 des Speichermoduls B aber muß der Operationsdecodierer bei dem direkten Code des Operanden eine Null, bei dem inversen eine Eins schicken. Bei einer Eins bzw. Null an der jeweiligen Stelle des Operanden im direkten bzw. inversen Code wird im direkten Code aus dem Speichermodul A in den Speichermodul B geschrieben. Nachstehend sind die Zustände des Speichermoduls B in den einzelnen Takten gezeigt:
so Tabelle 6
Modul A Modul B
TaktO Taktl Takt 2 Takt 3 Takt 4 Takt 5 Takt 6
00 0 1 1111 1111 1111 1111 Uli 0011 0011
0 0 10 0 10 0 10 0 0
0 0 0 0 60 0 0 0 0 0 0 0 0 0 0 0 0
Ergänzend hierzu zeigt die Tabelle 6a einzelne Zwischenergebnisse:
1111 1111 1111
1111 1111 1100
1111 1111 1100
1111 1111 1111
1111 1111 1111
1111 1111 1100
1111 1111 1100
Uli 0000 0000 0000
UOO UOO UOO UOO
UOO 0000 0000 0000
0000 0000 0000 0000
0000 0000 0000 0000
0000 0000 0000 0000
0000 0000 0000 0000
24 49 147
Tabelle 6a Takt 2 3 4 5 6
Beispiel 3, »UND« 1 001
110 111 111 111 000 000
000 101 011 110 101 011
Register 3 110 0011 0000 0101 1100 1111
Register 6 1010 0011 1111 0101 1100 0000
Register 22 1010 1100 0000 0000 0011 1111
Ausgang —► 0000 1 1 1 1 1
Decod. 14*) 0 0011 1111 1111 1100 0000
Modul Ais 0000
Modul Bn
Modul Bia
Die logische Addition (ODER-Funktion) hingegen verläuft mit dem Unterschied, daß eine Eins im direkten Code des ersten Operanden das Lesen aus dem Speichermodul A in den Speichermodul B sperrt, eine Null ein Schreiben im direkten Code aus jedem in diesen bewirkt. Operationen, die es sonst noch gibt, lassen sich in die obigen zerlegen. Bei mehreren nacheinander auszuführenden logischen Operationen werden dieselben abwechselnd an dem Inhalt der Speichermodule A und B durchgeführt. Sollten Wörter mit mehr Stellen zur logischen Verarbeitung kommen, so nimmt man einfach mehr Zeilen der Matrix der Speichermodule 32. Die Anzahl der zu verarbeitenden Assoziativwörter vergrößert sich mit der Vermehrung der Spalten der Matrix der Cpeichermodule32
Es läßt sich zeigen, daß die Anzahl der Verarbeitungstakte gleich 2 · Iog2 m ist. Hierbei bedeutet m die Anzahl der Ausgänge des Decodierers 14. Bei /n=8, wie bei den bisherigen Beispielen, wird daraus für die Anzahl der Verarbeitungstakte 6. f
Schließlich sei die Funktion des Assoziativspeichers für die arithmetische Addition nach F i g. 4 am Beispiel 4 näher erläutert.
Es seien zwei binäre Wörter 101 und 011 gegeben. Das erste Wort ist in das Register 3 eingebracht. Das zweite 30 f
Wort ist in einem der Speichermodule 32 eingespeichert. Dort ist es von einer Codierung 00001000 dargestellt, f
die in den an einer der Schienen 35 des betreffenden Speichermoduls liegenden Speicherelementen 33 eingeschrieben ist. Es stehen dort nämlich die Eins im Element 33 auf der Kreuzung der betreffenden Schiene 35 und der Adressenschiene 34 mit der Nummer 011, die Nullen in den übrigen mit der betreffenden Schiene 35 verbundenen Speicherelementen 33. In das Register 6 wird die Codierung 111 beispielsweise von den Ausgängen 10 und 11 des Registers 3 über die entsprechenden Gruppen 8 der Koinzidenzgatter 7 unter Steuerung vom Operationsdecodierer 25 her übernommen. In das Register 22 wird die Maske 110 eingegeben. Die Signale von den Ausgängen der Register 6 und 22 gelangen über die Gruppen 16 der ODER-Glieder 15 beim entsprechenden Abfragedecodierer 14 eingangsseitig an, worauf die Ausgänge 111,101,0! 1,001 dieses Abfragedecodierers 14 erregt werden. Die auf den Ausgängen des Abfragedecodierers 14 stehende Codekombination 10101010 erscheint auch an den Eingängen 56 der Flipflops 55 des Registers 54. Sie wird im Register 54 durch Einspeisung |
von fünf vom Ausgang 58 des Registers 3 an die Eingänge 57 der Flipflops 55 kommenden Impulsen um fünf ''
Stellen zyklisch verschoben. Das Register 3 muß hier nach der vorstehend genannten Patentschrift, US-PS 3b 33 114, ausgeführt sein. Nun führen die Ausgänge der Flipflops 55 die Signalkombination 01010101. Sie §
bedeutet, daß die nullte, zweite, vierte und sechste Schiene 34 der einzelnen Speichermodule 32 erregt werden. 45 |
Auf derjenigen Schiene 35 des entsprechenden Speichermoduls 32, in deren Speicherelementen der zweite Summand OOOOIOOO eingespeichert ist. erscheint das Null-Signal als Belegung der ersten Stelle der Summe. Es wird vom ODER-Glied 47 zum Eingang des Registers 46 durchgeschaltet. (Dies geschieht nur, wenn alle vier Schienen eine Null führen bzw. die Detektoren 43 eine Null anzeigen.) Im nächsten Schritt wird die im Register 22 stehende Codierung zyklisch verschoben. Das Ergebnis ist die Maske 101. An den Ausgängen des Abfragedecodierers 14 erscheint die Codierung 11001100. die ebenfalls um fünf Stellen im Register 54 verschoben wird und nun wie 01100110 aussieht. Darauf führt die betreffende Schiene 35 wieder eine Null als Belegung für die zweite Stelle der Summe. Im dritten Takt erfährt der Inhalt des Registers 22 noch eine zyklische Verschiebung, welche die Maske 011 liefert. Die Ausgangssignalkombination des Abfragedecodierers ist jetzt 11110000, nach der Verschiebung um fünf Stellen im Register 54 wechselt sie auf 10000111. Das Ergebnis ist wiederum eine Null auf der betreffenden Schiene 35. So erhält man die Belegung für die dritte Stelle der Summe. Man benötigt also drei Takte bzw. braucht nur dreimal den Assoziativspeicher anzusprechen, um zwei dreistellige Wörter miteinander zu addieren. Wörter größerer Länge werden in Gruppen mit mehreren Stellen (hier mit je drei Stellen) eingeteilt. Die Addition innerhalb einer jeden Gruppe, mit der man bei der Addition von volistelligen Wörtern ohne Berücksichtigung des Übertrags von einer Gruppe zur anderen zu tun hat, beansprucht so vie! Takte, wie es eo Stellen in der Gruppe gibt. Der Übertrag wird der nächsten Gruppe folgenderweise mitgeteilt. Diejenigen Flipflops 55, deren Nummern höher als die im Register 3 eingegebene Zahl sind (das sind im vorliegenden Beispiel die Nummern 111, HO, 101, 100), werden in den Eins-Zustand gesetzt. Die Ausgangscodekombination 11110000, welche sich beim Register 54 einstellt, bedeutet die Erregung der vierten, fünften, sechsten und siebten Schiene 34 der einzelnen Speichermodule 32. Auf der betreffenden Schiene 35 muß dann ein Übertragssignal erscheinen. Im vorliegenden Beispiel ist das eine Null, d. h., der vorliegenden Gruppe wurde kein Übertrag mitgeteilt. Ein Übertragssigna! gelangt von der Schiene 35 über das ODER-Glied 47 zum Eingang des Registers 46, von dessen Ausgang es an den Zähleingang des Registers 3 der nächsthöheren Gruppe gegeben wird. Im
24 49
ungünstigsten Fall erfordert die Übertragsbildung einen Takt weniger, als es Gruppen gibt
Wie auch bei normalen Addierern wird die Subtraktion in Form einer Addition mit komplementärem Subtrahenden durchgeführt Die Multiplikation bzw. Division erscheint als eine Folge von Additionen bzw. Subtraktionen.
5 Die Erfindung gestattet, das Leistungsvermögen bishenger Anlagen für die Ausführung von arithmetischen und logischen Operationen um eine bis zwei Größenordnungen zu verbessern.
Hierzu 3 Blatt Zeichnungen
ti

Claims (3)

24 49 147 Patentansprüche:
1. Anordnung zum wahlweisen Durchführen der logischen Operationen UND, ODER, Antivalenz, Äquivalenz und Invertierung, der arithmetischen Addition und der Suche nach mehrstelligen Assoziativwörtern
mit einem Eingaberegister zum Speichern eines ersten Operanden im Dual (= 8421)-Code, das je nach der Anzahl der Bits der Codierung des ersten Operanden in Gruppen eingeteilte Flipflops aufweist,
mit einem Abfrageregister zum Speichern einer Abfragecodierung im Dual-Code, das eine der Anzahl der Flipflops des Eingaberegisters entsprechende Anzahl von je nach der Flipflopgruppenanzah! des Eingaberegisters in Gruppen eingeteilten Flipflops aufweist,
ίο mit Koinzidenzgattergruppen mit je zwei Koinzidenzgattern in der Flipfiopanzahl des Eingaberegisters entsprechender Anzahl, in denen der erste Eingang der ersten und der zweiten Koinzidenzgatter an die nicht-invertierten Ausgänge bzw. die invertierten Ausgänge der ersten Flipflops der gleichnamigen Gruppen des Eingaberegisters und der Ausgang der ersten und der zweiten Koinzidenzgatter an die nicht-invertierten Eingänge bzw. die invertierten Eingänge der gleichnamigen Flipflops des Abfrageregisters gelegt sind,
mit Abfragedecodierern zum Umsetzen des Abfrageax'-es in den 1 -aus-N-Code,
mit ODER-GHedgruppen mit je zwei ODER-Gliedern in der Anzahl der Flipflops des Eingaberegisters entsprechender Anzahl, in denen der erste Eingang der ersten und der zweiten ODER-Glieder an den nicht-invertierten bzw. an den invertierten Ausgang der gleichnamigen Flipflops des Abfrageregiste-s und der Ausgang an den Eingang der zugeordneten Abfragedecodierer gelegt sind,
mit einetn Maskenregister zum Aufnehmen einer Maskeninformation im Dual-Code für die Maskierung von für die jeweilige Suche indifferenten Binärstellen der Abfragecodierung, das eine der Flipflopanzah! des Eingaberegisters entsprechende Anzahl von Flipflops aufweist, die je nach der Anzahl der Flipflopgruppen des Eingaberegisters zu Schieberegistern geschaltet sind und in dem der nicht-invertierte Ausgang der Flipflops mit dem zweiten Eingang der ODER-Glieder der gleichnamigen ODER-GIiedergruppen verbun-
den ist,
mit einem Operationsdecodierer zum Steuern der Übertragung von Informationen über den Ausgangszustand der Flipflops zum Eingang der gleichnamigen Flipflops des Abfra^eregisters im direkten oder im inversen Code je nach der laufenden logischen Operation, in dem der erste und der zweite Ausgang an den zweiten Eingang der ersten bzw. der zweiten Koinzidenzgatter gelegt sind, und
mit einem Speicherblock für eine assoziative Wortabfrage, der an die Ausgänge des Abfragecodierers angeschlos/ene Abfrageschienen, an die Ausgänge des Operationsdecodierers angeschlossene Steuereingänge und als Matrix geschaltete normale Speichermodule enthält, die ihrerseits Adressenschienen für einen Zugriff zu und zum Linspeic.iern von Informationen und Ausgangsstellenschienen zum Auslesen der Infor- 3,
mationen aufweisen, wobei die Anzahl der Zeilen in der Speichermodulmatrix gleich der Anzahl der Flipflop- \ \
gruppen des Eingaberegisteri. ist und die Adressenschienen der adressierbaren Speichermodule in jeder §
Matrixzeile über die Abfrageschiene an die Ausgänge des gleichnamigen Abfragedecodierers angeschlossen sind,
dadurch gekennzeichnet,
daß die Speichermodule (32) des Speicherblocks (29) Schreibsteuereingänge (36), Leseste^ereingänge (37),
Informationseingänge (38) und Schreibstellenschienen (39) in der Anzahl der Ausgangsstellenschienen (35) entsprechender Anzahl und Modulo-2-Addierer (40) zum Steuern der Schreibstellenschier.en aufweisen,
daß die Speichermodule (32) in den einzelnen Matrixzeilen zu Speichermodulgruppen (A, B) mit je zwei Speichermodulen vereinigt sind, in denen die Ausgangsstellenschienen (35) der jeweils ersten Speichermodule (32A) mit dem ersten Eingang (41) des mit seinem Ausgang an der gleichnamigen Schreibstellenschiene
(39) des jeweiligen zweiten Speichermoduls (32B) liegenden Modulo-2-Addierers (40) verbunden sind, und
daß der zweite Eingang (42) der Modulo-2-Addierer (40) in den einzelnen Matrixzeilen und die Informaiionseingänge (38), die Schreibsteuereingänge (36) und die Lesesteuereingänge (37) der Speichermoduie (32) mit i
den zugeordneten Ausgängen des Operationsdecodierers (25) verbunden sind, dessen Eingänge an den f
nicht-invertierten Ausgang der zugeordneten Flipflops (2) des Eingaberegisters (1) angeschlossen sind.
2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Flipflops (2) der Gruppen (3) des
Eingaberegisters (1) jeweils ein Schieberegister bilden.
3. Anordnung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß den Abfragedecodierern (14) jeweils ein Schieberegister (54) in Entsprechung zu der Anzahl der das Eingaberegister (1) bildenden Flipflopgruppen (3) zum Verschieben der die Ausgänge der Abfragedecodierer belegenden Codierungen nachgeschaltet
ist und daß die Flipflops der Schieberegister (54) in ihrer Anzahl der Anzahl der Ausgänge der Abfragedecodierer (14) entsprechen und mit jeweils einem Informationseingang (56) über eine der Abfrageschienen (30) an den zugeordneten Ausgang des gleichnamigen Abfragedecodierers (14), mit jeweils einem Takteingang (57) an den zugeordneten Steuerausgang (58) des Eingaberegisters (1) und mit jeweils einem Ausgang an eine der Adressenschienen (34) der Speichermodule (32) der gleichnamigen Matrixzeile gelegt sind.
DE2649147A 1975-10-28 1976-10-28 Anordnung zum wahlweisen Durchführen von logischen und arithmetischen Operationen Expired DE2649147C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SU752181752A SU604033A1 (ru) 1975-10-28 1975-10-28 Ассоциативное запоминающее устройство

Publications (2)

Publication Number Publication Date
DE2649147A1 DE2649147A1 (de) 1977-05-26
DE2649147C2 true DE2649147C2 (de) 1985-05-15

Family

ID=20634790

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2649147A Expired DE2649147C2 (de) 1975-10-28 1976-10-28 Anordnung zum wahlweisen Durchführen von logischen und arithmetischen Operationen

Country Status (8)

Country Link
US (1) US4069473A (de)
JP (1) JPS599992B2 (de)
DD (1) DD129593A1 (de)
DE (1) DE2649147C2 (de)
FR (1) FR2330114A1 (de)
GB (1) GB1527683A (de)
HU (1) HU178795B (de)
SU (1) SU604033A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4257110A (en) * 1977-04-19 1981-03-17 Semionics Associates, Inc. Recognition memory with multiwrite and masking
US4376974A (en) * 1980-03-31 1983-03-15 Ncr Corporation Associative memory system
DE3727846A1 (de) * 1987-08-20 1989-03-02 Vmei Lenin Nis Assoziative operations-speichereinrichtung
IT1233215B (it) * 1989-04-21 1992-03-20 Ist Trentino Di Cultura Rete elaborativa a nodi, procedimento e macchine per la configurazionedella stessa e relativi impieghi
US5072422A (en) * 1989-05-15 1991-12-10 E-Systems, Inc. Content-addressed memory system with word cells having select and match bits
GB2533644B (en) 2014-12-24 2017-12-06 Acergy France SAS Improving the bending behaviour of mechanically-lined rigid pipe

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SU499762A1 (ru) * 1972-11-21 1977-08-25 Предприятие П/Я М-5769 Ассоциативное запоминающее устройство
DE2357654C2 (de) * 1972-11-21 1981-10-29 Aleksej Davidovič Ljubercy Moskovskaja oblast'i Gvinepadze Assoziativspeicher
JPS5927037B2 (ja) * 1973-11-21 1984-07-03 ゲオルギイ ヴイクトロヴイチ ヴイタリエフ 連想記憶装置
US3997882A (en) * 1975-04-01 1976-12-14 Burroughs Corporation Content addressable memory system employing charge coupled device storage and directory registers and N/(1-H) counter refresh synchronization

Also Published As

Publication number Publication date
FR2330114B1 (de) 1978-12-15
HU178795B (en) 1982-06-28
FR2330114A1 (fr) 1977-05-27
US4069473A (en) 1978-01-17
DE2649147A1 (de) 1977-05-26
GB1527683A (en) 1978-10-04
DD129593A1 (de) 1978-01-25
JPS5275137A (en) 1977-06-23
SU604033A1 (ru) 1978-04-25
JPS599992B2 (ja) 1984-03-06

Similar Documents

Publication Publication Date Title
DE2364408C3 (de) Schaltungsanordnung zur Adressierung der Speicherplätze eines aus mehreren Chips bestehenden Speichers
DE2803989C2 (de) Digitaldatenspeicher mit wahlfreiem Zugriff
DE2007787A1 (de) Datenspeichersystem
DE2359178A1 (de) Speicheranordnung
DE2502910A1 (de) Informations-anordnungseinrichtung
DE2259725B2 (de) Funktionsspeicher aus assoziativen Zellen mit mindestens vier Zuständen
DE2364254B2 (de) Schaltungsanordnung fuer datenverarbeitende geraete
DE2062228A1 (de) Datenverarbeitungssystem mit gleich zeitigem Zugriff auf mehrere Speicher stellen
DE2423265C3 (de) Optimierende Rechenmaschine
DE3144563C2 (de)
DE69122860T2 (de) Multiplexer
DE2357654C2 (de) Assoziativspeicher
DE2649147C2 (de) Anordnung zum wahlweisen Durchführen von logischen und arithmetischen Operationen
DE2946119A1 (de) Datenverarbeitungseinrichtung
DE69206604T2 (de) Schnelle Addierkette.
DE2946633C2 (de)
DE2265696C2 (de) Rechenanordnung
DE3016738C2 (de) Verfahren zur Übertragung eines Bitmusterfeldes in einen Speicher und Schaltungsanordnung zur Ausübung des Verfahrens
DE3319349A1 (de) Halbleiter-speichervorrichtung
DE1449584A1 (de) Anordnung zur UEbertragung von Daten einer Loch- oder Magnetkarte in eine Datenverarbeitungsanlage oder umgekehrt
DE2525394B2 (de) Verfahren und schaltungsanordnung zum uebertragen, einspeichern und ausspeichern von binaercodierten datenbloecken
DE2913670C2 (de) Informationsverarbeitungseinrichtung
DE2945160A1 (de) Stack-speicher
EP0771463B1 (de) Verfahren und vorrichtung zum speichern und drehen von bitmustern
DE3340078A1 (de) Prozessor-zelle zur verwendung in einer aus derartigen zellen gebildeten anordnung

Legal Events

Date Code Title Description
D2 Grant after examination
8364 No opposition during term of opposition
8380 Miscellaneous part iii

Free format text: AUF SEITE 2-10 DAS AKTENZEICHEN "24 49 147" BERICHTIGEN IN "26 49 147"

8339 Ceased/non-payment of the annual fee