[go: up one dir, main page]

DE60210322T2 - Assoziativspeicherarchitektur mit geringem leistungsverbrauch - Google Patents

Assoziativspeicherarchitektur mit geringem leistungsverbrauch Download PDF

Info

Publication number
DE60210322T2
DE60210322T2 DE60210322T DE60210322T DE60210322T2 DE 60210322 T2 DE60210322 T2 DE 60210322T2 DE 60210322 T DE60210322 T DE 60210322T DE 60210322 T DE60210322 T DE 60210322T DE 60210322 T2 DE60210322 T2 DE 60210322T2
Authority
DE
Germany
Prior art keywords
search
matchline
cam
main
sense amplifier
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
DE60210322T
Other languages
English (en)
Other versions
DE60210322D1 (de
Inventor
Jin-Ki Ottawa KIM
Peter Kanata VLASENKO
Douglas Markham Ontario PERRY
B. Peter Kanata GILLINGHAM
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.)
Mosaid Technologies Inc
Original Assignee
Mosaid Technologies Inc
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
Priority claimed from CA2384039A external-priority patent/CA2384039C/en
Application filed by Mosaid Technologies Inc filed Critical Mosaid Technologies Inc
Publication of DE60210322D1 publication Critical patent/DE60210322D1/de
Application granted granted Critical
Publication of DE60210322T2 publication Critical patent/DE60210322T2/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
    • 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

  • Dram (AREA)
  • Power Sources (AREA)
  • Television Systems (AREA)
  • Static Random-Access Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung betrifft inhaltsadressierbare Speicher (content addressable memories: CAM). Im besonderen betrifft die Erfindung eine CAM-Architektur zum Verringern des Energieverbrauchs.
  • HINTERGRUND DER ERFINDUNG
  • In vielen herkömmlichen Speichersystemen, wie etwa in einem Speicher mit wahlfreiem Zugriff, werden Binärstellen (Bits) in Speicherzellen gespeichert und wird auf sie durch einen Prozessor zugegriffen, der eine lineare Adresse spezifiziert, die der gegebenen Zelle zugeordnet ist. Dieses System bietet einen schnellen Zugriff auf jeden Abschnitt des Speichersystems innerhalb gewisser Grenzen. Um die Prozessorsteuerung zu erleichtern, muß bei jeder Operation, bei der auf den Speicher zugegriffen wird, als Teil der Instruktion die benötigte Adresse der Speicherzelle/-zellen deklariert werden. Standardspeichersysteme sind für eine Suche auf Inhaltsbasis nicht gut geeignet. Suchoperationen auf Inhaltsbasis in dem Standardspeicher erfordern eine algorithmische Suche auf der Basis von Software unter der Steuerung des Mikroprozessors. Viele Speicheroperationen sind erforderlich, um eine Suche auszuführen. Diese Suchoperationen sind, was die Verwendung von Prozessorbetriebsmitteln anbelangt, weder schnell noch effektiv.
  • Um diese Unzulänglichkeiten zu überwinden, ist ein Assoziativspeichersystem entwickelt worden, das als inhaltsadressierbarer Speicher (Content Addressable Memory: CAM) bezeichnet wird. Ein CAM gestattet die Bezugnahme auf Zellen über ihren Inhalt, so daß er zuerst bei Implementierungen von Nachschlagtabellen wie etwa Cache-Speicher-Subsystemen zum Einsatz gekommen ist und nun in Netzwerksystemen schnell Verwendung findet. Das wertvollste Merkmal des CAM ist sein Vermögen zum Ausführen einer Suche und zum Vergleichen mehrerer Speicherstellen als Einzeloperation, wobei Suchdaten mit Daten verglichen werden, die in dem CAM gespeichert sind. Typischerweise werden Suchdaten auf Suchleitungen geladen und mit gespeicherten Wörtern in dem CAM verglichen. Während einer Such- und Vergleichsoperation wird ein Übereinstimmungs- oder Nichtübereinstimmungssignal, das jedem gespeicherten Wort zugeordnet ist, auf einer sogenannten Paßgenauigkeitsleitung (engl.: matchline) erzeugt, das angibt, ob das Suchwort mit einem gespeicherten Wort übereinstimmt oder nicht. Ein typisches Wort der gespeicherten Daten enthält tatsächliche Daten in einer Anzahl, die zu Header-Bits hinzugefügt sind, wie beispielsweise ein "E"-Bit oder Empty-Bit, obwohl die Header-Bits während der Such- und Vergleichsoperationen nicht speziell gesucht werden.
  • Ein CAM speichert Daten in einer Matrix von Zellen, die im allgemeinen entweder Zellen auf SRAM-Basis oder Zellen auf DRAM-Basis sind. Bis vor kurzem sind CAM-Zellen auf SRAM-Basis auf Grund ihrer einfachen Implementierung am häufigsten verwendet worden. Um jedoch Ternärzustands-CAMs vorzusehen, d. h., bei denen jede CAM-Zelle einen von drei Werten speichern kann: nämlich logisch "0", "1" oder das Resultat "beliebig" ("don't care"), erfordern Zellen auf Ternär-SRAM-Basis typischerweise viel mehr Transistoren als Zellen auf Ternär-DRAM-Basis. Als Resultat haben CAMs auf Ternär-SRAM-Basis eine viel geringere Packungsdichte als Zellen auf Ternär-DRAM-Basis.
  • Ein typisches CAM-Blockdiagramm ist in 1 gezeigt. Der CAM 10 enthält eine Matrix, oder ein Array 25, von CAM- Zellen auf DRAM-Basis (nicht gezeigt), die in Reihen und Spalten angeordnet sind. Ein Array von Ternär-CAM-Zellen auf DRAM-Basis hat den Vorteil, daß es einen signifikant kleineren Silizium-Bereich als ihr Pendant auf SRAM-Basis belegt. Eine vorbestimmte Anzahl von CAM-Zellen in einer Reihe speichert ein Datenwort. Ein Adreßdecodierer 17 wird verwendet, um irgendeine Reihe innerhalb des CAM-Arrays 25 zu selektieren, damit Daten in die selektierte Reihe geschrieben oder aus ihr gelesen werden können. Eine Datenzugriffsschaltungsanordnung wie etwa Bitleitungen und Spaltenselektionsvorrichtungen sind innerhalb des Arrays 25 angeordnet, um Daten in das Array 25 hinein- und aus ihm herauszubefördern. Innerhalb des CAM-Arrays 25 gibt es für jede Reihe von CAM-Zellen nichtgezeigte Paßgenauigkeitsleitungsleseschaltungen, die während Such- und Vergleichsoperationen zum Ausgeben eines Resultats verwendet werden, das einen erfolgreichen oder erfolglosen Vergleich eines Suchwortes bezüglich des gespeicherten Wortes in der Reihe bezeichnet. Die Resultate für alle Reihen werden durch den Prioritätscodierer 22 verarbeitet, um die Adresse (Übereinstimmungsadresse) auszugeben, die der Speicherstelle eines paßgenauen Wortes entspricht. Die Übereinstimmungsadresse wird in Übereinstimmungsadreßregistern 18 gespeichert, bevor sie durch den Übereinstimmungsadreßausgabeblock 19 ausgegeben wird. Daten werden durch den Daten-E/A-Block 11 und die verschiedenen Datenregister 15 in das Array 25 geschrieben. Daten werden durch das Datenausgaberegister 23 und den Daten-E/A-Block 11 aus dem Array 25 gelesen. Andere Komponenten des CAM enthalten den Steuerschaltungsblock 12, den Flaglogikblock 13, den Spannungszufuhrerzeugungsblock 14, verschiedene Steuer- und Adreßregister 16, den Auffrischzähler 20 und den JTAG-Block 21.
  • 2 zeigt eine hierarchische Ansicht des typischen CAM-Arrays 25. Das CAM-Array 25 enthält eine Matrix von CAM-Zellen 30 und einen Paßgenauigkeitsleitungsleseschaltungsblock 26. Die CAM-Zellen 30 des CAM-Arrays 25 sind in Reihen und Spalten angeordnet. Die CAM-Zellen 30 einer Reihe sind mit einer gemeinsamen Paßgenauigkeitsleitung MLi, Wortleitung WLi und Endleitung TLi verbunden, und die CAM-Zellen 30 einer Spalte sind mit einem gemeinsamen Paar von Suchleitungen SLj*/SLj und einem gemeinsamen Paar von Bitleitungen BLj/BLj* verbunden, wobei i ein ganzzahliger Wert zwischen 0 und n ist und j ein ganzzahliger Wert zwischen 0 und m ist. Angrenzend an das CAM-Array 25 ist für jede Reihe der Paßgenauigkeitsleitungsleseschaltungsblock 26 angeordnet. Der Paßgenauigkeitsleitungsleseschaltungsblock 26 enthält eine Paßgenauigkeitsleitungsleseschaltung 27, die mit einer jeweiligen Paßgenauigkeitsleitung MLi verbunden ist, und wird während Such- und Vergleichsoperationen zum Ausgeben von Paßgenauigkeitssignalen ML_OUT0-ML_OUTn verwendet, die einen erfolgreichen oder erfolglosen Vergleich eines Suchwortes bezüglich des gespeicherten Wortes bezeichnen. Paßgenauigkeitsleitungen MLi und Endleitungen TLi sind mit ihren jeweiligen Paßgenauigkeitsleitungsleseschaltungen 27 verbunden, und Endleitungen TLi können selektiv mit Erdpotential verbunden werden. Obwohl es in dem vereinfachten Schema von 2 nicht gezeigt ist, empfangen die Paßgenauigkeitsleitungsleseschaltungen 27 auch Steuersignale, um ihre Operation zu steuern, und ein Fachmann würde verstehen, daß solche Steuersignale für die korrekte Operation der Schaltung erforderlich sind.
  • 3 zeigt eine typische CAM-Zelle des Ternär-DRAM-Typs 30, wie sie in dem herausgegebenen US-Patent Nr. 6,320,777 B1 beschrieben ist. Die Zelle 30 hat eine Vergleichsschaltung, die einen n-Kanal-Suchtransistor 31 enthält, der seriell mit einem n-Kanal-Vergleichstransistor 32 zwischen einer Paßgenauigkeitsleitung ML und einer Endleitung TL verbunden ist. Eine Suchleitung SL* ist mit dem Gate des Suchtransistors 31 verbunden. Die Speicherschaltung enthält einen n-Kanal-Zugriffstransistor 33, dessen Gate mit einer Wortleitung WL verbunden ist und der seriell mit dem Kondensator 34 zwischen der Bitleitung BL und einem Zellenplattenspannungspotential VCP verbunden ist. Ein Ladungsspeicherknoten ZELLE 1 wird mit dem Gate des Vergleichstransistors 32 verbunden, um den Transistor 32 einzuschalten, falls auf dem Kondensator 34 eine Ladung gespeichert ist, d. h., falls ZELLE 1 logisch "1" ist. Die übrigen Transistoren und der Kondensator bilden die Transistoren 31, 32, 33 und den Kondensator 34 für die andere Hälfte des Ternärdatenbits und sind mit entsprechenden Leitungen SL und BL* verbunden und vorgesehen, um das Speichern von Ternärdaten zu unterstützen. Zusammen können sie einen Ternärwert speichern, der logisch "1", logisch "0" oder "beliebig" darstellt.
  • Figure 00050001
  • Die Endleitung TL ist typischerweise mit Erde verbunden, und alle Transistoren sind n-Kanal-Transistoren. Die Operation der Ternär-DRAM-Zelle ist in dem obenerwähnten herausgegebenen Patent 6,320,777 B1 eingehend beschrieben.
  • Wenn Paßgenauigkeitsleitungen einhergehend mit zunehmenden Speicherdichten länger werden, wird auch die parasitäre Kapazität bei den längeren Paßgenauigkeitsleitungen größer. Die zusätzliche Belastung der Paßgenauigkeitsleitungen auf Grund der vergrößerten parasitären Kapazität wirft verschiedene Konstruktionsprobleme auf, die mit dem Lesen der Paßgenauigkeitsleitung in Verbindung stehen. Erstens beträgt der Strom eines einzelnen Leitungsweges, der durch eine nichtübereinstimmende CAM-Zelle zwischen der Paßgenauigkeitsleitung und VSS erzeugt wird, ungefähr 10 μA. Daher muß der Paßgenauigkeitsleitungsleseverstärker empfindlich genug sein, um diesen kleinen Strom zu detektieren. Zweitens sollte die Betriebsfrequenz des CAM-Chips hoch sein; mit anderen Worten, der Arbeitszyklus des Paßgenauigkeitsleitungsleseverstärkers sollte so kurz wie möglich sein, um eine hohe CAM-Leistung zu erreichen. Drittens sollte, da alle Paßgenauigkeitsleitungen des CAM-Chips während Such- und Vergleichsoperationen gleichzeitig aktiv sind, der Spannungshub der Paßgenauigkeitsleitung so niedrig wie möglich gehalten werden, um den Energieverlust zu minimieren. Viertens sollte das Lesen stabil sein und sollten gute Lesetoleranzen für ein zuverlässiges Lesen vorhanden sein. Fünftens sollte die Paßgenauigkeitsleitungsleseverstärkerschaltung einfach und klein genug sein, um in ein CAM-Kern-Layout mit knapper Teilung zu passen, um den Flächenverbrauch und resultierende Kosten zu minimieren. Auch wenn der Spannungshub auf Paßgenauigkeitsleitungen niedrig gehalten wird, bleibt der Energieverbrauch auf Grund der vollkommen parallelen Suchoperationen dennoch hoch, die durch den CAM ausgeführt werden. Eine der grundlegenden Herausforderungen bei CAMs mit hoher Kapazität ist das Minimieren des Energieverbrauchs auf Grund des wiederholten Ladens und Entladens von Paßgenauigkeitsleitungen während Such- und Vergleichsoperationen. Der Energieverbrauch des CAM nimmt einhergehend mit zunehmender Speicherkapazität proportional zu.
  • Es gibt zwei Hauptquellen für den wesentlichen Energieverbrauch während Suchoperationen in CAMs. Nämlich die Energie, die durch Paßgenauigkeitsleitungen verbraucht wird, und die Energie, die durch Suchleitungen verbraucht wird. Herkömmlicherweise werden alle Paßgenauigkeitsleitungen auf den Zustand von logisch 'H' (Paßgenauigkeitsbedingung) vorgeladen, und dann können Paßgenauigkeitsleitungen durch den Vergleich mit Suchdaten auf einen Zustand von logisch 'L' (Fehlbedingung) gezogen werden.
  • Bei den meisten CAM-Anwendungen kommen "Fehltreffer" häufiger als "Treffer" vor. Das Vorladen von Paßgenauigkeitsleitungen auf logisch 'H' und das Entladen von Paßgenauigkeitsleitungen auf logisch 'L' bei Fehltreffern tendiert dazu, zu einem hohen Energieverbrauch auf Grund des hohen Stroms zu führen, der mit dem Laden und Entladen aller Paßgenauigkeitsleitungen bei jeder Suchoperation zusammenhängt. Zusätzlich nimmt einhergehend mit einer erhöhten Anzahl von Zellen, die mit jeder Paßgenauigkeitsleitung bei CAM-Anwendungen mit breiteren Wörtern verbunden sind, die Kapazität von Paßgenauigkeitsleitungen dementsprechend zu, wodurch ihrerseits der Strom erhöht wird, der erforderlich ist, um die Paßgenauigkeitsleitungen zu laden und zu entladen. Verschiedene Lösungen sind zum Reduzieren der während der Suchoperationen verbrauchten Energie vorgeschlagen worden, wie beispielsweise das Segmentieren von Paßgenauig keitsleitungen in mehrere Segmente und das sequentielle Aktivieren von Segmenten auf der Basis von Treffer- oder Fehltrefferresultaten von vorherigen Segmenten.
  • Zum Beispiel ist eine segmentierte Paßgenauigkeitsleitungsarchitektur in dem US-Patent Nr. 6,243,280 (Wong et al.) beschrieben, wobei Reihen des CAM in eine Vielzahl von Segmenten partitioniert sind. Bei jeder Paßgenauigkeitsleitung wird das erste von der Vielzahl von Paßgenauigkeitsleitungssegmenten vorgeladen und wird eine Suchoperation an dem ersten Segment ausgeführt. Im Falle eines Treffers in dem ersten Segment wird selektiv das zweite Paßgenauigkeitsleitungssegment vorgeladen, und die Suche geht zu dem zweiten Segment über. Falls in dem zweiten Segment ein Treffer vorliegt, wird ein drittes Segment vorgeladen, und die Suche geht auf ähnliche Weise weiter, bis alle Segmente einer Paßgenauigkeitsleitung durchsucht worden sind. Das Vorladen eines nachfolgenden Segmentes erfolgt deshalb nur im Falle eines Trefferresultats in einem vorherigen Segment. Im Falle eines Treffers in allen Segmenten erfordert das selektive Vorladen jedes Segmentes auf logisch 'H' jedoch dennoch einen großen Strom. Ferner wird eine signifikante Verzögerung in die Suchzeit dadurch eingeschleppt, daß darauf gewartet werden muß, daß das selektive Vorladen in einem Segment erfolgt, bevor mit dem eigentlichen Vergleich in jenem Segment fortgefahren wird.
  • In dem US-Patent Nr. 6,191,970 (Pereira) wird eine Paßgenauigkeitsleitung in mehrere Segmente geteilt, die vor Beginn einer Suchoperation alle gleichzeitig auf den Zustand von logisch 'H' vorgeladen werden. Zusätzlich hat jede CAM-Zelle eine zugeordnete Entladungsschaltung zum selektiven Entladen ihres entsprechenden Paßgenauigkeitsleitungssegmen tes als Reaktion auf ein Sperrsignal von einem vorherigen Paßgenauigkeitsleitungssegment. Ein Segment wird deshalb nur entladen, falls das unmittelbar vorausgehende Segment einen Fehltreffer ergibt, während alle nachfolgenden Segmente auf logisch 'H' vorgeladen bleiben. Als Resultat wird die Fehlbedingung von einem Segment entlang des Restes der Reihe verbreitet, ohne alle anderen Segmente entlang der Reihe zu entladen. Während diese Lösung das Problem der Verzögerungen mindert, die durch das selektive Vorladen von Segmenten eingeschleppt werden, bleibt das Potential für den hohen Stromverbrauch dennoch bestehen, da alle Paßgenauigkeitsleitungen zuerst auf den Zustand von logisch 'H' vorgeladen werden müssen. Zusätzlich muß die Paßgenauigkeitsdetektion von jedem Segment synchron mit einem Taktsignal getaktet erfolgen, da die Paßgenauigkeitsleitung für einen Treffer vorgeladen wird. Als Resultat muß entweder eine Anzahl von internen Takten erzeugt werden, oder der Systemtakt muß verwendet werden, wodurch die Systemlatenz erhöht wird. Schließlich wird, um eine Entladung vor der Freigabe des Segmentes zu verhindern, eine seriell gekoppelte Vorrichtung zu jeder CAM-Zelle hinzugefügt, wodurch der Chip-Bereich vergrößert wird und die gesamte Operation verlangsamt wird.
  • In einem Artikel mit dem Titel "Use of Selective Precharge for Low Power on the Match Lines of Content Addressable Memories" von Zukowski et al., IEEE 1997, ist ein Verfahren beschrieben, bei dem ein kleines Segment einer gesamten Paßgenauigkeitsleitung vorgeladen wird und verwendet wird, um zuerst einen partiellen Vergleich auszuführen, und nur wenn sich eine Übereinstimmung in jenem ersten kleinen Segment ergibt, wird das verbleibende Segment der Paßgenauigkeitsleitung vorgeladen und schließlich durch sucht. In dem Artikel wird auch vorgeschlagen, daß theoretisch die selektive Vorladetechnik erweitert werden könnte, um mehr als eine Stufe abzudecken, aber der zusätzliche Overhead, Extrataktphasen und zusätzliche Pufferung würden keine großen zusätzlichen Vorteile über das darin vorgeschlagene selektive Vorladen der einzelnen Stufe hinaus bieten. Bei dieser Lösung wird nicht die Möglichkeit betrachtet, mehrere Paßgenauigkeitsleitungssegmente sequentiell, aber unabhängig von Taktzyklen arbeiten zu lassen, wodurch eine ausreichend schnelle Prozeßtechnologie zur Verfügung steht, um die nötige Schaltungsanordnung zu implementieren. Ferner beruht die durch Zukowski et al. diskutierte Lösung noch auf einem Vorladen auf einen Zustand von logisch 'H', wodurch große Mengen von Strom gezogen werden, wie zuvor erläutert wurde.
  • Daher sind gegenwärtige CAM-Vorrichtungen für Niedrigenergieanwendungen nicht geeignet, bei denen die Erhaltung der Batterieenergie entscheidend ist. Somit wird nach wie vor ein CAM benötigt, der während Suchoperationen weniger Energie als herkömmliche Suchtechniken verbrauchen kann.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Es ist eine Aufgabe der vorliegenden Erfindung, wenigstens einen Nachteil von früheren CAM-Arrays zu beseitigen oder zu mildern. Im besonderen ist es eine Aufgabe der vorliegenden Erfindung, eine inhaltsadressierbare Speicherarchitektur und ein Operationsverfahren vorzusehen, die einen reduzierten Energieverbrauch aufweisen und mit hoher Geschwindigkeit arbeiten.
  • Gemäß einem ersten Aspekt sieht die vorliegende Erfindung ein inhaltsadressierbares Speicherarray vor. Das in haltsadressierbare Speicherarray enthält eine Paßgenauigkeitsleitung, die in eine Vielzahl von Segmenten geteilt ist, wobei ein jedes von der Vielzahl von Segmenten in einer Vorladungsphase gleichzeitig auf einen Vorladungsspannungspegel vorgeladen wird. Das inhaltsadressierbare Speicherarray enthält auch einen Paßgenauigkeitsleitungsleseverstärker, der einem jeden der Segmente zugeordnet ist, zum Lesen des Stroms von seinem zugeordneten Segment in einer Lesephase, wobei ein Paßgenauigkeitsleitungsleseverstärker einen anderen Paßgenauigkeitsleitungsleseverstärker freigibt, wenn eine Paßgenauigkeitsbedingung durch den einen Paßgenauigkeitsleitungsleseverstärker detektiert wird.
  • In einer Ausführungsform gemäß dem vorliegenden Aspekt steuern Zeitgeberschaltungen die Vorlade- und Leseoperationen der Paßgenauigkeitsleitungsleseverstärker, und die Zeitgeberschaltungen enthalten Referenz-Paßgenauigkeitsleitungen. In einer anderen Ausführungsform gemäß dem vorliegenden Aspekt entspricht der Vorladungsspannungspegel einer Fehlbedingung, die einem Erdspannungspegel entspricht.
  • In noch einer anderen Ausführungsform gemäß dem vorliegenden Aspekt enthält die Paßgenauigkeitsleitung ein erstes und ein zweites Paßgenauigkeitsleitungssegment und gibt der Paßgenauigkeitsleitungsleseverstärker, der dem ersten Paßgenauigkeitsleitungssegment zugeordnet ist, den Paßgenauigkeitsleitungsleseverstärker frei, der dem zweiten Paßgenauigkeitsleitungssegment zugeordnet ist. Gemäß einem Aspekt der vorliegenden Ausführungsform ist das erste Paßgenauigkeitsleitungssegment mit weniger inhaltsadressierbaren Speicherzellen als das zweite Paßgenauigkeitsleitungssegment gekoppelt.
  • In einer anderen Ausführungsform gemäß dem vorliegenden Aspekt wird die Ausgabe eines jeden Paßgenauigkeitsleitungsleseverstärkers in einer Verriegelungsschaltung gespeichert.
  • Gemäß einem zweiten Aspekt sieht die vorliegende Erfindung ein Verfahren zum Durchsuchen eines inhaltsadressierbaren Speichers vor, der eine Vielzahl von Reihen von CAM-Zellen hat, wobei jede Reihe erste und zweite Paßgenauigkeitsleitungssegmente hat. Das Verfahren enthält die Schritte zum Vorladen der ersten und zweiten Paßgenauigkeitsleitungssegmente auf einen Potentialpegel, der einer Fehlbedingung entspricht, während einer Vorladungsphase, zum Aufbauen eines Vorspannungspotentials auf dem ersten Paßgenauigkeitsleitungssegment in jeder Reihe von CAM-Zellen während einer Lesephase, zum Lesen des Stroms in dem ersten Paßgenauigkeitsleitungssegment während der Lesephase und zum selektiven Freigeben des Lesens des Stroms in dem zweiten Paßgenauigkeitsleitungssegment in jeder Reihe von CAM-Zellen, falls der gelesene Strom in dem ersten Paßgenauigkeitsleitungssegment einer Paßgenauigkeitsbedingung zwischen den Suchdaten und den gespeicherten Daten entspricht.
  • In einer Ausführungsform gemäß dem vorliegenden Aspekt enthält der Schritt zum selektiven Freigeben des Lesens das Konvertieren des gelesenen Stroms in eine Leseknotenausgangsspannung. In noch einer anderen Ausführungsform gemäß dem vorliegenden Aspekt enthält der Schritt zum selektiven Freigeben des Lesens das Verriegeln der Leseknotenausgangsspannung zum Lesen des Stroms in den ersten und zweiten Paßgenauigkeitsleitungssegmenten im Pipeline-Betrieb.
  • Andere Aspekte und Merkmale der vorliegenden Erfindung sind für den Durchschnittsfachmann nach dem Studium der folgenden Beschreibung der spezifischen Ausführungsformen der Erfindung in Verbindung mit den beiliegenden Figuren ersichtlich.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Unter Bezugnahme auf die beigefügten Figuren werden beispielhaft nun Ausführungsformen der vorliegenden Erfindung beschrieben, in denen:
  • 1 ein Blockdiagramm einer herkömmlichen CAM-Vorrichtung ist;
  • 2 ein Blockdiagramm eines Abschnitts des CAM-Arrays von 1 ist;
  • 3 ein Schaltungsschema einer CAM-Zelle auf DRAM-Basis ist;
  • 4 ein vereinfachtes Blockdiagramm eines CAM-Arrays mit segmentierter Paßgenauigkeitsleitung gemäß einer Ausführungsform der vorliegenden Erfindung ist;
  • 5 ein Schema einer segmentierten Paßgenauigkeitsleitung und von zugeordneten Leseverstärkern gemäß einer Ausführungsform der vorliegenden Erfindung ist;
  • 6 ein Flußdiagramm ist, das ein Verfahren zum Ausführen einer Suche in der Ausführungsform des CAM-Arrays mit segmentierter Paßgenauigkeitsleitung von 4 und 5 zeigt;
  • 7 ein Blockdiagramm ist, das eine Ausführungsform der Niedrigenergie-CAM-Architektur gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
  • 8 ein Schaltungsschema der Paßgenauigkeitsleitungsleseverstärker von 7 ist;
  • 9 ein Schaltungsschema der Verriegelungen von 7 ist;
  • 10 ein Zeitlagendiagramm ist, das den Pipeline-Betrieb von Suchoperationen in einem CAM unter Verwendung einer Ausführungsform der segmentierten Paßgenauigkeitsleitung der vorliegenden Erfindung zeigt;
  • 11 ein Schaltungsschema eines Steuerblocks zum Erzeugen von Signalen ist, die die Paßgenauigkeitsleitungsleseverstärkerschaltung von 8 steuern;
  • 12 ein Schaltungsschema von festverdrahteten Fehltreffer- und Treffer-Paßgenauigkeitsleitungsblöcken ist; und
  • 13 ein Schaltungsschema einer Referenzstromquelle zum Liefern eines Referenzstroms für die Paßgenauigkeitsleitungsleseverstärkerschaltung von 8 zeigt.
  • EINGEHENDE BESCHREIBUNG
  • Es wird eine Niedrigenergie-CAM-Architektur offenbart. Paßgenauigkeitsleitungen des CAM-Arrays sind in zwei Suchabschnitte segmentiert: in einen Vor-Such-Abschnitt und einen Haupt-Such-Abschnitt. Nach dem Ausgeben eines Suchbefehls wird eine erste Suchoperation an dem Vor-Such-Abschnitt der Paßgenauigkeitsleitung ausgeführt, d. h., es wird eine Vor-Suche ausgeführt. Falls das Resultat der Vor-Suche eine Paßgenauigkeit, also Übereinstimmung, ergibt, wird anschließend dann eine zweite Suche an dem Haupt-Such-Abschnitt der Paßgenauigkeitsleitung ausgeführt, d. h., anschließend wird eine Haupt-Suche ausgeführt. Falls das Resultat der Vor-Suche eine Nichtübereinstimmung ergibt, wird dann der Haupt-Such-Abschnitt gesperrt und wird keine Haupt-Suche ausgeführt, und als Resultat tritt kein Energieverlust auf dem Haupt-Such-Abschnitt der Paßgenauigkeitsleitungen auf. Vor-Such- und Haupt-Such-Operationen können im Pipeline-Betrieb ausgeführt werden, um einen hohen Durchsatz bei minimaler Latenz beizubehalten. Der Energieverbrauch wird weiter verringert, indem eine Paßgenauigkeitsleitungsleseschaltung zum Detektieren eines Stroms auf den Vor-Such- und Haupt-Such-Abschnitten der Paßgenauigkeitsleitung verwendet wird. Paßgenauigkeitsleitungen sind von dem Leseschaltungsleseknoten entkoppelt, um eine höhere Lesegeschwindigkeit und verbesserte Lesetoleranzen zu erreichen, und Blind-Paßgenauigkeitsleitungen werden verwendet, um getaktete Steuersignale zum Verriegeln der Ausgabe der Paßgenauigkeitsleitungsleseschaltungen zu erzeugen. Alle Paßgenauigkeitsleitungssegmente werden anfangs auf eine Fehlbedingung vorgeladen und dann vor dem Lesen auf eine Vorspannung gesetzt. Obwohl nur zwei Paßgenauigkeitsleitungssegmente beschrieben sind, wird es ein Fachmann zu schätzen wissen, daß viele Segmente gebildet werden könnten.
  • 4 zeigt die allgemeine Niedrigenergie-CAM-Zellenarray-Architektur gemäß einer Ausführungsform der vorliegenden Erfindung. Der Fachmann wird feststellen, daß 4 eine konzeptionelle Darstellung eines CAM-Zellenarrays ist, da die physische Implementierung das Teilen des gesamten CAM in eine Vielzahl von Quadranten und Subblöcken einschließen würde. Das konzeptionelle CAM-Zellenarray 100 von 4 enthält N Spalten und K Reihen. Jedes Wort (d. h. jede Reihe) enthält N Bits. Deshalb beläuft sich die Speicherkapazität auf N Bits × K Wörter. Gemäß einer Ausführungsform der Erfindung ist das CAM-Zellenarray in zwei Teile geteilt; in ein Vor-Such-Zellenarray 102 und ein Haupt-Such-Zellenarray 103. Das Array 100 enthält einen Vor-Such-Paßgenauigkeitsleitungsleseverstärkerblock 101 zum Lesen der Vor-Such-Paßgenauigkeitsleitungen des Vor-Such-Zellenarrays 102 und einen Haupt-Such-Paßgenauigkeitsleitungsleseverstärkerblock 104 zum Lesen der Haupt-Paßgenauigkeitsleitungen in dem Haupt-Such-Zellenarray 103. Die Vor-Such-Paßgenauigkeitsleitungen des Vor-Such-Zellenarrays 102 unterscheiden sich physisch von den Haupt-Paßgenauigkeitsleitungen des Haupt-Such-Zellenarrays 103. Obwohl in 4 nicht gezeigt, enthält das CAM-Array auch Blindreihen und Logikschaltungen zum Steuern der Paßgenauigkeitsleitungsleseverstärker. Die Blindreihen und Logikschaltungen werden später unter Bezugnahme auf 7 gezeigt und diskutiert.
  • 5 zeigt ein vereinfachtes Schema einer segmentierten Reihe und ihrer zugeordneten segmentierten Paßgenauigkeitsleitung bei dem CAM-Array von 4. Eine Anzahl M von CAM-Zellen 105 ist mit einer Vor-Such-Paßgenauigkeitsleitung 109 verbunden, die als P_ML gekennzeichnet ist, und die Vor-Such-Paßgenauigkeitsleitung wird durch den Vor-Such-Paßgenauigkeitsleitungsleseverstärker 112 gelesen. Die Anzahl von N-M CAM-Zellen 105 ist mit einer Haupt-Such-Paßgenauigkeitsleitung 110 verbunden, die als M_ML gekennzeichnet ist, und die Haupt-Such-Paßgenauigkeitsleitung wird durch den Haupt-Such-Leseverstärker 113 gelesen. Die Ausgabe 111 des Vor-Such-Leseverstärkers 112 gibt den Haupt-Such-Leseverstärker 113 entweder frei oder sperrt ihn, in Abhängigkeit davon, ob sich eine Übereinstimmung oder eine Nichtübereinstimmung in dem Vor-Such-Segment ergeben hat. CAM-Zellen 105 können CAM-Zellen von einem beliebigen Typ sein, wie beispielsweise SRAM-, DRAM- oder Ternär-SRAM- und -DRAM-CAM-Zellen. Fachleute werden erkennen, daß die Paßgenauigkeitsleitungsreihe von 5 vereinfacht worden ist und daß Suchleitungen, Wortleitungen und Energiezufuhren mit den CAM-Zellen 105 gekoppelt sind.
  • Das Flußdiagramm von 6 zeigt die Operation von jeder segmentierten Paßgenauigkeitsleitungsreihe gemäß einer Ausführungsform der vorliegenden Erfindung. Bei Schritt 114 wird ein externer Suchbefehl durch die CAM-Vorrichtung empfangen. Bei Schritt 115 initiiert der CAM dann intern eine Vor-Such-Operation an dem M-Bit-Segment der Paßgenauigkeitsleitungen. Bei Schritt 116 wird das Resultat der Vor-Suche bewertet, und falls ein Treffer in dem Vor-Such-Abschnitt detektiert wird, geht der Prozeß dann zu Schritt 117 über. Sonst wird, falls eine Nichtübereinstimmung in dem Vor-Such-Abschnitt detektiert wird, die Verarbeitung dann mit Schritt 118 fortgesetzt. Schritt 118 führt dann dazu, daß der Leseverstärker für den Haupt-Such-Abschnitt gesperrt wird und die Vorrichtung in einen Zustand zum Empfangen eines neuen Suchbefehls versetzt wird. Schritt 117 fährt mit der Hauptdurchsuchungsoperation des Haupt-Such-Segmentes fort. Schritt 119 führt Haupt-Such-Paßgenauigkeitsleitungsleseresultate einem Multiple-Match-Resolver und Prioritätscodierer zu. Schritt 120 liefert das Übereinstimmungsresultat mit der höchsten Priorität, das von dem Prioritätscodierer ausgegeben wurde, als Ausgabe von der CAM-Vorrichtung und führt die Vorrichtung in einen Zustand zurück, in dem sie zum Empfangen eines neuen Suchbefehls bereit ist. Es sei erwähnt, daß dieser Prozeß ohne Implementierung irgendeiner Pipeline-Funktion beschrieben worden ist. Unter Einsatz des Pipeline-Betriebs könnte zum Beispiel bei Schritt 114 eine neue Vor-Such-Operation gestartet werden, während eine Haupt-Such-Operation ihre Schritte bei den Schritten 117120 gerade vollendet. Diese Pipeline-Lösung wird unter Bezugnahme auf 10 eingehender diskutiert, wobei durch sie mehr Suchoperationen mit einer höheren Systemtaktgeschwin digkeit ausgeführt werden könnten. Somit wird durch das Segmentieren der Paßgenauigkeitsleitungen Energie eingespart, da jede Paßgenauigkeitsleitung, in der sich eine Nichtübereinstimmung in ihrem Vor-Such-Abschnitt ergibt, ihren Haupt-Such-Abschnitt nicht laden und entladen wird, da die Paßgenauigkeitsleitung insgesamt eine Nichtübereinstimmung ergibt.
  • Die beiden 4 und 5 zeigen das allgemeine Layout der Paßgenauigkeitsleitungsleseverstärker bezüglich ihrer Paßgenauigkeitsleitungen gemäß einer Ausführungsform der vorliegenden Erfindung. In alternativen Ausführungsformen können die Haupt-Paßgenauigkeitsleitungsleseverstärker 113 an dem entgegengesetzten Ende der Haupt-Paßgenauigkeitsleitung 110 angeordnet sein, um die Länge der Leitung zu reduzieren, die die Ausgabe 111 überträgt. In noch einer anderen alternativen Ausführungsform können der Vor-Such-Paßgenauigkeitsleitungsleseverstärker 112 sowie der Haupt-Such-Paßgenauigkeitsleitungsleseverstärker 113 aneinandergrenzend angeordnet sein, um die Länge der Leitung zu minimieren, die die Ausgabe 111 überträgt.
  • Deshalb kann durch die zuvor beschriebene segmentierte Paßgenauigkeitsleitungsarchitektur der Energieverbrauch im Vergleich zu CAM-Vorrichtungen nach Stand der Technik reduziert werden, die keine segmentierten Paßgenauigkeitsleitungen haben. Die Ausführungsformen der vorliegenden Erfindung, die bislang gezeigt wurden, können auf CAM-Vorrichtungen angewendet werden, bei denen ein Leseschema von irgendeinem Typ zum Einsatz kommt. Genauer gesagt: bei herkömmlichen CAM-Vorrichtungen kommen Leseschemen zum Einsatz, bei denen die Paßgenauigkeitsleitungen auf eine Trefferbedingung, wie etwa hohe Potentialpegel, wie beispielsweise VDD, vorgeladen werden. Deshalb können die Ausführungsformen der segmentierten Paßgenauigkeitsleitung der vorliegenden Erfindung dazu beitragen, Energie zu erhalten, indem das Vorladen der Haupt-Such-Paßgenauigkeitsleitung und die Aktivierung der Haupt-Paßgenauigkeitsleitungsleseverstärker verhindert werden, woraus die Aktivierung von lediglich einer Teilmenge des Arrays bei der Haupt-Suche resultiert.
  • Gemäß einer anderen Ausführungsform der vorliegenden Erfindung können optimale Energieeinsparungen unter Einsatz eines Leseschemas erreicht werden, bei dem Paßgenauigkeitsleitungen für eine Fehl-(Nichtübereinstimmungs)-Bedingung vorgeladen werden. Im allgemeinen umfaßt ein Leseschema mit Vorladen für eine Nichtübereinstimmung das Vorladen von Paßgenauigkeitsleitungen für die Fehlbedingung (das entweder Erde oder logisch 'H' bedeuten kann, in Abhängigkeit von dem Typ der in der CAM-Zelle verwendeten Vergleichstransistoren), das Aufprägen der Suchdaten und das Lesen jeglicher Veränderung auf der Paßgenauigkeitsleitung mit einem Paßgenauigkeitsleitungsleseverstärker. Im Falle einer Paßgenauigkeitsbedingung sind keine Stromwege zu Erde vorhanden, und der Potentialpegel der Paßgenauigkeitsleitung steigt schnell auf eine vorbestimmte Schwelle an, die verwendet wird, um die Paßgenauigkeitsbedingung anzugeben. Im Falle eines Fehltreffers wird wenigstens ein Stromweg zu Erde vorhanden sein, und der Potentialpegel der Paßgenauigkeitsleitung steigt langsamer auf den vorbestimmten Schwellenpegel an. Demnach steigt der Paßgenauigkeitsleitungspotentialpegel mit einer Rate an, die von der Anzahl der sich ergebenden Wege zu Erde abhängt. Durch das Vorladen der Paßgenauigkeitsleitung auf Erde wird der Spannungshub der Paßgenauigkeitsleitung auf einen Potentialpegel zwischen Erde und dem vorbe stimmten Schwellenpegel begrenzt. Dieser vorbestimmte Schwellenpegel kann zum Beispiel der Schaltpunkt eines Inverters sein, der kleiner als VDD ist. Durch das Kombinieren dieses Leseschemas mit Vorladen für eine Nichtübereinstimmung mit der in 5 beschriebenen Struktur der segmentierten Paßgenauigkeitsleitung kann weitere Energie eingespart werden, da ein Paßgenauigkeitsleitungssegment, das für den Nichtübereinstimmungszustand vorgeladen wurde, auf dem Nichtübereinstimmungszustand bleiben wird, solange sein entsprechendes vorhergehendes Paßgenauigkeitsleitungssegment einen Fehltreffer ergibt. Deshalb wird in einer Ausführungsform der vorliegenden Erfindung jede Reihe von Paßgenauigkeitsleitungen in einem CAM-Array in Vor-Such-Paßgenauigkeitsleitungen und Haupt-Such-Paßgenauigkeitsleitungen segmentiert, wie in den 4 und 5 gezeigt, und es wird ein Leseschema verwendet, bei dem die Vor-Such- und Haupt-Such-Paßgenauigkeitsleitungen für einen Nichtübereinstimmungszustand vorgeladen werden, um den Energieverbrauch zu reduzieren.
  • 7 zeigt eine Ausführungsform der Niedrigenergie-CAM-Architektur gemäß der vorliegenden Erfindung. Die Niedrigenergie-CAM-Architektur nutzt segmentierte Paßgenauigkeitsleitungen und ein Leseschema, bei dem die Paßgenauigkeitsleitungen für einen Nichtübereinstimmungszustand vorgeladen werden. Ferner nutzt das Leseschema Referenz-Paßgenauigkeitsleitungen, um eine selbstgetaktete Erzeugung von Steuersignalen zum Steuern der Paßgenauigkeitsleitungsleseverstärker und Verriegelungsschaltungen vorzusehen, die mit jeder Paßgenauigkeitsleitung gekoppelt sind. Das CAM-Array 130 von 7 kann das Array 25 ersetzen, das in der CAM-Vorrichtung von 1 gezeigt ist, bei entsprechenden Abwandlungen an den peripheren Schaltungen, wie etwa den Suchleitungstreibern.
  • Das CAM-Array 130 von 7 enthält ein Vor-Such-Array 131 und ein Haupt-Such-Array 132. Obwohl in 7 kein Speicherarray gezeigt ist, wird der Fachwelt klar sein, daß sich der in diesem Kontext verwendete Ausdruck "Array" sowohl auf das Speicherarray als auch auf dessen zugeordnete Steuerschaltungsanordnung bezieht. Das Vor-Such-Array 131 enthält eine Vielzahl von Vor-Such-Paßgenauigkeitsleitungen und die zugeordnete Schaltungsanordnung 133 und eine Referenz-Vor-Such-Paßgenauigkeitsleitungsschaltung 137. Bei diesem besonderen Beispiel der vorliegenden Ausführungsform sind eine von 128 Vor-Such-Paßgenauigkeitsleitungsreihen 133 und die Referenz-Paßgenauigkeitsleitungsschaltung gezeigt. Jede Vor-Such-Paßgenauigkeitsleitungsreihe 133 enthält eine Vor-Such-Paßgenauigkeitsleitung P_MLn, einen Vor-Such-Paßgenauigkeitsleitungsleseverstärker 134 und eine Vor-Such-Verriegelung 135. Bei diesem besonderen Beispiel der vorliegenden Ausführungsform sind 36 Ternär-CAM-Zellen (nicht gezeigt) mit der Vor-Such-Paßgenauigkeitsleitung P_MLn verbunden. Der Vor-Such-Paßgenauigkeitsleitungsleseverstärker 134 liest den Potentialpegel von P_MLn und liefert ein lokales Ausgangssignal SPd, das einer Treffer- oder Fehlbedingung entspricht, an die Vor-Such-Verriegelung 135. Die Vor-Such-Verriegelung 135 hält den Zustand des lokalen Ausgangssignals SPd und erzeugt ein Signal Psrch_HIT. Sowohl der Vor-Such-MLSA 134 als auch die Vor-Such-Verriegelung 135 empfangen getaktete Steuersignale von der Referenz-Vor-Such-Paßgenauigkeitsleitungsschaltung 137 über eine Zeitgebersteuerschaltung 136, und der Vor-Such-MLSA 134 empfängt eine Referenzspannung VREF, die durch einen Referenzspannungsgenerator (in 7 nicht gezeigt) erzeugt wird.
  • Die Referenz-Vor-Such-Paßgenauigkeitsleitungsschaltung enthält eine Zeitgebersteuerschaltung 136, eine Referenz-Vor-Such-Paßgenauigkeitsleitung P_RML, einen Vor-Such-Paßgenauigkeitsleitungsleseverstärker MLSA 137 und einen Inverter 138. Bei diesem besonderen Beispiel der vorliegenden Ausführungsform gibt es eine Referenz-Vor-Such-Paßgenauigkeitsleitungsschaltung für das Vor-Such-Array 131. Die Referenz-Vor-Such-Paßgenauigkeitsleitung P_RML ist in der Konfiguration mit der Vor-Such-Paßgenauigkeitsleitung P_MLn identisch, um zu dem parasitären Widerstand und der Kapazität der Vor-Such-Paßgenauigkeitsleitung P_MLn zu passen, außer daß alle Such- und Vergleichstransistoren der CAM-Zellen permanent ausgeschaltet sind, mit Ausnahme eines Paares der Such- und Vergleichstransistoren, die permanent eingeschaltet sind. Die Referenz-Vor-Such-Paßgenauigkeitsleitung ist somit festverdrahtet, um eine einzelne Fehlbedingung zu simulieren. Der Vor-Such-Paßgenauigkeitsleitungsleseverstärker MLSA 137 ist mit dem Vor-Such-Paßgenauigkeitsleitungsleseverstärker MLSA 134 zum Lesen des Potentialpegels P_RML identisch. Der Vor-Such-MLSA 137 empfängt auch VREF. Statt einer Verriegelungsschaltung am Ausgang des Vor-Such-Paßgenauigkeitsleitungsleseverstärkers 137, wie es am Ausgang des Vor-Such-Paßgenauigkeitsleitungsleseverstärkers MLSA 134 der Fall ist, empfängt ein Inverter 138 die Referenz-Vor-Such-Ausgabe SPd des Vor-Such-MLSA 137. Die Zeitgebersteuerschaltung 136 empfängt als Rückführungssignal die Ausgabe des Inverters 138 und ein Paßgenauigkeitsleitungsleseverstärker-Kippsignal MLSATGLp(1) und erzeugt drei Signale zur Verwendung durch alle Vor-Such-MLSA's 134 und 137 und zwei Signale zur Ver wendung durch alle Vor-Such-Verriegelungen 135. MLSATGLp(1) initiiert das Lesen in dem Vor-Such-Array 131. Obwohl nicht gezeigt, empfängt auch die Zeitgebersteuerschaltung 136 ein Taktsignal zum Synchronisieren der Suchoperation mit einem Systemtakt. Die drei Signale zur Verwendung durch alle Vor-Such-MLSA's 134 und 137 sind das Vor-Such-Paßgenauigkeitsleitungslesefreigabesignal PMLSAENp für NMOS-Vorrichtungen, das Vor-Such-Paßgenauigkeitsleitungslesefreigabesignal PMLSAENn für PMOS-Vorrichtungen und PMLSAPRp für die Vorladevorrichtungen. Die Paßgenauigkeitsleitungsleseverstärkerschaltung der MLSA's 134 und 137 wird unter Bezugnahme auf 8 eingehender beschrieben. Die zwei Signale zur Verwendung durch alle Vor-Such-Verriegelungen 135 sind PLTCHn und PLTCHp.
  • Nun wird die allgemeine Operation des Leseschemas für das Vor-Such-Array 131 für einen Such- und Vergleichszyklus beschrieben (eine eingehendere Beschreibung der Operation der Paßgenauigkeitsleitungsleseverstärkerschaltung folgt an späterer Stelle der Beschreibung). Alle Vor-Such-Paßgenauigkeitsleitungen P_MLn und P_RML werden während einer Vorladephase für den Nichtübereinstimmungszustand vorgeladen, der in dieser Ausführungsform Erdspannung bedeutet. Nachdem Suchdaten auf die Suchleitungen (nicht gezeigt) aufgeprägt sind, wird das Paßgenauigkeitsleitungsleseverstärker-Kippsignal MLSATGLp[1] über die Signale PMLSAENp, PMLSAENn und PMLSAPRp aktiviert, um die Lesephase zu initiieren. In der Lesephase wird, wie es später unter Bezugnahme auf die spezifische Operation einer bevorzugten Ausführungsform der Paßgenauigkeitsleitungsleseverstärkerschaltung eingehender beschrieben ist, die SPd-Ausgabe des Vor-Such-MLSA 137 schließlich von einem hohen Potentialpegel auf einen Poten tialpegel gesteuert, der niedrig genug ist, um zu bewirken, daß der Inverter 138 umschaltet und einen hohen logischen Pegel zurückführt, der an die Zeitgebersteuerschaltung 136 ausgegeben wird. Die Zeitgebersteuerschaltung 136 schaltet dann die Vor-Such-MLSA's 134 und 137 aus, um Energie zu sparen, und sie aktiviert die Paßgenauigkeitsleitungsverriegelungssignale PLTCHn und PLTCHp, um das Verriegeln der lokalen SPd-Ausgaben von jeweiligen Vor-Such-MLSA's 134 zu ermöglichen. Sobald die SPd-Ausgaben verriegelt worden sind, läßt dann die Zeitgebersteuerschaltung 136 alle Vor-Such-Paßgenauigkeitsleitungsleseverstärkerschaltungen MLSA's 134 und 137 alle jeweiligen Vor-Such-Paßgenauigkeitsleitungen für den Nichtübereinstimmungszustand, d. h. auf Erde, in Vorbereitung auf den nächsten Such- und Vergleichszyklus vorladen.
  • Die Zeit, die benötigt wird, damit der Vor-Such-MLSA 137 seine SPd-Ausgabe auf einen Potentialpegel treibt, um den Zustand des Inverters 138 umzuschalten, wird durch die Konfiguration der Vor-Such-Referenz-Paßgenauigkeitsleitung P_RML bestimmt. Genauer gesagt, die Referenz-Vor-Such-Paßgenauigkeitsleitungsreihe simuliert immer eine Fehlbedingung im schlimmsten Fall, d. h., einen Fehltreffer bei einem einzelnen Bit. Dies ist darauf zurückzuführen, daß nur ein Such- und Vergleichstransistorenpaar ein ist, während alle anderen Such- und Vergleichstransistoren von P_RML aus sind. Wenn ein einzelner Fehltreffer in irgendeiner Paßgenauigkeitsleitung auftritt, erzeugt das einzelne Such- und Vergleichstransistorenpaar einen sehr kleinen Strom, wie etwa 10 μA, wodurch der zugeordnete Paßgenauigkeitsleitungsleseverstärker eine relative lange Zeit benötigt, um seine SPd-Ausgabe zu detektieren und anschließend auf einen niedrigen Potentialpegel zu steuern. Falls die Vor-Such-MLSA's 134 und der Vor-Such-MLSA 137 gleichzeitig eingeschaltet werden, nachdem Suchdaten auf die Suchleitungen aufgeprägt sind, wird bis zu der Zeit, wenn der Referenz-Vor-Such-MLSA 137 seinen SPd-Potentialpegel verändert hat, jeder MLSA 134, der mit einer P_MLn mit Paßgenauigkeit verbunden ist, bereits in einem Zustand zum Steuern seiner jeweiligen SPd-Ausgabe auf einen logischen Pegel sein, der einen Treffer angibt. Denn die Rate, mit der der Potentialpegel einer Paßgenauigkeitsleitung mit Paßgenauigkeitsbedingung ansteigt, ist schneller als die Rate, mit der der Potentialpegel einer Paßgenauigkeitsleitung mit Fehltreffer ansteigt. Auf diese Weise gewährleistet das System durch die Verwendung der Referenz-Vor-Such-Paßgenauigkeitsleitung zum Takten der Deaktivierung aller Paßgenauigkeitsleitungsleseverstärker, daß die Daten mit dem richtigen Paßgenauigkeitsleitungssuchresultat durch die Paßgenauigkeitsleitungsverriegelungen verriegelt werden.
  • Nun werden die Komponenten des Haupt-Such-Arrays 132 des CAM-Arrays 130 eingehender beschrieben. Das Haupt-Such-Array 132 enthält eine Vielzahl von Haupt-Such-Paßgenauigkeitsleitungen und die zugeordnete Schaltungsanordnung 139 und eine Referenz-Haupt-Such-Paßgenauigkeitsleitungsschaltung. Bei diesem besonderen Beispiel der vorliegenden Ausführungsform entspricht eine jede der 128 Haupt-Such-Paßgenauigkeitsleitungsreihen 139 einer jeden der 128 Vor-Such-Paßgenauigkeitsleitungsreihen 133. Jede Haupt-Such-Paßgenauigkeitsleitungsreihe 139 enthält eine Haupt-Such-Paßgenauigkeitsleitung M_MLn, einen Haupt-Such-Paßgenauigkeitsleitungsleseverstärker 140, eine Haupt-Such-Verriegelung 141 und ein UND-Gatter 142. Bei diesem besonderen Beispiel der vorliegenden Ausführungsform sind 108 Ternär-CAM-Zellen (nicht gezeigt) mit der Haupt-Such-Paßgenauigkeitsleitung M_MLn verbunden. Der Haupt-Such-Paßgenauigkeitsleitungsleseverstärker 140 liest den Potentialpegel der M_MLn und liefert ein lokales Ausgangssignal SPd entsprechend einer Treffer- oder Fehlbedingung an die Haupt-Such-Verriegelung 141. Die Haupt-Such-Verriegelung 141 hält den Zustand des lokalen Ausgangssignals SPd und erzeugt das Signal ML_OUTn. Die Komponenten des Haupt-Such-Arrays 132 sind, wie in 7 gezeigt, in der Konfiguration mit den Komponenten des Vor-Such-Arrays 131 identisch, außer daß jede Haupt-Such-Paßgenauigkeitsleitung und deren zugeordnete Schaltungsanordnung 139 ein UND-Gatter 142 enthält. Während die Haupt-Such-Verriegelung 141 und der Referenz-Haupt-Such-MLSA 144 die Steuersignale von der Zeitgebersteuerschaltung 143 empfangen, empfangen die Haupt-Such-MLSA's 140 die Signale nicht direkt von der Zeitgebersteuerschaltung 143. Das UND-Gatter 142 empfängt die drei Signale von der Zeitgebersteuerschaltung 143 und kombiniert sie mit dem Resultat der Vor-Suche, das durch das Signal Psrch_HIT von der Vor-Such-Verriegelung 135 von dem Vor-Such-Array 133 bezeichnet wird. Die Fachwelt wird verstehen, daß das UND-Gatter 142 drei UND-Gatter verkörpert, von denen ein jedes eines der drei Steuersignale von dem Steuerblock 143 und das Signal Psrch_HIT empfängt, und jedes UND-Gatter 142 erzeugt ein Steuersignal, das dem Haupt-Such-Leseverstärker 140 zugeführt wird. Die UND-Gatter 142 ermöglichen den Durchgang der drei jeweiligen Steuersignale, wenn Psrch_HIT angibt, daß in dem Vor-Such-Paßgenauigkeitsleitungsabschnitt ein Treffer detektiert worden ist, d. h., daß er auf dem hohen logischen Pegel ist. Mit anderen Worten, es wird verhindert, daß ein Haupt-Such-Leseverstärker MLSA 140 die drei Steuersignale empfängt, falls das Signal Psrch_HIT auf dem niedrigen logischen Pegel ist, der eine Fehlbedingung angibt. Daher wird verhindert, daß ein Haupt-Such-MLSA 140 Veränderungen in den Haupt-Paßgenauigkeitsleitungen des Haupt-Such-Arrays 132 liest, falls seine entsprechende Vor-Such-Paßgenauigkeitsleitungsreihe 133 eine Fehlbedingung meldet. Obwohl beschrieben worden ist, daß das UND-Gatter 142 jedes Steuersignal von dem Steuerblock 143 mit dem Signal Psrch_HIT kombiniert, wird die Fachwelt verstehen, daß es möglich ist, nur eines oder zwei der Steuersignale mit dem Signal Psrch_HIT zu kombinieren. Zum Beispiel wird in einer Ausführungsform der Erfindung nur eines der drei Steuersignale, die durch den Steuerblock 143 vorgesehen werden, mit dem Signal Psrch_HIT kombiniert, um ein Steuersignal zu erzeugen, das für den Msrch-MLSA vorgesehen wird, während die anderen zwei Steuersignale, die durch den Steuerblock 143 erzeugt werden, direkt für den Msrch-MLSA vorgesehen werden. Solch eine Ausführungsform wird unter Bezugnahme auf 8 eingehender beschrieben.
  • Die Referenz-Haupt-Such-Paßgenauigkeitsleitungsschaltung enthält eine Zeitgebersteuerschaltung 143, eine Referenz-Haupt-Such-Paßgenauigkeitsleitung M_RML, einen Haupt-Such-MLSA 144 und einen Inverter 145. Bei diesem besonderen Beispiel der vorliegenden Ausführungsform ist eine Referenz-Haupt-Such-Paßgenauigkeitsleitungsschaltung für das Haupt-Such-Array 132 vorhanden. Die Referenz-Haupt-Such-Paßgenauigkeitsleitung M_RML ist in der Konfiguration mit der Haupt-Such-Paßgenauigkeitsleitung M_MLn identisch, um zu dem parasitären Widerstand und der Kapazität der Haupt-Such-Paßgenauigkeitsleitung M_MLn zu passen, außer daß alle Such- und Vergleichstransistoren der CAM-Zellen permanent ausgeschaltet sind, mit Ausnahme eines Paares der Such- und Vergleichstransistoren, die permanent eingeschaltet sind. Die Referenz-Haupt-Such-Paßgenauigkeitsleitung ist somit festverdrahtet, um eine einzelne Fehlbedingung zu simulieren. Der Haupt-Such-MLSA 144 ist mit dem Haupt-Such-MLSA 140 zum Lesen des Potentialpegels der M_RML identisch. Der Haupt-Such-MLSA 144 empfängt auch die Referenzspannung VREF. Ein Inverter 145 empfängt die SPd-Ausgabe des Haupt-Such-MLSA 144. Die Zeitgebersteuerschaltung 143 empfängt die Ausgabe des Inverters 145 und ein Paßgenauigkeitsleitungs-Kippsignal MLSATGLp[2] und erzeugt drei Steuersignale zum Steuern aller Haupt-Such-Leseverstärker MLSA 140 und 144 und zwei Steuersignale zum Steuern aller Haupt-Such-Verriegelungen 141. Obwohl nicht gezeigt, empfängt die Zeitgebersteuerschaltung 143 auch ein Taktsignal zum Synchronisieren der Suchoperation mit einem Systemtakt, wodurch der Pipeline-Betrieb der Vor-Such- und Haupt-Such-Operationen möglich ist. Die drei Steuersignale zum Steuern aller Haupt-Such-MLSA's 140 und 144 sind MLSAENp, MLSAENn und MLSAPRp. Die zwei Steuersignale zum Steuern aller Haupt-Such-Verriegelungen 141 sind LTCHn und LTCHp.
  • Die allgemeine Operation der Schaltungen des Haupt-Such-Arrays 132 ist dieselbe wie jene, die zuvor für das Vor-Such-Array 131 beschrieben wurde, und deshalb wird die allgemeine Operation der Schaltungen des Haupt-Such-Arrays 131 nicht wiederholt. Jedoch ist erwähnenswert, daß das Kippsignal MLSATGLp[2] nach MLSATGLp[1] aktiviert wird, und zwar typischerweise in einem Taktzyklus im Anschluß an den Zyklus, in dem MLSATGLp[1] aktiviert wird. Ferner sei erwähnt, daß die Signale MLSAENp, MLSAENn, MLSAPRp, LTCHn und LTCHp in der Funktion den Signalen PMLSAENp, PMLSAENn, PMLSAPRp, PLTCHn bzw. PLTCHp für ihre jeweiligen Arrays äquivalent sind.
  • 8 zeigt ein Schaltungsschema einer Paßgenauigkeitsleitungsleseverstärkerschaltung gemäß einer anderen Ausführungsform der vorliegenden Erfindung. Diese Paßgenauigkeitsleitungsleseverstärkerschaltung kann für die MLSA-Schaltungen 134, 137, 140 und 144 in 7 in einer bevorzugten Ausführungsform der Niedrigenergie-CAM-Array-Architektur der Erfindung verwendet werden.
  • Die Paßgenauigkeitsleitungsleseverstärkerschaltung von 8 enthält eine Stromquelle, eine Vorspannungsschaltung und eine Spannungsbegrenzungsschaltung. Die Stromquelle enthält p-Kanal-Transistoren 224 und 226, die zwischen der Spannungszufuhr VDD und einem Leseausgangsknoten SPd seriell verbunden sind. Der Gate-Anschluß des p-Kanal-Transistors 224 ist mit einer ersten Referenzspannung Vref verbunden, und der Gate-Anschluß des p-Kanal-Transistors 226 ist mit einer zweiten Referenzspannung Vmr verbunden. Die Vorspannungsschaltung enthält p-Kanal-Transistoren 212, 220 und n-Kanal-Transistoren 214, 216 und 218. Der p-Kanal-Transistor 212 und der n-Kanal-Transistor 214 sind zwischen der Zufuhrspannung VDD und dem Drain-Anschluß des n-Kanal-Transistors 216 seriell verbunden. Der p-Kanal-Transistor 220 und der n-Kanal-Transistor 222 sind zwischen der Zufuhrspannung VDD und dem Drain-Anschluß des n-Kanal-Transistors 216 seriell verbunden, wobei der gemeinsam genutzte Source/Drain-Anschluß der Transistoren 220 und 222 mit dem Leseausgangsknoten SPd verbunden ist. Die Gate-Anschlüsse der p-Kanal-Transistoren 212 und 220 sind mit dem Paßgenauigkeitsleitungsleseverstärkerfreigabesignal MLSAENn verbunden, und die Gate-Anschlüsse der n-Kanal-Transistoren 214 und 222 sind mit der Begrenzungsspannung Vr verbunden. Die n-Kanal-Transistoren 216 und 218 sind zwischen den Source-Anschlüssen der n-Kanal-Transistoren 214 und 222 und Erde seriell verbunden, wobei der gemeinsam genutzte Source/Drain-Anschluß der Transistoren 216 und 218 mit einer zugeordneten Paßgenauigkeitsleitung MLp verbunden ist. Es sei erwähnt, daß MLp einer von P_MLn, P_RML, M_MLn und M_RML äquivalent ist, da dies alles Paßgenauigkeitsleitungen sind, die durch die Paßgenauigkeitsleitungsleseverstärkerschaltung zu lesen sind. Die Gate-Anschlüsse der Transistoren 216 und 218 sind mit dem Paßgenauigkeitsleitungslesefreigabesignal MLSAENp bzw. dem Paßgenauigkeitsleitungslesevorladesignal MLSAPRp verbunden. Die Spannungsbegrenzungsschaltung enthält den n-Kanal-Transistor 222 mit der zuvor beschriebenen Konfiguration. Die Haupt-Such-Array-Steuersignale MLSAENn, MLSAENp und MLSAPRp sind den Vor-Such-Array-Steuersignalen PMLSAENn, PMLSAENp bzw. PMLSAPRp äquivalent, die zuvor unter Bezugnahme auf 7 diskutiert wurden. Die Spannungen Vref, Vr und Vmr werden durch andere Schaltungen in der CAM-Vorrichtung erzeugt und sind in 7 als einzelne Leitung gezeigt, die durch VREF gekennzeichnet ist, um das Blockdiagramm zu vereinfachen.
  • Nun folgt eine Beschreibung der allgemeinen Funktion der Paßgenauigkeitsleitungsleseschaltung von 8. Im allgemeinen transportiert die Paßgenauigkeitsleitung MLp als Resultat einer Such- und Vergleichsoperation ein Spannungssignal und einen zugeordneten Strom, der eine Paßgenauigkeitsbedingung oder eine Fehlbedingung angibt, nachdem Suchdaten auf die Suchleitungen angewendet wurden. Der zugeordnete Paßgenauigkeitsleitungsstrom wird dann fließen, wenn wenigstens ein Paar von Such- und Vergleichstransisto ren eingeschaltet ist, um MLp mit Erde zu koppeln. Um eine Paßgenauigkeitsbedingung oder Fehlbedingung auf einer Paßgenauigkeitsleitung gemäß der Erfindung zu lesen, wird zuerst ein positives Vorspannungs- oder Arbeitspunktpotential auf der Paßgenauigkeitsleitung MLp aufgebaut, bevor Suchdaten auf die Suchleitungen angewendet werden, damit der Paßgenauigkeitsleitungsstromleseverstärker irgendeine Veränderung des Paßgenauigkeitsleitungsstroms als Resultat der Suchoperation detektiert.
  • Während einer Vorladephase werden Paßgenauigkeitsleitungen auf eine Vorladespannung vorgeladen, wie beispielsweise auf Erdpotential, wenn das Paßgenauigkeitsleitungsvorladesignal MLSAPRp logisch 'H' ist. Gleichzeitig sind die Paßgenauigkeitsleitungslesesignale MLSAENp und MLSAENn logisch 'L' bzw. 'H', wodurch die Paßgenauigkeitsleitung MLp von dem Leseknoten SPd isoliert wird.
  • Während der Lesephase endet das Vorladen der Paßgenauigkeitsleitungen, wobei MLSAPRp auf einen logisch niedrigen Pegel gezogen wird, und Strom wird der Paßgenauigkeitsleitung MLp zugeführt, wobei MLSAENn auf den niedrigen logischen Pegel gezogen wird und MLSAENp auf den hohen logischen Pegel gezogen wird. Vr ist auf einem vorbestimmten Potentialpegel, der typischerweise bei 0,5 Volt liegt. Unter diesen Bedingungen werden die Transistoren 212, 214 und 216 eingeschaltet, während der Transistor 218 ausgeschaltet wird und die Vorspannungspotentiale auf der Paßgenauigkeitsleitung und dem Leseknoten SPd aufgebaut werden. Es sei erwähnt, daß die Transistoren 214 und 222 eine Begrenzungsspannung Vr, die ungefähr 0,5 Volt betragen kann, zum Begrenzen des maximalen Potentials der Paßgenauigkeitsleitung MLp auf etwa 0,5 Volt empfangen. Anschließend wird MLSAENn auf den hohen logischen Pegel gesteuert, um die Transistoren 212 und 220 auszuschalten. Die p-Kanal-Transistoren 224 und 226 der Stromquelle bleiben eingeschaltet, um einen kleinen Vorspannungsstrom zu liefern, der hoch genug ist, um SPd auf VDD zu halten. In der vorliegenden Ausführungsform ist der Vorspannungsstrom, der durch die Stromquelle zugeführt wird, ein Bruchteil des Stroms, der erzeugt wird, wenn ein Paar der Such- und Vergleichstransistoren eingeschaltet ist. Dieses besondere Merkmal der vorliegenden Ausführungsform wird später diskutiert. Nachdem Suchdaten auf die Suchleitungen angewendet sind, wird wenigstens eines oder keines der Paare der Such- und Vergleichstransistoren eingeschaltet. Falls wenigstens ein Paar der Such- und Vergleichstransistoren eingeschaltet wird, wird dann ein Paßgenauigkeitsleitungsstrom von MLp zu Erde fließen. Dieser Paßgenauigkeitsleitungsstrom wird größer als der Vorspannungsstrom sein, der durch die Stromquelle zugeführt wird, und zieht den Leseknoten SPd durch die Transistoren 222 und 216 herab. Falls keines der Paare der Such- und Vergleichstransistoren eingeschaltet wird, um eine Paßgenauigkeitsbedingung anzugeben, bleibt dann der Potentialpegel von MLp auf dem Vorladepotential von Vr auf Grund des Vorhandenseins des Spannungsbegrenzungstransistors 222. Dementsprechend bleibt SPd auf VDD. Eine Verriegelungsschaltung wie jene, die in 9 gezeigt ist, verriegelt das Potential an SPd erst, wenn komplementäre Verriegelungssignale LTCHp und LTCHn in einer vorbestimmten Zeitperiode aktiv werden, nachdem Suchdaten auf die Suchleitungen geladen sind. Nach dieser vorbestimmten Zeitperiode liegt der Potentialpegel von SPd entweder über oder unter dem Kipp-Punkt des Tri-State-Inverters 150, und die komplementären Verriegelungssignale LTCHp und LTCHn werden für ihre aktiven Zustände durch die Steuerschaltung von 11 gepulst. In Abhängigkeit von dem Potential von SPd bezüglich des Kipp-Punktes des Tri-State-Inverters 150 wird der Tri-State-Inverter 150 seine Ausgabe entweder auf einen hohen oder einen niedrigen logischen Pegel treiben. Wenn die Impulse LTCHp und LTCHn enden, wird der Tri-State-Inverter 150 ausgeschaltet. Sobald die Leseoperation beendet ist, wird das Signal MLSAENp auf den niedrigen logischen Potentialpegel gesteuert, um den Transistor 216 auszuschalten, und wird das Signal MLSAPRp auf den hohen logischen Potentialpegel gesteuert, um den Transistor 218 einzuschalten, wodurch die zugeordnete Paßgenauigkeitsleitung MLp wieder einmal auf ihren Vorladepegel gebracht wird.
  • Es sei erwähnt, daß in einer alternativen Ausführungsform der Paßgenauigkeitsleitungsleseschaltung, die in 4 gezeigt ist, die Transistoren 212 und 214 weggelassen sind und die Breite der Transistoren 220 und 222 eingestellt ist, um die Beseitigung des Stromweges zu kompensieren, der durch die Transistoren 212 und 214 vorgesehen wird.
  • 9 zeigt ein Schaltungsschema einer Verriegelungsschaltung, die für die Verriegelungen 135 und 141 von 7 verwendet werden kann. Diese Verriegelungsschaltung ist eine Standardverriegelungsschaltung vom Flipflop-Typ und enthält ein Paar von kreuzgekoppelten Invertern. Die Verriegelungsschaltung von 9 enthält einen Tri-State-Inverter 150, dessen Eingang mit dem SPd-Ausgang einer Paßgenauigkeitsleitungsleseverstärkerschaltung gekoppelt ist und dessen Ausgang mit einem ersten kreuzgekoppelten Inverterpaar verbunden ist. Das erste kreuzgekoppelte Inverterpaar enthält den Inverter 151 und den Tri-State-Inverter 152. Der Ausgang des Inverters 151 ist mit dem Tri-State-Inverter 153 gekoppelt, dessen Ausgang dann mit einem zweiten kreuzgekoppelten Inverterpaar verbunden ist. Das zweite kreuzgekoppelte Inverterpaar enthält den Inverter 154 und den Tri-State-Inverter 155. Falls diese Verriegelungsschaltung als Haupt-Such-Verriegelung 141 verwendet wird, steuert der Ausgang des Inverters 154 dann die Ausgabe ML_OUT. Falls diese Verriegelungsschaltung als Vor-Such-Verriegelung 135 verwendet wird, würde der Ausgang des Inverters 154 dann die Ausgabe Psrch_HIT steuern. Komplementäre Verriegelungssignale LTCHp und LTCHn sind mit den Tri-State-Invertern in einer Konfiguration verbunden, die es gestattet, den Potentialpegel von SPd zu lesen, um dann von dem ersten kreuzgekoppelten Inverterpaar zu dem zweiten kreuzgekoppelten Inverterpaar umgesetzt zu werden, wenn LTCHp zwischen den hohen und niedrigen logischen Pegeln kippt. Dieser Typ der Verriegelungsschaltung ist in der Technik wohlbekannt, und deshalb braucht dieses Operationsverfahren nicht weiter diskutiert zu werden.
  • Gemäß einer anderen Ausführungsform der vorliegenden Erfindung werden Vor-Such- und Haupt-Such-Operationen im Pipeline-Betrieb ausgeführt, um einen hohen Durchsatz bei einer Zykluslatenz von Eins beizubehalten. 10 ist ein Zeitlagendiagramm, das Pipeline-Operationen bei sukzessiven Suchoperationen zeigt. Das Zeitlagendiagramm von 10 wird unter Bezugnahme auf die 8 bis 10 diskutiert. Eine Vor-Suche beginnt für ein erstes Suchwort im Zyklus 3, und das Resultat des Vor-Such-MLSA 134 wird schließlich verriegelt und als Signal Psrch_HIT von der Vor-Such-Verriegelung 135 gesteuert. Genauer gesagt, die Daten werden in dem ersten kreuzgekoppelten Inverterpaar der Vor-Such-Verriegelung 135 verriegelt. Die Haupt-Suche für das erste Suchwort beginnt bei dem ersten Suchwort im Zyklus 4, falls der logische Pegel ihres entsprechenden Psrch_HIT auf dem hohen logischen Pegel ist. Eine Vor-Suche für ein zweites Suchwort beginnt auch im Zyklus 4, wenn die Haupt-Suche für das erste Suchwort beginnt. Diese zweite Vor-Such-Operation kann ausgeführt werden, weil dann, wenn die komplementären Verriegelungssignale PLTCHp und PLTCHn mit dem niedrigen bzw. hohen logischen Pegel aktiviert werden, um die neuen SPd-Daten für das zweite Suchwort zu lesen, der Tri-State-Inverter 153 der Verriegelungsschaltung von 9 ausgeschaltet wird. Ferner werden die vorherigen SPd-Daten in dem zweiten kreuzgekoppelten Inverterpaar verriegelt, um den vorherigen logischen Pegel von Psrch_HIT für die Haupt-Suche des ersten Suchwortes beizubehalten. Im Zyklus 5 wird die Haupt-Suche für das zweite Suchwort ausgeführt und beginnt eine Vor-Suche für eine dritte Suche. Die Haupt-Suche für das dritte Suchwort beginnt im Zyklus 6, und eine weitere Vor-Suche ist nicht auszuführen. Auf Grund des oben beschriebenen Pipeline-Schemas ist deshalb kein zusätzlicher Zyklus zwischen jeder Such- und Vergleichsoperation für die Vor-Such-Operation erforderlich. Daher kann die gesamte CAM-Operationsgeschwindigkeit bezüglich einer Struktur erhöht werden, die keine Paßgenauigkeitsleitungssegmentierung aufweist, da Vor-Such- und Haupt-Such-Operationen parallel ausgeführt werden.
  • Die Ausführungsform des Paßgenauigkeitsleitungsleseverstärkers, der in 8 gezeigt ist, kann sowohl in nicht-segmentierten als auch in segmentierten Paßgenauigkeitsleitungsarchitekturen verwendet werden, um Energie zu sparen.
  • 11 zeigt ein Schaltungsschema eines Steuerblocks, der die Signale zum Steuern des Leseverstärkers von 8 mit der richtigen Zeitgebung erzeugt. Eine Flipflop-Schaltung 372 empfängt das Paßgenauigkeitsleitungsleseverstärker-Kippsignal MLSATGLp an seinem D-Eingang und das Taktsignal CLKp an seinem Takteingang. Der Q-Ausgang des Flipflops 372 ist mit jeweiligen ersten Eingängen des NOR-Gatters 376 und des NAND-Gatters 378 und dem Eingang eines nichtinvertierenden Verzögerungsblocks 374 verbunden. Der Ausgang des Verzögerungsblocks 374 ist mit jeweiligen zweiten Eingängen des NOR-Gatters 376 und des NAND-Gatters 378 verbunden. Der Ausgang des NOR-Gatters 376 ist mit einem Paar von seriell verbundenen Invertern 380 und 382 zum Steuern des Signals MLSAPRp verbunden. Der Ausgang des NAND-Gatters 378 ist mit drei seriell verbundenen Invertern 384, 386 und 388 zum Steuern des Signals MLSAENp verbunden. Der Q-Ausgang des Flipflops 372 ist auch mit einem Paar von seriell verbunden Invertern 390 und 392 verbunden, deren Ausgang mit dem Eingang eines invertierenden Verzögerungsblocks 394 und einem Eingang des NAND-Gatters 396 verbunden ist. Der Ausgang des invertierenden Verzögerungsblocks 394 ist mit dem anderen Eingang des NAND-Gatters 396 verbunden. Der Ausgang des NAND-Gatters 396 ist mit vier seriell verbundenen Invertern 398, 400, 402 und 404 zum Steuern des Signals MLSAENn verbunden. Das Signal FB1Mp ist durch den Inverter 406 mit einem Eingang des NOR-Gatters 408 gekoppelt. Das Signal FBAHp ist mit dem anderen Eingang des NOR-Gatters 408 verbunden. Der Ausgang des NOR-Gatters 408 ist mit dem Eingang des invertierenden Verzögerungsblocks 410 und einem Eingang des NAND-Gatters 412 verbunden, während der Ausgang des invertierenden Verzögerungsblocks 410 mit dem anderen Eingang des NAND-Gatters 412 verbunden ist. Der Ausgang des NAND-Gatters 412 ist mit drei seriell verbundenen Invertern 414, 416 und 418 zum Steuern des Signals LTCHn und mit einem Paar von seriell verbundenen Invertern 420 und 422 zum Steuern des Signals LTCHp verbunden. Der Ausgang des NAND-Gatters 412 ist auch mit dem Rücksetzeingang des Flipflops 372 verbunden. Verzögerungsblöcke 374, 394 und 410 werden die Ausbreitung von Signalen mit hohen sowie niedrigen logischen Pegeln verzögern. Invertierende Verzögerungsblöcke 394 und 410 können eine beliebige ungerade Anzahl von invertierenden Elementen enthalten, wie etwa Inverter, NOR-Gatter oder NAND-Gatter, oder eine Kombination aus einer ungeraden Anzahl von invertierenden Elementen und Kondensatoren und Widerständen. Der nichtinvertierende Verzögerungsblock 374 kann eine beliebige gerade Anzahl von invertierenden Elementen oder eine Kombination aus einer geraden Anzahl von invertierenden Elementen und Kondensatoren und Widerständen enthalten. Die Verzögerung, die durch die Verzögerungsblöcke 374, 394 und 410 vorgesehen wird, kann nach der Herstellung zum Beispiel durch Trimmen programmiert werden.
  • Im allgemeinen ist die Operation des Steuerblocks 370 wie folgt. Es soll angenommen werden, daß die Q-Ausgabe von dem Flipflop 372 in dem anfangs inaktiven Zustand auf dem niedrigen logischen Pegel ist, MLSAENn, MLSAPRp und LTCHp auf dem hohen logischen Pegel sind und MLSAENp und LTCHn auf dem niedrigen logischen Pegel sind. Ein Impuls mit hohem logischen Pegel MLSATGLp, der durch das Flipflop 372 empfangen wird, initiiert die Steuersignalerzeugung. Das Flipflop 372 treibt seine Q-Ausgabe als Antwort auf den hohen logischen Pegel von MLSATGLp bei der ansteigenden Flanke des Taktsignals CLKp auf den hohen logischen Pegel. Die Ausgabe des NOR-Gatters 376 wird dann auf den niedrigen logischen Pegel getrieben, und anschließend wird MLSAPRp durch den Inverter 382 auf den niedrigen logischen Pegel getrieben. Nach der Verzögerung, die durch den nichtinvertierenden Verzögerungsblock 374 vorgesehen wird, sind beide Eingaben des NAND-Gatters 378 auf dem hohen logischen Pegel, um dessen Ausgabe auf den niedrigen logischen Pegel zu treiben. Anschließend wird MLSAENp durch den Inverter 388 auf den hohen logischen Pegel getrieben. Die Q-Ausgabe mit dem hohen logischen Pegel des Flipflops 372 steuert auch die Eingabe des Inverters 390, wodurch bewirkt wird, daß der Inverter 392 einen hohen logischen Pegel ausgibt. Die Ausgabe mit hohem logischen Pegel des Inverters 392 wird durch den invertierenden Verzögerungsblock 394 und einen Eingang des NAND-Gatters 396 empfangen. Da die Ausgabe des invertierenden Verzögerungsblocks 394 gegenwärtig auf dem hohen logischen Pegel ist, sind beide Eingaben des NAND-Gatters 396 auf dem hohen logischen Pegel, um MLSAENn von einem hohen auf einen niedrigen logischen Pegel zu treiben. Schließlich wird der hohe logische Pegel, der am Eingang des invertierenden Verzögerungsblocks 394 empfangen wird, an seinem Ausgang invertiert, wodurch das NAND-Gatter 396 gezwungen wird, ein Signal mit hohem logischen Pegel auszugeben. Deshalb sind MLSAENn-Impulse niedrig als Antwort auf eine Q-Ausgabe mit hohem logischen Pegel von dem Flipflop 372.
  • Die oben beschriebenen Schaltungen betreffen die Erzeugung von Steuersignalen MLSAENn, MLSAPRp und MLSAENp, damit die MLSA-Schaltung von 8 ihren jeweiligen Paßgenauigkeitsleitungspotentialpegel vorladen und lesen kann. Die folgende Beschreibung der übrigen Schaltungen des Steuerblocks 370 betrifft das Ausschalten der MLSA-Schaltung von 8. Das Rückführungssignal FBAHp bleibt während normaler Operationen auf dem niedrigen logischen Pegel, aber das Rückführungssignal FB1Mp verändert sich schließlich von einem anfangs niedrigen logischen Pegel auf einen hohen logischen Pegel, um das Vorhandensein einer einzelnen Fehlbedingung auf seiner jeweiligen Paßgenauigkeitsleitung anzugeben. Das NOR-Gatter 408 liefert eine Ausgabe mit hohem logischen Pegel, wenn seine beiden Eingaben auf dem niedrigen logischen Pegel sind. Die Ausgabe mit hohem logischen Pegel von dem NOR-Gatter 408 wird durch einen Eingang des NAND-Gatters 412 und den Eingang des invertierenden Verzögerungsblocks 410 empfangen. Da die Ausgabe des invertierenden Verzögerungsblocks 410 gegenwärtig auf dem hohen logischen Pegel ist, sind beide Eingaben des NAND-Gatters 412 auf dem hohen logischen Pegel, um LTCHn von einem niedrigen auf einen hohen logischen Pegel und LTCHp von einem hohen auf einen niedrigen logischen Pegel zu treiben. Schließlich wird der hohe logische Pegel, der am Eingang des invertierenden Verzögerungsblocks 410 empfangen wird, an seinem Ausgang invertiert, wodurch das NAND-Gatter 412 gezwungen wird, ein Signal mit hohem logischen Pegel auszugeben. Deshalb sind als Antwort auf ein Signal FB1Mp mit niedrigem logischen Pegel LTCHn-Impulse hoch und LTCHp-Impulse niedrig. Zusätzlich setzt der Impuls mit niedrigem logischen Pegel von dem Ausgang des NAND-Gatters 412 das Flipflop 372 zurück, um die Steuersignale MLSAENn, MLSAPRp und MLSAENp auf ihre anfänglichen inaktiven Zustände zu treiben.
  • Der obige Absatz beschreibt das Verhalten des Steuerblocks 370 als Antwort auf den Empfang eines Rückführungssignals FB1Mp mit niedrigem logischen Pegel, das eingestellt wird, um zu einer vorbestimmten Zeit nach dem Aufprägen von Suchdaten auf die Suchleitungen des CAM-Arrays aufzutreten. Diese voreingestellte Zeit, oder Verzögerung, wird durch den festverdrahteten Einzelfehltreffer-Paßgenauigkeitsleitungsblock 310 bestimmt. Der festverdrahtete Einzelfehltreffer-Paßgenauigkeitsleitungsblock 310 wird unter Bezugnahme auf 12 näher erläutert.
  • 12 zeigt ein Schema der festverdrahteten Einzelfehltreffer-Paßgenauigkeitsleitungsreihe 310. Die elektrischen Charakteristiken der festverdrahteten Einzelfehltreffer-Referenz-Paßgenauigkeitsleitungsreihe 310 sollen dieselben wie die einer normalen Paßgenauigkeitsleitungsreihe 240 sein. Die Paßgenauigkeitsleitungsreihe 310 enthält eine Referenz-Paßgenauigkeitsleitung RML1 mit einer Vielzahl von seriell verbundenen n-Kanal-Such- und Vergleichstransistoren 312, 316 bzw. 314, 318, die zwischen ihr und einer Endleitung, oder in dieser besonderen Ausführungsform mit Erde, verbunden sind. RML1 ist in der Größe mit MLp in 8 identisch, und die Such- und Vergleichstransistoren 312, 316 und 314, 318 sind mit entsprechenden Such- und Vergleichstransistoren identisch, die in 8 mit MLp verbunden sein würden. RML1 hat auch dieselbe Anzahl von Such- und Vergleichstransistorpaaren wie MLp, um die akkurate Übereinstimmung der elektrischen Charakteristiken mit der Paßgenauigkeitsleitungsreihe 240 zu gewährleisten. In dem Paßgenauigkeitsleitungsblock 310 sind nur die Gates der Transistoren 312 und 314 mit VDD verbunden, während die Gates aller anderen Transistoren 316 und 318 geerdet sind. Der Grund für diese Konfiguration ist es, eine normale Paßgenauigkeitsleitung zu imitieren, die exakt eine Fehlbedingung aufweist. 12 zeigt auch ein Schema der festverdrahteten Treffer-Paßgenauigkeitsleitungsreihe 340. Die elektrischen Charakteristiken der Treffer-Paßgenauigkeitsleitungsreihe 340 sollen dieselben wie die einer normalen Paßgenauigkeitsleitungs reihe 240 sein und sind mit der einer Einzelfehltreffer-Paßgenauigkeitsleitungsreihe 310 identisch. Such- und Vergleichstransistoren 342 und 344 sind mit entsprechenden Such- und Vergleichstransistoren der Reihe 310 identisch, außer daß die Gates aller Transistoren 342 und 344 geerdet sind, damit sie ausgeschaltet bleiben.
  • Nun wird die Stromquellenschaltung der Ausführungsform von 8 eingehender beschrieben. Wie zuvor erwähnt, liefert die Stromquelle mit den p-Kanal-Transistoren 224 und 226 einen kleinen Strom, der in der Größe ausreicht, um den VDD-Potentialpegel bei Abwesenheit eines Fehlbedingungsstroms auf der entsprechenden Paßgenauigkeitsleitung auf SPd zu halten. Gemäß einem Merkmal der vorliegenden Ausführungsform beläuft sich dieser kleine Strom auf einen Bruchteil des Stroms, der durch ein Paar der Such- und Vergleichstransistoren im Ein-Zustand produziert wird. Dies wird dadurch erreicht, daß eine vorbestimmte Referenzspannung Vref auf das Gate des p-Kanal-Transistors 224 angewendet wird. Die Spannung Vmr, die mit dem Gate des p-Kanal-Transistors 226 verbunden ist, ist eine konstante Spannung, die als Versetzungsspannung für die Kaskoden-Stromspiegelkonfiguration verwendet wird. Die Erzeugung von Vref wird unter Bezugnahme auf 13 näher erläutert.
  • 13 ist eine Ausführungsform des Schaltungsschemas einer Spannungsreferenzschaltung zum Bereitstellen von Vref. Die Referenzspannungen Vref und Vmr werden an alle MLSA-(Paßgenauigkeitsleitungsleseverstärker)-Schaltungen sowie an die Referenz-MLSA-Schaltungen geliefert. Die Spannungsreferenzschaltung 250 enthält eine p-Kanal-Diode, die mit einem Lasttransistor 252 und einem referenzspannungsbegrenzenden n-Kanal-Transistor 254 verbunden ist, die zwischen VDD und einer Blindzelle 255 seriell verbunden sind. Vref ist mit VDD durch den Kondensator 253 gekoppelt. Die Blindzelle 255 enthält zwei n-Kanal-Transistoren 256 und 258, die zwischen dem Source-Anschluß des Transistors 254 und Erde seriell verbunden sind. Die Transistoren 256 und 258 sind in der Konstruktion mit einem normalen Paar von Such- und Vergleichstransistoren identisch, wie etwa mit den Such- und Vergleichstransistoren 241 und 242 von 13. Der Gate-Anschluß des referenzspannungsbegrenzenden n-Kanal-Transistors 254 ist mit einer vorbestimmten Spannung Vr verbunden, und die Gate-Anschlüsse der Transistoren 256 und 258 sind mit VDD verbunden. Da die Blind-Such- und Vergleichstransistoren 256 und 258 dieselben wie die normalen Such- und Vergleichstransistoren sind, wird der Strom, den sie erzeugen, derselbe sein. Ferner werden Veränderungen der Operationsbedingungen sowohl die normalen als auch die Blind-Such- und Vergleichstransistoren gleichermaßen beeinflussen. Der Strom des Transistors 224 kann im Konstruktionsstadium durch das Skalieren des W/L-Verhältnisses der Transistoren 224 und 252 erhöht oder verringert werden. In der vorliegenden Ausführungsform kann der Strom durch den Transistor 224 durch das Skalieren seines W/L-Verhältnisses als Faktor des W/L-Verhältnisses des Transistors 252 verändert werden. Zum Beispiel kann das W/L-Verhältnis des Transistors 224 zwischen 0,1 und 0,5 des W/L-Verhältnisses des Transistors 252 liegen. Vr wird durch einen separaten Spannungsgenerator (nicht gezeigt) bereitgestellt und als Differenz zwischen einem Spannungspegel, bei dem ein Paar von Such- und Vergleichstransistoren einen Pull-down-Strom entwickelt, der groß genug ist, um gelesen zu werden, und der Schwellenspan nung des Transistors 216 von 13 bestimmt. Vr beträgt typischerweise etwa 0,4 bis 0,5 Volt.
  • Nun werden die Energiesparmerkmale der vorliegenden Ausführungsform beschrieben. Der Lesezyklus beginnt typischerweise mit einem Taktimpuls, endet aber vor dem nachfolgenden Taktimpuls, wobei zwischen dem Ende des Lesezyklus und dem Beginn des nächsten Taktimpulses eine Leerlaufzeit verbleibt. Falls der Transistor 216 von 8 in dem Ein-Zustand bliebe oder in der Schaltung nicht vorhanden wäre, würde deshalb in Paßgenauigkeitsleitungen mit der Fehlbedingung auf Grund des Weges zur Erde in der Paßgenauigkeitsleitung MLp kontinuierlich statische Energie verbraucht. Indem der Transistor 216 kurz nach dem Ende des Lesezyklus ausgeschaltet wird, wird die Stromquelle von dem Weg zur Erde in der Paßgenauigkeitsleitung mit der Fehlbedingung getrennt. Der spannungsbegrenzende Transistor 222, und ähnlich der Transistor 214, dessen Gate-Anschluß mit Vr verbunden ist, isoliert das volle VDD-Potential von SPd von MLp und begrenzt MLp etwa auf Vr. Deshalb wird der Spannungshub von MLp während des gesamten Lesezyklus immer auf Vr begrenzt, und der Energieverbrauch auf Grund des wiederholten Ladens und Entladens von MLp wird minimiert.
  • Die Ausführungsform des Paßgenauigkeitsleitungsleseverstärkers der vorliegenden Erfindung ist eine kompakte Schaltung von nicht mehr als acht Transistoren zum Anordnen in dem CAM-Kern-Layout mit der knappen Teilung. Die Schaltung kann kleine Ströme von etwa 10 μA innerhalb eines kurzen Taktzyklus lesen, und sie begrenzt Paßgenauigkeitsleitungsspannungspegel zum Reduzieren des Energieverlustes auf einen niedrigen Pegel.
  • Deshalb kann, wie anhand der Ausführungsformen der vorliegenden Erfindung gezeigt, ein Niedrigenergie-CAM-Array erreicht werden, indem Paßgenauigkeitsleitungen in ein Vor-Such-Array und ein Haupt-Such-Array segmentiert werden und ein Leseschema implementiert wird, bei dem die Paßgenauigkeitsleitungen der Vor-Such- und Haupt-Such-Arrays zuerst auf einen Vorladepegel vorgeladen und dann auf einen Arbeitspunkt vorgespannt werden, bevor Paßgenauigkeitsleitungsdaten durch die Paßgenauigkeitsleitungsleseschaltungsanordnung gelesen werden. Zusätzlich werden durch das Segmentieren von Paßgenauigkeitsleitungen in zwei kürzere Paßgenauigkeitsleitungen die parasitäre Kapazität und der Widerstand reduziert, auf die jeder Paßgenauigkeitsleitungsleseverstärker trifft. Deshalb wird weniger Energie verbraucht und kann die Paßgenauigkeitsleitungslesegeschwindigkeit verbessert werden.
  • Natürlich können zahlreiche Veränderungen und Anpassungen an den besonderen Ausführungsformen der Erfindung vorgenommen werden, die oben beschrieben sind, ohne vom Umfang der Erfindung abzuweichen, der in den Ansprüchen definiert ist.
  • Während die Paßgenauigkeitsleitungsleseschaltung der vorliegenden Erfindung unter Einsatz der CMOS-Technologie auf Silizium implementiert und simuliert worden ist, können alternative Ausführungsformen in anderen Technologien, wie beispielsweise BiCMOS, implementiert werden. In alternativen Ausführungsformen können die Paßgenauigkeitsleitungen in drei oder mehr Segmente und zugeordnete Pipeline-Verriegelungsstufen segmentiert werden, mit einer Vorwärtsführung der Paßgenauigkeitsleitungsleseverstärkerausgabe in den nächsten Paßgenauigkeitsleitungsleseverstärker, um das weitere Lesen zu ermöglichen.
  • Die oben beschriebenen Ausführungsformen der Erfindung sollen Beispiele für die vorliegende Erfindung sein. Änderungen, Abwandlungen und Variationen können an den besonderen Ausführungsformen durch die Fachwelt erreicht werden, ohne vom Umfang der Erfindung abzuweichen, der lediglich durch die beiliegenden Ansprüche definiert ist.

