DE2853926A1 - Wortorganisierter, inhaltlich adressierbarer speicher - Google Patents

Wortorganisierter, inhaltlich adressierbarer speicher

Info

Publication number
DE2853926A1
DE2853926A1 DE19782853926 DE2853926A DE2853926A1 DE 2853926 A1 DE2853926 A1 DE 2853926A1 DE 19782853926 DE19782853926 DE 19782853926 DE 2853926 A DE2853926 A DE 2853926A DE 2853926 A1 DE2853926 A1 DE 2853926A1
Authority
DE
Germany
Prior art keywords
word
signal
mentioned
bit
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.)
Withdrawn
Application number
DE19782853926
Other languages
English (en)
Inventor
Leendert Nederlof
Roelof Herman Willem Salters
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.)
Koninklijke Philips NV
Original Assignee
Philips Gloeilampenfabrieken NV
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 Philips Gloeilampenfabrieken NV filed Critical Philips Gloeilampenfabrieken NV
Publication of DE2853926A1 publication Critical patent/DE2853926A1/de
Withdrawn 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

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Input (AREA)
  • Dram (AREA)
  • Storage Device Security (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

N.V. Philips' Giocilarnpanfabri&ken, tinJhüyen'
23.9.1978 -Τ PHN 8989.
"Wor torganisierter, inhaltlich adressierbarer Speicher"
Die Erfindung betrifft einen wortorganisierten, inhaltlich, adressierbaren Speicher mit einem ersten Eingang zum Zuführen eines Schlüsselworts, einem zweiten Eingang zum Zuführen eines Maskenworts zum selektiven Unwirksammachen eines Teils des zugeführten Schlüsselworts durch Maskierung, einem Ausgang zum Ableiten eines an einer Wortstelle gespeicherten Datenworts, ersten Mitteln zum Vergleichen eines nicht maskierten Teils eines Schlüsselworts und eines entsprechenden Teils eines an einer Wortstelle gespeicherten Datenworts und zweiten Mitteln zum Angeben einer von den erwähnten ersten Mitteln detektierten Übereinstimmung je Wortstelle und zum Aktivieren des erwähnten Ausgangs zum Ableiten von Daten aus einer Wortstelle, für die eine Übereinstimmung auftritt.
Ein derartiger Speicher ist aus dem Artikel von
J. Barlett et al "Associative Memory Chips: fast, versatile, and here", Electronics (7OO817) S. 96 ... 100, bekannt, beispielsweise der auf Seite 97 angegebene Speicher 4102 von Fairchild Semiconductor Corp. mit vier Wörtern aus je vier Bits. Für diese 16 Bits hat der erwähnte Speicher vierundzwanzig Anschlusstifte an der integrierten Schaltung: a) vier Anschlüsse für eine Adresse, so dass die Daten ebenfalls auf die Art eines Speichers mit wahlfreiem Zugriff (RAM) anrufbar ist;
909825/083S
23.9.78. & PHN 8989
b) vier Anschlüsse für Deskriptordaten, nämlich das Schlüsselwort;
c) vier Anschlüsse für Freigabedaten ("enable"), also hinsichtlich des Maskenworts; die Bitstellen, die vom Masken-■ wort verdeckt werden, zählen beim Vergleich nicht mit;
d) vier Anschlüsse für ein Ubereinstimmungssignal, jeweils einer für jedes einzelne Wort;
e) vier Anschlüsse zum parallelen Abnehmen der Daten eines Vierbit-Inhaltsworts;
f) einen Anschluss für ein sogenanntes invertiertes Ubereinstimmungssignal;
g) einen Anschluss für ein Schreibsteuersignal (write enable); h) zwei Stromversorgungsanschlüsse, insgesamt 24 Anschlüsse. Die Anzahl der Anschlusstifte je gespeichertem · Datenbit wird dabei für eine viereckige Matrix von η χ η Bits als (5n+4):n2 berechnet, was verhältriismässig hoch ist: in einer Matrix mit 4θ Anschlusstiften könnten höchstens 7x7 Bits Platz finden.
Der Erfindung liegt die Aufgabe zugrunde, die Anzahl der erforderlichen Anschlusstifte für einen inhaltlich adressierbaren Speicher nach obiger Beschreibung unter Beibehaltung einer grossen Flexibilität in der Verwendung und einer leichten Steuerbarkeit im Verhältnis zum bekannten Speicher herabzusetzen.
Die Erfindung ist dadurch gekennzeichnet, dass die erwähnten zweiten Mittel einen Gültigkeitsindikator je Wortstelle mit einem Zustand "gültig" und einem Zustand "ungültig"
um die Gültigkeit des dort gespeicherten Worts selektiv
anzugeben, und einen Ubereinstimmungsindikator pro Wort mit 30
einem Zustand "übereinstimmend" und einem Zustand "nicht übereinstimmend" enthalten, dass der erwähnte Gültigkeitsindikator wie eine Bitposition der zugeordneten Wortstelle arbeitet, so dass beim Adressieren des Speichers nach
gültigem Wortstelleninhalt durch den erwähnten Zustand 35
"ungültig" der zugeordnete Ubereinstimmungsindikator zum wirksamen Erzeugen eines Signals "übereinstimmend" gesperrt ist, und dass jeder Gültigkeitsindikator einen Umschalteingang
909825/0836
.23.9-78. Z PHN 8989
besitzt, um ihn durch ein extern zugeführtes TJraschaltsignal selektxv in den einen oder den anderen Zustand umzuschalten. So können zunächst eine Anzahl von Adressenstiften entfallen. Dieses Entfallen ist wie folgt ersichtlich: der Gültigkeitsindikator zeigt an, ob eine Yortstelle göltige Daten enthält. Durch Umschalten des Gültigkeitsindikators auf "ungültig" kann gleichsam ein Speicherwort gelöscht werden, ohne dass nach aussen her die physikalische Adresse dieses Speicherworts bekannt zu sein braucht: diese braucht also auch nicht an anderer Stelle gespeichert zu werden. Der Erfindung liegt die Erkenntnis zugrunde, dass an sich die physikalische Adresse eines Worts für einen Benutzer völlig bedeutungslos ist. Durch das" assoziative Suchen eines auf "ungültig" stehenden Gültigkeitsindikators wird eine verfügbare "freie" Wortstelle gefunden. Auch dabei wird keine physikalische Adressierung von aussen her erfordert.
Es ist vorteilhaft, wenn zum Entleeren eines Teils des Speichers dritte Mittel vorgesehen sind, um unter der Steue-. rung eines Ubereinstimmungssignals aus dem Ubereinstimmungsindikator eine oder mehrere Wortstellen des Gültigkeitsindikators dieser einen bzw. mehreren Wortstellen in den Zustand "ungültig" umzuschalten. So wird der Entleerungsvorgang von den Daten eines Worts gesteuert und nicht durch seine physikalische Adresse. Dies gibt eine einfachere Steuerung, weil dafür die erwähnte physikalische Adresse nicht nach aussen her bekannt zu sein braucht.
Es ist vorteilhaft, wenn ein ReihenfolgenbeStimmer .vorgesehen ist, um bei gleichzeitigem Auftreten mindestens zweier wirksamer "übereinstimmender" Signale eine Reihenfolge zur Behandlung der zugeordneten Wortstellen zu bilden (multiple match resolver), wobei zum Einschreiben eines Datenworts an einer Wortstelle ausschliesslich die den Daten des Gültigkeitsindikators entsprechende Bitstelle durch das -Maskenwort unmaskiert bleibt, um darauf im Zustand "ungültig" den zugeordneten Ubereinstimmungsindikator zur Bildung eines Zustands "übereinstimmend" zu steuern, wonach der ReihenfolgenbeStimmer für eine einzige, so mit einem Ubereinstimmungssignal versehene Wortstelle ein Freigabeschreibsignal
909825/0836
23.9.78. JT ' PHN 8989
steuert. So kann, wenn mehrere ¥ortstellen ausschliesslich ungültige Daten enthalten, leicht eine einzige Wortstelle mit neuen Daten gefüllt werden. Auch dafür braucht die physikalische Adresse jetzt nicht nach aussen her bekannt zu sein.
Es ist vorteilhaft, wenn vierte Mittel vorgesehen sind, um unter der Steuerung eines Reihenfolgesignals des erwähnten Reihenfolgenbestimmers für eine vom erwähnten Reihenfolgesignal indizierte Wortstelle den Übereinstimmungsindikator in den Zustand "nicht übereinstimmend" zu bringen, um so bei einem angekommenen Lesebefehlssignal die Daten einer Wortstelle nur einmal dem erwähnten Ausgang zuzuführen. Dies gibt die vorteilhafte zusätzliche Funktion des sequentiellen jeweiligen einmaligen Lesens einer Anzahl übereinstimmender Wörter, was durch die bereits vorhandenen Ubereinstimmungsindikatoren erfüllt wird.
Es ist vorteilhaft, wenn fünfte Mittel vorgesehen sind, um unter der Steuerung eines wirksamen Ubereinstimmungssignals eines Ubereinstimmungsindikators für die vom dabei auftretenden Maskenwort unmaskierten Bitstellungen der betreffenden Wortstelle eine vorgegebene Information zu schreiben, und wenn die erwähnten fünften Mittel weiterhin dazu geeignet sind, unter der Steuerung der gemeinsam wirksam erscheinenden Ubereinstimmungssignale der Uberein-
*5 Stimmungsindikatoren mindestens zweier Wortstellen für die vom dabei auftretenden Maskenwort unmaskierten Bitstellungen der betreffenden Wortstellen gemeinsam eine vorgegebene * Information zu schreiben. So lässt sich leicht die Information eines einzigen Worts oder einer Anzahl von Wörtern (mit übrigens jeweils den gleichen Daten) ändern.
Es ist vorteilhaft, wenn ein Maskenregister für ein Maskenwort vorgesehen ist, dessen nicht maskierende Datenstelle(n) die erwähnten ersten Mittel bitweise aktivierten und deren maskierende Datenstellen den erwähnten Ausgang
bitweise aktivieren. Oft bleibt die Maske bei einer Anzahl aufeinanderfolgender Speicheraktionen ungeändert. Durch zweifache Verwendung der Ausgangssignale des Registers vereinfacht sich die Steuerung des Speichers.
909825/0836
23.9.78. ' -ff PHN 8989
Es ist vorteilhaft, wenn der Speicher in der Ausführung als integrierte Schaltung ein Maskenregister für ein Maskenwort enthält, dessen Ausgänge an die erwähnten ersten Mittel angeschlossen sind, und dass der erwähnte erste Eingang, der erwähnte zweite Eingang, der erwähnte Ausgang und ein Eingang zum Zuführen eines an einer Wortstelle zu speichernden Datenworts zusammen über pro Bitposition gemeinsame Stifte mit einer Datenübertragungsleitung-BUS verbunden sind. Dadurch kann mit einer sehr geringen Anzahl von Anschlussstiften ausgekommen werden, wie weiter unten näher erläutert wird. Bei der Herstellung integrierter Schaltungen ist solches ein wesentlicher Vorteil. Es ist weiter klar ersichtlich, dass die Anzahl der Anschlusstifte auf bekannte Weise durch die Verwendung serieller Datenübertragung verringert werden kann. Diese Technik kann sowohl ohne als auch mit den früher erwähnten Massnahmen angewandt werden.
Es ist weiter vorteilhaft, wenn eine einzelne integrierte Schaltung zur Speicherung von ri Datenwörtern von m Bits zusammen mit einem zugeordneten Maskenwort entsprechender Länge vorgesehen ist und dass die erwähnte einzelne Schaltung neben m Verbindungen mit dem erwähnten BUS mit η je einem einzelnen Wort zugeordneten Verbindungen für ein Ubereinstimmungssignal pro Wort und weiterhin Speiseklemmen als externe Verbindungen weiterhin mit mindestens drei Anschlüssen zum Empfangen von Betriebsartwählsignalen zum Erregn eines Dekoders in der Schaltung sowie von einer Verbindung zum Empfangen eines Taktsignals versehen ist. Auf diese Weise . kann eine Vielzahl von Funktionen in der integrierten Schaltung erfüllt werden, während nur eine beschränkte Anzahl von Verbindungen (Stiften) nach aussen her erforderlich ist, wenn im Verhältnis zu der in der Schaltung gespeicherten Anzahl von η χ m Datenbits gesehen.
Es ist weiterhin vorteilhaft, wenn die erwähnten η Verbindungen zum Übertragen sowohl eines Ubereinstimmungs-
signals aus der erwähnten Schaltung als auch eines Hinweissignals (pointer) zur erwähnten Schaltung geeignet sind, und dass die erwähnten η Verbindungen ein Einwegelement mit einer Steuerklemme zum alternativen Bestimmen der
909825/0836
23.9.78. Jt PHN 8939
Λ0 28S3926
Durchlassrichtung darin enthalten und dass die Steuerklemmen der so vorhandenen η Einwegelemente miteinander verbunden sind, um zusammen eine einzige weitere auswendige Verbindung der erwähnten Schaltung zu bilden. Durch einen derartigen einfachen zusätzlichen Anschluss kann eine einzige Verbindung pro Wortstelle zweifach benutzt werden und besitzt die integrierte Schaltung viele Anwendungsmöglichkeiten bei einer beschränkten Anzahl externer Verbindungen.
Ausführungsbeispiele der Erfindung werden nachstehend an Hand der Zeichnung näher erläutert. Es zeigen:
Fig. 1 ein Prinzipschaltbild eines wortorganisierten, inhaltlich adressierbaren Speichers, Fig. 2 ein Schaltbild mit den erforderlichen Verbindungen, Fig. 3 den Aufbau einer Speicherwortstelle, Fig. h den elektronischen Aufbau einer Speicherzelle, Fig. 5 ein Steuerelement,
Fig. 6 eine Speicherorganisation.
Fig. 1 zeigt ein elementares Bild der Wirkung eines inhaltlich adressierbaren Speichers. In diesem Beispiel enthalten die eigentlichen Speicherwörter im Speicher 30 jeweils 16 Bits. Diese Wörter enthalten ein Schlüsselfeld 33, hier mit zehn Bits und ein Datenfeld 3^j hier mit sechs Bits. Zum Vergleich mit dem faktischen Inhalt der Speicherwörter wird ein Schlüsselwort 35 von zehn Bits zugeführt, dessen Position der des Schlüsselfelds entspricht. Schliesslich ist ein Maskenwort 31 von zehn Bits vorgesehen, dessen Position der des Schlüsselfelds entspricht. Die Bits des Maskenworts haben einen ersten Wert (in diesem Fall 1 für die Bits im Wortteil 32) oder einen zweiten Wert (hier θ). Nur die Bits des Schlüsselworts, deren Positionen den Maskenbits des ersten Worts entsprechen, werden für den eigentlichen Vergleich in Betracht gezogen. Ausser diesem aktuellen Schlüsselfeld werden in der Praxis Daten mit unbestimmtem Wert (don't care) zum Vergleich zugeführt. Wenn der Dateninhalt der vom Maskenwort 31 nicht maskierten Bits des Schlüsselworts 35 und der entsprechenden Bitpositionen eines gespeicherten Worts in dem inhaltlich adressierbaren Speicher übereinstimmen, wird für das
909825/0836
23.9.78. ff ' PHN 8989
■·
betreffende Wort ein Ubereinstimmungssignal erzeugt. Dieses Ubereinstimmungssignal wird einer nicht dargestellten Verarbeitungsanordnung zugeführt. Nach Bedarf kann diese über die Daten des Datenfelds des betreffenden Speicherworts verfügen.
Obiges ist nur ein Beispiel. Die Wortlänge kann verschieden sein. Der Dateninhalt des Maskenworts ist beliebig. Weiter braucht kein Unterschied zwischen dem Schlüsselfeld und dem Datenfeld vorhanden zu sein, so dass bei der Ubereinstimmung alle beim inhaltlichen Adressieren des Speichers maskierten Bits als Datenbits zur Verarbeitung verfügbar werden. Insbesondere in diesem Fall darf für alle maskierten Bitpositionen' ein unbestimmter Wert zum Vergleich angeboten werden. Dies kann mit einer Ausgangsstufe erfolgen, die sowohl eine logische "1", eine logische "O" als auch eine hohe Ausgangsimpedanz liefern kann (sogenannter "tri-state"-Puffer). Weiter kann eine Anordnung dazu vorgesehen sein, wenn für mehrere Wortsteilen eine Übereinstimmung entsteht und die zugeordneten Datenbits an anderer Stelle erforderlich
*" sind, eine Reihenfolge zwischen den dabei zu adressierenden Wortstellen zu bilden. Ein derartiger Reihenfolgebestimmer ist an sich aus einem Artikel von G.A. Anderson, "multiple match resoivers", I.E.E.E.Trans.Computers C-23, (7^12) 1317 bekannt. Wenn bei einer mehrfachen Übereinstimmung nur eine einzige Wortstelle adressiert werden muss, dient eine derartige Anordnung also als Prioritätsbestimmer. Wenn mehrere Wortstellen adressiert werden müssen, dient eine derartige -Anordnung als Reihenfolgegenerator..Für logische und elektronische Einzelheiten sei auf nachstehende Figuren hingewiesen.
Fig. 2 zeigt für eine Matrix 50 von k χ k Bits für die Verwendung in einem inhaltlich adressierbaren Speicher eine Anzahl erforderlicher Verbindungen. Je gestrichelt dargestellter Bitpositionsspalte gibt es jeweils einen Dateneingang (5I, 53, 55, 57). einen Maskenbiteingang (52, 5^, 5^, 58) und einen Datenausgang (67, 68, 69, 70). Je gestrichelt dargestellter Wortzeile gibt.es jeweils eine Sxgnalisierungsleitung (60, 62, 64, 66) und eine Wortauswahlleitung (59> 61, 63, 65) Die Signalisierungs-
909825/0935
24.9-78. Jg - PHN 8989
2853928
leitungen dienen jeweils dazu, ein Ubereinstimmungssignal pro Wortzeile abzuleiten. Die Auswahlleitungen dienen dazu, jeweils eine vorgegebene Wortzeile auszuwählen. Weiterhin gibt es eine Vierbit-Zweirxchtungsverbindung 73 mit der
S Aussenwelt. Das Element 71 ist ein Vierbit-Maskenregister, das eine Maskeninformation unter der Steuerung eines von aussen kommenden Ladesignals am Eingang j6 speichern kann. Das Element 72 ist eine Ein/Ausgangsstuf*e, die durch Signale auf den Leitungen *jK bzw. 75 gesteuert wird. Für "diese η χ η Organisation besitzt die eigentliche Speichermatrix 5n Anschlüsse (die für die Energieversorgung sind nicht angegeben). Ein inhaltlich adressierbarer Speicher nach dem zu beschreibenden Ausführungsbeispiel kann in den folgenden Betriebsarten beschrieben werden:
a) assoziatives Suchen und Lesen des Inhalts eines Worts, für das Übereinstimmung auftritt (r);
b) Lesen des nächsten Worts einer Wortfolge, für die Übereinstimmung auftritt (SR = sequential read);
c) Laden des Maskenworts in das Maskenregister(LM=load mask); d) Selektives Ungültigmachen des Inhalts einer oder mehrerer vorgegebener Wortstellen (CPM = clear part of memory);
e) Schreiben an einer leeren Wortstelle, die also keine gültigen Daten enthielt (WFP = write free position);
f) Das Schreiben von Daten in eine selektive Anzahl von
Bitpositionen eines Worts oder einer Anzahl von Wörtern zusammen,' wenn für dieses Wort oder dür diese Wörter Übereinstimmung auftritt (WP = write parallel). Diese sechs Betriebsarten können im Raum eines Dreibits-Operationskodes (opcode) definiert werden, wobei nötxgenfalls noch zwei freie Kodes in diesem Raum übrig bleiben.
Einer dieser zwei könnte als "Wiederherstellung des Zustands der Selektionsanzeigeinformation" definiert werden, die unter b) das nächste zu lesende Wort anzeigt, so dass beispielsweise eine vorgegebene Wortzahl einer Auswahl angewiesen wix'.d (CP = clear pointer).
Eine geringere Anzahl von Anschlüssen der integrierten Schaltung kann durch Zentralisierung der Steuerung und durch Kombination der Datenanschlüsse erreicht werden. Zunächst
909825/083B
23.9.78. -" Jf PHN 8989
enthält die Schaltung nach Fig. 2 dazu ein Vierbit-Maskenregister 71· Bei einer Folge inhaltlicher Adressierungen wird in vielen Fällen das Schlüsselwort geändert, jedoch das Maskenwort gleich bleiben. Die gespeicherte Information kann beispielsweise eine Kennung und eine Anzahl von Variablen pro Kennung enthalten (beispielsweise eine Artikelnummer und eine Bestandsgrösse). Dabei wird jeweils wieder nach einer Kennung gesucht, die häufig jeweils die gleichen Bitpositionen enthält, die beispielsweise das Feld mit der Artikelnummer enthalten, wenn für eine Anzahl von Gegenständen nacheinander der Bestandszustand aktualisiert wird. Weiter enthält die Schaltung nach Fig. 2 einen Datenmultiplexer 72. Dieser hat je Bitposition jeweils einen ersten Ausgang in der Verbindung mit einem entsprechenden Eingang des Maskenregisters 71 und einen zweiten Ausgang in der Verbindung mit einem entsprechenden Dateneingang der Matrix. Schliesslich besitzt der Multiplexer 72 je Bitposition einen Eingang in der Verbindung mit einem Datenausgang der Matrix und ist jede Bitposition noch mit einer Bitleitung der Zweirichfcungsdaten-BUS-Leitung 73 verbunden. Der Multiplexer hat drei Betriebsarten und erhält dazu ein Zweibitsteuersignal auf den Leitungen 7h und 75· Das Maskenregister 71 hat zwei Betriebsarten (Laden, Nicht Laden) und erhält dazu ein Einbitsignal auf der Leitung j6. Die detaillierte Steuerung wird weiter unten näher erläutert.
Fig. 3 zeigt den logischen Aufbau einer Wortstelle in einem inhaltlich adressierbaren Speicher sowie der für eine Wortstelle vorhandenen Steuerung. Dabei gibt die gestrichelte Linie 82 die weiter unten zu beschreibende Schnittstelle zwischen· modular anzuordnenden Speicherschaltungen und Steuerschaltungen an. Die Wortstelle enthält zunächst die eigentlichen Bitpositionen 36, die pro Bit eine näher zu beschreibende Schaltung enthalten, um selektiv pro Bit die Operationen Lesen, Schreiben und Vergleichen durchzuführen. Die Anzahl der Bitpositionen 36 ist kein Merkmal der Erfindung. Schematisch sind die Zufuhr 37 für Schlüssel/Maske und Daten und die Abnahme 38 für Daten angegeben. Beim inhaltlichen Adressieren erscheint bei der
80982 5/0836
23.9-78. ' VS- PHN 8989
Übereinstimmung ein Signal M1 an einem mit der Wortstelle ■ verbundenen Ausgang als eine logische "1". Weiter gibt es pro Wortstelle noch zwei zusätzliche Bitpositionen, die hier als Flipflops 39, 42 in der Steuerschaltung ausgeführt sind. Weiter ist ein der betreffenden Wortstelle zugeordneter Teil eines Reihenfolgebestimmers vorgesehen, wie weiter unten näher erläutert wird.
Im Flipflop 39 ist ein Gültigkeits- oder Füllbit gespeichert. Es hat den Wert 1, wenn an der zugeordneten Wortstelle gültige Daten gespeichert sind. Im entgegengesetzten Fall ist an dieser Wortstelle eine logische "O" gespeichert, die damit das UND-Gatter 45 sperrt, so dass das Ausgangssignal des Gatters logisch 0 bleibt, unabhängig vom Wert des über die Schnittstelle 82 übertragenen Signals M1. Der Flipflop 39 besitzt einen Setzeingang 41 und einen Rückstelleingang 4θ. Das Setzeingangssignal an 41 erscheint unter der Steuerung des Signals der bereits beschriebenen Betriebsart WFP (an freier Wortstelle schreiben), die für eine Anzahl von Wortpositionen gemeinsam sein kann, in Zusammenarbeit mit einem Anzeigesignal P auf der Leitung 83> das nur für höchstens eine Wortstelle den Wert 1 haben kann. Nur wenn WFP = P = 1, gibt das UND-Gatter 84 unter der Mitsteuerung eines Taktimpulses am Eingang ^ eine logische 1 ab und wird der Flipflop 39 in die 1-Stellung gesetzt. Der Ruhezustand des Flipflops 39 ist die "O"-Stellung, wobei die Wortstelle keine gültige Information enthält. Das Anzeigesignal P auf der Leitung 83 wird vom ODER-Gatter gebildet, das in diesem Fall ein Signal vom UND-Gatter 94 erhalten hat (das Signal WP ist niedrig, so dass das UND-Gatter 98 eine logische "0" abgibt). Das UND-Gatter 94 bildet einen Teil des Reihenfolgegenerators, wie weiter unten näher erläutert wird. Zusammen mit den erwähnten Operationen werden die auf der Leitung 37 erhaltenen Daten in der Wortstelle 36 gespeichert. Dazu erhält der Eingang ein niedriges Signal, wodurch mit Hilfe der Umkehrstufen und 93 Durchlasselemente 87 bzw. 88 durchlässig gesteuert werden. Ausserdem wird durch dieses niedrige Signal der Daten-Flipflop 141 in den haltenden Zustand gesteuert.
Θ0982Β/0836
23.9.79
In einer früheren Arbeitsphase wurde eine Suchaktion durchgeführt, bei der nur der invertierte ¥ert des Gültigkeit sbits dadurch in Betracht gezogen worden war, dass das erwähnte Signal WFP zusammen mit dem Signal des Nullausgangs des Flipflops 39 im UND-Gatter 95 kombiniert wird. Dabei wird das ganze Datenfeld maskiert, so dass keine der Wortstellen ein Signal M1 mit dem Wert "1" abgibt. In anderen Fällen kann auch der invertierte Wert des Signals WFP das UND-Gatter 45 sperren. Unter der Steuerung des Signals WFP erreicht das Ausgangssignal über das UND-Gatter 95 und das ODER-Gatter 86 als Signal M2 das ODER-Gatter 80 und die UND-Gatter 46, 49 und 96. Die UND-Gatter 49 und 96 sind dadurch gesperrt, dass die Signale SR bzw. CPM den Wert 0 aufweisen. Der Flipflop 42 ist dabei im "1" Zustand. Dabei gibt also auch das UND-Gatter 46 eine logische "1" ab. So erzeugen also alle Wortpositionen ohne gültige Daten das Signal M=1. Der Eingang 81 ist mit einem Ausgang des zuletzt angekommenen Worts verbunden. Der Ausgang 14θ des ODER-Gatters 48 bildet eben diesen Ausgang für das herangezogene Wort und ist also mit dem betreffenden "81"-Eingang des nächsten Worts verbunden. Die Reihenfolge der Wörter ist beispielsweise durch die Geometrie der Schaltung bestimmt. Das erste Wort der Reihenfolge erhält an seinem "81"-Eingang eine logische "0". Für eine Wortposition, für die der Eingang 81 eine logische "0" empfängt und ausserdem das Signal M=I ist, erzeugt das UND-Gatter 94 eine logische "1". Diese letzte "1" arbeitet als Anzeigesignal, das ausreichende Zeit gültig bleibt, nämlich solange erforderlich ist für den Übergang des Signals am Eingang 89 vom Wert "0" zum Wert "1". Der Ausgang des Gatters 94 bzw. des ODER-Gatters 99 kann einen nicht näher bezeichneten monostabilen Multivibrator mit einer astabilen Zeit beispielsweise von einer Taktimpulsperiode enthalten, wenn das Signal auf der Leitung 89 nach einer Taktimpulsperiode auf den anderen
Wert übergeht (oder etwas früher). Fig. 3A zeigt ein Zeitdiagramm dieser Vorgänge, bei dem die Signalarten den Signalarten entsprechen, die an den Ausgängen der Schaltelemente erscheinen. Die Pfeilspitze indiziert die folge-
909825/0838
24.9.1978 i£· PHJT 8989
richtigen Zusammenhänge.
Andererseits erscheint das Rückstellsignal auf der
Leitung kO des Flipflops 39 unter der Steuerung der bereits erwähnten Betriebsart CPM setzt bei Übereinstimmung mit
einer vorgegebenen nicht maskierten Schlüsselinformatxon
einen Teil des Speichers auf "frei", in Zusammenarbeit mit dem Ausgangssignal M2 des ODER-Gatters 86 und ein Taktimpuls am Eingang φ. Das Signal des Gatters 86 entstammt dem Gatter 45> weil die Signale YFP und CPM nicht zusammen den Wert "1" haben. Durch die Kombination der drei erwähnten
Signale erzeugt das UND-Gatter ^6 ein Rückstellsignal für
den Flipflop 39· Im Gegensatz zur bereits früher erwähnten Situation bei der Betriebsart ¥FP kann jetzt die Information für alle Yortstellen, für die Übereinstimmung besteht, zusammen ungültig gemacht werden. Dies erfolgt für alle Wortstellen, die beim Vergleich mit einem nicht maskierten
Schltisselfeld ein Signal M1=1 abgeben. Wenn das Signal auf der Leitung 89 einen hohen Wert hat, werden die Durchlasselemente 90 und 91 durchlässig und sind die Durchlassele-
mente 87 und 88 gesperrt. Der Datenflipflop 141 arbeitet
dabei auch als Durchlasselement. Die Elemente 91 und 141
können gegebenenfalls zu einem Datenflipflop kombiniert
werden. Durch bekannte Massnahmen, beispielsweise durch
geeignete Schwellenwerte der Steuereingänge der Durchlass— elemente, wird bewirkt, dass die von den Elementen 87 bzw. 91 durchzulassenden Signale ausschliessuch aus Elementen 88 bzw. 90 herrühren. Im übrigen bleibt der Zustand des
Flipflops 39 ungeändert. Obgleich solches in Fig. 3A nicht als solches angegeben ist, kann das Signal an dem Anschluss 89 dreiwertig sein (θ, 1, hochimpedant abgeschlossen), wobei im dritten Wert keines der Elemente 87, 88, 90, 91
durchlässig ist.
An der Bitstelle 42 kann ein Übereinstimmungs-Bit gespeichert werden. Es hat den Yert 1, wenn an der betreffenden Wortstelle ein Übereinstimmungssignal zulässig ist: nur in diesem Fall ist das UND-Gatter 46 für das vom Element 86
durchgelassene Ausgangssignal M2 durchlässig. So wird dabei das Signal M am Ausgang 47 gebildet, wodurch die bei
909825/0838
23.9.78. }# ■ PHN 8989
2853928
Übereinstimmung durchzuführenden Speicherfunktionen freigegeben werden. Der Flipflop 42 ist normalerweise im "1"-Zustand, was bedeutet, dass bei vorgefundener Übereinstimmung (Signal M2) der Inhalt der betreffenden Wortstelle verwendet werden darf. Wenn dieser Flipflop 42 im "O"-Zustand steht, bedeutet dies, dass die betreffende Wortstelle nicht benutzt werden darf, insbesondere nicht, weil beim Lesen einer Folge von Wörtern die betreffende Wortstelle bereits benutzt worden ist. Der Flipflop 42 hat einen Setzeingang 44 und einen Rückstelleingang 43. Das Rückstellsignal auf der Leitung 43 erscheint unter der Mitsteuerung eines synchronisierenden Taktsignals an dem Anschluss &, wenn die folgenden drei Bedingungen erfüllt sind:·
1) es liegt ein Signal vor, das das Lesen eines folgenden 15. "Werts einer Folge von Wörtern (mindestens einem) steuert, ' ■' für die Übereinstimmung auftritt (SR);
2) es gibt kein Ubereinstimmungssignal M eines Worts mit höherer Rangordnung, so dass der Eingang 81 eine logische "O" erhält;
3) das Signal M2 besitzt für das betreffende Wort den Wert "1".
Diese vier Signale werden vom UND-Gatter 49 kombiniert, das über einen invertierten Eingang von einem Signal des zuletzt angekommenen Worts am Eingang 81 gesperrt werden kann. Beim sequentiellen Lesen einer Anzahl von Wortstellen wird immer der Flipflop 42 eines folgenden übereinstimmenden Worts in den "O"-Zustand zurückgesetzt, so dass auch stets für ein weiteres Wort der übereinstimmenden Reihenfolge die . erwähnte Bedingung 2) erfüllt wird. Wenn (siehe oben) statt des Befehls SR jedoch der Befehl R gegeben wird, sind die erwähnten drei Bedingungen nicht erfüllt und bleibt der Zustand des Flipflops 42 ungeändert. Nach dieser Möglichkeit kann das gleiche Wort dabei eine beliebige Anzahl Male gelesen werden. Bei einem Befehl SR können eine Anzahl von Wortstellen zunächst ein Signal M=1 ergeben. Das Ausgangssignal des. Gatters 94 (vor dem erwähnten Zurückstellen des Flipflops 42) kann jetzt nach dem Durchlassen von den Elementen 88 und 87 unter der Mitsteuerung des niedrigen Werts des Signals an dem Anschluss 89 nach der Beschreibung
909825/0836
24.9-78 >* . PHN 8989
bei der Betriebsart WFP die Wortstelle 36 aktivieren, um - die Daten auf der Leitung 38 auszulesen. Der Verlauf der Hin- und Rückübertragung auf der Verbindungsleitung ist für die Betriebsart SR in Fig. 3B dargestellt. Die ausgezogenen Linien stellen das Lesen des ersten Worts einer Reihenfolge, die gestrichelten das Lesen des herangezogenen Worts dar, als wäre es nicht das erste einer Folge. Im Gegensatz zu obiger Beschreibung kann auch ein bekannter Reihenfolgebestimmter/Reihenfolgegenerator benutzt werden.
Das Setzsignal auf der Leitung kh erscheint in diesem Fall gegebenenfalls unter der Mitsteuerung von einem Taktsignal, wenn mindestens eine der folgenden Bedingungen erfüllt ist:
1) wenn der Ausgang des Gatters 86 kein übereinstimmungssignal führt: es gibt also entweder kein Ubereinstim-
mungssignal des Flipflops 141, wenn der Flipflop 39 im n 1"-Zustand steht, oder es liegt kein Befehl WFP νοϊ, wenn der Flipflop 39 in der Nullstellung steht. Diese Ruhestellung tritt also automatisch auf, wenn ein neues Schlüsselwort zugeführt wird, bei dem keine Übereinstimmung (MI) vorhanden ist, und auch, wenn die Information der betreffenden Wortstelle ungültig gemacht wird;
2) es wird ein zusätzliches Signal LM zugeführt, das das Laden eines Maskenworts in das Maskenregister steuert.
Wenn ein neues Maskenwort zugeführt wird, sind dabei alle Wortstellen wieder zum Abgeben ihrer Information verfügbar;
3) es wird ein externes Signal WP zugeführt, das das Parallelschreiben in eine oder mehrere Wortstellen steuert. Auch dabei müssen alle Wortstellen wieder zum Abgeben ihrer Information verfügbar sein. Diese Fälle werden durch das ODER-Gatter 80 mit einem einzigen invertierten Eingang durchgeführt. -
Die dargestellte Schaltung ist als Beispiel angegeben. Die Steuersignale WFP, CPM, WP, LM, SR können als Ausgangssignale aus einem nicht dargestellten Dekoder erhalten werden, der einen Dreibitkode erhält. Die Zeitdiagramme, die beim Durchführen der Befehle SR, R, WP. und LM durchlaufen
909825/0838
23.9.78. J^r* · PHN 8989
sind, sind nicht getrennt angegeben, weil sie dui-ch die weitgehende Übereinstimmung in dem Signalweg mit den Befehlen WFP und CPM auch geringe zeitsequentielle Unterschiede aufweisen.
S Fig. h zeigt ein Beispiel einer Speicherzelle, die in einem inhaltlich adressierbaren Speicher nach der Erfindung verwendbar ist. Die Speicherzelle enthält zehn Verbindungen 1 ... 10 nach aussen und zwölf n-MOS-Transistoren 11 ... 22. Dabei ist die Leitung 8 mit einer Speisespannung Vn^ von beispielsweise etwa 5 V und die Leitung 10 wie beschrieben mit Erdpotential verbunden. Im Gegensatz zu den " übrigen Transistoren sind die etwas anders dargestellten Transistoren -13 und 14 Verarmungs-Transistoren, die auch bei einem Spannungsunterschied 0 zwischen der Gate-Elektrode und der Source-Elektrode in leitendem Zustand sind. Die übrigen Transistoren sind als Anreicherungstransistoren auch etwas anders dargestellt. Bei einem Spannungsunterschied gleich Null zwischen der Gate-Elektrode und der Source-Elektrode sind diese Transistoren gesperrt. Die Leitungen WL und MA sind gemeinsam für die Bitzellen eines Worts, die vertikal dargestellte Linien verbinden, entsprechende Bitgellen mehrerer Wörter. Die Transistoren 11 bis 14 bilden durch ihre Rückkopplung eine Halteschaltung fifr 1 Bit. Die kreuzweise Verbindung zwischen den Transistoren 12 und führt dabei das Signal X, das den Zustand der Halteschaltung angibt. Die Kreuzverbindung zwischen den Transistoren 11 und 14 führt dabei den invertierten Wert X. Das Leitungspaar l/k führt die Signale A1 und A2. Im Ruhezustand sind diese zwei Signale beide logisch "0", wodurch die Transistoren
19 und 22 gesperrt sind. Dieser Zustand entspricht dabei dem Zustand, bei dem die betreffende Zelle für assoziatives Suchen maskiert ist. Im aktiven Zustand bekommt das Signal A1 für kurze Zeit den Wert A, das Signal A2 für kurze Zeit . den inversen Wert A, wie weiter unten näher erläutert wird. /—■—/Das Leitungspaar 2/5 führt die Signale B und B, die normalerweise zueinander entgegengesetzte Werte haben.Die Leitungen 3/6 führen beide das gleiche Signal S. Beim assoziativen Suchen wird von einer nicht dargestellten
909826/0838
24.9.1978 3^ZO PHN 3989
Signalquelle auf der Leitung 9 ein Signal WL mit TlrnirTreT·^^ zugeführt (das ist höchstens einige zehntel Volt), während die Signale B, B, S auf den Leitungen 2, 3, 5, 6 einen beliebigen Wert haben. Dabei entspricht ein logischer Wert "1" einem Spannungspegel, der höchstens einige zehntel Volt unter dem Wert 5 Volt liegt. Das Signal WL = 0 wird von einer als Taktgeber arbeitenden Schaltung erzeugt; diese braticht jedoch keine konstante Frequenz zu besitzen. Im obigen Fall werden also im allgemeinen alle Wortstellen angesteuert. Weiterhin wird beim assoziativen Suchen auf ' der Leitung 1 das Schlüsselbit A zugeführt und zusammen damit auf der Leitung 4 der entsprechende invertierte Wert A. Wenn A1 = 0 ist, bleibt der Transistor 19 gesperrt, wenn A2 = 0 ist, bleibt der Transistor 22 gesperrt. Wenn Al = 1 ist, kann der Transistor 19 leiten. Wenn dabei X=O ist, ist die Serienschaltung 19 aus den Transistoren 19 und 20 gesperrt. Im letzten Fall ist beim assoziativen Suchen A2 = 0 und X = 1, so dass auch die Serienschaltung aus den Transistoren 21 und 22 gesperrt bleibt.
Die Leitung MA wird von einem nicht dargestellten Transistor auf eine hohe Spannung aufgeladen, und dieser logische Zustand hält sich aufrecht unter der Bedingung, dass für die betreffende Bitzelle gilt: AI=A=X und A2=Ä=X. Wenn zum anderen beim assoziativen Suchen A1 φ. X und jetzt also auch A2 φ- X ist, so ist eine der beiden Serienschaltungen aus den Transistoren 19 und 20 bzw. 21 und 22 leitend, so dass die Leitung 7> die das Signal MA führt, entladen wird. Bei Übereinstimmung der zwei Informationen behält die Leitung MA also ihre hohe Spannung. Die Leitung MA ist jeweils gemeinsam für alle Bits eines Worts. Nur wenn für alle im Vergleich zu den entsprechenden Schlüsselbits in Betracht gezogenen Bits dieses Worts eine Übereinstimmung auftritt, führt die Leitung MA dieses Worts ein hohes Potential und hat das Signal M1 in Fig. 3 also den Wert 1.
Wenn mindestens ein verglichenes Bit nicht übereinstimmt, entlädt sich die Leitung 7, und das Signal M1 bekommt den logischen Wert 11O". In obiger Beschreibung werden die Transistoren 20 und 21 von den AusgangsSignalen der Halteschaltung gesteuert, so dass der Dateninhalt der Halteschaltung
909825/0836
23.9.78. Vf PHN 8989
ungeändert bleibt. Die Leitung 7 kann noch, einmal fur aas ganze Wort einen nicht dargestellten Signalverstärker enthalten, um die Reaktionsgeschwindigkeit zu vergrössern; derartige Verstärker sind an sich bekannt.
Bei einer Schreibaktion wird durch nicht dargestellte Signalquellen ein folgendes Muster erzeugt: Die Leitungen 1 und k führen nach wie vor ein niedriges Signal (A1=A2=0), so dass die Transistoren 19 und 22 ununterbrochen gesperrt sind. Die Leitungen 9 (Signal WL), 3 und 6 (beide Signal S) führen alle ein hohes Signal. Über die Leitungen 2 (Signal B) bzw. 5 (das entgegengesetzte Signal B) wird die gewünschte Information zugeführt. Die Serienschaltungen der Transistoren 19 und 20 bzw. 21 und 22 sind in diesem Falle also gesperrt, die der Transistoren 15 und 16 bzw. 17 und 18 also leitend. Die Informationen von X bzw. X entsprechen danach denen von B bzw. B. Die Schreibphase wird dadurch beendet, dass das Signal WL niedrig wird, wodurch die Eingänge der Halteschaltung von den Signalen B und B isoliert werden. Dieses Isolieren kann zum anderen auch dadurch erfolgen, dass das Signal S auf den Leitungen 3 und 6 niedrig wird. Auch können die Signale S und WL beide niedrig werden, wobei mögliche Zeitunterschiede in diesem Übergang zulässig sind.
Bei einer Leseaktion (R, SR) muss je Bitzelle der Inhalt nach aussen hin ausgegeben werden. Die Leitungen 1 (Signal A1) und k (Signal A2) führen dabei· ein niedriges Signal. Anschliessend werden die Leitungen 2 (Signal B) und 5 (Signal B) beide auf gleiche Weise wie bereits für die Leitung 9 (Signal WL) erwähnt, durch nicht dargestellte Transistoren auf eine hohe Spannung aufgeladen. Anschliessend werden die Leitungen 9 (Signal WL) und 3/6 (Signal S) durch eine hohe Spannung angesteuert. Danach werden die Serienschaltungen aus den Transistoren 15 und 16 bzw. 17 und 18 durchlässig. Abhängig vom Dateninhalt der Halteschaltung wird jetzt einer der zwei Transistoren 11 bzw. 12 leitend. Für diesen betreffenden Transistor ist also eine leitende Serienschaltung aus zwei Transistoren gebildet, so dass nur eine der zwei Leitungen 2 bzw. 5 entladen wird. In
989825/0836
23.9-78. *€ PHN 8989~
diesem Falle ist das Lesen niclitlösehend durch die symmetrische Steuerung. Ausserdem ist durch eine geeignete Bemessung der Ladetransistoren für die Leitungen 2 bzw. 5 nur eine beschränkte steuernde Ladung verfügbar, und gegen eine derartig geringe .Störung ist die Halteschaltung stabil.
Die Funktion der Leitungen 3/6 (Signal S) ist folgende:
a) es müssen Daten in eine einzige verfügbare Yortstelle geschrieben werden, wobei die volle Wortlänge durch vollständiges Ausserbetriebsetzen des Maskenworts benutzt wird. Für alle Bitpositionen des Worts bekommt das Signal S den Wert 1;
b) es müssen Daten in jeweils den gleichen Teil einer jeden einer Anzahl ( V,1) zusammen adressierter Wortstellen, insbesondere jeweils in ein Schlüsselfeld geschrieben werden. Nur für die Bitpositionen des erwähnten Teils bekommt das Signal S den Wert 1;
Beim Lesen aus einer einzigen Wortstelle oder aus einer Folge von Worts teilen hintereinander wird nur für die Bitpositionen ausserhalb des Schlüsselfeldes der Wert des
Signals S=1 gemacht. Die selektive Steuerung der Leitungen 3 und 6 mit dem Signal S wird an Hand der Fig. 5 näher erläutert.
Um die Operation "paralleles Schreiben" (WP) durchzuführen, werden in der integrierten Schaltung die logischen Werte von A und B einerseits aneinander angeglichen und zum anderen auch die von A und B. Die Implementierung wird bei Fig. 5 näher erläutert.
Fig. 5 zeigt eine Schaltung zum Erzeugen einer Anzahl
in obiger Beschreibung angegebener Steuersignale. Die
Schaltung eignet sich -zur Steuerung einer einzigen Bitposition je Speicherwort. Für eine Wortlänge von ri Bits an einer Speicherschaltung des betreffenden Speichers muss an dieser Speicherschaltung die Schaltung nach Fig. 5 auch η-mal vorhanden sein. Die Figur enthält eine Zwei-
rxchtungsdatenverbindung 101, sechs Steuerverbindungen LM, R, SR, CPM, WR, WFP, deren Bedeutungen bereits erläutert worden sind, und fünf Datenausgänge A1, A2, B, B, S, um Schaltungen wie die nach Fig. k zu steuern. Die Schaltung
9Ö9825/0838
23.9.78. - J^ PHN 8989
enthält weiter ein Maskenregister 103 für ein einziges Maskenbit, drei Leitungsansteuerungselemente 113» 114, 115» vier UND-Gatter 102, 104, 106, 111, vier ODER-Gatter 105, 107, 108, 116, eine Umkehrstufe 109 und ein EXKLUSIV-ODER-Gatter 110. Die Schaltung 100 ist ein Einbiteingangspufferspeicher, die Schaltung 112 ein Einbitausgangspufferspexcher. Letzterer erzeugt ein dreiwertiges Signal mit möglichen Werten "logisch niedrig", logisch hoch" und "mit einer hohen Impedanz abgeschlossen". So ist die Leitung 101 sowohl zum Zuführen als. auch zum Abführen von Daten verwendbar. Die Elemente und 112 enthalten nötigenfalls noch eine Anpassungsschaltung zum Anpassen der logischen Pegel auf der Leitung 101 (beispielsweise TTL-Pegel) an die der weiteren Teile der Schaltung (beispielsweise MOS-Pegel).
Beim Laden des Maskenregisters 103 ist das Signal LM=1, um das Gatter 102 durchlässig zu machen. Das Maskenbit wird an dem Anschluss 101 erhalten und über die Pufferspeicherstufe 100 und das Gatter 102 im Register 103 gespeichert (in diesem Fall für 1 Bit). Die Funktionen des Maskenregisters 103 sind folgende:
1)Zunächst definiert der Inhalt des Maskenfelds, also logisch "0" oder "1", die Grosse des Schlüsselfeldes. Wenn das Maskenregister eine "1" enthält, ist die betreffende Bitposition ein Teil des Schlüsselfeldes (die Gatter 10k und io6 sind durchlässig und das Gatter 111 ist über die Umkehrstufe 109 gesperrt). Wenn das Maskenregister eine "0" ci.en'thält, bildet die betreffende Bitposition keinen Teil des Schlüsselfeldes (Gatter 10k und 106 gesperrt und das Gatter 111 durchlässig). Wenn das Gatter 109 eine "1" erzeugt, wird die Information auf der Leitung 101 von der Stufe 113 auf der Leitung Al weitergeleitet und auf der Leitung A2 invertiert. Dazu enthält die Stufe 113 einen vom Ausgang des Gatters 104 steuerbaren Leitungsverstärker j dessen Ausgangssignale entgegengesetzte logisehe Werte besitzen. Der Kürze halber wird dieser Verstärker nicht mehr beschrieben. So wird also bestimmt, welche Bits des Schlüsselworts sich am Vergleich beteiligen. Die obigen Gatter werden über die ODER-Gatter 105 und 116
909825/0836
23.9-78. ae· phn 8989
von den Signalen CPM, SR, R, WP aktiviert, deren BediäTXt%ng bereits erläutert worden ist. Wenn andererseits das UND Gatter lOk eine logische "0" erzeugt, erschein an beiden Ausgängen A1 und A2 ein logisches "O"-Signal. 2) Die Daten des Maskenregisters definieren auch den Umfang der einzuschreibenden Daten bei einer Schreibaktion. Die dem Eingang 101 zugeführten Daten gelangen über die Pufferspeicherstufe 100 zum Element 114. Letzteres hat zum grössten Teil den gleichen Aufbau wie das Element 113· Wenn das ODER-Gatter 107 eine logische "1" erzeugt, gibt das Element 114 Signale mit entgegengesetzten Werten ab. Zum anderen, wenn das ODER-Gatter 107 eine logische "0" erzeugt, werden die Leitungen B und B von einer nicht dargestellten Transistorschaltung auf einen logisch hohen Wert aufgeladen. Diese Transistorschaltung kann einen Teil des Elements 114.bilden und erfüllt die Aufgabe, die bei Fig. h angegeben ist. Die logische "1" des Gatters 107 erscheint einerseits unter der Steuerung des Signals WFP, wobei nur eine Wortstelle, die ausschliesslich ungültige Daten enthält, angesprochen wird, wie bei Fig. 3 erwähnt wurde. Beim Befehl WP erfolgt das ausschliesslich für die Bitstellen, für die das Maskenregister IO3 eine logische "1" enthält, und weiter wieder unter der Steuerung eines Wortanzeigesignals, wie bei Fig. 3 erwähnt wurde.
3) Weiterhin aktivieren die Befehle SR und R über das ODER-Gatter 116 die Durchlässigkeit des UND-Gatters 111. Dieses Gatter gibt dabei unter der Steuerung der Bitstellen, für die Maskierung des Schlüsselfeldes auftritt, eine logische "1" ab. Denn für diese Bitstellen gibt das Maskenregister 103.eine logische Null ab, die vom Element 109 invertiert wird. Die Pufferspeicherstufe 112 erhält in diesem Fall die Signale B und B und erzeugt ein einziges Signal am Ausgang 101 unter der Aktivierung vom "1"-Ausgangssignal des Gatters 111. An sich sind der-
artige Elemente bekannt. In den Fällen, wobei LM (Maske laden) oder WP (paralleles Schreiben) durchgeführt wird, sind die Signale R und SR stets gleich 0, so dass der Ausgangspufferspeicher 112 nicht aktiviert ist.
9Θ9825/0836
24.9-1978 2T PHN 8989
Das Signal LM steuert das Laden der Maske über die volle Wortbreite:, für alle Bitstellungen wird dabei ein Datensignal auf der Leitung 101 zugeführt. Das Signal WFP steuert das Schreiben über die volle ¥ortbreite: für alle Bitpositionen werden Elemente 114 und 115 angesteuert.
Letzteres Element gibt dabei ein hohes Signal S. Das Signal ¥P steuert das Schreiben über einen Teil der Wortbreite mit Hilfe des Inhalts der Bitposition 103· Wenn die Bitposition 103 eine logische "1" enthält, erzeugt die Umkehrstufe 109 eine "0" und erhält das EXKLUSIV-ODER-Gatter 110 zwei ungleiche Signale, so dass das Ausgangssignal dieses Gatters als logische "1" das Element 115 (über ODER-Gatter 108) ansteuert. So wird also in die unmaskierten Teile der Wortstellen geschrieben (also im Schlüsselfeld). Zum anderen wird, wenn kein Schreibbefehl vorliegt (WP=WFP=0), das Element 115 über die Umkehrstufe 119 nur für diejenigen Positionen gesteuert, die tatsächlich maskiert sind, also ausserhalb des betreffenden Schlüsselfelds liegen. Für diese ist daher das Gatter 111 durchlässig um unter der Steuerung des Signals SR oder R den Ausgangspufferspeicher 112 zu aktivieren.
Der Aufbau eines grösseren inhaltlich adressierbaren Speichers wird an Hand der Fig. 6 veranschaulicht. Ein kleiner Speicher in der Ausführung als integrierte Schaltung enthält in der gleichen Unterschicht (Substrat) alle Bitzellen, das Maskenregister und die Steuerungen nach Fig. 3 und 5· Die Schaltung enthält also einen Takteingang,drei Eingänge für einen Dreibit-Operationskode, der· auf dem Chip auskodiert wird, den Sequenzeingang 89(gegebenenfalls kann er auf dem Chip vom Taktimpuls hergeleitet werden), Speiseanschlüsse und weiterhin eine einzige Verbindung(101)für jede Bitposition. Die Verbxndungsschaltung mit den Elementen 87f88,90 und 91 kann gegebenenfalls stark vereinfacht werden oder sogar entfallen, weil alle Teile auf einem Chip vorhanden sinde Ein Gehäuse mit k0 Anschlüssen kann bei beispielsweise 32 Bit-Wörtern Platz bieten. Die Anzahl dieser Wörter ist an sich beliebig wählbar. Aus Gründen modularer Erweiterbarkeit werden jedoch Einheiten gewünscht, die sowohl in der Wortlänge als auch in der Wortanzahl aneinander gereiht werden können. Die
909825/0836
23.9-78. 3*1 PHN &989
Anordnung nach Fig. 6 enthält zwei Arten integrierter Schaltungen. Zunächst zeigt die Figur die Speicherchips, die 16 Wortstellen mit je 16 Bits enthalten können. Der ganze Speicher enthält 64 ¥örter mit 64 Bits, so dass jede Wortstelle auf 4 gesonderte integrierte Schaltungen verteilt ist, beispielsweise auf die Schaltungen 120, 121, 122, 123. Eine jede dieser Schaltungen enthält 256 inhaltlich adressierbare Bitpositionen, sechzehnmal eine Schaltung nach Fig. 5 einschliesslich jeweils ein Bit des Maskenregisters und weiterhin für jede Wortstelle die Elemente 90 und 87 an der Seite der Steuerschaltungen I36 und 137 und Elemente 91 und 88 an der diesen Steuerschaltungen abgewandten Seite. Die Schaltung 122 ist dabei mit der sekundären Seite der Schaltung auf gleiche Weise wie die Primärseite der Schaltung 123 mit der Ausgangsseite der Schaltung 136 verbunden. Im Prinzip ist die Wortlänge jetzt unbegrenzt, insofern eine ausreichende Diskriminierung zwischen den verschiedenen Zuständen besteht: "alle Bits stimmen beim Vergleich inhaltlich überein" und "es unterscheidet sich eine einzige Bitposition von den zwei verglichenen Wörtern". Dies wird durch das jeweilige Aufnehmen von Regenerationsverstärkern in die Leitungen MA (Fig. 4) ermöglicht. Entsprechende Bitpositionen der Wortstellen der Schaltungen 120, 124, 128, 132 sind jeweils miteinander über die bitweisen Leitungen 101 nach Fig. 5 verbunden. Jede Schaltung von 16 χ 16 Bits enthält dabei sechzehn Datenleitungen (101), sechzehn Leitungen, die die Schnittstelle 82 in Fig. 3 durchlaufen (WL/MA in Fig. 4), drei Leitungen für den Operationskode, zwei Speiseleitungen, eine Taktleitung, die Leitung 89, und für ein 40-Stift-Gehäuse ist dabei noch ein Stift übrig, der für einen näher zu spezifierenden Zweck benutzt werden kann.
Die Steuerung ist in diesem Fall in zwei gesonderten integrierten Schaltungen I36 und 137 zentralisiert, die je mit 32 Wörtern von 64 Bits arbeiten. Sie enthalten also jeweils 32. mal die Schaltung aus der rechten Hälfte der Fig. 3. Ausser den 32 Wortleitungen enthalten diese Schaltungen drei Anschlüsse zum Empfangen eines Operationskodes, einen Takteingang, zwei Speisee'ingänge und den Ubertragungs-
909825/0836
23.9.78 SPf PHN 3989
eingang .81 sowie den Ubertragungsausgang 14O. AuclCwLäbii} i, D reicht ein 4o-Stift-Gehäuse aus. Das Signal an dem Anschluss 89 wird dabei vom Taktimpuls abgeleitet (beispielsweise dadurch, dass ein ankommender Taktimpuls jeweils einen Zyklus eines auf dem Chip vorhandenen Hilfstaktgebers startet, der einen mehrfachen Taktimpuls erzeugt). An sich sind derartige Taktgeber bekannt.
Der Einfachheit halber sind in Fig. 6 der Speicher-Chips nur die Wort- und Bitleitungen dargestellt. Weiterhin sind von den Chips I36 und 137 nur die Wortleitungen (schematisch), die Operationskodeleitungen (OPC), die Taktleitung (CL) und die Ubertragungsverbindungan angegeben (81, I4o).
9Θ9825/0836 ORIGINAL "INSPECTED
IS
Leerseite

Claims (1)

  1. 23.9.1978 r PHN 8989
    PATENTANSPRÜCHE
    1 .J Wortorganisierter, inhaltlich, adressierbarer Speicher mit einem ersten Eingang zum Zuführen eines Schlüsselworts, einem zweiten Eingang zum Zuführen eines Maskenworts zum selektiven Unwirksainmachen eines Teils des zugeführten Schlüsselworts durch Maskierung, einem Ausgang zum Abnehmen eines an einer Wortstelle gespeicherten Datenworts, ersten Mitteln zum Vergleichen eines nichtmaskierten Teils eines Schlüsselworts und eines entsprechenden Teils eines an einer Wortstelle gespeicherten Datenworts, und zweiten Mitteln zum Angeben einer von den erwähnten ersten Mitteln detektierten Übereinstimmung je Wortstelle und zum Aktivieren des erwähnten Ausgangs zum-Abnehmen von Daten aus einer Wortstelle, für die eine Übereinstimmung auftritt, dadurch gekennzeichnet, dass die erwähnten zweiten Mittel einen Gültigkeitsindikator je Wortstelle mit einem Zustand "gültig" und einem Zustand "ungültig", um selektiv die Gültigkeit des dort gespeicherten Worts anzugeben, und einen Ubereinstimmungsindikator pi-o Bit mit einem Zustand "übereinstimmend" und einem Zustand "nicht übereinstimmend" enthalten, dass der erwähnte Gültigkeitsindikator als eine Bitposition der zugeordneten Wortstelle arbeitet, so dass beim Adressieren des Speichers nach gültigem Wortstelleninhalt durch den erwähnten Zustand "ungültig" der zugeordnete Ubereinstimmungsindikator zum wirksamen Abgeben eines Signals "übereinstimmend" gesperrt ist, und dass jeder Gültigkeits-
    9 0 9825/0838
    23.9-78. ' 2 PHN 3989-
    indikator über einen Umschalteingang durch ein extern zugeführtes Umschaltsignal selektiv in den einen oder in den anderen Zustand umschaltbar ist.
    2. Wortorganisierter Speicher nach Anspruch 1, dadurch
    gekennzeichnet, dass zum Löschen eines Teils des Speichers dritte Mittel zum Umschalten des Gültigkeitsindikators einer oder mehrerer Wortstellen in den Zustand "ungültig" unter der Steuerung eines Ubereinstimmungssignals des Ubereinstimmungsindikator s dieser einen oder mehreren Wortstellen vorgesehen sind.
    3. Wortorganisierter Speicher nach Anspruch 1 oder 2,
    bei dem ein Reihenfolgebestimmer bei gleichzeitigem Erscheinen mindestens zweier wirksamer "übereinstimmender"Signale eine Reihenfolge zur Behandlung der zugeordneten Wortstellen bildet,
    IS dadurch gekennzeichnet, dass zum Einschreiben eines Datenworts in eine Wortstelle ausschliesslich die den Daten des Gültigkeitsindikators entsprechende Bitstelle durch das Maskenwort unmaskiert bleibt, um darauf im Zustand "ungültig" den zugeordneten Ubereinstimmungsindikator zur Bildung eines Zustande "übereinstimmend" zu steuern, an dem der Reihenfolgebestimmer für eine einzige, mit einem Übereinstimmungssignal versehene Wortstelle ein Schreibfreigabesignal erzeugt.
    4. Wortorganisierter Speicher nach Anspruch 3> dadurch gekennzeichnet, dass vierte Mittel unter der Steuerung eines Reihenfolgesignals des erwähnten Reihenfolgenbestimmers den Ubereinstimmungsindikator in den Zustand "nicht übereinstimmend" bringen und so bei einem empfangenen Lesebefehlssignal die Daten einer Wortstelle dem erwähnten Ausgang nur einmal zuführen.
    5. Wortorganisierter Speicher nach einem der Ansprüche 1 bis h, dadurch gekennzeichnet, dass fünfte Mittel vorgesehen sind, um unter der Steuerung eines wirksamen Ubereinstimmungsindikätors für die vom dabei auftretenden Maskenwort nicht maskierten Bijtpositionen der betreffenden Wortstelle eine vorgegebene Information einzuschreiben.
    6. Wortorganisierter Speicher nach Anspruch 5, dadurch gekennzeichnet, dass die fünften Mittel weiterhin unter der Steuerung gemeinsam wirksam erscheinender Ubereinstimmungs-
    909825/0836
    23.9.78. 3 PHN 8989-
    signale der Ubereinstimmungsindikatoren mindestens zweier Wortstellen für die vom dabei auftretenden Maskenwort nicht maskierten Bitpositionen der betreffenden Wortstellen gemeinsam eine vorgegebene Information einschreiben.
    7. Wortorganisierter Speicher nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass ein Maskenregister für ein Maskenwort vorgesehen ist, dessen nicht maskierende Datenstelle(n) die erwähnten ersten Mittel bitweise aktivieren und dessen maskierende Datenstellen den erwähnten Ausgang bitweise aktivieren.
    8. Wortorganisierter Speicher nach einem der Ansprüche
    1 bis 6, dadurch gekennzeichnet, dass er ein als integrierte Schaltung ausgeführtes Maskenregister für ein Maskenwort enthält, dessen Ausgänge an die erwähnten ersten Mittel angeschlossen sind, und dass der erwähnte erste Eingang, der erwähnte zweite Eingang, der erwähnte Ausgang und ein Eingang zum Zuführen eines an einer Wortstelle zu speichernden Datenworts zusammen über pro Bitposition gemeinsame Anschlüsse mit einer Datenübertragungsleitung-BUS verbunden sind.
    9. Wortorganisierter Speicher nach Anspruch 8, dadurch gekennzeichnet, dass eine gesonderte integrierte Schaltung zur Speicherung von η Datenwörtern von m Bits einschliesslich eines zugeordneten Maskenworts entsprechender Länge vorgesehen ist und dass die erwähnte gesonderte Schaltung neben m Verbindungen mit dem erwähnten BUS mit η jeweils einem gesonderten Wort zugeordneten Verbindungen für ein Ubereinstimmungssignal pro Wort und weiter mit Speiseanschlüssen als externe Verbindungen weiterhin m±-p mindestens drei Anschlüssen zum Empfangen von Betriebsartauswahlsignalen, die an der Schaltung einen Dekoder erregen, sowie mit einer Verbindung zum Empfangen eines Taktsignals versehen ist..
    10. Wortorganisierter Speicher nach Anspruch 9, dadurch gekennzeichnet, dass die erwähnten ii Verbindungen sowohl ein Ubereinstimmungssignal aus der erwähnten Schaltung als auch ein Anzeigesignal zur erwähnten Schaltung übertragen und dass die erwähnten η Verbindungen ein Einwegelement mit einem Steueranschluss zum alternativen Bestimmen der
    909825/083S
    23.9.78. 4 PHN 8989
    Durchlassrichtung darin enthalten und dass die Steueranschlüsse der auf diese Weise vorhandenen n_ Einwegelemente alle miteinander verbunden sind und zusammen eine einzige weitere externe Verbindung der erwähnten Schaltung bilden. 5
    909825/0836
DE19782853926 1977-12-16 1978-12-14 Wortorganisierter, inhaltlich adressierbarer speicher Withdrawn DE2853926A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
NL7713949A NL7713949A (nl) 1977-12-16 1977-12-16 Woord georganiseerd naar inhoud adresseerbaar geheugen.

Publications (1)

Publication Number Publication Date
DE2853926A1 true DE2853926A1 (de) 1979-06-21

Family

ID=19829773

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19782853926 Withdrawn DE2853926A1 (de) 1977-12-16 1978-12-14 Wortorganisierter, inhaltlich adressierbarer speicher

Country Status (7)

Country Link
JP (1) JPS5851357B2 (de)
CA (1) CA1118906A (de)
DE (1) DE2853926A1 (de)
FR (1) FR2412140A1 (de)
GB (1) GB2010546B (de)
IT (1) IT1101571B (de)
NL (1) NL7713949A (de)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0083230A1 (de) * 1981-12-29 1983-07-06 Fujitsu Limited Verfahren zum Steuern des Auslesens und Einschreibens von Halbleiter-Speichern und Vorrichtung dafür
DE3334579A1 (de) 1982-09-27 1984-05-24 Data General Corp., 01581 Westboro, Mass. Vorrichtung zum speichern in einem cache
DE3902425A1 (de) * 1988-03-01 1989-09-07 Mitsubishi Electric Corp Inhaltsgesteuerte speichervorrichtung (cam) und betriebsverfahren

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5774889A (en) * 1980-10-28 1982-05-11 Nippon Telegr & Teleph Corp <Ntt> Associative memory device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3609702A (en) * 1967-10-05 1971-09-28 Ibm Associative memory
US3611315A (en) * 1968-10-09 1971-10-05 Hitachi Ltd Memory control system for controlling a buffer memory
US3806889A (en) * 1972-12-19 1974-04-23 Bell Telephone Labor Inc Associative memory including a resolver

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL250650A (de) * 1959-04-30

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3609702A (en) * 1967-10-05 1971-09-28 Ibm Associative memory
US3611315A (en) * 1968-10-09 1971-10-05 Hitachi Ltd Memory control system for controlling a buffer memory
US3806889A (en) * 1972-12-19 1974-04-23 Bell Telephone Labor Inc Associative memory including a resolver

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Manuskript " Assoziative Speicher", Vortrag an der ETH Zürich, 1972, eingeg. 5.3.1976 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0083230A1 (de) * 1981-12-29 1983-07-06 Fujitsu Limited Verfahren zum Steuern des Auslesens und Einschreibens von Halbleiter-Speichern und Vorrichtung dafür
US4575824A (en) * 1981-12-29 1986-03-11 Fujitsu Limited Method for controlling read-out or write in of semiconductor memory device and apparatus for the same
DE3334579A1 (de) 1982-09-27 1984-05-24 Data General Corp., 01581 Westboro, Mass. Vorrichtung zum speichern in einem cache
DE3902425A1 (de) * 1988-03-01 1989-09-07 Mitsubishi Electric Corp Inhaltsgesteuerte speichervorrichtung (cam) und betriebsverfahren
US4975873A (en) * 1988-03-01 1990-12-04 Mitsubishi Denki Kabushiki Kaisha Content addressable memory with flag storage to indicate memory state

