JPH0271497A - 内容でアドレス指定可能なメモリ・システム - Google Patents

内容でアドレス指定可能なメモリ・システム

Info

Publication number
JPH0271497A
JPH0271497A JP1117162A JP11716289A JPH0271497A JP H0271497 A JPH0271497 A JP H0271497A JP 1117162 A JP1117162 A JP 1117162A JP 11716289 A JP11716289 A JP 11716289A JP H0271497 A JPH0271497 A JP H0271497A
Authority
JP
Japan
Prior art keywords
data
bit
match
register
cell
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP1117162A
Other languages
English (en)
Other versions
JP3006715B2 (ja
Inventor
Patrick T Chuang
パトリック・ティ・チャン
Robert L Yau
ロバート・エル・ヨゥ
Hiroshi Yoshida
ヒロシ・ヨシダ
Moon-Yee Wang
ムーン・イー・ワン
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.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices 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
Application filed by Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of JPH0271497A publication Critical patent/JPH0271497A/ja
Application granted granted Critical
Publication of JP3006715B2 publication Critical patent/JP3006715B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • G11C15/04Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90339Query processing by using parallel associative memories or content-addressable memories

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Dram (AREA)
  • Static Random-Access Memory (AREA)
  • Semiconductor Memories (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Use Of Switch Circuits For Exchanges And Methods Of Control Of Multiplex Exchanges (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 関連出願の相互参照 この出願と同時に出願され、かつこの出願と同じ譲受人
に譲渡された同時係属中の米国特許出願番号第193,
308号は、ここに開示される多重化アドレス命令およ
びフラグ情報を有する、内容でアドレス指定可能なメモ
リに向けられた請求項を有する。
この出願と同時に出願され、かつこの出願と同じ譲受人
に譲渡された同時係属中の米国特許出願番号第193,
312号は、ここに開示されるように、アレイ内のいず
れかのまたはすべてのビットおよび、アレイ内のいずれ
かのまたはすべてのワードがマスク可能であり、かつア
レイ内のいずれかのまたはすべてのワードについてマス
クおよびリセットが共に可能な、内容でアドレス指定可
能なメモリ・アレイに向けられた請求項を有する。
発明の背景 発明の分野 この出願は、メモリ内のデータ位置よりもむしろメモリ
・データの内容に基づいてメモリがサーチされる、内容
でアドレス指定可能なメモリ(CAM)アレイを用いる
システムに関するものである。
先行技術の説明 従来のまたはノイマン型のコンピュータならびに、計算
変数をそれらの位置の索引によってアドレス指定すると
いう原理を用いるコンピュータは特に、多くの課題にお
いて不十分なものであるとしばしばみなされてきた。オ
ペランドがそれらの記号名またはデータ内容によって、
場合によっては一時に多数呼出され得る構造をもって、
従来のランダム・アクセス・メモリに替えるため多くの
試みがなされてきた。ハイレベルのアルゴリズム言語お
よび問題向き言語はそのような特徴を大いに利用するで
あろう。この方向における開発が特に迅速ではなかった
理由は、少なくとも2つ存在する。それらのうちの1つ
は、ランダム・アクセス・メモリに比して、内容でアド
レス指定可能なメモリははるかに高価であることである
。もう1つの理由は、変数を記号でコード化するという
課題は既に効果的なソフトウェアによる解決を有してお
り、それは特別なメモリを必要としないということであ
る。しかしながらこれは、多くの課題において極めて望
ましいもう1つの特徴、すなわち、極めて多くの変数を
メモリから同時に検索するという特徴をもたらさない。
連想は本来、情報間の相互関係または相互参照の表記の
ためにのみ考慮されていたが、データをその部分的内容
によってサーチすることは、演算アルゴリズムの操作に
おいて効果的に利用され得るということが後程判明した
。そのような内容によるアドレス指定は高度に並列して
、すなわち極めて多数のデータ要素にわたって同時に、
通常比較的低レベルで、2進表現において生じる変換を
参照しながら、行なわれ得る。並列計算の課題はまた、
より高いレベルのアルゴリズム機能を並列に制御するた
めに内容によるアドレス指定能力が使用されるという、
もう1つの方向も有する。
以下の定義はこの発明の主題となる事項に関して用いら
れ得る。
内容でアドレス指定可能なメモリ: データを多数のセ
ル内に記憶させる記憶装置。セルはそれらの内容に基づ
き、アクセスまたはロード可能である。
内容でアドレス指定可能なプロセッサ: より複雑なデ
ータ変換が、内容に従って選択されたいくつかのセルの
内容について行なわれ得る、内容でアドレス指定可能な
メモリ、あるいはそのようなメモリを記憶または処理の
ために必須の構成要素として各々使用するコンピュータ
またはコンピュータやシステム。
データに、それらの内容に基づいてアクセスすることは
、外部探索引数と、すべてのセル内に記憶された情報の
一部またはすべてとの何らかの比較を常に含む。これが
ソフトウェア、機械的走査または並列電子回路のいずれ
によって行なわれるかは原則として重要ではないが、し
かしながら、「真正の」内容でアドレス指定可能なメモ
リは、すべての比較を並列して行なう。強調すべきもう
1つの事実は、探索引数と記憶された項目との間の同等
のマツチによる比較が、使用される唯一のモードではな
いということである。記憶されたデータが数値を有する
場合、内容でアドレス指定可能なサーチの目的は、その
内容が探索引数に関して、たとえば所与の限界より大き
いかまたは小さい、あるいは2つの特定の限界の間にあ
るといった、一定の大きさの関係を満たすすべてのセル
の位置を突止めることであるかもしれない。内容でアド
レス指定可能なサーチは、時には外部探索り数を参照す
ることなく行なわれ、たとえば1組の記憶された数にお
いて最大または最小の位置を突止める場合がそうである
ハードウェアの、内容でアドレス指定可能なメモリは、
計算システムにおいて特殊な部分として使用されてきた
が、ある組織的解決においては、それによってCAMが
、データの移動および並べ換えに必要とされる迅速なバ
ッファ、チエツクおよび簿記動作を効果的に行なうこと
が可能である。
このようにしてCAM装置は、オペランドを処理回路に
対してより直接的に利用可能にすることによって、通常
動作の速度に効果的に貢献することができる。
CA〜1アレイでのマスクされたサーチにおいては、探
索引数ワードのビットのサブセットのみがすべてのメモ
リ・ワードの各々のビットと比較される。CAMにおけ
るマスキングは通常、成るビットを完全にマスクするこ
と、すなわち使用禁止にすることを意味する。特定され
た(マスクされない)ビット位置において探索引数と一
致する、記憶されたワードが次に読出される。
発明の概要 先行技術を利用し、Nビット幅ワードおよびMワード深
さの(たとえば、48ビツト・ワードで、アレイ内に2
56ワード存在する)構成を仔するCAMアレイ・パッ
ケージを提供し、かつ非多重化モードで動作するには、
必要なデータ信号、制御信号、フラグ信号および電源信
号を提供するためにパッケージ上に多数のピンが必要と
なるであろう。たとえば、先行技術を使用する典型的な
非多重化256X48CAMアレイについては以下のピ
ン総数が必要となるであろう。
アドレス・イン         −8ピンコード化さ
れたアドレス・アウト −8ピンCAMデータ Ilo
       −48ビンマッチ・データ・イン (マスクされず)        −48ビンマッチ・
データφイン (マスク・ビット)       −48ビン制御信号
 E、G、W       −3ピン状態フラグ(マツ
チ、フル、 複数マツチ)          −3ピン電源、但し
8出力ごとにVcc およびVssを1対、回路 に1対、入力に1対と仮定 −16ピン総計 182ビン この発明によると、3つのメモリ・サイクルを使用して
、48データ・ビットを16ビツト・バスに時間多m化
することによって、必要とされるパッケージ・ピンの数
の実質的な削減が実現され得る。これを達成するために
、この発明は3つの48ビット内部レジスタを使用して
、CAMデータ、マスクされないマツチ・ワードおよび
マスク・ビットを保持する。これらの3つの48ビツト
レジスタは3サイクルで16ビツトI/Oバスからロー
ドされる。データ書込サイクルおよびデータ読出サイク
ルに加えて、コマンド書込サイクルおよび状態読出サイ
クルがこの発明においては利用され、さらに16とット
バスへの、およびそこからのアドレス情報、命令情報お
よびフラグ情報を多重化する。この後者は、特別制御信
号(D/C−データ/コマンド)を費してなされる。コ
マンド書込サイクルの間、書込コマンドはコマンド・ワ
ードのフォーマットを採用し、オペレーショナル(OP
)  ・コードはワード−ビットの一部にコード化され
、アドレス情報はビットの他の一部にコード化される。
状態読出動作の間、フラグ状態に関する情報は状態ワー
ド・ビットの一部にコード化され、アドレス情報は状態
ワード・ビットの他の部分にコード化される。多重化技
術を使用して、コマンド書込および状態読出情報を利用
し、16ビツト・バス上へのその配置を可能にするこの
能力は、この発明の重要な特徴である。
情報の多重化に関するこの発明の教示を使用すると、必
要とされるピンの総数は以下のように削減される。
Ilo               −16ピン制御
信号            −4ピンフラグ(マツチ
;フル)      −2ピン電?R’       
       −6ビン(出力に必要なVccおよび VSSの対はより少数で ある) 総数          28ビン この発明のもう1つの重要な局面によると、ワード内の
いずれかの、またはすべてのビットがマスク可能であり
得、かつアレイ内のいずれかの、またはすべてのワード
についてマスクおよびリセットが共に可能であり得るC
AMアレイが提供される。
この発明のさらなる特徴は、特別なCAMプロセッサ・
アーキテクチャが用いられることである。
このアーキテクチャは以下の構造を含む。
1、   CAMセル・アレイ CAMセルのアレイが所望の構成に配 置される。ワード争ラインおよびマ・ソチ・ラインが同
じ方向に延び、ビット・ラインはワード・ラインに対し
て垂直に延びる。
2、 行デコーダ 〜1デコーダのうちの1つが所望のワードのみを選択す
る。
3、  ビット・ライン・プリチャージ回路これは高速
非破壊セル読出のために、 ビット・ラインを最適レベルまでプリチャージする。
4、  ビット・ライン記述子回路 各関連ビットにつき1つ(すなわち、 各ビット・ライン対につき1つ)の記述子が設けられる
。これはマスク・レジスタ、彼比較数レジスタ、センス
アンプおよびプログラム可能なビット・ライン書込回路
からなる。
データは、ワード・ラインが選択され た状態で、ビット・ラインを介してCAMセル内に書込
まれ得る。被比較数レジスタは、ビット・ライン上およ
びセル内に書込まれるべきデータとともに、プログラム
可能なビット・ライン書込回路をプログラムする。デー
タは、ワード・ラインが選択された状態で、ビット・ラ
インを介してCAMセルから読出され得る。
ビット・ライン上のセル信号は、センスアンプによって
増幅される。
非破壊的並列サーチ(マツチ)は、す べてのワード・ラインが選択されずに、すべてのアレイ
に対して行なわれ得る。
5゜ 被比較数レジスタおよびマスク・レジスタ内のデータは
、プログラム可能なビット・ライン書込回路をプログラ
ムするために使用される。マツチ動作の間、CAN1セ
ル・データは、関連するビット・ライン対土に現われる
データと同時に比較されるであろう。
マスク・レジスタ内のデータはプログ ラム可能なビット・マスキングのために使用される。マ
スク・レジスタ内の論理「1」は被比較数レジスタ内の
データを重ね書きするであろうし、一方マスク・レジス
タ内の論理「0」は、被比較数レジスタ内の対応するデ
ータがセル内への書込のためにビット・ライン上に現わ
れるのを可能にする。このようにしてビットのいずれか
、またはすべてがマスクさ得る。
ワード・マスキングおよびリセット回路各関連ワードに
つき1つが設けられ、 6゜ 7゜ スキップ・ビットおよびエンプティ・ビットからなる。
ワードのいずれかまたはすべてがスキップ・ビットまた
はエンプティ・ビットによって完全にマスクされ得る。
すべてのエンプティ・ビットをリセットする(すべてを
エンプティにセットする)ことによって、アレイ全体が
リセットされ得る。データはデータバスを介して、これ
らのスキップ・ビットおよびエンプティ・ビット内へ、
またはそれらから転送され得る。
マツチ検出器 これは「マツチがない」、「単数マツ チ」または「複数マツチ」状態を検出し、かつチップ「
フル」またはチップ「エンプティ」状態を検出すること
ができる。
「フル」、「マツチ」および「複数マツチ」フラグが1
6ビツト・バス上において利用可能である。
優先順位エンコーダ 単一マツチまたは複数マツチ状態の場 合には、最高優先順位のマツチの位置のアドレスがコー
ド化されるであろう。
「マツチがない」状態の場合、最高優先順位のエンプテ
ィの位置のアドレスかコード化されるであろう。
8、 制御論理 16ビツト・バスから受けられる命令 は内部タイミングを発生し、異なる動作を達成するであ
ろう。
9、 以下のものを提供するために多重化された16ビ
ツト・バス 行デコーダのためのアドレス・バス。
CAMセルのためのデータ l/O0 マツチ・ワードのためのデータ l/O(非比較数レジ
スタおよびマスク・レジスタ)。
スキップ・ビットおよびエンプティ・ビットのためのデ
ータ Ilo。
制御論理のための命令。
「フル」、「マツチ」、および「複数マツチ」のための
出力フラグ。
優先順位エンコーダからの「マツチ」位置または「エン
プティ」位置のいずれかのコード化されたアドレス。
好ましい実施例の説明 第1図を参照すると、この発明のCAMセル・アレイ1
1はNビット幅ワードおよびMワード深さで構成される
。典型的な、しかしながら限定的ではない、一実施例は
48ビツト・ワードのアレイを含み、アレイ内には25
6のそのようなワードが存在する。2つの特別なビット
(スキップ・ビットおよびエンプティ・ビット)がワー
ド・マスキングおよびリセットの目的のために各ワード
に付与される。ラインBLおよびBLを介して、アレイ
内の各ビットにビット・ライン記述子回路1(第2図に
より詳細に示される)が接続され、それはプログラム可
能なビット・ライン書込回路、被比較数レジスタ、マス
ク・レジスタおよびセンスアンプを含む。記述子回路1
はデータを16ビツト・バス/Oと交換する。行デコー
ダ2が、複数のワード・ラインWLを含むバスを介して
アレイ11に接続され、アレイ内の異なるワードを選択
する。ビット・ライン・プリチャージ回路3が複数のビ
ット・ラインBLおよびBLを介してアレイ11に接続
され、そのようなビット・ラインの対がアレイ内のビッ
トの各列に設けられる。マッチ・ラインMLを介して、
ワード・マスキングおよびリセット回路4、マツチ検出
器5および優先順位エンコーダ6がアレイ11の出力と
通信する。制御論理ネットワーク7は、バス/Oから受
けた命令に応答して回路4.5および6に入力を提供す
る。回路4.5および6は直接バス/Oと通信し、バス
/Oと回路4との間の通信は双方向性である。これらの
回路の細部は第2図に、より詳細に示される。
この発明によるCAMシステムのアーキテクチャ全体の
最も重要な特徴が第2図に示される。第1図のビット・
ライン記述子回路1のエレメントは点線の囲い1内に示
され、CAMレジスタ17、マスク・レジスタ18、被
比較数レジスタ19、センスアンプ14および、記述子
エレメント36内に含まれるプログラム可能なビット・
ライン書込回路を含む。
第2図の回路はまた、機能において第1図の行デコーダ
2に対応するアドレス・デコーダ30を示し、これはバ
ス/Oから供給される8つのアドレス・ビットをデコー
ド化し、アレイ11内の256ワードのうちの選択され
るべき1つを同定する。また、スキップ書込回路20を
有するスキップ・ビット・アレイ22および、エンプテ
ィ書込回路23を有するエンプティ・ビット・アレイ2
4がアレイ11の出力およびデコーダ30に接続されて
いるのが示される。エレメント22および24からの出
力はスキップ/エンプティ・ビット・エレメント41に
供給される。
また第2図には、フル制御エレメント37によって制御
され、かつ状態レジスタ40およびフル・レジスタ32
に出力をIJ(給するフル検出器31が示される。状態
レジスタ40は、状態読出動作の間16ビツトでバス/
Oと通信する。
マツチ制御エレメント38によって制御されるマツチ検
出器28は、単一マツチ信号をマツチ・レジスタ29に
供給する。フル・レジスタ32およびマツチ・レジスタ
2つからの信号は、フル・フラグ・エレメント26およ
びマツチ・フラグ・エレメント27に各々供給される。
マツチ検出器28はまた状態レジスタ40に、単数マツ
チ信号および複数マツチ信号の双方を供給する。
第2図はまた、マルチプレクサ制御エレメント33の制
御下において、エレメント28および31から優先順位
エンコーダへの情報を多重化する優先順位マルチプレク
サ25を示す。セグメント・カウンタ34は、バス/O
および、OPココ−発生器3つの出力に接続されるカウ
ンタ制御エレメント35の制御下にある。カウンタ34
は一方の出力を状態レジスタ40に、もう一方の出力を
出力フィールド・セレクタおよびデータ・読出エレメン
ト42に供給する。
この発明のシステムは動作の4つのモードを有し、第2
図においてモード発生器13の出力上の対応するブロッ
クによって示されたように、それらはコマンド書込(C
W)、データ書込(DW)、状態読出(SR)、および
データ読出(D R)である。データ書込モードにおい
ては、データが被比較数レジスタに書込まれる。モード
発生器13はピンE上においてチップ可能化信号を、ピ
ンG上において出力可能化信号を、ピンW上において書
込可能化信号を、さらにビンD/C上においてコマンド
/データ信号を受ける。被比較数レジスタ19はバス/
OおよびCAMアレイ11間における主要なバッファで
ある。データ書込動作が行なわれた後、コマンド書込サ
イクルの制御下においてオペレーション(OP)  ・
コードのうちの1つが行なわれ、データをCAMアレイ
11内またはマスク・レジスタ18内へと移動させる。
コマンド書込サイクル下においては、コマンド書込命令
が16ビツト・バス/O上にコード化される。バス/O
上の16ビツトのうち4ビツトが、この発明において用
いられる160Pコードをデコード化するために使用さ
れる。また、アレイ11内のどの位置にデータが被比較
数レジスタ1つから転送されるべきかをアドレス位置が
示すために、バス/O上には8ビツトが存在する。この
発明において用いられるOPコードが以下に挙げられる
Op  コード 0   初期設定 すべてのスキップ・ビットはLOW(スキップしない)
にセットされ、すべてのエンプティ・ビットはHIGH
(エンプティ)にセットされる。
/MA T CHおよび/FULL出力が能動化される
。モードは48ビツト・モードにセットされる。
マスク・レジスタおよびセグメント・カウンタは0にリ
セットされる。不履行の場合、その後のデータ書込は被
比較数レジスタへであり、その後のデータ読出は被比較
数レジスタからである。
マツチ・フラグおよびフル・フラグがこのコマンドによ
って能動化または不能化される。
0p コード 2   モード選択 使用者は16または48ビツト・モード間を選択するた
めにこのコマンドを使用できる。16ビツト・モードで
は、セグメント・カウンタが増加されることはない。
0p コード 3   被比較数レジスタをマスクφレ
ジスタへ移動せよ 被比較数レジスタ・データの内容がマスク・レジスタへ
移される。
Op  コード 4   マスク・レジスタを被比較数
レジスタへ移動せよ 0p コード 1   出力制御 マスク・レジスタ・データの内容が被比較数しる。セグ
メント・カウンタは変化しない。
ジスタヘ移される。
0p コード 5   スキップ・ビットφアレイおよ
びエンプティ・ビット・アレイからI/Oボートへの出
力を可能化せよ その後のすべてのデータ・モード読出の結果、エンプテ
ィ・ビットおよびスキップ・ビットから出力バッファへ
のデータの流れが得られる。アドレスはコマンド・レジ
スタ・アドレス拳フィールドによって特定される。
Op  コード 7    CAMを被比較数レジスタ
へ移動せよ コマンド・ワード・アドレス・フィールドによって特定
されたCAMデータの内容が被比較数レジスタへ移され
る。セグメント・カウンタは変化しない。スキップ・ビ
ット・アレイおよびエンプティ・ビット・アレイ情報は
変えられない。
Op  コード 8   予約された Op  コード 6   被比較数レジスタをCAMに
移動せよ 被比較数レジスタ・データの内容がCAMに移される。
エンプティ・ビットおよびスキップ・ビットは変化しな
い。CAMアドレスがコマンド・ワード・アドレス・フ
ィールドによって特定されOp  コード 9   ス
キップ・ビット制御使用者はこのコマンドを使用してス
キップ・ビット・アレイに書込可能である。1サイクル
でアレイ全体に書込むことが可能であり、または所望の
アドレス位置を提供することによって、いずれの個々の
ビットにも書込むことが可能である。
0p コード /O  エンプティ・ビット制御 使用者はこのコマンドを使用してエンプティ・ビット・
アレイに書込可能である。1サイクルでアレイ全体に書
込可能であり、または所望のアドレス位置を提供するこ
とによって、いずれの個々のビットにも書込可能である
Op  コード 11  被比較数レジスタから1/O
ポートへの出力を可能化せよ その後のすべてのデータ読出の結果、マスク・レジスタ
・セグメントから出力バッファへのデータの流れが得ら
れる。
Op  コード 1B   CAMからI/Oボトへの
出力を能動化せよ その後のすべてのデータ読出の結果、CAMセグメント
から出力バッファへのデータの流れが得られる。CAM
アドレスはコマンド・ワード・アドレス・フィールドに
よって特定される。
その後のすべてのデータ読出の結果、被比較数レジスタ
・セグメントから出力バッファへのデータの流れが得ら
れる。
Op  コード 14  被比較数レジスタをCAMに
移動せよ(エンプティ・ビットおよびスキップ・ビット
を共にLOWにリセットせよ)0p コード 12  
マスク・レジスタから1/Oポートへの出力を可能化せ
よ 被比較数レジスタ・データの内容が、コマンド・ワード
・アドレス・フィールドによって特定されるアドレス(
CAMアドレス)内へ移される。
対応するエンプティ・ビットおよびスキップ・ビットは
共にLOWにリセットされる。
0p コード 15  ロード・セグメント・カウンタ 使用者はセグメント・カウンタを変化させ、3つのセグ
メントのいずれか1つに達することが可能である。
これらの16のOpコード命令は、16ビツト・バス上
のコマンド・ワードの4つの上位ビットこよってコード
化される。典型的なコマンド・ワードは以下のようなも
のである。
D15D14D13D12D11D/OD9D8D7D
6D5D4D3D2DID0状聾読出は通常、使用者が
マツチ位置と、それか複数のマッノチであるか単数のマ
ツチであるかと、さらにチップが依然としてフルである
かとを知ることを所望するマツチ動作に続くものである
。状態レジスタ30の内容はバス/O上に読出され得る
。2つのビットがセグメント・カウンタ22から、8つ
のビットが優先順位エンコーダ21からのアドレス位置
表示から、さらに3つのフラグ・ビットがフル検出器3
1ならびに、マツチおよび複数マツチ検出器28から読
出され得る。
この発明において用いられる状態ワードは以下のように
説明され得る。以下に示されたように、状態ワードの下
位の8つのビットはコード化されたアドレスであり、使
用者に位置を示す。
D15D14D13   °12D11D/OD9D8
D7D6D5D4D3D2DID0典型的な状態ワード 上位の3つのビットは、複数マツチ・フラグ、フル・フ
ラグおよび単数マツチフラグを含む状態フラグを固定す
る。これらの内部フラグは外部フラグと同様のものであ
るべきであるが、しかしながら出力が能動化されない場
合、フラグはハイであるであろう。
データ読出は、使用者がCAMレジスタ17、比較レジ
スタ19、マスク・レジスタ18またはメモリ41から
のスキップ・ビット情報およびエンプティ・ビット情報
から情報を得られる読出動作である。したがって、デー
タ読出動作は、先のコマンド書込サイクルに応じて4つ
のレジスタのうちの1つから情報を読出すであろう。
この発明においては各ワードにつき2つの状態ビットが
用いられ、一方はスキップ・ビットであり他方はエンプ
ティ・ビットと呼ばれる。スキップ・ビットは使用者が
ワードを完全にマスクすることを可能にするために用い
られ、エンプティ・ビットはアレイ内のエンプティ・ビ
ット位置に関連して使用される。
この発明は、最高優先順位のアドレス位置の表示を提供
するために優先順位エンコーダ21を使用する。アレイ
全体の比較が行なわれるマツチ動作のために、この特徴
はマツチが存在する場合、マツチ位置の表示を提供する
であろう。マツチが存在しなければ、優先順位エンコー
ダ21は使用され得る次のエンプティ・アドレスを指摘
するであろう。使用者が完全にマスクできるマツチ位置
が1つより多く存在する複数マツチ状態においては、マ
ツチしたすべての位置を同定できるまでワードごとに完
全にマスクすることが可能であり、これはスキップ・ビ
ット・回路20およびスキップ・ビ・ント争アレイ22
1こよって示されたスキップ・ビットの機能である。こ
こで使用されるもう1つのビットはエンプティ・ビット
であり、エンプティ書込回路23およびエンプティ・ビ
ット・アレイ24によって示される。エンプティ・ビッ
トは2つの状態を有し、そのうちの1つはエンプティで
あり、他方はフルである。特定のワード位置が使用され
、使用者はこの特定のビット位置が占有されてることを
示すようにエンプティ・ビットをセットすることが可能
である。したがって、使用者がCAMセルに書込むこと
を所望するとき、その中の一部の位置が既に中にデータ
を有していることを知るであろう。
セグメント・カウンタ22は内部セグメントの跡を辿り
、その結果16ビツト・バス/Oは48ビット動作のた
めに使用され得る。16ビツト・モードの動作の3ター
トにおいては、カウンタ22内のセグメント・カウント
が既に第1のカウントにセットされている。しかしなが
ら、使用者が、上に示されたOPコード15を使用する
ことによって、第2のセグメント・カウントまたは第3
のセグメント・カウントに進むことが可能な、使用者が
プログラム可能な特徴も存在する。
2つの外部フラグが存在し、そのうちの一方は「フル」
フラグであり、エレメント26で示され、他方は「マツ
チ」フラグであり、エレメント27によって示される。
マツチがアレイ内に存在し、それがマツチ検出器28に
よって検出され、マツチ・レジスタ29を介してフラグ
27に伝えられると、マツチ・フラグはローになるであ
ろう。同様ニ、アレイ11内のすべての位置がフルであ
り、それがフル検出器31によって検出され、かつフル
・レジスタ32を介してフラグ26に伝えられると、フ
ル・フラグはローとなるであろう。フル・フラグ26が
ハイであるとき、これはアレイ11内に依然としてエン
プティの位置が使用者のために存在することを意味し、
マツチ・フラグ27がハイのままであるとき、これはマ
ツチが存在しないことを意味する。
マッチ・ラインおよびフル・ライン双方からの信号は、
優先順位マルチプレクサ25を介して優先順位エンコー
ダ21内へ入る(第2図)。マツチが存在しなければ、
エンプティ位置もデコード化されるであろう。エンプテ
ィ情報およびマツチ情報の双方が優先順位エンコーダ2
1に供給される。フル検出器31は、アレイがフルまた
はエンプティのいずれであるかを検出するであろう。
マツチ検出器28はマツチ状態またはマツチがない状態
を検出し、一方優先順位エンコーダ21はマツチ・ワー
ドのアドレス位置を提供する。優先順位エンコーダ・マ
ルチプレクサ25はエンプティ位置情報およびマツチ位
置情報を多重化し、その結果2つのうちの1つがエンコ
ーダ21内へと入ってくるであろう。
第3図を参照すると、9つのトランジスタ・セルが示さ
れ、そのうちトランジスタM1、M2、M5、M6は基
本的記憶エレメントであり、かつ交差結合対である。ノ
ードSTおよびSTは記憶ノードであり、トランジスタ
M3、M4は、を己憶ノードをビット・ライン対BLお
よび肛に接続するアクセス・トランジスタである。セル
・アクセスはWLを介するワード・ライン選択によって
制御される。トランジスタM7、M8はマツチ・トラン
ジスタである。それらは、記憶ノードST。
STおよびビット・ライン対BL、BLが入力であり、
マツチ・ノードMが出力である排他的N。
R形状で接続される。セル・データがビット・ライン上
のそれに等しいとき、論理ローがM上に現われる。
−マッチ状態 同じワード内のすべてのNビットがそれらの各々のビッ
ト・ライン対土にマツチング・データを有するとき、マ
ツチ状態が生じる。すべてのセル・マツチ・ノードが論
理ローであるので、マッチ・ライン上のプル・ダウン・
トランジスタM1Bはいずれもオンにはされ得ない。し
たがって、マッチ・ラインは論理ハイのままであろう。
対照的に、いずれの非マツチ状態も、マッチ・ラインが
ローに引かれるという結果をもたらすであろう。
−ビット舎マスキング BLおよびBLが共にトランジスタMllおよびM12
によってローにセットされるとき、マツチφノードMは
CAMセル・データ1こかかわりなくローであろう。し
たがって、この特定のビットはマツチに強制されるであ
ろう。ビット・マスキング状態は、マスク・レジスタ1
8を「1」にセット(B L、およびBLを共にローに
強制)することによって達成され得る。マスク・レジス
タが「0」にセットされるとき、レジスタ19内のデー
タがビット・ライン対土に現われ得る。
−ワード番マスキング ワードマスキングは、スキップ・ビットまたは/および
エンプティ・ビットのいずれかをハイにセットすること
によって達成され得る。どちらの場合においても、最終
のマッチ・ライン出力(ML’)は、マツチが存在して
も非マツチ状態を示すNANDゲート(47)およびN
ORゲート(48)を介してローに強制されるであろう
−アレイ・リセット すべてのエンプティ・ビットがハイにセットされるとき
、すべてのMワードはエンプティにセットされ、新しい
データのために利用可能である。
【図面の簡単な説明】
第1図は、この発明のエレメントを示す機能ブロック図
である。 第2図は、この発明によるCAMアレイ・プロセッサの
形状の細部をさらに示すブロック図である。 第3図は、ワード・マスキングおよびワード・リセッテ
ィングまたはアレイ・リセッティングのためにこの発明
において使用される論理の一部を示す図である。 図において、1はビット・ライン記述子回路、2は行デ
コーダ、3はビット−ライン・プリチャージ回路、4は
ワード・マスキングおよびリセット回路、5はマツチ検
出器、6は優先順位エンコーダ、7は制御論理ネットワ
ーク、/Oは16ビツトバス、14はセンスアンプ、1
7はCAMレジスタ、18はマスク・レジスタ、1つは
被比較数レジスタ、36は記述子エレメントを示す。 特許出願人 アドバンスト・マイクロ・ディバイシズ・
インコーポレーテッド

Claims (9)

    【特許請求の範囲】
  1. (1)内容でアドレス指定可能なメモリ・システムであ
    り、 Nビット・ワード×Mワード・セルのアレイ内の行およ
    び列に配列される複数のメモリ・セルと、前記アレイを
    介して延び、前記メモリ・セル内の異なるワードをアド
    レス指定するための複数のワード・ラインとを含み、前
    記ワードの各々は、前記アレイ内を第1の方向に延びる
    、前記セルのうちの複数の隣接するセルを含み、 前記アレイを介して、前記ワード・ラインと平行に前記
    第1の方向に延びる複数のマッチ・ラインと、 前記アレイを介して、前記第1の方向に対して垂直な第
    2の方向に延びる複数のビット・ラインとを含み、前記
    ビット・ラインの各々は、前記アレイを介して前記第2
    の方向に延びる前記セルの1つの列内の前記セルと通信
    し、 前記ビット・ラインは対で配置され、前記ビット・ライ
    ンの対は前記列の各々の前記セルの各々と通信する、シ
    ステム。
  2. (2)I/Oバスと、 ビット・ラインの前記対の各々に関連するビット・ライ
    ン記述子回路とを含み、 前記ビット・ライン記述子回路は、 非比較数レジスタと、 マスク・レジスタと、 センスアンプと、 プログラム可能なビット・ライン書込回路とを含み、 前記セルに書込まれるべきデータを前記データ・バスか
    ら前記被比較数レジスタへ供給するための手段と、 書込まれるべき前記データを前記被比較数レジスタから
    前記プログラム可能なビット・ライン書込回路へ供給す
    るための手段と、 書込まれるべき前記データを前記プログラム可能なビッ
    ト・ライン書込回路から、前記列の所与の1つのうちの
    前記ビット・ラインの前記対のすべてに供給するための
    手段とをさらに含む、特許請求の範囲第1項に記載の、
    システム。
  3. (3)前記センスアンプの1つを関連する列のビット・
    ラインの前記対に接続し、前記ワード・ラインの1つに
    よって能動化された前記列内の前記セルの1つからデー
    タを読出すための手段を含む、 特許請求の範囲第2項に記載の、システム。
  4. (4)前記セル内に記憶されたデータについてマッチ動
    作を行なうための手段を含み、前記マッチを行なう手段
    は、 前記ワード選択ラインを不能化するための手段と、 選択されたマッチを前記被比較数レジスタおよび前記マ
    スク・レジスタから前記プログラム可能なビット・ライ
    ンへ供給するため手段と、 前記選択されたマッチ・データを前記セル内のデータと
    同時に比較するための手段と、 前記選択されたマッチ・データと、前記セル内の前記デ
    ータとの間のマッチの発生を検出するための手段とをさ
    らに含む、 特許請求の範囲第2項に記載の、システム。
  5. (5)前記セル内に記憶されるべきデータについてマス
    キング動作を行なうための手段を含み、前記マスクを行
    なう手段は、 前記セル内でマスクされるべきデータ・ビットに対応す
    る選択された信号ビットを前記マスク・レジスタへ供給
    するための手段と、 前記セルに記憶されるべきデータ・ビットを供給するた
    めの手段と、 前記供給されたデータ・ビットを前記マスク・レジスタ
    の内容と比較し、マスクされるべき前記データ・ビット
    に対応する前記選択された信号ビットに対応するビット
    を、前記供給されたデータ・ビットから除去するための
    手段と、 前記比較の後に残存する前記供給されたビットを前記セ
    ルに伝達するための手段とをさらに含む、特許請求の範
    囲第2項に記載の、システム。
  6. (6)記憶されるべき前記供給されたビットがI/Oバ
    スから前記被比較数レジスタへ伝送される、 特許請求の範囲第5項に記載の、システム。
  7. (7)前記セル内にマスクされるべきデータに対応する
    前記選択された信号ビットが前記被比較数レジスタから
    前記マスク・レジスタへ伝送される、 特許請求の範囲第6項に記載の、システム。
  8. (8)前記セル内にマスクされるべきデータに対応する
    前記選択された信号ビットが、まず前記I/Oバスから
    前記被比較数レジスタへ、次に前記マスク・レジスタへ
    伝送され、記憶されるべき前記供給されたビットは前記
    I/Oバスから前記被比較数レジスタへ伝送される、 特許請求の範囲第7項に記載の、システム。
  9. (9)前記被比較数レジスタおよび前記マスク・レジス
    タが、前記I/Oバスのビット容量の倍数であるビット
    容量を有する、特許請求の範囲第5項に記載の、システ
    ム。
JP1117162A 1988-05-11 1989-05-10 内容でアドレス指定可能なメモリ・システム Expired - Fee Related JP3006715B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/193,315 US4928260A (en) 1988-05-11 1988-05-11 Content addressable memory array with priority encoder
US193315 1988-05-11

Publications (2)

Publication Number Publication Date
JPH0271497A true JPH0271497A (ja) 1990-03-12
JP3006715B2 JP3006715B2 (ja) 2000-02-07

Family

ID=22713125

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1117162A Expired - Fee Related JP3006715B2 (ja) 1988-05-11 1989-05-10 内容でアドレス指定可能なメモリ・システム

Country Status (5)

Country Link
US (1) US4928260A (ja)
EP (1) EP0341897B1 (ja)
JP (1) JP3006715B2 (ja)
AT (1) ATE156281T1 (ja)
DE (1) DE68928213T2 (ja)

Families Citing this family (82)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5072422A (en) * 1989-05-15 1991-12-10 E-Systems, Inc. Content-addressed memory system with word cells having select and match bits
JPH03219326A (ja) * 1990-01-24 1991-09-26 Mitsubishi Electric Corp データ比較回路
DE69132367T2 (de) * 1990-05-31 2001-02-22 Stmicroelectronics, Inc. Inhaltsadressierbarer Speicher
US5123105A (en) * 1990-06-25 1992-06-16 Advanced Micro Devices, Inc. Priority encoder for a content addressable memory
US5491806A (en) * 1990-06-26 1996-02-13 Lsi Logic Corporation Optimized translation lookaside buffer slice having stored mask bits
SE9002558D0 (sv) * 1990-08-02 1990-08-02 Carlstedt Elektronik Ab Processor
US5319763A (en) * 1991-04-02 1994-06-07 Motorola, Inc. Data processor with concurrent static and dynamic masking of operand information and method therefor
JP3015493B2 (ja) * 1991-04-26 2000-03-06 株式会社東芝 半導体連想記憶装置
US5249152A (en) * 1991-06-20 1993-09-28 Unisys Corporation Bookkeeping memory
JP2728819B2 (ja) * 1991-12-18 1998-03-18 川崎製鉄株式会社 半導体集積回路
US5999434A (en) 1992-01-10 1999-12-07 Kawasaki Steel Corporation Hierarchical encoder including timing and data detection devices for a content addressable memory
US5619446A (en) * 1992-01-10 1997-04-08 Kawasaki Steel Corporation Hierarchical encoder including timing and data detection devices for a content addressable memory
FR2687004B1 (fr) * 1992-01-31 1994-03-18 France Telecom Architecture de memoire associative.
US5257220A (en) * 1992-03-13 1993-10-26 Research Foundation Of The State Univ. Of N.Y. Digital data memory unit and memory unit array
US5351208A (en) * 1992-04-27 1994-09-27 Integrated Information Technology, Inc. Content addressable memory
US5383146A (en) * 1992-06-08 1995-01-17 Music Semiconductors, Inc. Memory with CAM and RAM partitions
US5454094A (en) * 1993-06-24 1995-09-26 Hal Computer Systems, Inc. Method and apparatus for detecting multiple matches in a content addressable memory
DE69425209T2 (de) * 1993-09-20 2001-03-15 Codex Corp., Mansfield Verbindungsverfahren und -anordnung für inhaltsadressierbaren Speicher
US5586288A (en) * 1993-09-22 1996-12-17 Hilevel Technology, Inc. Memory interface chip with rapid search capability
FR2713797B1 (fr) * 1993-12-13 1996-02-09 Matra Mhs Contrôleur de protocole d'accès par une unité centrale à des unités périphériques.
US6122706A (en) * 1993-12-22 2000-09-19 Cypress Semiconductor Corporation Dual-port content addressable memory
US5491757A (en) * 1993-12-22 1996-02-13 Humphrey Instruments, Inc. Field tester gaze tracking using content addressable memories to improve image data analysis speed
US5860085A (en) * 1994-08-01 1999-01-12 Cypress Semiconductor Corporation Instruction set for a content addressable memory array with read/write circuits and an interface register logic block
US5649149A (en) * 1994-08-01 1997-07-15 Cypress Semiconductor Corporation Integrated content addressable memory array with processing logical and a host computer interface
US5646878A (en) * 1995-06-02 1997-07-08 Motorola, Inc. Content addressable memory system
US5964857A (en) * 1997-05-30 1999-10-12 Quality Semiconductor, Inc. Priority encoder for a content addressable memory system
US6199140B1 (en) * 1997-10-30 2001-03-06 Netlogic Microsystems, Inc. Multiport content addressable memory device and timing signals
US6148364A (en) * 1997-12-30 2000-11-14 Netlogic Microsystems, Inc. Method and apparatus for cascading content addressable memory devices
EP0936625A3 (en) 1998-02-17 2003-09-03 Texas Instruments Incorporated Content addressable memory (CAM)
US6219748B1 (en) 1998-05-11 2001-04-17 Netlogic Microsystems, Inc. Method and apparatus for implementing a learn instruction in a content addressable memory device
US6240485B1 (en) 1998-05-11 2001-05-29 Netlogic Microsystems, Inc. Method and apparatus for implementing a learn instruction in a depth cascaded content addressable memory system
US6381673B1 (en) * 1998-07-06 2002-04-30 Netlogic Microsystems, Inc. Method and apparatus for performing a read next highest priority match instruction in a content addressable memory device
US6081440A (en) * 1998-11-05 2000-06-27 Lara Technology, Inc. Ternary content addressable memory (CAM) having fast insertion and deletion of data values
US6266262B1 (en) 1998-11-05 2001-07-24 Lara Technology, Inc. Enhanced binary content addressable memory for longest prefix address matching
US6237061B1 (en) 1999-01-05 2001-05-22 Netlogic Microsystems, Inc. Method for longest prefix matching in a content addressable memory
US6460112B1 (en) 1999-02-23 2002-10-01 Netlogic Microsystems, Llc Method and apparatus for determining a longest prefix match in a content addressable memory device
US6499081B1 (en) 1999-02-23 2002-12-24 Netlogic Microsystems, Inc. Method and apparatus for determining a longest prefix match in a segmented content addressable memory device
US6574702B2 (en) 1999-02-23 2003-06-03 Netlogic Microsystems, Inc. Method and apparatus for determining an exact match in a content addressable memory device
US6539455B1 (en) 1999-02-23 2003-03-25 Netlogic Microsystems, Inc. Method and apparatus for determining an exact match in a ternary content addressable memory device
US6892272B1 (en) 1999-02-23 2005-05-10 Netlogic Microsystems, Inc. Method and apparatus for determining a longest prefix match in a content addressable memory device
US6420990B1 (en) 1999-03-19 2002-07-16 Lara Technology, Inc. Priority selection circuit
US6137707A (en) * 1999-03-26 2000-10-24 Netlogic Microsystems Method and apparatus for simultaneously performing a plurality of compare operations in content addressable memory device
US6317349B1 (en) 1999-04-16 2001-11-13 Sandisk Corporation Non-volatile content addressable memory
US6166938A (en) * 1999-05-21 2000-12-26 Sandisk Corporation Data encoding for content addressable memories
US6157558A (en) * 1999-05-21 2000-12-05 Sandisk Corporation Content addressable memory cell and array architectures having low transistor counts
US6505270B1 (en) 1999-07-02 2003-01-07 Lara Technology, Inc. Content addressable memory having longest prefix matching function
US6934795B2 (en) * 1999-09-23 2005-08-23 Netlogic Microsystems, Inc. Content addressable memory with programmable word width and programmable priority
US7272027B2 (en) * 1999-09-23 2007-09-18 Netlogic Microsystems, Inc. Priority circuit for content addressable memory
US6542391B2 (en) * 2000-06-08 2003-04-01 Netlogic Microsystems, Inc. Content addressable memory with configurable class-based storage partition
US7143231B1 (en) 1999-09-23 2006-11-28 Netlogic Microsystems, Inc. Method and apparatus for performing packet classification for policy-based packet routing
US6751701B1 (en) 2000-06-14 2004-06-15 Netlogic Microsystems, Inc. Method and apparatus for detecting a multiple match in an intra-row configurable CAM system
US6567340B1 (en) 1999-09-23 2003-05-20 Netlogic Microsystems, Inc. Memory storage cell based array of counters
US6799243B1 (en) 2000-06-14 2004-09-28 Netlogic Microsystems, Inc. Method and apparatus for detecting a match in an intra-row configurable cam system
US6757779B1 (en) 1999-09-23 2004-06-29 Netlogic Microsystems, Inc. Content addressable memory with selectable mask write mode
US6944709B2 (en) * 1999-09-23 2005-09-13 Netlogic Microsystems, Inc. Content addressable memory with block-programmable mask write mode, word width and priority
US7487200B1 (en) 1999-09-23 2009-02-03 Netlogic Microsystems, Inc. Method and apparatus for performing priority encoding in a segmented classification system
US6795892B1 (en) 2000-06-14 2004-09-21 Netlogic Microsystems, Inc. Method and apparatus for determining a match address in an intra-row configurable cam device
US7110407B1 (en) 1999-09-23 2006-09-19 Netlogic Microsystems, Inc. Method and apparatus for performing priority encoding in a segmented classification system using enable signals
US6647457B1 (en) 1999-11-16 2003-11-11 Cypress Semiconductor Corporation Content addressable memory having prioritization of unoccupied entries
US6591331B1 (en) * 1999-12-06 2003-07-08 Netlogic Microsystems, Inc. Method and apparatus for determining the address of the highest priority matching entry in a segmented content addressable memory device
US6839795B1 (en) * 2000-05-31 2005-01-04 Silicon Labs Cp, Inc. Priority cross-bar decoder
US7171542B1 (en) * 2000-06-19 2007-01-30 Silicon Labs Cp, Inc. Reconfigurable interface for coupling functional input/output blocks to limited number of i/o pins
DE60211761T2 (de) * 2001-01-19 2007-05-24 President Of Hiroshima University, Higashihiroshima Inhaltsadressierbarer Halbleiterspeicher
US6910097B1 (en) 2001-04-09 2005-06-21 Netlogic Microsystems, Inc. Classless interdomain routing using binary content addressable memory
AU2002214240A1 (en) * 2001-11-05 2003-06-10 Hywire Ltd. Ram-based range content addressable memory
JP3881869B2 (ja) * 2001-11-05 2007-02-14 株式会社ルネサステクノロジ 半導体記憶装置
US6671218B2 (en) * 2001-12-11 2003-12-30 International Business Machines Corporation System and method for hiding refresh cycles in a dynamic type content addressable memory
US7301961B1 (en) 2001-12-27 2007-11-27 Cypress Semiconductor Corportion Method and apparatus for configuring signal lines according to idle codes
US7171595B1 (en) * 2002-05-28 2007-01-30 Netlogic Microsystems, Inc. Content addressable memory match line detection
US7401181B1 (en) 2002-05-29 2008-07-15 Core Networks Llc System and method for comparand reuse
US7272684B1 (en) 2002-06-26 2007-09-18 Netlogic Microsystems, Inc. Range compare circuit for search engine
US7206212B1 (en) 2002-08-13 2007-04-17 Netlogic Microsystems, Inc. Content addressable memory (CAM) device with entries having ternary match and range compare functions
US6577520B1 (en) 2002-10-21 2003-06-10 Integrated Device Technology, Inc. Content addressable memory with programmable priority weighting and low cost match detection
US6804132B2 (en) * 2002-11-25 2004-10-12 International Business Machines Corporation Circuit for multiple match hit CAM readout
US6864810B2 (en) * 2003-07-24 2005-03-08 Micron Technology, Inc. Converting digital signals
US6831587B1 (en) 2003-07-31 2004-12-14 Micron Technology, Inc. Priority encoding
US7152141B2 (en) * 2003-07-31 2006-12-19 Micron Technology, Inc. Obtaining search results for content addressable memory
US7436688B1 (en) 2005-05-06 2008-10-14 Netlogic Microsystems, Inc. Priority encoder circuit and method
US7570503B1 (en) 2005-05-20 2009-08-04 Netlogic Microsystems, Inc. Ternary content addressable memory (TCAM) cells with low signal line numbers
US8717793B2 (en) 2009-05-26 2014-05-06 Arizona Board Of Regents, For And On Behalf Of Arizona State University Longest prefix match internet protocol content addressable memories and related methods
US8438330B2 (en) 2010-05-17 2013-05-07 Netlogic Microsystems, Inc. Updating cam arrays using prefix length distribution prediction
US20230100785A1 (en) * 2021-09-28 2023-03-30 Nvidia Corporation Priority encoder-based techniques for computing the minimum or the maximum of multiple values

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3195109A (en) * 1962-04-02 1965-07-13 Ibm Associative memory match indicator control
US3633182A (en) * 1969-08-26 1972-01-04 Bell Telephone Labor Inc Content addressable memory cell
US4065756A (en) * 1976-03-15 1977-12-27 Burroughs Corporation Associative memory with neighboring recirculated paths offset by one bit
DE2712575C2 (de) * 1977-03-22 1985-12-19 Walter Dipl.-Ing. 8011 Putzbrunn Motsch Assoziatives Speichersystem in hochintegrierter Halbleitertechnik
US4296475A (en) * 1978-12-19 1981-10-20 U.S. Philips Corporation Word-organized, content-addressable memory
US4404653A (en) * 1981-10-01 1983-09-13 Yeda Research & Development Co. Ltd. Associative memory cell and memory unit including same
US4670858A (en) * 1983-06-07 1987-06-02 Tektronix, Inc. High storage capacity associative memory
US4794559A (en) * 1984-07-05 1988-12-27 American Telephone And Telegraph Company, At&T Bell Laboratories Content addressable semiconductor memory arrays
US4723224A (en) * 1986-01-02 1988-02-02 Motorola, Inc. Content addressable memory having field masking

Also Published As

Publication number Publication date
DE68928213D1 (de) 1997-09-04
JP3006715B2 (ja) 2000-02-07
EP0341897A3 (en) 1992-10-28
EP0341897B1 (en) 1997-07-30
EP0341897A2 (en) 1989-11-15
ATE156281T1 (de) 1997-08-15
DE68928213T2 (de) 1998-02-26
US4928260A (en) 1990-05-22

Similar Documents

Publication Publication Date Title
US4928260A (en) Content addressable memory array with priority encoder
US4890260A (en) Content addressable memory array with maskable and resettable bits
US4888731A (en) Content addressable memory array system with multiplexed status and command information
US4975873A (en) Content addressable memory with flag storage to indicate memory state
US5752260A (en) High-speed, multiple-port, interleaved cache with arbitration of multiple access addresses
US4051460A (en) Apparatus for accessing an information storage device having defective memory cells
US5184325A (en) Dynamic associative memory with logic-in-refresh
US5319763A (en) Data processor with concurrent static and dynamic masking of operand information and method therefor
AU626051B2 (en) High performance memory system
US3402398A (en) Plural content addressed memories with a common sensing circuit
US5341500A (en) Data processor with combined static and dynamic masking of operand for breakpoint operation
US3588830A (en) System for using a memory having irremediable bad bits
US5396448A (en) Associative memory system with hit entry detection circuit
JPS635839B2 (ja)
US6169685B1 (en) Content addressable memories
US6525987B2 (en) Dynamically configured storage array utilizing a split-decoder
US5220526A (en) Method and apparatus for indicating a duplication of entries in a content addressable storage device
US20050044307A1 (en) Content addressable memory (CAM) device employing a recirculating shift register for data storage
WO1991007754A1 (en) Read-while-write-memory
US4982379A (en) Semiconductor memory device having associative function
US7577784B1 (en) Full-ternary content addressable memory (CAM) configurable for pseudo-ternary operation
US20070168779A1 (en) Testing of a CAM
US5459691A (en) Memory circuit
JPH03113897A (ja) 半導体記憶装置
JP2564942B2 (ja) 選択的連想記憶装置及びその制御方法

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees