DE1449765B2 - Einrichtung zur Abfrage eines assoziativen Speichers - Google Patents

Einrichtung zur Abfrage eines assoziativen Speichers

Info

Publication number
DE1449765B2
DE1449765B2 DE1449765A DE1449765A DE1449765B2 DE 1449765 B2 DE1449765 B2 DE 1449765B2 DE 1449765 A DE1449765 A DE 1449765A DE 1449765 A DE1449765 A DE 1449765A DE 1449765 B2 DE1449765 B2 DE 1449765B2
Authority
DE
Germany
Prior art keywords
memory
register
circuit
pulse
signal
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
Application number
DE1449765A
Other languages
English (en)
Other versions
DE1449765C3 (de
DE1449765A1 (de
Inventor
Robert I. Briarcliff Manor N.Y. Roth (V.St.A.)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE1449765A1 publication Critical patent/DE1449765A1/de
Publication of DE1449765B2 publication Critical patent/DE1449765B2/de
Application granted granted Critical
Publication of DE1449765C3 publication Critical patent/DE1449765C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S505/00Superconductor technology: apparatus, material, process
    • Y10S505/825Apparatus per se, device per se, or process of making or operating same
    • Y10S505/831Static information storage system or device

Description

Die Erfindung betrifft eine Einrichtung zur Abfrage eines assoziativen Speichers mit Folge/Sofort-Vergleichern und mit zugeordnetem Suchregister, in dem das Suchwort mit Feldgrenzzeichen steht, sowie mit in Speicherworten gleicher Länge angeordneten Speicherelementen zur Speicherung von Datenworten variabler Länge, deren Anfang und Ende markiert sind.
Ein üblicher assoziativer Speicher besteht im wesentlichen aus matrixartig angeordneten Speicherelementen; die in einer Zeile angeordneten Speicherelemente werden als Speicherwort bezeichnet, sie können ein Datenwort aufnehmen. Weiter gehört ein Register zur Aufnahme des Vergleichswertes, das Vorgaberegister, dazu und Einrichtungen zum gleichzeitigen Vergleich des Inhalts des Vorgaberegisters mit dem gesamten Inhalt des Speichers. Beim Vergleich des Inhalts des Vorgaberegisters mit dem Inhalt des Speichers werden alle Worte im Speicher nach Übereinstimmung mit dem Vorgabewort untersucht, und alle Worte, welche übereinstimmen, werden bei einer Operation festgestellt.
Es ist sehr gebräuchlich, die Datenworte in »Felder« aufzuteilen. Ein typisches Beispiel: Ein Datenwort, das sich auf einen bestimmten Angestellten bezieht, kann mehrere Felder enthalten, die den Namen, die Berufsbezeichnung, den Stundenverdienst, die Personalnummer usw. bezeichnen; diese Felder sind durch einzelne Bits getrennt, welche die Grenzen der Felder festlegen. Durch Eintragen der Personalnummer in das Vorgaberegister und Vergleich mit den Speicherworten kann das Auslesen des ganzen Datenwortes des Angestellten bewirkt werden. Die Datenworte im Speicher brauchen jedoch nicht notwendigerweise dieselbe Länge wie die Speicherworte zu haben. In diesem Falle hat es sich als zweckmäßig erwiesen, ein Datenwort unmittelbar nach dem Ende des vorhergehenden Datenwortes beginnen zu lassen. Wenn jedes Datenwort an der Zeichenstelle beginnt, die sich an das Ende des vorhergehenden Datenwortes anschließt, statt mit dem Beginn eines neuen Speicherwortes zusammenzufallen, kann die Speicherkapazität besser ausgenutzt werden. Man spricht dann von einem Speicher für variable Wortlänge.
Der Nachteil eines solchen Speichers besteht jedoch darin, daß ein oder mehrere Felder aufgetrennt sind und in mehr als einem Speicherwort auftreten und daß deshalb das Prinzip des assoziativen Speichers bisher bei variabler Wortlänge nicht angewandt werden konnte.
Durch die vorliegende Erfindung soll dieser Mangel behoben werden und der Vorteil des assoziativen Speichers auch bei Verwendung variabler Wortlänge ίο erhalten bleiben.
Die erfindungsgemäße Lösung der Aufgabe besteht darin, daß mindestens zwei Vorgaberegister angeordnet sind, die als Schieberegister ausgebildet und kaskadenartig verbunden sind.
F i g. 1 ist ein Blockdiagramm des erfindungsgemäßen assoziativen Speichers;
F i g. 2 zeigt schematisch den in F i g. 1 verwendeten Taktgeber;
F i g. 3 zeigt schematisch eine Steuerschaltung von Fig. 1;
F i g. 4 zeigt Schaltungen für den Sofortvergleich und den Folgevergleich aus Fig. 1;
F i g. 5 bis 11 sind verschiedene Symboldarstellungen von Speicher- und Vorgabe-Registern der Fig. 1. Die F i g. 1 zeigt in Blockform die neuartige Assoziativspeicheranordnung mit einem Speicher 1 von variabler Wortlänge, einem ersten und zweiten Vorgabe-Register 2 bzw. 3, einem Masken-Zeichengeber 4 zur Eingabe von Maskenzeichen in das Vorgabe-Register 2, einer Steuerschaltung 5, einem Taktgeber 6, und mit Schaltungen 7 und 8 für Sofortvergleich bzw. Folgevergleich.
Der Speicher 1 ist eine übliche Speicheranordnung mit Magnetkernen, Supraleitern od. dgl. Er enthält mehrere Zeilen W1 bis Wn zur Aufnahme von Daten. Die Zeilen W1 bis Wn werden als Speicherworte bezeichnet. Jedes Speicherwort enthält mehrere Zeichenstellen, die mit 1 bis m bezeichnet sind und aus je 6 Bits bestehen. Die Speicherworte Wx bis W„ haben feste Länge und Lage. Die im Speicher 1 enthaltene Information hat die Form von Datenworten aus einem oder mehreren Feldern. Der Beginn jedes Datenwortes wird durch das Sonderzeichen φ markiert. Das Ende jedes Datenwortes ist durch das Zeichen φ gekennzeichnet. Anfang und Ende eines Feldes innerhalb eines Datenwortes wird durch das Zeichen A markiert.
Bei der vorliegenden Erfindung können die Datenworte mehr als ein Speicherwort einnehmen, und ein oder mehr Felder können in verschiedenen Speicherworten beginnen oder enden. Ein Datenwort kann z. B. bei der Stelle m von Wx beginnen und bei der Stelle 4 von W3 enden; dabei kann ein Feld in W1 beginnen und in W2 enden. Wenn ein Vorgabefeld in ein übliches Vorgaberegister zum parallelen, spaltenweisen Vergleich mit den Feldern der Speicherworte eingeführt wird, so kann sich natürlich nie Übereinstimmung ergeben, wenn das an sich übereinstimmende Feld im Speicher aufgeteilt und in mehr als einem Speicherwort untergebracht ist.
Das System der F i g. 1 enthält nun ein erstes Vorgabe-Register 2 und ein zweites Vorgabe-Register 3. Beide Vorgabe-Register 2 und 3 sind Schieberegister, die ein in ihnen enthaltenes Zeichen nach Zufuhr von zwei Schiebeimpulsen um je eine Stelle nach links verschieben. Die beiden Register sind so verbunden daß die in der letzten, ganz links befindlichen Zeichenstelle des Registers 2 enthaltene Information ir
die erste, ganz rechts befindliche Zeichenstelle des Registers 3 durch die Schiebeimpulse transportiert wird. Zum Register 2 gehört weiter ein Masken-Zeichengeber 4, der mit der ersten Zeichenstelle so verbunden ist, daß beim Auftreten der Schiebeimpulse ein Masken-Zeichen in die erste Zeichenstelle eingeschrieben wird. Die Vorgabe-Register 2 und 3 enthalten auch die Zwischenspeicherstellen, die für Schiebeoperationen nötig sind. Die Zwischenspeicher sind in Fig. 1 nicht dargestellt; gezeigt ist lediglich die letzte Zeichenstelle des zum Vorgabe-Register 2 gehörenden Zwischenspeichers. Sie ist in Fig. 1 mit dem Bezugszeichen 9 versehen und so angelegt, daß sie danach abgefragt werden kann, ob in ihr ein FeIdgrenz-Zeichen /^ enthalten ist.
Ehe in die Register 2 und 3 ein Vorgabewert eingetragen wird, ist dort in jeder Zeichenstelle ein Maskenzeichen enthalten. Das Vorgabe-(Feld-)Wort wird in das Register 2 so eingetragen, daß sein rechtes Feldgrenz-Zeichen (niedrigste Stelle) die erste Zeichenstelle einnimmt. Die Anordnung eines typischen Datenwortes im Speicher 1 und eines Vorgabewertes im Register 2 ist symbolisch in F i g. 5 gezeigt, bei der Maskenzeichen durch den Buchstaben M dargestellt sind. Bei der mit F i g. 1 übereinstimmenden Darstellung in Fig. 5 enthält der Speicher 1 zwei Datenworte: das erste erstreckt sich von der sechsten Zeichenstelle des Speicherwortes W1 bis zur sechsten Zeichenstelle des Wortes W3; das zweite Datenwort erstreckt sich von der fünften Zeichenstelle des Speicherwortes W3 bis zur dritten Zeichenstelle des Speicherwortes W-. In dem Beispiel haben die Speicherworte eine Länge von sechs Zeichen; in praxi sind sie von größerer Länge.
Der Vorgabewert wird in das Register 2 in üblicher Weise eingetragen; sein rechtes Feldgrenz-Zeichen kommt in die erste Zeichenstelle. Die Zeichenstellen der Register 2 und 3, die keine Zeichen oder Feldgrenz-Zeichen enthalten, sind mit Masken-Zeichen gefüllt.
Unter den in F i g. 5 gezeigten Bedingungen möge nun der Taktgeber6 (Fig. 1) gestartet werden. Der Taktgeber wird noch ausführlicher beschrieben werden; vorläufig genügt es festzustellen, das er pro Takt fünf Impulse A, B, C, D und E erzeugt. Wenn der Taktgeber gestartet wird, beginnt er mit der Aussendung eines Λ-Impulses, und nach Erhalt eines Stopp-Impulses läuft er weiter bis zur Aussendung eines Ε-Impulses, ehe er anhält. Wenn der Taktgeber nicht gestoppt wird, läuft er ununterbrochen weiter unter Aussendung der Impulse Λ, B, C, D, E, 2A, 2B, 2C, 2D, 2E usw.
Der /!-Impuls versetzt den Speicher 1 in die Vergleichs-Lage und befragt die letzte Zeichenstelle 9 des Zwischenspeichers von Register 2, um festzustellen, ob ein Feldgrenz-Zeichen dort von einer früheren Operation her enthalten ist. Mit der in Fig. 5 gezeigten Bedingung ist das nicht der Fall.
Der B-Impuls verursacht einen getrennten Br-Impuls, der die bistabilen Schaltungen im Sofort-Vergleicher 7 in den Zustand »nicht gleich« rückstellt, so daß sie bei der späteren Befragung des Speichers 1 zur Anzeige einer Übereinstimmung umgeschaltet werden können. Der ß-Impuls veranlaßt weiter, daß die im Vorgaberegister 2 enthaltene Information in den Speichert eingelesen wird, wo sie parallel, Spalte für Spalte mit der Information im Speicher verglichen wird. Es wird z. B. das Feldgrenz-Zeichen in der ersten Zeichenstelle von Register 2 mit der Information in der ersten Zeichenstelle jedes Speicherwortes W1 bis W1, verglichen; weiter wird die »2« der zweiten Zeichenstelle (des Registers 2) verglichen mit der Information in der zweiten Zeichenstelle jedes Speicherwortes W1 bis Wn usw.
Die Schaltung des Speichers 1 und die Art und Weise, in welcher der Inhalt der Vorgabe-Register zum Speicher übertragen und mit dessen Inhalt verglichen wird, sowie die Art und Weise, in der die Übereinstimmung zwischen einem Speicherfeld und dem Vorgabewert aus den Registern in einer Anzeige bei den Vergleichern 7 und 8 umgewandelt wird, sind an sich bekannt und entsprechen der Arbeitsweise üblicher assoziativer Speicher. Die Beschreibung braucht sich deshalb hier nicht darauf zu erstrecken.
Unter der in F i g. 5 dargestellten Bedingung kann
also keine Übereinstimmung zwischen dem Feld im Vorgabe-Register 2 und dem zugehörigen Feld sowohl im ersten als auch im zweiten Datenwort des Speichers 1 festgestellt werden. Der nächste Impuls aus dem Taktgeber 6, der C-Impuls, der normalerweise die bistabilen Vergleichs-Schaltungen im Sofort-Vergleich-Register 7 in den Zustand »gleich« umschaltet, wird eine solche Umschaltung nicht vornehmen, da keine Gleichheit festgestellt wird.
Die nächsten beiden Impulse aus dem Taktgeber6, mit D und E bezeichnet, verschieben den Inhalt der Register 2 und 3 um eine Zeichenstelle nach links, wie es aus F i g. 6 hervorgeht. Der Taktgeber 6 beginnt eine neue Folge von Impulsen; die Impulse M, -B und 2C verursachen dasselbe Ergebnis »nicht gleich« wie es für den ersten Takt beschrieben wurde. Anschließend verschieben die Impulse 2D und 2E wieder den Inhalt der Register 2 und 3 um eine Zeichenstelle nach links, so daß sich die in Fig. 7 gezeigte Lage ergibt.
Jetzt ist das erste Feldgrenz-Zeichen in die erste Zeichenstelle des Registers 3 eingelaufen. Der Zeitpunkt, zu dem ein ursprünglich in das Register 2 eingegebenes Feldgrenz-Zeichen in das Register 3 einzulaufen beginnt, wird nachstehend als »Überlauf« bezeichnet. Der Impuls 3A des nächsten Taktes versetzt den Speicher 1 wiederum in die Vergleichs-Lage und fragt die Position 9 des Zwischenspeichers von Register 2 nach einem Feldgrenz-Zeichen ab. Mit den in F i g. 7 gezeigten Bedingungen befindet sich jetzt ein Feldgrenz-Zeichen in dieser Speicherstelle. Unter diesen veränderten Umständen ist der Arbeitsablauf ein anderer (die zugehörige Schaltung wird später beschrieben). Eine Änderung besteht darin, daß jetzt der Inhalt des Registers 3 (bisher 2) beim Auftreten des Impulses 3B in den Speicher 1 eingelesen wird. Der Impuls 3C, der den Speicher 1 nach Gleichheit abfragt, liefert unter den gegebenen Bedingungen die Anzeige »nicht gleich«. Es ist darauf hinzuweisen, daß nur die höchste Zeichenstelle des Vorgabe-Feldes im Register 3 enthalten ist und mit dem Speicher 1 yerglichen wird. Da keine Übereinstimmung vorliegt, ist es unnötig, auch noch den Vergleich auf die niedrigeren Zeichenstellen des Registers 2 zu erstrecken. Mangels Gleichheit verursachen die folgenden Impulse 3D und 3E eine Verschiebung in den Registern 2 und 3; es ergibt sich die in Fig. 8 dargestellte Lage.
Die Übereinstimmung des Feldgrenz-Zeichens im Register 3 mit dem Feldgrenz-Zeichen in Wort W2 des Speichers 1 spielt hier keine Rolle, weil nur das Feldgrenz-Zeichen selbst vorhanden ist.
5 6
Nun befindet sich das Zeichen »9« des Vorgabe- nach dem Auftreten des Impulses 6E ist in Fig. 10
wertes in der äußersten rechten Zeichenstelle von dargestellt.
Register 3. Während des nächsten Taktes bringt der Der Taktgeber 6 startet von neuem und der Spei-Impuls M den Speicher 1 in die Vergleichs-Lage und eher 1 wird durch den Impuls 1A zurückgestellt, der befragt die letzte Zeichenstelle 9 des Vorgaberegisters 2 5 Inhalt des Registers 3 wird mit den Speicherwörtern nach einem Feldgrenz-Zeichen. Ein solches Feld- beim Auftreten des Impulses ~<B verglichen, der Imgrenz-Zeichen war beim vorhergehenden Takt in die- puls 7C zeigt die Bedingung »nicht gleich« an, und die ser Zeichenstelle vorhanden und verursachte den Impulse 7D und 1E verschieben den Inhalt der Re- »Überlauf«. Der »Überlauf«-Zustand bleibt erhalten gister 2 und 3 zu der in Fig. 11 gezeigten Lage. Diebis ein zweites Feldgrenz-Zeichen in der Zeichen- io scr Figur ist zu entnehmen, daß das zweite Feldgrenzstelle 9 des Zwischenspeichers erscheint und damit Zeichen in der letzten Zeichenstelle 9 des Zwischenanzeigt, daß der Vorgabewert vollständig im Regi- Speichers enthalten sein muß. Dieser Zustand wird ster 3 enthalten ist. Der Impuls 4B liest den Inhalt des beim Auftreten des Taktimpulses M festgestellt, und Registers 3 in den Speicher 1 ein. Der Impuls 4C be- er hat den Stopp des Taktgebers 6 (nach dem Aufwirkt die Abfrage nach dem Vergleichsergebnis; mit 15 treten des Impulses HE) zur Folge und zeigt an, daß dem in F i g. 8 gegebenen Zustand ist der Vergleich der Vergleich mit dem derzeitigen Vorgabewert vollnegativ. Es ist zu beachten, daß zwar das Zeichen »9« endet ist. Weiter wird ein Rückstellimpuls erzeugt, in der ersten Zeichenstelle von Register 3 mit dem der die Steuerschaltung 5 zurückstellt. Die Anord-Zeichen »9« in der ersten Ziffernstelle des Speicher- nung ist nun in der Lage, einen neuen Vorgabewert wortes W3 übereinstimmt, daß aber keine Überein- 20 zu einem weiteren Vergleich aufzunehmen.
Stimmung besteht zwischen dem Feldgrenz-Zeichen Bei der bisherigen Betrachtung der Anordnung war in der zweiten Zeichenstelle von Register 3 mit »Überlauf« notwendig, bevor eine Übereinstimmung irgendeiner zweiten Zeichenstelle von Speicherwör- angezeigt werden konnte. Natürlich kann das im Speitern. Deshalb verursacht der Impuls 4C die Anzeige chcrl befindliche Feld, dessen Übereinstimmung fest- »nicht gleich«, und die Impulse 4D und 4E ver- 25 gestellt werden soll, auch gänzlich in einem Speicherursachen in den Registern 2 und 3 eine Verschiebung wort enthalten sein, z. B. das FeId^ 608 φ. im Speizudem in Fig. 9 gezeigten Zustand. cherwort W1, der Fig. 5. In diesem.Falle kann die
Der Impuls ~>A versetzt den Speicher 1 wieder in Übereinstimmung beim ersten Takt festgestellt werdie Vergleichs-Lage, und der Impuls SB liest den In- den, und das Erscheinen des »Überlaufs« ist nicht halt des Registers 3 in den Speicher 1. Nun besteht die 30 nötig. Die Schaltung ist so eingerichtet, daß ein EntÜbereinstimmung zwischen dem Inhalt des Registers 3 nahme-Vorgang nach Übereinstimmung jederzeit und den ersten drei Zeichenstellen des Speicherwör- stattfinden kann, nachdem der Sofort-Vergleich volltes W1; nur das Speicherwort W} liefert also die An- ständig aufgetreten ist, auch wenn kein »Überlauf« zeige »gleich«. Der Impuls 5C fragt den Speicher 1 auftrat. Nach dem Auftreten eines »Überlaufs« kann nach dem Vergleichsergebnis ab und stellt die deich- 35 jedoch nur der Folge-Vergleich einen Entnahmeheit für das Wort W1 fest. Die Gleichheit betrifft Vorgang herbeiführen.
nicht den ganzen Vorgabewert, sondern nur die ersten Bisher wurde die Arbeitsweise der Anordnung in drei Zeichenstellen »φ95« des Feldes im Register 3. allgemeinen Ausdrucken besprochen, nun soll eine Diese Übereinstimmung wird im Sofort-Vergleicher 7 eingehende Erläuterung der Arbeitsweise der einzelgespeichert. Die niedrigen Zeichen »2« und -φ> des 40 nen Schaltungen folgen.
Vorgabewertes befinden sich noch im Register 2 und F i g. 2 zeigt Einzelheiten des Taktgebers 6 für die
dieses muß jetzt noch mit dem Speicher 1 in Bezie- Register 2 und 3. Ein Impuls-Generator 10 erzeugt
hung gebracht werden. Die Schiebeimpulse 5Z) und 5E in zyklischer Folge die vorher schon besprochenen
werden nun gesperrt, um die Zeichenstellen für die fünf Impulse A, B, C, D, E. Der Impuls/i erscheint
Zeichen »2« und .φ, nicht zu stören. 45 auf Leitung 11 und dient (über Leitung 12) zur Her-
Der Impuls 6A des nächsten Taktes bringt wieder- stellung der Vergleichs-Lage im Speicher 1 und (über
um den Speicher in die Vergleichs-Lage. Dieser Vor- Leitung 13) zur Abfrage der letzten Zeichenstelle 9
gang beeinflußt die Vergleichsanzeige des Sofort-Ver- des Zwischenspeichers in Fig. 1. Der Impuls B er-
gleichers 7 nicht. Die Vergleicher 7 und 8 werden scheint auf Leitung 14 und dient als »Lese«-Strom
nur durch einen besonders erzeugten Impuls Br oder 5° zum Einlesen des Inhalts von Register 2 oder 3 in
durch eine andere Bedingung zurückgestellt. den Speicher 1 über die Leitung 15. Der Impuls B
Beim Auftreten des Impulses 6B wird der Inhalt dient weiter als je ein Eingang zu den UND-Schal-
des Registers 2 in den Speicher 1 zwecks Vergleich tungen 16 und 17; als weitere Eingänge dienen das
eingelesen. Dieses Mal liegt Gleichheit während des Signal »Wahl-Register 3« auf Leitung 18 für die
Abfrageimpulses vor, und die ansprechende Anzeige 55 UND-Schaltung 16 und das Signal »vor Überlauf«
gelangt zum Folge-Vergleich 8. Ein Signal aus dem auf Leitung 19 für die UND-Schaltung 17. Die Si-
letzteren zeigt die vorgefundene Gleichheit an und gnale auf den Leitungen 18 und 19 kommen aus der
dient auch zum Anhalten des Taktgebers nach dem Steuerschaltung 5 von Fig. 1, die noch besprochen
Impuls 0E; es muß jetzt das Auslesen des überein- wird. Die Ausgangssignale der UND-Schaltungen 16
stimmenden Wortes aus dem Speicher stattfinden. 60 und 17 bilden hinter der ODER-Schaltung 20 den
Diese Speicherentnahme kann in an sich bekannter Impuls »ßr« auf Leitung 21, welcher zur Rückstel-Weise geschehen. In F i g. 1 ist die dafür vorgesehene lung der bistabilen Schaltungen im Sofort-Verglei-Anordnung durch den Block 8 α dargestellt. Das Ent- eher 7, im Folge-Vergleicher 8 und in der Steuernahme-Signal erscheint zur Zeit des Impulses 0C, schaltung 5 dient. Der Impuls Br ist nur dann nicht ebenso das Stoppsignal für den Taktgeber 6. Dieser 65 vorhanden, wenn ein Überlauf stattgefunden hat, das läuft zwar weiter bis zum Impuls 6E, die Impulse GD Vorgabe-Register 3 verglichen worden ist und der und 0E haben jedoch auf das Entnahme-Signal keinen Inhalt des Vorgabe-Registers 2 in den Speicher 1 einEinfluß mehr. Der Zustand der Register 2 und 3 gelesen wird. Der Impuls Br ist dann unerwünscht,
da die Rückstellung der bistabilen Schaltungen die gespeicherten Übereinstimmungs-Ergebnisse beseitigen würde, die durch Vergleich mit dem Vorgabe-Register 3 erlangt wurden.
Der Impuls C erscheint auf Leitung 22 (Fig. 2) und prüft im Sofort-Vergleicher 7 der Fig. 1 auf Übereinstimmung. Der Impuls D auf Leitung 23 wird den UND-Schaltungen 24 und 25 zugeführt, deren Ausgangssignale hinter der ODER-Schaltung 26 über Leitung 27 zu den Vorgabe-Registern 2 und 3 zur Verschiebung des Inhaltes dieser Register in ihre Zwischenspeicher dient. Der Impuls E auf Leitung 28 gelangt zu den UND-Schaltungen 29 und 30, deren Ausgangssignal hinter der ODER-Schaltung 31 den Inhalt der Zwischenspeicher wieder in die folgende Stelle der Vorgabe-Register 2 und 3 verschiebt. Die jeweils zweiten Eingänge der UND-Schaltungen 24 und 29 stammen aus der Steuerschaltung5 der Fig. 1 und führen den Impuls »Wahl-Register 2«. Die weiteren Eingänge der UND-Schaltungen 25 und 30 sind einerseits das Signal »Wahl-Register 3« auf Leitung 18 und andererseits »nicht gleich« auf Leitung 34 aus der Steuerschaltung 5. Dadurch ist sichergestellt, daß eine Schiebc-Operation stattfindet, wenn eines der Register 2 oder 3 ausgelesen und Ungleichheit festgestellt wurde. Eine Stellenverschiebung ist nur dann nicht erwünscht, wenn nach einem Überlauf der Inhalt des Registers 3 ein positives Vergleichsergebnis liefert. Dann muß der Inhalt des Registers 2 ohne vorherige Verschiebung in den Speicher 1 eingelesen werden. Es besteht dann ein Signal »Wahl-Register 3« auf Leitung 18, aber keine Signale auf den Leitungen 33 und 34. Die Impulse D und E sind dann durch die UND-Schaltungen 24, 25, 29 und 30 gesperrt und eine Stellenverschiebung unterbleibt.
Zum Anhalten des Taktgebers 10 dient die Leitung 36, die vom Folge-Vergleicher kommt und bei einem positiven Vergleichsergebnis den Taktgeber nach dem Impuls E anhält, um das Auslesen des übereinstimmenden Wortes zu ermöglichen. Die Startlcitung 35 kommt von der Entnahmeschaltung, so daß ein Impuls aus dieser Schaltung den Taktgeber starten kann, sobald feststeht, daß keine weitere Übereinstimmung bei der gegebenen Verschiebe-Lage der Register 2 und 3 vorliegt. Einzelheiten dieser Entnahmeschaltung (8a, Fig. 1) sind für die vorliegende Erfindung ohne Bedeutung.
Die Steuerschaltung 5 von F i g. 1 ist in F i g. 3 in größerer Ausführlichkeit gezeigt. Vor einem Vergleichsvorgang sind die verschiedenen bistabilen Schaltungen rückgestellt. Die Schaltung 37 liefert dabei das Signal »vor Überlauf« zur Leitung 19 und »kein Signal« zur UND-Schaltung 43. Die bistabile Schaltung 38 liefert »kein Signal« zur UND-Schaltung 39; die Schaltung 40 liefert »kein Signal« zur UND-Schaltung 41, und die Schaltung 42 liefert ein Signal »Wahl-Register 2« auf Leitung 33.
Die Steuerschaltung5 der Fig. 3 liefert nun die Signale für den erstmaligen Vergleichsvorgang, d. h. für die Zeit vor dem Überlauf, wenn nur der Inhalt des Vorgabe-Registers 2 in Beziehung gesetzt wird. Während der Takte vor dem Überlauf gelangen die Impulse A aus dem Taktgeber 10 (F i g. 2) als Eingangssignale zur Leitung 13 und die Impulse B zur Leitung 15. Sie können jedoch zu dieser Zeit die UND-Schaltungen 43, 46 mangels weiterer Eingangssignale nicht passieren.
In dem Takt nach dem Überlauf gelangt der Impuls A zur letzten Zeichenstelle 9 des Zwischenspeichers von Register2 (Fig. 1). Die Anwesenheit des ersten Feldgrenz-Zeichens in dieser Stelle erzeugt auf Leitung 47 ein Signal (»nach Überlauf«). Der Impuls A auf Leitung 13 (Fig. 3) ist von solcher Dauer, daß er noch an der UND-Schaltung 43 anliegt, wenn das Signal »nach Überlauf« über Leitung 47 die bistabile Schaltung 37 umgeschaltet und zur UND-Schaltung 43 gelangt ist. Das Ausgangssignal dieser ίο UND-Schaltung passiert auch die UND-Schaltung 48, da zu dieser Zeit die UND-Schaltung 49 nicht durchlässig ist und der Inverter 50 dazwischenliegt. Die UND-Schaltung 48 schaltet die bistabile Schaltung 42 um, so daß auf Leitung 18 das Signal »Wahl-Register 3« entsteht. Auf diese Weise wird das Register 3 beim Vorliegen eines Überlaufs vor dem Register 2 gelesen. Beim Umschalten der bistabilen Schaltung 37 entsteht auf Leitung 51 das Signal »nach Überlauf«, und das Signal auf Leitung 19 verschwindet.
Wenn der Impuls B auf Leitung 15 erscheint, kann er die UND-Schaltung 46 passieren, da jetzt von Schaltung 42 ein Signal vorliegt. Die UND-Schaltung 46 schaltet die bistabile Schaltung 38 um, so daß die UND-Schaltung 39 beim nächsten Auftreten eines Signals »nach Überlauf« (von 52) durchlässig wird. Der nächste Impuls »nach Überlauf« während des Taktes »Wahl-Register 3« zeigt an, daß das ganze Feld in Vorgabe-Register 3 enthalten ist und daß die Vergleichsvorgänge beendet werden können. Dieser Impuls wird dann die UND-Schaltungen 52 und 59 passieren können und die bistabile Schaltung 40 umschalten, so daß der Impuls E auf Leitung 32 danach die UND-Schaltung 41 passieren kann und über Leitung 36 zum Taktgeber 10 einen Stopp-Impuls liefert. Die UND-Schaltung 52 stellt sicher, daß ein Stopp-Impuls nur am Ende eines Taktes »Wahl-Register 3« entstehen kann.
Das Verzögerungselement 45 ist der UND-Schaltung 52 vorgeschaltet, um jeden Irrtum unmittelbar nach einem Überlauf zu vermeiden, d. h., wenn das erste Feldgrenz-Zeichen des Vorgabewertes in der ersten Weichenstelle von Register 3 steht. (Dieses erste Feldgrenz-Zeichen wird dann auch in die letzte Zeichenstelle 9 des Zwischenspeichers eingegeben.) Wenn der Impuls »nach Überlauf« an der UND-Schaltung 52 eintrifft, bevor der Impuls Λ (Leitung 13) die UND-Schaltungen 43 und 48 passiert und die bistabile Schaltung 42 umgeschaltet und das Signal von Leitung 18 entfernt hat, dann könnte ein falsches Signal die UND-Schaltung 52 passieren, was schließlich während des Impulses E zu einem Stopp-Signal führen würde. Um diese Möglichkeit zu vermeiden, ist die Verzögerung 45 eingeschaltet. Die bistabile Schaltung 54 ermöglicht es, das Vorgabe-Register 2 beim Vorliegen einer Übereinstimmung unmittelbar nach dem Vorgabe-Register 3 zu lesen. Der Impuls Br auf Leitung 21'(vom Taktgeber kommend) bringt die Schaltung normalerweise in den Zustand »nicht gleich«. Das bedeutet, daß auf Leitung 55 ein Signal ansteht und daß die UND-Schaltung 49 vorbereitet ist. Dadurch ist für die Dauer eines Signals »Wahl-Register 3« die Schaltung 49 durchlässig und hinter dem Inverter 50 die UND-Schaltung 48 gesperrt, so daß kein Impuls A über die UND-Schaltung 43 zur bistabilen Schaltung 42 gelangen kann. Die Folge ist, daß nach dem Überlauf und solange keine Übereinstimmung vorliegt, nur das
409 534/303
Register 3 gelesen wird. Beim Auftreten einer Übereinstimmung soll dann das Vorgabe-Register 2 gelesen werden. Das Signal »gleich« auf Leitung 53 aus der Folge-Vergleichs-Schaltung 3 der F i g. 1 schaltet dann die bistabile Schaltung 54 um und beseitigt das Signal »nicht gleich« von den Leitungen 55 und 34. Für die Leitung 34 wurde dieser Zustand schon in Verbindung mit Fig. 2 besprochen. Das Entfernen des Signals »nicht gleich« von Leitung 55 sperrt die UND-Schaltung 49, so daß der nächste Impuls A die UND-Schaltung 48 passieren und die bistabile Schaltung 42 umschalten kann; es entsteht dann das Signal »Wahl-Register 2«, und der Inhalt des Vorgabe-Registers 2 wird mit dem Speicherinhalt verglichen. Dieser Zustand kann nur nach einem Überlauf eintreten, wenn Übereinstimmung mit dem Inhalt des Vorgabe-Registers 3 vorgefunden wurde.
Die F i g. 4 zeigt Einzelheiten des Sofort-Vergleichers 7 (linke Hälfte) und des Folge-Vergleichers 8 (rechte Hälfte) von Fig. 1. Die Eingangsleitungen 60-1, 60-2 ... 60-(n-l), 60-« sind die Ausgangsleitungen vom Speicher 1 (Fig. 1), die zu den Speicherwörtern W1, W2 ... Wn gehören. Ein Signal auf einer dieser Leitungen zeigt an, daß Übereinstimmung zwischen dem Inhalt eines Vorgabe-Registers und dem Inhalt des zugehörigen Speicherwortes vorliegt. Die Eingangsleitungen führen zu den Eingängen von UND-Schaltungsgruppen. Leitung 33 (Signal »Wahl-Register 2«), Leitung 18 (Signal »Wahl-Register 3«) und Leitung 19 (Signal »vor Überlauf«) aus F i g. 3 führen zu bestimmten UND-Schaltungen derGruppen.
Die zwei möglichen Wege, auf denen eine vollkommene Übereinstimmung eintreten kann, sind erstens: ein vollständiges Feld in einem einzigen Speicherwort zeigt Übereinstimmung mit dem Vorgabewort in Register 2 vor Eintritt des Überlaufs; zweitens: die Zeichen höhrerer Ordnung des Vorgabewortes in Register 3 zeigen Übereinstimmung mit einem Teil eines Feldes in einem Speicherwort nach Eintritt des Überlaufs, gefolgt von einer Übereinstimmung der Zeichen niedriger Ordnung in Register 2 mit dem restlichen Teil des Feldes in einem Speicherwort, das den Speicherwörtern mit einem Zeichen höherer Ordnung benachbart ist.
Der erste Fall soll zusammen mit F i g. 4 betrachtet werden. Ein vollkommen im Speicherwort W2 enthaltenes Wort stimmt mit dem Vorgabewort in Register 2 vor Eintreten des Überlaufs überein. Es wird dann über Leitung 60-2 an je einem Eingang der UND-Schaltungen 63, 64 und 65 ein Signal erscheinen. Da noch kein Überlauf vorliegt, führt die Leitung 19 das Signal »vor Überlauf«, und da das Register 2 im Spiel ist, wird die Leitung 33 ein Signal »Wahl-Register 2« führen; die UND-Schaltung 64 wird durchlässig und liefert ein Signal über die ODER-Schaltung 72 zur UND-Schaltung 76. Mit einem Impuls C auf Leitung 22 wird die UND-Schaltung 76 durchlässig und stellt die bistabile Schaltung 82 um. Auf Leitung 86 erscheint ein Signal. Durch einen Impuls Br wurden vorher die bistabilen Schaltungen 81, 82, 83 und 84 rückgestellt, so daß auf den Leitungen 85, 86, 88 und 90 kein Signal ansteht.
Das nun auf Leitung 86 erscheinende Signal passiert die ODER-Schaltung 92 des Folge-Vergleichers 8 und läuft über Leitung 53 zur bistabilen Schaltung 54 der Fig. 2, wie vorher beschrieben. Da an der UND-Schaltung 93 schon das Signal »vor Überlauf« von Leitung 19 anliegt, gelangt ein Signal über die ODER-Schaltung 94 als Stopp-Signal zum Taktgeber 10 über die Leitung 36. Das Signal auf Leitung 36 wird außerdem der Entnahmeschaltung 8a zur Anzeige des beendeten Vergleichsvorganges zugeleitet. Falls der Vergleichsvorgang gegenüber einem anderen Speicherwort als W.-, positiv verläuft, erscheint auf einem anderen der Leiter 60-1 bis 60-« ein Signal. Ergibt sich Gleichheit zwischen einem Zeichen höherer Ordnung in Register 3 und einem Zeichen in
ίο einem Speicherwort nach dem Überlauf, so erscheint : zunächst auch ein Signal auf z. B. der Leitung 60-2. Da der Überlauf stattgefunden hat, besteht das Signal »Wahl-Register 3« auf Leitung 18, aber keine Signale auf den Leitungen 33 oder 19. Es wird also jetzt die UND-Schaltung 65 durchlässig, so daß mittels der ODER-Schaltung 72 und eines Impulses C die UND- i Schaltung 76 geöffnet und die bistabile Schaltung 82 umgeschaltet werden kann. Das resultierende Signal ; auf der Leitung 86 passiert die ODER-Schaltung 92; die UND-Schaltung 93 ist jedoch gesperrt, da das Signal »vor Überlauf« auf Leitung 19 fehlt. Die ODER-Schaltung 94 kann deshalb über Leitung 36 den Taktgeber nicht anhalten. Über Leitung 53 wird jedoch die bistabile Schaltung 54 (Fi g. 3) umgeschaltet; sie verursacht beim nächsten Impuls A das Signal ι »Wahl-Register 2« und damit den Vergleich der Vorgabezeichen aus dem Register 2 mit den Zeichen des i benachbarten Speicherwortes. Wenn nämlich ein Feld im Speicher aufgeteilt ist, so befindet sich ein Teil zwangläufig im benachbarten Speicherwort. Es muß jedoch sichergestellt sein, daß Übereinstimmung nur auftreten darf, wenn sie im Zusammenhang mit dem nächstbenachbarten Speicherwort eintritt. Das geschieht (im Beispiel) durch das Signal auf Leitung 86 der Fig. 4. Außer zu der ODER-Schaltung 92 gelangt dieses Signal noch zu der UND-Schaltung 66, die (im Beispiel) dem folgenden Speicherwort Wn-1 zugeordnet ist. Ergibt sich also eine Übereinstimmung zwischen Zeichen im Speicherwort Wn _ t und den Zeichen niedrigerer Ordnung im Register 2, dann entsteht ein Signal auf Leitung 60-(m-1), das den UND-Schaltungen 66, 67 und 68 zugeführt wird. Da das Register 2 nach dem Überlauf gelesen wurde, wird ein Signal auf Leitung 33, aber keine Signale auf den Leitungen 18 und 19 zur Verfügung stehen. Es wird also die UND-Schaltung 66 durchlässig. Beim Auftreten des nächsten Impulses C wird die UND-Schaltung 77 ein Ausgangssignal zur Umschaltung der bistabilen Schaltung 96 liefern. Es ist zu beachten, daß die bistabilen Schaltungen 95, 96 und 97 normalerweise kein Ausgangssignal liefern, da sie über Leitung 21 von dem Impuls Br rückgestellt sind. Nach der Umschaltung von 96 gelangt also ein Signal zur ODER-Schaltung 98, das zur UND-Schaltung 99 weiterläuft. Da ein Überlauf stattfand, führt die Lei- i tung 51 ein Signal, die UND-Schaltung 99 ist durchlässig, und hinter der ODER-Schaltung 94 entsteht auf Leitung 96 die Anzeige für den beendeten Vergleich und ein Stopp-Signal für den Taktgeber.
Läßt sich keine Gleichheit mit einem Speicherwort feststellen, so wird auf keinen der Eingangsleiter 60-1 bis 60-« ein Signal erscheinen, und die Schaltung der Fig. 4 wird nicht arbeiten. Wenn der Sofort-Vergleich ein positives Ergebnis zwischen den Vorgabewerten höherer Ordnung im Register 3 nach Überlauf ergibt, so wird die Schaltung 4, wie oben beschrieben, arbeiten, d. h., die Gleichheit wird angezeigt werden, und das Signal auf Leitung 53 wird das Signal »Wahl-
Register 2« in der Schaltung der F i g. 3 zur Folge haben. Ist bei dem Folge-Vergleich zwischen den Zeichen niedrigerer Ordnung im Register 2 keine Übereinstimmung feststellbar, dann ergibt sich kein Signal »gleich« aus dem benachbarten Speicherwort und kein Eingangssignal auf dem benachbarten Eingangsdraht (60), und die Ausgangsleitung 36 (F i g. 4) kann kein Signal abgeben; der Taktgeber läuft weiter und verschiebt den Vorgabewert in den Registern zu neuen Vergleichs-Vorgängen.
Sobald das gewünschte Feld im Speicher festgestellt wurde, muß das ganze Datenwort, welches dieses Feld enthält, ausgelesen werden. Das kann mit bekannten Schaltungen geschehen, da das Datenwort durch Anfangs- und Endmarkierungen eingegrenzt ist.
Die bisherige Beschreibung betrifft eine Assoziativspeicheranordnung, in dem Wörter variabler Länge miteinander in Beziehung gesetzt werden können und
in dem in den Datenwörtern enthaltene Felder Zeichenstellen in mehr als einem Speicherwort einnehmen können. Die Grundsätze der vorliegenden Erfindung können auf Speicheranordnungen mit z. B. supraleitenden Elementen oder Magnetkernen usw. angewendet werden.
Im beschriebenen Ausführungsbeispiel befinden sich die aufeinander zu beziehenden oder zu vergleichenden Felder in zwei aufeinanderfolgenden Speicherwörtern, und die Einrichtung enthält nur ein Überlauf-Register 3. Sollten für besondere Fälle die zu vergleichenden Felder von solcher Länge sein, daß sie drei oder mehr Speicherwörter überdecken, dann sind zwei oder mehr zusätzliche Überlauf-Register nötig. Als allgemeine Regel gilt, daß die Gesamtzahl der Speicherwörter, in denen sich ein betrachtetes Feld befindet, gleich der Gesamtzahl der Register sein muß.
Hierzu 4 Blatt Zeichnungen

