DE2033709A1 - Associative storage system - Google Patents

Associative storage system

Info

Publication number
DE2033709A1
DE2033709A1 DE19702033709 DE2033709A DE2033709A1 DE 2033709 A1 DE2033709 A1 DE 2033709A1 DE 19702033709 DE19702033709 DE 19702033709 DE 2033709 A DE2033709 A DE 2033709A DE 2033709 A1 DE2033709 A1 DE 2033709A1
Authority
DE
Germany
Prior art keywords
mask
memory
register
associative
data
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
DE19702033709
Other languages
German (de)
Other versions
DE2033709B2 (en
Inventor
Jeganandaraj Amalendra West Hill Ontario Arulpragasam (Kanada), Halle«, Michael Henry, Chandlers Ford, Minshull. John Francis, Winchester, Murphy Alan Stanle) Chandlers Ford, Robinson Thomas Edward, North Baddesley, Hampshire (Groß britanmen) P
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 DE2033709A1 publication Critical patent/DE2033709A1/en
Publication of DE2033709B2 publication Critical patent/DE2033709B2/en
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • G11C15/04Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/44Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using super-conductive elements, e.g. cryotron

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Executing Machine-Instructions (AREA)

Description

Die Erfindung betrifft eine Assoziativspeicheranlage mit mindestens einem mehrstelligen Assoziativspeicher, der eine assoziativ ansteuerbare Speichergruppe aus einer Mehrzahl von Wortregistern sowie mindestens ein Datenregister und ein Maskenregister enthält.The invention relates to an associative memory system with at least a multi-digit associative memory containing an associatively controllable memory group from a plurality of word registers as well as at least one data register and one mask register.

Assoziativspeicher werden nicht durch Aufruf einer festen Adresse angesteuert, vielmehr erfolgt der Zugriff durch* assoziative Abfrage mit einem Teil des Speicherinhaltes selbst. Das sogenannte Suchargument umfaßt einige Binärstellen, die einen Teil der Wortlänge dee Speichers bilden. Der Inhalt aller Wortregister wird in diesen ausgewählten Binärstellen mit dem Dateninhalt des Suchwortes imAssociative memories are not controlled by calling up a fixed address, rather they are accessed by means of an * associative query with part of the memory content itself. The so-called search argument includes some binary digits that make up part of the word length dee memory form. The content of all word registers is in this selected binary digits with the data content of the search term in

UK 968 015UK 968 015

009887/1827009887/1827

2. Juli 19702nd July 1970

Eingaberegister auf Gleichheit überprüft; Wortregister, deren Inhalt mit dem Suchargument übereinstimmt, setzen ihren zugehörigen Wahltrigger. Damit sind die ausgewählten Speicherworte ansteuerbar, wobei der eigentliche Zugriff je nach vorgesehener Sp ei eher operation auf alle gewählten Worte gleichzeitig, oder zeitlich nacheinander, oder auf ein dem ausgewählten Wort in festem Abstand in bestimmtem Richtungssinn zugeordnetes Wortregister erfolgt.Input register checked for equality; Word registers, the content of which starts with matches the search argument, set their associated selection trigger. The selected memory words can thus be controlled, with the actual Access, depending on the intended game, is more likely to operate on all the selected ones Words at the same time, or one after the other, or to one assigned to the selected word at a fixed distance in a certain sense of direction Word register takes place.

In einem Assoziativspeicher mit einer sogenannten fixen Maske wird immer der gleiche Satz von Binärstellen der Wortregister mit dem Suchargument verglichen. Speicher solcher Art werden beispielsweise für die Adressenübersetzung in Speicheranlagen mit indirekter Adressierung zur Ausgabe der wahren Adresse verwendet. Flexible organisierte Assoziativspeicher besitzen ein Maskenregister und eine entsprechende Steuer- ' schaltung, um für das Suchargüment die Anzahl der Binärstellen und ihre Lage zum Wortfeld variieren zu können.In an associative memory with a so-called fixed mask, the same set of binary digits of the word registers with the search argument compared. Memories of this type are used, for example, for the Address translation in storage systems with indirect addressing for Output of the true address used. Flexible organized associative memories have a mask register and a corresponding control ' circuit to find the number of binary digits and their To be able to vary the position of the word field.

Diese bekannten Assoziativspeicher weisen jedoch verschiedene Nachteile auf, deren schwerwiegendster für viele Anwendungen die beschränkte Mikroprogramm-Flexibilität ist.However, these known associative memories have various disadvantages the most serious of which for many applications is limited microprogram flexibility.

Es ist nun Aufgabe der vorliegenden Erfindung, durch Vermeidung von Nachteilen der bekannten Anordnungen eine Erweiterung des Anwendungsbereichs von Assoziativspeichern zu ermöglichen.It is now an object of the present invention, by avoiding Disadvantages of the known arrangements allow the range of application of associative memories to be expanded.

Die Lösung dieser Aufgabe ist bei einer Assoziativspeicheranlage der eingangs genannten Art dadurch gekennzeichnet, daß ein Maskenspeicher mit einer Mehrzahl von Maskendatenregistern ^vorgesehen ist, sowie Schaltmittel, um den Dateninhalt eines oder mehrerer Maskendatenregister in das Maskenregister des Assoziativspeichers zu übertragen.The solution to this problem is in the case of an associative memory system initially mentioned, characterized in that a mask memory with a plurality of mask data registers ^ is provided, as well Switching means for transferring the data content of one or more mask data registers into the mask register of the associative memory.

Dadurch wird in einfacher Weise die Mikroprogramm-Flexibilität eines Docket UK ,68 015 009887/1827 This makes the microprogram flexibility of a Docket UK, 68 015 009887/1827 easy

2. Juli 19702nd July 1970

solchen Speichers verbessert.such memory improved.

Die Vorzüge eines Speichers, der entsprechend der Erfindung aufgebaut ist, werden deutlich anhand der nachfolgenden, ins einzelne gehenden Beschreibung, die, zusammen mit den zugehörigen Zeichnungen, das Wesen der Erfindung näher erläutert.The advantages of a memory constructed in accordance with the invention become clear from the following detailed description, which, together with the accompanying drawings, the essence of the invention explained in more detail.

Docket UK 968 015 009887/1827Docket UK 968 015 009887/1827

2. Juli 19702nd July 1970

Auf den Zeichnungen zeigt:On the drawings shows:

Fig. 1 schematisch in einem Blockdiagramm einFig. 1 schematically in a block diagram

Ausführungsbeispiel einer elektronischen digitalen Datenspeicheranlage;Embodiment of an electronic digital data storage system;

Fig. 2 in einem Diagramm eine Binärstelle desFig. 2 in a diagram a binary digit of the

Maskenregisters der Fig. 1;Mask register of Fig. 1;

Fig. 3 eine Anordnung von Maskendaten in. einem3 shows an arrangement of mask data in a

Maskenspeicher;Mask memory;

Fig. 4 eine andere Anordnung von Maskendaten inFig. 4 shows another arrangement of mask data in

einem Maskenspeicher;a mask memory;

Fig. 5 ein Ausführungsbeispiel einer Speicheranlage5 shows an embodiment of a storage system

mit zwei Sp eicher gruppen und je einem Maskenspeicher undwith two memory groups and one mask memory each and

Fig. 6 eine andere Anordnung von zwei Speicher6 shows another arrangement of two memories

gruppen mit je einem Maskenspeicher.groups with one mask memory each.

Die in Fig. 1 gezeigte Assoziativspeicheranlage umfaßt einen mehrstelligen Assoziativspeicher 1 mit einer Speichergruppe 2, die eine Vielzahl von Wortregistern 2a, ein Datenregister 3, ein Maskenregister 4 und eineThe associative memory system shown in Fig. 1 comprises a multi-digit Associative memory 1 with a memory group 2, which has a plurality of word registers 2a, a data register 3, a mask register 4 and one

009887/18 27009887/18 27

Docket UK 968 015 - 4 -Docket UK 968 015 - 4 -

■ ■ ':-::' ■*■■■■ - :: ■■■ ;^'i: ^ ■'■'■ ■ ■ ': -:' ■ * ■■■■ -: ■■■; ^ i ^ ■ '■' ■