Claims (12)

  1. Inhaltsadressierbares Speicher-Array mit: einer Paßgenauigkeitsleitung, die in eine Vielzahl von Segmenten geteilt ist, wobei ein jedes von der Vielzahl von Segmenten gleichzeitig auf einen Vorladungsspannungspegel in einer Vorladungsphase vorgeladen wird; gekennzeichnet durch: einen Paßgenauigkeitsleitungsleseverstärker, der einem jeden der Segmente zugeordnet ist, zum Lesen des Stroms von seinem zugeordneten Segment in einer Lesephase, wobei ein Paßgenauigkeitsleitungsleseverstärker einen anderen Paßgenauigkeitsleitungsleseverstärker freigibt, wenn eine Paßgenauigkeitsbedingung durch den einen Paßgenauigkeitsleitungsleseverstärker detektiert wird.
  2. CAM-Array nach Anspruch 1, bei dem Zeitgeberschaltungen das Vorladen und Leseoperationen der Paßgenauigkeitsleitungsleseverstärker steuern.
  3. CAM-Array nach Anspruch 2, bei dem die Zeitgeberschaltungen Referenz-Paßgenauigkeitsleitungen enthalten.
  4. CAM-Array nach Anspruch 1, bei dem der Vorladungsspannungspegel einer Fehlbedingung entspricht.
  5. CAM-Array nach Anspruch 1, bei dem der Vorladungsspannungspegel Erde ist.
  6. CAM-Array nach Anspruch 1, bei dem die Paßgenauigkeitsleitung ein erstes und ein zweites Paßgenauigkeitsleitungssegment enthält.
  7. CAM-Array nach Anspruch 6, bei dem der Paßgenauigkeitsleitungsleseverstärker, der dem ersten Paßgenauigkeitsleitungssegment zugeordnet ist, den Paßgenauigkeitsleitungsleseverstärker freigibt, der dem zweiten Paßgenauigkeitsleitungssegment zugeordnet ist.
  8. CAM-Array nach Anspruch 7, bei dem das erste Paßgenauigkeitsleitungssegment mit weniger inhaltsadressierbaren Speicherzellen als das zweite Paßgenauigkeitsleitungssegment gekoppelt ist.
  9. CAM-Array nach Anspruch 1, bei dem die Ausgabe eines jeden Paßgenauigkeitsleitungsleseverstärkers in einer Verriegelungsschaltung gespeichert wird.
  10. Verfahren zum Durchsuchen eines inhaltsadressierbaren Speichers, der eine Vielzahl von Reihen von CAM-Zellen hat, wobei jede Reihe erste und zweite Paßgenauigkeitsleitungssegmente hat, welches Verfahren gekennzeichnet ist durch: (a) Vorladen der ersten und zweiten Paßgenauigkeitsleitungssegmente auf einen Potentialpegel, der einer Fehlbedingung entspricht, während einer Vorladungsphase; (b) Aufbauen eines Vorspannungspotentials auf dem ersten Paßgenauigkeitsleitungssegment in jeder Reihe von CAM-Zellen während einer Lesephase; (c) Lesen des Stroms in dem ersten Paßgenauigkeitsleitungssegment während der Lesephase; und (d) selektives Freigeben des Lesens des Stroms in dem zweiten Paßgenauigkeitsleitungssegment in jeder Reihe von CAM-Zellen, falls der gelesene Strom in dem ersten Paßgenauigkeitsleitungssegment einer Paßgenauigkeitsbedingung zwischen den Suchdaten und den gespeicherten Daten entspricht.
  11. Verfahren nach Anspruch 10, bei dem der Schritt zum selektiven Freigeben des Lesens das Konvertieren des gelesenen Stroms in eine Leseknotenausgangsspannung enthält.
  12. Verfahren nach Anspruch 11, bei dem der Schritt zum selektiven Freigeben des Lesens das Verriegeln der Leseknotenausgangsspannung zum Pipeline-Lesen des Stroms in den ersten und zweiten Paßgenauigkeitsleitungssegmenten enthält.