Claims (2)

Patentansprüche:
1. Einrichtung zur Abfrage eines assoziativen Speichers mit Folge/Sofort-Vergleichern und mit zugeordnetem Suchregister, in dem das Suchwort mit Feldgrenzzeichen steht, sowie mit in Speicherworten gleicher Länge angeordneten Speicherelementen zur Speicherung von Datenworten variabler Länge, deren Anfang und Ende markiert sind, dadurch gekennzeichnet, daß mindestens zwei Vorgaberegister (2 und 3) angeordnet sind, die als Schieberegister ausgebildet und kaskadenartig verbunden sind.
2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß zur Speicherung des Feldgrenzzeichens zwischen den beiden Vorgaberegistern (2 und 3) eine weitere Speicherstelle (9) angeordnet ist.
DE1449765A 1963-01-24 1964-01-22 Einrichtung zur Abfrage eines assoziativen Speichers Expired DE1449765C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US253606A US3257646A (en) 1963-01-24 1963-01-24 Variable word length associative memory

Publications (3)

Publication Number Publication Date
DE1449765A1 DE1449765A1 (de) 1969-06-19
DE1449765B2 true DE1449765B2 (de) 1974-08-22
DE1449765C3 DE1449765C3 (de) 1975-04-10

Family

ID=22960966

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1449765A Expired DE1449765C3 (de) 1963-01-24 1964-01-22 Einrichtung zur Abfrage eines assoziativen Speichers