Funktionssteuerungseinrichtung 5-enthalt,- Das Datenregister 3 ist an eine Datensammelleitung 6-angeschlossen und die Datenübertragung kann in beiden Richtungen zwischen der Speichergruppc 2 und der Datensammelleitung 6 über das Datenregister 3 erfolgen, das somit als Eingabe/Ausgabe-Register des Assoziativspeichers dient.Function control device 5-contains, - The data register 3 is to a Data bus 6-connected and the data transfer can be in in both directions between the memory group 2 and the data bus 6 via the data register 3, which is thus an input / output register the associative memory is used.

Der Assoziativspeicher 1 läuft in einem zweiphasigen Zyklus. Während der ersten oder Wahlphase werden eines oder mehrere Wortregister 2a für den Zugriff assoziativ ausgewählt. Jedes Wortregister 2a verfügt über einen entsprechenden zugehörigen Wahltrigger (nicht dargestellt) und wird durch Setzen seines Wahltriggers in einen gegebenen stabilen Zustand gewählt. Während der zweiten oder Lese/Schreibphase des Zyklus werden die gewählten Wortregister gleichzeitig angesteuert. Entweder wird dann der Inhalt des Datenregisters 3 als Eingaberegister in einer Schreiboperation auf jedes gewählte Wortregister hin übertragen oder der Inhalt aller gewählten Wortregister wird in einer Leseoperation, die praktisch eine ODER-Operation für den Inhalt der gewählten Register ist, auf das Datenregister 3 als Ausgaberegister hin übertragen. Der Ausdruck "übertragen" bedeutet hier nicht unbedingt, dass die Speicherstelle, von der Daten her übertragen werden, zum Zeitpunkt der Datenübertragung auch gelöscht wird.The associative memory 1 runs in a two-phase cycle. While the first or election phase are one or more word registers 2a selected associatively for access. Each word register 2a has a corresponding associated selection trigger (not shown) and is chosen by setting its election trigger to a given stable state. Be during the second or read / write phase of the cycle the selected word registers are controlled at the same time. Either the content of the data register 3 is then transferred as an input register in a write operation to each selected word register, or the content all selected word registers will be in a read operation which is handy is an OR operation on the contents of the selected registers to which Transfer data register 3 as output register. The term "transferred" here does not necessarily mean that the memory location from which Data are transferred here, at the time of the data transfer it is also deleted.

Ein Wortregister 2a kann für den Zugriff als Ergebnis einer assoziativen UK 9-68-015- _ 4 -A word register 2a can be accessed as a result of an associative UK 9-68-015- _ 4 -

009887/1827009887/1827

Suchoperation, in welcher ein Suchargument in ausgewählten Binärstellen entsprechend der Maskierung mit dem Inhalt der Wortregister verglichen wird, für die Adressierung ausgewählt werden. Die Wahltrigger der Wortregister, in welchen Daten gespeichert sind, die mit dem Suchargument übereinstimmen, werden in einen gegebenen stabilen Zustand gesetzt. Wortregister können auch durch eine "Nächste"- oder "Frühere"-Operation, gegebenenfalls in Verbindung mit einer Suc.hoperation, gewählt werden. Bei einer derartigen Speichcroperation wird die Stellung eines jeden Wahltriggers als Kopie auf den Wahltrigger des benachbarten Wortregisters übertragen, und zwar bei der "Nächste"-Operation auf das Wortregister, welches vom Datenregister 3 her gesehen, weiter ei.ilfernt ist und bei der "Frühere"-Opcration auf das Wortregister, welches dem Datenregister 3 näher liegt. Eine dieser beiden Operationen zusammen mit einer Suchoperation resultiert in der Wahl eines einem ursprünglich durch die Suchoperation ausgewählten Register benachbarten Wortregisters in der festgelegten Richtung. Auch eine Operation "Wahl erster Treffer" kann so definiert werden, dass bei gleichzeitiger Auswahl mehrerer Wortregister durch eine Suchoperation nur dasjenige gewählte Register angesteuert wird, welches dem Datenregister 3 am nächsten liegt.Search operation in which a search argument in selected binary digits compared with the content of the word register according to the masking will be selected for addressing. The selection triggers of the word register in which data is stored with the search argument match are set in a given stable state. Word registers can also be accessed by a "next" or "previous" operation, possibly in connection with a search operation. In such a storage operation, the position becomes a each election trigger as a copy on the election trigger of the neighboring word register transferred to the word register during the "next" operation, which is further removed from the data register 3 and in the "earlier" operation on the word register, which is the data register 3 is closer. Either of these two operations, along with a search operation, results in the choice of one originally by the search operation selected registers of neighboring word registers in the specified direction. A "first hit selection" operation can also be used can be defined in such a way that if several word registers are selected at the same time by a search operation, only the selected register is activated which is closest to data register 3.

Jedes Wortregister kann auch mehr als "einen Wahltrigger haben, z. B. einen Primärtrigger und einen Sekundärtrigger, und jede der oben beschriebenen Operationen kann mit dem ersten oder dem zweiten Wahltrigger ausgeführtEach word register can also have more than "one selection trigger, e.g. one Primary trigger and a secondary trigger, and any of the operations described above can be performed with the first or second selection trigger

UK 9-68-015 - 5 -UK 9-68-015 - 5 -

009887/1827009887/1827

20337032033703

werden. Ein Operationszyklus kann z.B. die Operationen "Suche", "Nächste", "Lesen", "Primär" umfassen und in diesem Zyklus laufen die Operationen "Suche" und "Nächste" auf den primären Wahltriggern ab und die Leseoperation erfolgt auf den Wortregistern, deren primäre Wahltrigger im gegebenen stabilen Zustand stehen. ■will. An operation cycle can e.g. the operations "Search", "Next", "Read", "Primary" comprise and in this cycle the operations run "Search" and "Next" on the primary election triggers and the read operation takes place on the word registers whose primary election trigger in the given stable state. ■

In der in Fig. 1 gezeigten Schaltung veranlassen Steuersignale von einer Funktions steuereinrichtung 5 die Ausführung von ausgewählten in einem Operationszyklus auszuführenden Operationen.In the circuit shown in Fig. 1 cause control signals from a Function control device 5 the execution of selected operations to be carried out in an operation cycle.

Der Assoziativspeicher 1 enthält, wie üblich, ein Maskenregister 4. Das Maskenregister besteht aus einer Reihe von Verriegelungs schaltungen (in Fig. 1 nicht dargestellt), welche die Torschaltungen in den Leitungen zwischen Datenregister 3 und Speichergruppe Z steuern, wodurch entsprechend den Stellungen der Verriegelungen ausgewählte Binärstellen des Datenregisters gegenüber der Speichergruppe maskiert werden. Eine derartige Maskierung ist notwendig, um beider Auswahl des vom Suchargument in einer Suchoperation belegten Feldes die nötige Flexibilität zu erhalten. Wenn die Stellungen der Verriegelungen mit Eins bzw. Null bezeichnet werden, so ist es bisher allgemein üblich, dass die Verriegelungen , die auf Eins stehen, das Datenregistcr während der ersten Phase des Speicherzyklus maskieren und die Verriegelungen, die auf Null stehen, das Datenregister wahrend der zweiten Phase des Zyklus maskieren. Diese Anordnung hatThe associative memory 1 contains, as usual, a mask register 4. The mask register consists of a number of interlocking circuits (not shown in Fig. 1), which control the gates in the lines between data register 3 and memory group Z , whereby the positions of the interlocks selected binary digits of the data register are masked from the storage group. Such masking is necessary in order to obtain the necessary flexibility when selecting the field occupied by the search argument in a search operation. If the positions of the interlocks are denoted by one or zero, it has hitherto been common practice for the interlocks which are set to one to mask the data register during the first phase of the memory cycle and the interlocks which are at zero to mask the data register mask the second phase of the cycle. This arrangement has

UK 9-68-015 - 6 -UK 9-68-015 - 6 -

009887/1827009887/1827

3?3?

jedoch den Nachteil, daß das Suchargument und die adressierten Stellen eines Wortregisters genau das gesarate Wortregister belegen und Zeit vergeudet wird, wenn nur bestimmte nicht vom Suchargurnent belegte Stellen adressiert werden sollen, oder wenn nach einer "Nächste" Operation z. B. Stellen adressiert werden sollen, die das Suchargument eins chließen. Eine flexiblere Anordnung besteht in der Verwendung nur der Verriegelungen für die Maskierung, die auf Eins stehen, und im Wechsel der Maske zwischen der ersten und der zweiten Phase eines Zyklus.however, the disadvantage that the search argument and the addressed locations of a word register occupy exactly the entire word register and time is wasted if only certain ones are not occupied by the search argument Positions are to be addressed, or if, after a "next" operation, e.g. B. Bodies should be addressed that contain the search argument lock in. A more flexible arrangement is to use only the masking interlocks that are set to one and im Change the mask between the first and the second phase of a cycle.

Die Speicheroperationen des Assoziativspeichers 1 werden durch einen Steuerspeicher 7 gesteuert, der eine Folge von Steuerwörtern abgibt, welche decodiert werden in Steuersignale für den Assoziativspeicher. In der deutschen Patentanmeldung P 19 31 966. 5 wird eine Datenverarbeitungsanlage beschrieben, in welcher ein Steuerspeicher ähnlich dem Steuerspeicher 7 mehrere Assoziativspeicher dadurch steuert, daß er für jeden Speicher ein Signal abgibt, welches die auszuführende Operation bezeichnet und bei Einleitung einer Suchoperation die zu benutzende Maske und mindestens einen Teil des Suchargumentes angibt. Die Rechen- und Verknüpfungsfunktionen werden entsprechend der dort angegebenen Beschreibung in den assoziativen S peichern durch Tabellensuche durchgeführt und das Signal dient nicht nur dazu, die Funktion zu definieren, die durch Geben eines Suchargumentes, durch welches die entsprechende Tabelle adressiert werden kann, auszuführen ist, sondernThe memory operations of the associative memory 1 are carried out by a Control memory 7 controlled, which outputs a sequence of control words which are decoded into control signals for the associative memory. In the German patent application P 19 31 966. 5 describes a data processing system in which a control memory similar to the Control memory 7 controls a plurality of associative memories by emitting a signal for each memory which indicates the operation to be carried out and when initiating a search operation specifies the mask to be used and at least part of the search argument. the Arithmetic and logic functions are carried out in accordance with the ones specified there Description is carried out in the associative memory by table search and the signal is not only used to activate the function which is to be carried out by entering a search argument through which the corresponding table can be addressed, but

Docket UK 968 015 009887/1827 Docket UK 968 015 009887/1827

■■;'.■; :■■ . a ■:■■ : / : ; ^ \■■; '. ■; : ■■. a ■: ■■: /:; ^ \

auch, die auszuführende Speicheroperation selbst zu definieren. Um den Steuer speicher auf eine praktikable Grosse zu begrenzen, konnten bisher nur zwei Masken definiert und eine gegebene Funktion mit einer gegebenen Kombination von Speicheroperationen verbunden werden. Das bedeutet jedoch eine zu starke Einschränkung für die Möglichkeiten des Speichersystems, weshalb das System gennäss der Erfindung verbessert wurde. also to define the memory operation to be carried out yourself. To the So far, it has been possible to limit tax storage to a practicable size just define two masks and associate a given function with a given combination of memory operations. That means however, too great a restriction for the possibilities of the storage system, which is why the system has been improved according to the invention.

Ein Maskenspeicher 8 ist nun vorgesehen, welcher eine Reihe von Maskendatenregistern 8a umfasst, und die Verriegelungsschaltungen des Maskenregisters 4 können gleichzeitig aus einem oder mehreren dieser Maskendatenregister 8a geladen werden. Der Maskenspeicher 8 ist als Assoziativspeicher dargestellt, er braucht jedoch kein solcher zu sein. Jedes Maskendatenregister 8a enthält ein Maskendatenfeld 8b und ein Suchfeld 8c. Ein Maskenspeicher 8 ist ein Speicher mit fester Maske und einem festen Operationsablauf, der so arbeitet, dass er eine Suchoperation über das Suchfeld 8c und eine Leseoperation über das Datenfeld 8d ausführt. Ein auf das Suchfeld 8c gegebenes Maskenkennzeichen wählt eines oder mehrere Maskendatenregister zum Auslesen an die 'Verriegelungsschaltungen des Maskenregisters 4 aus. Wie beim Assoziativspeicher 1, ist eine Leseoperation auf mehr als eines der ausgewählten Register gleichbedeutend mit einer ODER-.Operation bezüglich der Daten in den gewählten Registern.A mask memory 8 is now provided which has a number of mask data registers 8a, and the latching circuits of the mask register 4 can simultaneously select one or more of these mask data registers 8a can be loaded. The mask memory 8 is shown as an associative memory, but it does not need to be such. Each Mask data register 8a contains a mask data field 8b and a search field 8c. A mask memory 8 is a fixed mask and operation flow memory which operates to retrieve a search operation the search field 8c and performs a read operation over the data field 8d. A mask identifier placed on the search field 8c selects one of or a plurality of mask data registers for reading out to the interlock circuits of mask register 4. As with associative memory 1, there is a Read operation on more than one of the selected registers is equivalent to an OR operation with respect to the data in the selected ones Registers.

UK 9-68-015 - 8 -UK 9-68-015 - 8 -

009887/1827009887/1827

Zum Speichersystem gehört auch ein Funkticmsspeicher 9 derselben Bauart wie der Maskenspeicher, welcher eine Reihe von Funktionsdatenregistern 9a mit je einem Suchfeld 9c und einem Funktionsdatenfeld 9b enthält. Die Funktionsdatenfelder ausgewählter Datenregister 9a liefern Eingangssignale an die Funktionssteuerungseinrichtung 5.The memory system also includes a function memory 9 of the same type like the mask memory, which is a series of function data registers 9a, each with a search field 9c and a function data field 9b. The function data fields of selected data registers 9a supply input signals to the function control device 5.

Der Maskenspeicher 8 kann so betätigt werden, dass er eine Maske für jeden Zyklus des Assoziativspeichers 1 liefert, vorzugsweise sollte er jedoch je eine Maske am Alifang einer jeden Zyklusphase ausgeben. Der Steuerspeicher 7 gibt somit vier Steuerkennzeichen zum Treiben der in Fig. 1 gezeigten Speicheranlage ab. Jedes Steuorwortregister 7a des Steuer speicher s 7 verfügt über Kennzeichenfeldcr 7b - 7e. Das Kennzeichenfeld 7b ist das erste Maskenkennzeichenfeld und enthält das Suchargument, welches die in der ersten Phase des Speicherzyklus zu verwendende Maske bezeichnet. Es wird mit dem Suchfeld 8c des Maskenspeichers 8 über UND-Glieder verbunden, die symbolisch durch das UND-Glied 10 dargestellt sind. Das Kennzeichenfeld 7c ist das zweite Maskenkennzeichenfeld, welches die in der zweiten Phase des Speicherzyklus zu verwendende Maske bezeichnet. Es wird über UND-Glieder, die symbolisch durch das UND-Glied 11 dargestellt sind, mit dem Suchfeld 8c des Maskenspeichers 8 verbunden. Das Kennzeichenfeld 7d ist das Suchkenrizeichenfeld, das mit einem festen Suchfeld 2b der Speichergruppe 2 verbunden ist. Das Kennzeichenfeld 7e ist das Funktionskenn-The mask memory 8 can be operated so that it has a mask for supplies each cycle of the associative memory 1, but it should preferably output a mask on the alifang of each cycle phase. Of the Control memory 7 thus gives four control codes for driving the in Fig. 1 shown storage system. Each control word register 7a des Control memory s 7 has license plate fields 7b - 7e. The license plate field 7b is the first mask tag field and contains the search argument which is the one to be used in the first phase of the memory cycle Mask called. It is connected to the search field 8c of the mask memory 8 via AND elements, which are symbolically represented by the AND gate 10 are shown. The identifier field 7c is the second mask identifier field which is used in the second phase of the memory cycle The mask to be used is designated. It is via AND elements, which are symbolically represented by the AND element 11, with the search field 8c of the mask memory 8 connected. The identifier field 7d is the search character field that is associated with a fixed search field 2b of the storage group 2 is connected. The code field 7e is the function code

UK 9-68-015 - 9 -UK 9-68-015 - 9 -

009887/1827009887/1827

ΛΑΛΑ

zeichenfeld, welches an den Funktions speicher 9 angeschlossen ist.character field, which is connected to the function memory 9.

Das Suchkennzeichen definiert die Rechen- oder Verknüpfungsoperation, die während eines Speicherzyklus auszuführen ist, in dem es zumindest einen Teil des Kennzeichens angibt, welches die in der Speichergruppe 2 die für die Operation passende Tabellenstelle bezeichnet. Das Suchkennzeichen enthält im allgemeinen nicht das ganze Sucharguinent für die Speichergruppe 2. Es kann z.B..die Tabelle angeben und Operanden im Datenregister 3 vervollständigen dann das Suchargument zur Bezeichnung der speziellen Eintragungen in der Tabelle. ■ . .The search identifier defines the arithmetic or logic operation, which is to be executed during a memory cycle in which there is at least specifies part of the identifier which the in the storage group 2 designates the table position suitable for the operation. The search identifier generally does not contain the entire search arguent for storage group 2. It can, for example, specify the table and operands in data register 3 then complete the search argument for designating the special entries in the table. ■. .

Der Steuerspeicher 7 kann auch ein nicht-assoziativer Speicher sein, in welchem die Steuervvörter unter Steuerung eines Instruktionenzählers adressiert werden, oder der Steuerspeicher kann ein Assoziativspeicher mit einer oben erwähnten Einrichtung für eine Speicheroperation "Wahl nächstes Speicherwort" sein, wodurch die Steuerwörter der Reihe nach adressiert werden können. Der Steuerspeicher kann auch mehrere Assoziativspeicher 1 steuern, und dann müssen Kennzeichenfelder 7b - 7e für jeden der Speicher vorhanden sein.The control memory 7 can also be a non-associative memory, in which the control words under the control of an instruction counter can be addressed, or the control store can be an associative store with above-mentioned means for memory operation "choice next memory word ", whereby the control words in sequence can be addressed. The control memory can also have several associative memories 1, and then there must be flag fields 7b-7e for each of the memories.

Im Betrieb der in Fig. 1 gezeigten Anlage gibt der Steuerspeicher 7 am Anfang der ersten Zyklusphase des Assoziativspeichers 1 ein Stcuerwort aus, das die Kennzcichenfeider 7b - 7e enthält. Während der ersten PhaseIn operation of the system shown in Fig. 1, the control store 7 is on At the beginning of the first cycle phase of the associative memory 1 a control word which contains the Kennzcichenfeider 7b - 7e. During the first phase

UK 9-68-015 _ 10 -UK 9-68-015 _ 10 -

009887/1827009887/1827

wird die Leitung Cl erregt und damit das erste Maskenkennzeichenfcld 7b. auf das Suchfeld 8c des Maskenspeichers 8 durchgeschaltet, und zwar bei einer Such- und Leseoperation als ein Suchargument, was die Uebertragung einer im ersten Zyklus zu verwendenden Maske vom Speicher 8 auf das Maskenregister 4 bewirkt. Der Inhalt des Funktionskennzeichcnfeldes 7e wird auf das Suchfeld 9c des Funkti ons Speichers 9 bei einer Such- und Leseoperation als ein Suchargurrient geleitet. Das führt zur Uebertragung • eines Datenwortes, das die während des laufenden Zyklus auszuführendethe line Cl is energized and thus the first mask identifier fcld 7b. switched through to the search field 8c of the mask memory 8, namely in a search and read operation as a search argument, which is the transmission a mask to be used in the first cycle from memory 8 to the Mask register 4 causes. The content of the function identification field 7e is on the search field 9c of the function memory 9 in a search and Read operation directed as a search agent. That leads to transmission • a data word which is the one to be executed during the current cycle

^ Funktion definiert, vom Funktionsspeicher auf den Decodierer der Funktionssteuereinrichtung 5. Der Inhalt des Suchkennzeichenfeldcs 7d wird direkt als Eingang auf das Kennzeichenfeld 2b der Speicher gruppe 2 gegeben, wo es als Teil oder auch als ganzes Suchargument bei einer Suchoperation auf den Wortregistern 2a der Speichergruppe 2 verwendet werden kann, wenn die durch das Funktionskennzejchenfeld 7e definierten Funktionen dieses erfordern. Für eine einfache Zugriffsoperation auf ein gegebenes Wortregister kann das Suchkennzeichenfeld 7d das Register^ Function defined, from the function memory to the decoder of the function control device 5. The content of the search code field 7d is given directly as an input to the code field 2b of the memory group 2, where it can be used as part or as a whole search argument in a search operation on the word registers 2a of the memory group 2 can, if the functions defined by the function identifier field 7e require this. For a simple access operation on a given Word register can be the search identifier field 7d the register

_ vollständig identifizieren. Wenn der Assoziativspeicher 1 eine Verknüpf-_ fully identify. If the associative memory 1 has a link

ungs- oder Rechenoperation mit .Hilfe von Daten aus in der Speichergruppe. 2 vorhandenen Funktionstabellen ausführen soll, identifiziert das Suchkennzeichenfeld 7d im allgemeinen die zu verwendende Tabelle, und Daten im Register 3 vervollständigen das Suchargument durch Definition bestimmter Eintragungen in der Tabelle. Die Eingangsdaten können auch zur Vervollständigung einer teilweisen Identifizierung einer Tabelle benutztor arithmetic operation with the help of data in the storage group. 2 existing function tables is to be carried out, identifies the search indicator field 7d in general the table to be used, and data in register 3 complete the search argument by defining certain ones Entries in the table. The input data can also be used to complete a partial identification of a table

UK 9-68-015 - 11 -UK 9-68-015 - 11 -

009887/1827009887/1827

werden, die vom Suchkcnnzeichenfeld geliefert wurde.that was returned by the search code field.

Während der zweiten Zyklusphase ist die Leitung Cl abgeschaltet und die Leitung C2 eingeschaltet, wodurch der'Inhalt des zweiten Maskenkennzeichenfeldes 7c über das UND-Glied 11 auf das Suchfeld 8c des Maskenspeichers 8 übertragen wird. Der Maskenspeicher 8 gibt dann eine Maske für die zweite Phase aus. Die Verwendung von zwei Masken ist dort erwünscht, wo das Suchargument und die zu adressierenden Daten zusammen ein Wortregister Ea der Speichergruppe 2 nicht ganz belegen. Wenn jedoch das gewählte Wortregister von einem Suchargument verschiedene Daten enthält, die nicht adressiert werden sollen, oder wenn die zu adressierenden Daten in einem anderen Register stehen, das vor oder hinter dem durch das Suchargument ausgewählten Register liegt, und wenn diese Daten mindestens einige derselben Binärstellen der Gruppe belegen wie das Suchargument, müssen in der ersten und zweiten Zyklusphase verschiedene Masken verwendet werden» Die Verwendung von zwei Masken bringt es natürlich mit sich, dass der Maskenspeicher 8 in einer Such- und Leseopöration wesentlich schneller arbeiten muss, als der Assoziativspeicher 1. Das ist im allgemeinen auch der Fall, da die Komplexität eines Assoziativspeichers eine bestimmende Grosse für die Festlegung der Zykluszeiten beim Entwurf einer Anlage ist. Der Maskenspeicher 8 ist wesentlich kleiner als der Assoziativspeicher 1 und kann daher auch wesentlich schneller arbeitend ausgelegt werden.During the second cycle phase, the line Cl is switched off and the Line C2 switched on, whereby the content of the second mask identifier field 7c via the AND element 11 to the search field 8c of the mask memory 8 is transmitted. The mask memory 8 then gives a mask for the second phase. The use of two masks is desirable there where the search argument and the data to be addressed together do not completely occupy a word register Ea of memory group 2. But when the selected word register contains data other than a search argument which should not be addressed or if the to addressing data are in another register that precedes or is behind the register selected by the search argument, and if this data must occupy at least some of the same binary digits in the group as the search argument in the first and second cycle phases different masks are used »The use of two masks it naturally entails that the mask memory 8 is in a search and read operations must work much faster than the associative memory 1. This is generally also the case, since the complexity of an associative memory is a determining factor for determining the Cycle times when designing a system. The mask memory 8 is significantly smaller than the associative memory 1 and can therefore also be significantly designed to work faster.

