JPH0245277B2 - - Google Patents

Info

Publication number
JPH0245277B2
JPH0245277B2 JP59117420A JP11742084A JPH0245277B2 JP H0245277 B2 JPH0245277 B2 JP H0245277B2 JP 59117420 A JP59117420 A JP 59117420A JP 11742084 A JP11742084 A JP 11742084A JP H0245277 B2 JPH0245277 B2 JP H0245277B2
Authority
JP
Japan
Prior art keywords
match
word
memory
data
signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP59117420A
Other languages
English (en)
Other versions
JPS605498A (ja
Inventor
Ei Arumii Toomasu
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.)
Tektronix Inc
Original Assignee
Tektronix 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 Tektronix Inc filed Critical Tektronix Inc
Publication of JPS605498A publication Critical patent/JPS605498A/ja
Publication of JPH0245277B2 publication Critical patent/JPH0245277B2/ja
Granted 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; CALCULATING OR 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)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、メモリのすべてのセルについて同時
にアドレスして検索できるように構成した連想メ
モリ装置に関する。
〔発明の背景〕
連想メモリ装置は、物理的ロケーシヨン(記憶
位置)ではなく、その記憶内容により検索を行な
うものである。他のメモリ装置と同様に、連想メ
モリ装置を構成する各セルは、1ビツトの情報を
記憶する。所定数の連続したビツトは、データの
1ワードを形成する。連想メモリの検索において
は、メモリ内のすべてのワードを一連のデータ・
ビツトから成る既知の検索パターンと同時に(並
列に)比較する。一致を検出すると、一致したワ
ードを記憶するセルの物理的ロケーシヨンを決定
する。連想メモリ装置の主な特徴は、本来1ワー
ドを検索する時間内にメモリ全体を迅速に検索で
きる点にある。
しかし、一般に、連想メモリ装置は、集積回路
として構成しても外部ピンを各メモリ・セルに接
続する必要があるため、その記憶容量が比較的小
さいという欠点がある。すなわち、各ピンを接続
する必要があるため、現在の集積技術を使用して
メモリ・セルの大きさを減少しようとしても制約
を受けざるをえなかつたのである。したがつて、
一般に連想メモリ装置のピン数を減らすことが望
ましく、それに応じて与えられた物理的メモリ空
間に対する連想メモリ装置の記憶容量を増すこと
ができる。
また、連想メモリ装置を構成するには通常相当
量の外部ロジツク回路を必要とするので、これら
外部ロジツク回路は連想メモリ装置を大形且つ高
価にしている。したがつて、連想メモリ装置の外
部ロジツクを最小にするのが望ましい。これらの
問題は、ラムらに与えられた米国特許第4257110
号及びモツチに与えられた米国特許第4159538号
に示されるように、当業者に或る程度認識されて
いた。
〔発明の目的〕
したがつて、本発明の目的は、安価にして小形
であるが記憶容量の大きな連想メモリ装置を提供
するにある。
〔発明の概要〕
本発明の連想メモリ装置は、複数のワード・ロ
ケーシヨンの各々に記憶されたワードのうち、マ
スクしないビツトのみを検索ワードの対応ビツト
と比較し、ワード・ロケーシヨン毎にその比較結
果信号を出力する連想メモリ配列(アレイ)と、
連想メモリ・アレイの各ワード・ロケーシヨンに
対応する比較結果信号を受け、それぞれ異なる優
先度をもつ複数の一致検出回路と、一致を表わす
比較結果信号を受けた一致検出回路のうち、優先
度が最も高い一致検出回路のみが発生する一致を
表わす出力信号に応答して、その一致したワード
を記憶したメモリ・アレイ内の物理的ロケーシヨ
ンを決定するロケーシヨン決定手段とを具えてい
る。
更に、本発明の連想メモリ装置は、物理的ロケ
ーシヨンによりメモリ・アレイにアクセスする手
段と、メモリ・アレイにデータをロード(格納)
し、且つこのメモリ・アレイからデータを読出す
手段とを含めてもよい。そうすると、本発明のメ
モリ装置は、連想メモリとしても、従来のメモリ
としても使用できる。
以下、図示の実施例に基いて本発明を具体的に
説明する。
〔発明の実施例〕
第1図は、本発明の実施例を全体的に示すブロ
ツク図である。データは、256×16のCAM
(content addressable memory−連想メモリ)
アレイ(以下単にCAMということもある。)11
に記憶させる。CAMアレイ11は、すべて同じ
ビツト長の所定数のデータ・ワードを記憶してい
る。マスク/データ駆動回路13及びアドレス・
デコーダ15は、共にCAM11に直接アクセス
する。一致検出ブロツク17は、各々がCAM1
1内の各ワードに対応する複数の一致検出回路で
構成する。CAM11の各ワード・ロケーシヨン
は、連想検索を行なう際にそのワードの一致又は
不一致を示す比較結果出力信号線を備えている。
CAM11からの出力信号線は、それぞれ対応す
る一致検出回路に接続される。各ワード・ロケー
シヨンに対応する各一致検出回路の出力信号をア
ドレス・エンコーダ(ロケーシヨン決定手段)1
9に供給し、このエンコーダ19よりメモリ出力
信号を得る。上述した全回路は、単一チツプ内に
形成しうる。よつて、連想メモリ装置に必要な付
加的外部ロジツク回路の量を大幅に減らすことが
できる。
メモリ用の制御ロジツクも、第1図に示されて
いる。チツプ・イネーブル(可能化)信号Eが
「高」で且つ連想モード信号Sが「低」のとき、
アンド・ゲート15aからの出力がアドレス・デ
コーダ15を可能化すなわち動作可能とする。第
1図の連想メモリ装置を1つのチツプとし、この
チツプを複数段設けた場合に、前段のどの一致検
出回路においても一致が検出されなかつた場合、
インバータ17aによりその一致検出回路17が
可能化される。一致出力信号Mが「高」であり、
且つ信号Sも「高」で連想モードを示す場合、ア
ンド・ゲート19aがアドレス・エンコーダ19
を可能化する。一致検出ブロツク17からの一致
出力線にも、制御ロジツクを設ける。一致信号
は、アンド・ゲート17bに供給する。信号Eが
「高」で、一致信号も「高」のとき、アンド・ゲ
ート17bの出力は「高」である。一致出力信号
Mは、線17cに供給される。また、アンド・ゲ
ート17bの出力をオア・ゲート17dの一方の
入力として供給する。このゲート17dの他方の
入力はアンド・ゲート17eの出力であり、この
出力は、信号Eが「低」で信号Sが「高」のとき
「高」である。オア・ゲート17dの出力Dは、
デイスエーブル(不能化)信号であり、メモリの
次のチツプを不能化(禁止)する。これらの詳細
については、またあとで述べる。
後述する如く、各一致検出回路及び駆動回路の
新規な構成並びにCAM11に対して信号線をマ
ルチプレクス(多重化)及びデマルチプレクス
(分離)するアドレス・エンコーダ及びデコーダ
を用いることにより、CAM11に必要なピン数
を減少することができる。このピン数の減少によ
り、本発明の連想メモリ装置においては、類似し
た従来の連想メモリ装置以上にデータ記憶密度を
増加できる。
第1図の装置は、普通モードで利用することも
できる。このモードでは、CAMはランダム・ア
クセス・メモリ(RAM)として作用し、アドレ
ス・デコーダ15が物理的ロケーシヨンに基いて
メモリ内のデータをアドレスする。デコーダ15
は従来型式のものであり、その詳細な説明は省略
する。上述の普通モードで装置が動作していると
きは、アドレス・エンコーダ19は可能化されな
い。この普通モードにおいては、詳細に後述する
ように、マスク/データ駆動回路13を介してデ
ータをメモリに書込み、それより読出す。
装置が連想モードで動作する場合、制御ロジツ
クにより、アドレス・デコーダ15は可能化され
ずアドレス・エンコーダ19が可能化される。
CAMの検索に用いる予め選択した検索ワードは、
マスク/データ駆動回路13に供給される。マス
ク/データ駆動回路13は、予め選択したパター
ンに応じてCAM11よりのマスク信号を発生す
る。データ・ワードのマスクされない各ビツトを
検索パターンと対比しつつ、1データ・ワードを
記憶した各メモリ・ロケーシヨンを並列にすなわ
ち同時に検索する。これら各メモリ・ロケーシヨ
ンからの出力線の比較結果信号は、そのロケーシ
ヨンにおけるワードの一致又は不一致を示す。ま
た、これらの連想検索に使われない検索ワードの
ビツト位置において、データをCAMから読出し
たり、これに書込んだりしうる。
CAM11からの出力信号は、複数の一致検出
回路17に供給される。連想メモリにおいて一致
を示す比較結果信号を発生するワード・ロケーシ
ヨンのうち、第1すなわち最下位のワード・ロケ
ーシヨンに対応する1つの一致検出回路のみが、
一致を示す出力を発生する。メモリ内に実際に一
致する複数のワードがあつたとしても、他のすべ
ての一致検出回路の出力は、一致を示さないで不
一致を示す。よつて、一致検出ブロツク17は、
実際上各一致検出回路が異なる優先度を有する一
致信号優先回路として作用する。ブロツク17内
の各一致検出回路は、一致信号及び多重一致信号
(メモリのもつと下位のワードで既に一致が生じ
ていた場合)を発生し、これらの信号を次の上位
一致検出回路に送る。一致検出回路のブロツク1
7から実際に1つでも一致信号出力があれば、こ
れは、アドレス・エンコーダ19に供給される。
このエンコーダは、従来のマルチプレクサであ
る。エンコーダ19は、一致したワードを格納し
ているCAM11内の物理的ロケーシヨンのアド
レスを決定(エンコード)する。
第2図は、CAM11内の単一のワード・ロケ
ーシヨンにおける単一のメモリ・セル、すなわち
1つのデータ・ワードの1ビツトを記憶するメモ
リ・セルの例を示すブロツク図である。なお、同
一のワード・ロケーシヨンの他のビツトのメモ
リ・セル(第2図と同じ構造)がワード選択線3
3に共通接続されている。上述の如く、CAM1
1及びその中の各記憶セルは、RAMモード又は
連想モードのいずれでも動作する。RAMモード
では、ランダムにアクセスされたワード・ロケー
シヨンにデータが書込まれたり、そのロケーシヨ
ンから読出されたりする。また、連想モードで
は、メモリに記憶されたデータは、並列にアドレ
スされて所定の検索パターンにより、すなわち内
容により検索される。
第2図において、マスク線21の状態及びS
(連想モード信号)信号線の状態により、第2図
に示すセルは、RAMモードで動作するか又は連
想モードで動作するかが決定される。S信号線
は、オア・ゲート22、ナンド・ゲート24及び
ナンド・ゲート(オープン・コレクタ)26の1
入力になつている。S信号線が「低」でマスク線
21も「低」の場合、ゲート22及び24の出力
信号が「高」となつて、セルはRAMモードにな
る。このとき、選択したワード・ロケーシヨンの
ワード選択線33を「高」として、データをセル
に書込んだり、セルから読出したりする。デー
タ・ビツトをラツチ25に書込む場合、データ線
23の1ビツトのデータは、ラツチ25のデータ
入力端子Dに加わり、アンド・ゲート28へのク
ロツク信号Cに制御されてラツチ25に書込まれ
る。これは、書込みの際ゲート22の出力が
「高」であり、読出し信号Rが「低」なので、ク
ロツク信号が「高」となるときのみ、ゲート28
の出力も「高」に変化してラツチ25をクロツク
するからである。アンド・ゲート28及び30へ
のR信号が「高」のとき、ゲート28の出力は常
に「低」のためラツチ25をクロツクせず、ま
た、ワード選択線33は「高」に維持されている
ので、ゲート30の出力が「高」となり、ラツチ
25のデータ出力端子Qに接続されたバツフア3
4を付勢する。よつて、1ビツトのデータがラツ
チ25からバツフア34を介してデータ線23に
読出される。CAM11のインタフエースである
アドレス・デコーダ15は、データの読出し及び
書込みのために、選択したワード選択線33を
「高」にしてメモリの実際の物理的(ワード)ロ
ケーシヨンをアクセスする。そのとき、メモリ内
のすべての他のロケーシヨンは、不能化される。
第3図は、第1図のマスク/データ駆動回路1
3の例を示すロジツク・ブロツク図であり、デー
タ・ワードの各ビツトに1個の駆動回路13が設
けられ、対応するビツトのメモリ・セルに共通接
続されている。第3図の回路により、データの読
出し・書込みが行なわれる。メモリがRAMモー
ドのとき、アンド・ゲート27へのM(一致)信
号入力は常に「高」である。アンド・ゲート27
へのR信号入力は、データをメモリから読出すと
き「高」であり、そうでないとき「低」である。
第3図に示す如く、2個のインバータを接続して
構成した双方向性駆動器29を介して、第2図に
示す各メモリセルに外部データ源(送信部)から
のデータの1ビツトを書込み、また読出す。第3
図の回路からのデータ出力線を第2図に示すメモ
リ・セルへのデータ線23に接続する。データ
送/受信部の表示は、予め選択した外部データ源
(送信部)又はデータ受信部を表わす。
第1図の装置全体が連想検索を行なう連想モー
ドにあるとき、アドレス・デコーダ15は可能化
されず、アドレス・エンコーダ19は可能化さ
れ、S信号線が「高」になる(第1及び第2図)。
連想検索に用いる検索ワードにおいて予め選択し
たビツト位置に対して、マスク信号(ゲート2
2,24,26の入力)は「高」である。すなわ
ち、マスクするビツトに対しては、マスク信号は
「低」になる。マスクしないビツト位置に対応し
たCAMのセルは、ゲート28及び30の出力が
常に「低」なので、読出し・書込みができない。
第3図からのマスク線は、第2図に示すマスク線
21に接続される。クロツク信号入力により、マ
スク・ラツチ31は外部データ送信部からのデー
タをロード(格納)する。上述の如く、ラツチ3
1の「高」状態(Qが「高」)は、検索ワードの
ビツト位置を連想検索に用いることを示し、一
方、「低」状態は、検索ワードのビツト位置を検
索に用いず常に実際上RAMモードであることを
示す。マスク線21及びデータ線23の両方は、
実質的には連想メモリ装置の各ワード・ロケーシ
ヨンの各メモリ・セルに共通に接続されているバ
ス線である。マスク及びデータ駆動用に同じピン
を用いうるので、ピンを節約することができる。
1本のワード選択線33が、1データ・ワード
を1グループとして収容するメモリの幅にわたつ
て、第2図のセル及び残りの全セルに接続され
る。したがつて、ワード選択線33は、実際上メ
モリ内の1ワード・ロケーシヨンを貫通する1本
のバス線である。CAM11の各ワード・ロケー
シヨンはそれを貫通して延びるワード選択線33
をバス線として有し、これらのワード選択線33
がCAM11の出力線である。
ワード選択線33は、最初「高」である。マス
ク信号が「高」になつたビツト位置において、ラ
ツチ31の出力が「低」となるので、ゲート2
7の出力も「低」となり、検索パターンが双方向
性駆動器29を通過し、排他的オア・ゲート35
によりラツチ25のデータ出力端子Qからのデー
タと比較される。S信号及びマスク信号が共に
「高」なので、ゲート35の出力はゲート26に
より反転されてワード選択線33に出力される。
データが一致した場合、ゲート35の出力が
「高」となり、線33は「高」のままである。し
かし、データが一致しない場合、ゲート35の出
力が「高」となり、ナンド・ゲート26はワード
選択線33を「低」にする。与えられたワード内
のどれか1つのビツトが不一致ならば、ワード選
択線33はそれに引き込まれて「低」になる。し
たがつて、メモリからの線33が「低」であると
きは、メモリ内容がその特定ワードに対して不一
致であることを示し、逆に「高」のときは一致し
たことを示す。
第4図は、第1図の一致検出ブロツク17内の
1個の一致検出回路の例を示すロジツク・ブロツ
ク図である。CAMアレイ11の各ワードに対し
てこの回路が1個あるので、CAM11からの各
ワード選択線33に対してこの回路が1個あるこ
とになる。連想メモリ装置内の複数の一致検出回
路17の動作の主要目的は、設定した優先順に一
致信号をアドレス・エンコーダ19に送り入むこ
とである。1ワードを記憶した1組のメモリ・セ
ルからのワード選択線33は、アンド・ゲート4
1の一方の入力に接続される。アンド・ゲート4
1の他方の入力は可能化信号Eであり、この信号
は、装置が連想モードで動作しているとき「高」
である。アンド・ゲート41の出力は、オア・ゲ
ート43及び出力アンド・ゲート45に供給され
る。出力アンド・ゲート45の他の入力には、メ
モリ・アレイの前段すなわち1つの下位のワー
ド・ロケーシヨンに対する一致検出回路からの一
致線47が接続される。出力アンド・ゲート45
の出力は、アドレス・エンコーダ19に供給され
る。
メモリのどれか前のワードが一致していた場
合、一致線47の信号は「高」となる。また、そ
うでない場合は、線47の信号は「低」となる。
線47の信号が前に一致がないことを示す「低」
であり、アンド・ゲート41からの信号が現在の
ワードは一致していることを示す「高」ならば、
出力アンド・ゲート45の出力は「高」となる。
線47の信号が前に一致があることを示す「高」
ならば、ゲート45の出力は「低」である。した
がつて、一致検出ブロツクからの複数の出力線の
うち1つの出力線のみが「高」となり、メモリに
いくつの一致があつても無関係である。この一致
信号は、メモリにおける最初の、すなわち最も下
位のワードで検索ワードと一致したことを示す。
アンド・ゲート41の出力及び1つ前の一致検
出回路からの一致線47の信号は、オア・ゲート
43の入力として供給される。オア・ゲート43
の出力線49は、次の一致検出回路に対する一致
線となる。ひとたび一致が生じると、すべての上
位の一致検出回路の出力一致線は「高」となる。
複数の一致検出回路のうち選択したものに一致
先送り入力源を設けることにより、連想検索の速
度及びメモリ装置全体の性能を改善することがで
きる。この一致先送り入力源を第4図に線51で
示す。例えば、256×16のCAMアレイにおいては
4個の一致検出回路にかかる線51を設ける。先
送り線は、図示の一致検出回路よりもアレイにお
いて所定数だけ下位の位置にある一致検出回路か
らの一致指示を先送りするものである。一実施例
において、先送りは、アレイの大きさの平方根に
基づいており16個先の位置に先送りする。この結
果、メモリ装置全体として一致の通報が非常に迅
速に行なわれることになり、性能が改善される。
各一致検出回路及び全体としての一致検出回路
ブロツク17は、更に線53(第4図)に多重一
致指示を行なう。多重一致線53は、バス線であ
つて各一致検出回路に接続されている。ナンド・
ゲート55(オープン・コレクタ)の一方の入力
である線56に前段の一致指示があり、他の入力
である線33に現在の一致指示があれば、多重一
致指示が出される。この状態が生じると、線53
は「低」になり、ナンド・ゲート55の動作によ
り「低」を維持する。
複数の一致検出回路の出力線(ゲート45の出
力端子)を従来のアドレス・エンコーダ19に接
続する。このエンコーダ19は、装置が連想モー
ドのときに可能化される。上述の如く、一致検出
回路からアドレス・エンコーダ19への線のうち
1本だけが、すなわち、最初に一致したメモリ最
下位のワードに対応する特定の線が「高」にな
る。次に、アドレス・エンコーダ19はメモリ内
のその特定ワードを探し、そのロケーシヨンを指
示する。アドレス・エンコーダ19をメモリ・チ
ツプ自体に設けることにより、外部ロジツクを節
約できる。
第5図は、CMA及びRAMを用いてカスケー
ド接続したメモリ装置を示す。その実効的な幅
は、16ビツトではなく32ビツトである。第5図の
メモリは、連想モード又はRAMモードで動作す
る。メモリ全体が連想モード又はRAMモードで
あつても、RAM58及び59は常にRAMとし
て働く。CAM60及び61は、メモリが連想モ
ードのときにCAMとして働き、また、メモリが
RAMモードのときに上述した方法でRAMとし
て働く。2個のCAMと2個のRAMを図示した
が、図と同様の構成により他のCAM及びRAM
を付加してメモリ全体を更に大きくすることがで
きる。
このメモリ装置がRAMモードで動作している
とき、データが書込まれているか読出されている
かに関係なくS信号線62は「低」であり、R信
号線63は「低」又は「高」である。ロード/マ
スク線64は、上述の方法でマスク・ラツチをク
ロツクする。メモリ内の所望のアドレス・ロケー
シヨンは、アドレス線65及び66に与えられ
る。初めに、装置内の複数のCAMからただ1つ
のCAMを選択し、その特定のCAMからの一致出
力Mが、対応したRAMのチツプ選択入力端CSを
介してそのRAMを駆動状態にする。読出し及び
書込みにおいて、同じ選択処理を行なう。線65
及び66並びにCAM及びRAMのアドレス入力
端Aを介して入力されるアドレスにより、メモリ
の所望アドレスが正確にアクセスされる。データ
はCAMアレイ及びRAMアレイに対応するデー
タ線68及び69を介して書込まれ、また読出さ
れる。
このメモリ装置が連想モードのとき、S信号線
62は「高」であり、RAMの読出し・書込み作
用は不能化される。検索パターンは、CAMデー
タ線68を介してメモリ装置に供給され、上述し
た如くメモリの内容と比較される。各CAMは、
2個の可能化端子Eを備えている。一方の可能化
入力は、2個のノア・ゲート71及び73で構成
されるアドレス・デコーダ70からのものであ
る。ノア・ゲート71及び73は各CAMの一方
の可能化線を「低」にするので、CAMはすべて
動作状態となる。各CAMから次のCAMの他方の
可能化端子EへのD出力は、不能化信号である。
前のCAMにおいて一致が生じると、このD出力
線は「高」となる。この不能化信号はすべての連
続したCAMに供給されるので、そのメモリから
の線75の信号は、そのメモリにおいて実際に一
致が生じたことを示す。
CAMのどれかに多重一致が生じると、抵抗器
76を含む回路に対して出力端子MMがその指示
を発生するので、メモリ装置内の多重一致の指示
が線77に生じる。連想モードにおいて装置一致
があつたときのみ、アドレス線65及び66が可
能化される。これにより、この装置から出力を得
ることが可能となる。
よつて、第5図の構成により、連想検索能力を
犠牲にすることなく、連想メモリの実効的なワー
ド長を著しく延ばすことができる。更に、第5図
の構成は、多くの外部ロジツクを用いることな
く、いかに連想メモリの長さを都合よく延ばせる
かを示している。装置が連想モードのとき、
CAMからの一致線を介して対応するRAMを選
択し、アドレス線を用いてRAMの適当なロケー
シヨンに直接アクセスするので、RAMのデコー
ド用ロジツクは不要である。
〔発明の効果〕
以上説明したとおり、本発明の連想メモリ装置
によれば、次の如き顕著な効果が得られる。
(イ) マスク/データ駆動回路は共通の信号線から
マスク・データ及び検索ワードを受けるので、
本発明の連想メモリ装置を集積回路にした場
合、外部ピンの数を減らすことができる。(な
お、マスク・データはラツチしておくので、連
想メモリ・アレイにマスク・データ及び検索ワ
ードを同時に供給できる。) (ロ) 複数の一致検出回路は異なる優先度を有する
ので、複数の一致検出回路が連想メモリ・アレ
イから一致を表わす比較結果信号を同時に受け
ても、優先度が最も高い一致検出回路のみが一
致を表わす出力信号を発生する。したがつて、
複数の一致検出回路が一致状態の出力信号を同
時に発生しないので、その出力信号の処理が簡
単となる。
(ハ) 1個の一致検出回路のみが一致を表わす出力
信号を発生するので、エンコーダにより複数の
一致検出回路からの出力信号を簡単にエンコー
ドして、全体の出力ビツト数を減少できる。し
たがつて、本発明の連想メモリ装置を集積回路
化した場合、外部ピンの数を更に減らすことが
できる。
(ニ) 集積回路にした場合、メモリ・セルに対する
外部ピンの数を減らせるので、外部ピンの数が
一定のとき、一層多くのメモリ・セルを設ける
ことができる。よつて、記憶容量を増すことが
できる。
【図面の簡単な説明】
第1図は本発明の実施例の全体を示すブロツク
図、第2図は第1図のCAMアレイ内の単一のメ
モリ・セルの例を示すロジツク・ブロツク図、第
3図は第1図のマスク/データ駆動回路の例を示
すロジツク・ブロツク図、第4図は第1図の一致
検出ブロツク内の1個の一致検出回路の例を示す
ロジツク・ブロツク図、第5図はカスケード接続
した場合の本発明の実施例を示すロジツク・ブロ
ツク図である。 11……連想メモリ配列、13……マスク/デ
ータ駆動回路、17……一致検出回路、19……
エンコーダ、31……第1ラツチ回路、25……
第2ラツチ回路、35……比較手段。