DE60210322T 2001-12-28 2002-12-05 Assoziativspeicherarchitektur mit geringem leistungsverbrauch Expired - Lifetime DE60210322T2 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US34275001P 2001-12-28 2001-12-28
US342750P 2001-12-28
CA2384039 2002-04-30
CA2384039A CA2384039C (en) 2001-12-28 2002-04-30 Low power content addressable memory architecture
PCT/CA2002/001865 WO2003056564A1 (en) 2001-12-28 2002-12-05 Low power content addressable memory architecture

Publications (2)

Publication Number Publication Date
DE60210322D1 DE60210322D1 (de) 2006-05-18
DE60210322T2 true DE60210322T2 (de) 2006-12-28

Family

ID=25682858

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60210322T Expired - Lifetime DE60210322T2 (de) 2001-12-28 2002-12-05 Assoziativspeicherarchitektur mit geringem leistungsverbrauch

Country Status (7)

Country Link
EP (1) EP1461811B1 (de)
CN (1) CN100414646C (de)
AT (1) ATE322075T1 (de)
AU (1) AU2002349236A1 (de)
DE (1) DE60210322T2 (de)
TW (1) TWI260636B (de)
WO (1) WO2003056564A1 (de)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9601199B2 (en) 2007-01-26 2017-03-21 Intel Corporation Iterator register for structured memory
CN101652758B (zh) 2007-01-26 2013-10-16 海坎普系统股份有限公司 分级式不可变内容可寻址存储器处理器
CN101118780B (zh) * 2007-09-18 2010-09-08 钰创科技股份有限公司 一种具有感测放大器的闩锁器
TWI405206B (zh) * 2008-12-05 2013-08-11 Nat Univ Chung Cheng The low voltage content can be addressed by the memory of the read and compare circuit
CN103886901B (zh) * 2012-01-12 2017-11-21 大连市恒珑科技发展有限公司 log2型匹配线电路
US9384835B2 (en) 2012-05-29 2016-07-05 Globalfoundries Inc. Content addressable memory early-predict late-correct single ended sensing
CN106847296B (zh) 2012-07-12 2021-01-22 诺基亚技术有限公司 矢量量化
US8958226B2 (en) 2012-12-28 2015-02-17 Qualcomm Incorporated Static NAND cell for ternary content addressable memory (TCAM)
US8934278B2 (en) * 2012-12-28 2015-01-13 Qualcomm Incorporated Hybrid ternary content addressable memory
US9153305B2 (en) * 2013-08-30 2015-10-06 Micron Technology, Inc. Independently addressable memory array address spaces
JP6840621B2 (ja) * 2017-05-24 2021-03-10 ルネサスエレクトロニクス株式会社 内容参照メモリ
US11342022B2 (en) 2019-12-03 2022-05-24 Mediatek Singapore Pte. Ltd. Low-power multi-stage/multi-segment content addressable memory device
EP3832654B1 (de) * 2019-12-03 2023-05-17 MediaTek Singapore Pte. Ltd. Mehrstufige/mehrsegmentige inhaltsadressierbare speichervorrichtung mit niedrigem stromverbrauch
US20250087268A1 (en) * 2023-09-12 2025-03-13 Macronix International Co., Ltd. Non-volatile 3d memory search architecture

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3190868B2 (ja) * 1997-11-21 2001-07-23 エヌイーシーマイクロシステム株式会社 連想メモリ装置
US6191969B1 (en) * 1999-09-09 2001-02-20 Net Logic Microsystems, Inc. Selective match line discharging in a partitioned content addressable memory array
US6243280B1 (en) * 1999-09-09 2001-06-05 Netlogic Microsystems, Inc. Selective match line pre-charging in a partitioned content addressable memory array

