[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

DE2057587A1 - Inhaltsadressierter Speicher - Google Patents

Inhaltsadressierter Speicher

Info

Publication number
DE2057587A1
DE2057587A1 DE19702057587 DE2057587A DE2057587A1 DE 2057587 A1 DE2057587 A1 DE 2057587A1 DE 19702057587 DE19702057587 DE 19702057587 DE 2057587 A DE2057587 A DE 2057587A DE 2057587 A1 DE2057587 A1 DE 2057587A1
Authority
DE
Germany
Prior art keywords
field
input
search
cells
assigned
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
Application number
DE19702057587
Other languages
English (en)
Inventor
Minshull John Francis
Murphy Alan Stanley
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE2057587A1 publication Critical patent/DE2057587A1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • G06F7/5057Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination using table look-up; using programmable logic arrays
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • G11C15/04Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/48Indexing scheme relating to groups G06F7/48 - G06F7/575
    • G06F2207/4802Special implementations
    • G06F2207/4804Associative memory or processor

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Executing Machine-Instructions (AREA)

Description

International Business Machines Corporation,Armonk,lo5o4,N.Y./USA Inhalt »adressierter Speieher
Sie Erfindung betrifft einen inhalteadreeeierten Speicher mit selbsttätiger Zugriffefolge.
Bei Speichern dieeer Art werden die einzelnen Wortregister aufgrund einee Suchargumentee angesprochen, dae in einem auegewählten PeId vorliegt und mit dem jeweiligen Inhalt der Wortregister verglichen wird. Wird Abgleich mit einem Wortregister gefunden, dann ist dieses Wortregister dadurch auegewählt.
Aufgabe der Erfindung ist es, einen Speicher der eingangs go-
109823/2033
P 15 929/UK9-69-OO3
nannten Art βο auszügestalten, dass er einfach auf eine vorbestimrate Zugriffsfolge programmierbar ist, wobei insbesondere bei einfachem Gesamtaufwand auch komplizierte Zugriffsfolgen durchführbar sein sollen.
Die Erfindung ist gekennzeichnet durch eine Vielzahl von Wortregistern und ein für alle diese Wortregister gemeinsames Eingabe-/Au8gaberegister mit einem Suchfeld für das Suchargument und einem Lesefeld, und bei dem ein Teil des Lesefeldes als Neukennzeichen über eine Datenleitung an einen für ein Kennzeichen vorgesehenen Teil des Suchfeldes angeschlossen ist, und dass das Suchargument aus dem Kennzeichen und einer in das Suchfeld eingespeisten Eingabe gebildet wird.
Die Erfindung wird nun anhand der beigefügten Zeichnung näher erläutert.
In der Zeichnung zeigen :
Figuren 1, 3, 5, 6, 8, 9, lo, 12 und 14
Figuren 2 und 4
Figuren 7, 11 und 13
Jeweils ein Ausführungsbeispiel eines Speichers nach der Erfindung,
Diagramme zur Erläuterung der er~ laubten Betriebsübergänge bei den Ausführungsbeispielen der Figuren 1 und 3 und
FluÖdiagramme zur Erläuterung der selbsttätigen Zugriffsfolge bei den Ausführungsbeispielen nach den Figuren 6, Io bzw. 12.
109823/2033
- ·?Τ- ^ P 15 929/UK9-69-QO3
Der in Figur 1 sehematisch dargestellte inhaltsadressierte Speicher Io nach der Erfindung erzeugt unter Zugrundelegung einer zwanzigzeiligen Dekodiertabelle eine fünf Bit 251 bis 25 umfassende Ausgabe aufgrund einer vier Bit umfassenden Eingabe Pl, P2, Ql, Q2, wobei die Ausgabe nicht nur von der Eingabe, sondern auch von der Betriebsart abhängt, in der der Speicher gerade betrieben wird· Der Speicher kann in einer von vier Betrieb sarbei ten A bis D betrieben werden und er kann von einer dieser Betriebsarten in eine andere nur überwechseln in Richtung der Pfeile, die in Figur 2 angegeben sind. Wenn zum Beispiel der Speicher in der Betriebsart B arbeitet, dann kann er in die Betriebsarten C oder D umwechseln, aber nicht in die Betriebsart A.
Der Speicher Io enthalt ein ELngabe-/Au8gaberegister 11, das dreizehn Bits breit ist, die sich unterteilen in zwei Bits eines Kennz eichenfei des, vier Bits eines Eingabefeldes, zwei Bits eines Neukennzeichenfeldes und fünf Bits eines Ausgabefeldes. Das Neukennzeichenfeld ist über ein Datenkabel 25 mit dem Kennzeichenfeld verbunden. Der Speicher führt eine festgelegte Kombination von Operationen, nämlich Suchen und Lesen aus und hat eine feste Maske, die bestimmt, dass bei der Suchoperation das Kennzeichenfeld und das Eingäbefeld des Registers 11 als Suchargument herangezogen wird, während bei Leseoperationen die ausgewählte Zeile der Dekodiertabelle in das Heukennaeichenfeld und das Ausgabefeld ausgelesen wird· Der Inhalt des Heukennzeichenfeldes wird dann unverzüglich in das Kennzeichenfeld übertragen und dient von dort aus als Teil des Suohargumentes für die nächste Suchoperati on.
JDIe Tabelle aus Figur 1 kann so verstanden werden, dass jeder einzelnen der neuzehn Tabellenzeilen ein Wortregister des Speichers zugeordnet ist, dass also der Inhalt jeder Zeile in
109823/2033
P 15 929/UK9-69-OO3
einem Wortregister mit entsprechend vielen vorgesehenen Speicherpositionen gespeichert ist. Die einzelnen Datenzellen sind in der Figur beschriftet, und zwar mit 1, 0 oder X.
Die Dekodierung erfolgt nach folgenden Regeln :
a) wenn Pl und P2 den Wert Ol oder 10 oder 00 haben, ausgenommen den besonderen Pail der Regel b), dann wird aufgrund der vier-Bit Eingabe Pl, P2, Ql, Q2 eine fünf-Bit Ausgabe Zl bis Z5 ausgegeben,
b) wenn Pl, P2, Ql, Q2 den Wert 0000 oder 0010 haben und der Speicher in der Betriebeart C arbeitet, dann wechselt er auf Betriebsart A über,
c) wenn Pl, P2 den Wert 11 haben, dann findet nach Massgabe des Wortes von Ql und Q2 ein Wechsel der Betriebsart statt,
d) Änderungen der Betriebsarten, außer den in Figur 2 angegebenen, sind verboten. Wenn die Betriebsart in verbotener Weise geändert wird, dann wird ein Fehlermuster ausgegeben, das darin besteht, dass Zl bis Z5 den Wert Hill haben.
Der Speicher nach Figur 1 wird nun anhand einiger Betriebsbeispiele näher erläutert, die die Grundzüge des Aufbaues und der Arbeitsweise erkennen lassen und die auoh bei den anderen anhand der nachfolgenden Figuren zu beschreibenden Beispiele verwendet werden.
Zunächst iet das Eingabe-/ Auegaberegister 11 leer, es enthält also nur binäre Nullen. Das Kennzeichen hat also zunächst den Wert 00. Hat die Eingabe Pl, P2 den Wert 00, dann erfolgt die Auswahl in der Tabelle unter den Zeilen 0 bis 2. Wenn Ql, Q2
109823/2033
P 15 929/UK9-69-O03
den Wert OO hat, wird die Zeile 0 ausgewählt und die Ausgabe lautet 01001. Wenn Ql den Wert 1 hat, wird die Zeile 2 ausgewählt, und zwar unabhängig davon, ob Q2 den Wert 1 oder 0 hat» denn Q2 wird bei der Suchoperation mit einer Datenzeile verglichen für die in der Tabelle ein X geschrieben ist, und das aoll hier und im folgenden bedeuten, dass es beim Vergleich auf die betreffende Date nicht ankommt. Entsprechendes gilt sum Beispiel auch für die Zeilen 3 und 4, bei denen der Wert von Pl und P2 vollständig und für sich allein die Ausgabe bestimmt. Pur die Zeilen 0 bis 4 ist der Wert des ffeukennzeichens 00, was zur Folge hat, dass die nächste Ausgabe aus den Zeilen 0 bis 4 ausgelesen wird, es sei denn bei der nächsten Eingabe hat Pl, P2 den Wert 11.
Wenn Pi, P2 den Wert 11 hat, dann wird unter den Zeilen 16 bis ausgewählt. Das Kennzeichenfeld dieser Zeilen enthält in allen Positionen ein X, so dass dessen Zeilen unabhängig vom Wert, im Kennzeichenfeld des Eingabe-/Ausgaberegisters 11 ausgewählt werden, in den Zeilen 16 bis 19 sind die werte für Q1 und Q2 die gleichen wie für das Neukennzeichenfeld. Q1 und Q2 bestimmen mithin den Betriebsartübergang, Wenn es sich dabei um einen verbotenen übergang handelt, dann wird nicht mr eine der Zeilen 16 bis 19 ausgewählt, sondern auch eine der Zeilen 7, 11 oder 15, die das Fehlersignal enthält. Wenn die beiden ausgewählten Zeilen gleichzeitig ausgelesen werden, unterliegt die Ausgabe einer ODBR-Punktion. Der Wert 00000 auf den Zeilen 16 bis 19 und 11111 von einer der zeilen 7, 11 oder 15 gilt als Ergebnis dieser ODER-Funktion das Fehlersignal 11111. Diese Methode, bei der Ausgabe mehrerer Zeilen deren Inhalt gesondert zu kombinieren, kann auch bei den nachfolgenden Ausführungsbeispielen angewendet werden.
Bio Regel b) ist in Zeile β angewendet* die außgewählt wird, wenn bei Betriebeart o), (also Kennzeichen io)der Wert von Pl, P2
109823/2033
9 P 15 929/üK9~69~oo3
und Q2 jeweils O ist. Dabei ist es unbedeutend, welchen Wert Ql hat, denn die Datenzelle für Ql ist in Zeile 8 mit einem X belegt. Wenn, die Zeile 8 ausgewählt worden ist, wird auf Betriebsart A mit dem Kennzeichen OO Übergegangen.
Uach Figur 1 und 2 gibt es nur wenige verbotene Übergänge von einer Betriebsart auf die andere. Ein Beispiel mit einer großen Zahl von verbotenen Übergängen wird anhand der Pigur 3 erläutert. Die zulässigen Übergänge zwischen den Betriebsarten A bis D sind für Figur 3 in figur 4 dargestellt. Bei einem gültigen Übergang wird die Ausgabe 00001 ausgelesen, dagegen bei einem verbotenen Übergang die Ausgabe 00000. Während man bei Figur 1 die Übergänge zunächst einmal als gültig ansehen kann, da die verbotenen Übergänge die Ausnahme sind, ist es nach Figur 3 umgekehrt. Der einzige gültig Übergang aus dem Betriebszustand C mit der Kennziffer 10 führt zum Betriebszustand D mit der Kennziffer 11. Die ODER-Funktion der beiden Kennziffern ist 11 und das ist die Kennziffer für den Betriebszustand D. Die Übergänge aus dem Betriebszustand C können durch die Zeilen M und N+3 ausgeführt werden, wenn der Übergang gültig ist und nur durch die Zeile N+3 wenn der Übergang ungültig ist. Der einzige gültige Übergang vom Betriebszustand D zum Betriebszustand A erfordert das Neukennzeichen OO und kann nicht als ODER-Funktion von zvei verschiedenen Operanden gewonnen werden. Deshalb wird für einen gültigen Übergang vom Betriebszustand D auf den Betriebszustand A die Zeile N ausgewählt, die an den beiden Neukennzeichenpositionen je eine 0 hat. Die Zeilen N+1 und N+2 sind für diesen übergang nicht geeignet, weil jeweils in einer der Neukennzeichenpositionen eine 1 vorliegt. Eine der Zeilen N+1 und N+2 oder beide werden ausgewählt, wenn das Neukennzeichen nicht den Wert 00 haben soll. Nach diesen Prinzipien wird der Zugriff mit Einern inhaltsadressierten Speicher nach der Erfindung adressiert und es ergibt sich eine weitgehend durch den Inhalt des Speichers vorgegebene Zugriffsfolge.
109823/2033
-T- h P 15 929/TJK9-69-OO3
Figur 5 zeigt ein Auefuhrungsbeispiel nach der Erfindung, dessen Zugriffsfolgen mit grösserer Vielfalt "bestirnt werden. Der inhaltsadressierte Speicher 26 hat zwei Eingabe-/ Ausgaberegister I/O 1 und i/o 2. Von federn dieser Eingabe-Ausgaberegister kann ein Suchargument abgenommen werden und zwischen den beiden Registern und dem Speicher 26 kann Datenaustausch stattfinden. Der Speicher 26 wird durch einen Dekoder 27 betrieben, der auf Steuerdaten anspricht und daraufhin entscheidet, welche Operationskombinationen in einem Speicherayklua stattfinden sollen und welche Maske und welches Eingabe-Ausgaberegister für ^eden Zyklusäbsehnitt verwendet werden soll. Das Eingabe-Ausgaberegister i/o 1 ist in Felder 28 bis 32 unterteilt. Das Feld 29 ist das Eingabefeld, das Feld 31 das Ausgabefeld· Das Feld 3o ist das Neukennzeichenf eld und an das Kennziffernfeld 28 über die Leitung 33 angeschlossen. Das Feld ist ein Botriebesteuerfeld, welohes die Steuerdaten liefert, die über eine Leitung 34 an den Dekoder 27 gelangen. Das Eingabe-/ Ausgaberegister I/O 2 ist in Felder 35 bis 39 unterteilt. An das KennziffUmfeld 35 1st eine äuesere Steuerschaltung 4o angeschlossen, die durch ein Mikroprogramm oder einen anderen angeschlossenen inhaltsadreesierten Speicher betätigt wird. Die Leitung von der' Steuerschaltung 4o zum Kennzifförnfeld 35 ist mit 41 bezeichnet. Aueeerdem ist die Steuerschaltung 4o über die Leitung 42 an den Dekoder 27 angeschlossen. Das Feld 36 ist das Eingabefeld und das Feld 38 das Ausgabefeld. Die Felder 37 und 39 dienen dazu, Neukennzeichen und Betriebssteuerdaten aua dem Bingabe-AuBgabereglster 2 in den Speicher 26 einzugeben.
Der Speicher 26 kann alt selbsttätiger Zugriffefolge vom Register I/O 1 betrieben werden, denn die Felder 3o und 32
109823/2033
P 15 929/UK9-69-OO3
liefern hinreichend Steueiinforraationen, um jeweils den nächsten Betrlebszyfclue des Speichers zu steuern. Wenn die Eingabe im Eingabefeld 29 nicht geändert wird, liefert das Register i/o 2 die Daten für die äussere Steuerung des Speichers.
Figur 6 zeigt einen inhaltsadressierten Speicher in Form einer Funktionstabelle fUr eine selbsttätige Zugriffsfolge der Anweisung : "wenn A<0, dann X = B+A, sonst X = B-A", wobei A und B ein acht-Bit bzw. einen Byte umfassender Operand ist, dessen Bit höchster Ordnung ein Vorzeichenbit ist, und zwar mit einer O für das positive und einer 1 £Vlt das negative Vorzeichen. Die Tabelle 6 umfasst 114 Zeilen und ist in vier Untertabellen unterteilt, w die wie folgt bezeichnet sind : Verschiebung, Additionsübertrag, Äquivalenz, Exklusiv-Oder.
Es ist bekannt, dass man eine binäre Operation zweier Operanden ausführen kann, indem man zunächst die Exklusiv-Oder-Funktion der Operanden aufsucht und dann aus dem einen Operanden und der Exklusiv-Oder-Funktion das Additionsergebnis gewinnt. Die Äquivalenz-Funktion zweier binärer Operanden, deren Resultat eine eins in jeder Ordnung, in der beide Operanden übereinstimmen, enthält, ist das gleiche wie die Exklusiv-Oder-Funktion eines negativen und eines positiven Operanden. Kombiniert man das Resultat der Äquivalenz-Funktion und einen der Operanden, dann ergibt sich das t Additionsresultat eines positiven und eines negativen Operanden und das ist das Subtraktionsresultat zweier Operanden. Figur 7 zeigt ein Flussdiagramm, nach dem in Figur mit dem Speicher aus Figur 6 nach diesen Prinzipien vorgegangen wird.
Das Eingabe/Ausgaberegister aus Figur 6 ist in die Felder K, M, N, P, 0, R und S unterteilt. Das Feld I ist das Kennzeichenfeld und an das Neukennzeichenfeld Q über die Leitung 43 angeschlossen.
109823/2033
- £. - Q P 15 929/UK9-69-OO3
P ist das Eingabefeld und S das Ausgabefeld, das Über die Leitung 44 an das Feld KT angeschlossen ist« M ist ein iäingabesteuerfeld und es muss eine 1 enthalten, damit die Zugriffsfolge beginnen oder fortgesetzt werden kann. H ist ein Ausgabesteuerfeld. In Figur 6 ist ebenso wie auch in den nachfolgenden Figuren für eine freigelassene Datenzelle ein X zu schreiben.
Der Speicher ist so eingerichtet, dass er eine bestimmte Kombination von Suchoperationen über die Felder K, M, 3Si und P und Leseoperationen über die Folder Q, R und S durchführt. Das Feld Q liefert das Kennzeichen für die jeweils nächste Suche an das Feld K und das Feld S liefert Daten an das Feld N für die jeweils nächste Suche. Zunächst sei das Feld M Null und der Speicher läuft leer und wählt die Zeile 1 aus und liest die Felder Q, R und S der Zeile 1 aus, die sämtlichst nur Nullen enthalten. Wenn dagegen eine 1 im Feld H vorliegt und der Operand A gleicnzeitig im Feld P vorliegt, dann wird die Verschiebungsuntertabelle ausgewählt, weil das Feld K OO enthält und das Feld M nunmehr I ist. Wenn A negativ ist, dann ist der Bit höchster Ordnung eine eins- und die Zeile 2 der Tabelle wird ausgewählt mit dem Ergebnis, dass das Q-FeId den Wert 11 hat, unabhängig davon, ob andere Zeilen ausgewählt wurden* Das Feld S enthält nun den Operanten A und dieser gelangt über die Leitung 44 in das Feld N für die nächste Suche. Der Operant B liegt währenddessen im Feld P des Eingabe-Auegaberegisters vor. Im zweiten Speicherzyfclufl mit einem Feld K vom Wert 11, wird zur Eidclusiv-Oder-Untertabelle zugegriffen und Oi e Zellen, die die Exklusiv-Oder-Funktion des Operanten A im Feld H und des Operanden im B im Feld P ergeben, τ/erden für den Lo so Vorgang ausgewählt. Das Ergebnis dieser Operation erscheint im Fold S und wird in das Feld N übertragen. Das Feld Q hat nun den Wert 01 und wählt mithin die Additionsübertrage-Uhtortaföl., um damit die Operation ' in einem dritten Speioherzyklue zu vollenden. Der Operand B wird während dieses Zyklus im Feld P bewahrt. Die Additions-
109823/2033
β P 15 929/UK9-69-OO3
Übertrag-Untertabelle liefert dae Endresultat in das Feld S.
Wenn dagegen der Operand A positiv ist, dann ist der Bit höchster Ordnung keine 1 und die Zeile 2 der Tabelle wird im ersten Zyklus nicht ausgewählt. In diesem Zyklus wird aus dein Q-PeId der Wert IO ausgelesen, womit die Äquivalenz-Untertabelle für den zweiten Zyklus ausgewählt wird. Die Äquivalenz-Untortabelle liefert den Wert 01 im Feld Q und bestimmt damit die Additionsübertrag-Uhtertabeile zur Auswahl für den dritten Zyklus.
" Das Ausgabesteuerfeld hat, wenn das Endergebnis abgegeben wird,
am Ende des ersten Zyklus den Wert 1. Dies kann man als einen Abruf für den Operanden B interpretieren und als eine Ansteige dafür, dass das Ergebnis im PeId S vorliegt.
die Steuerung duroh das Feld M mehr ala einen Bit aufweist, dann ist es möglich, die Tabellen für zwei oder mehr der Zustände miteinander zu kombinieren. Ein entsprechendes Ausführungsbeispiel ist in Figur 8 dargestellt. Der Speicher aus Figur 8 führt die gleichen Operationen wie der Speicher aus Figur 7 aus und weist auch die gleichen Felder auf mit Ausnahme der Tatsache, dass das Feld M zwei Bitpositionen hat. Die Tabellen können nach zwei Anweisungen betrieben werden.
Anweisung 1 t Wenn Ai.0, dann X = B+A, sonst X = B-A
Anweisung 2 s Wean A^O, dann X * B+A, sonst X = B-A.
Die Funktionen, die zur Ausführung dieser beiden Anweisungen erforderlich eind, werden duroh die Untertabellen Additionsübertrag, Äquivalenz und Exfclusiv-Oder durchgeführt. Welche Anvreiöung ausgeführt wird und welcher Xabell.« sinnäahet zugegriffen wird, wird duroh die Zeilen 2 bis 5 äos Speichere entschieden· Wena das Feld M den Wert Ql eatftfilt, dann gilt die
109823/2033
- Ii-- /I P 15 929/UK-69-OO3
Anweisung 1 und aus dem Feld Q der Zeile 2 wird dann der Wert oder aus dem Feld Q der Zeile 3 der Wert 10 ale Kennzeichen für die nächste Suchoperation geliefert, und zwar ^enachdera, welchen Wert der Bit höchster Ordnung des Operanden A hat, den Wert 1 oder den Wert O. Wenn das Feld M den Wert 11 hat, dann wird nach der Anweisung 2 gearbeitet und das Feld Q der Zeile 4 liefert den Wert 10 oder das Feld Q der Zeile 5 liefert den Wert 11, ^e nach dem Wert des höchsten Bit des Operanden A.
Es sei darauf hingewiesen, dass diese Auswahl zu der gleichen Zeit stattfindet, während der Operand.A in das Feld S verschoben wird. Die Anweisungen werden in drei Zyklen durchgeführt, wie sie in Verbindung mit den Figuren 6 und 7 beschrieben worden sind.
Figur 9 zeigt ein Ausführungsbeispiel eines inhaltadressierten Speichers mit selbsttätiger Zugriffsfolge, bei dem die Ausgabe des Speichers in einem Zyklus die Felder bestimmt, über die der nächste Zyklus zu suchen oder auszulesen ist. Der Speicher kann nach der oben beschriebenen Anweisung 1 arbeiten und weist die gleichen Felder und Untertabellen auf wie bei den beiden Beispielen zuvor mit einigen Modifikationen, die im folgenden beschrieben werden. Das Feld S ist nicht an das Feld N angeschlossen. Es ist ein zusätzliches Feld T vorgesehen mit zwei Bitpositionen, dessen Inhalt die Sektionen 45 und 46 eines Maskenregisters steuert, die den Feldern N und S entsprechen, und zwar steuert, der linke Bit dee Feldes T die Maskenregistersektion 45 und der rechte Bit die Maskenregi8terSektion 46. Die Anordnung ist so getroffen, dass, wenn der Bit 1 vorliegt, die von der betreffenden Bitposition gesteuerte Maskenregistersektion das zugehörige Feld S oder N für den Zugriff verfügbar macht, aber nicht für die Suche. Wenn dagegen der Steuerbit eine O ist, dann macht die von diesem Steuerbit gesteuerte Masken-
109823/2033
P 15
registersektion 45 oder 46 das zugehörige Feld N oder S verfügbar für eine Suche, aber nicht für einen Zugriff. Die Felder N und S können also gesteuert durch den Inhalt des Feldes T ihre Funktion austauschen·
Zunächst läuft der Speicher leer und wählt wiederholt die Zeile Das Feld T enthält den Wert 10 und das bedeutet, "dass das Feld N einen Teil des Suchargumentes enthält. Der Operand A wird in das Feld P eingegeben und es liegt nun eine 1 in dem Feld M. Die Folge ist, dass die Verschiebetabelle ausgewählt wird, die den Operanden A an das Feld S des Eingabe~/Ausgaberegisters ab-" gibt und aufgrund des Vorzeichens des Operanden A, wie oben beschrieben, entscheidet, ob nun im nächsten Zyklus die Ä'quivalenz-Untertabelle oder die Exklusiv-Oder-Untertabelle verwendet wird. Der Wert Ol im Feld T veranlasst, dass das Feld S einen Teil des Suchargumentes im nächsten Zyklus liefert. Nachdem das Feld T aus der Äquivalenz-Untertabelle oder der Exfclusiv-Oder-Untertabelle den Wert 10 angenommen hat, ist für den dritten Zyklus das Feld N Teil des Suchargumentes. In der Addi ti onsübertrag-Untor tabelle findet sioh das Ergebnis dann im Feld S*
Das Feld T kann die Abdeckung einzelner Befehle steuern, statt wie beschrieben, die Abdeckung von Befehlsgruppen. Bs kann auch * dazu dienen, einzelne Masken für jeden Teil eines Speicherzyklüs auszuwählen; beispielsweise kann man jeder Befehlsgruppe zwei Bit dee Feldes T zuordnen, von denen einer bestimmt, dass die Befehle während der Suchphase abgedeokt werden und der andere bestimmt, dass die Befehle während der Zugriffsphase abgedeckt werden.
Manchmal ist es notwendig oder wünschenswert, dass ein inhaltadressierter Speicher nur einen Teil einer Operationsfolge ausführt und dann das dabei erzielte Teilergebnis an einen anderen Speioher abgibt, der die Operationsfolge dann vollendet. Speicher
109823/2033
P 15 929/UK9-69-OO3
die in dieser Weise zusammengeschaltet sind, werden im folgenden als stranggeschaltet bezeichnet. Flg. Io zeigt zwei stranggeschaltete Speicher lol und Io2. Die Steuerfelder, die die selbsttätige Zugriffsfolge steuern, sind mit den Buchstaben M, N, K, L, V, W und F bezeichnet. Wenn ein Speicher ein Glied einer Strangschaltung ist, dann ist es unter Umständen nötig, Steuersignale an die jeweils in der Strangschaltung benachbarten Speicher zu übertragen und deshalb sind zwei Ausgabesteuerfelder V und V/ vorgesehen, die dazu dienen, Steuerinformationen abzugeben und es sind zwei Eingab es teuerfei der M und IT vorgesehen, die diese Steuerinformationen aufnehmen. Das Feld K ist das Kennzeichenfeld und das Feld L das Neukennzeichenfeld. Das Feld F ist ein Funktionssteuerfeld. Wie aus Figur Io ersichtlich, ist das Eingabesteuerfeld Nl des Speichers lol an das AusgabeSteuerfeld V2 des Speichers Io2 und das Ausgabesteuerfeld Wl des Speichers lol an das Eingabesteuerfeid M2 des Speichers Io2 angeschlossen. Die Kennzeichenfelder und die Neukennzeichenfelder sind, wie bei dem bisher beschriebenen Ausführungsbeispiel, miteinander verbunden. Der Betrieb des Speichers lol wird bei der nun zu beschreibenden Anwendung nicht verändert, so dass nur der Speicher Io2 ein Steuerfeld F aufweist, das den Dekoder Io3 steuert. Der Speicher lol weist die Datenfelder P, Q und R auf. Das Datenfeld P ist das Eingabedatenfeld, das die Daten von einer äusseren Datenquelle oder von dem Feld Q aufnimmt, während das Feld H das Datenausgabefeld ist. Der Speicher Io2 weist zwei Datenfelder S und T auf, von denen das Datenfeld S das Dateneingabefeld ist, das Daten von dem Feld R aufnimmt, während das Feld ΐ das Datenausgabefeld ist.
Die Daten bestehen jeweils aus acht Bit, von denen jeweils die vier Bit höchster Ordnung den Exponenten und die restliolien Bit einen Dezimalbruch kennzeichnen und das Dezimalkomma unmittelbar links neben dem Bit höchster Ordnung dieses Dezimalbruches
109823/2033
u.
P 15 929/ϋΚ9-β9~οο3
zu setzen ist. Es ergibt sich Normalisation, wenn der Bit höchster Ordnung den Wert 1 hat, ao dass der Dezimalbruch einen Wert zvdsehen 0,5 und 1 annehmen kann. ^Gim dagegen der Bit höchster Ordnung den Wert Null hat, dann muss die Zahl nach links geschoben werden, bis sie, wie angegeben, normalisiert ist und ler Exponent muss dabei jedesmal, also für jede Stelle um die verschoben wird, um eine Einheit reduziert werden.
Die Punktionen, die durch die Speicher lol und Io2 durchgeführt werden, sind im Plussdiagramm der Figur 11 aufgetragen. Der Exponent wird im Speicher lol und der Dezimalbruch im Speicher Io2 gespeichert. Jedesmal, wenn der Dezimalbruch nach links verschoben werden soll, wird der Exponent um eine iüinheit reduziert. Der Speicher lol vollführt bei einem Speioherzyklus eine 3uchoperation und eine Leseoperation jeweils über diejenigen Felder, die angegeben sind. Der Speicher Io2 vollführt, nachdem der Dekoder Io3 aue dem PeId P eine 1 aufgenommen hat, eine Suchoperation/eine Leseoperation jeweils über die angezeigten Felder. Es sei darauf hingewiesen, dass das Feld S Teil sowohl dee Suchfeldes als auch dee Ausleeefeldes ist. Bei einem Zyklus, der stattfindet, nachdem der Dekoder Io3 aus dem PeId P eino ' O aufgenommen hat, vollführt der Speicher Io2 eine Folgeoperation und eine Leeeoperation. Weisse Felder in der Figur bedeuten, mit der Ausnahme derjenigen Felder, wo eine Tabellenangabe eingetragen ist» dass in den Datenzeilen ein X zu schreiben ist. Die Felder M, Ht Kt L, V und W sind in jeder Zeile der Üntertabellen in gleicher Weise mit Datenbite belegt. Es ist dies aber immer nur für eine Zeile in der Figur Io angegeben. Die Pölder P, Q, R, 3 und T enthalten jeweils vier Datenzellen.
Zunächst laufen beide Speicher leer und wählen und lesen die Wörter der Zeile 1. Sobald im PeId Ml eine 1 vorliegt, werden die im Feld P des Elngabe-/Ausgaberegi8terö vorliegenden Daten als Dezimalbruch übernommen. Die Verschiebung i-l/hbertabelle mit
109823/2033
P 15 929/ϋΚ9-69«-οο3
den Zeilen 2 bis 5 des Speichers lol wird nun ausgewählt und die Daten aus dem Feld P werden in das PeId R übertragen. Während der lesephase nimmt das PeId Kl den Wert 01 an und das Ausgabesteuerfeld 71 den Wert 1, das Bingabeeteuerfeld M2 des' Speichers Io2 erhält den Wert 1 und das PeId E wird an das PeId S des Speichers Io2 übertragen. Der Exponent liegt nun von der äusseren Quelle her im PeId P vor. Im nächsten Zyklus wählt der Speicher lol die Verschiebe-Untertabelle der Zeilen 6 bis 9 und überträgt den Exponenten an das Feld Q. Gleichzeitig vollführt der Speicher Io2 mit dem Wert 00 im PeId K2 und dem Wert 1 im PeId M2 eine Such- und üeseoperation über die Zeilen 2 bis 7 durch. ^enn. der Dezimalbruch inzrö.sehen normalisiert ist, wird schliesslich die Zeile 3 oder die Zeile 4 ausgewählt und das PeId L2 nimmt den Wert 11 und das PeId V2 den Viert 0 an. Wenn dagegen der Dezimalbruch noch nicht normalisiert ist, y&rd schliesslich eine der Zeilen 5, 6 oder 7 ausgewählt und das PeId L2 nimmt den Wert 01 an, während das PeId P auf den Wert 0 umgestellt vdrd, womit eine Folgeauslesungsoperation abgerufen wird und das Feld VS bleibt auf O.
Zunächst wird die Operationefolge für die letztgenannte Art beschrieben. Bei Beginn dee nächsten Zyklus wird der Inhalt des Peldes Q in das PeId P des Eingabe-Ausgaberegisters übertragen und es wird eine Suche durchgeführt, wobei das PeId K1 den Wert 10 und das PeId Nl den Wert 0 hat. Darauf werden die Zeilen 10 bis 19 der Verringerungs-Untertabelle ausgewählt, die den Wert des Exponenten im PeId P um eine Einheit reduzieren und das Ergebnis dann an das Feld Q übertragen.
In dem Speicher Io2 findet nun eine Folgeauslesung statt. Es sei angenommen, dass der Dezimalbruch den Wert 0101 hatte, so dass bei dem voraufgegaagenen Zyklus die Zeilen 5 und 7 ausgewählt worden sind. Die Polgeaueleeungsoperation wählt dann die Zeilen
109823/2033
β P 15 929/UK9-69-OO3
6 und 8 aus, die dann ausgelesen «erden. Die Baten im Feld S haben nun den Wert 1010 entsprechend dem normalisierten Dezimaltruch, der nun ganz nach links geschoben ist. Dieser Sachverhalt wird gemeldet durch Auswahl der Zeile 8. Die Zeile 8 veranlasst, dass das Feld V2 den Y/ert 1 annimmt und daraufhin das Feld Nl des Speichere 1öl den Wert 1 annimmt. Die Felder L2 und F nehmen die Werte 11 bzw. 1 an. Mit dem nächsten synchronen Speicherzyklus in dom Speicher lol wird der Exponent vom Feld Q in das Feld R übertragen, und zwar bedingt durch die Auswahl der Zeilen 20 und 23, weil das Feld Nl nunmehr den Wert 1 hat. In dem Speicher Io2 ist nun das Feld K2 auf dem Wert 11 und die Zeilen 11 bis 14 werden ausgewählt, so dass der Dezimalbruch im Feld S an das Feld T übertragen wird, wo er als Ausgabe der Strangschaltung zur Verfügung steht. Im nächsten Zyklus läuft der Speicher lol leer und der Speicher Io2 ydederholt die zuvor abgelaufene Operation. Der Inhalt des Feldes S hat nun den Wert des Exponenten, der von dem Feld B im vor auf gegangenen Zyklus zum Feld S übertragen worden war. Es sei darauf hingewiesen, dass, wenn die Zeile 8 im Versohiebezyklus nicht ausgewählt ist, die Kennzeichen und anderen Steuerinformationen der Speicher nicht geändert werden und der Zyklus wiederholt wird.
Wenn dagegen der Dezimbaibruch normalisiert ist, sobald er das erste Mal im Feld S auftaucht, dann werden die Zeilen 3 oder 4 ausgegriffen und der Dezimalbruch und der Exponent werden anschliessend, wie oben beschrieben, an das Feld T des Speichers Io2 abgegeben.
Die straßggeschalteten Speioher können also so miteinander zusammenwirken, dass ein Speicher Baten abgeben kann an den Operationsdekoder eines anderen Speichers der Strangschaltung.
109823/2033
P 15 929/UK9-69-OO3
Beim letzten Ausführungsbeispiel eines inhaltsadressierten Speichers nach der Erfindung mit selbsttätiger Zugriffsfolge, ist eine Verringerung oder Vermehrung vorgesehen, Zu diesem Ausführungsbeispiel gehört die 54 Zeilen umfassende Tabelle aus Figur 12 und das Flußdiagramm aus Figur 13. In Figur 12 sind an den weißen Datenpositionen jeweils ein X zu schreiben und die eingetragenen Y's kennzeichnen die Datenzellen, die permanent fehlangepasst sind. Sine Zeile mit einem Y kann also bei einer Suchoperation nicht direkt ausgewählt werden. Bas Bingabe-/Ausgaberegister weist die Felder K, F, M, W, P, Q, R,S und C auf un der gesamte Speicher enthält vier Untertafeln» Die Zeilen O bis 2 gehören zur Steuertafel. Die Zeilen 3 bis bilden die Übertragvorhersage-Untertafel. Die Zeilen 15 bis bilden eine Überquer-Untertafel. Die Zeilen 49 bis 53 bilden eine Markierungs-Untertafel. Die Tafel vermehrt schrittweise eine zwanzig Bit umfassende Zahl, die in die Felder P und δ eingegeben wird und liefert das Ergebnis über dieselben Felder ab· Die Grundoperationszyklen sind eine Suche über die Felder K, P, Q, R, 3 und eine Auslesung aber die Felder F, M, W, P, Q, S, S, C. Das Feld F kann eine nächste oder eine vorhergehende Operation in den Zyklus eingliedern, und zwar abhängig davon, ob das Feld in seiner rechten oder linken Position eine 1 enthält. Die Tafel vermehrt das Feld 3 oder, wenn ein Übertrag im Feld E vorhanden ist, verschiebt sie das Feld R in das Feld S und vermehrt um eine Einheit. JUe β er Verschiebe Vorgang wird Überquerung genannt und ist in Figur 13 mit XVR abgekürzt. Die Überquerung kann mehr als einmal stattfinden, wenn der Übertrag durch die Felder Q und P durchgekoppelt worden muss. Am Ende einer solohen Vermehrung werden die Felder zurückversohoben, bis sie sich in ihrer ursprünglichen Position befinden, und zwar durch ein oder mehrere revertierte Überquerungen, die ebenfalls die Redundanten-Binsen entfernen.
109823/2033
P 15 929/ΠΚ9-69-0Ο3
Die Funktion der Markierungs-Untertafel liegt darin, die Überquerungen zu zählen, um sicherzustellen, dass eine gleich große Anzahl revertierter Überquerungen stattfindet. Es sei angenommen, dass vermehrt werden soll die Zahl :
P * Q * O ; R = 00001 ; S = Hill.
Das Kennzeichen lautet 0000. Zunächst findet eine Suche 'ύΐοοτ die Felder K, P, Q, R, S und eine Leseoperation über die Felder F, M, W, P, Q, R, S, C statt. Die Zeilen 1, 13, 42 und 49 bis 53 werden ausgewählt s
F = 01, M a 111, W - 111, P = Q = O, R= 00001, S =* Hill, und C = I.
Der Steuerbit im Feld ö wird durch den nicht dargestellten Speicherdekoder interpretiert als eine Information, die Maske der Suchoperation an den Feldern K, M, W, P, Q, R, S und der Leseoperation der Felder P, M, W, P, Q, R, S zu ändern. Der Wert 01 des Feldes F wird dahingehend interpretiert, dass eine Folgeauslesungsoperation im nächsten Zyklus eingesetzt werden muss. Während dieses Zyklus wird festgestellt, dass die Zeilen 13, 19, 25, 31, 37, 42, 43 und 49 mit dem Suchargument übereinstimmen, aber da es sich um eine Folgeauslesung handelt, werden die Zeilen 14, 2o, 26, 32, 38, 43, 44 und 5o ausgelesen. Die Auswahl der Zeile 13 zeigt an, dass eine Übertragausgabe vorliegt. Am Ende dieses Zyklus stehen in dem Eingabe-Ausgaboregister
F = 01, M - 100, W = 111, P = Hill, Q = R=O, S = 00001,
wurde eine rechtsgerichtete Verschiebung der Folder P und S durchgeführt. WUhrend des nächsten Zyklus v/erden die Funktionen dos voraufgehenden Zyklus wiederholt, aber es wird
109 8 2 3/2033
P 15 929/UK9-69-O03
nun festgestellt, dass in dem Feld S keine Übertragausgabe mehr vorliegt.
Die Zeilen, die nun angepasst sind, sind die Zeilen 5, 16, 22, 28, 34, 4o und 5o. Ausgelesen werden die Zeilen 6, 17, 23, 29, 35, 41 und 51. Am Ende dieses Zyklus steht im Eingabe-/Ausgaberegister
F = 10, M = Oll, ff = 001, P = 00011, Q = 11111, S=E-O,
Das Feld P wird interpretiert als Anforderung dafür, dass die voraufgegangenen Informationen in den OperatLonezyklus eingegliedert werden sollen· Im folgenden Zyklus sind die Zeilen 1, 17, 23, 29, 34f 35, 38, 41 und 51 an das Suchargument angepasst, so dass die Zeilen 0, 16, 22, 28, 33, 34, 37, 4o und 5o ausgelesen werden· Das E±ngabe-/Ausgakeregister enthält nun F a 10, H β 100, W » 110, P » 11111, Q =* R = 0, S * 00010,
Bin nach links gerichteter Verschie"bezyklus eines Datenfeldes hat nun stattgefunden und die redundanten Einsen in dem Feld S sind entfernt worden·
Am Schluss werden die Funktionen des letzten Zyklus wiederholt. Die angepassten Zeilen lauten 16* 22, 28, 34, 37» 4o und 5o und die ausgewahx-cen Zeilen 15, 21, 27, 33, 36, 39 und 49. Im Eingabe/Ausgaberegister steht nun am finde dieses Zyklus IT « 00, M » 111, W « 111, P μ Q « 0, fi « 00010, 3*0, C * 1.
Der Konditionsbit im Feld C zeigt an, dass die Operation vollendet ist.
109823/2033
flt© P 15 929/UK9-69-OO3
Die Tabelle kann expandiert werden, um auch Verringerungen durch addieren von Zeilen gemäß Figur 14 zu ermöglichen. Das Kennzeichen für eine solche Verringerung lautet 0001.
109823/2033