Also Published As

Publication number Publication date
FR2412140B1 (de) 1984-12-28
CA1118906A (en) 1982-02-23
IT1101571B (it) 1985-10-07
GB2010546B (en) 1982-04-07
NL7713949A (nl) 1979-06-19
FR2412140A1 (fr) 1979-07-13
JPS5489535A (en) 1979-07-16
GB2010546A (en) 1979-06-27
IT7830801A0 (it) 1978-12-13
JPS5851357B2 (ja) 1983-11-16

Similar Documents

Publication Publication Date Title
DE4110173C2 (de) Adressenansteuereinrichtung für einen SRAM und Verfahren zum Betreiben derselben
DE69101640T2 (de) Binäre speicherzelle.
DE3645221C2 (de)
DE3485905T2 (de) Adressenuebersetzungsspeicher.
DE68928213T2 (de) Inhaltadressierte Speicherzellenanordnung
DE68924637T2 (de) Speicheranordnung für Mehrprozessorsysteme.
DE3650156T2 (de) Auf regeln basiertes datenwiederauffindverfahren und anordnung.
DE2154106A1 (de) Arbeitsspeicherwerk
DE1499203B1 (de) Schaltungsanordnung zum Speicherschutz bei Datenverarbeitungsanlagen mit Simultanbetrieb
DE2621882A1 (de) Dynamischer digitalspeicher mit ununterbrochen umlaufendem datenfluss
DE69516761T2 (de) Programmierbare hoch-geschwindigkeits schaltungsarchitektur mit geringem leistungs verbrauch
DE2059917A1 (de) Datenspeicher
DE1120779B (de) Eingabe-Ausgabe-Steuervorrichtung fuer einen elektrischen Hauptspeicher
DE3886938T2 (de) Reprogrammierbare logische Sicherung für logische Anordnungen, basierend auf einer 6-Elementen-SRAM-Zelle.
DE1499202A1 (de) Einrichtung zum Adressieren von Speicherbereichen
DE1250875B (de) Kennwortadressierter Speicher
EP0282976A1 (de) Verfahren und Schaltungsanordnung zum parallelen Einschreiben von Daten in einen Halbleiterspeicher
DE3784950T2 (de) Inhaltsadressierbare speicheranordnung.
DE60217526T2 (de) Tertiäre cam-zelle
DE2853926A1 (de) Wortorganisierter, inhaltlich adressierbarer speicher
DE1295656B (de) Assoziativer Speicher
DE1774606B1 (de) Speicheranordnung zur durchfuehrung logischer und arithmetischer grundoperationen
DE2729361A1 (de) Speicherschaltung
DE4317993A1 (de) Programmierbares mehrschichtiges neuronales Netzwerk
DE2618760C3 (de) Halbleiter-Speichervorrichtung

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8125 Change of the main classification

Ipc: G11C 15/00

8130 Withdrawal