Claims (1)

  1. 【特許請求の範囲】 1 マスク・データ及び検索ワードを共通の信号
    線から受けると共に、該信号線からの上記マス
    ク・データをラツチする第1ラツチ回路を有する
    マスク/データ駆動回路と、 各ワード・ロケーシヨンの各ビツト毎に第2ラ
    ツチ回路及び比較手段を有し、上記各ワード・ロ
    ケーシヨンの上記第2ラツチ回路に記憶されたワ
    ードのうち、上記駆動回路の上記第1ラツチ回路
    にラツチされた上記マスク・データに応じたマス
    クしないビツトのみを、上記駆動回路からの上記
    検索ワードの対応ビツトと上記比較手段により比
    較し、上記各ワード・ロケーシヨン毎に比較した
    全ビツトが一致した場合のみ一致状態を表わす比
    較結果信号を出力する連想メモリ配列と、 該連想メモリ配列の上記各ワード・ロケーシヨ
    ンに対応する上記比較結果信号をそれぞれ受ける
    と共に、それぞれ異なる所定の優先度を有し、複
    数の上記比較結果信号が一致状態を表わす場合、
    上記優先度の最も高いもののみが一致状態を表わ
    す出力信号を発生する複数の一致検出回路と、 該一致検出回路からの出力信号をエンコードす
    るエンコーダとを具えた連想メモリ装置。