Also Published As

Publication number Publication date
DE60210322D1 (de) 2006-05-18
TWI260636B (en) 2006-08-21
WO2003056564A1 (en) 2003-07-10
AU2002349236A1 (en) 2003-07-15
CN100414646C (zh) 2008-08-27
EP1461811B1 (de) 2006-03-29
EP1461811A1 (de) 2004-09-29
TW200301484A (en) 2003-07-01
CN1620701A (zh) 2005-05-25
ATE322075T1 (de) 2006-04-15

Similar Documents

Publication Publication Date Title
DE60214773T2 (de) Schaltung und verfahren zur verminderung des stromverbrauchs in einem inhaltsadressierbaren speicher
DE69520512T2 (de) Halbleiterspeicher mit eingebautem Cachespeicher
DE3853814T2 (de) Integrierte Halbleiterschaltung.
DE60210322T2 (de) Assoziativspeicherarchitektur mit geringem leistungsverbrauch
DE69528916T2 (de) Synchroner Speicher mit parallelen Ausgangsdatenwegen
US6584003B1 (en) Low power content addressable memory architecture
DE69533678T2 (de) Technik zur schnellen Übertragung in CMOS integrierte Schaltungen
DE68920699T2 (de) Speicherzelle und Leseschaltung.
KR100810778B1 (ko) 다중매치검출회로 및 방법
DE69124791T2 (de) Abfühlfreigabetaktschaltung für direktzugriffspeicher
DE69608125T2 (de) Verfahren und vorrichtung für selbstgetaktetes speichersteuerungssystem mit niedrigem stromverbrauch
DE69229118T2 (de) Generatorarchitektur für Einzeltor RAM mit Hochleistungsfähigkeit
DE69511791T2 (de) Redundanzschema für Speicherschaltungen
EP0393435B1 (de) Statische Speicherzelle
DE69322947T2 (de) DRAM mit variabler Wortleitungsauswahl
US6717876B2 (en) Matchline sensing for content addressable memories
DE10220897A1 (de) Dünnfilmmagnetspeicher
DE10207312A1 (de) Ferroelektrische nichtflüchtige Logikelemente
DE69719116T2 (de) Selbstanpassende Leseverstärkerverzögerungsschaltung
DE3102799A1 (de) Halbleiter-speichervorrichtung
DE60316510T2 (de) Inhaltsadressierbare Speicheranordnung und zugehöriges Betriebsverfahren
DE112012005060B4 (de) Höhere Energieeinsparung bei Speicher-Arrays
DE60213813T2 (de) Dram mit bitleitungsaufladung, invertiertem dateneinschreiben, verlängerter ausgabedatenhaltung und verringertem leistungsverbrauch
DE69122430T2 (de) Restitutionsschaltkreis für individuelle Bit-Leitungen
DE69224270T2 (de) Speicher mit Generator zum Folgen eines Vorladungsimpulses

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Representative=s name: SEEGER SEEGER LINDNER PARTNERSCHAFT PATENTANWAELTE

8327 Change in the person/name/address of the patent owner

Owner name: MOSAID TECHNOLOGIES INC., OTTAWA, ONTARIO, CA