Claims (8)

  1. meine Akte : P 15 929 Docket i UK9-69-OO3
    ANSPRUCH
    (l/ Inhaltsadressierter Speicher rait eelbettätiger Zugriffsfolge, gekennzeichnet durch eine Vielzahl von Wortregistern (O bis 19) und ein für alle diese Wortregister gemeinsames iäingabe-/Ausgaberegister (11) mit einem Suchfeld für das Suchargument und einem Lesefeld, und bei dem ein (Teil des Lesefeldee ale Ueukenneeiehen über eine Datenleitung (25) an einen für ein Kennzeichen vorgesehenen iCeil des Suchfeldes angeschlossen ist, und dass das Suchargumenfc aus dem Kennzeichen und einer in das Suchfeld eingespeisten Eingabe (Pl, P2, Ql, Q2) gebildet wird.
    109823/2033
    M.
    P 15 929
  2. 2. Speicher nach Anspruch 1, dadurch gekennzeichnet, daß die einzelnen Bitzellen jedes Wortregisters eineindeutig denen der anderen Wortregister und denen des Eingabe-/Ausgaberegister zugeordnet sind in der Weise, daß beim Suchen die in den Bitzellen des Suchfeldes vorhandenen Bits des Suchargumentes auf die Bits der diesen zugeordneten Bitzellen der Wortregister angewendet verden und auch nur auf diese undcaß beim Lesen die Bits aus den den Bitzellen des Lesefeldes zugeordneten Bitzellen des durch das Suchargument adressierten Wortregisters in die zugeordneten Lesefeldbitzellen übertragen verden.
  3. 3. Speicher nach Anspruch 2, dadurch gekennzeichnet, daß bei gleichzeitiger Adressierung mehrerer Wortregister durch das Suchargument die Bits der den Lesefeldzellen zugeordneten Bitzellen dieser Wortregister zeilenweise geodert in die zugeordneten Lesefeldzellen des Eingabe-/Ausgaberegisters übertragen werden.
  4. 4. Speicher nach Anspruch 2 und 3, dadurch gekennzeichnet, daß mindestens ein Wortregister als Fehlerwortregister vorgesehen ist, dessen den Suchfeldzellen des Eingabe-/Ausgaberegister entsprechende Bitzellen so bespeichert sind, daß sie mit fehlerfreien Suchargumenten nicht tibereinstimmen und dessen den Neukennzeichenzellen des Eingabe-/Ausgaberegisters entsprechende Bitzellen in der gleichen Weise wie die in dem Kennzeichenfeld zugeordneten Bitzellen bespeichert sind und dessen den Ausgabezellen des Lesefeldes des Eingabe-/Ausgaberegisters zugeordnete Bitzellen mit einer Fehlercode aus ausschließlich bei der ODER-Verknüpfung dominanten Zeichen (im Binären 1,1.«.) bespeichert sind«
    109823/2033
    α«
    Ρ 15 929
  5. 5. Speicher nach einem der vorhergehenden Ansprüche. dadurch gekennzeichnet, daß das Lesefeld genau soviele Neukennzeichenzellen aufweist, wie das Suchfeld Kennzeichenzellen und daß diese Zellen einander eindeutig zugeordnet sind in der Weise, daß die Bits aus einer Neukennzeicfc^nzelle in die dieser zugeordnete Kennzeichenzelle und nur in diese übertragen werden.
  6. 6. Speicher nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß einige dem Lesefeld zugeordnete Bitzellen der Wortregister offengelassen sind mit der Wirkung, daß bei Anwendung des Suchargumentes solche Bitzellen keine Bedeutung haben.
  7. 7. Speicher nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß ein weiteres Eingabe-/Ausgaberegister mit den gleichen Feldern wie das erste vorgesehen ist» dessen Bitzellen denen der Wortregister in gleicher Weise wie die der ersten zugeordnet sind und dadurch daß zwischen den beiden Eingabe-/' Ausgaberegistern Datenaustausch möglich ist.(Figur 5}
  8. 8. Speicher nach einem oder mehreren der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß ein zweiter Speicher nach einem der vorhergehenden Ansprüche vorgesehen ist und daß Datenaustausch zwischen den Eingabe-/Ausgaberegistern der beiden Speicher ermöglicht ist. (Figur 10)
    109823/2033
    Leerseite
DE19702057587 1969-11-27 1970-11-24 Inhaltsadressierter Speicher Pending DE2057587A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB5798369 1969-11-27

Publications (1)

Publication Number Publication Date
DE2057587A1 true DE2057587A1 (de) 1971-06-03

Family

ID=10480517

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19702057587 Pending DE2057587A1 (de) 1969-11-27 1970-11-24 Inhaltsadressierter Speicher

Country Status (5)

Country Link
US (1) US3681762A (de)
JP (1) JPS4827486B1 (de)
DE (1) DE2057587A1 (de)
FR (1) FR2068679B1 (de)
GB (1) GB1229717A (de)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3800286A (en) * 1972-08-24 1974-03-26 Honeywell Inf Systems Address development technique utilizing a content addressable memory
US3924243A (en) * 1974-08-06 1975-12-02 Ibm Cross-field-partitioning in array logic modules
US4327407A (en) * 1979-02-26 1982-04-27 Sanders Associates, Inc. Data driven processor
JPH0789337B2 (ja) * 1985-10-30 1995-09-27 株式会社日立製作所 分散ファイル回復方法
US6842360B1 (en) 2003-05-30 2005-01-11 Netlogic Microsystems, Inc. High-density content addressable memory cell
US7174419B1 (en) 2003-05-30 2007-02-06 Netlogic Microsystems, Inc Content addressable memory device with source-selecting data translator
US6856527B1 (en) 2003-05-30 2005-02-15 Netlogic Microsystems, Inc. Multi-compare content addressable memory cell
US8326831B1 (en) 2011-12-11 2012-12-04 Microsoft Corporation Persistent contextual searches

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3349375A (en) * 1963-11-07 1967-10-24 Ibm Associative logic for highly parallel computer and data processing systems
US3320594A (en) * 1964-03-10 1967-05-16 Trw Inc Associative computer
US3391390A (en) * 1964-09-09 1968-07-02 Bell Telephone Labor Inc Information storage and processing system utilizing associative memory
US3395393A (en) * 1965-09-14 1968-07-30 Bell Telephone Labor Inc Information storage system
US3483528A (en) * 1966-06-20 1969-12-09 Bunker Ramo Content addressable memory with means for masking stored information
GB1218406A (en) * 1968-07-04 1971-01-06 Ibm An electronic data processing system
US3576436A (en) * 1968-10-16 1971-04-27 Ibm Method and apparatus for adding or subtracting in an associative memory

Also Published As

Publication number Publication date
GB1229717A (de) 1971-04-28
JPS4827486B1 (de) 1973-08-23
FR2068679B1 (de) 1975-06-06
US3681762A (en) 1972-08-01
FR2068679A1 (de) 1971-08-27

Similar Documents

Publication Publication Date Title
DE2714805C2 (de)
DE1931966C3 (de) Datenverarbeitungsanlage mit Assoziativspeichern
DE2424820C3 (de) Einrichtung zur Durchsuchung eines Datenspeichers
CH650600A5 (de) Zentralprozessoreinheit einer datenverarbeitungsanlage mit operationscode-erweiterungsregister.
DE1269393B (de) Mikroprogramm-Steuerwerk
DE1178623B (de) Programmgesteuerte datenverarbeitende Maschine
DE2339636A1 (de) Programmsteuereinrichtung
DE1474062B2 (de) Datenverarbeitungsanlage mit einer anzahl von pufferspeichern
DE1190706B (de) In zwei abwechselnden Zyklen arbeitende programmgesteuerte elektronische digitale Rechenmaschine
DE2900586C2 (de) Anordnung zum Decodieren von Codewörtern variabler Länge
DE2057587A1 (de) Inhaltsadressierter Speicher
DE2403039C2 (de) Einrichtung zur Befehlsausführung in einer adressenerweiterten elektronischen Datenverarbeitungsanlage
DE1956460C3 (de) Datenverarbeitungsanlage mit Assoziativspeichern
DE2245284A1 (de) Datenverarbeitungsanlage
DE2311503A1 (de) Datenverarbeitungsanlage mit mehreren zentraleinheiten
DE2235883C3 (de) Datenverarbeitungseinrichtung
CH495584A (de) Datenverarbeitungsanlage
DE2164718A1 (de) Verfahren und Datenverarbeitungsanlage zur Steuerung einer Vielzahl von Eingabe/Ausgabe-Einheiten mittels einer Zentraleinheit
DE1296429B (de) Datenbearbeitungsanlage
DE1222289B (de) Datenverarbeitungseinrichtung
DE1296427B (de) Datenbearbeitungssystem
DE2402875A1 (de) Steuersystem, insbesondere fuer verriegelungseinrichtungen fuer den eisenbahnbetrieb
DE1808159A1 (de) Einrichtung zur Umwandlung von Dualzahlen in binaer codierte Dezimalzahlen in paralleler Darstellung
DE2150292C2 (de) Mikroprogrammgesteuerte Datenverarbeitungsanlage mit überlagerter Ausführung und Entnahme von Befehlen
DE2033709A1 (de) Assoziativspeicheranlage