JP59117420A 1983-06-07 1984-06-07 連想メモリ装置 Granted JPS605498A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/502,047 US4670858A (en) 1983-06-07 1983-06-07 High storage capacity associative memory
US502047 1990-03-30

Publications (2)

Publication Number Publication Date
JPS605498A JPS605498A (ja) 1985-01-12
JPH0245277B2 true JPH0245277B2 (ja) 1990-10-08

Family

ID=23996108

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59117420A Granted JPS605498A (ja) 1983-06-07 1984-06-07 連想メモリ装置

Country Status (2)

Country Link
US (1) US4670858A (ja)
JP (1) JPS605498A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1994024672A1 (en) * 1993-04-19 1994-10-27 Oki Electric Industry Co., Ltd. Circuit for decoding variable-length code, and system for decoding variable-length code which uses the circuit

Families Citing this family (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4744053A (en) * 1985-07-22 1988-05-10 General Instrument Corp. ROM with mask programmable page configuration
US4758982A (en) * 1986-01-08 1988-07-19 Advanced Micro Devices, Inc. Quasi content addressable memory
JPS62165793A (ja) * 1986-01-17 1987-07-22 Toshiba Corp 連想メモリ
US4858180A (en) * 1986-02-28 1989-08-15 Data General Corporation Content addressable memory and self-blocking driver
US4780845A (en) * 1986-07-23 1988-10-25 Advanced Micro Devices, Inc. High density, dynamic, content-addressable memory cell
US5045996A (en) * 1986-11-12 1991-09-03 Xerox Corporation Multiprocessor cache memory housekeeping
US5122984A (en) * 1987-01-07 1992-06-16 Bernard Strehler Parallel associative memory system
GB2200228B (en) * 1987-01-14 1991-08-07 Texas Instruments Ltd Content addressable memory
DE3801380A1 (de) * 1987-01-20 1988-07-28 Nec Corp Zeichenfolge-erkennungsvorrichtung mit einem speicher, dessen speicherbereiche selektiv zugreifbar sind
JPH0746310B2 (ja) * 1987-06-30 1995-05-17 三菱電機株式会社 半導体論理回路
JPH01223697A (ja) * 1988-03-01 1989-09-06 Mitsubishi Electric Corp 内容番地付け記憶装置
US4928260A (en) * 1988-05-11 1990-05-22 Advanced Micro Devices, Inc. Content addressable memory array with priority encoder
US4890260A (en) * 1988-05-11 1989-12-26 Advanced Micro Devices Content addressable memory array with maskable and resettable bits
EP0346918A3 (en) * 1988-06-17 1991-03-20 Modular Computer Systems Inc. Device for cache buffer management
US4996666A (en) * 1988-08-12 1991-02-26 Duluk Jr Jerome F Content-addressable memory system capable of fully parallel magnitude comparisons
US5125098A (en) * 1989-10-06 1992-06-23 Sanders Associates, Inc. Finite state-machine employing a content-addressable memory
US5053991A (en) * 1989-10-06 1991-10-01 Sanders Associates, Inc. Content-addressable memory with soft-match capability
US5440715A (en) * 1990-06-27 1995-08-08 Advanced Micro Devices, Inc. Method and apparatus for expanding the width of a content addressable memory using a continuation bit
US5317708A (en) * 1990-06-29 1994-05-31 Digital Equipment Corporation Apparatus and method for an improved content addressable memory
US5319763A (en) * 1991-04-02 1994-06-07 Motorola, Inc. Data processor with concurrent static and dynamic masking of operand information and method therefor
GB9116493D0 (en) * 1991-07-30 1991-09-11 Inmos Ltd Read and write circuitry for a memory
JPH05298892A (ja) * 1992-04-22 1993-11-12 Mitsubishi Electric Corp 連想記憶メモリ
US5383146A (en) * 1992-06-08 1995-01-17 Music Semiconductors, Inc. Memory with CAM and RAM partitions
JP2695102B2 (ja) * 1992-09-30 1997-12-24 川崎製鉄株式会社 内容アドレス式メモリ
US5454094A (en) * 1993-06-24 1995-09-26 Hal Computer Systems, Inc. Method and apparatus for detecting multiple matches in a content addressable memory
US5446686A (en) * 1994-08-02 1995-08-29 Sun Microsystems, Inc. Method and appartus for detecting multiple address matches in a content addressable memory
US5471189A (en) * 1994-12-14 1995-11-28 International Business Machines Corp. Comparator circuitry and method of operation
US5659697A (en) * 1994-12-14 1997-08-19 International Business Machines Corporation Translation lookaside buffer for faster processing in response to availability of a first virtual address portion before a second virtual address portion
US6009504A (en) * 1996-09-27 1999-12-28 Intel Corporation Apparatus and method for storing data associated with multiple addresses in a storage element using a base address and a mask
US6097724A (en) * 1997-08-15 2000-08-01 Lucent Technologies Inc. Ram-based associative content-addressable memory device, method of operation thereof and ATM communication switching system employing the same
US6230236B1 (en) * 1997-08-28 2001-05-08 Nortel Networks Corporation Content addressable memory system with cascaded memories and self timed signals
US6122707A (en) * 1997-09-04 2000-09-19 Nortel Networks Corporation Content addressable memory system with self-timed signals and cascaded memories for propagating hit signals
US6148364A (en) * 1997-12-30 2000-11-14 Netlogic Microsystems, Inc. Method and apparatus for cascading content addressable memory devices
US6199140B1 (en) 1997-10-30 2001-03-06 Netlogic Microsystems, Inc. Multiport content addressable memory device and timing signals
US6219748B1 (en) 1998-05-11 2001-04-17 Netlogic Microsystems, Inc. Method and apparatus for implementing a learn instruction in a content addressable memory device
US6240485B1 (en) 1998-05-11 2001-05-29 Netlogic Microsystems, Inc. Method and apparatus for implementing a learn instruction in a depth cascaded content addressable memory system
US6381673B1 (en) 1998-07-06 2002-04-30 Netlogic Microsystems, Inc. Method and apparatus for performing a read next highest priority match instruction in a content addressable memory device
US6118682A (en) * 1998-07-07 2000-09-12 Vlsi Technology, Inc. Method and apparatus for reading multiple matched addresses
US6771264B1 (en) * 1998-08-20 2004-08-03 Apple Computer, Inc. Method and apparatus for performing tangent space lighting and bump mapping in a deferred shading graphics processor
AU5686199A (en) 1998-08-20 2000-03-14 Apple Computer, Inc. Deferred shading graphics pipeline processor
US6237061B1 (en) 1999-01-05 2001-05-22 Netlogic Microsystems, Inc. Method for longest prefix matching in a content addressable memory
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
US6574702B2 (en) 1999-02-23 2003-06-03 Netlogic Microsystems, Inc. Method and apparatus for determining an exact match in a content addressable memory device
US6892272B1 (en) 1999-02-23 2005-05-10 Netlogic Microsystems, Inc. Method and apparatus for determining a longest prefix match in a content addressable memory device
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
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
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
US6362990B1 (en) 1999-09-10 2002-03-26 Sibercore Technologies Three port content addressable memory device and methods for implementing the same
US6392910B1 (en) 1999-09-10 2002-05-21 Sibercore Technologies, Inc. Priority encoder with multiple match function for content addressable memories and methods for implementing the same
US6339539B1 (en) 1999-09-10 2002-01-15 Sibercore Technologies, Inc. Content addressable memory having read/write capabilities that do not interrupt continuous search cycles
US6553453B1 (en) 1999-09-10 2003-04-22 Sibercore Technologies, Inc. Variable width content addressable memory device for searching variable width data
US6275406B1 (en) 1999-09-10 2001-08-14 Sibercore Technologies, Inc. Content address memory circuit with redundant array and method for implementing the same
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
US6763425B1 (en) 2000-06-08 2004-07-13 Netlogic Microsystems, Inc. Method and apparatus for address translation in a partitioned content addressable memory device
US6934795B2 (en) * 1999-09-23 2005-08-23 Netlogic Microsystems, Inc. Content addressable memory with programmable word width and programmable priority
US7143231B1 (en) 1999-09-23 2006-11-28 Netlogic Microsystems, Inc. Method and apparatus for performing packet classification for policy-based packet routing
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
US6687785B1 (en) 2000-06-08 2004-02-03 Netlogic Microsystems, Inc. Method and apparatus for re-assigning priority in a partitioned content addressable memory device
US6324087B1 (en) 2000-06-08 2001-11-27 Netlogic Microsystems, Inc. Method and apparatus for partitioning a content addressable memory device
US6567340B1 (en) 1999-09-23 2003-05-20 Netlogic Microsystems, Inc. Memory storage cell based array of counters
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
US7272027B2 (en) * 1999-09-23 2007-09-18 Netlogic Microsystems, Inc. Priority circuit for content addressable memory
US7487200B1 (en) 1999-09-23 2009-02-03 Netlogic Microsystems, Inc. Method and apparatus for performing priority encoding in a segmented classification system
US6542391B2 (en) 2000-06-08 2003-04-01 Netlogic Microsystems, Inc. Content addressable memory with configurable class-based storage partition
US6944709B2 (en) * 1999-09-23 2005-09-13 Netlogic Microsystems, Inc. Content addressable memory with block-programmable mask write mode, word width and priority
US6757779B1 (en) 1999-09-23 2004-06-29 Netlogic Microsystems, Inc. Content addressable memory with selectable mask write mode
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
US6493793B1 (en) * 2000-06-16 2002-12-10 Netlogic Microsystems, Inc. Content addressable memory device having selective cascade logic and method for selectively combining match information in a CAM device
KR100591968B1 (ko) * 2001-01-10 2006-06-21 후지쯔 가부시끼가이샤 연상 기억 장치
US6910097B1 (en) * 2001-04-09 2005-06-21 Netlogic Microsystems, Inc. Classless interdomain routing using binary content addressable memory
US7401180B1 (en) 2001-12-27 2008-07-15 Netlogic Microsystems, Inc. Content addressable memory (CAM) device having selectable access and method therefor
US7301961B1 (en) 2001-12-27 2007-11-27 Cypress Semiconductor Corportion Method and apparatus for configuring signal lines according to idle codes
US6804132B2 (en) * 2002-11-25 2004-10-12 International Business Machines Corporation Circuit for multiple match hit CAM readout
US7599044B2 (en) 2005-06-23 2009-10-06 Apple Inc. Method and apparatus for remotely detecting presence
US7242169B2 (en) * 2005-03-01 2007-07-10 Apple Inc. Method and apparatus for voltage compensation for parasitic impedance
US7436688B1 (en) 2005-05-06 2008-10-14 Netlogic Microsystems, Inc. Priority encoder circuit and method
US9298311B2 (en) * 2005-06-23 2016-03-29 Apple Inc. Trackpad sensitivity compensation
US7577930B2 (en) 2005-06-23 2009-08-18 Apple Inc. Method and apparatus for analyzing integrated circuit operations
US7433191B2 (en) * 2005-09-30 2008-10-07 Apple Inc. Thermal contact arrangement
US7598711B2 (en) * 2005-11-23 2009-10-06 Apple Inc. Power source switchover apparatus and method
US7694069B2 (en) * 2007-03-29 2010-04-06 Dsm Solutions, Inc. System and method for detecting multiple matches
JP2009187615A (ja) * 2008-02-05 2009-08-20 Elpida Memory Inc 半導体記憶装置
US7848129B1 (en) 2008-11-20 2010-12-07 Netlogic Microsystems, Inc. Dynamically partitioned CAM array
US8438330B2 (en) 2010-05-17 2013-05-07 Netlogic Microsystems, Inc. Updating cam arrays using prefix length distribution prediction
US7920399B1 (en) 2010-10-21 2011-04-05 Netlogic Microsystems, Inc. Low power content addressable memory device having selectable cascaded array segments
US8467213B1 (en) 2011-03-22 2013-06-18 Netlogic Microsystems, Inc. Power limiting in a content search system
US11587611B2 (en) * 2021-07-20 2023-02-21 Macronix International Co., Ltd. Memory device with input circuit, output circuit for performing efficient data searching and comparing within large-sized memory array

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5654677A (en) * 1979-10-08 1981-05-14 Nippon Telegr & Teleph Corp <Ntt> Associative memory device
JPS5774888A (en) * 1980-10-28 1982-05-11 Nippon Telegr & Teleph Corp <Ntt> Associative memory device

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3221157A (en) * 1961-06-26 1965-11-30 Ibm Associative memory
US3518631A (en) * 1967-01-13 1970-06-30 Ibm Associative memory system which can be addressed associatively or conventionally
US3685020A (en) * 1970-05-25 1972-08-15 Cogar Corp Compound and multilevel memories
JPS54128634A (en) * 1978-03-30 1979-10-05 Toshiba Corp Cash memory control system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5654677A (en) * 1979-10-08 1981-05-14 Nippon Telegr & Teleph Corp <Ntt> Associative memory device
JPS5774888A (en) * 1980-10-28 1982-05-11 Nippon Telegr & Teleph Corp <Ntt> Associative memory device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1994024672A1 (en) * 1993-04-19 1994-10-27 Oki Electric Industry Co., Ltd. Circuit for decoding variable-length code, and system for decoding variable-length code which uses the circuit

Also Published As

Publication number Publication date
JPS605498A (ja) 1985-01-12
US4670858A (en) 1987-06-02

Similar Documents

Publication Publication Date Title
JPH0245277B2 (ja)
US5485418A (en) Associative memory
US7643324B2 (en) Method and apparatus for performing variable word width searches in a content addressable memory
US6243281B1 (en) Method and apparatus for accessing a segment of CAM cells in an intra-row configurable CAM system
US7539896B2 (en) Repairable block redundancy scheme
US6137707A (en) Method and apparatus for simultaneously performing a plurality of compare operations in content addressable memory device
US4989181A (en) Serial memory device provided with high-speed address control circuit
US5808946A (en) Parallel processing redundancy scheme for faster access times and lower die area
JPS61267846A (ja) メモリを有する集積回路装置
US5657291A (en) Multiport register file memory cell configuration for read operation
US6366978B1 (en) Cache memory
US5847999A (en) Integrated circuit memory devices having variable block size erase capability
JPS60261148A (ja) 半導体装置
JP2002260389A (ja) 連想メモリ
JP3703518B2 (ja) 連想メモリシステム
US6751701B1 (en) Method and apparatus for detecting a multiple match in an intra-row configurable CAM system
US6799243B1 (en) Method and apparatus for detecting a match in an intra-row configurable cam system
JP2779114B2 (ja) 連想メモリ
US4831625A (en) Easily cascadable and testable cache memory
JP2741810B2 (ja) 内容アドレス式メモリ
WO1991007754A1 (en) Read-while-write-memory
US6795892B1 (en) Method and apparatus for determining a match address in an intra-row configurable cam device
US5901093A (en) Redundancy architecture and method for block write access cycles permitting defective memory line replacement
JP2564890B2 (ja) 選択的連想記憶装置及びその制御方法
JP2564942B2 (ja) 選択的連想記憶装置及びその制御方法