DE69835547T2 - Inhaltsadressierbares Speichersystem - Google Patents

Inhaltsadressierbares Speichersystem Download PDF

Info

Publication number
DE69835547T2
DE69835547T2 DE69835547T DE69835547T DE69835547T2 DE 69835547 T2 DE69835547 T2 DE 69835547T2 DE 69835547 T DE69835547 T DE 69835547T DE 69835547 T DE69835547 T DE 69835547T DE 69835547 T2 DE69835547 T2 DE 69835547T2
Authority
DE
Germany
Prior art keywords
signal
hit
self
logic circuit
cam
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
DE69835547T
Other languages
English (en)
Other versions
DE69835547D1 (de
Inventor
Kenneth James Kanata Schultz
Farhad Shafai
Garnet Frederick Randall Nepean Gibson
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.)
Zarbana Digital Fund LLC
Original Assignee
Nortel Networks Ltd
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 Nortel Networks Ltd filed Critical Nortel Networks Ltd
Publication of DE69835547D1 publication Critical patent/DE69835547D1/de
Application granted granted Critical
Publication of DE69835547T2 publication Critical patent/DE69835547T2/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

Landscapes

  • Static Random-Access Memory (AREA)
  • Dram (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Bus Control (AREA)

Description

  • Technisches Gebiet
  • Die vorliegende Erfindung bezieht sich auf ein inhaltsadressierbares Speicher-(CAM-) System, in dem eine Vielzahl von CAM-Anordnungen kaskadiert sind.
  • Hintergrund-Information
  • Inhaltsadressierbare Speicher (CAMs) sind bekannt. Bei CAMs werden Daten auf der Grundlage von Inhalten anstelle des physikalischen Ortes ausgewählt. Diese Funktion ist für viele Anwendungen nützlich, insbesondere wenn ein Nachschlagen für die Zwecke einer Umsetzung eines langen Identifikationswortes auf ein kürzeres Wort ausgeführt wird. Diese Operation ist in vielen Telekommunikationsfunktionen erforderlich, unter Einschluss der Adressenumsetzung bei der asynchronen Übertragungsbetriebsart (ATM).
  • In vielen Fällen überschreiten Systemspeicher-Anforderungen die Anzahl der Einträge, die auf einer einzigen CAM-Anordnung gespeichert werden können. Mehrfache CAM-Anordnungen, möglicherweise auf mehrfachen Chips, sind dann erforderlich, und es ist erforderlich, die mehrfachen CAM-Anordnungen derart zu kaskadieren, das sie als eine einzige Einheit durchsucht werden können. Eine geeignete „nutzerfreundliche" Kaskadierungsfähigkeit ermöglicht es, dass die gleiche CAM-Anordnung, in einem Bereich von Systemen mit unterschiedlichen Kapazitätsanforderungen verwendet wird, und ermöglicht außerdem eine einfache Expandierbarkeit und Skalierbarkeit.
  • Das US-Patent 5568416, das auf den Namen von K. Kawana et al. am 22. Oktober 1996 erteilt wurde, beschreibt einen Assoziativ-Speicher, bei dem mehrfache CAM-Chips durch Weiterleiten von Ergebnis-Adressen und Ergebnis-Status durch alle Chips in der Kaskade kaskadiert werden. Jeder Chip enthält ein Statusregister für sich selbst, und ein weiteres für alle systemaufwärts gelegenen oder davor angeordneten Chips. Das Patent beschreibt weiterhin Einrichtungen zur Identifikation des letzten Bauteils in der Kaskade, und getrennte Speicherbereiche für gemeinsame und einzigartige Dateneinträge.
  • Die EP 0899743 , eine europäische Patentanmeldung, die einen Teil des Standes der Technik gemäß Artikel 54 (3) und (4) EPC bildet, beschreibt ein CAM-System, bei dem CAM-Chips kaskadiert und mit einem gemeinsamen Bus verbunden sind. Treffer- und Mehrfach-Übereinstimmungs-Signale werden von Chip zu Chip weitergeleitet. Ein Übereinstimmungs-Adressensignal wird von dem gemeinsamen Bus geliefert.
  • Zusammenfassung der Erfindung
  • Es ist ein Ziel der vorliegenden Erfindung, ein verbessertes inhaltsadressierbares Speichersystem zu schaffen.
  • Gemäß der vorliegenden Erfindung wird ein System geschaffen, das Folgendes umfasst: eine Vielzahl von inhaltsadressierbaren Speicher- (CAM-) Anordnungen, wobei jede CAM-Anordnung Codiereinrichtungen und eine Anordnung von Kernzellen von w-Worten × b Bits umfasst, die der Codiereinrichtung zugeordnet sind, wobei jede Zelle Datenspeichereinrichtungen umfasst, wobei jede CAM-Anordnung in der Lage ist, über ihre jeweilige Codiereinrichtung Treffer- und Übereinstimmungs-Adressensignale, die sich aus einer Suchoperation ergeben, in Abhängigkeit von einem Taktsignal zu liefern; dadurch gekennzeichnet, dass das System weiterhin Folgendes umfasst: eine Vielzahl von Logik-Schaltungen zur Lieferung von Treffer- und Übereinstimmungs-Adressenergebnissen des Systems, wobei jede Logik-Schaltung einer jeweiligen CAM-Anordnung zugeordnet ist, um ein Treffersignal hiervon zu liefern, wobei jede Logik-Schaltung Taktsignal-Generatoreinrichtungen zur Erzeugung eines selbstgetakteten Signals in Abhängigkeit von dem Taktsignal umfasst, wobei jede Logik-Schaltung Logikeinrichtungen zum logischen Kombinieren eines Treffer-Weiterleitungs-Eingangssignals, das von einer systemaufwärts gelegenen Logik-Schaltung geliefert wird, mit dem Treffersignal umfasst, das von der zugehörigen CAM-Anordnung geliefert wird, so dass ein Treffer-Weiterleitungs-Ausgangssignal an eine systemabwärts gelegene Logik-Schaltung in Abhängigkeit von dem selbstgetakteten Signal geliefert wird, wobei eine Dauer von einer Abfallflanke des selbstgetakteten Signals zu einer folgenden Anstiegsflanke des selbstgetakteten Signals länger als irgendeine Verzögerung in den Treffersignalen ist.
  • Gemäß der vorliegenden Erfindung ist es möglich, eine Vielzahl von CAM-Anordnungen zu implementieren, die die gleiche Art von Suchergebnis-Ausgängen aufweisen, wie ein einziger CAM (beispielsweise Treffer-, Übereinstimmungs-Adresse). Es ist somit möglich, dass n CAM-Anordnungen, jeweils mit einer Kapazität von w Einträgen (oder Worten) in ein einziges Mehr-Chip-CAM-System mit n × w Worten integriert werden.
  • Die Kaskadiereinrichtung kann eine Vielzahl von Weiterleitungseinrichtungen umfassen, die jeweils der jeweiligen CAM-Anordnung zugeordnet sind. In dem System wird ein Treffer-Ergebnis von Anordnung zu Anordnung weitergeleitet.
  • Kurze Beschreibung der Zeichnungen
  • Eine Ausführungsform der Erfindung wird nunmehr in Form eines Beispiels unter Bezugnahme auf die beigefügten Zeichnungen beschrieben, in denen:
  • 1 ein Blockschaltbild eines Systems unter Einschluss einer Vielzahl von CAM-Anordnungen ist, die kaskadiert sind, gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 2 ein Schaltbild eines Beispiels einer in 1 gezeigten CAM-Anordnung ist;
  • 3 ein Schaltbild eines Beispiels einer Logik-Schaltung ist, die in 1 gezeigt ist;
  • 4 ein Zeitdiagramm ist, das die relative Zeitsteuerung von Suchsignalen in Abhängigkeit von dem Übergang von 0 auf 0 eines Treffer-Weiterleitungs-Eingangssignals zeigt;
  • 5B ein Zeitdiagramm ist, das die relative Zeitsteuerung von Suchsignalen in Abhängigkeit von dem Übergang von 1 auf 0 des Treffer-Weiterleitungs-Eingangssignals ist;
  • 5C ein Zeitdiagramm ist, das die relative Zeitsteuerung von Suchsignalen als Antwort auf den Übergang von 0 auf 1 des Treffer-Weiterleitungs-Eingangssignals zeigt;
  • 5 ein Zeitdiagramm ist, das die relative Zeitsteuerung von Suchsignalen als Antwort auf den Übergang von 1 auf 1 eines Treffer-Weiterleitungs-Eingangssignals zeigt;
  • Ausführliche Beschreibung
  • Gemäß 1, die ein System gemäß einer Ausführungsform der vorliegenden Erfindung zeigt, schließt das System n CAM-Anordnungen 110 ein, die über n Logik-Schaltungen 120 kaskadiert sind. Jede Logik-Schaltung 120 ist der jeweiligen CAM-Anordnung 110 zugeordnet, um Treffer-, Übereinstimmungs-Adressen und Mehrfach-Übereinstimmungs-Signale ht, sa und mt von dieser zu empfangen; wobei die Zeitsteuerung oder Taktung dieser drei Signale bekannt, jedoch nicht notwendigerweise steuerbar ist. Die Logik-Schaltung 120 weist Eingangsanschlüsse HTI und MIT zum Empfang von Treffer- bzw. Mehrfach-Übereinstimmungs-Signalen von der systemaufwärts gelegenen Logik-Schaltung 120 auf. Beide Eingangsanschlüsse MIT und HTI der am weitesten systemaufwärts gelegenen Logik-Schaltung 120 sind mit Logik-0-Anschlüssen verbunden. Weiterhin hat jede Logik-Schaltung 120 Ausgangsanschlüsse HT und MT zur Lieferung von Treffer- und Mehrfach-Übereinstimmungs-Signalen an die systemabwärts gelegene Logik-Schaltung 120. Ein Adressen-Ausgangsanschluss SA jeder Logik-Schaltung 120 ist mit einem gemeinsam genutzten Bus 122 verbunden. Das System schließt n UND-Gatter 124 ein, die invertierende und nichtinvertierende Eingangsanschlüsse aufweisen. Der Treffer-Eingangsanschluss HTI und der Treffer-Ausgangsanschluss HT jeder Logik-Schaltung 120 sind mit den invertierenden und nichtinvertierenden Eingangsanschlüssen des jeweiligen UND-Gatters 124 verbunden. Ein Taktgenerator 126 liefert Taktsignale ck an die CAM-Anordnungen 110 und die Logikschaltungen 120. Der Bus 122 und die Treffer- und Mehrfach-Übereinstimmungs-Ausgangsanschlüsse HT und MT der am weitesten netzabwärts gelegenen Logik-Schaltung 120 sind mit einer Suchergebnis-Beobachtungsschaltung 128 verbunden. Die Ausgangsanschlüsse der UND-Gatter 124 sind mit einem n-zu-log2n-Codierer 130 verbunden.
  • Gemäß 2, die ein Beispiel der CAM-Anordnung 110 zeigt, die mit einer Anordnung von w (=4) Worten (Reihen) c b (=4) Bits (Spalten) implementiert ist, schließt die CAM-Anordnung 110 Kernzellen 230 mit w Reihen × b Spalten ein. Jede der Kernzellen 230 schließt (nicht gezeigte) Datenspeicher-Einrichtungen ein und befindet sich am Schnittpunkt einer Übereinstimmungs-Leitung 232 und eines Paares von Bit-Leitungen 234. Ein Paar von Bit-Leitungen 234 führt Differenz- Daten, die ein einziges Bit darstellen, anstelle von zwei Bits an Daten. Jede Kernzelle 230 wirkt zum Speichern eines einzelnen Bits an Daten und ist in der Lage, eine Einzelbit-Vergleichs- (logische EXCLUSIV-NOR (XNOR-)) Operation zusätzlich zu ihrer Bit-Speicherfähigkeit auszuführen. Die Bit-Leitungen 234 für Differenzdaten sind mit Bezugswort-Speicher- und Bit-Leitungs-Treibern 236 verbunden, die Eingangsdaten D zum Laden der Inhalte der CAM-Anordnung und des Such-Bezugswortes empfangen. Die CAM-Anordnung 110 schließt einen Codierer 238 ein, der mit den Übereinstimmungs-Leitungen 234 verbunden ist. Die Struktur der CAM-Anordnung ist bekannt. Siehe die Veröffentlichung von K. J. Schultz et al. mit dem Titel „Architectures for Large-Capacity CAMs", INTEGRATION: the VLSI Journal, Band 18, Seiten 151 bis 171, 1995.
  • Die CAM-Anordnung ist nicht auf die in 2 gezeigte Anordnung beschränkt. Es gibt viele Variationen. Beispielsweise wird die Datenvergleichs-Funktion einer CAM-Anordnung nicht durch die Kernzellen ausgeführt, sondern sie wird durch getrennte Vergleicher ausgeführt, die benachbart zu den Kernzellen angeordnet sind. Eine derartige CAM-Anordnung ist in der US-Patentanmeldung Nummer 08/748,928 mit dem Titel „Large-Capacity Content Addressable Memory" vom 14. November 1996 auf den Namen von K.J. Schultz et al. beschrieben. Weiterhin kann eine Kernzellen-Anordnung einer CAM-Anordnung kettenförmig angeordnet werden, wie dies in der provisorischen US-Patentanmeldung Nummer 60/037,834 mit dem Titel „Content Addressable Memory" angemeldet am 6. Februar 1997 von K.J. Schultz et al., beschrieben ist.
  • Gemäß den 1 und 2 vergleicht die Kernzelle 230 als Antwort auf das Taktsignal ck beim Anlegen von Differenzdaten an ein Paar von Bit-Leitungen 234 in einer Suchoperation ihr gespeichertes Datenbit mit diesen Differenzdaten (die auch als Bezugsdaten oder als Einzelbit des Komparanden bekannt sind). Wenn die gespeicherten Daten nicht gleich den Bezugsdaten sind, zieht die Kernzelle 230 die Übereinstimmungs-Leitung 232 (die auf einen logisch hohen Zustand vorgeladen ist) auf einen niedrigen Zustand herunter. Wenn die gespeicherten Daten gleich den Bezugsdaten sind, so hat die Zelle 230 keine Auswirkung auf die Übereinstimmungs-Leitung 232, mit der sie verbunden ist. Weil alle b Kernzellen 230 in einem vorgegebenen Wort mit der Übereinstimmungs-Leitung 232 in der gleichen Weise verbunden sind, wird die Übereinstimmungs-Leitung 232 auf einen niedrigen Pegel gezogen, wenn irgendein Bit in ihrem Wort nicht gleich dem entsprechenden Bezugs-Bit ist (oder eine fehlende Übereinstimmung aufweist). Die Übereinstimmungs-Leitung 232 bleibt nur dann auf einem logischen hohen Zustand, wenn alle Bits in ihrem Wort eine Übereinstimmung mit ihren entsprechenden Bezugs-Bits aufweisen.
  • Jede CAM-Anordnung 110 ist in der Lage, Suchergebnisse (das heißt Treffer-, Übereinstimmungadressen- und Mehrfachübereinstimmungs-Signale ht, sa und mt) über den Codierer 238 zu liefern, die der jeweiligen Logikschaltung 120 zugeführt werden. Jede Logik-Schaltung 120 leitet die Treffer- und Mehrfach-Übereinstimmungs-Ergebnisse Anordnung zu Anordnung weiter und überträgt das Übereinstimmungs-Adressenergebnis an den gemeinsam genutzten Bus 122. Die Treffer- und Mehrfach-Übereinstimmungs-Ergebnisse SHT und SMT des Systems sind auf der äußeren rechten Seite (der am weitesten systemabwärts gelegenen Stelle) verfügbar. Ein zusätzliches nützliches Element der Statusinformation ist die Ordinaten-Position der Anordnung, die ihr Ergebnis auf den Bus 122 angesteuert hat (das heißt die die höchste Priorität aufweisende Anordnung mit einer Übereinstimmung); diese Information wird von dem UND-Gatter 124 und dem Codierer 130 geliefert.
  • Unter Bezugnahme auf eine einzige Anordnung 110 ist die binäre Adresse eines übereinstimmenden Wortes auf den „sa"-Ausgang codiert. Wenn eine Vielzahl von Worten eine Übereinstimmung mit den Bezugsdaten hatte, so wird das Mehrfach-Übereinstimmungs-Signal mt auf einen logischen hohen Zustand gesetzt. In diesem Fall kann der Übereinstimmungs-Adressen-Ausgang des Codierers 238 (a) ein ungültiges Ergebnis, (b) eine Adresse, die den Ort einer einzigen der mehrfachen Übereinstimmungen darstellt, oder (c) eine Folge von Ausgängen erzeugen, die die Orte jedes der eine Übereinstimmung aufweisenden Worte darstellen. Es sei bemerkt, dass manche Anwendungen das Mehrfach-Übereinstimmungs-Ergebnis nicht benötigen, und alle Bezugnahmen auf die Mehrfach-Übereinstimmungs-Funktion können aus dieser Beschreibung ohne Verlust an Brauchbarkeit entfernt werden.
  • 3 ist ein Schaltbild eines Beispiels der Logik-Schaltung 120. Weil die CAM-Anordnung 110 des in 1 gezeigten Systems die Treffer- und Mehrfach- Übereinstimmungs-Suchergebnisse liefert, leitet die Logik-Schaltung 120 diese in einer ähnlichen Weise weiter. Eine Logik-Schaltung 120 empfängt Treffer-, Übereinstimmungs-Adressen- und Mehrfach-Übereinstimmungs-Adressen-Signale ht, sa und mt eines Suchergebnisses von der jeweiligen CAM-Anordnung 110. Das Treffersignal ht wird den UND-Gattern 332 und 342 und einem ODER-Gatter 336 zugeführt. Das Übereinstimmungs-Adressen-Signal sa wird dem Eingangsanschluss eines Übertragungs-Gatters 334 zugeführt, dessen Ausgangsanschluss mit dem Übereinstimmungs-Adressen-Ausgangsanschluss SA der Logik-Schaltung 120 verbunden ist. Das Mehrfach-Übereinstimmungs-Signal mt wird einem ODER-Gatter 334 zugeführt. Das Treffer-Weiterleitungs-Eingangssignal hti wird dem UND-Gatter 342, dem ODER-Gatter 336 und dem invertierenden Eingangsanschluss UND-Gatters 332 zugeführt, dessen Ausgang ein Übereinstimmungs-Adressen-Freigabesignal (sae) dem Übertragungs-Gatter 334 zugeführt wird. Der Ausgang des UND-Gatters 342 wird dem ODER-Verknüpfungsglied 344 zugeführt. Der Ausgang des ODER-Gatters 344 wird einem Puffer 346 zugeführt, dessen Ausgangsanschluss mit dem Mehrfach-Übereinstimmungs-Ausgangsanschluss MT der Logik-Schaltung 120 verbunden ist.
  • Ein selbstgetaktetes Signal st wird von einem selbstgetakteten Signalgenerator erzeugt. Es gibt viele mögliche Ausführungsformen von selbstgetakteten Signalgeneratoren. Es ist der vorgesehene Schutzumfang dieser Erfindung, eine derartige Ausführungsform zu subsumieren, vorausgesetzt das das resultierende selbstgetaktete Signal st in der vorstehend beschriebenen Weise verwendet wird, um eine wettbewerbsfreie gemeinsame Nutzung des Ergebnis-Busses zu ermöglichen.
  • Gemäß 3 wird bei einer möglichen Ausführungsform eines selbstgetakteten Signalgenerators das Taktsignal ck dem Rücksetz-Eingangsanschluss R der Flip-Flop-Schaltung 352 zugeführt. Weiterhin wird das Taktsignal ck dem Setz-Eingangsanschluss S der Flip-Flop-Schaltung 352 über die Puffer 354 zugeführt. Das selbstgetaktete Signal st wird von dem Q-Ausgangsanschluss der Flip-Flop-Schaltung 352 an das UND-Gatter 332 und den invertierenden Eingangsanschluss ODER-Gatters 336 geliefert. Die Abfallflanke des selbstgetakteten Signals st wird durch die Anstiegsflanke des Taktsignals ck erzeugt, während die Anstiegsflanke des selbstgetakteten Signals st durch eine verzögerte Version der Anstiegsflanke des Taktsignals ck erzeugt wird. Die Zeitsteuerung beider Flanken des selbstgetakteten Signals st anhand der Anstiegsflanke des Taktsignals ck führt zu einer Tastverhältnis-Unabhängigkeit. Die Verzögerung der Verzögerungskette kann so eingestellt werden, dass sie äquivalent zu der Verzögerung zwischen den Anstiegsflanken des Taktsignals ck und des Treffersignals ht ist. Alternativ kann, wenn das Tastverhältnis des Taktsignals ck bekannt und gut gesteuert ist, die Zeitsteuerung der Anstiegsflanke des selbstgetakteten Signals st durch die Abfallflanke des Taktsignals ck gesteuert werden. Es sei bemerkt, dass die Treffer-Zeitsteuerung vorhersagbar sein sollte, um eine maximale Betriebsgeschwindigkeit unter Verwendung der Ausführungsform zu erzielen; bei Ausführungsformen, bei denen die Treffer-Zeitsteuerung nicht vorhersagbar ist, muss die Breite des st-Impulses mit niedrigem Pegel ausreichend sein, damit sie länger als irgendeine mögliche ht-Verzögerung ist.
  • Die 4 ist eine Zeitdiagramm, das das selbstgetaktete Signal und die Suchergebnisse zeigt. Ein Adressensignal sa von der CAM-Anordnung 110 wird dem Übertragungs-Gatter 334 zugeführt, das verhindert, dass das Adressensignal durch das Gatter hindurchläuft, wenn das Freigabesignal sae niedrig ist. Ein Ausgangssignal von dem Übertragungs-Gatter 334 wird dem Adressen-Ausgangsanschluss SA zugeführt. Ein Treffer-Weiterleitungs-Ausgangssignal hto von dem ODER-Gatter 336 wird dem Puffer 338 zugeführt.
  • Während des Zeitintervalls, während dessen st=0 an allen Logik-Schaltungen 120 in dem System ist, werden keine Anordnungen freigegeben, um den Bus 122 anzusteuern.
  • Während des gleichen Intervalls werden alle Treffer-Signale HT in der Kaskade aufgrund von st=0 (siehe 5A–D) auf eine logische 1 gesetzt, wodurch in doppelter Weise die SA-Ausgangstreiber über das Treffer-Weiterleitungs-Eingangssignal hti abgeschaltet werden. Diese teilweise Redundanz kann dadurch beseitigt werden, dass eine zeitliche Nachsteuerung der Signale durchgeführt wird und die Anzahl der Eingänge an die Gatter verringert wird, ohne von dem Schutzumfang der Erfindung abzuweichen. Es sei bemerkt, dass eine derartige Lösung zu einer weniger robusten Konstruktion führen würde.
  • Schwingungsformen aller wesentlichen Signale auf einer einzigen Anordnung sind in den 5A bis 5D für die vier unterschiedlichen Fälle des Treffer-Weiterleitungs-Eingangssignals hti gezeigt (übergang von 0 auf 0, 1 auf 0, 0 auf 1 und 1 auf 1).
  • Wie dies zu erkennen ist, ist die korrekte Betriebsweise unabhängig von (a) Geschwindigkeitsunterschieden zwischen den Anordnungen und (b) der Routenführungs-Verzögerung, weil die Abwahl auf der Grundlage einer Logik erfolgt, die örtlich an der Schaltung 120 angeordnet ist, und lediglich die Auswahl durch Signale torgesteuert wird, die systemaufwärts erzeugt werden. Dieses Merkmal unterstützt weiterhin die Erweiterbarkeit, weil zusätzliche Anordnungen, die dem System hinzugefügt werden, unterschiedlichen Verarbeitungsbedingungen unterworfen sein können oder selbst mit einer vollständig unterschiedlichen Herstellungstechnologie hergestellt sein können.
  • Wenn der schlechteste Fall der Zeitsteuerung charakterisiert wird, so ist der langsamste Pfad zur SA-Ansteuerung der von dem Treffer-Weiterleitungs-Eingangssignal-HTI. Der Abwärts-Übergang an dem Treffer-Weiterleitungs-Eingangssignal HTI kann weiterhin zu dem Treffer-Ausbreitungs-Ausgangssignal HT verlaufen (unter der Annahme das ht=0 ist), derart, dass das System-Betriebsverhalten im schlechtesten Fall gleich dem einer einzigen Anordnung ist, die allein steht, plus (n – 2) mal der Treffer-Weiterleitungs-Eingangs-HTI-Signal-zu HT-Signal Verzögerung plus der Weiterleitungs-HTI-Eingangssignals-HTI zu SA-Verzögerung.
  • Das Betriebsverhalten kann durch die folgenden Gleichungen ausgedrückt werden: tCH-SAV = tCH-HTV + (n – 2) × tHTIL-HTL + tHTIL-SAV tCH-SAV = tCH-HITV + (n – 2) × tHITIL-HITL + tHITIL-SAV tCH-SHTV = tCH-HTV + (n – 1) × tHTIL-tHTL tCH-HITV = tCH-HITV + (n – 1) × tHITIL-HITL
  • Es sei darauf hingewiesen, dass ohne das selbstgetaktete Signal st das Abschalten und Einschalten der SA-Ansteuerung von der HTI-Zeitsteuerung abhängen würde. Eine Bus-Konkurrenz würde schwierig zu verhindern sein, und die Abschalt-Steuerung würde von der Position der Anordnung in der Kaskade abhängen.
  • In einer anderen alternativen Ausführungsform oder einfach einer zusätzlichen Funktion können Suchadressen-Ergebnisse in (nicht gezeigten) Registern gespeichert werden. Der Ausgang des Codierers 130 kann dazu verwendet werden, festzustellen, bei von Anordnung das Ergebnisregister gelesen wird.
  • Es ist verständlich, dass es viele mögliche Änderungen der Einzelheiten der Ausführungsform gibt, die logisch in der Offenbarung dieser Erfindung enthalten sind, unter Einschluss von unterschiedlichen Signalpolaritäten, äquivalenten Implementationen auf der Boolschen-Gatterebene, kleinen Zeitsteuerungs- oder Taktungs-Änderungen und so weiter.

Claims (5)

  1. Inhaltsadressierbarer Speicher mit: einer Vielzahl von Inhaltsadressierbarem Speicher- (CAM-) Anordnungen (110), wobei jede CAM-Anordnung (110) Codiereinrichtungen (238) und eine Anordnung von Kernzellen (230) von w Worten × b Bits umfasst, die der Codiereinrichtung zugeordnet sind, wobei jede Zelle (230) Datenspeichereinrichtungen umfasst, wobei jede CAM-Anordnung (110) in der Lage ist, über ihre jeweiligen Codiereinrichtung Treffer- und Übereinstimmungs-Adressensignale, die sich aus einer Suchoperation ergeben, in Abhängigkeit von einem Taktsignal zu liefern, dadurch gekennzeichnet, dass das System weiterhin Folgendes umfasst: eine Vielzahl von Logikschaltungen (120) zur Lieferung von Treffer-und Übereinstimmungs-Adressenergebnissen des Systems, wobei jede Logikschaltung (120) einer jeweiligen CAM-Anordnung (110) zugeordnet ist, um das Treffersignal von dieser zu empfangen, wobei jede Logikschaltung (120) Taktsignal-Generatoreinrichtungen (352) zur Erzeugung eines selbstgetakteten Signals in Abhängigkeit von dem Taktsignal umfasst, wobei jede Logik-Schaltung (120) eine Logikeinrichtung (336) zum logischen Kombinieren eines Treffer-Weiterleitungs-Eingangssignals, das von einer systemaufwärts gelegenen Logik-Schaltung geliefert wird, mit dem von der zugehörigen CAM-Anordnung gelieferten Treffersignal umfasst, so dass ein Treffer-Weiterleitungs-Ausgangssignal an eine systemabwärts gelegene Logik-Schaltung (120) in Abhängigkeit von dem selbstgetakteten Signal geliefert wird, wobei eine Dauer von einer Abfallflanke des selbstgetakteten Signals zu einer folgenden Anstiegsflanke des selbstgetakteten Signals länger als irgendeine Verzögerung in den Treffersignalen ist.
  2. System nach Anspruch 1, bei dem die Taktsignal-Generatoreinrichtung Verzögerungseinrichtungen (354) zur Erzeugung des selbstgetakteten Signals mit einer Zeitverzögerung von dem Taktsignal umfasst.
  3. System nach Anspruch 1, bei dem die Logikeinrichtung (336) eine ODER-Einrichtung zum Gewinnen eines ODER-Logiksignals des selbstgetakteten Signals, des Treffer-WeiterleitungsEingangssignals von der systemaufwärts gelegenen Logik-Schaltung und des Treffersignals umfasst, das von der zugehörigen CAM-Anordnung geliefert wird, um auf diese Weise das Treffer-Weiterleitungs-Ausgangssignal an die systemabwärts gelegene Logik-Schaltung zu liefern.
  4. System nach Anspruch 3, bei dem die ODER-Einrichtung ein ODER-Gatter zum Empfang eines invertierten Signals des selbstgetakteten Signals, des Treffer-Weiterleitungs-Eingangssignals und des Treffersignals umfasst.
  5. System nach Anspruch 1, dass weiterhin eine Vielzahl von Registern, die jeweiligen CAM-Anordnungen (110) entsprechen, eine Vielzahl von UND-Gattern (124), die jeweiligen CAM-Anordnungen (110) entsprechen, und einen Codierer (130) umfasst, wobei jedes der Register so konfiguriert, das es einer jeweiligen CAM-Anordnung (110) zugeordnete Suchadressenergebnisse speichert, und wobei ein Ausgang von dem Codierer (130) bestimmt, welches der Vielzahl von Registern gültige Suchadressenergebnisse speichert.
DE69835547T 1997-09-04 1998-06-16 Inhaltsadressierbares Speichersystem Expired - Lifetime DE69835547T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US923633 1997-09-04
US08/923,633 US6122707A (en) 1997-09-04 1997-09-04 Content addressable memory system with self-timed signals and cascaded memories for propagating hit signals

Publications (2)

Publication Number Publication Date
DE69835547D1 DE69835547D1 (de) 2006-09-21
DE69835547T2 true DE69835547T2 (de) 2006-11-30

Family

ID=25449004

Family Applications (2)

Application Number Title Priority Date Filing Date
DE69835547T Expired - Lifetime DE69835547T2 (de) 1997-09-04 1998-06-16 Inhaltsadressierbares Speichersystem
DE69821691T Expired - Lifetime DE69821691T2 (de) 1997-09-04 1998-06-16 Assoziatives Speichersystem

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE69821691T Expired - Lifetime DE69821691T2 (de) 1997-09-04 1998-06-16 Assoziatives Speichersystem

Country Status (5)

Country Link
US (2) US6122707A (de)
EP (2) EP1355319B1 (de)
JP (1) JP4347439B2 (de)
KR (1) KR100619204B1 (de)
DE (2) DE69835547T2 (de)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3976932B2 (ja) * 1999-03-31 2007-09-19 キヤノン株式会社 データ処理方法及び装置並びに記憶媒体
CA2310295C (en) 2000-05-31 2010-10-05 Mosaid Technologies Incorporated Multiple match detection circuit and method
US6317350B1 (en) * 2000-06-16 2001-11-13 Netlogic Microsystems, Inc. Hierarchical depth cascading of content addressable memory devices
US6493793B1 (en) 2000-06-16 2002-12-10 Netlogic Microsystems, Inc. Content addressable memory device having selective cascade logic and method for selectively combining match information in a CAM device
US6466470B1 (en) 2000-11-04 2002-10-15 Virage Logic Corp. Circuitry and method for resetting memory without a write cycle
JP2003324464A (ja) * 2002-04-30 2003-11-14 Fujitsu Ltd データ検索装置及びデータ検索方法
KR100455392B1 (ko) * 2002-08-10 2004-11-06 삼성전자주식회사 동작속도를 향상시키고 칩 면적을 감소시킬 수 있는워드라인 드라이버 회로를 구비하는 캐쉬 메모리장치 및이의 워드라인 구동방법
US7054995B2 (en) * 2003-04-23 2006-05-30 Integrated Silicon Solution, Inc. Dynamic linking of banks in configurable content addressable memory systems
US7043600B2 (en) * 2003-05-12 2006-05-09 Integrated Silison Solution, Inc. Cascading content addressable memory devices with programmable input/output connections
US7337267B1 (en) 2004-02-10 2008-02-26 Netlogic Microsystems, Inc Hierarchical, programmable-priority content addressable memory system
US9063840B1 (en) * 2009-08-21 2015-06-23 Broadcom Corporation Multiple match detection for multiple flows in a content addressable memory
CN103345937B (zh) * 2013-06-18 2016-08-03 苏州雄立科技有限公司 一种在比较搜索芯片中支持多种查找模式的优先级编码方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4670858A (en) * 1983-06-07 1987-06-02 Tektronix, Inc. High storage capacity associative memory
US5018111A (en) * 1988-12-27 1991-05-21 Intel Corporation Timing circuit for memory employing reset function
JPH02308499A (ja) * 1989-05-23 1990-12-21 Toshiba Corp 連想メモリ
US5031141A (en) * 1990-04-06 1991-07-09 Intel Corporation Apparatus for generating self-timing for on-chip cache
US5440715A (en) * 1990-06-27 1995-08-08 Advanced Micro Devices, Inc. Method and apparatus for expanding the width of a content addressable memory using a continuation bit
US5289403A (en) * 1991-07-08 1994-02-22 Hewlett-Packard Company Self-timed content addressable memory access mechanism with built-in margin test feature
US5619446A (en) * 1992-01-10 1997-04-08 Kawasaki Steel Corporation Hierarchical encoder including timing and data detection devices for a content addressable memory
US5555397A (en) * 1992-01-10 1996-09-10 Kawasaki Steel Corporation Priority encoder applicable to large capacity content addressable memory
US5568416A (en) * 1994-03-24 1996-10-22 Kawasaki Steel Corporation Associative memory
US5517441A (en) * 1994-12-14 1996-05-14 International Business Machines Corporation Content addressable memory circuitry and method of operation
US5828593A (en) * 1996-07-11 1998-10-27 Northern Telecom Limited Large-capacity content addressable memory
US5859791A (en) * 1997-01-09 1999-01-12 Northern Telecom Limited Content addressable memory
US6230236B1 (en) * 1997-08-28 2001-05-08 Nortel Networks Corporation Content addressable memory system with cascaded memories and self timed signals

Also Published As

Publication number Publication date
DE69835547D1 (de) 2006-09-21
EP0901129B1 (de) 2004-02-18
DE69821691T2 (de) 2004-07-22
EP1355319A2 (de) 2003-10-22
JP4347439B2 (ja) 2009-10-21
KR100619204B1 (ko) 2007-01-31
DE69821691D1 (de) 2004-03-25
KR19990029489A (ko) 1999-04-26
EP1355319B1 (de) 2006-08-09
JPH11120776A (ja) 1999-04-30
EP0901129A3 (de) 1999-08-04
US6219749B1 (en) 2001-04-17
EP0901129A2 (de) 1999-03-10
EP1355319A3 (de) 2003-11-05
US6122707A (en) 2000-09-19

Similar Documents

Publication Publication Date Title
DE69827714T2 (de) Assoziativspeichersystem
DE3834759C2 (de)
DE3788032T2 (de) Struktur zum Wiederordnen von Bits auf dem Chip.
DE69923634T2 (de) Synchrone Burstzugriffshalbleiterspeicheranordnung
DE3102799C2 (de) Halbleiter-Speichervorrichtung
DE4210857C2 (de) Halbleiterspeichereinrichtung und Verfahren zum Übertragen von Daten
DE68922975T2 (de) Speichereinheit mit zwei Toren.
DE68922941T2 (de) Bedingungsschreib-RAM.
DE69724327T2 (de) Leistungsreduzierung während eines Blockschreibens
DE69835547T2 (de) Inhaltsadressierbares Speichersystem
DE69817955T2 (de) Assoziativspeicher
DE69027932T2 (de) Cpu-pipeline mit registerfile-bypass durch adressvergleich bei aktualisierungen/zugriffen
DE602004007625T2 (de) Dram-ausgangsschaltkreise zur unterstützung der sequenziellen datenerfassung zur verringerung von kernzugriffszeiten
DE2803989A1 (de) Wahlfreie zugriffsspeichervorrichtung fuer digitale daten
DE102016001224A1 (de) Speicher mit hoher Bandbreite und störungsfreies differenzielles XOR
DE4018296C2 (de)
DE60037699T2 (de) Konfigurierbarer inhaltsadressierbarer Speicher
DE19738726B4 (de) Datenausgabe-bezogener Schaltkreis für Halbleiterspeichervorrichtung mit Eignung für Hochgeschwindigkeitsbetrieb
DE69021230T2 (de) Halbleiter-Speichereinrichtung mit einer Ausgangsdaten-Puffereinheit, die entweder die normale Zugriffsbetriebsart oder die Testbetriebsart aufweist.
EP0282976B1 (de) Verfahren und Schaltungsanordnung zum parallelen Einschreiben von Daten in einen Halbleiterspeicher
EP0628832B1 (de) Integrierte Schaltung mit Registerstufen
DE69032035T2 (de) FIFO-Speicher
DE1499178A1 (de) Steuerbarer Datenspeicher mit Verzoegerungsleitung
DE69030575T2 (de) Integrierte Halbleiterschaltung mit einem Detektor
DE69125734T2 (de) Halbleiterspeicheranordnung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: INDEPENDENCE MANZANAR LLC, LAS VEGAS, NEV., US