Country Status (3)

Country Link
US (1) US3257646A (de)
DE (1) DE1449765C3 (de)
GB (1) GB987666A (de)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3448436A (en) * 1966-11-25 1969-06-03 Bell Telephone Labor Inc Associative match circuit for retrieving variable-length information listings
US3675212A (en) * 1970-08-10 1972-07-04 Ibm Data compaction using variable-length coding
US3675211A (en) * 1970-09-08 1972-07-04 Ibm Data compaction using modified variable-length coding
US3717851A (en) * 1971-03-03 1973-02-20 Ibm Processing of compacted data
JPS61145636A (ja) * 1984-12-19 1986-07-03 Nec Corp 記号列照合装置
US4777622A (en) * 1985-11-26 1988-10-11 Max-Planck-Gesellschaft Zur Foerderung Der Wissenschaften E.V. Associative data storage system
US5383146A (en) * 1992-06-08 1995-01-17 Music Semiconductors, Inc. Memory with CAM and RAM partitions
US6000008A (en) * 1993-03-11 1999-12-07 Cabletron Systems, Inc. Method and apparatus for matching data items of variable length in a content addressable memory
US6148364A (en) * 1997-12-30 2000-11-14 Netlogic Microsystems, Inc. Method and apparatus for cascading content addressable memory devices
US6199140B1 (en) * 1997-10-30 2001-03-06 Netlogic Microsystems, Inc. Multiport content addressable memory device and timing signals
US6219748B1 (en) 1998-05-11 2001-04-17 Netlogic Microsystems, Inc. Method and apparatus for implementing a learn instruction in a content addressable memory device
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
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
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
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
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
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
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
US6751701B1 (en) 2000-06-14 2004-06-15 Netlogic Microsystems, Inc. Method and apparatus for detecting a multiple match in an intra-row configurable CAM system
US6757779B1 (en) 1999-09-23 2004-06-29 Netlogic Microsystems, Inc. Content addressable memory with selectable mask write mode
US6799243B1 (en) 2000-06-14 2004-09-28 Netlogic Microsystems, Inc. Method and apparatus for detecting a match in an intra-row configurable cam system
US6567340B1 (en) 1999-09-23 2003-05-20 Netlogic Microsystems, Inc. Memory storage cell based array of counters
US6542391B2 (en) * 2000-06-08 2003-04-01 Netlogic Microsystems, Inc. Content addressable memory with configurable class-based storage partition
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
US6934795B2 (en) * 1999-09-23 2005-08-23 Netlogic Microsystems, Inc. Content addressable memory with programmable word width and programmable priority
US7487200B1 (en) 1999-09-23 2009-02-03 Netlogic Microsystems, Inc. Method and apparatus for performing priority encoding in a segmented classification system
US7272027B2 (en) * 1999-09-23 2007-09-18 Netlogic Microsystems, Inc. Priority circuit for content addressable memory
US6813680B1 (en) 2000-06-14 2004-11-02 Netlogic Microsystems, Inc. Method and apparatus for loading comparand data into a content addressable memory system
US7143231B1 (en) 1999-09-23 2006-11-28 Netlogic Microsystems, Inc. Method and apparatus for performing packet classification for policy-based packet routing
US6944709B2 (en) * 1999-09-23 2005-09-13 Netlogic Microsystems, Inc. Content addressable memory with block-programmable mask write mode, word width and priority
US6243281B1 (en) 2000-06-14 2001-06-05 Netlogic Microsystems, Inc. Method and apparatus for accessing a segment of CAM cells in an intra-row configurable CAM system
US6560670B1 (en) 2000-06-14 2003-05-06 Netlogic Microsystems, Inc. Inter-row configurability of content addressable memory
US6252789B1 (en) 2000-06-14 2001-06-26 Netlogic Microsystems, Inc. Inter-row configurability of content addressable memory
US6246601B1 (en) 2000-06-14 2001-06-12 Netlogic Microsystems, Inc. Method and apparatus for using an inter-row configurable content addressable memory