UK 9-68-015 - 12■ -UK 9-68-015 - 12 ■ -

009887/1827009887/1827

Ein Schaltbild einer Binärstelle des Maskenregisters 4 ist in Fig. 2 gezeigt. Es wird angenommen, dass eine binäre Zahl durch die Zustandskombination der Potentiale auf zwei Bitleitungen dargestellt wird. Die Binärstelle des in Fig. 2 gezeigten Mäskenregisters 4 ist mit derselben Binärstelle des Eingabe-/Ausgabe-Registers 3 durch die Bitleitungen Zl und 22 und mit derselben Binärstelle eines jeden V/ortregisters 2a der Gruppe 2 durch die Bitleitungen 23 und 24 verbunden. Um eine Schreiboder Suchoperation in der Binärstelle auszuführen, werden die Potentiale auf den Leitungen 21 und 22 entsprechend auf die Leitungen 23 und 24 durchgeschaltet, während zur Durchführung einer Leseoperation in der Binärstelle die Potentiale auf den Leitungen 23 und 24 zu den Leitungen 21 bzw. 22 durchgeschaltet werden. Ein erstes UND-Glied 25 weist entsprechende Eingangsleitungen auf. Eine Leitung 26 wird erregt, wenn eine Maskenverriegelung 27 auf Eins steht, und eine Leitung W/S wird erregt, wenn eine Schreib- oder Suchoperation durch den Decodierer der Funktionssteuereinrichtung 5 (Fig. 1) befohlen wird. Ein weiteres UND-Glied 28 verfügt über entsprechende Eingangsleitungen, und zwar die Leitung W/S, die Leitung 26 und die Bitleitung 22. Die Ausgänge der UND-Glieder 25 und 28 sind mit den entsprechenden Bitleitungen 23 und 24 verbunden. Bei einer Schreib- oder Suchoperation werden somit die Potentialeauf den Bitleitungen 21 und 22 auf die Leitungen 23 bzw, 24 durchgeschaltet, und zwar nur, wenn die Verriegelung 27 auf Eins steht.A circuit diagram of a binary digit of the mask register 4 is shown in FIG. 2 shown. It is assumed that a binary number is given by the combination of states the potential is shown on two bit lines. the The binary digit of the mask register 4 shown in FIG. 2 is the same Binary digit of the input / output register 3 through the bit lines Zl and 22 and with the same binary digit of each location register 2a Group 2 connected by bit lines 23 and 24. In order to carry out a write or search operation in the binary digit, the potentials on lines 21 and 22, correspondingly to lines 23 and 24 switched through while to perform a read operation in the Binary place the potentials on the lines 23 and 24 to the lines 21 or 22 are switched through. A first AND element 25 has corresponding input lines. A line 26 is energized when a mask lock 27 is at one and a line W / S becomes energized when a write or search operation is commanded by the decoder of the function controller 5 (Fig. 1). Another AND element 28 has corresponding input lines, namely the line W / S, the line 26 and the bit line 22. The outputs of the AND gates 25 and 28 are connected to the bit lines 23 and 24, respectively. Thus, in a write or search operation, the potentials become the bit lines 21 and 22 are switched through to the lines 23 and 24, respectively, and only when the lock 27 is set to one.

UK 9-68-015 - 13 -UK 9-68-015 - 13 -

009887/1827009887/1827

Ein anderes UND-Glied 29 verfügt über entsprechende Eingangsleitungen wie die Leitung 26, die Bitleitung 23 und eine Leitung R, die erregt wird, wenn eine Leseoperation durch den Decodierer der Funktionssteuereinrichtung 5 befohlen wird. Ein weiteres UND-Glied 30 weist als Eingänge die Leitung 26, die Bitleitung 24 und die Leitung R auf. Die Ausgänge dieser UND-Glieder 29 und 30 sind entsprechend mit den Bitleitungen 21 und 22 verbunden. Die Potentiale auf den Bitleitungen 23 und 24 werden bei einer Leseopei-ation auf die Leitungen 21 und 22 durchgeschaltet, und zwar nur, wenn die Verriegelungs schaltung 27 auf Eins steht.Another AND element 29 has corresponding input lines like line 26, bit line 23 and a line R that is energized, when a read operation is commanded by the decoder of the function controller 5. Another AND element 30 has inputs line 26, bit line 24 and line R on. The outputs of these AND gates 29 and 30 are correspondingly connected to the bit lines 21 and 22 connected. The potentials on the bit lines 23 and 24 are switched through to lines 21 and 22 in the event of a read operation, and only when the locking circuit 27 is at one.

Zu jeder Binärstelle des Maskenregisters 4 gehört eine entsprechende Verriegelungsschaltung 27, die an eine entsprechende Leitung 31 des Maskenregisters 8 angeschlossen ist. Die Leitung 31 ist so angeschlossen, dass bei Erregung der Leitung die Verriegelungs schaltung die Stellung Eins einnimmt. Eine Abzweigung 32 der Leitung 31 ist über einen Inverter 33 so an die Verriegelungs schaltung 27 geführt, dass diese die Stellung Null annimmt, wenn die Leitung 31 abgeschaltet ist. Jede Leitung 31 ist mit einer entsprechenden Binärstelle des Maskenregisters 8 verbunden und wird erregt, wenn die Binärstelle des Maskenregisters eine binäre Eins als Ergebnis einer Such- und Leseoperation ausgibt. f A corresponding locking circuit 27, which is connected to a corresponding line 31 of the mask register 8, belongs to each binary digit of the mask register 4. The line 31 is connected so that when the line is excited, the interlocking circuit assumes the position one. A branch 32 of the line 31 is led via an inverter 33 to the locking circuit 27 that this assumes the position zero when the line 31 is switched off. Each line 31 is connected to a corresponding binary digit of the mask register 8 and is energized when the binary digit of the mask register outputs a binary one as a result of a search and read operation. f

Bisher wurde eine Anordnung beschrieben«, in welcher eine Maske in das Maskenregister 4 entsprechend einem aus dem Maskenspeicher 8 gewählten' <So far, an arrangement has been described «in which a mask into the Mask register 4 corresponding to a '<selected from mask memory 8

UK 9-68-015 - 14 -UK 9-68-015 - 14 -

009887/1827009887/1827

Datenwort gesetzt wird.Data word is set.

