DE1934860A1 - Wortorganisierter Assoziativspeicher - Google Patents
Wortorganisierter AssoziativspeicherInfo
- Publication number
- DE1934860A1 DE1934860A1 DE19691934860 DE1934860A DE1934860A1 DE 1934860 A1 DE1934860 A1 DE 1934860A1 DE 19691934860 DE19691934860 DE 19691934860 DE 1934860 A DE1934860 A DE 1934860A DE 1934860 A1 DE1934860 A1 DE 1934860A1
- Authority
- DE
- Germany
- Prior art keywords
- word
- bit
- search
- original
- memory
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C15/00—Digital 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/04—Digital 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
- Machine Translation (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Logic Circuits (AREA)
Description
■■■■'· 1834880
UM Deutschland internutionalt Büra*M(udiinen Gmllsdieft mbH _ .,
löbWngen, 30, Juni 1969
Business
iön, Armpnk, rN, ¥·. IQ
Amtliches Al|tenz§ighenj Neuanmeliung
Aktenzeiclien der Anme.lderin:: Bocket PP 968 006
]Die !Erfindung bezieht ßig& mit einen w©rtorganisiei»1-en As.spzi^tiv-§peipfeLer
mit in Eeilen und nsgpalten angeordneten gpeieherzgllen, 4ie spaltenweise
mit Bits und AfefüMleitungen und zeilenweise mit 'VVprtadressier-; und Ab^
füMleitungeii für FiJ-IJe vpn NiphtÜbereins.t|mmung zwischen Ursprungs*
Und §uehw.Q?t verbunden
Asspziatiyspeigiier sind· gekannt (gteinbuch, Taschenbuch der ^achriehtenrverarbeitung,
SpringersVerlag, zweite überarbeitete Auflage 1967, !Seite
564), Bei ginern typischen Asspziatiyspeicher wercLen in einer Suchpperatipn
ein pder mehrere §peieherwörter, die mit einem Suchwort übereip·*
stimmeii, identifiziert, JDiese bekannten Asspziativspeicher haben jedopli
den l^aehteil, daß ihre Anwendungsmöglichkeiten beschränkt sind, da mit
ihnen die in manchen Anwendungsfällen vorteilhaften Such-OPe:ra-tionen riach
gespeicherten Worten, die höher- pder niedrigerwertig als das Suchwort
sind, nipht möglich sind.
IQIIg.3/1118
Qer !Erfindung liegt nun die Aufgabe zugrunde, einen wortorganisierten
A§SQziatiyspeieher der eingangs genannten Art für einen wesentlich weiteren
Anwendung.sbj?reii?h zu schaffen, indem mit ihm Suehoperationen niaeh ge»
speicherten Worten durchgeführt wer4en gönnen, die höher- oder niedriger^
wertig als das Suchwprt sin4.
Diese Aufgabe wird 4a4urch gplpst, daß jedes aus η Bits bestehende
sprungswort als Wortgruppe aus η + 1 Wörtern gleicher Länge gespeichert
wir4, daß ein erster und ein dazu paralleler, um eine Zeile versetzter
zweiter I3iagonal4raht die n Speicherzellen jeder Diagonale zur Steuerung
4er Lege- un4 Sehreib-operation verbindet, daß zwischen Ursprungswort
und Suchwörtern auf Niedrig, Hpch und Crleieh verglichen wird und d^ß in
yprgegebenen Bitppsitionen der permanente "gleich"-Zustand "X" gespei»
chert wir4. '
wir4 der Vorteil wesentlich erweiterter Anwendungsmöglichlseiten
mit gegenüber einem konventionellen Assoziativspeicher nur sehr geringfügigen
Mehraufwand an Schaltmitteln, erreicht.
Gemäß einer Weit erb il4ung 4er Erfin4ung wird iiber den ersten Diagonal^·
4raht eine lcorriplementäre und über den zweiten Diagonaldraht eine echte
ψ Speicheroperation in 4en η Speicherzellen je4er Diagonale gesteuert.
Dann wir4 gemäß 4er Erfin4ung 4er Vergleich zivischen Ursprungs^ un4
Suchwort in 4er wertniedrigen Bitposition "1" o4er "0" des SuchwQrtes
durchgeführt,
Weiterhin bestehen gemäß einer Weiterbildung 4er Erfindung die Speicherelemente
aus bistabilen Transistor^Stromkreisen mit zwei Bit-^ Leseleitung eil
für 4ie getrennte Übertragung 4er Signale "0" und "1", und in 4em permas
nenten "gleich"-Zustand "X" ist auf bei4en Drähtsgifeein Signal vorhanden.
PD 968 ppi»
OBtGlNAL
Schließlich verbindet gemäß einer Weiterbildung der Erfindung ein dritter
Diagonaldraht die Positionen des permanenten "gleich"-Zustandes "X" und
sperrt in einer Leseoperation die Bitpositionen des permanenten "gleich"-Zustandes
"X" für die Signale "0" und"!" zur Vermeidung einer Nichtübereinstimmung
durch Inhibieren.
Mit den vorerwähnten Weiterbildungen der Erfindung wird erreicht, daß
der Speicher als Indikator für die assoziative Adressierung eines längeren
Speicherwortes benutzt werden kann, welches in einem zusätzlichen Speicher
abgespeichert und durch die Wortgruppe identifiziert ist. Die Möglichkeit
des Hoch-Niedrig-Gleich-Vergleiches kann in anderen logischen Funktionen
vorteilhaft verwendet werden.
Die Erfindung wird anhand der Zeichnungen im einzelnen erläutert. Es
zeigen:
Fig. 1 ein vorteilhaftes Ausführungsbeispiel eines erfindungsgemäßen
Assoziativ Speichers,
Fig. 2 schematisch eine Assoziativspeicherzelle, wie sie im Ausfüh-
ru:: - _K.-»iepiei verwendet wird und ~ ,
Fig. 3 ein Ausführungsbeispiel des erfindungsgemäßen Speichers,
welches auch Addition und Subtraktion ausführen kann.
Der Speicher umfaßt eine Ebene 12 mit Speicherzellen 13, die in Zeilen
zur Definition eines Wortes und Spalten zur Definition von Bitpositionen angeordnet sind. Die Speicherzellen desselben Wortes sind mit einer gemeinsamen Leitung 14 verbunden, die als Wortabfrageleitung dietit und
während einer Suchoperation in^ Fällen von Nichtübereinstimmung Signale
der Zellen führt. Die Zellen desselben Wortes siiid außerdem mit einer
po 968 006 9 0 9 8 8 3 / 1 5 & 8
gemeinsamen Leitung 15 verbunden, die als Worttreiberleitung dient und
Signale zur Auswahl eines Wortes des Speichers für eine Speicher- oder
eine Leseoperation führt. Die in Spaltenrichtung verlaufenden Bitleitungen werden durch zwei Leitungen 20 und 21 für jede Bitposition gebildet. Die
Bitleitungen 20 sind in der Zeichnung mit 0 bfeeichnet und führen während
einer Leseoperation ein Signal, welches anzeigt, daß die zugehörige Bitposition des adressierten Wortes eine 0 gespeichert hat. Die Bitleitungen
20 werden entweder zum Speichern einer 1 in der entsprechenden Bitposition
oder zum Suchen von Einsen in dieser Bitposition erregt. Diei Bitleitungen
21 haben beim Speichern, beim Suchen von Nullen und beim Lesen einer 1
ψ- ähnliche Funktionen. . τ · ·· ,
Für jede Wortabfrageleitung 14 ist ein Ubereinstimmungsregister 22 vorhanden,
dessen Eingang zum Setzen des Registers ein Signal bei Nichtübereinstimmung empfängt. Die Ubereinstimmungsregister sind außerdem mit
Eingängen zum Rückstellen ausgestattet, die über nicht dargestellte Leitungen mit herkömmiichen Schaltungen zum Rückstellen der Uberei nstimmungsregister
am Anfang einer Suchoperation verbunden sind. Jedes Übereinstimmungsregister hat zwei Ausgangsklemmen, an welchen Signale liegen,
die. eine im Register gespeicherte 1 oder 0 darstellen, sowie das übereinstimmende
oder nichtübereinstirnmende Ergebnis einer Suchoperation.
Für jedes Wort ist ein Treiber 23 vorhanden, der Spannungen auf der
Treiberleitung 15 eines adressierten Wortes für Lese- und Speicheroperationen erzeugt. Jeder Treiber 23 hat einen Eingang 24, der ein Signal vom
zugehörigen Ubereinstimmungsregister und einen Eingang 25, der Adress-
und Zeitsignale empfängt. Diese Eingänge haben eine logische UND-Funktion-.:
und steuern den Treiber so, daß er Wörter lesen kann, die bei einer vorhergehenden
Suchoperation übereingestimmt haben und Daten in Wörtern an
Stellen sp.eiche-mkann,' die durch herkömmliche nicht dargestellte Schaltungen ausgewählt wurden, welche mit den Eingangsklemmen 25 verbunden
sind. Zum Lesen mehrerer Übereinstimmungen in einer vorgegebenen Folge
909883/1558
PO 968 006
PO 968 006
Sind außerdem herkömmliche flieht dargestellte Einrichtungen mit defl
Eingang sklemmeh 25 verbunden*
Entsprechend einem Grundgedanken der Erfindung ist der Speicher in
Gruppen zu füüi Wörtern für je vier Üräpfttiigsbits öigänisiefti die im
Speieher gespeichert- si-fid.-. Die Zeichnung zeigt die mit 1, O und X bezeichneten
Zellen füf eine Gruppe aus fünf Wörtern zur Darstellung des Speicherihhälts
für das Örigihälwöft IQlO4 Die Erfindung sieht drei Gruppen von
diagonal verlaufenden Worttreibef leitungen 27, 28, 29 für jede Wörtgruppe
vofi Jede diagonal verlaufende Leitung ist mit einem Treiber 3o, 31, 32
verbunden. Die Leitungen 33 verbinden die diagonale Leitung 27 mit anderen
Zellen, die ein Dreieck bilden. Die Leitung 34 verbindet die diagonale Leitung 29 mit weiteren Zellen, die wiederum ein anderes Dreieck bilden.
Die Zeichnung zeigt durch zwei Wörter der nächstfolgenden Wortgruppe die Verbindung zwischen den Wortgruppen,
Speicheroperationen finden in den fünf Wortstellen einer Wortgruppe statt
und gemäß der Darstellung der Erfindung in Fig. 1 werden Signale zum
Speichern und Schreiben auf die Anschlüsse 25 einer Gruppe von Worttreibern
über einen gemeinsamen Eingang 37 gegeben. Während einer Leseoper ation" empfängt nur ein übereinstimmendes Wort Signale an. beiden Anschlüssen
24 und 25. Während einer Speicheroperation (wenn alle Übereinstimmungsregister
zurückgestellt sind) wird jeder Treiber der adressierten Wortgruppe eingeschaltet und die Speicher stellen über die diagonal verlaufenden
Wortleitungen ausgewählt.
In einem. Aüsführungsbeispiel der Erfindung stellt eine logische Schaltung
fest, ob ein aus dem Speicher gelesenes Wort höher-, niedriger- öder gleichwertig
dem Suchwort ist. Ein Register 39 zum Anlegen der Speicher- und
Suchwörter an die Bitleitungen kann wahlweise die echten Werte oder die
Komplementwerte seines Inhalts liefern. ·
909083/1658
PO 968 006
1934810
■ . ■ - 6 -
Sie in Figs 2 däirgiä stellte Speicherzelle basiert auf einem Speicher ζ ellentyp,
der1 genäuei1 im ÜS-Fätent 3 3S4 440 beschrieben ist» Die Tfänsistoiett 40
ünd 41 sind über die Widerstände 42 und-43 miteinander verbunden und bil-den
eine bistabile Schaltung* Zürn Speichern einer binären 1 leitet der Transistor 40 und der Transistor 41 leitet beim Speichern einer biftäfen 0, In
diesef Schaltung ist die Basis jedes Transistors mit dem Kollektor des
anderen Transistors verbunden* so daß die KollektOfanschlüsse Eirtgängsklemmen
für Signale von den Bitleitungen 20 uiid 21 für Such« und Speicher operationen
darstellen und Ausgangsklemmen sind für Signale auf den Lei-
ψ tungen 20 und 21 bei einer Leseoperatioiu
Die Kollektoren der Transistoren 44 und 45 sind mit den Bitleitungen 20 und
21 so verbunden, daß Signale auf diesen Bitleitungeh den ausgewählten der
beiden Transistoren 44 und 45 bei Suchoperationen leitend machen und bei Speicheroperätionen einschalten, unddaß diese Signale von der Zelle während
einer Leseoperation auf einer der Bitleitungen erscheinen* Die Emitter der Transistoren 44 und 45 sind miteinander und mit einer der diagonalen Treiberleitungen
27, 28 oder 29 über die parallele Verbindung der Emitter-Kollektor
schaltung des Transistors 48 und die Basis-Emitterschaltung des
Transistors 49 verbunden. Die diagonale Wortleitung 33 wird in geeigneter
f Weise negativ gemacht, um eine Operation der Zelle zu ermöglichen oder sie
wird positiv gemacht, um eine solche Operation zu verhindern. Der Transistor
48 ist mit seiner Basis an die Worttreiberleitung 15 angeschlossen
und erhält bei einer Speicher- oder Leseoperation ein entsprechendes Basispotential, um entweder mit dem Transistor 44 oder dem Transistor 45 zu
leiten. .".--.-
Während einer Leseoperation wird der Transistor 48 eingescaaltet, damit .
einer der Transistoren 44 oder 45 leiten kann. Der jeweils ausgeschaltete
der beiden Transistoren 40 öder 41 hat die positivere Kollektor spannung
und erzeugt über die Einschaltung des zugehörigen Transistors 45 oder 44 ein Signal auf der entsprechenden Bitleitung 20 oder 21. WähtMiu einer
909883/1.5 58
,968 006 BAO ORIGINAL
Speicheroperation erhält einer der beiden Transistoren 44 und 45 eine
geeignete Kollektor spannung, um den zugehörigen Transistor 41 oder 40
so zu steuern, daß er eingeschaltet wird oder leitend bleibt und der andere Transistor ausgeschaltet wird oder bleibt. Während einer Suchoperation
wirlein Signal erfweder auf die Leitung 20 oder die Leitung 21 gegeben. Wenn
der entsprechende Transistor 44 oder 45 durch die Stellung des Transistors
40 bzw. 41 leitend ist, wird der Transistor der gewählten Bitleitung eingeschaltet
und liefert einen Basisstrom an den Transistor 49, der dann einschaltet
und ein Signal für Nichtübereinstimmung auf die Wortabfrageleitung
14 gibt. Wenn der Transistor 44 bzw. 45 nicht leitet, wird der Transistor
49 auch nicht eingeschaltet und erzeugt kein Signal für Nichtübereinstimmung.
Zum besseren Verständnis werden nachfolgend die Einzelteile des in Fig. 1
gezeigten Speicher£^>eschrieben, wie sie bei Speicher-, Such- und Leseoperationen der Reihe nach arbeiten.
'Speichern
Zur Erläuterung des Vorgangs wird angenommen, daß die in Fig. 1 gezeigte
Gruppe aus fünf Wörtern die in der Zeichnung angegebenen Daten speichern
soll. Zuerst werden alle Ubereinstirnmungsregister 22 zurückgestellt (oder
die Treiber 23 anderweitig darauf vorbereitet, daß sie auf ein Speicher signal auf der Leitung 37 ansprechen). Das Ursprungswort 1010 wird im
Register 39 gespeichert und die entsprechende Bitleitung 20 oder 21 für v jede Bitposition entsprechend der Stellung des Registers erregt. Die Bitsignale erscheinen an einem der Eingänge 50 oder 51 jeder Speicherzelle,
die Speicherzelle spricht jedoch auf die Bitsignale nicht an, wenn entsprechende Signale auf den Zeilentreiberleitungen 15 und den Diagpnaltreiberleitungen
27, 28 und 29 fehlen. Die fünf Treiber 23 für die adressierte ■*'
Wortgruppe werden eingeschaltet und die Diagonalwortleitung 29 erregt,
damit in.dem an diese Leitung angeschlossenen Speicherzelleridreieck eine
Speicheroperatiön ausgeführt werden kann. Die Diagonalleitung 2*8 wird so
909883/1558 : v
PO 968 006 .-■'.--.
gesteuert, daß eine ,Speicheroperation entlang dieser Diagonale verhindert
wird. Das Register wird dann so betätigt, daß es das Komplement des
Ursprungswortes auf den Bitleitungen erzeugt, die Treiberleitungen werden
erregt und die Diagonaltreiberleitungen 28 und 29 so gesteuert, daß das Komplement des zu speichernden Wortes nur auf der Diagonalleitung 28
gespeichert werden kann.
Bei gewöhnlichen binären Speicherzellen funktionieren die ein X speichernden Zellen in diesem Speicher nicht und es ist daher unwesentlich ob sie
1 oder 0 speichern.
Suchen " '
Bei einer Suchoperation wird ein Suchwbrt im Register 39 gespeichert und
die Bitleitungen 20 und 21 so erregt, daß sie ein Signal auf der Wortabfrageleitung
14 für jede Zelle erzeugen, die in den entsprechenden Bitpositionen
nicht mit dem Suchwort übereinstimmt. Die diagonalen Wortleitungen 28 und
29 werden so erregt, daß sie die Suchoperation zulassen und die Diagonalleitung 27 wird so erregt, daß sie die X-Speicherzellen daran hindert, auf
den Wortabfrageleitungen 14 ein Signal für Nichtübereinstimmung zu erzeugen. Aufgrund eines Signales für Nichtübereinstimmung wird im zugehörigen
Ubereinstimmungsregister 22" der 1-Ausgang eingeschaltet und der
O-Ausgang abgeschaltet. Bei jeder Suchoperation bleibt eines der Ubereinstimmungsregister
zurückgestellt und ermöglicht dadurch, daß der zugehörige
Treiber 23 bereits an einer kommenden Operation beteiligt sein kann. · --.■'-'
Le sen
Bei einer Leseoperation werden die Adressleitungen 37 jeder Wortgruppe der
Reihe nach erregt und die übereinstimmenden Wörter einzeln aus dem
Speicher gelesen. Die Diagonalleitung 27 wird erregt, um Signale von den
909883/1558 "
PO 968 006 ·
X-Speicherzellen zu sperren und die Diagonalleitungen 28 und 29 werden
erregt, um die Leseoperation für die 1 und 0 speichernden Zellen zu ermöglichen.
Somit stellen auf einer Leitung 20 oder 21 erscheinende Signale den 0-Speicherzustand oder den 1-Speicherzustand dar und wenn keine
Signale erscheinen, wird dadurch der X-Speicherzustand dargestellt. Die
Signale werden der Schaltung 38 zugeführt die einen höher-, niedriger- oder gleichwertigen Zustand feststellt.
Einzelheiten der logischen Schaltung 38 sind in algebraischer Form dargestellt,
da einzelne Schaltkreise für die logische Funktion oder eine gleichwertige Funktion allgemein bekannt sind. Die Bitleitungen sind mit A bis H
bezeichnet. Zwei mit den Buchstaben J und K bezeichnete Leitungen werden
von der äußeren rechten Bitposition des Registers 39 gespeist und eine der
beiden Leitungen wird erregt um anzuzeigen, daß das äußere rechte Bit des
Suchwortes 1 oder 0 ist.
Ein Signal auf einer der beiden Leitungen G oder H bedeutet, daß das übereinstimmende
Wort entweder das letzte oder das vorletzte Wort der Wortgruppe ist. Wenn das äußere rechte Bit im Suchwort und im übereinstimmenden
Wort identisch sind, ist das übereinstimmende Wort das Originalwort.
Somit zeigt die logische Funktion GJ + HK = 1 an, daß das übereinstimmende
Wort dem gesuchten Wort, gleich ist. Wenn dieser Zustand abgefühlt wird, erregt die Schaltung 38 ihre "gleich"-Ausgangsleitung.
Wenn ein Signal auf der Leitung G oder H liegt,jedoch nichjTmit dem Signal
auf der Leitung J oder K übereinstimmt, ist das übereinstimmende Wort
das vorletzte Wort der Wortgruppe und das Ursprungswort entweder höher
oder niedriger als das Suchwort. Wie das Beispiel zeigt, bedeutet 1 in der
äußeren rechten Bitposition des übereinstimmenden Wortes, daß das übereinstimmende
Wort höferwertig als das Ursprungswort ist (1011 ist höher als das Ursprungswort JOlO) oder umgekehrt, daß das-Ursprungswort
909883/1558 :/
PO 968 006
193486Ü
- ίο -
, niedrigerwertig als das Suchwort ist. Somit enthält die Schaltung zur Erregung
der niedrigen Ausgangsleitung der Schaltung 38 den Ausdruck GJ und die
Schaltung für den hohen Ausgang den Ausdruck HK.
Ein Signal auf einer der beiden Leitungen G oder H bedeutet außerdem, daß
ein Ausgangssignal der Schaltung 38 unabhängig sein muß von Signalen auf
den Leitungen A bis F. Die Schaltung für den unteren Ausgang umfaßt den
Ausdruck (G + H) der logisch kombiniert wird mit jedem der Ausdrücke
E, C und A, um zu verhindern, daß diese Ausdrücke ein falsches Ausgangs-
Jk signal am hohen Ausgang erzeugen. In ähnlicher Weise wird der Ausdruck
(G + H) in einer UNDfunktion mit den Ausdrücken E, C und A verbunden,
um ein falscRes Ausgangssignal am niedrigen Ausgang zu verhindern.
Somit erzeugt die Schaltung 38 aufgrund einer Übereinstimmung mit dem
letzten oder vorletzten Wort einer Wortgruppe ein hohes, niedriges oder
gleiches Ausgangssignal. Wenn angenommen wird, daß das übereinstimmende Wort ein X in der äußeren rechten Position und eine 1 oder 0 in der
vorausgehenden Position enthält, so ergibt sich das als Beispiel gewählte
Wort lOOX. Die Leitungen G oder H führen beide kein Signal. Wenn die
Leitung F ein Signal führt (wie im Beispiel 100X) ist das Ursprungswort
ψ höherwertig als das Suchwort. Die logischen Schaltkreise, die durch den
Ausdruck (G + H) E dargestellt sind, erzeugen ein Signal am hohen Ausgang
der i_ ^haltung 38. Die durch den Ausdruck (G + H) F dargestellten Schaltungen
erzeugen in ähnlicher Weise ein Signal am niedrigen Ausgang der
Schaltung 38, wenn das voraufgehende Bit 1 ist.
Wenn auf keiner der beiden Leitungen E oder F ein Signal erscheint, bedeutet
das, daß eine Operation auf den Leitungen A, B, C und D verhindert
werden muß, um ein falsches Ausgangs signal zu vermeiden und der Ausdruck
(E + F) erscheint in allen Gliedern, die Eingangssignale von diesen Bitpositionen
empfangen. Die Schaltung zur Erzeugung eines hohen oder niedrigen Ausgangssignals bei einer Übereinstimmung mit den andcxcn Wörtern
90 98 83/155 8
PO 968 006'
SAD ORIGINAL
■193486Q
der Gruppe geht aus der Zeichnung und der obigen Beschreibung der Arbeitsweise mit dem übereinstimmenden Wort 10OX hervor.
Arn Ende einer Leseoperation erzeugt die logische Schaltung 38 ein Ausgangssignal,
welches anzeigt, daß das Ursprungswort der Wortgruppe höher-,
niedriger- oder gleichwertig dem Suchwort ist. Die Schaltung zur Erzeu- ■
gung des Adreßsignals auf der Leitung 37 gibt die jeweilige Wortgruppe an,
für die das Ausgangs signal der Schaltung 38 gilt. Wie bereits in der Einleitung
erklärt, dient diese Information der Kennzeichnung einer Stelle in
einem zusätzlichen Speicher, der in der Zeichnungnicht dargestellt ist, und
der Verarbeitung in dieser Stelle gespeicherten Wortes. Eine Operation mit diesem zusätzlichen Speicherwort kann zu einer Speicheroperation zur
Änderung des adressierten Wortes des Assoziativspeichers führen ader
der Speicher kann das nächste übereinstimmende Wort lesen und das vorhergehende übereinstimmende Wort unverändert lassen.
In dem in der ^«.ivuuung dargestellten Speicher liefert das Register 39 die
echten und die Komplementwerte des Ursprungswortes und durch entsprechende Taktgabe werden die echten und die Komplementwerte in getrennten
Schritten gespeichert. Mit einer etwas modifizierten Speicherzellen können
und . f
echte/Komplementwerte jedoch auch in einem Schritt in der Speicherzelle
gespeichert werden und die Zellen können z.B. so ausgelegt werden, daß
sie aufgrund eines Signales auf den diagonalen Wortleitungen 32 und 33
wahlweise den Komplementwert oder den echten Wert des Wortes im Register
39 speichern.
Im Ausführungsbeispiel stellt die außerhalb des Speichers liegende Schaltung
38 fest,' ob das übereinstimmende Wort höher-, gleich- oder niedriger-
909883/1558
PO 968 006 - ■ " ν
wertig als das Suchwort ist. Die Schaltung kann diese Funktion direkt übernehmen:
das niedrigste Wort in der Wortgruppe ist bei Übereinstimmung^
immer gleich; das nächstniedrige Wort ist höher oder niedriger als das
Originalwort, je nachdem ob das äußere rechte Bit 1 oder 0 ist; in ähnlicher Weise sind die übrigen Worte einer Wortgruppe höher oder niedriger
als das Ursprungswort entsprechend der 1-Stellung oder 0-Stellung einer
bestimmten Zelle, die permanent verdrahtet ist und eine entsprechende Hoch- oder Niedriganzeige gibt. Wenn die Abfühl se haltung im Speicher angeordnet
wird, kann dieser weiterhin für die Erzeugung einer Übereinstimmung oder einer nachfolgenden Leseoperation nur in den Fällen ausge-™
legt werden, wenn das Ursprungswort eine vorgewählte Hoch-, Niedrigoder Gleich-Beziehung zum Suchwort hat.
Jede Wortgruppe in den bisher beschriebenen Speichern stellt keine Datön
für die Verwendung außerhalb des Speichers dar, sondern bezeichnet eine Wortstelle in einem zusätzlichen Speicher, auf den Zugriff ausgeübt werden
kann, wenn das übereinstimmende Wort der Wortgruppe gelesen wird. Die Erfindung ist auch anwendbar, wenn das Ursprungswort selbst zu lesen ist.
Das Ursprungswort kann in der zusätzlichen Speicher stelle dupliziert oder der Speicher für das direkte Auslesen des Ursprungswortes der übereinstimmenden Wortgruppe ausgelegt werden.
Die Hoch-, Niedrig- oder Gleich-Vergleichsmöglichkeit dieses Speichers
ist nützlich bei der Subtraktion des Suchwortes von jedem Wort des Speichers. Die Subtraktion verläuft bitweise von den wexthohen zu den wertniedrigen
Bits (oder in jeder beliebigen Reihenfolge), und in jeder Bitposition werden effektiv zweijschritte durchgeführt. In einer bestimmten Bitposition,der
sogenannten Operationsposition, wird als ein Schritt eine
Exklusiv-Oder-Operation ausgeführt. Im anderen Schritt wird der bereits
po 9^8. :oö"6:--■'··■"■■- 90988371558
beschriebene Vergleich in einer Art ausgeführt, die Auskunft darüber gibt,
ob die rechts neben der Operationsposition stehenden Bitpositiönen eine
Anleihe in der Operationsposition aufnehmen. Ist das der Fall, wird das
Ergebnis der Exklusiv-Oder-Operation komplementiert und dadurch das-Ergebnis
für die Operationsposition erzeugt.
Die Speicherzellen und ihre Verbindungen zu den Bit- und Wortleitungen
wurden bereits im Zusammenhang mit dem in Fig. 1 gezeigten Speicher beschrieben.
Diese Bauelemente sind in Fig. 3 durch eine entsprechende Zahlenanordnung wiedergegeben, die das Ursprungs wort 1001 darstellt. Die
4 χ 5-Wortgruppe des Ur Sprungs Wortes wird in doppelter Form in den
Anordnungen 12a und 12b gespeichert. Für jedes aus vier Bits bestehende Wort in den Anordnungen 12a und 12b gibt es in den Anordnungen 60a und
60h ein 5-Bitwört, das an dieselbe Wortabfrageleitung 14 angeschlossen
ist, die zu den Nichtübereinstimmungen des Registers in dasselbe Register
22 führen. Die Blöcke stellen funktioneile aber nicht unbedingt strukturelle
Unterschiede der vier Anordnungen dar. Die Anordnungen 12a und 12b sollen
die Anleihe- öder Borgeoperationen und die Anordnungen 60a und 6öb die
Exklusiv-Oder-Operatiönen ausführen. Die anderen mit den Anordnungen
zusammenarbeitenden Bauteile werden in der Reihenfolge ihres Auftretens
im folgenden Beispiel einer Subtraktion erklärt.
Ih dein in der Zeichnung gezeigten Beispiel wird ein Suchwort OlltKim Suchregister
39a gehalten und soll von dem Wort 1001 und anderen nichtdargeötellteh
Wörtern irn Speicher abgezogen werden. Eine Tabelle'dieser
speziellen Operation ist: links rieben den Anordnungen in Fig>
3 gezeigt; Die Ergebntsspäifee zeigt das Ergebnis einer Subtraktion* die eine Übereinstimmung in der entsprechenden Zeile erzeugt. Dieses Ergebnis erscheint
am Ausgang einer später beschriebenen Schaltung 67. Die Vergleichs·- oder
U^ereirislimmtH^
spezielle Beiipiei tür Fi|. 3 in derselben Zueile «ie das? üfeereihstinimeiide
Wbri dier AriördnMfen«,~& diesem Beispiel teeireni a^l
- 14 -
Übereinstimmungen in verschiedenen Wörtern auf, können jedoch auch im
selben Wort auftreten.
Wie die Übereinstimmungsliste in Fig. 3 zeigt, ist das Ergebnis einer Subtraktion
zweier 4 Bit großen Zahlen eine 5 Bit große Zahl* Eine 1 in der
fünften Bitpoäition besagt, daß das Ergebnis negativ und in Zweierkömplementform
erscheint und eine 0 besagt, daß das Ergebnis positiv ist, und
in seiner echten Form erscheint. (Entsprechend einer später folgenden
Erklärung liefert die fünfte Bitposition der Anordnungen 60a und 60b ein
fc positives oder negatives Vorzeichen für das Wort im Suchregister.
Ein herkömmliches Maskenregister 63a überträgt eine ausgewählte Anzahl
der äußer/ien rechten Bitpositionen des Suchwortes in die Anordnungen 12a
und 12b. Beim Finden der Anleihe für die fünfte Bitposition sind alle Positionen unmaskiert und die Operation ähnelt der für den in Fig. 1 gezeigten
Speicher beschriebenen Operation. Im gezeichneten Beispiel ist das gespeicherte
Wort 1ÖQ1 größer als das Suchwort 0110 und es erfolgt daher keine
Anleihe in die fünfte Position. Beim Suchen tritt eine Übereinstimmung; mit
dem Wort OXXX auf (und zwar in der Anordnung 12a gemäß nachfolgender
Erklärung). Das Wort OXXX wird gelesen und in Schaltung 38 abgefühlt und
besagt, daß das Ur Sprungs wort größer ist als das, Suchworti Eine gleiche
Übereinstimmung hat für die Anleihe-/Borgeoperation natürlich dieselbe
Bedeutung; und bei einem niedrigwertigen Vergleich wird eine Anleihe angezeigt. Das Ausgangs signal der Schaltung entspricht dem Ergebnis einer oder
keiner Anleihe bei dieser Suche- und in der speziellen in Fig. 3 gezeigten
Schaltung; bezeichnet.-eure. 1 am Ausgang der Schaltung 38 eine Anleihe»
67; empf-ängfe das Anleihe·- oder Borgesignal.
i^M E^ibnisse der nieder Operationsposition der Anordnungen B3& und; 63b
eii Exklusiv-Odea:-Operation und erzeugt: das Ergebnis für die
bad original
Während der gerade beschriebenen Operation führen ein Maskenregister 63b
und ein Suchregister 39b gemeinsam eine Suche nur auf der fünften Bitposition
der Anordnungen 60a und 60b durch. Das Suchregister 39 enthält das Suchwort 00110, in welchem die 0 in der fünften Bitposition besagt,
daß die Zahl positiv ist und die anderen Bitpositionen dieselben wie das Suchwort im Register 39a sind. Die obere Anordnung 60a enthält teilweise
das Ursprungswort,. Somit besagt eine Übereinstimmung in den oberen
Anordnungen 12a und 60a daß die Exklusiv-Oder-Funktion des Suchwortes
und des gespeicherten Wortes eine 0 ist. Die untere Anordnung 60b enthält
teilweise Komplementärwerte, so daß eine Übereinstimmung besagt, daß
die Exklusiv-Öder-Funktion für die nichtmas Werte Position eine 1 ist.
V,
Für jedes Wort der oberen Ariordnungen 12a und 63a liefert die Schaltung
ein eine 1 darstellendes Eingangssignal für die Exklusiv-Oder-Schaltung
aufgrund der Einschaltung eines Übereinstimmungsregisters 22. Das Ausgangssignal
jedes Treibers 23 wird über ,ein Trennelement 65 auf die für
die Schaltung 67 gemeinsame·Eingangsleitung gegeben. Da dieses Eingangssignal
das Komplement der Exklusiv-Oder-Funktion ist, liefert die Schaltung
67 die komplementäre Exklusiv-Oder-Operation. Somit ist das Ausgangssignal
der Schaltung 67 das Ergebnis der Subtraktion für die Operationsposition.
Die fünfte Bitposition der Anordnung 60a enthält Nullen in jeder Zeile, um
eine'Übereinstimmung zu erzeugen, wenn das Suchwort positiv ist und die
fünfte Bitpositiön der Anordnung 60b enthält Einsen in jeder Zeile, um eine
Übereinstimmung zuerzeugen, wenn das Suchwortnegativ ist.
Bei der Operation für die vierte Bitposition des Ergebnisses sucht der ·
Maskenregisterteil 63a auf den drei am weitesten rechts, stehenden· Bitpositionen der Anordnungen 12a und 12b. fiaeh der Tabelle "erzeugt diese
Operation eine Übereinstimmung mit dem Teil IXX des VollwOiTtes; ttXX
PO 968 006 9 0 988 3.7,1 5 S 8 ->*& *■*? ^F
in der Anordnung 12b. Wenn dieses Wort gelesen wird, zeigt die Schaltung
38 an, daß die drei am weitesten rechts stehenden Bits des Ur Sprungs Wortes
kleiner sind als die drei am weitesten rechts stehenden Bits des Suchwortes
und daß eine Anleihe an die vierte Position des Ergebnisses erfolgt.
Die Wörter OXXX in den Anordnungen 12a und 12b sind rna skier t, um
eine Übereinstimmungsanzeige zu verhindern, die auftreten würde, wenn nur die drei am weitesten rechts stehenden Bits dieses Wortes gesucht
würden. In den Anordnungen 63a und 63b wurde der vierten Bitposition für
fc diese Wörter eine permanente Anzeige für Nichtübereinstimmung zugeordnet,
die in der Zeichnung mit Z bezeichnet ist. Eine Anzeige für. Nichtübereinstimmung kann hergestellt werden, indem man einen Leitungsweg von
jeder Bitabfrageleitung zur Wortleitung an der Stelle der nicht vorhandenen
Übereinstimmung herstellt. Diese Anzeige kann auch geliefert werden durch
zwei bistabile Schaltungen, die getrennt mit einer Bitleitung gekoppelt sind
und die auf Speicherzustände gesetzt werden, um Signale für Nichtübereinstimmung
zu erzeugen, wenn irgendeine Bitleitung abgefragt wird. Die
Bezeichnungen Z sind irgendwo in die Anordnungen 63a und 63b gesetzt,
um Signale für Nichtübereinstimmung zu erzeugen an den Stellen, wo nur
X-Ausdrücke in einem nichtmaskierten Teil eines Wortes der Anordnungen
' 12 und 12b erscheinen. .
Die Operationstabelle in Fig. 3 zeigt die einzelnen Schritte zum Auffinden
der Ergebnisse für die anderen Positionen des Ergebnisses. Die Operationen für die Positionen 3 und 2 sind lediglich eine Wiederholung der für die
Position 4 beschriebenen Operation. Da das Ergebnis für Position 1 eine
einfache Exklusiv-Oder-Funktion des äußeren rechten Bits des Suchwortes
und des gespeicherten Wortes ist, erfolgt diese Operation für die Position
1 bei vollständiger Maskierung des Registerteiles 39a. Der 0-Ausgang der
Schaltung 38 liefert für diese Operation ein richtiges Eingangssignal für
die Schaltung 68^"
" 968 006 909803/155 8
Claims (6)
1. Wortörgäiiisieiter Assoziativspeicher mit in Zeilen und η Spalten
angeordneten Speicherzellen, die spaltenweise mit Bit- und Abfühlleitüngen
und zeilenweise mit Wortadressier- und Afcfiihlleitungen iixt
Fälle von Nichtübereinstimmung nach bitweisem Vergleich zwischen Ursprungs- und Suchwort verbunden sind, dadurch gekennzeichnet,
daß jedes aus η Bits bestehende Ürsprungswort (z. B, 1010) als Wortgruppe
aus η + 1 Wörtern gleicher Länge gespeichert wird, daß ein erster und ein dazu paralleler, um eine Zeile versetzter zweiter
Diagönäidräht (28 und 29) die η Speicherzellen jeder Diagonale zur
Steuerung der Lese- und Schreiboperation verbindet, daß zwischen Ursprungswort und Suchwörtern auf niedrig, hoch und gleich verglichen
wird und daß in vorgegebenen Bitpositionen der permanente "gleich" Zustand
"X" gespeichert wird.
2. Wortorganisierter Assoziativspeicher nach Anspruch 1, dadurch gekennzeichnet, daß über den ersten Diagonaldraht (28) eine komplementäre
(0101) und über den zweiten Diagonaldraht (29) eine echte (1010) Speicheroperation in den η Speicherzellen jeder Diagonale gesteuert
wird.
3. Wortorganisierter Assoziativspeicher nach Anspruch 1, dadurch
gekennzeichnet, daß der Vergleich zwischen Ursprungs- und Suchwort in der wertniedrigen Bitposition " 1" oder "0" des Suchwortes durchgeführt wird.
4. Wortorganisierter Assoziativspeicher nach Anspruch 2, dadurch
gekennzeichnet, daß die Speicherelemente aus bistabilen Transistor-
po 968 006 90 9883/1558 -
" - 18 -
Stromkreisen (Fig. 2) mit zwei Bit-JLeseleitungen (20, 21) für die
getrennte Übertragung dear Signale "0" und "1" bestehen, und daß in dem permanenten "gleichn-Zustand 11X" auf beiden Drähten kein
Signal vorhanden ist.
5. Wortorganisierter Assoziativspeicher nach Anspruch 4, dadurch
gekennzeichnet, daß ein dritter Diagonaldraht (27) die Positionen des
permanenten "gleich"-Zustandes "X" verbindet und in einer Leseoperation
die Bitpositionen des permanenten "gleich"~Zustandes 51X"
m für die Signale "0" und "lrr zur Vermeidung einer Nichtübereinstimmung
durch Inhibieren sperrt,
6. Wortorganisierter Assoziativspeicher nach den Ansprüchen 1 bis 5,
dadurch gekennzeichnet, daß mit einem Maskenregister 63a. niedrigwertige
Bitpositionen für eine Ausleih- oder Borgeoperation ausgesucht werden und daß diese niedrigwertigen Bitpositionen und die nächsthöher wertige
Bitposition des Suchwortes und des Ursprungswortes zur Subtraktion
des Suchwortes vom Ursprungswort auf eine Exklusiv-Oder-Schaltung
(67) geleitet werden.
PO 968 006 909833/1558
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US74410968A | 1968-07-11 | 1968-07-11 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE1934860A1 true DE1934860A1 (de) | 1970-01-15 |
Family
ID=24991465
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19691934860 Pending DE1934860A1 (de) | 1968-07-11 | 1969-07-09 | Wortorganisierter Assoziativspeicher |
Country Status (8)
Country | Link |
---|---|
US (1) | US3533085A (de) |
BE (1) | BE735982A (de) |
CH (1) | CH499170A (de) |
DE (1) | DE1934860A1 (de) |
ES (1) | ES369003A1 (de) |
FR (1) | FR2012714A1 (de) |
NL (1) | NL6910494A (de) |
SE (1) | SE360202B (de) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2427180A1 (de) * | 1974-06-05 | 1975-12-18 | Siemens Ag | Assoziativer speicher |
DE3202145A1 (de) * | 1982-01-23 | 1983-08-11 | A. u. K. Müller GmbH & Co KG, 4000 Düsseldorf | Mehrwegeventil, insbesondere zur verwendung in dialyse-geraeten |
FR2550870A1 (fr) * | 1983-08-16 | 1985-02-22 | Ambac Ind | Systeme de vanne de commande |
EP0141342A2 (de) * | 1983-10-24 | 1985-05-15 | Mitsubishi Denki Kabushiki Kaisha | Elektromagnet für Öldruckregelung |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1230834A (de) * | 1968-10-23 | 1971-05-05 | ||
JPS505544B1 (de) * | 1969-08-27 | 1975-03-05 | ||
US3638199A (en) * | 1969-12-19 | 1972-01-25 | Ibm | Data-processing system with a storage having a plurality of simultaneously accessible locations |
US3675212A (en) * | 1970-08-10 | 1972-07-04 | Ibm | Data compaction using variable-length coding |
US3757312A (en) * | 1970-10-09 | 1973-09-04 | Us Navy | General purpose associative processor |
US3717851A (en) * | 1971-03-03 | 1973-02-20 | Ibm | Processing of compacted data |
US3701094A (en) * | 1971-04-19 | 1972-10-24 | Honeywell Inf Systems | Error control arrangement for information comparison |
DE2712575C2 (de) * | 1977-03-22 | 1985-12-19 | Walter Dipl.-Ing. 8011 Putzbrunn Motsch | Assoziatives Speichersystem in hochintegrierter Halbleitertechnik |
JPS62118434A (ja) * | 1985-11-19 | 1987-05-29 | Matsushita Electric Ind Co Ltd | 比較回路 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3195109A (en) * | 1962-04-02 | 1965-07-13 | Ibm | Associative memory match indicator control |
US3297995A (en) * | 1963-03-29 | 1967-01-10 | Bunker Ramo | Content addressable memory |
US3264616A (en) * | 1963-12-16 | 1966-08-02 | Ibm | Range and field retrieval associative memory |
US3402398A (en) * | 1964-08-31 | 1968-09-17 | Bunker Ramo | Plural content addressed memories with a common sensing circuit |
-
1968
- 1968-07-11 US US744109A patent/US3533085A/en not_active Expired - Lifetime
-
1969
- 1969-06-19 FR FR6920442A patent/FR2012714A1/fr not_active Withdrawn
- 1969-07-01 ES ES369003A patent/ES369003A1/es not_active Expired
- 1969-07-04 CH CH1021769A patent/CH499170A/de not_active IP Right Cessation
- 1969-07-09 DE DE19691934860 patent/DE1934860A1/de active Pending
- 1969-07-09 NL NL6910494A patent/NL6910494A/xx unknown
- 1969-07-11 BE BE735982D patent/BE735982A/xx unknown
- 1969-07-11 SE SE09852/69A patent/SE360202B/xx unknown
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2427180A1 (de) * | 1974-06-05 | 1975-12-18 | Siemens Ag | Assoziativer speicher |
DE3202145A1 (de) * | 1982-01-23 | 1983-08-11 | A. u. K. Müller GmbH & Co KG, 4000 Düsseldorf | Mehrwegeventil, insbesondere zur verwendung in dialyse-geraeten |
FR2550870A1 (fr) * | 1983-08-16 | 1985-02-22 | Ambac Ind | Systeme de vanne de commande |
EP0141342A2 (de) * | 1983-10-24 | 1985-05-15 | Mitsubishi Denki Kabushiki Kaisha | Elektromagnet für Öldruckregelung |
EP0141342A3 (en) * | 1983-10-24 | 1985-11-06 | Mitsubishi Denki Kabushiki Kaisha | Electromagnetic solenoid device for oil pressure control |
US4634096A (en) * | 1983-10-24 | 1987-01-06 | Mitsubishi Denki Kabushiki Kaisha | Electromagnetic solenoid device for oil pressure control |
Also Published As
Publication number | Publication date |
---|---|
SE360202B (de) | 1973-09-17 |
CH499170A (de) | 1970-11-15 |
ES369003A1 (es) | 1971-05-16 |
US3533085A (en) | 1970-10-06 |
FR2012714A1 (de) | 1970-03-20 |
NL6910494A (de) | 1970-01-13 |
BE735982A (de) | 1969-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3801380C2 (de) | ||
DE2803989C2 (de) | Digitaldatenspeicher mit wahlfreiem Zugriff | |
DE2328869A1 (de) | Verfahren zur pruefung eines digitalen speichersystems sowie zur durchfuehrung dieses verfahrens dienendes selbstpruefendes digitales speichersystem | |
DE2010366A1 (de) | Verfahren und Einrichtung zum elektronischen Einschreiben in einen nur zum Ablesen bestimmten Impedanzspeicher | |
DE2059917C3 (de) | Hybridadressierter Datenspeicher | |
DE1934860A1 (de) | Wortorganisierter Assoziativspeicher | |
DE2259725B2 (de) | Funktionsspeicher aus assoziativen Zellen mit mindestens vier Zuständen | |
DE2261786A1 (de) | Nur-lese-speicher hoher dichte | |
EP0052669B1 (de) | Mehrfach adressierbarer hochintegrierter Halbleiterspeicher | |
DE69025782T2 (de) | Registerbankschaltung | |
DE3104880A1 (de) | "speicher fuer wahlfreien zugriff" | |
DE1295656B (de) | Assoziativer Speicher | |
DE1774987B2 (de) | Elektronische Rechenmaschine. Ausscheidung aus: 1549455 | |
DE1774675B2 (de) | Elektronisches rechengeraet mit einer speichermatrix | |
DE10211957B4 (de) | Ternäre inhaltsadressierbare Speicherzelle | |
DE2729361A1 (de) | Speicherschaltung | |
DE2233164B2 (de) | Schaltungsanordnung zur uebertragung von aufeinanderfolgenden bitstellen zwischen zwei registern | |
DE2519195A1 (de) | Assoziativspeicher | |
DE1549443A1 (de) | Nachrichtenverarbeitende Einrichtung mit erweiterter Speicheradressierung | |
DE1537307A1 (de) | Logische Schaltung | |
DE2618760B2 (de) | Halbleiter-Speichervorrichtung | |
DE1474380A1 (de) | Matrixspeicheranordnung | |
DE2047220C3 (de) | Assoziativspeicher | |
DE2627617A1 (de) | Festwertspeicher | |
DE1424690B2 (de) | Matrixspeicher mit mehreren speicherabschnitten |