DE2057587A1 - Inhaltsadressierter Speicher - Google Patents
Inhaltsadressierter SpeicherInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/50—Adding; Subtracting
- G06F7/505—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
- G06F7/5057—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination using table look-up; using programmable logic arrays
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/38—Indexing scheme relating to groups G06F7/38 - G06F7/575
- G06F2207/48—Indexing scheme relating to groups G06F7/48 - G06F7/575
- G06F2207/4802—Special implementations
- G06F2207/4804—Associative 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
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.
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,
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,
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)
- meine Akte : P 15 929 Docket i UK9-69-OO3ANSPRUCH(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/2033M.P 15 929
- 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. 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. 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. 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. 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. 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. 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/2033Leerseite
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)
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)
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 |
-
1969
- 1969-11-27 GB GB5798369A patent/GB1229717A/en not_active Expired
-
1970
- 1970-09-28 FR FR7036309A patent/FR2068679B1/fr not_active Expired
- 1970-10-19 US US82043A patent/US3681762A/en not_active Expired - Lifetime
- 1970-11-02 JP JP45096007A patent/JPS4827486B1/ja active Pending
- 1970-11-24 DE DE19702057587 patent/DE2057587A1/de active Pending
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 |