Die bisher beschriebene Anlage arbeitet zufriedenstellend, wenn die Daten im Maskenspeicher 8 in binärer Form gespeichert sind. Die Grosse des Maskenspeichers kann jedoch wesentlich reduziert werden, wenn das Suchfeld 8c Speicherzellen enthält, die drei Zustände, nämlich den einer binären Eins, einer binären Null oder den Zustand X, einnehmen können. In dem zuletzt genannten Zustand X gibt die Zelle kein Signal für Nicht-Uebereinstimmung ab, auch wenn bei einer assoziativen Suchoperation irgendein Abfragesignal an die Zelle angelegt wird. Somit hat eine im Zustand X befindliche Zelle keinerlei negativen Einfluss darauf, ob ein Wortregister für den Zugriff ausgewählt wird. Durch derartige Zellen, die drei mögliche Zustände einnehmen können, kann die Grosse des Maskenspeichers stark reduziert werden. Fig. 3 zeigt z.B. den Inhalt von vier Maskendatenregistern 8a des Maskenspeichers 8. Der X-Zustand wird nur im Suchfeld 8c benutzt. Die Auswirkung des beispielsweise gezeigten Musters von X- und 1-Zuständen ist so, dass jede Binärstelle des Suchargurnentes mit einem entsprechenden Maskem-nuster verknüpft ist und dass jede Musterkombination gewählt werden kann, wobei zu berücksichtigen ist, dass das Ausgangs signal des Maskenspeichers die ODER-Funktion der gewählten Wörter ist, wenn mehr als ein Wort gewählt wird'. Wenn z.B. das Suchargument 1001 ist, ist die gewählte Maske somit 1111 0000 0000 1111.The system described so far works satisfactorily if the data are stored in the mask memory 8 in binary form. The size of the Mask memory can, however, be significantly reduced if the search field 8c contains memory cells, the three states, namely one binary one, a binary zero or the state X can take. In the last-mentioned state X, the cell does not give a signal for disagreement even if any interrogation signal is applied to the cell during an associative search operation. Thus, an im The cell located in state X has no negative influence on whether a Word register is selected for access. Such cells, which can assume three possible states, the size of the Mask memory can be greatly reduced. For example, Fig. 3 shows the contents of four mask data registers 8a of the mask memory 8. The X state is only used in search field 8c. The effect of the pattern of X and 1 states shown as an example is such that every binary digit of the search argument linked to a corresponding mask pattern and that any combination of patterns can be selected, taking into account that the output signal of the mask memory the OR function of the chosen words is if more than one word is chosen '. For example, if the search argument is 1001, the selected Mask thus 1111 0000 0000 1111.

UK 9-68-015 - 15 - - 'UK 9-68-015 - 15 - - '

009887/1827009887/1827

Gernäss der Darstellung in Fig. 4 kann dieser Gedanke so erweitert werden, dass Maskengruppen und aus der Gruppe weiter eine Maskenkombination gewählt werden können. Die beiden äussersten linken Binärstellen des Suchargumentes bestimmen, aus welcher Gruppe die erwünschte Maske auszuwählen ist. Die Auswahl der zu verwendenden Maskenkombination wird bestimmt durch die übrigen Stellen des Suchargumentes, • welche auch den X-Zustand annehmen können.According to the illustration in FIG. 4, this idea can be expanded in this way that mask groups and from the group further a mask combination can be chosen. The two extreme left binary digits of the search argument determine from which group the desired mask is to be selected. The selection of the mask combination to be used is determined by the other digits of the search argument, • which can also assume the X state.

Die Einplanung eines einzelnen Maskenspeichers 8 für jeden von mehreren <The planning of a single mask memory 8 for each of several <

Assoziativspeichern 1 kann kombiniert werden mit der Einplanung eines ■ gemeinsamen FunktionsSpeichers 9 für alle Assoziativspeicher 1. Die. Verwendung verschiedener Masken kann zu verschiedenen Interpretationen desselben Suchargumentes durch verschiedene Speicher und somit zu verschiedenen auszuführenden Funktionen oder logischen Verknüpfungen führen. · · ■Associative memory 1 can be combined with the planning of one ■ common function memory 9 for all associative memories 1. The. Using different masks can lead to different interpretations of the same search argument by different memories and thus to different ones perform functions or logic operations to be carried out. · · ■

Eine derartige Ajüage ist schematisch in Fig. 5 gezeigt. Zu den Assoziativ- i speichern 50, 51 gehören entsprechende Speichergruppen 52, 53, Datenregister 54, 55 und Maskenregister 56 und 57. Der Maskenspeicher 58 steuert das Maskenregister 56 und der Maskenspeicher 59 das Maskenregister 57, Die Datenregister 54 und 55 sind als Eingaberegister beide parallel an eine Datensammelleitung 60 angeschlossen. Ueber die Leitung 61 werden dieselben Funktions-Steuersigiiale auf die AssoziativspeicherSuch an arrangement is shown schematically in FIG. Among the associative i save 50, 51 include respective memory groups 52, 53, data registers 54, 55, and mask registers 56 and 57. The mask memory 58 controls the mask register 56 and the mask memory 59, the mask register 57, the data register 54 and 55 are as input register both connected in parallel to a data bus line 60. The same function control digits are sent to the associative memory via the line 61

UK 9-68-015 -16- ·UK 9-68-015 -16-

■.-009887/1-827■.-009887 / 1-827

50 und 51 gegeben und dieselben Maskenkennzeichen werden über die Leitung 62 auf die Maskenspeicher 58 und 59 gegeben. Die Signale auf der Leitung 61 können von einem Fuiiktionsspeicher 9 oder direkt von einem Steuer speicher 7 stammen. Dieselben Maskenkennzeichen in den Maskenspeichern 58 und 59 bezeichnen nicht unbedingt dieselbe Maske, und somit kann dasselbe Datenwort auf der Datensammelleitung 60 durch die Assoziativspeicher 50 und 51 verschieden interpretiert werden. Die Daten können Funktionsbits enthalten, die die Funktionssignale auf der Leitung 61 ergänzen und verschiedene Speicher können dann verschiedene Funktionsbits ausmaskieren mit dem Ergebnis, dass-verschiedene Funktionen in den Speichern ausgeführt werden. Alternativ zu. oder in Verbindung mit Funktionsbits können die Daten ein Wort aus mehreren Zeichen enthalten und jeder Speicher wird so maskiert, dass eine Operation mit einem anderen Zeichen ausgeführt wird. Bei bestimmten Anwendungen, wie bei der Echtzeit-Prozessteuerung, kann z.B. eine parallele Addition in mehreren assoziativ organisierten Speichern, wie 50 und 51, anstelle einer seriellen Addition in einem derartigen Speicher erwünscht sein.50 and 51 are given and the same mask identifiers are given to mask memories 58 and 59 via line 62. The signals on line 61 can come from a function memory 9 or directly from a control memory 7. The same mask identifiers in the mask memories 58 and 59 do not necessarily designate the same mask, and thus the same data word on the data bus 60 can be interpreted differently by the associative memories 50 and 51. The data can contain function bits which supplement the function signals on the line 61 and different memories can then mask out different function bits with the result that different functions are carried out in the memories. Alternatively to. or in conjunction with function bits, the data can contain a multi-character word and each memory is masked to perform an operation on a different character. In certain applications, such as real-time process control, for example, parallel addition in several associatively organized memories, such as 50 and 51, may be desirable instead of serial addition in such a memory.

Die bisher beschriebene Anordnung kann dahingehend abgewandelt werden, dass Maskenspeicher verschiedene Maskenkennzeichen enthalten und dass die Nichtwahl einer Maske dazu führt, dass einer der Speicher 50 oderThe arrangement described so far can be modified to the effect that that mask memories contain different mask identifiers and that the non-selection of a mask results in one of the memories 50 or

51 keine Operation ausführt. Da die Wahl einer Maske das Setzen eines51 is not performing any operation. Since choosing a mask is putting a

UK 9-68-015 - 17 -UK 9-68-015 - 17 -

009887/1827009887/1827

Wahltriggers mit sich bringt, lässt sich die Wahl leicht dadurch bewirken, dass am Ende der Suchphasc eines Maskenspeichers festgestellt wird, ob ein Wahltrigger gesetzt ist, und wenn das nicht der Fall ist, wird ein Signal für "Keine Operation" erzeugt und auf den Funktionsdecodierer (Fig. 1) gegeben, welches alle anderen Funktionssignale übersteuert.Election triggers, the election can easily be effected by that at the end of the search phase of a mask memory it is determined whether a selection trigger has been set, and if this is not the case, a Signal for "No operation" generated and sent to the function decoder (Fig. 1) given, which overrides all other function signals.

