DE3902425A1 - Inhaltsgesteuerte speichervorrichtung (cam) und betriebsverfahren - Google Patents
Inhaltsgesteuerte speichervorrichtung (cam) und betriebsverfahrenInfo
- Publication number
- DE3902425A1 DE3902425A1 DE3902425A DE3902425A DE3902425A1 DE 3902425 A1 DE3902425 A1 DE 3902425A1 DE 3902425 A DE3902425 A DE 3902425A DE 3902425 A DE3902425 A DE 3902425A DE 3902425 A1 DE3902425 A1 DE 3902425A1
- Authority
- DE
- Germany
- Prior art keywords
- word
- data
- search
- input
- output control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90339—Query processing by using parallel associative memories or content-addressable memories
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Static Random-Access Memory (AREA)
Description
Die Erfindung betrifft eine inhaltsgesteuerte Speichervorrichtung
und im besonderen eine inhaltsgesteuerte Speichervorrichtung, bei
der der Suchbetrieb besser durchgeführt werden kann.
Eine inhaltsgesteuerte Speichervorrichtung (im nachfolgenden als
CAM abgekürzt, CAM = Content Addressable Memory) ist auch unter
der Bezeichnung Assoziativspeicher bekannt, der zum Auffinden
einer Stelle, bei der der Inhalt gespeichert ist, einen Teil des
Inhalts zur Bestimmung verwendet und den verbleibenden Inhalt
herausnimmt.
Insbesondere vergleicht der CAM die in jeder Speicherzelle des
CAM gespeicherten Daten mit den für die Suche verwendeten Such
daten und, falls diese miteinander übereinstimmen, gibt der CAM
die benötigte Information aus der Adresse aus, wo die Überein
stimmung auftritt.
Üblicherweise werden Daten durch einen externen, normalen Schreib
betrieb in das Speicherzellenfeld des CAM geschrieben. In einigen
Fällen jedoch können einige in dem Speicherzellenfeld des CAM
gespeicherte Daten extern nicht ermittelt werden. Des weiteren
wird manchmal das Vorhandensein der unbekannten Daten nicht er
wünscht. Wenn nämlich die Suchdaten an das Speicherzellenfeld
angelegt werden, können die gespeicherten Daten möglicherweise
mit den Suchdaten übereinstimmen. In diesem Fall kann eine
korrekte Suchinformation nicht erhalten werden.
Sogar wenn alle Speicherzellen in dem Feld des CAM durch ein
Signal "0" rückgesetzt werden, wenn die Suchdaten mit allen
Signalen auf "0" an das Speicherzellenfeld angelegt werden, um
das Problem zu lösen, stimmen diese Daten miteinander überein
und verursachen ein unkorrektes Suchergebnis.
Wie oben beschrieben, weist ein CAM einen Nachteil auf, daß das
Ergebnis der Suche nicht immer korrekt ist. Zusätzlich wird eine
komplizierte Steuerung des CAM benötigt, um den oben erwähnten
Nachteil zu vermeiden.
Fig. 1 zeigt ein Blockdiagramm eines LSI-Assoziativspeichers, der
von Takeshi Ogura et. al., Journal of Institute of Electronics
and Communication Engineers of Japan (semiconductor transistor),
1. Dezember 1983, veröffentlicht wurde.
Gemäß Fig. 1 weist der Assoziativspeicher ein Zellenfeld 90, ein
Bitleitungssignalverarbeitungssystem 91, das mit dem Zellenfeld
90 verbunden ist, und ein Wortleitungssignalverarbeitungssystem
92, das mit dem Zellenfeld 90 verbunden ist, auf. Das Wortlei
tungssignalverarbeitungssystem 92 weist eine Schreib-Freigabe-
Marke 93 auf, die für jede der Worte in dem Zellenfeld 90 anzeigt,
ob der Wert des Wortes notwendig ist oder nicht. Durch Suchen der
Schreib-Freigabe-Marke 93 kann ein Wort, das geschrieben werden
kann (d. h. die Daten müssen nicht gehalten werden), aus dem Zel
lenfeld 90 gefunden werden. Wenn neue Daten geschrieben werden
sollen, kann daher das geschriebene Wort leicht gefunden werden,
ohne die Adresse des Zellenfeldes durch die CPU zu bestimmen
oder anzusteuern. Bei diesem Vorgang braucht nämlich die Adresse
nicht von außerhalb des Assoziativspeichers angesteuert zu wer
den.
Der dargestellte Assoziativspeicher dient zur Vereinfachung der
Steuerung des Schreibbetriebes, und nicht zur Lösung der oben
beschriebenen Probleme beim Suchbetrieb. Obwohl die Schreib-
Freigabe-Marke 93 nicht im Detail beschrieben ist, scheint diese
eine Ansammlung von Registern zu sein, die getrennt vom Zellen
feld 90 vorgesehen ist, wobei eine Steuerschaltung zum Steuern
der Schreib-Freigabe-Marke getrennt benötigt wird.
Die "Japanese Patent Laying-Open Gazette" Nr. 74 889/1982 offen
bart ein ähnliches System wie das aus Fig. 1.
Ein weiteres, interessantes Beispiel geht aus C. V. Ramamoorthy
et. al., "Design of a Fast Cellular Associative Memory for
Ordered Retrieval", Sept. 1978, IEEE Transactions on Computers,
Vol. C-27, Nr. 9 hervor. Dieser Aufsatz zeigt ebenfalls ein
separat von dem Speicherzellenfeld vorgesehenes Merkregister für
jedes Wort. Wenn ein Register als ein Merkelement verwendet wird,
muß wie oben beschrieben eine getrennte Steuerschaltung zum
Steuern dieses Registers vorgesehen werden.
Ein weiteres, interessantes Beispiel ist von Hiroshi Kadota et.
al., "An 8-K bit Content-Addressable and Reentrant Memory" Okt.
1985, IEEE Journal of Solid-State Circuits, Vol. SC-20, Nr. 5
dargestellt. In diesem Aufsatz ist der Speicherbereich des Spei
cherzellenfeldes in einen besetzten Bereich, in den Daten ge
schrieben werden, und einen nichtbesetzten Bereich, in den keine
Daten geschrieben werden, aufgeteilt. Ein Verfahren zur wirksamen
Verwaltung des Speicherbereiches des CAM durch Steuern des
Schreibbetriebes in die besetzten und nichtbesetzten Bereiche
wird beschrieben.
Aufgabe der Erfindung ist es, den Suchbetrieb in einer inhalts
gesteuerten Speichervorrichtung (im folgenden einfach als CAM
bezeichnet) korrekt durchzuführen.
Aufgabe der Erfindung ist es ferner, den Suchbetrieb in einer
CAM-Vorrichtung unter Verwendung eines Merksignales, das anzeigt,
ob jedes Wort sich in einem Datenschreibzustand oder in einem
freien Zustand befindet, korrekt durchzuführen.
Aufgabe der Erfindung ist es auch, den Suchbetrieb in einer CAM-
Vorrichtung durch Speichern eines Merksignales, das den Wortdaten
schreibzustand oder den freien Zustand in einem CAM-Zellenfeld
anzeigt, korrekt durchzuführen.
Aufgabe der Erfindung ist es schließlich, den Suchbetrieb in
einer CAM-Vorrichtung korrekt durchzuführen, ohne zusätzlich
komplizierte Steuerschaltungseinrichtungen vorzusehen.
Diese Aufgabe wird durch eine CAM-Vorrichtung gelöst, die auf
weist: eine vorbestimmte Spalte in einem CAM-Zellenfeld, die eine
Merk-Speicherschaltung bildet, eine erste Ein-/Ausgangssteuer
schaltung zur Ein- und Ausgabe von Daten an das CAM-Zellenfeld,
eine zweite Ein-/Ausgangssteuerschaltung zur Eingabe eines Signa
les an die Merk-Speicherschaltung, das anzeigt, ob sich jedes
Wort im CAM-Zellenfeld in einem Datenschreibzustand oder einem
freien Zustand befindet, eine Rücksetzschaltung zum Schreiben des
Merksignales, das den freien Zustand für alle Worte der Merk-
Speicherschaltung anzeigt, eine Freiwortsuchschaltung zum Nach
weisen eines freien Wortes durch Suchen in der Merk-Speicher
schaltung durch die Merksignale von der zweiten Ein-/Ausgangs
steuerschaltung, eine Datenschreibschaltung zum Schreiben der
Daten von der ersten Ein-/Ausgangssteuerschaltung in das freie
Wort des CAM-Zellenfeldes und zum gleichzeitigen Schreiben des
Merksignales, das den Datenschreibzustand anzeigt, in den ent
sprechenden Abschnitt der Merk-Speicherschaltung, und eine
bestimmte Wortsuchschaltung zum Nachweisen eines bestimmten Wor
tes durch Suchen in dem CAM-Zellenfeld mit den Suchdaten von der
ersten Ein-/Ausgangssteuerschaltung und gleichzeitig Suchen in
der Merk-Steuerschaltung mit dem Merksignal von der zweiten Ein-
/Ausgangssteuerschaltung.
Beim Rücksetzbetrieb wird das Merksignal, das den freien Zustand
anzeigt, von der zweiten Ein-/Augangssteuerschaltung für alle
Worte durch die Rücksetzschaltung in die Merk-Speicherschaltung
geschrieben. Beim Schreibbetrieb weist die Freiwortsuchschaltung
das freie Wort nach. Die Datenschreibschaltung schreibt die Daten
von der ersten Ein-/Ausgangssteuerschaltung in das freie Wort in
dem CAM-Zellenfeld und schreibt gleichzeitig das Merksignal, das
den Datenschreibzustand anzeigt, in den entsprechenden Abschnitt
der Merk-Speicherschaltung. Beim Suchbetrieb führt die Bestim
mungswortsuchschaltung eine Suche in dem CAM-Zellenfeld mit den
Daten von der ersten Ein-/Ausgangssteuerschaltung durch und führt
gleichzeitig eine Suche in der Merk-Steuerschaltung mit dem
Merksignal von der zweiten Ein-/Ausgangssteuerschaltung durch.
Damit kann ein bestimmtes Wort von Worten, die in der Merk-
Speicherschaltung gespeichert sind, mit einem Merksignal, das den
Datenschreibzustand anzeigt, korrekt nachgewiesen werden. Da die
ersten und zweiten Ein-/Ausgangssteuerschaltungen für den Zugriff
des CAM-Zellenfeldes vorgesehen sind, ist es des weiteren nicht
notwendig, zusätzliche, komplizierte Schaltungen für die zweite
Ein-/Ausgangssteuerschaltung vorzusehen.
In einer weiteren Ausführungsform der Erfindung ist ein Betriebs
verfahren für eine CAM-Vorrichtung vorgesehen, die eine in einem
CAM-Zellenfeld vorgesehene, vorbestimmte Spalte, die eine Merk-
Speicherschaltung bildet, eine erste Ein-/Ausgangssteuerschaltung
zur Ein- und Ausgabe von Daten an das CAM-Zellenfeld, und eine
zweite Ein-/Ausgangssteuerschaltung zur Eingabe eines Signales an
die Merk-Speicherschaltung, das anzeigt, ob sich jedes Wort in
dem CAM-Zellenfeld in einem Datenschreibzustand oder einem freien
Zustand befindet, aufweist, wobei das Verfahren die Schritte auf
weist: Schreiben eines Merksignales zum Zurücksetzen, das einen
freien Zustand für alle Worte anzeigt, in die Merkspeicherschal
tung, Nachweisen des freien Wortes durch Suchen in der Merk-
Speicherschaltung mit dem Merksignal von der zweiten Ein-/Ausgangs
speicherschaltung, Schreiben des Wertes von der ersten Ein-
/Ausgangssteuerschaltung in das freie Wort des CAM-Zellenfeldes
und gleichzeitig Schreiben das Merksignal, das den Datenschreib
zustand anzeigt, in den entsprechenden Abschnitt in die Merk-
Speicherschaltung, und Nachweisen eines bestimmten Wortes durch
Suchen in dem CAM-Zellenfeld mit den Suchdaten von der ersten
Ein-/Ausgangssteuerschaltung und gleichzeitiges Suchen in der
Merk-Speicherschaltung mit dem Merksignal von der zweiten Ein-
/Ausgangssteuerschaltung.
Entsprechend diesem Verfahren kann ein bestimmtes Wort korrekt
bei dem Suchbetrieb, wie oben beschrieben, nachgewiesen werden.
Des weiteren ist es nicht notwendig, eine zusätzliche, kompli
zierte Schaltung als zweite Ein-/Ausgangssteuerschaltung vorzuse
hen.
Weitere Merkmale und Zweckmäßigkeiten dieser Erfindung ergeben
sich aus der Beschreibung von Ausführungsbeispielen anhand der
Figuren. Von den Figuren zeigt
Fig. 1 ein Blockdiagramm eines LSI-Assoziativspeichers;
Fig. 2 ein Blockdiagramm eines inhaltsgesteuerten Speichers
entsprechend eines Ausführungsbeispieles dieser Erfindung;
Fig. 3A bis 3F schematische Darstellungen der Änderung der in die
Merk-Bit-Spalte und das Datenfeld geschriebenen Daten zur
Veranschaulichung der Betriebsweise des Speichers aus Fig. 2;
Fig. 4 eine schematische Darstellung eines Beispieles der Merk-
Bit-Spalte und des Datenfeldes, die in einer Ausführungs
form dieser Erfindung verwendet werden;
Fig. 5 ein schematisches Diagramm eines Beispieles eines Merk-
Bit-Steuerabschnittes und eines Lesen/Schreiben-Steuer
abschnittes, die in einer Ausführungsform dieser Erfindung
verwendet werden;
Fig. 6 ein schematisches Diagramm eines Beispieles eines Antwort
registers und einer Vorrangschaltung, die in einer Aus
führungsform dieser Erfindung verwendet werden;
Fig. 7 ein schematisches Diagramm eines Beispieles einer Wortlei
tungssteuerschaltung, die in einer Ausführungsform dieser
Erfindung verwendet wird; und
Fig. 8A bis 8F Flußdiagramme der Steuerung des in Fig. 2 ge
zeigten inhaltsgesteuerten Speichers.
Fig. 2 zeigt ein Blockdiagramm eines Ausführungsbeispieles einer
inhaltsgesteuerten Speichervorrichtung (im folgenden mit CAM
abgekürzt) entsprechend dieser Erfindung.
Gemäß Fig. 2 weist der CAM auf: Ein Datenfeld 2, in dem das Lesen
und das Schreiben von Daten durchgeführt wird, einen Lesen/Schrei
ben-Steuerabschnitt 1 zur Ein-/Ausgabe von Daten und von Such
daten mit einer Zeitsteuerung, die zu und von dem Datenfeld 2
über Datenbitleitungen B 1 bis Bn gesteuert wird, eine Merk-Bit-
Spalte 12 zum Speichern eines Merksignales, das den Schreib
zustand von jedem Wort anzeigt, und einen mit dem Lesen/Schreiben-
Steuerabschnitt 1 gekoppelten Merk-Bit-Steuerabschnitt 11 zur
Ein-/Ausgabe eines Merksignales mit einer Zeitsteuerung, die über
eine Merk-Bit-Leitung B 0 an die Merk-Bit-Spalte 12 gesteuert
wird. Das Datenfeld 2 und die Merk-Bit-Spalte 12 sind in einem
Speicherzellenfeld des CAM vorgesehen.
Der CAM weist ferner auf: Ein Antwortregister 3, das die von der
Merk-Bit-Spalte 12 und von dem Datenfeld 2 ausgegebenen Such
signale zum Durchführen der Suche empfängt und zeitweise das
Ergebnis speichert, eine Vorrangschaltung 4, die eines aus einer
Mehrzahl von Ergebnissen, die auf Grund der Suche entsprechend
einer vorbestimmten Logik erhalten werden, bestimmt, eine Wort
leitungssteuerschaltung 6 zum Treiben und Steuern von Wortleitun
gen W 1 bis Wm und eine Steuerung 5, die Zeitsteuersignale Φ 1 bis
Φ 5 ausgibt.
Die Steuerung 5 weist beispielsweise einen Hostprozessor auf, der
einen Programmzähler 51, ein Befehls-ROM 52, ein Befehlsregister
53 und einen Befehlsdekoder 54 aufweist. Die Steuersignale Φ 1 bis
Φ 5 werden vom Befehlsdekoder 54 auf Grund des im Befehls-ROM 52
gespeicherten Programmes ausgegeben.
In Fig. 2 ist der Speicher 7 über Wortleitungen W 1 bis Wm, wie
durch Punkte gezeigt, mit der Vorrangschaltung 4 verbunden, wobei
der Ein-/Ausgang der Daten über einen Ein-/Ausgangspuffer 8 für
das von der CAM bestimmte Wort durchgeführt wird.
Die Steuersignale Φ 1 bis Φ 5 weisen jeweils verschiedene Steuer
signale auf, die allgemein durch die Bezugszeichen Φ 1 bis Φ 5 in
Fig. 2 bezeichnet sind. Obwohl die Wortleitungen W 1 bis Wm neben
den jeweiligen Wortleitungen Signalleitungen aufweisen, wurden
die Signalleitungen in der Figur weggelassen. Einzelheiten erge
ben sich später aus der genauen Beschreibung jedes Blockes unter
Bezugnahme auf Fig. 4 bis 7.
Im folgenden wird der allgemeine Betrieb beschrieben.
Wenn zuerst ein Rücksetzsignal Φ 5 von der Steuerschaltung 5 an
die Wortleitungssteuerschaltung 6 angelegt wird, werden alle
Wortleitungen W 1 bis Wm ausgewählt. Dabei legt der Merk-Bit-
Steuerabschnitt 11 Binärdaten "0" (Merksignal zum Rücksetzen) auf
die Bitleitung B 0 als Reaktion auf das Steuersignal Φ 1 an. Die
über die Bitleitung B 0 mit dem Merk-Bit-Steuerabschnitt 11 ver
bundene Merk-Bit-Spalte 12 empfängt Daten "0" und wird unter
Einschreibung der Daten "0" zurückgesetzt ("Reset"). Damit ist
der Rücksetzbetrieb abgeschlossen. An dieser Stelle sind die in
das Datenfeld 2 geschriebenen Daten unbekannt. Dies hat jedoch
keinen Einfluß auf den nachfolgenden Betrieb, wie später beschrie
ben wird.
Im folgenden wird der Datenschreibbetrieb beschrieben. Unmittel
bar nach Abschluß des Rücksetzbetriebes befinden sich alle Worte
im freien Zustand (die benötigten Daten werden nicht geschrie
ben). Im allgemeinen existieren jedoch belegte Worte (in die die
nötigen Daten geschrieben sind) und freie Worte zusammen, wenn
der CAM verwendet wird. Daher wird zu Beginn des Lesebetriebes
der Nachweis des freien Wortes durchgeführt.
Der Nachweis des freien Wortes wird mit dem Wert "0" durchge
führt, der von dem Merk-Bit-Steuerabschnitt 11 an die Merk-Bit-
Spalte 12 angelegt ist, wobei das Datenfeld maskiert ist. Folg
lich wird das Wort, das den Wert "0" in der Merk-Bit-Spalte 12
hält, das heißt das freie Wort, durch das Antwortregister 3
nachgewiesen. In diesem Falle erhält man im allgemeinen eine
Mehrzahl von Ergebnissen der Suche, so daß die Vorrangschaltung 4
daraus ein Wort auswählt.
Die Wortleitungssteuerschaltung 6 wählt die Wortleitung des aus
gewählten Wortes aus. Dabei gibt der Lesen/Schreiben-Steuer
abschnitt 1 die zu schreibenden Daten auf den Datenbitleitungen
B 1 bis Bn aus, während der Merk-Bit-Steuerabschnitt 11 den Wert
"1" (der Wert "1" ist ein Merksignal, das anzeigt, daß das Wort
geschrieben wurde) auf die Merk-Bit-Leitung B 0 ausgibt. Folglich
wird der Wert in das Datenfeld 2 geschrieben und gleichzeitig
wird der Wert "1" in die Merk-Bit-Spalte 12 für das oben beschrie
bene, ausgewählte Wort geschrieben.
Beim Suchbetrieb gibt zuerst der Merk-Bit-Steuerabschnitt 11 den
Wert "1" auf die Bitleitung B 0 aus und gleichzeitig gibt der
Lesen/Schreiben-Steuerabschnitt 1 die Suchdaten auf die Bitlei
tungen B 1 bis Bn aus. Folglich wird der Suchbetrieb gleichzeitig
für die Merk-Bit-Spalte 12 und für alle Bitleitungen B 0 bis Bn im
Datenfeld durchgeführt. Die Suche für die Merk-Bit-Spalte 12 wird
durch den Wert "1" durchgeführt, so daß das Wort, das den Wert
"0" hält, d. h. das freie Wort in der Merk-Bit-Spalte 2, nicht
gesucht wird, auch wenn ein Wert, der mit dem Suchwert überein
stimmt, in dem Datenfeld 2 gespeichert wird.
Da im allgemeinen eine Mehrzahl von Worten gesucht wird, hält
das Antwortregister 3 die Ergebnisse der Suche zeitweise, und ein
Ergebnis der Suche wird durch die Vorrangschaltung 4 bestimmt.
Beim Wortlöschbetrieb wird das zu löschende Wort zuerst gesucht.
Der Suchbetrieb wird in ähnlicher Weise wie beim oben beschriebe
nen Suchbetrieb durchgeführt. Wenn jedoch sämtliche der gesuchten
Worte gelöscht werden sollen, wird der oben beschriebene Betrieb
der Vorrangschaltung 4 weggelassen. Dann wird der Wert "0" in die
Merk-Bit-Spalte 12 des Wortes geschrieben, das vom Suchbetrieb
erhalten wurde.
Die Fig. 3A bis 3F zeigen schematisch die Änderung der Inhalte
in der Merk-Bit-Spalte und dem Datenfeld des in Fig. 2 gezeigten
CAM. Der Einfachheit halber ist das Datenfeld 2 mit zehn Datenbit
leitungen B 1 bis B 10 (d. h. n = 10) und acht Wortleitungen W 1 bis W 8
(d. h. m = 8) verbunden.
Fig. 3A zeigt den Zustand der Merk-Bit-Spalte 12 und des Daten
feldes 2 vor dem Rücksetzen. Das Bezugszeichen X zeigt an, daß
der gespeicherte Inhalt unbekannt ist. Damit sind in Fig. 3A
sämtliche Inhalte, die in den Speicherzellen gespeichert sind,
unbekannt.
Fig. 3B zeigt den Zustand nach dem Rücksetzen. Die Merk-Bit-
Spalte 12 wird durch den Wert "0" zurückgesetzt. Dabei bleiben
die Inhalte im Datenfeld 2 unbekannt.
Falls die Suche von freien Worten zum Schreiben der Suchdaten
dabei durchgeführt wird, reagieren alle Worte übereinstimmend, da
die Suche des freien Wortes durch Suchen der Merk-Bit-Leitung B 0
mit dem Wert "0" durchgeführt wird.
Fig. 3C zeigt den Zustand, bei dem Daten "0000000000", Daten
"1111111111", Daten "0000011111" jeweils in das erste, zweite und
dritte Wort des Datenfeldes 2 geschrieben werden. Gleichzeitig
mit dem Schreiben der Suchdaten für jedes Wort wird eine "1" in
das entsprechende Wort in die Merk-Bit-Spalte 12 geschrieben.
Fig. 3D zeigt den Zustand, bei dem Daten jeweils in das erste,
zweite, dritte, vierte, sechste und achte Wort geschrieben sind.
Falls weitere Suchdaten geschrieben werden sollen, wird bei
diesem Zustand die Merk-Bit-Spalte 12 zuerst mit dem Wert "0"
gesucht. Damit werden das fünfte und das siebte Wort als die
freien Worte nachgewiesen.
Fig. 3E zeigt den Zustand, bei dem die Suchdaten in alle Worte
geschrieben sind. Wenn das Suchen von Daten durchgeführt wird,
wird der Wert "1" an die Merk-Bit-Leitung B 0 angelegt und die
Suchdaten werden jeweils an die Datenbitleitungen B 1 bis B 10
angelegt. Wenn die Suchdaten beispielsweise "1111100000" dar
stellen, stimmen die Daten mit dem vierten Wort überein. Damit
ist dieses Wort das Ergebnis der Suche.
Fig. 3F zeigt, daß das dritte und sechste Wort im freien Zustand
ist. Um das dritte und sechste Wort frei zu machen, wird der
Wortlöschbetrieb durchgeführt. In Fig. 3F beträgt der Wert der
Merk-Bit-Spalte 12 für das dritte und das sechste Wort "0", so
daß die Worte bei der Datensuche nicht übereinstimmend antworten.
Da das dritte und das sechste Wort als freie Worte nachgewiesen
werden, können neue Suchdaten in diese Worte geschrieben werden.
Obwohl der Suchbetrieb im vorhergehenden für alle Bits (10 Bits)
jedes Wortes im Datenfeld 2 durchgeführt wird, kann der Suchbe
trieb so durchgeführt werden, daß ein Teil maskiert ist. Falls
beispielsweise in Fig. 3E Suchdaten wie z. B. "MMMMM 00000" ange
legt werden (M zeigt an, daß dieses Bit maskiert ist), stimmen
die Suchdaten mit dem ersten und dem vierten Wort überein.
Obwohl der Wert "0" der Merk-Bit-Spalte 12 das freie Wort
bezeichnet und der Wert "1" im vorhergehenden das belegte Wort
bezeichnet, kann dieselbe Wirkung erhalten werden, wenn der Wert
umgekehrt wird.
Fig. 4 zeigt eine schematische Darstellung eines Beispieles der
Merk-Bit-Spalte und des Datenfeldes, die in dieser Erfindung
verwendet werden.
Gemäß Fig. 4 weist die Merk-Bit-Spalte 12 jeweils mit Merk-Bit-
Leitungen b 0 und und mit Wortleitungen W 1 und Wn verbundene
Speicherzellen M 01 bis M 0 m auf. Das Datenfeld 2 weist jeweils mit
Datenbitleitungen b 1 und bis bn und und mit Wortleitungen
W 1 bis Wn verbundene Speicherzellen M 11 bis Mnm auf. Bei dem
Beispiel aus Fig. 4 haben die Speicherzellen in der Merk-Bit-
Spalte 12 und im Datenfeld 2 denselben Schaltungsaufbau.
Beispielsweise weist die Speicherzelle M 01 eine zwischen der
Bitleitung b 0 und verbundene Serienschaltung eines N-Kanal-
MOS-Transistors Q 1, eines Flip-Flops F 1, das durch zwei Inverter
und einen N-Kanal-MOS-Transistor Q 2 gebildet wird, eine Serien
schaltung von N-Kanal-MOS-Transistoren Q 3 und Q 4, und einen
zwischen einer Suchausgangsleitung WA 1 und einer gemeinsamen
Leitung WB 1 verbundenen N-Kanal-MOS-Transistor Q 5 auf.
Die Gates der Transistoren Q 1 und Q 2 sind mit der Wortleitung W 1
verbunden. Das Gate des Transistors Q 3 ist mit einem Knoten
zwischen dem Transistor Q 1 und dem Flip-Flop F 1 verbunden. Das
Gate des Transistors Q 4 ist mit einem Knoten zwischen dem Flip-
Flop F 1 und dem Transistor Q 2 verbunden. Das Gate des Transistors
Q 5 ist mit einem Knoten zwischen den Transistoren Q 3 und Q 4
verbunden.
In ähnlicher Weise wie die Speicherzelle M 01 sind andere Spei
cherzellen ebenfalls mit den entsprechenden Bitleitungen, Wort
leitungen, Suchausgangsleitungen und gemeinsamen Leitungen ver
bunden.
Der Schreibbetrieb und der Suchbetrieb für die Speicherzelle
werden im folgenden beschrieben, wobei die Speicherzelle M 01 als
Beispiel verwendet wird.
Beim Schreibbetrieb wird zum Beispiel die Wortleitung W 1 auf
einen hohen Pegel gebracht und gleichzeitig wird die Bitleitung
b 0 beispielsweise auf einen niedrigen Pegel gebracht, und die
Bitleitung wird auf einen hohen Pegel gebracht. Folglich hält
das Flip-Flop F 1 die von der Bitleitung angelegten Daten.
Beim Suchbetrieb werden alle Wortleitungen auf den niedrigen
Pegel gebracht. Falls dieselben wie die geschriebenen Daten an
die Bitleitung angelegt werden, d. h. die Bitleitung b 0 wid auf
einen niedrigen Pegel gebracht und die Bitleitung wird auf
einen hohen Pegel gebracht, schaltet dieser Transistor Q 5 nun
ein. Falls Daten entgegengesetzt zu den geschriebenen Daten
angelegt werden, wird die Bitleitung b 0 nämlich auf den hohen
Pegel gebracht und die Bitleitung wird auf den niedrigen Pegel
gebracht, schaltet der Transistor Q 1 inzwischen aus. Damit kann
durch Nachweisen der Kontinuität zwischen der Suchausgangsleitung
WA 1 und der gemeinsamen Leitung WB 1 nachgewiesen werden, ob die
geschriebenen Daten und die für die Suche angelegten Daten
übereinstimmen oder nicht.
Fig. 5 zeigt eine schematische Darstellung eines Beispieles des
Merk-Bit-Steuerabschnittes und des Lesen/Schreiben-Steuer
abschnittes, die in dieser Erfindung verwendet werden. Der
Einfachheit wegen ist lediglich ein Teil des Lesen/Schreiben-
Steuerabschnittes 1, der mit den Bitleitungen b 1 und verbunden
ist, dargestellt.
Gemäß Fig. 5 weist der Merk-Bit-Steuerabschnitt 11 ein ODER-
Gatter 111 und ein UND-Gatter 112 auf, an die das Freiwortsuch
signal Φ 11, ein Schreibsignal Φ 12, ein normales Suchsignal Φ 13,
ein Rücksetzsignal Φ 14 und ein Wortlöschsignal Φ 15 angelegt
werden, sowie zwei Tristate-Puffer 113 und 114, und einen
Inverter 115. Die Merk-Bit-Leitungen b 0 bzw. sind mit den
Ausgängen der Tristate-Puffer 113 bzw. 114 verbunden.
Der Lesen/Schreiben-Steuerabschnitt 1 weist auf: einen Eingangs
pufferabschnitt 101, der auf ein Suchdatenhaltesignal Φ 21 oder
auf ein Schreibdatenhaltesignal Φ 22 zum zeitweisen Halten von
extern angelegten Daten D 1 (Suchdaten oder Schreibdaten) rea
giert, einen Signalausgabeabschnitt 102, der vom Eingangspuffer
abschnitt 101 ein Ausgangssignal zum Ausgeben eines Bitleitungs
signals als Reaktion auf ein Signal vom Merk-Bit-Steuerabschnitt
11 empfängt, und einen Tristate-Puffer 103, der Signale von den
Datenbitleitungen b 1 und zum externen Ausgeben dieser Signale
empfängt.
Fig. 6 zeigt eine schematische Darstellung eines Beispieles
eines Antwortregisters und einer Vorrangschaltung, die in dieser
Erfindung verwendet werden. Der Einfachheit halber sind in der
Figur lediglich die Abschnitte bezüglich der Wortleitungen W 1 und
W 2 gezeigt.
Das Antwortregister 3 weist einen Suchdurchführungsabschnitt 31,
der zur Durchführung der Suche für das Wort auf ein Suchdurchfüh
rungssignal Φ 31 reagiert, und einen Ergebnishalteabschnitt 32,
der zum Halten des Suchergebnisses auf das Suchergebnishaltesig
nal Φ 32 reagiert, auf.
Die Vorrangschaltung 4 weist eine Setzschaltung, die zum Setzen
der Vorrangschaltung auf ein Setzsignal Φ 43 reagiert, und eine
Funktionsschaltung, die für die Mehrfachantwort-Funktion der
Mehrzahl von Suchergebnissen auf ein Mehrfachantwort-Funktions
signal Φ 42 reagiert, auf. Das Suchergebnissignal wird über die
Ausgangssignalleitungen WC 1 und WC 2 ausgegeben. Das Signal Φ 41
stellt ein Vorrangdeaktivierungssignal und das Signal Φ 44 stellt
ein Vorrangaktivierungssignal dar, die jeweils die Umkehrung
voneinander bilden.
Fig. 7 zeigt eine schematische Darstellung eines Beispieles der
in dieser Erfindung verwendeten Wortleitungssteuerschaltung. Der
Einfachheit halber sind in dieser Figur lediglich die Abschnitte,
die mit den Wortleitungen W 1 und W 2 verbunden sind, gezeigt.
Gemäß Fig. 7 ist die Wortleitungssteuerschaltung 6 mit den
Wortleitungen W 1 und W 2 und mit den Ausgangssignalleitungen WC 1
und WC 2 der Vorrangschaltung 4 verbunden. Ein Schreibsignal Φ 51
(=Φ 12), ein Wortlöschsignal Φ 52 (=Φ 15), ein Rücksetzsignal Φ 53
(=Φ 14) und ein Lesesignal Φ 54 (=Φ 23) werden an die Wortleitungs
steuerschaltung 6 angelegt.
Im folgenden wird die Betriebssteuerung des CAM unter Bezugnahme
auf die Fig. 4 bis 7 beschrieben.
Die Fig. 8A bis 8F zeigen Flußdiagramme des Steuerungsablaufes
des CAM. Der Steuerungsablauf zum Rücksetzen ist in Fig. 8A ge
zeigt. Hochpegelige Rücksetzsignale Φ 14 und Φ 53 werden von der
Steuerung 5 an die in Fig. 7 gezeigte Wortleitungssteuerschaltung
6 und an den in Fig. 5 gezeigten Merk-Bit-Steuerabschnitt 11
angelegt (Schritt 101). Als Folge davon werden sämtliche Wort
leitungen W 1 bis Wm auf den hohen Pegel gebracht und die Signale
"0" bzw. "1" an die Merk-Bit-Leitungen b 0 bzw. angelegt. Der
Wert "0" wird zum Beenden des Rücksetzvorganges in der Merk-Bit-
Spalte 12 gespeichert.
Fig. 8B zeigt den Steuerungsablauf für die Freiwortsuche. Ein
hochpegeliges Freiwortsuchsignal Φ 11 wird von der Steuerung 5 an
den Merk-Bit-Steuerabschnitt 11 angelegt (Schritt 201) und das
Signal "0" wird an alle Datenbitleitungen b 1 bis bn und bis
angelegt, während die Signale "1" bzw. "0" an die Merk-Bit-Leitun
gen b 0 bzw. angelegt werden. Anlegen des Signales "0" an alle
Daten-Bit-Leitungen bedeutet, daß diese Bitleitungen maskiert
werden. Durch Anlegen eines hochpegeligen Suchdurchführungs
signales Φ 31 an das in Fig. 6 gezeigte Antwortregister 3 wird die
Freiwortsuche durchgeführt (Schritt 202). Durch Anlegen eines
hochpegeligen Suchergebnishaltesignales Φ 32 wird ein Signal, das
das Ergebnis der Suche anzeigt, in dem Ergebnishalteabschnitt im
Antwortregister 3 gespeichert (Schritt 203).
Fig. 8C zeigt einen Steuerungsablauf für das Schreiben von Daten.
Um das freie Wort nachzuweisen wird zuerst derselbe Betrieb wie
der in Fig. 8B gezeigte Freiwortnachweisbetrieb durchgeführt
(Schritt 301). Im allgemeinen wird eine Mehrzahl von freien Worten
nachgewiesen. Daher wird zur Auswahl eines aus der Mehrzahl von
freien Worten eine Mehrfachantwortfunktion bewirkt (Schritt 302).
Die in Fig. 6 gezeigte Vorrangschaltung wird durch Anlegen eines
hochpegeligen Vorrangrücksetzsignales Φ 43 zurückgesetzt (Reset),
und danach werden ein hochpegeliges Mehrfachantwortfunktions
signal Φ 42 und das Vorrangaktivierungssignal Φ 44 angelegt. Dann
wird bestimmt, ob die übereinstimmende Antwort erhalten wird oder
nicht (d. h. ob ein freies Wort nachgewiesen wird oder nicht)
(Schritt 303). Wenn die übereinstimmende Antwort erhalten wird,
wird ein hochpegeliges Schreibdatenhaltesignal Φ 22 an den in Fig.
5 gezeigten Lesen/Schreiben-Steuerabschnitt 1 angelegt und gleich
zeitig werden die darin einzuschreibenden Daten ebenso hier ange
legt (Schritt 304). Als nächstes werden hochpegelige Schreibsig
nale Φ 12 und Φ 51 jeweils an den Merkbitsteuerabschnitt 11 und die
Wortleitungssteuerschaltung 6 angelegt (Schritt 305). Die ausge
wählte Wortleitung, d. h. die Wortleitung, auf der das freie Wort
nachgewiesen wird, wird auf den hohen Pegel gebracht und die
anderen Wortleitungen werden auf den niedrigen Pegel gebracht.
Ein Datensignal, das die zu schreibenden Daten anzeigt, und
dessen invertiertes Signal werden jeweils an die Datenbitlei
tungen b 1 bis bn und bis angelegt. Inzwischen werden die
Signale "1" bzw. "0" an die Merkbitleitungen b 0 bzw. angelegt.
Wenn keine übereinstimmende Antwort erhalten wird, wird der Betrieb
abgeschlossen.
Fig. 8D zeigt einen Steuerungsablauf zur Durchführung einer Suche
mit angelegten Daten. Ein hochpegeliges Suchdatenhaltesignal Φ 21
wird an den Lesen/Schreiben-Steuerabschnitt 1 angelegt und die zu
suchenden Daten werden ebenso daran gleichzeitig angelegt
(Schritt 401). Ein hochpegeliges, normales Suchsignal Φ 13 und das
Suchdurchführungssignal Φ 31 werden an den Merkbitsteuerabschnitt
11 angelegt (Schritt 402). Das Datensignal, das die zu suchenden
Daten anzeigt, und dessen invertiertes Signal werden jeweils an
die Datenbitleitungen b 1 bis bn und bis angelegt. Die
Signale "0" bzw. "1" werden an die Merkbitleitungen b 0 bzw.
angelegt. Das Signal, das das Ergebnis der Suche zeigt, wird in
der Schaltung 32 im Antwortregister 3 gespeichert (Schritt 403).
Fig. 8E zeigt einen Steuerungsablauf zum Lesen von Daten auf
Grund der angelegten Daten. Um das Wort nachzuweisen, in dem
dieselben Daten wie die angelegten Daten gespeichert sind, wird
zuerst derselbe Datensuchbetrieb wie in Fig. 8D gezeigt durchge
führt (Schritt 501). Daran anschließend wird zur Auswahl eines
Wortes eine Mehrfachantwort-Funktion bewirkt (Schritt 502). Nach
dem ein hochpegeliges Vorrangsetzsignal Φ 43 an die Vorrangschal
tung 4 zum Rücksetzen angelegt wird, wird ein hochpegeliges
Mehrfachantwort-Funktionssignal Φ 42 und das Vorrangaktivierungs
signal Φ 44 angelegt. Dann wird bestimmt, ob die übereinstimmende
Antwort erhalten wird oder nicht (d. h. ob ein Wort nachgewiesen
wird oder nicht) (Schritt 503). Falls die Übereinstimmung erhal
ten wird, wird die Wortleitung des durch die Vorrangschaltung 4
ausgewählten Wortes auf den hohen Pegel gebracht. Durch Anlegen
eines hochpegeligen Lesesignales Φ 23 an den Lesen/Schreiben-
Steuerabschnitt 1 werden Daten von dem ausgewählten Wort in dem
Datenfeld 2 über den Lesen/Schreiben-Steuerabschnitt 1 gelesen
(Schritt 504). Nachdem die Daten aufeinanderfolgend von dem Daten
feld für alle die Worte, die von der Datensuche nachgewiesen
wurden, gelesen wurden, ist der Betrieb abgeschlossen, wenn keine
weitere übereinstimmende Antwort nachgewiesen wird.
Fig. 8F zeigt einen Steuerungsablauf zum Löschen der Daten des
Wortes, das unnötig wird. Um das Wort, in dem unnötige Daten
gespeichert sind, nachzuweisen, wird zuerst derselbe Datensuch
betrieb wie in Fig. 8D gezeigt mit den unnötigen Daten durchge
führt (Schritt 601). Daran anschließend wird die Wortlöschung für
die nachgewiesenen Worte durchgeführt (Schritt 602). Dabei wird
ein hochpegeliges Vorrangdeaktivierungssignal Φ 41 an die Vor
rangschaltung 4 angelegt, wodurch die Mehrfachantwortfunktion
nicht bewirkt wird. Damit wird eine Mehrzahl von Worten nachge
wiesen und die Wortlöschung wird gleichzeitig für alle diese
Worte durchgeführt. Es wird nämlich ein hochpegeliges Wortlösch
signal Φ 52 an die Wortleitungssteuerschaltung 61 angelegt und die
Wortleitungen der nchgewiesenen Worte werden selektiv auf den
hohen Pegel gebracht. Inzwischen verbleiben die anderen Wort
leitungen auf einem niedrigen Pegel. Ein hochpegeliges Wortlösch
signal Φ 15 wird an den Merkbitsteuerabschnitt 11 angelegt und die
Signale "0" bzw. "1" werden an die Merkbitleitungen b 0 bzw.
ausgegeben.
Wie oben beschrieben weist diese Erfindung eine vorbestimmte
Merkspeichereinrichtung in einem CAM-Zellenfeld auf, sowie eine
Einrichtung zum Anlegen eines Merksignales an die Merkspeicher
einrichtung, das anzeigt, ob sich jedes Wort in dem CAM-Zellen
feld im Datenschreibzustand oder in einem freien Zustand befin
det. Beim Suchbetrieb, wenn eine Suche in dem CAM-Zellenfeld mit
den Suchdaten durchgeführt wird, wird eine Suche in der Merk
speichereinrichtung gleichzeitig mit dem Merksignal durchgeführt,
das den Datenschreibzustand anzeigt. Damit kann ein bestimmtes
Wort von den Worten, die durch den Datenschreibbetrieb korrekt
geschrieben sind, korrekt nachgewiesen werden. Des weiteren ist es
nicht notwendig, eine zusätzliche, komplizierte Schaltung zum
Steuern der Merkspeichereinrichtung vorzusehen.
Claims (10)
1. Inhaltsgesteuerte Speichervorrichtung (CAM) zur Durchfüh
rung eines Suchbetriebes auf Grund vorgegebener Suchdaten und
zur Bestimmung eines bestimmten Wortes oder einer bestimmten
Wortgruppe, gekennzeichnet durch
ein CAM-Zellenfeld (2) zum Speichern von Daten darin, wobei eine vorbestimmte Spalte (12) innerhalb des Feldes (2) eine Merk-Speichereinrichtung bildet,
eine erste Ein-/Ausgangssteuereinrichtung (1) zum Eingeben von Schreibdaten in das CAM-Zellenfeld (2) und zum Ausgeben von Lesedaten von dem CAM-Speicherzellenfeld (2) mit einer bestimmten Zeitsteuerung,
eine zweite Ein-/Ausgangssteuereinrichtung (11) zum Eingeben eines Merksignales in die vorbestimmte Spalte (12) des CAM- Zellenfeldes (2) mit einer Zeitsteuerung, die zusammen mit der bestimmten Zeitsteuerung der ersten Ein-/Ausgangssteuereinrich tung (1) gesteuert wird, wobei die Merk-Steuereinrichtung (12) ein Merksignal, das anzeigt, ob jedes Wort im CAM-Zellenfeld (2) sich in einem Datenschreibzustand oder in einem freien Zustand befindet, und zur Suchdurchführung durch die erste und die zweite Ein-/Ausgangssteuereinrichtung (1, 11) von der zweiten Ein-/Aus gangssteuereinrichtung (11) empfängt und speichert,
eine Rücksetzeinrichtung (11) zum Schreiben des Merksignales, das für alle Worte der Merk-Speichereinrichtung (12) den freien Zustand anzeigt,
eine Freiwortsucheinrichtung (1, 3, 11) zum Nachweisen eines freien Wortes durch eine Suche in der Merk-Speichereinrichtung (12) durch das Merksignal von der zweiten Ein-/Ausgangssteuereinrich tung (11),
eine Datenschreibeinrichtung (1, 11) zum Schreiben der Daten von der ersten Ein-/Ausgangssteuereinrichtung (1) in das freie Wort des CAM-Zellenfeldes (2) und zum gleichzeitigen Schreiben des Merksignales, das den Datenschreibzustand anzeigt, von der zwei ten Ein-/Ausgangssteuereinrichtung (11) in den entsprechenden Abschnitt der Merk-Speichereinrichtung (12),
eine Bestimmungswortsucheinrichtung (1, 3, 11) zum Nachweisen eines bestimmten Wortes durch Suchen in dem CAM-Zellenfeld (2) mit den Suchdaten von der ersten Ein-/Ausgangssteuereinrichtung (1) und gleichzeitig Suchen in der Merk-Steuereinrichtung (12) mit dem Merksignal von der zweiten Ein-/Ausgangssteuereinrichtung (11).
ein CAM-Zellenfeld (2) zum Speichern von Daten darin, wobei eine vorbestimmte Spalte (12) innerhalb des Feldes (2) eine Merk-Speichereinrichtung bildet,
eine erste Ein-/Ausgangssteuereinrichtung (1) zum Eingeben von Schreibdaten in das CAM-Zellenfeld (2) und zum Ausgeben von Lesedaten von dem CAM-Speicherzellenfeld (2) mit einer bestimmten Zeitsteuerung,
eine zweite Ein-/Ausgangssteuereinrichtung (11) zum Eingeben eines Merksignales in die vorbestimmte Spalte (12) des CAM- Zellenfeldes (2) mit einer Zeitsteuerung, die zusammen mit der bestimmten Zeitsteuerung der ersten Ein-/Ausgangssteuereinrich tung (1) gesteuert wird, wobei die Merk-Steuereinrichtung (12) ein Merksignal, das anzeigt, ob jedes Wort im CAM-Zellenfeld (2) sich in einem Datenschreibzustand oder in einem freien Zustand befindet, und zur Suchdurchführung durch die erste und die zweite Ein-/Ausgangssteuereinrichtung (1, 11) von der zweiten Ein-/Aus gangssteuereinrichtung (11) empfängt und speichert,
eine Rücksetzeinrichtung (11) zum Schreiben des Merksignales, das für alle Worte der Merk-Speichereinrichtung (12) den freien Zustand anzeigt,
eine Freiwortsucheinrichtung (1, 3, 11) zum Nachweisen eines freien Wortes durch eine Suche in der Merk-Speichereinrichtung (12) durch das Merksignal von der zweiten Ein-/Ausgangssteuereinrich tung (11),
eine Datenschreibeinrichtung (1, 11) zum Schreiben der Daten von der ersten Ein-/Ausgangssteuereinrichtung (1) in das freie Wort des CAM-Zellenfeldes (2) und zum gleichzeitigen Schreiben des Merksignales, das den Datenschreibzustand anzeigt, von der zwei ten Ein-/Ausgangssteuereinrichtung (11) in den entsprechenden Abschnitt der Merk-Speichereinrichtung (12),
eine Bestimmungswortsucheinrichtung (1, 3, 11) zum Nachweisen eines bestimmten Wortes durch Suchen in dem CAM-Zellenfeld (2) mit den Suchdaten von der ersten Ein-/Ausgangssteuereinrichtung (1) und gleichzeitig Suchen in der Merk-Steuereinrichtung (12) mit dem Merksignal von der zweiten Ein-/Ausgangssteuereinrichtung (11).
2. Inhaltsgesteuerte Speichervorrichtung nach Anspruch 1, gekenn
zeichnet durch eine Leseeinrichtung (1) zum Lesen von Daten eines
bestimmten Wortes, das durch die Sucheinrichtung (1, 3, 11) aus dem
CAM-Zellenfeld (2) ausgewählt ist.
3. Inhaltsgesteuerte Speichervorrichtung nach Anspruch 1 oder 2,
gekennzeichnet durch eine Wortlöscheinrichtung (11) zum Schrei
ben, wenn der Wert eines bestimmten Wortes oder einer bestimmten
Wortgruppe, die durch die Sucheinrichtung (1, 3, 11) ausgewählt
sind, in dem CAM-Zellenfeld (2) unnötig ist, wobei das Merksignal
den freien Zustand in einem entsprechenden Abschnitt der Merk-
Speichereinrichtung (12) anzeigt.
4. Inhaltsgesteuerte Speichervorrichtung nach einem der Ansprüche
1 bis 3, gekennzeichnet durch eine Wortauswahleinrichtung (4) zum
Auswählen eines von einer Mehrzahl von Worten auf Grund einer
vorbestimmten Logik, wenn die Mehrzahl von Worten durch die
Freiwortsucheinrichtung (1, 3, 11) oder die bestimmte Wortsuchein
richtung (1, 3, 11) nachgewiesen ist.
5. Inhaltsgesteuerte Speichervorrichtung nach einem der Ansprüche
1 bis 4, dadurch gekennzeichnet, daß das Merksignal, das von der
zweiten Ein-/Ausgangssteuereinrichtung (11) an die Freiwortsuchein
richtung (1, 3, 11) angelegt ist, ein Merksignal aufweist, das den
freien Zustand anzeigt.
6. Inhaltsgesteuerte Speichervorrichtung nach einem der Ansprüche
1 bis 5, dadurch gekennzeichnet, daß das Merksignal, das von der
zweiten Ein-/Ausgangssteuereinrichtung (11) an die bestimmte
Wortsucheinrichtung (1, 3, 11) angelegt ist, ein Merksignal auf
weist, das den Datenschreibzustand anzeigt.
7. Verfahren zum Betreiben einer inhaltsgesteuerten Speichervor
richtung (CAM) zur Durchführung eines Suchbetriebes auf Grund
vorgegebener Suchdaten und zur Bestimmung eines bestimmten Wortes
oder einer bestimmten Wortgruppe, wobei die inhaltsgesteuerte
Speichervorrichtung (CAM) aufweist:
ein CAM-Zellenfeld (2) zum Speichern von Daten darin, wobei eine vorbestimmte Spalte (12) innerhalb des CAM-Zellenfeldes (2) eine Merk-Speichereinrichtung bildet,
eine erste Ein-/Ausgangssteuereinrichtung (1) zum Eingeben von Schreibdaten in das CAM-Zellenfeld (2) und zum Ausgeben von Lesedaten von dem CAM-Zellenfeld (2) mit einer bestimmten Zeit steuerung,
eine zweite Ein-/Ausgangssteuereinrichtung (11) zum Eingeben eines Merksignales in die vorbestimmte Spalte (12) des CAM- Zellenfeldes (2) mit einer Zeitsteuerung, die zusammen mit der bestimmten Zeitsteuerung der ersten Ein-/Ausgangssteuereinrich tung (1) gesteuert wird, wobei die Merk-Steuereinrichtung (12) ein Merksignal, das anzeigt, ob jedes Wort im CAM-Zellenfeld (2) sich in einem Datenschreibzustand oder in einem freien Zustand befindet, und zur Suchdurchführung durch die erste und die zweite Ein-/Ausgangssteuereinrichtung (1, 11) von der zweiten Ein- /Ausgangssteuereinrichtung (11) empfängt und speichert, gekenn zeichnet durch die Schritte:
Schreiben eines Merksignales, das zum Rücksetzen einen freien Zustand für alle Worte in der Merk-Speichereinrichtung (12) anzeigt,
Nachweisen eines freien Wortes durch Suchen in der Merk-Speicher einrichtung (12) mit dem Merksignal von der zweiten Ein-/Aus gangssteuereinrichtung (11),
Schreiben des Wertes von der ersten Ein-/Ausgangssteuereinrich tung (1) in das freie Wort des CAM-Zellenfeldes (2) und gleich zeitig Schreiben des Merksignales, das den Datenschreibzustand anzeigt, in den entsprechenden Abschnitt der Merkspeichereinrich tung (12), und
Nachweisen eines bestimmten Wortes durch Suchen in dem CAM- Zellenfeld (2) mit den Suchdaten von der ersten Ein-/Ausgangs steuereinrichtung (1) und gleichzeitig Suchen in der Merk- Speichereinrichtung (12) mit dem Merksignal von der zweiten Ein- /Ausgangssteuereinrichtung (11).
ein CAM-Zellenfeld (2) zum Speichern von Daten darin, wobei eine vorbestimmte Spalte (12) innerhalb des CAM-Zellenfeldes (2) eine Merk-Speichereinrichtung bildet,
eine erste Ein-/Ausgangssteuereinrichtung (1) zum Eingeben von Schreibdaten in das CAM-Zellenfeld (2) und zum Ausgeben von Lesedaten von dem CAM-Zellenfeld (2) mit einer bestimmten Zeit steuerung,
eine zweite Ein-/Ausgangssteuereinrichtung (11) zum Eingeben eines Merksignales in die vorbestimmte Spalte (12) des CAM- Zellenfeldes (2) mit einer Zeitsteuerung, die zusammen mit der bestimmten Zeitsteuerung der ersten Ein-/Ausgangssteuereinrich tung (1) gesteuert wird, wobei die Merk-Steuereinrichtung (12) ein Merksignal, das anzeigt, ob jedes Wort im CAM-Zellenfeld (2) sich in einem Datenschreibzustand oder in einem freien Zustand befindet, und zur Suchdurchführung durch die erste und die zweite Ein-/Ausgangssteuereinrichtung (1, 11) von der zweiten Ein- /Ausgangssteuereinrichtung (11) empfängt und speichert, gekenn zeichnet durch die Schritte:
Schreiben eines Merksignales, das zum Rücksetzen einen freien Zustand für alle Worte in der Merk-Speichereinrichtung (12) anzeigt,
Nachweisen eines freien Wortes durch Suchen in der Merk-Speicher einrichtung (12) mit dem Merksignal von der zweiten Ein-/Aus gangssteuereinrichtung (11),
Schreiben des Wertes von der ersten Ein-/Ausgangssteuereinrich tung (1) in das freie Wort des CAM-Zellenfeldes (2) und gleich zeitig Schreiben des Merksignales, das den Datenschreibzustand anzeigt, in den entsprechenden Abschnitt der Merkspeichereinrich tung (12), und
Nachweisen eines bestimmten Wortes durch Suchen in dem CAM- Zellenfeld (2) mit den Suchdaten von der ersten Ein-/Ausgangs steuereinrichtung (1) und gleichzeitig Suchen in der Merk- Speichereinrichtung (12) mit dem Merksignal von der zweiten Ein- /Ausgangssteuereinrichtung (11).
8. Verfahren nach Anspruch 7, gekennzeichnet durch den Schritt:
Lesen eines Wertes eines bestimmten Wortes, das durch die
Sucheinrichtung (1, 3, 11) vom CAM-Zellenfeld (2) ausgewählt wird.
9. Verfahren nach Anspruch 7 oder 8, gekennzeichnet durch den
Schritt des Schreibens, wenn ein Wert eines bestimmten Wortes
oder einer bestimmten Wortgruppe, die durch die Sucheinrichtung
(1, 3, 11) ausgewählt sind, in dem CAM-Zellenfeld (2) unnötig ist,
wobei das Merksignal den freien Zustand in einem entsprechenden
Abschnitt der Merk-Speichereinrichtung (12) anzeigt.
10. Verfahren nach einem der Ansprüche 7 bis 9, gekennzeichnet
durch den Schritt des Auswählens eines aus einer Mehrzahl von
Worten auf Grund einer vorbestimmten Logik, wenn diese Mehrzahl
von Worten durch die Freiwortsucheinrichtung (1, 3, 11) oder die
bestimmte Wortsucheinrichtung (1, 3, 11) nachgewiesen ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63049092A JPH01223697A (ja) | 1988-03-01 | 1988-03-01 | 内容番地付け記憶装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3902425A1 true DE3902425A1 (de) | 1989-09-07 |
DE3902425C2 DE3902425C2 (de) | 1993-02-18 |
Family
ID=12821457
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3902425A Granted DE3902425A1 (de) | 1988-03-01 | 1989-01-27 | Inhaltsgesteuerte speichervorrichtung (cam) und betriebsverfahren |
Country Status (3)
Country | Link |
---|---|
US (1) | US4975873A (de) |
JP (1) | JPH01223697A (de) |
DE (1) | DE3902425A1 (de) |
Families Citing this family (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02131646A (ja) * | 1988-11-11 | 1990-05-21 | Mitsubishi Electric Corp | 通信制御装置 |
EP0400820B1 (de) * | 1989-05-31 | 1997-08-27 | STMicroelectronics, Inc. | Inhaltsadressierbarer Speicher |
US5467460A (en) * | 1990-02-14 | 1995-11-14 | Intel Corporation | M&A for minimizing data transfer to main memory from a writeback cache during a cache miss |
SE9002558D0 (sv) * | 1990-08-02 | 1990-08-02 | Carlstedt Elektronik Ab | Processor |
US5212663A (en) * | 1991-02-21 | 1993-05-18 | Cypress Semiconductor Corporation | Method to implement a large resettable static RAM without the large surge current |
JP2966638B2 (ja) * | 1992-04-17 | 1999-10-25 | 三菱電機株式会社 | ダイナミック型連想メモリ装置 |
WO1993024888A1 (en) * | 1992-05-22 | 1993-12-09 | Massachusetts Institute Of Technology | Response resolver for associative memories and parallel processors |
US5383146A (en) * | 1992-06-08 | 1995-01-17 | Music Semiconductors, Inc. | Memory with CAM and RAM partitions |
JPH0676583A (ja) * | 1992-07-06 | 1994-03-18 | Mitsubishi Electric Corp | 内容番地付記憶装置および一致ワード不要化方法 |
GB9308778D0 (en) * | 1993-04-28 | 1993-06-09 | Plessey Semiconductors Ltd | Contents addressable memory |
US5664224A (en) * | 1993-07-23 | 1997-09-02 | Escom Ag | Apparatus for selectively loading data blocks from CD-ROM disks to buffer segments using DMA operations |
KR950034265A (ko) * | 1994-02-10 | 1995-12-28 | 도자끼 시노부 | 연상메모리 |
JP3602172B2 (ja) * | 1994-11-16 | 2004-12-15 | 川崎マイクロエレクトロニクス株式会社 | 半導体集積回路 |
JPH10302490A (ja) * | 1997-04-25 | 1998-11-13 | Mitsubishi Electric Corp | 読み出し専用半導体記憶装置 |
US6199140B1 (en) | 1997-10-30 | 2001-03-06 | Netlogic Microsystems, Inc. | Multiport content addressable memory device and timing signals |
US6148364A (en) * | 1997-12-30 | 2000-11-14 | Netlogic Microsystems, Inc. | Method and apparatus for cascading content addressable memory devices |
US6240485B1 (en) | 1998-05-11 | 2001-05-29 | Netlogic Microsystems, Inc. | Method and apparatus for implementing a learn instruction in a depth cascaded content addressable memory system |
US6381673B1 (en) | 1998-07-06 | 2002-04-30 | Netlogic Microsystems, Inc. | Method and apparatus for performing a read next highest priority match instruction in a content addressable memory device |
US6266262B1 (en) | 1998-11-05 | 2001-07-24 | Lara Technology, Inc. | Enhanced binary content addressable memory for longest prefix address matching |
US6081440A (en) * | 1998-11-05 | 2000-06-27 | Lara Technology, Inc. | Ternary content addressable memory (CAM) having fast insertion and deletion of data values |
JP3484093B2 (ja) * | 1999-02-01 | 2004-01-06 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 連想メモリ |
US6892272B1 (en) | 1999-02-23 | 2005-05-10 | Netlogic Microsystems, Inc. | Method and apparatus for determining a longest prefix match in a content addressable memory device |
US6499081B1 (en) | 1999-02-23 | 2002-12-24 | Netlogic Microsystems, Inc. | Method and apparatus for determining a longest prefix match in a segmented content addressable memory device |
US6539455B1 (en) | 1999-02-23 | 2003-03-25 | Netlogic Microsystems, Inc. | Method and apparatus for determining an exact match in a ternary content addressable memory device |
US6574702B2 (en) | 1999-02-23 | 2003-06-03 | Netlogic Microsystems, Inc. | Method and apparatus for determining an exact match in a content addressable memory device |
US6460112B1 (en) | 1999-02-23 | 2002-10-01 | Netlogic Microsystems, Llc | Method and apparatus for determining a longest prefix match in a content addressable memory device |
US6137707A (en) * | 1999-03-26 | 2000-10-24 | Netlogic Microsystems | Method and apparatus for simultaneously performing a plurality of compare operations in content addressable memory device |
US6505270B1 (en) | 1999-07-02 | 2003-01-07 | Lara Technology, Inc. | Content addressable memory having longest prefix matching function |
US6567340B1 (en) | 1999-09-23 | 2003-05-20 | Netlogic Microsystems, Inc. | Memory storage cell based array of counters |
US6934795B2 (en) | 1999-09-23 | 2005-08-23 | Netlogic Microsystems, Inc. | Content addressable memory with programmable word width and programmable priority |
US7110407B1 (en) | 1999-09-23 | 2006-09-19 | Netlogic Microsystems, Inc. | Method and apparatus for performing priority encoding in a segmented classification system using enable signals |
US7272027B2 (en) | 1999-09-23 | 2007-09-18 | Netlogic Microsystems, Inc. | Priority circuit for content addressable memory |
US7143231B1 (en) | 1999-09-23 | 2006-11-28 | Netlogic Microsystems, Inc. | Method and apparatus for performing packet classification for policy-based packet routing |
US7487200B1 (en) | 1999-09-23 | 2009-02-03 | Netlogic Microsystems, Inc. | Method and apparatus for performing priority encoding in a segmented classification system |
US6944709B2 (en) | 1999-09-23 | 2005-09-13 | Netlogic Microsystems, Inc. | Content addressable memory with block-programmable mask write mode, word width and priority |
US6647457B1 (en) | 1999-11-16 | 2003-11-11 | Cypress Semiconductor Corporation | Content addressable memory having prioritization of unoccupied entries |
JP4773631B2 (ja) * | 2001-05-25 | 2011-09-14 | 富士通セミコンダクター株式会社 | 連想記憶装置及びプリチャージ方法 |
US7301961B1 (en) | 2001-12-27 | 2007-11-27 | Cypress Semiconductor Corportion | Method and apparatus for configuring signal lines according to idle codes |
US7272684B1 (en) | 2002-06-26 | 2007-09-18 | Netlogic Microsystems, Inc. | Range compare circuit for search engine |
US7206212B1 (en) | 2002-08-13 | 2007-04-17 | Netlogic Microsystems, Inc. | Content addressable memory (CAM) device with entries having ternary match and range compare functions |
US7570503B1 (en) | 2005-05-20 | 2009-08-04 | Netlogic Microsystems, Inc. | Ternary content addressable memory (TCAM) cells with low signal line numbers |
US7251147B1 (en) | 2005-06-07 | 2007-07-31 | Netlogic Microsystems, Inc. | Content comparator memory (CCM) device and method of operation |
US20080151654A1 (en) | 2006-12-22 | 2008-06-26 | Allan James D | Method and apparatus to implement a reset function in a non-volatile static random access memory |
WO2011033667A1 (ja) * | 2009-09-18 | 2011-03-24 | 株式会社 東芝 | 半導体連想メモリ装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2853926A1 (de) * | 1977-12-16 | 1979-06-21 | Philips Nv | Wortorganisierter, inhaltlich adressierbarer speicher |
JPS5774889A (en) * | 1980-10-28 | 1982-05-11 | Nippon Telegr & Teleph Corp <Ntt> | Associative memory device |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4670858A (en) * | 1983-06-07 | 1987-06-02 | Tektronix, Inc. | High storage capacity associative memory |
JPH0769868B2 (ja) * | 1986-09-25 | 1995-07-31 | 松下電器産業株式会社 | 高速アドレス変換装置 |
US4888731A (en) * | 1988-05-11 | 1989-12-19 | Advanced Micro Devices, Inc. | Content addressable memory array system with multiplexed status and command information |
-
1988
- 1988-03-01 JP JP63049092A patent/JPH01223697A/ja active Pending
- 1988-12-12 US US07/283,293 patent/US4975873A/en not_active Expired - Fee Related
-
1989
- 1989-01-27 DE DE3902425A patent/DE3902425A1/de active Granted
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2853926A1 (de) * | 1977-12-16 | 1979-06-21 | Philips Nv | Wortorganisierter, inhaltlich adressierbarer speicher |
JPS5774889A (en) * | 1980-10-28 | 1982-05-11 | Nippon Telegr & Teleph Corp <Ntt> | Associative memory device |
Non-Patent Citations (3)
Title |
---|
Kadota Hiroshi et.al., An 8-K bit Content- Addressable and Reentrant Memory, in: IEEE Journalof Solid-State Circuits, Vol. SC-20, Nr. 5, Oktober 1985, S. 951-957 * |
Ogura Takeshi et.al., A 4-kb Associative Memory LSI, in: Journal of Institute of Electronics and Communication Engineers of Japan, 1. Dezember 1983S. 45-52 * |
Ramamoorthy C.V. et.al., Design of a Fast CellularAssociative Memory for Ordered Retrieval, in: IEEE Transactions on Computers, Vol. C-27, Nr. 9, September 1978, S. 800-815 * |
Also Published As
Publication number | Publication date |
---|---|
JPH01223697A (ja) | 1989-09-06 |
DE3902425C2 (de) | 1993-02-18 |
US4975873A (en) | 1990-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3902425C2 (de) | ||
DE68928213T2 (de) | Inhaltadressierte Speicherzellenanordnung | |
DE68907518T2 (de) | Inhaltsadressierte Speicheranordnung. | |
DE3412676C2 (de) | ||
DE4110173C2 (de) | Adressenansteuereinrichtung für einen SRAM und Verfahren zum Betreiben derselben | |
DE60212982T2 (de) | Dynamische spaltenblockauswahl | |
DE69230366T2 (de) | Multiport statischer Direktzugriffspeicher mit schnellem Schreibdurchschema | |
DE68922975T2 (de) | Speichereinheit mit zwei Toren. | |
DE69837135T2 (de) | Integrierte Halbleiterschaltungsvorrichtung | |
DE2803989A1 (de) | Wahlfreie zugriffsspeichervorrichtung fuer digitale daten | |
DE69025520T2 (de) | Speicher mit verbessertem Bitzeilenausgleich | |
DE2059917C3 (de) | Hybridadressierter Datenspeicher | |
DE68928187T2 (de) | Inhaltadressierte Speicherzellenanordnung | |
DE69522846T2 (de) | Verbesserte Speicheranordnung und Herstellungsverfahren | |
DE69614912T2 (de) | Sehr schnelle mehrwertige Festwertspeicheranordnung | |
DE69619794T2 (de) | Speicherzelle zum lesen und schreiben einer registerbank | |
DE4218686C2 (de) | Statischer Direktzugriffsspeicher | |
DE4213574C2 (de) | Halbleiterspeichereinrichtung und Betriebsverfahren dafür | |
DE60016104T2 (de) | Nichtflüchtige Halbleiterspeicheranordnung | |
DE69835116T2 (de) | Inhaltaddressierter Speicher | |
DE4309320A1 (de) | Halbleiterspeichervorrichtung und Betriebsverfahren | |
DE69322436T2 (de) | Halbleiterspeicheranordnung | |
DE60126800T2 (de) | Burstread mit ausgangbasierter redundanz | |
DE69025782T2 (de) | Registerbankschaltung | |
DE68926158T2 (de) | Einchip-Mikrorechner mit EPROM |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8381 | Inventor (new situation) |
Free format text: NAKABAYASHI, TAKEO KONDOU, HARUFUSA, ITAMI, HYOGO, JP |
|
8364 | No opposition during term of opposition | ||
8320 | Willingness to grant licences declared (paragraph 23) | ||
8339 | Ceased/non-payment of the annual fee |