DE60123542T2 - Assoziativspeicherschaltung für Wiederauffindung in einem Datenverarbeitungssystem - Google Patents

Assoziativspeicherschaltung für Wiederauffindung in einem Datenverarbeitungssystem Download PDF

Info

Publication number
DE60123542T2
DE60123542T2 DE60123542T DE60123542T DE60123542T2 DE 60123542 T2 DE60123542 T2 DE 60123542T2 DE 60123542 T DE60123542 T DE 60123542T DE 60123542 T DE60123542 T DE 60123542T DE 60123542 T2 DE60123542 T2 DE 60123542T2
Authority
DE
Germany
Prior art keywords
bit
fet
gate
node
circuit
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.)
Expired - Lifetime
Application number
DE60123542T
Other languages
English (en)
Other versions
DE60123542D1 (de
Inventor
Klaus Helwig
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 DE60123542D1 publication Critical patent/DE60123542D1/de
Application granted granted Critical
Publication of DE60123542T2 publication Critical patent/DE60123542T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime 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
    • G11C15/04Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Static Random-Access Memory (AREA)
  • Exchange Systems With Centralized Control (AREA)
  • Debugging And Monitoring (AREA)

Description

  • HINTERGRUND DER ERFINDUNG
  • Die vorliegende Erfindung betrifft einen inhaltsadressierbaren Speicher (Content Addressable Memory, CAM) oder Assoziativspeicher.
  • Ein Assoziativspeicher (CAM) ist ein Speicher, der eine Vielzahl von CAM-Schaltkreisen umfasst, die jeweils eine Speicherschaltkreis und einen Vergleichsschaltkreis umfassen. Der Zugriff auf den CAM erfolgt nicht mittels der Adresse oder des Speicherorts von Daten, sondern mittels des Dateninhalts. Ein Überblick über das Gebiet der CAM-Zellen ist zu finden in K.J. Schultz, „Content-addressable memory core cells, A survey", Integration, The VLSI Journal, 23(2), S. 171 bis 188. In der US-Patentschrift US-A-6,044,005 werden binäre und ternäre CAM-Zellen beschrieben, welche den Aufbau von hochleistungsfähigen CAM-Anordnungen mit großer Speicherkapazität erlauben. In Verbindung mit den 1 und 2 werden CAM-Schaltkreise mit bekannten CAMs beschrieben.
  • ÜBERBLICK ÜBER DIE ERFINDUNG
  • Die Aufgabe der vorliegenden Erfindung besteht darin, einen Assoziativspeicher (CAM) nach Anspruch 1 zu schaffen, der Verbesserungen gegenüber dem Stand der Technik aufweist.
  • Ein Vorteil der vorliegenden Erfindung besteht darin, dass ein Assoziativspeicher (CAM) mit einem verbesserten Layout geschaffen wird. Ein weiterer Vorteil der vorliegenden Erfindung besteht darin, dass ein Assoziativspeicher (CAM) mit einem Layout für größere Speicherkapazitäten geschaffen wird.
  • Ferner ist die vorliegende Erfindung insofern von Vorteil, als sie einen Assoziativspeicher (CAM) mit einem Layout bereitstellt, bei dem je Speicherbit weniger Strom verbraucht wird. Weiterhin besteht ein Vorteil der vorliegenden Erfindung in der Bereitstellung eines Assoziativspeichers (CAM), bei welchem Schreib- und Vergleichszyklen mit hoher Zuverlässigkeit durchgeführt werden können. Noch ein weiterer Vorteil der vorliegenden Erfindung besteht in der Bereitstellung eines Assoziativspeichers, der in einem Datenverarbeitungssystem und/oder einem Datenprozessor mit hohen Taktgeschwindigkeiten arbeiten kann.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Zum besseren Verständnis der vorliegenden Erfindung und ihrer Vorteile dient die folgende Beschreibung in Verbindung mit den beiliegenden Zeichnungen, in welchen gleiche Bezugszeichen für gleiche Teile oder Teile mit gleicher oder ähnlicher Wirkung verwendet werden und in welchen:
  • 1 eine schematische Darstellung eines Einzelbit-CAM-Schaltkreises eines herkömmlichen Assoziativspeichers (CAM) zeigt, welche eine Vielzahl solcher CAM-Schaltkreise und eine Zeichenerklärung umfasst;
  • 2 eine schematische Darstellung eines Einzelbit-CAM-Schaltkreises eines Assoziativspeichers (CAM) zeigt, welche eine Vielzahl solcher CAM-Schaltkreise umfasst;
  • 3 eine schematische Darstellung einer Schaltung von zwei Einzelbitspeichern mit einem Zweibit- Vergleichsschaltkreis gemäß der Erfindung eines Assoziativspeichers (CAM) zeigt, welche eine Vielzahl solcher Schaltungen umfasst;
  • 4 eine schematische Darstellung einer anderen Ausführungsart einer ersten Komponente des in 3 gezeigten Zweibit-Vergleichsschaltkreises zeigt; und
  • 5 eine schematische Darstellung einer weiteren Ausführungsart der ersten Komponente des in 3 gezeigten Zweibit-Vergleichsschaltkreises zeigt.
  • 1 zeigt eine schematische Darstellung eines Einzelbit-CAM-Schaltkreises 100 eines (nicht gezeigten) herkömmlichen Assoziativspeichers, welche eine Vielzahl solcher CAM-Schaltkreise umfasst, und eine Zeichenerklärung für die in den Figuren gezeigten Einzelheiten.
  • Der herkömmliche Einzelbit-CAM-Schaltkreis 100 umfasst einen Einzelbitspeicher 101 und einen Einzelbit-Vergleichsschaltkreis 102.
  • Der Einzelbitspeicher 101 umfasst ein bekanntes Flipflop 103 zum Speichern eines Einzelbits (Bit 0 oder Bit 1; Signalpegel LOW oder HIGH). Das Einzelbit wird durch Adressieren des Flipflops 103 über eine Wortleitung WL und Anlegen eines Signalpegels LOW oder HIGH an eine Bitschreibleitung Echtwert (Bit Line Write True, BLWT) und des Komplements des angelegten Signals an die Bitschreibleitung Komplement (Bit Line Write Complement, BLWC) in das Flipflop 103 geschrieben. Das Flipflop umfasst einen p-FET 106, einen p-FET 107 sowie einen n-FET 108 und einen n-FET 109. Die Wortleitung WL schaltet einen n-FET 104 und einen n-FET 105 und ein Bit wird getaktet und im Flipflop 103 gespeichert. Nach dem Speichern eines Bits 1 im Flipflop 103 umfasst der Knoten A einen Signalpegel HIGH und der Knoten B einen Signalpegel LOW, während nach dem Speichern eines Bits 0 der Knoten A einen Signalpegel LOW und der Knoten B einen Signalpegel HIGH umfasst. Da der Einzelbitspeicher 101 sowie das Flipflop 103 dem Fachmann wohlbekannt sind, werden deren Aufbau und Funktionsweise im Folgenden nicht genauer erläutert.
  • Der bekannte Einzelbit-Vergleichsschaltkreis 102 umfasst einen n-FET 110, einen n-FET 111, einen p-FET 113, einen p-FET 114, einen p-FET 115 und einen n-FET 116, die mit dem Knoten A, dem Knoten B, der Bitvergleichsleitung Echtwert (Bit Line Compare True, BLCT), der Bitvergleichsleitung Komplement (Bit Line Compare Complement, BLCC), der Wiederherstellungsleitung REST und der Treffer-/Fehlerleitung H/M, dargestellt in 1, verbunden sind.
  • Zum Vergleichen, ob ein Vergleichsbit CB 0 (Bit 0 oder Bit 1, Signalpegel LOW oder HIGH) mit dem im Einzelbitspeicher 101 gespeicherten Bit 0 oder Bit 1 übereinstimmt, wird das Vergleichsbit CB 0 an einen Anschluss 110 angelegt, durch einen Inverter 111 invertiert und an die Bitvergleichsleitung Komplement BLCC angelegt, während das Ausgangssignal des Inverters 111 an den Eingang eines Inverters 112 und das invertierte Signal aus dem Inverter 112 wiederum an die Bitvergleichsleitung Echtwert BLCT angelegt wird.
  • Wenn das Vergleichsbit CM 0 mit dem im Einzelbitspeicher 101 gespeicherten Bit übereinstimmt, ändert sich das Potenzial des Knotens C vom Pegel LOW (Masse) auf einen Pegel HIGH (VDD) und der n-FET 116 legt das Potenzial der Treffer-/Fehlerleitung H/M von HIGH (VDD) auf LOW (Masse).
  • Falls das Vergleichsbit CB 0 nicht mit dem im Einzelbitspeicher 101 gespeicherten Bit übereinstimmt, bleibt das Potenzial des Knotens C auf LOW (Masse) und das Potenzial der Treffer/Fehlerleitung H/M auf HIGH (VDD). Vor dem Vergleichen des im Einzelbitspeicher 101 gespeicherten Bits mit einem anderen Vergleichsbit CB 0 oder vor dem Speichern eines anderen zu vergleichenden Bits im Flipflop 103 wird ein Wiederherstellungssignal REST mit dem Potenzial HIGH (VDD) an den p-FET 115 angelegt, der das Potenzial der Treffer-/Fehlerleitung H/M auf HIGH und das Potenzial des Knotens C auf LOW (Masse) legt, worauf der Knoten C wieder sein ursprüngliches Potenzial LOW (Masse) und die Treffer-/Fehlerleitung H/M wieder ihr ursprüngliches Potenzial HIGH annimmt, bevor über Datensignale auf der Bitvergleichsleitung Echtwert BLCT und der Bitvergleichsleitung Komplement BLCC ein Vergleichsbit angelegt wird.
  • 1 zeigt, dass jeder der Knoten A und B das Gate eines p-FET und eines n-FET ansteuert. Daher liegt an jedem der Knoten A und B die elektrische Kapazität von zwei Gates an, sodass die zum Speichern eines Bits im Flipflop 103 erforderliche Zeit verlängert wird.
  • 2 zeigt die zugrunde liegende Technik in Form einer schematischen Darstellung eines Einzelbit-CAM-Schaltkreises 200 eines (nicht gezeigten) Assoziativspeichers, welcher eine (nicht gezeigte) Vielzahl der Einzelbit-CAM-Schaltkreise 200 umfasst. Der Einzelbit-CAM-Schaltkreis 200 umfasst den auch in 1 gezeigten Einzelbitspeicher 101 und das Flipflop 103, unterscheidet sich jedoch durch einen Einzelbit-Vergleichsschaltkreis 201 von dem in 1 gezeigten Einzelbit-CAM-Schaltkreis 100.
  • Ebenso wie der bekannte Einzelbit-Vergleichsschaltkreis 100 umfasst der Einzelbit-Vergleichsschaltkreis 201 den p-FET 113, den p-FET 114, den p-FET 115 und den n-FET 116, jedoch nicht den n-FET 110 und den n-FET 111. Stattdessen umfasst der Einzelbit- Vergleichsschaltkreis 201 einen n-FET 202 und einen Inverter 203.
  • Ebenso wie im Einzelbit-Vergleichsschaltkreis 200 ist der Knoten A mit dem Gate des p-FET 114 und der Knoten B mit dem Gate des p-FET 113 verbunden. Demzufolge ist der Knoten A in 2 nur mit einem Gate eines FET sowie der Knoten B nur mit einem Gate eines FET verbunden.
  • Bei dem in 2 gezeigten Einzelbit-Vergleichsschaltkreis 200 ist ebenso wie im Einzelbit-Vergleichsschaltkreis 100 von 1 der Drain des p-FET 113 mit der Bitvergleichsleitung Komplement BLCC, der Drain des p-FET 114 mit der Bitvergleichsleitung Echtwert BLCT und der Knoten C mit dem Gate des n-FET 116 verbunden. 2 zeigt, dass ebenso wie beim Einzelbit-Vergleichsschaltkreis 100 von 1 die Source des p-FET 115 mit dem Potenzial HIGH und der Drain des p-FET 115 mit der Treffer-/Fehlerleitung H/M, die Treffer-/Fehlerleitung H/M mit der Source des n-FET 116, der Drain des n-FET 116 mit dem Potenzial LOW (Masse) und das Gate des n-FET 116 mit dem Knoten C verbunden ist.
  • Im Gegensatz zu dem in 1 gezeigten Einzelbit-Vergleichsschaltkreis 100 ist in dem in 2 gezeigten Einzelbit-Vergleichsschaltkreis 200 die Source des n-FET 202 mit dem Knoten C, der Drain des n-FET 202 mit dem Potenzial LOW (Masse), das Gate des n-FET 202 mit einem Eingang für ein Signal NREST zum Zurücksetzen auf Potenzial LOW (Masse) und dem Eingang des Inverters 203 und der Ausgang des Inverters 203 wiederum mit dem Gate des p-FET 115 verbunden.
  • Im Folgenden wird die Funktion des in 2 gezeigten Einzelbit-CAM-Schaltkreises 200 ausführlich beschrieben. Ebenso wie im Einzelbit-CAM-Schaltkreis 100 von 1 wird zum Vergleichen, ob ein Vergleichsbit CB 0 (Bit 0 oder Bit 1; Signalpegel LOW oder HIGH) mit dem im Einzelbitspeicher 101 von 2 gespeicherten Bit 0 oder Bit 1 übereinstimmt, das Vergleichsbit CB 0 an den in 2 gezeigten Anschluss 110 angelegt. Das Vergleichsbit CB 0 wird durch den Inverter 111 invertiert und an die Bitvergleichsleitung Komplement BLOC angelegt, während das Ausgangssignal des Inverters 111 an den Eingang des Inverters 112 und das vom Inverter 112 ausgegebene invertierte Signal wiederum an die Bitvergleichsleitung Echtwert BLCT angelegt wird.
  • Wenn das Vergleichsbit CB 0 mit dem im Einzelbitspeicher 101 gespeicherten Bit übereinstimmt, bleibt im Gegensatz zum Einzelbit-CAM-Schaltkreis 100 das elektrische Potenzial des Knotens C in 2 auf LOW (Masse) und das Potenzial der Treffer-/Fehlerleitung H/M in 2 auf HIGH (VDD).
  • Wenn das Vergleichsbit CB 0 mit dem im Einzelbitspeicher 101 von 2 gespeicherten Bit nicht übereinstimmt, ändert sich im Gegensatz zum Einzelbit-CAM-Schaltkreis 100 das elektrische Potenzial des Knotens C in 2 vom Potenzial LOW (Masse) zum Potenzial HIGH (VDD) und das Potenzial der Treffer-/Fehlerleitung H/M von HIGH (VDD) auf LOW (Masse).
  • Vor dem Vergleichen des im Einzelbitspeicher 101 von 2 gespeicherten Bits mit einem anderen Vergleichsbit CB 0 oder vor dem Speichern eines anderen zu vergleichenden Bits im Flipflop 103 von 2 wird ein Signal NREST zum Zurücksetzen, das das Potenzial HIGH (VDD) aufweist, an das Gate des n-FET 202 angelegt und so das Potenzial des Knotens C in 2 auf Masse gesetzt, sodass der Knoten C anschließend auf Potenzial LOW (Masse) liegt. Darüber hinaus wird das invertierte Signal von NREST an das Gate des p-FET 115 angelegt und so das Potenzial der Treffer-/Fehlerleitung H/M auf HIGH (VDD) gesetzt.
  • Im Gegensatz zum Einzelbit-CAM-Schaltkreis 100 steuert jeder der Knoten A und B gemäß 2 nur das Gate eines FET an. Folglich liegt an jedem der Knoten A und B nur die elektrische Kapazität eines einzelnen Gates an und nicht die Kapazität von zwei Gates wie nach dem Stand der Technik. Dadurch kann die zur zuverlässigen Speicherung eines Bits im Flipflop 103 von 2 benötigte Zeit deutlich verkürzt sowie der Stromverbrauch des Einzelbit-CAM-Schaltkreises 200 gegenüber der Lösung von 1 deutlich verringert werden. Da ein CAM-Schaltkreis eine Vielzahl von Einzelbit-CAM-Schaltkreisen 200 umfasst, ist dies besonders wichtig.
  • 3 zeigt eine schematische Darstellung einer Schaltung aus zwei Einzelbitspeichern 101 und 301 mit einem Zweibit-Vergleichsschaltkreis gemäß der Erfindung eines (nicht gezeigten) Assoziativspeichers, welcher eine Vielzahl solcher Schaltungen gemäß der Erfindung umfasst.
  • Die in 3 gezeigte Schaltung umfasst einen ersten Einzelbitspeicher 101, einen zweiten Einzelbitspeicher 301, vier NOR-Gatter 302, 303, 304 und 305, neun p-FETs 306, 307, 308, 309, 310, 311, 312, 313 und 315, drei Inverter 203, 314 und 315 und zwei n-FETs 116 und 202, die untereinander verbunden sind, sowie einen Anschluss 316, einen Anschluss 317, einen Knoten A0, einen Knoten B0, einen Knoten A1, einen Knoten B1, einen Knoten C0, einen Knoten C1, einen Knoten C2, einen Knoten C3, einen Knoten C, einen Anschluss 318 und eine Treffer-/Fehlerleitung H/M, wie in 3 dargestellt.
  • Der Einzelbitspeicher 101 und der Einzelbitspeicher 301 sind mit dem in den 1 und 2 gezeigten Einzelbitspeicher 101 identisch. Demzufolge umfasst jeder dieser Einzelbitspeicher eine eigene Bitschreibleitung Echtwert BLWT und eine eigene Bitschreibleitung Komplement BLWC, aber beide umfassen eine (nicht gezeigte) gemeinsame Wortleitung WL, um unabhängig voneinander einzeln ein Bit 0 oder ein Bit 1 zu speichern. Außerdem umfasst ein solcher Einzelbitspeicher 101 in 1 die Knoten A und B, der in 3 gezeigte Einzelbitspeicher 101 die Knoten A0 und B0 und der Einzelbitspeicher 301 die Knoten A1 und B1.
  • Jeweils zwei p-FETs 306 und 307, zwei p-FETs 308 und 309, zwei p-FETs 310 und 311 sowie zwei p-FETs 312 und 313 sind parallel geschaltet, d. h. ihre Sourcekontakte sowie ihre Drainkontakte sind jeweils miteinander verbunden. Die Drainkontakte dieser p-FETs sind miteinander verbunden und bilden den Knoten C. Die Verbindung der Sourcekontakte der p-FETs 306 und 307 bildet den Knoten C0, die Verbindung der Sourcekontakte der p-FETs 308 und 309 den Knoten C1, die Verbindung der Sourcekontakte der p-FETs 310 und 311 den Knoten C2 und die Verbindung der Sourcekontakte der p-FETs 312 und 313 den Knoten C3. Der Knoten C0 ist mit dem Ausgang des NOR-Gatters 302, der Knoten C1 mit dem Ausgang des NOR-Gatters 303, der Knoten C2 mit dem Ausgang des NOR-Gatters 304 und der Knoten C3 mit dem Ausgang des NOR-Gatters 305 verbunden. Der erste Eingang des NOR-Gatters 302 ist mit dem Anschluss 316 zum Anlegen eines ersten Vergleichsbits CB0 (Bit 0 oder Bit 1) an die Schaltung 300 verbunden und der zweite Eingang des NOR-Gatters 302 ist mit dem Anschluss 317 zum Anlegen eines zweiten Vergleichsbits CB1 (Bit 0 oder Bit 1) an die Schaltung 300 verbunden. Der erste Eingang des NOR-Gatters 303 ist mit dem ersten Eingang des NOR-Gatters 302 und der Anschluss 317 über den Inverter 315 mit dem zweiten Eingang des NOR-Gatters 303 verbunden. Der Anschluss 316 ist über den Inverter 314 mit dem ersten Eingang des NOR-Gatters 304 und der zweite Eingang des NOR-Gatters 304 mit dem zweiten Eingang des NOR-Gatters 302 verbunden. Der erste Eingang des NOR-Gatters 305 ist mit dem ersten Eingang des NOR-Gatters 304 und der zweite Eingang des NOR-Gatters 305 mit dem zweiten Eingang des NOR-Gatters 303 verbunden.
  • Der Knoten A0 des Einzelbitspeichers 101, d. h. des Einzelbitspeichers 0 in 3, ist mit dem Gate des p-FET 310 und dem Gate des p-FET 312, der Knoten B0 des Einzelbitspeichers 101 mit dem Gate des p-FET 306 und dem Gate des p-FET 308, der Knoten A1 des Einzelbitspeichers 301, d. h. des Einzelbitspeichers 1 in 3, mit dem Gate des p-FET 309 und dem Gate des p-FET 313 verbunden. Der Knoten B1 des Einzelbitspeichers 301 ist mit dem Gate des p-FET 307 und dem Gate des p-FET 311 verbunden.
  • Der Knoten C ist ebenso wie in 2 mit der Source des n-FET 202 und dem Gate des n-FET 116 verbunden. Der Kontakt 318 ist mit dem Gate des n-FET 202 und dem Eingang des Inverters 203, der Drain des n-FET 202 mit dem Potenzial LOW (Masse), der Drain des n-FET 116 mit dem Potenzial LOW (Masse), die Source des p-FET 115 mit dem Potenzial HIGH (VDD), das Gate des p-FET 115 mit dem Ausgang des Inverters 203 und der Drain des p-FET 115 mit der Source des n-FET 116 sowie mit der Treffer-/Fehlerleitung H/M verbunden.
  • Im Folgenden wird die Funktion der Schaltung 300 eingehend beschrieben. Es wird davon ausgegangen, dass, ebenso wie in Bezug auf den Einzelbitspeicher 101 von 1 beschrieben, im Einzelbitspeicher 101 ein Bit 1 und im Einzelbitspeicher 301 ein Bit 1 gespeichert ist. Entsprechend umfasst der Knoten A0 ein Potenzial HIGH (VDD), der Knoten B0 ein Potenzial LOW (Masse), der Knoten A1 ein Potenzial HIGH (VDD) und der Knoten B1 ein Potenzial LOW (Masse).
  • Außerdem wird bei einem ersten, nicht als Beschränkung anzusehenden Beispiel ein Bit 1 (CB 0) an den Anschluss 316 und ein Bit 1 (CB 1) an den Anschluss 317 angelegt. Mit anderen Worten, die zu vergleichenden und im Einzelbitspeicher 101 und im Einzelbitspeicher 301 gespeicherten Bits stimmen mit den Vergleichsbits CB 0 und CB 1 überein. Wie der Fachmann leicht erkennt, liegen der Knoten C0, der Knoten C1 und der Knoten C2 auf Potenzial LOW, während der Knoten C3 auf Potenzial HIGH liegt. Da am Gate des p-FET 312 und an der Source des p-FET 312 (Knoten C3) sowie am Gate des p-FET 313 und an der Source des p-FET 313 (Knoten C3) das Potenzial HIGH anliegt, bleiben bei einer Übereinstimmung der Knoten C sowie das Gate des n-FET 116 auf Potenzial LOW und die Treffer-/Fehlerleitung H/M auf Potenzial HIGH (VDD).
  • Demzufolge ist keiner der Knoten A0, B0, A1 und B1 mit der Ansteuerung der p-FETs 306 bis 313 belastet.
  • Bei einem zweiten Beispiel, das nicht als Beschränkung anzusehen ist, wird vor dem Anlegen eines Bits 0 (CB 0) an den Anschluss 316 und eines Bits 1 (CB 1) an den Anschluss 317 das Potenzial LOW (Masse) an den Anschluss 318 (NREST) angelegt und das Potenzial der Treffer-/Fehlerleitung H/M bleibt auf HIGH (VDD). Wenn an den Anschluss 316 das Bit 0 und an die Anschlüsse 317 und 318 das Bit 1 angelegt wird, liegen die Knoten C0, C2 und C3 auf Potenzial LOW (Masse) und der Knoten C1 auf Potenzial HIGH (VDD). Da das Potenzial LOW (Masse) am Gate des p-FET 308 und das Potenzial HIGH (VDD) an der Source des p-FET 308 (Knoten C1) anliegt, wird der p-FET 308 leitend und setzt den Knoten C auf Potenzial HIGH (VDD). Da der Knoten C mit dem Gate des n-FET 116 verbunden ist, legt der n-FET 116 die Treffer-/Fehlerleitung H/M auf Potenzial LOW (Masse) und zeigt damit an, dass die Vergleichsbits CB 0 (Bit 0) und CB 1 (Bit 1) nicht mit den zu vergleichenden und in den Einzelbitspeichern 101 (Bit 1) und 301 (Bit 1) gespeicherten Bits übereinstimmen.
  • Bevor an die Anschlüsse 316 und 317 zwei weitere Bits angelegt werden, die mit den in den Einzelbitspeichern 101 und 301 gespeicherten Bits verglichen werden sollen, wird an den Anschluss 318 (NREST) das Potenzial LOW (Masse) angelegt, sodass der n-FET 202 leitend wird und den Knoten C sowie das Gate des n-FET 116 wieder auf Potenzial LOW (Masse) legt. Außerdem wird das Signal zum Zurücksetzen (NREST) durch den Inverter 203 invertiert und das invertierte Signal (Potenzial HIGH) an das Gate des p-FET 115 angelegt. Der p-FET 115 wird somit leitend und legt die Treffer-/Fehlerleitung H/M wieder auf Potenzial HIGH.
  • Folglich ist nur einer der Knoten A0, B0, A1 und B1 mit der Ansteuerung der p-FETs 306 bis 313 belastet.
  • Im Gegensatz zu einer in 1 gezeigten bekannten Lösung, bei der zum Vergleichen von zwei gespeicherten Bits mit zwei Vergleichsbits acht FETs, und einer in 2 gezeigten anderen bekannten Lösung, bei der vier FETs durch ein Paar Einzelbitspeicher angesteuert werden müssen, braucht bei Verwendung der Lösung gemäß der Erfindung, gezeigt in 3, nur ein FET angesteuert zu werden.
  • Gemäß der in 3 gezeigten erfindungsgemäßen Lösung gestattet die deutliche Verringerung der Anzahl von FETS, die für einen Vergleich eines oder mehrerer Vergleichsbits mit den in einem Assoziativspeicher (CAM) gespeicherten Bits geschaltet werden müssen, eine erhebliche Reduzierung des Stromverbrauchs und der beim Schalten der FETs entstehenden Störsignale und ermöglicht die Verwendung längerer Treffer-/Fehlerleitungen. Dadurch kann ein Assoziativspeicher aufgebaut werden, der eine wesentlich größere Speicherkapazität umfasst, d. h. ein „breiterer" CAM, der trotzdem weniger Strom je Bit verbraucht und in einem Datenverarbeitungssystem und/oder in einem Datenprozessor, wie zum Beispiel einem Mikroprozessor, mit einer höheren Taktgeschwindigkeit betrieben werden kann, verglichen mit der bekannten Lösung. Die Reduzierung der Störsignale erhöht die Zuverlässigkeit des erfindungsgemäßen Assoziativspeichers (CAM) und verringert, verglichen mit den bekannten Lösungen, die nachteiligen Auswirkungen von Störsignalen auf andere elektronische Komponenten.
  • Zusammenfassend ist zu sagen, dass zur weiteren Verringerung des Stromverbrauchs für jedes zu vergleichende Bit gegenüber dem in 2 gezeigten Einzelbit-CAM-Schaltkreises 200 zwei Einzelbitspeicher, d. h. insbesondere zwei Einzelbitspeicherzellen, mit einem gemeinsam genutzten Vergleichsschaltkreis, d. h. dem Zweibit-Vergleichsschaltkreis 319, verbunden werden. Im Falle einer Nichtübereinstimmung wird nur das Potenzial eines der vier Knoten C0, C1, C2 und C3 auf HIGH gesetzt, d. h. geändert Die Potenzialänderung des Knotens C der Schaltung 300 in 3 erfolgt etwas langsamer als die Potenzialänderung des Knotens C des Einzelbit-CAM-Schaltkreises 200 von 2. Dieser Nachteil wird jedoch bei weitem ausgeglichen, da die Treffer-/Fehlerleitung H/M der Schaltung 300 nur von den zwei n-FETs 116 und 202, also mit halb so vielen n-FETs wie bei den zwei Einzelbit-CAM-Schaltkreisen 200 belastet wird. Dies führt zu einer Potenzialänderung der Treffer-/Fehlerleitung H/M der Schaltung 300, die wesentlich schneller als die Potenzialänderung der Treffer-/Fehlerleitung H/M des Einzelbit-CAM-Schaltkreises 200 ist.
  • Außerdem ist zu beachten, dass die Kombination von Inverter 203 und p-FET 115 nur einmal je Treffer-/Fehlerleitung H/M benötigt wird, während bei den beiden Einzelbit-CAM-Schaltkreisen 200 zwei Kombinationen von Inverter 203 und p-FET 115 erforderlich sind.
  • Dem Fachmann ist klar, dass die Schaltung von zwei Einzelbitspeichern, wie in 3 gezeigt, einfach erweitert werden kann zu einer Schaltung, welche mehr als zwei Einzelbitspeicher und mehr als einen Zweibit- Vergleichsschaltkreis umfasst und ebenfalls die oben erwähnten Vorteile aufweist.
  • 4 ist eine schematische Darstellung einer anderen Ausführungsart der ersten Komponente des in 3 gezeigten Zweibit-Vergleichsschaltkreises 319. Die erste Komponente des in 3 gezeigten Zweibit-Vergleichsschaltkreises 319 umfasst die beiden Eingangsanschlüsse 316 und 317, die Inverter 314 und 315, die NOR-Gatter 302 bis 305 und die Ausgangsknoten C0 bis C3, die gemäß 3 miteinander verbunden sind. Die erste Komponente 400 des in 4 gezeigten Bitvergleichsschaltkreises 319 kann anstelle der in 3 gezeigten ersten Komponente verwendet werden und umfasst zwei Eingangsanschlüsse 401 und 402 zum Anlegen der Vergleichsbits CB 0 und CB 1 an die Schaltung 300. Außerdem umfasst die erste Komponente 400 vier UND-Gatter 403, 404, 405 und 406 und sieben Inverter 407, 408, 409, 410, 411, 412 und 413, die gemäß 4 miteinander verbunden sind. Jedes Paar von UND-Gatter und Inverter 403 und 410, 404 und 411, 405 und 412 sowie 406 und 413 bildet ein NAND-Gatter. Die Ausgänge der NAND-Gatter bilden die Knoten C0, C1, C2 und C3.
  • 5 zeigt eine schematische Darstellung einer weiteren Ausführungsart 500 der ersten Komponente des in 3 gezeigten Zweibit-Vergleichsschaltkreises 319. Die erste Komponente 500 kann anstelle der ersten Komponente des in 3 gezeigten Zweibit-Vergleichsschaltkreises 319 verwendet werden und umfasst ein erstes durch einen p-FET 503 und einen n-FET 504 gebildetes Übertragungsgatter 513, ein zweites durch einen p-FET 505 und einen n-FET 506 gebildetes Übertragungsgatter, ein drittes durch einen p-FET 507 und einen n-FET 508 gebildetes Übertragungsgatter und ein viertes durch einen p-FET 509 und einen n-FET 510 gebildetes Übertragungsgatter. Der Drain des p-FET 503 ist mit der Source des n-FET 504 und dem Knoten C0, der Drain des p-FET 505 mit der Source des n-FET 506 und dem Knoten C1, der Drain des p-FET 507 mit der Source des n-FET 508 und dem Knoten C2 und der Drain des p-FET 509 mit der Source des n-FET 510 und dem Knoten C3 verbunden. Außerdem umfasst die erste Komponente 500 des Zweibit-Vergleichsschaltkreises 319 einen Anschluss 501 und einen Anschluss 502 zum Anlegen der Vergleichsbits CB 0 und CB 1 an den Zweibit-Vergleichsschaltkreis 319 sowie die beiden Inverter 511 und 512, die gemäß 5 mit den Übertragungsgattern verbunden sind.
  • Es ist anzumerken, dass die 1 bis 5 schematische Darstellungen sind und die integrierten CAM-Schaltkreise gemäß der Erfindung in Wirklichkeit weitere elektronische Komponenten umfassen, die der Fachmann leicht an die Lösungen der Erfindung anpassen kann.
  • ZEICHENERKLÄRUNG:
    • VDD
      Versorgungsspannung
      GND
      Massepotenzial
      p-FET
      p-Feldeffekttransistor
      n-FET
      n-Feldeffekttransistor
      S
      Source
      G
      Gate
      D
      Drain
  • 100
    Einzelbit-CAM-Schaltkreis
    101
    Einzelbitspeicher
    102
    Einzelbit-Vergleichsschaltkreis
    103
    Flipflop
    BLWT
    Bitschreibleitung Echtwert
    BLWC
    Bitschreibleitung Komplement
    A
    Knoten
    B
    Knoten
    C
    Knoten
    BLCT
    Bitvergleichsleitung Echtwert
    BLCC
    Bitvergleichsleitung Komplement
    REST
    Wiederherstellungsleitung
    H/M
    Treffer-/Fehlerleitung
    104
    n-FET
    105
    n-FET
    106
    p-FET
    107
    p-FET
    108
    n-FET
    109
    n-FET
    110
    Anschluss
    111
    Inverter
    112
    Inverter
    113
    p-FET
    114
    p-FET
    115
    p-FET
    116
    n-FET
    200
    Einzelbit-CAM-Schaltkreis
    201
    Einzelbit-Vergleichsschaltkreis
    202
    n-FET
    203
    Inverter
    NREST
    Signal zum Zurücksetzen auf Potenzial LOW (Masse)
    300
    Schaltung von zwei Einzelbitspeichern mit einem Zweibit-Vergleichsschaltkreis
    301
    Einzelbitspeicher 1
    302
    NOR-Gatter
    303
    NOR-Gatter
    304
    NOR-Gatter
    305
    NOR-Gatter
    306
    p-FET
    307
    p-FET
    308
    p-FET
    309
    p-FET
    310
    p-FET
    311
    p-FET
    312
    p-FET
    313
    p-FET
    314
    Inverter
    315
    Inverter
    316
    Anschluss
    317
    Anschluss
    318
    Anschluss
    319
    Zweibit-Vergleichsschaltkreis
    320
    Einzelbit-Vergleichsschaltkreis
    C
    Knoten
    C0
    Knoten
    C1
    Knoten
    C2
    Knoten
    C3
    Knoten
    A0
    Knoten
    B0
    Knoten
    A1
    Knoten
    B1
    Knoten
    400
    Erste Komponente des Zweibit-Vergleichsschaltkreises
    401
    Anschluss
    402
    Anschluss
    403
    UND-Gatter
    404
    UND-Gatter
    405
    UND-Gatter
    406
    UND-Gatter
    500
    Erste Komponente des Zweibit-Vergleichsschaltkreises
    501
    Anschluss
    502
    Anschluss
    503
    p-FET
    504
    n-FET
    505
    p-FET
    506
    n-FET
    507
    p-FET
    508
    n-FET
    509
    p-FET
    510
    n-FET
    511
    Inverter
    512
    Inverter
    513
    Übertragungsgatter

Claims (2)

  1. Assoziativspeicherschaltung (300), die mindestens eine erste und eine zweite Einzelbitspeicherzelle (101, 301) mit echten und komplementären Ausgängen (A0, A1, B0, B1), eine Wortleitung (WL), mindestens eine Bitschreibleitung (BLWT, BLWC), eine Treffer-/Fehlerleitung (H/M) und mindestens einen gemeinsam genutzten Zweibit-Vergleichsschaltkreis (319) mit ersten und zweiten Vergleichsbiteingängen (CB 0, CB 1) umfasst, dadurch gekennzeichnet, dass der Vergleichsschaltkreis vier Teil-Vergleichsschaltkreise (320) mit jeweils zwei Feldeffekttransistoren (312, 313; 310, 311; 308, 309; 306, 307) und je ein mit zwei der Feldeffekttransistoren in Reihe geschaltetes Logikgatter (302, 303, 304, 305) umfasst, wobei jeder Teil-Vergleichsschaltkreis als Steuersignale für seine Transistoren eine der vier möglichen Kombinationen aus echten und komplementären Ausgangssignalen der ersten und der zweiten Einzelbit-Speicherzellen empfängt, das Logikgatter jedes Teil-Vergleichsschaltkreises als Eingangssignal eine der vier möglichen Kombinationen des echten und des komplementären Eingangs-Vergleichsbits empfängt und die Ausgänge der Teil-Vergleichsschaltkreise so angeschlossen sind, dass sie die Treffer-/Fehlerleitung steuern.
  2. Assoziativspeicherschaltung nach Anspruch 1, dadurch gekennzeichnet, dass das Logikgatter (302, 303, 304 und 305) ein NOR-Gatter, ein NAND-Gatter (403, 410) oder ein Übertragungsgatter (513) ist.
DE60123542T 2000-09-23 2001-08-23 Assoziativspeicherschaltung für Wiederauffindung in einem Datenverarbeitungssystem Expired - Lifetime DE60123542T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP00120817 2000-09-23
EP00120817 2000-09-23

Publications (2)

Publication Number Publication Date
DE60123542D1 DE60123542D1 (de) 2006-11-16
DE60123542T2 true DE60123542T2 (de) 2007-05-10

Family

ID=8169930

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60123542T Expired - Lifetime DE60123542T2 (de) 2000-09-23 2001-08-23 Assoziativspeicherschaltung für Wiederauffindung in einem Datenverarbeitungssystem

Country Status (3)

Country Link
US (1) US7061782B2 (de)
AT (1) ATE341818T1 (de)
DE (1) DE60123542T2 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7024516B2 (en) * 2003-03-31 2006-04-04 Zarlink Semiconductor Limited Configurable ternary content addressable memory
US6900999B1 (en) * 2003-06-30 2005-05-31 Integrated Device Technology, Inc. Ternary content addressable memory (TCAM) cells with small footprint size and efficient layout aspect ratio
US7006400B1 (en) * 2004-10-12 2006-02-28 Tellabs Petaluma, Inc. Content addressable memory with reduced instantaneous current and power consumption during a search
US7825777B1 (en) 2006-03-08 2010-11-02 Integrated Device Technology, Inc. Packet processors having comparators therein that determine non-strict inequalities between applied operands
US7298636B1 (en) 2006-03-08 2007-11-20 Integrated Device Technology, Inc. Packet processors having multi-functional range match cells therein
US8513791B2 (en) * 2007-05-18 2013-08-20 International Business Machines Corporation Compact multi-port CAM cell implemented in 3D vertical integration
US9672239B1 (en) * 2012-10-16 2017-06-06 Marvell Israel (M.I.S.L.) Ltd. Efficient content addressable memory (CAM) architecture

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5351208A (en) * 1992-04-27 1994-09-27 Integrated Information Technology, Inc. Content addressable memory
JP3573782B2 (ja) * 1993-08-31 2004-10-06 川崎マイクロエレクトロニクス株式会社 連想メモリ
US6195278B1 (en) * 1999-12-30 2001-02-27 Nortel Networks Limited Content addressable memory cells and words

Also Published As

Publication number Publication date
DE60123542D1 (de) 2006-11-16
US20020036912A1 (en) 2002-03-28
ATE341818T1 (de) 2006-10-15
US7061782B2 (en) 2006-06-13

Similar Documents

Publication Publication Date Title
DE3220273C2 (de) Halbleiterspeicher
EP0393435B1 (de) Statische Speicherzelle
DE3841944C2 (de)
DE3247538C2 (de)
DE3724509A1 (de) Dynamischer ram
DE3432973C2 (de)
DE102005012099A1 (de) Inhaltsadressierbare Speicherzelle und zugehöriges Speicherzellenfeld
DE2335785B2 (de) Schaltungsanordnung zum Prüfen einer Matrixverdrahtung
DE2711679C2 (de) Schaltungsanordnung zum Anschluss eines Feldes von Speichern mit wahlfreiem Zugriff an einen Datenbus
DE60123542T2 (de) Assoziativspeicherschaltung für Wiederauffindung in einem Datenverarbeitungssystem
DE2165445C3 (de) Logikschaltung
DE3939849A1 (de) Halbleiterspeichereinrichtung mit einem geteilten leseverstaerker und verfahren zu deren betrieb
DE4317382C2 (de) Halbleiterspeicher
DE10248065B4 (de) Inhaltsadressierbares Speicherbauelement
DE2550276A1 (de) Kapazitiver datenspeicher
DE3921660A1 (de) Halbleiterspeichergeraet
DE2128792A1 (de) Schaltungsanordnung mit mindestens einem Feldeffekttransistor
DE2609714A1 (de) Speicherzellenanordnung
DE2335824C3 (de) Schaltungsanordnung und Verfahren zum Prüfen der Richtigkeit von Verbindungen
DE10211957B4 (de) Ternäre inhaltsadressierbare Speicherzelle
DE2935121C2 (de)
EP0697659A1 (de) Redundanz-Schaltungsanordnung für einen integrierten Halbleiterspeicher
DE19708963C2 (de) Halbleiterdatenspeicher mit einer Redundanzschaltung
EP0304591B1 (de) Halbleiterspeicher mit einer Signalwechsel-Erkennungsschaltung
DE2627617C3 (de)

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)