Eine andere Anwendungsmöglichkeit eines Maskenspeicher für jeden Assoziativspeicher findet sich bei der seriellen Schaltung von Speichern, wie sie in Fig. 6 gezeigt ist. Dort sind gleichartige Teile mit denselben · Bezugszeichen versehen wie in Fig. 5. Die Assoziativspeicher 50, 51 in der Fig. 6 sind gegenüber denen in Fig. 5 dahingehend abgewandelt, dass sie über zwei Datenregister verfügen. Daten werden von der Daten-Sammelleitung 60 auf den entsprechend den Signalen aus dem Maskenspeicher 58 maskierten Assoziativspeicher 51 gegeben und durch eine Tabellensuche in der Speichergruppe 52 entsprechend dem Suchargument in dem Datenregistcr 54 und den Funktions Steuersignalen auf der Leitung 61 verarbeitet. Das Ergebnis wird dann über das zweite Datenregister 54a auf das erste Datenregister 55 des Assoziativspeichers 51 geleitet und von dort entsprechend den Signalen aus dem Maskenspeicher 59 maskiert auf die Speichergruppe 53 geleitet, wo eine weitere Tabellensuche ausgeführt wird, bevor das Endergebnis über das Datenregister 55a auf die Datensammclleitung 70 gegeben wird.Another possible application of a mask memory for each associative memory can be found in the serial connection of memories, as shown in FIG. Parts of the same type are provided there with the same reference symbols as in FIG. 5. The associative memories 50, 51 in Fig. 6 are modified from those in Fig. 5 to the effect that that they have two data registers. Data is from the data collector 60 on the corresponding to the signals from the mask memory 58 masked associative memory 51 given and by a Table search in storage group 52 according to the search argument in the data register 54 and the function control signals on the line 61 processed. The result is then via the second data register 54a is passed to the first data register 55 of the associative memory 51 and from there in accordance with the signals from the mask memory 59 masked to the storage group 53, where another table search is carried out before the end result is sent to the data collection line 70 via the data register 55a.

UK 9-68-015 - 18 -UK 9-68-015 - 18 -

0098 87/18270098 87/1827

Die Verbindungen zwischen den Datenregistern 54a und 55 brauchen nicht zwischen gleichen Binärstcllen der beiden Register zu bestehen. Wie schematisch durch die Kreuzverbindung der beiden Registerteile angedeutet ist, kann jedes Verbindungsmuster benutzt werden. Die in Fig. gezeigte serielle Anordnung eignet sich besonders für Additionen, die man sich in zwei Schritten vorstellen kann : Zuerst wird eine Teilsumme mit Uebdrträgen erzeugt, und dann werden die Ueberträge.in die Teilsumme hineinaddiert. Der Assoziativspeicher 51 ist für dieses Anwendungsbeispiel so angeordnet, dass er nur die Ueberträge bei den Daten addiert, die er vom Assoziativspeicher 50 geliefert bekommt. Der Assoziativspeicher 50 kann auch für die Uebernahme anderer Funktionen als nur den ersten Additions schritt ausgelegt sein. Deshalb ist durch Doppelpfeile zwischen diesem Speicher und der Datensämmelleitung 60 in Fig. 6 eine Zweiwegverbindung dargestellt. Der zusätzliche Assoziativspeicher 51 wird nur bei Ausführung einer Addition benutzt, was z.B. dadurch erreicht werden kann, dass man den Assoziativspeicher 50 so anordnet, dass dieser bei einer Additionsoperation nur Aus gangs signale auf das Datenregister 55 gibt, und dass ein leeres Register 55 dem zweiten Assoziativspeicher 51 einen Zyklus "keine Operation" anzeigt.The connections between the data registers 54a and 55 do not need exist between the same binary digits of the two registers. As indicated schematically by the cross connection of the two register parts any connection pattern can be used. The serial arrangement shown in Fig. Is particularly suitable for additions that can be imagined in two steps: First a partial total is generated with transfers, and then the transfers are converted into the partial total added into it. The associative memory 51 is arranged for this application example in such a way that it only stores the transfers in the Adds data that it receives from the associative memory 50. The associative memory 50 can also be used for other functions be designed as just the first addition step. That's why it's through Double arrows between this memory and the data collector line 60 6 shows a two-way connection. The additional associative memory 51 is only used when performing an addition, which can be achieved, for example, by setting the associative memory 50 in such a way orders that this only output signals during an addition operation to the data register 55, and that an empty register 55 denotes the second associative memory 51 indicates a "no operation" cycle.

In der Fig. 6 wurden die beiden Datenregister einer jeden Speichergruppe auf einander gegenüberliegenden Seiten gezeichnet, um den Datenfluss der Speichergruppen zu zeigen. Zwei Anordnungen von MaskenregisternIn Fig. 6, the two data registers of each memory group drawn on opposite sides to facilitate the flow of data of storage groups to show. Two arrangements of mask registers

UK 9-68-015 - 19 ~UK 9-68-015 - 19 ~

009887/1827009887/1827

sind möglich, wenn zwei oder mehr Datenregister verwendet werden. In einer Anordnung wird nur ein Maskenregister verwendet und die Datenwege zwischen den Datenregistern und der Speichergruppe laufen alle durch das Maskenregister. Eine Maske wird an das Maskenregister ausgegeben, entweder in jedem. Zyklus öder jeder Phase des Zyklus gernäss obiger Beschreibung, und die Wahl des Datenregisters für die Datenübertragung wird unabhängig gesteuert. In der anderen Anordnung gehört zu jedem Datenregister ein Maskenregister, und jedesmal, wenn die Register zu laden sind, werden vom Maskenspeicher sovielc Masken ausgegeben, wie Maskenregister vorhanden sind. Durch Maskierung werden Datenregister oder Teile davon für die Datenübertragung oder zur Verwendung als Suchargumente in einer Suchoperation ausgewählt. Obwohl die im Zusammenhang mit den ITig. 1-5 beschriebenen Speicheranlagen über nur ein Datenregister verfügen, können auch dort mehrere Datenregister vorgesehen sein und alle beschriebenen Maskierungsverfahren angewandt werden.are possible when two or more data registers are used. In In one arrangement, only one mask register is used and the data paths between the data registers and the storage group all run through the mask register. A mask is output to the mask register, either in each. Cycle or any phase of the cycle description above, and the selection of the data register for the data transfer is controlled independently. In the other arrangement, a mask register is associated with each data register, and each time the Registers are to be loaded, as many masks are output from the mask memory as how mask registers are available. Masking makes data registers or parts thereof for data transmission or use selected as search arguments in a search operation. Although those related to the ITig. 1-5 storage systems described only have one data register, several data registers can also be used there be provided and all masking methods described are used.

UK 9-63-015 - 20 -UK 9-63-015 - 20 -

009887/1827009887/1827

Claims (9)

PATENTANSPRÜCHEPATENT CLAIMS Assoziativspeicheranlage mit mindestens einem mehrstelligen Assoziativspeicher, der eine assoziativ ansteuerbare Speichergruppe aus einer Mehrzahl von Wortregistern sowie mindestens ein Datenregister und ein Maskenregister enthält, dadurch gekennzeichnet, daß ein Maskenspeicher (8) mit einer Mehrzahl von Maskendaten·= registern (8a) vorgesehen ist, sowie Schaltmittel, um den Dateninhalt eines oder mehrerer ausgewählter Maskendatenregister (8a) in das Maskenregister (4) des Assoziativspeichers (1) zu übertragen. Associative memory system with at least one multi-digit associative memory which is an associatively controllable memory group contains a plurality of word registers and at least one data register and one mask register, characterized in that that a mask memory (8) with a plurality of mask data · = registers (8a) is provided, as well as switching means for the data content to transfer one or more selected mask data registers (8a) into the mask register (4) of the associative memory (1). 2. Assoziativspeicheranlage nach Anspruch 1, dadurch gekennzeichnet,2. Associative storage system according to claim 1, characterized in that daß in den Wortregistern (2a) und dem Datenregister (3) gleiche Binärstellen nail Maßgabe des Maskenregisters (4) untereinander verbindbar sind.that in the word registers (2a) and the data register (3) the same binary digits nail one another according to the mask register (4) are connectable. 3. Assoziativspeicheranlage nach Anspruch 1, dadurch gekennzeichnet,3. Associative storage system according to claim 1, characterized in that daß die Schaltmittel zum Übertragen des Dateninhaltes ausgewählter Maskendatenregister (8a) des Maskenspeichers (8) in das Maskenregister (4) des Assoziativspeichers (1) zu Beginn sowohl der Wahlphase als auch der Lese-/Schreibphase des Speicherzyklus wirksam sind.that the switching means for transmitting the data content is selected Mask data register (8a) of the mask memory (8) into the mask register (4) of the associative memory (1) at the beginning of both the selection phase and the read / write phase of the memory cycle are effective. 4. Assoziativspeicheranlage nach Anspruch 1, dadurch gekennzeichnet, 4. Associative storage system according to claim 1, characterized in that daß auch der Maskenspeieher (8) assoziativ organi-that the mask spearer (8) is also associatively 009887/1827009887/1827 Docket UK 968 015 - 22 -Docket UK 968 015 - 22 - 2. Juli 19702nd July 1970 «3«3 siert ist und der Zugriff zu dem oder den ausgewählten Maskendatenregistern (8a) durch eine assoziative Suchoperation erfolgt.and access to the selected mask data register or registers (8a) is carried out by an associative search operation. 5. Assoziativspeicheranlage nach Anspruch 4, dadurch gekennzeichnet, daß jedes Maskendatenregister (8a) mit einem Wahltrigger verbunden ist, der in einen seiner beiden stabilen Zustände setzbar ist, wenn das zugehörige Maskendatenregister assoziativ ausgewählt wurde, und daß Schaltkreise zum Abfühlen des eingenommenen Zustandes der Wahltrigger vorgesehen sind.5. associative storage system according to claim 4, characterized in that that each mask data register (8a) with a selection trigger is connected, which can be set to one of its two stable states when the associated mask data register has been selected associatively, and that circuitry is provided for sensing the assumed state of the selection triggers are. 6. Assoziativspeicheranlage nach Anspruch 1, dadurch gekennzeichnet, daß im Maskenspeicher (8) Speicherzellen vorhanden sind, die drei stabile Zustände annehmen können, denen die Binärwerte Null und Eins, sowie ein neutraler X-Zustand entsprechen, wobei der neutrale Zustand unabhängig vom Suchargument bewirkt, daß die angesteuerte Speicherzelle kein Signal abgibt, das Nicht-Übereinstimmung bedeutet.6. Associative storage system according to claim 1, characterized in that that in the mask memory (8) memory cells are present which can assume three stable states, which the Binary values zero and one, as well as a neutral X-state correspond, Wherein the neutral state has the effect, regardless of the search argument, that the selected memory cell does not have a signal which means non-compliance. 7. Assoziativspeicheranlage nach Anspruch 1, dadurch gekennzeichnet, daß mehrere mit der gleichen Datensammelleitung (60) zusammenarbeitende Assoziativspeicher (50, 51) vorhanden sind, die jeder mit einem Maskenregister (56, 57) und mit einem zugehörigen Maskenspeicher (58, 59) ausgerüstet sind.7. associative memory system according to claim 1, characterized in that that several associative memories (50, 51) cooperating with the same data bus line (60) are present are each with a mask register (56, 57) and with an associated mask memory (58, 59) are equipped. 009887/1827009887/1827 Docket UK 968 015 - 23 -Docket UK 968 015 - 23 - 2. Juli 19702nd July 1970 8. Assoziativspeicheranlage nach Anspruch 1, dadurch gekennzeichnet, daß ein Steuer speicher (7) mit einer Mehrzahl von Steuerwortregistern (7a) vorgesehen ist.8. associative memory system according to claim 1, characterized in that that a control memory (7) with a plurality of control word registers (7a) is provided. 9. Assoziativspeicheranlage nach Anspruch 1, dadurch gekennzeichnet, daß der Steuerspeicher (7) assoziativ organisiert ist.9. associative storage system according to claim 1, characterized in that that the control memory (7) is organized associatively. 009887/1827009887/1827 Docket UK 968 015Docket UK 968 015 LeerseiteBlank page
DE19702033709 1969-07-26 1970-07-08 ASSOCIATIVE STORAGE SYSTEM Granted DE2033709B2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB3766569 1969-07-26

Publications (2)

Publication Number Publication Date
DE2033709A1 true DE2033709A1 (en) 1971-02-11
DE2033709B2 DE2033709B2 (en) 1973-02-01

Family

ID=10398104

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19702033709 Granted DE2033709B2 (en) 1969-07-26 1970-07-08 ASSOCIATIVE STORAGE SYSTEM

Country Status (8)

Country Link
JP (1) JPS4816010B1 (en)
BE (1) BE751653A (en)
CH (1) CH510314A (en)
DE (1) DE2033709B2 (en)
FR (1) FR2053173B1 (en)
GB (1) GB1233484A (en)
NL (1) NL7010312A (en)
SE (1) SE366602B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0035787A2 (en) * 1980-03-11 1981-09-16 Siemens Aktiengesellschaft Hybrid associative memory and its applications, particularly for sorting memorised data

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1248716A (en) * 1970-06-16 1971-10-06 Ibm Associative storage systems
JPS6031582U (en) * 1983-08-10 1985-03-04 東洋ゴム工業株式会社 flexible pipe fittings

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3275991A (en) * 1962-12-03 1966-09-27 Bunker Ramo Memory system
US3349375A (en) * 1963-11-07 1967-10-24 Ibm Associative logic for highly parallel computer and data processing systems
US3320594A (en) * 1964-03-10 1967-05-16 Trw Inc Associative computer
US3470540A (en) * 1967-04-24 1969-09-30 Rca Corp Multiprocessing computer system with special instruction sequencing

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0035787A2 (en) * 1980-03-11 1981-09-16 Siemens Aktiengesellschaft Hybrid associative memory and its applications, particularly for sorting memorised data
EP0035787A3 (en) * 1980-03-11 1981-09-30 Siemens Aktiengesellschaft Berlin Und Munchen Hybrid associative memory and its applications, particularly for sorting memorised data

Also Published As

Publication number Publication date
CH510314A (en) 1971-07-15
NL7010312A (en) 1971-01-28
GB1233484A (en) 1971-05-26
BE751653A (en) 1970-11-16
SE366602B (en) 1974-04-29
DE2033709B2 (en) 1973-02-01
FR2053173B1 (en) 1973-10-19
FR2053173A1 (en) 1971-04-16
JPS4816010B1 (en) 1973-05-18

Similar Documents

Publication Publication Date Title
DE2755273C2 (en)
DE2424820C3 (en) Device for searching a data store
DE2230103C2 (en) Addressing device for a memory
DE1931966C3 (en) Data processing system with associative memories
CH650600A5 (en) CENTRAL PROCESSOR UNIT OF A DATA PROCESSING SYSTEM WITH OPERATION CODE EXTENSION REGISTER.
DE1499722B1 (en) DEVICE FOR THE MODIFICATION OF INFORMATION WORDS
DE2524229A1 (en) DATA PROCESSING SYSTEM WITH A PYRAMID-SHAPED HIERARCHY OF THE CONTROL FLOW
DE1928202B2 (en) Device for the creation of statistical data on the operational sequence of program-controlled data processing systems
DE2230102A1 (en) CALCULATOR FOR VARIABLE WORD LENGTHS
DE2718110A1 (en) DATA PROCESSING UNIT
DE2318069A1 (en) COMPUTER CONTROL SYSTEM USING MICROPROGRAMMING AND STATIC / DYNAMIC EXTENSION OF CONTROL FUNCTIONS USING HARDWIRED LOGICAL MATRIX
DE1269393B (en) Microprogram control unit
DE2165765B2 (en) Information memory with shift registers
DE2900586C2 (en) Arrangement for decoding code words of variable length
DE2403039C2 (en) Device for executing commands in an address-extended electronic data processing system
DE2245284A1 (en) DATA PROCESSING SYSTEM
DE2854400A1 (en) ARRANGEMENT FOR CHANGING BETWEEN TOOTHED PROGRAMS TO BE PROCESSED
DE1449795A1 (en) Circuit arrangement for controlling an associative memory
DE2033709A1 (en) Associative storage system
DE2057587A1 (en) Content-addressed memory
DE2000275A1 (en) Electronic roller switch
DE1549434A1 (en) Data processing system
DE2024584B2 (en) Control device for a general data processing device
DE2233164B2 (en) Partial amendment of stored data - using logic circuit transferring part of bit sequence between registers
DE2265696C2 (en) Computing arrangement

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
E77 Valid patent as to the heymanns-index 1977
8339 Ceased/non-payment of the annual fee