Also Published As

Publication number Publication date
GB987666A (en) 1965-03-31
DE1449765C3 (de) 1975-04-10
US3257646A (en) 1966-06-21
DE1449765A1 (de) 1969-06-19

Similar Documents

Publication Publication Date Title
DE1449765C3 (de) Einrichtung zur Abfrage eines assoziativen Speichers
DE1901343C3 (de) Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen
DE1474062B2 (de) Datenverarbeitungsanlage mit einer anzahl von pufferspeichern
DE2364254B2 (de) Schaltungsanordnung fuer datenverarbeitende geraete
DE3148099C2 (de) Anordnung zum Erkennen einer Digitalfolge
DE1449544A1 (de) Datenverarbeitende Maschine mit ueberlappend abrufbarem Speicherwerk
DE1065466B (de) Schaltungsanordnung zur Steuerung eines Pufferspeichers
DE1271191B (de) Einrichtung zur UEbertragung von Informationseinheiten in die Binaerstellen eines Umlaufspeichers
DE1499178A1 (de) Steuerbarer Datenspeicher mit Verzoegerungsleitung
DE2054941C2 (de) Anordnung zur Auswahl von Datensätzen
DE1474351C3 (de) Datenspeicher
DE2024584B2 (de) Steuereinrichtung für eine allgemeine Datenverarbeitungseinrichtung
DE2936801C2 (de) Steuereinrichtung zur Ausführung von Instruktionen
DE2004762A1 (de) Übertragungsanschlussgerät
DE1449581B2 (de) Vorrichtung zum auslesen eines rechenmaschinen grosspeichers
DE2200744A1 (de) Verfahren und Vorrichtung zum Aussortieren
DE1599080B2 (de) Zahlendarstellungseinrichtung zur anzeige einer mehrstelligen zahl
DE1449385C3 (de) Ausleseeinrichtung für assoziative Speicher
DE1269657B (de) Anordnung zur gesteuerten Entnahme von Informationen aus einer aus mehreren Registerstufen bestehenden, pyramidenfoermig ausgebildeten Speicheranordnung
DE1499191C3 (de) Elektronische Einrichtung für eine Datenverarbeitungsanlage
DE2150292A1 (de) Mikroprogrammgesteuerte Datenverarbeitungsanlage mit ueberlagerter Ausfuehrung und Entnahme von Befehlen
DE1928486A1 (de) Steueranlage fuer Druckgeraete
DE2210737C3 (de) Speicherwerk
DE1286563B (de) Verfahren und Einrichtung zum Wiederauffinden gespeicherter Daten durch assoziativen Vergleich
DE1549463C (de) Einrichtung zur Eingabe und Speiche rung von Daten fur elektronische Datenver arbeitungsanlagen

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)