JPH08106788A - 連想メモリ - Google Patents

連想メモリ

Info

Publication number
JPH08106788A
JPH08106788A JP24004594A JP24004594A JPH08106788A JP H08106788 A JPH08106788 A JP H08106788A JP 24004594 A JP24004594 A JP 24004594A JP 24004594 A JP24004594 A JP 24004594A JP H08106788 A JPH08106788 A JP H08106788A
Authority
JP
Japan
Prior art keywords
memory
word
data
flag
state
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.)
Pending
Application number
JP24004594A
Other languages
English (en)
Inventor
Masato Yoneda
田 正 人 米
Hiroshi Sasama
間 洋 笹
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.)
JFE Steel Corp
Original Assignee
Kawasaki Steel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kawasaki Steel Corp filed Critical Kawasaki Steel Corp
Priority to JP24004594A priority Critical patent/JPH08106788A/ja
Publication of JPH08106788A publication Critical patent/JPH08106788A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

(57)【要約】 【目的】もう少し各エントリ毎にテーブルに保持される
時間を均一化することができる新規な連想メモリを提供
する。 【構成】複数のメモリワードに対応して備えられた複数
の一致検出回路とを備えた連想メモリにおいて、有効デ
ータが記憶されているか否かの記憶状態を示す第1のフ
ラグが記憶される複数の第1のフラグレジスタ、過去の
複数回の検索において少なくとも一度一致が検出された
か否かの履歴状態を示す第2のフラグが記憶される複数
の第2のフラグレジスタ、この第2のフラグの履歴状態
に応じて対応するメモリワードの第1のフラグレジスタ
の第1のフラグを各ワード毎に書き込み可能な記憶状態
に変更する記憶状態変更回路、および複数の第2のフラ
グレジスタの第2のフラグを各ワード毎にリセットする
履歴状態リセット回路を備えることにより、上記目的を
達成する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、各データをそれぞれ記
憶する複数のメモリワードを備えるとともに、各メモリ
ワードに記憶されたデータと入力された検索データとの
一致不一致を検索する機能を備えた連想メモリ(Associ
ative Memory, 内容アドレス式メモリ;Content Addres
sable Memory)に関する。
【0002】
【従来の技術】近年、上記のような検索機能を備えた連
想メモリが提案されている。図4は従来の連想メモリの
一例を表した回路ブロック図である。この連想メモリ1
0には、互いに図の横方向に並ぶ複数のメモリセルから
なるメモリワード11a,11b,……,11nが多数
備えられている。またこの連想メモリ10は、検索デー
タが入力されラッチされる検索レジスタ12を備え、検
索レジスタ12にラッチされた検索データの全部もしく
は所定の一部のビットパターンと、各メモリワード11
a,11b,……,11nに記憶されたデータのうち、
上記ビットパターンと対応する部分のビットパターンと
の一致不一致が比較され、各メモリワード11a,11
b,……,11nのそれぞれに対応して備えられた一致
線14a,14b,……,14nのうちビットパターン
が一致したメモリワード11a,11b,……,11n
に対応する一致線14a,14b,……,14nに論理
‘1’の一致信号が出力され、それ以外の一致線14
a,14b,……,14nに論理‘0’の不一致信号が
出力される。
【0003】ここでは各フラグ線14a,14b,…
…,14nにそれぞれ‘0’,‘1’,‘0’,
‘0’,‘1’,……,‘0’の信号が出力されたもの
とする。この信号はプライオリティエンコーダ15に入
力され、このプライオリティエンコーダ15からは論理
‘1’の一致信号が出力された一致線(ここでは一致線
14bと一致線14eの2本)のうちの優先度の最も高
い最優先一致線に対応するアドレス信号ADが出力され
る。ここでは、添字のアルファベットが若いほど優先順
位が高いものとし、従ってここでは一致線14bが最優
先一致線となる。このプライオリティエンコーダ15か
ら出力された、最優先一致線14bに対応するアドレス
信号ADは、必要に応じて、アドレスデコーダ16に入
力される。アドレスデコーダ16では、この入力された
アドレス信号ADをデコードして各メモリワード11
a,11b,……,11nのそれぞれに対応して備えら
れたワード線17a,17b,……,17nのうちの、
入力されたアドレス信号ADに対応するいずれか1本の
ワード線(ここではワード線17b)にアクセス信号
(ここでは論理‘1’の信号)を出力する。これによ
り、アクセス信号の出力されたワード線17bに対応す
るメモリワード11bに記憶されているデータが出力レ
ジスタ18に読み出される。
【0004】上記のように連想メモリ10は、検索デー
タを用いて多数のメモリワード11a,11b,……,
11nに記憶された内容(データ)を検索し、一致する
データが記憶されたメモリワードのアドレスを得て、そ
のメモリワードに記憶されたデータ全体を読み出すこと
ができるメモリである。図5は、連想メモリ中の1つの
メモリワードを表した詳細回路図である。
【0005】このメモリワード11は、同一構成のn個
のメモリセル11−1,11−2,……,11−nから
構成されている。各メモリセル11−1,11−2,…
…,11−nには、互いの出力が互いの入力に接続され
た第1インバータ20−1,20−2,……,20−n
と第2のインバータ21−1,21−2,……,21−
nが備えられており、これらのインバータ20−1,2
1−1;20−2,21−2;……;20−n,21−
nにより各メモリセル11−1,11−2,……,11
−nに論理‘1’もしくは論理‘0’の1ビットの情報
が記憶される。
【0006】また、各メモリセル11−1,11−2,
……,11−nにおいて、第1インバータ20−1,2
0−2,……,20−nの出力はNチャンネルトランジ
スタ22−1,22−2,……,22−nを介してビッ
ト線23−1,23−2,……,23−nと接続されて
おり、このトランジスタ22−1,22−2,……,2
2−nのゲートはワード線24に接続されている。ま
た、第2のインバータ21−1,21−2,……,21
−nの出力は、Nチャンネルトランジスタ25−1,2
5−2,……,25−nを介してビットバー線26−
1,26−2,……,26−nと接続されており、この
トランジスタ25−1,25−2,……,25−nのゲ
ートもワード線24に接続されている。さらに各メモリ
セル11−1,11−2,……,11−nには、ビット
線23−1,23−2,……,23−nとビットバー線
26−1,26−2,……,26−nとの間をつなぐよ
うに互いにシリーズに接続された2つのNチャンネルト
ランジスタ27−1,28−1;27−2,28−2;
……;27−n,28−nが配置されており、これら各
2つのトランジスタ27−1,28−1;27−2,2
8−2;……;27−n,28−nのうちの一方のトラ
ンジスタ27−1,27−2,……,27−nのゲート
は、第1のインバータ20−1,20−2,……,20
−nの出力、他方のトランジスタ28−1,28−2,
……,28−nのゲートは第2のインバータ21−1,
21−2,……,21−nの出力と接続されている。
【0007】また一致線14には、各メモリセル11−
1,11−2,……,11−nに対応して1つずつトラ
ンジスタ36−1,36−2,……,36−nが備えら
れており、それらのトランジスタ36−1,36−2,
……,36−nは互いにシリーズに接続され、それらの
トランジスタ36−1,36−2,……,36−nの各
ゲートは、各2つのトランジスタ27−1,28−1;
27−2,28−2;……;27−n,28−nの中点
と接続されている。
【0008】また、この一致線14にはもう1つのトラ
ンジスタ36−0がシリーズに接続されており、一致線
14の図5の左端はこのトランジスタ36−0を介して
接地されている。また、このトランジスタ36−0のゲ
ートは制御線30に接続されている。一致線14の図5
の右端にはセンス用インバータ31が配置され、このイ
ンバータ31の出力からは一致線14がさらに延び、図
4に示すプライオリティエンコーダ15に接続されてい
る。
【0009】また、このインバータ31の入力と電源V
DDとの間には2つのPチャンネルトランジスタ32,3
3が配置されており、これら2つのトランジスタ32,
33のうちの一方のトランジスタ32のゲートは制御線
30と接続され、他方のトランジスタ33のゲートはイ
ンバータ31の出力と接続されている。このような構造
のメモリワードおよびその周辺回路を備えた連想メモリ
において、一致検索は以下のようにして行われる。
【0010】メモリセル11−1には、論理‘1’の情
報が記憶されているものとする。すなわちこの場合、第
1のインバータ20−1の出力側が論理‘1’、第2の
インバータ21−1の出力側が論理‘0’の状態にあ
る。このメモリセル11−1に対して論理‘1’の検索
が行なわれるものとする。すなわち、ビット線23−1
が論理‘1’、ビットバー線26−1が論理‘0’とさ
れる。ワード線24は論理‘0’のままの状態に保持さ
れている。この場合、トランジスタ27−1のゲートに
は論理‘1’の電圧が印加され、ビット線23−1の論
理‘1’の信号がトランジスタ36−1のゲートに印加
され、これによりトランジスタ36−1が‘オン’状態
となる。すなわち、メモリセル11−1に記憶されたビ
ット情報とビット線23−1、ビットバー線26−1を
経由して入力された検索データ中のビット情報が一致す
る場合に、対応するトランジスタ36−1が‘オン’状
態となる。
【0011】また、メモリセル11−2には論理‘0’
の情報が記憶されているものとする。この場合、第1の
インバータ20−2の出力側が論理‘0’、第2のイン
バータ21−2の出力側が論理‘1’の状態にある。こ
のメモリセル11−2に対してやはり論理‘1’の検索
が行なわれるものとする。すなわち、ビット線23−2
が論理‘1’、ビットバー線26−2が論理‘0’とさ
れる。この場合、トランジスタ28−2を経由して論理
‘0’の状態にあるビットバー線26−2の信号がトラ
ンジスタ36−2のゲートに印加され、したがって、こ
のトランジスタ36−2は‘オフ’状態にとどまること
になる。すなわち、不一致の場合、一致線14にプリチ
ャージされていた電荷はディスチャージされない。
【0012】また、マスクをかけたビットについては、
メモリセル11−nに示すように、ビット線23−n、
ビットバー線26−nの双方とも論理‘1’とされる。
この場合、このメモリセル11−nに論理‘1’の情報
が記憶されているか、論理‘0’の情報が記憶されてい
るかに応じてトランジスタ27−nもしくはトランジス
タ28−nのいずれかが‘オン’状態となり、これによ
りいずれの場合もトランジスタ36−nが‘オン’状態
になる。すなわち、そのメモリセルについては、記憶さ
れた情報と検索の情報とが一致しているものとみなされ
る。
【0013】検索にあたっては、制御線30がまず論理
‘0’となり、トランジスタ32が‘オン’状態となっ
てインバータ31の入力側の一致線14がプリチャージ
され、その後制御線30が論理‘1’となり、トランジ
スタ32が‘オフ’状態となってプリチャージが停止す
るとともにトランジスタ36−0が‘オン’状態とな
る。
【0014】このとき、メモリセルに記憶された情報と
入力された検索の情報がこのメモリワード11を構成す
る全てのメモリセルにわたって一致している(上述した
ようにマスクされたビットは一致とみなす)場合、トラ
ンジスタ36−1,36−2,……,36−nの全てが
‘オン’状態となり一致線14にプリチャージされた電
荷がディスチャージされ、インバータ31から論理
‘1’の信号が出力される。
【0015】なお、図5に示す連想メモリのメモリ構造
は一例にすぎず、種々の構造のものが提案されている
(例えば、特願平5−216424号参照)。上記のよ
うに、連想メモリは検索データを入力してその検索デー
タと一致するデータが記憶されているか否かを一回の検
索動作だけで瞬時に知ることができるため、高速のデー
タ処理が必要な分野等に広く適用されている。
【0016】この連想メモリにおいて、種々の技術が提
案されている。ここでは、後述する本発明の説明の際に
参照される技術について説明する。その1つは、特開昭
57−74887号公報に提案された技術である。ある
検索データと一致するデータが複数のメモリワードに記
憶されていた場合、プライオリティエンコーダ15(図
4参照)からは常に最優先の一致線に対応する特定のメ
モリワードのアドレスが出力され、一致するデータが記
憶された複数のメモリワード間に不平等が生じることに
なる。これを解消するため、アドレスの読み出しが行わ
れたか否かのフラグを各メモリワードに対応させて記憶
しておき、アドレスの読み出しが行われたメモリワード
については、後の検索で再度一致が検出されても優先度
を下げるというものである。
【0017】また他の1つは、特公昭61−31558
号公報に提案された技術である。連想メモリを構成する
多数のメモリワードは、常に全てのメモリワードに検索
の対象となるデータが記憶されているわけではなく、そ
れらのメモリワードの一部は、有効なデータが記憶され
ていない空きの状態にあったり、その空きの状態にある
メモリワードに新たな有効データを書き込んだりするこ
とがある。この場合、どのメモリワードが空きの状態に
あるか否かを外部で管理しておくのは煩雑であることか
ら、各メモリワードに対応して、そのメモリワードに有
効なデータが記憶されているか、それともそのメモリワ
ードが空きの状態にあるかを示すフラグを各メモリワー
ドに対応させて記憶しておき、新たな有効データを書き
込む場合に連想メモリ自体で空きの状態にあるメモリワ
ードを見つけて、そのメモリワードに有効データを書き
込むというものである。
【0018】これら2つの技術と本発明との関連性につ
いては後述することとし、次に連想メモリの適用の一例
として、LAN(Local Area Network)への適用例につ
いて説明する。図6はLANの一例を示した図である。
図6(A)に示すように、2つの通信回線LAN1,L
AN2にそれぞれ複数の端末A〜G、T〜Zが接続さ
れ、これにより2つの通信網が構成されているものとす
る。各通信回線LAN1,LAN2のトラフィック量
(その通信回線を流れるデータの量:その通信回線の混
雑度)は、それぞれ‘10’であるとする。
【0019】これら2つの通信回線を互いに接続する必
要が生じた場合に、図6(B)に示すように単純に接続
すると、通信回路LAN1,LAN2のトラフィック量
は20となり、極めて混雑し、各端末間がなかなか接続
されず、待ち時間、空き時間が増大してしまうという結
果を招く。そこで、通常は図6(C)に示すように、2
つの通信回線LAN1,LAN2の中間に、これらの通
信回線LAN1,LAN2のうちの一方から発信された
データを他方に伝送するか否かのフィルタリングを行う
ブリッジを接続する。このブリッジを接続した場合、こ
のブリッジを通過するデータのトラフィック量、すなわ
ち2つの通信網に跨がるデータの授受についてのトラフ
ィック量を1とすると、各通信回線LAN1,LAN2
内部でのトラフィック量10と合わせ、各通信回線LA
N1,LAN2のトラフィック量はそれぞれ11とな
り、2つの通信回線LAN1,LAN2を単純に接続し
た図6(B)の場合と比べ、トラフィック量は大きく低
下する。ここでは2つの通信回線LAN1,LAN2の
接続について説明したが、1つのブリッジに多数の通信
回線を接続すると、この差はさらに顕著となる。
【0020】図7は、ブリッジの機能説明図である。ブ
リッジは内部にメモリを持ち、最初は全て空白の状態か
ら出発し、例えば通信回線LAN1の端末Aからデータ
が送信されると、LAN1側からそのデータが送信され
てきたことを受けて、端末Aが通信回線LAN1に接続
されていることを学習する。この学習は、概念的には、
ブリッジ内部のメモリに通信回線LAN1,LAN2そ
れぞれについてテーブル1、テーブル2を持ち、通信回
線LAN1に対応するテーブル1に端末Aを書き込むこ
とによって行われる。端末Aから送信されたデータの受
信先が、端末Aと同じLAN1側の通信網内にあるか否
かは端末Aについてのみ学習した時点ではわからず、し
たがって、この時点では無条件にブリッジを通過させ
る。
【0021】このような学習を繰り返すことにより、ブ
リッジ中に図7に示すようなテーブル1、テーブル2が
作成され、これらが作成された後は、例えば図示のよう
に、発信先が端末B(LAN1側)、受信先が端末X
(LAN2側)のデータは、ブリッジで、それら端末
B,Xがブリッジを跨がっていることを認識してブリッ
ジを通過させ、発信先、受信先がいずれもLAN1側の
端末A,Eの場合は、それらの端末A,Eがブリッジか
ら見て同じ側の通信網にあることを認識してブリッジデ
ータの通過を遮断する。これにより、前述したように、
トラフィック量の低減化が図られる。
【0022】このブリッジに備えられるメモリとして連
想メモリを採用すると、処理の高速化が図られる。例え
ば、各端末A〜G、T〜Zの情報と、それらの各端末が
テーブル1に属するか(LAN1側に接続されている
か)、あるいはテーブル2に属するか(LAN2側に属
するか)という情報を連想メモリに記憶し、データを通
過させるか否かの判断にあたっては、例えば受信先が端
末Xであった場合そのXを検索データとして検索して、
そのXがテーブル2(LAN2)に属する端末であるこ
とを認識し、これに基づいてデータを通過させるか否か
を定めることができる。
【0023】これに対し、ブリッジに通常のRAMメモ
リ等を備えた場合は、メモリされたデータを1つずつ読
み出してはそのデータが端末Xのデータであるかを逐次
比較により検索する必要があり、ブリッジを通過させる
か遮断するかを定めるために多大な時間を要することと
なる。
【0024】
【発明が解決しようとする課題】上記のように、連想メ
モリは、例えばLANネットワーク等に好適に用いられ
るが、以下に示すようにさらに改善が望まれている。す
なわち、上述したようにブリッジにおいて最初は空白の
状態から学習を行うが、この学習の過程ではデータの送
信先がどの通信網に属するかわからず、そのデータを無
条件にブリッジを通過させる必要が生じ、図6(B)に
示すように、トラフィック量の増大化を招くことにな
る。このトラフィック量の増大化は、最初の1回のみで
あればほとんど問題はないが、実際は、通常、例えば数
十秒〜1分毎等、かなり頻繁に行う必要がある。これ
は、データの送受信に関与していない端末を排除する必
要上、ブリッジ内のメモリを繰り返し初期化し、学習を
行わせる必要があるからである。このようにメモリを繰
り返し初期化する必要があるため、このことがトラフィ
ック量をさらに低減させることの1つのネックとなって
いる。
【0025】これを解決するには、メモリを全て初期化
してしまうのではなく、前回の初期化から今回までの間
に各端末がデータの送受信に参加したか否かを記録して
おき、初期化にあたってはその記録を参照して、参加し
ていない端末のデータのみを初期化し、参加していた端
末のデータは初期化せずにそのまま残しておくことが考
えられる。しかし、従来の連想メモリを用いた場合にこ
れを実現しようとすると、データの送受信に参加したか
否かを示すフラグを参照しながら、初期化する必要のあ
る端末データを順次1つずつ消去していく必要があり、
上述した逐次比較と同様に、初期化の際に多大な時間を
要することとなってしまう。
【0026】そこで、本願発明者は、特願平5−248
119号明細書において不要なデータのみを一括消去で
きる連想メモリを提案した。しかしながら、上記一括消
去では消去タイミングと毎データの書き込み(エント
リ)のタイミングがエントリ毎に異なり、極端な場合は
新しいデータがエントリされ、何の検索もされず不要な
データとして直ちに消去されてしまう虞れがあるという
問題があった。
【0027】そこで、本発明の目的は、上記従来技術の
問題点を解消し、もう少し各エントリ毎にメモリテーブ
ルに保持される時間を均一化することができる、新規な
連想メモリを提供することにある。
【0028】
【課題を解決するための手段】上記目的を達成する本発
明の連想メモリは、各データをそれぞれ記憶する複数の
メモリワードと、それら複数のメモリワードそれぞれに
対応して備えられ、対応するメモリワードに記憶された
データと入力された検索データとの一致不一致を検出す
る複数の一致検出回路とを備えた連想メモリにおいて、
(1)上記複数のメモリワードそれぞれに対応して備え
られ、対応するメモリワードが、検索の対象とされる有
効データが記憶された第1の記憶状態にあるメモリワー
ドであるか、あるいは前記有効データが記憶されておら
ず、したがって書き込みが許容される第2の記憶状態に
あるメモリワードであるかを示す第1のフラグが記憶さ
れる複数の第1のフラグレジスタ、(2)上記複数のメ
モリワードそれぞれに対応して備えられ、対応するメモ
リワードが、過去の複数回の検索において少なくとも一
度一致が検出された第1の履歴状態にあるメモリワード
であるか、あるいは過去の複数回の検索において全て不
一致であった第2の履歴状態にあるメモリワードである
かを示す第2のフラグが記憶される複数の第2のフラグ
レジスタ、(3)上記第1の記憶状態にあるメモリワー
ドのうち、前記第1の履歴状態および前記第2の履歴状
態のうちいずれか一方の状態を示す前記第2のフラグが
記憶された前記第2のフラグレジスタに対応するメモリ
ワードを、各ワード毎に前記第2の記憶状態に変更する
記憶状態変更回路、(4)上記複数の第2のフラグレジ
スタに、前記第2の履歴状態を示す前記第2のフラグを
各ワード毎に記憶させる履歴状態リセット回路を備えた
ことを特徴とするものである。
【0029】ここで、上記本発明の連想メモリにおい
て、前記第1の記憶状態にあるメモリワードを、一括し
て前記第2の記憶状態に変更する記憶状態リセット回路
を備えルことが好ましい。
【0030】
【作用】本発明の連想メモリは、有効データが記憶され
ているか否かを示す第1のフラグと、一致が検出された
か否かを示す第2のフラグを各メモリワードに対応させ
ておき、第2のフラグ状態に応じて有効データが記憶さ
れているメモリワードを各ワード毎に消去する構成を備
えたものであるため、例えば上述したブリッジの初期化
の際、過去に一度も一致検出が行われていない、すなわ
ちデータの送受信に参加していない端末のデータのみを
一定時間隔でワード毎に消去することができる。なお、
メモリワードの消去は、そのメモリワードに記憶された
データ自体を消去してもよいが、それ限られず、消去さ
れた場合と実質的に等価でありさえすればよく、例えば
第1のフラグレジスタのフラグ内容を書き換えることに
よりそのメモリワードが検索に参加しないようにしても
よい。
【0031】上述したように、特開昭57−74887
号公報には本発明にいう第2のフラグに近似したフラグ
が示されており、特公昭61−31588号公報には本
発明にいう第1のフラグが示されている。しかしこれら
の公報に提案された技術は、前述したように、互いに全
く異なる課題を解決する手段を示したものであって、こ
れらの公報にはこれらの第1のフラグと第2のフラグを
結びつけるものは全く存在していない。またこれらの公
報には、本発明という記憶状態変更回路も存在していな
い。
【0032】
【実施例】以下、本発明の実施例について説明する。図
1は、本発明の一実施例の連想メモリの、1つのメモリ
ワードに対応した特徴部分を示す回路図である。前述し
た従来例で参照した図面における構成要素に対応する構
成要素には、それらの図面に付した番号と同一の番号を
付して示す。
【0033】この図1では、メモリワード11や一致線
14の構成は略示されている。この各メモリワード11
に対応して第1のフラグレジスタ51が備えられてお
り、この第1のフラグレジスタ51には、対応するメモ
リワード11に検索の対象となる有効データが記憶され
ている場合に‘0’、検索の対象から除外され、したが
って書き込みを許容する無効のデータが記憶されている
場合(これを、ここでは対応するメモリワード11が
「空き状態にある」と称する)に‘1’の空きフラグ
(本発明にいう第1のフラグの一例)が記憶されてい
る。ここでは、この空きフラグは‘0’、すなわち図示
のメモリワード11には有効データが格納されているも
のとする。この第1のフラグレジスタ51のQ出力は、
一方の入力側が反転されたアンド回路53の反転入力側
に接続されている。
【0034】ビット線23−1、…、23−nおよびビ
ットバー線26−1、…、26−nに検索データをのせ
て検索を行った結果、その検索データと図示のメモリワ
ード11(メモリセル11−1、…、11−n)に記憶
されたデータとが一致したものとすると、一致線14が
‘1’となる。アンドゲート53の非反転入力には一致
線14が接続されており、また第1のフラグレジスタ5
1の出力は‘0’であるため、アンドゲート53の出力
は‘1’となる。ここではアンドゲート53の出力から
延びる信号線も一致線140と称する。この一致線14
0は、従来の場合の一致線14に代わり、図4に示すプ
ライオイリティエンコーダ15に延びている。またアン
ドゲート53の出力はオアゲート54を経由して第2の
フラグレジスタ55にも入力される。第2のフラグレジ
スタ55は、各メモリワードに対応して備えられてお
り、一括して全てのメモリワード11に対応してリセッ
トする場合は、履歴フラグリセット信号線56a,56
b、これらの信号線56a,56bを入力とする2入力
アンドゲート72、このアンドゲート72の出力を一方
の入力とする反転出力オアゲート70を経由して第2の
フラグレジスタ55のリセット反転入力Rに入力された
リセットパルスにより、対応するメモリワード11に過
去に一致がなかったことを表す‘0’が格納される。
【0035】また、各メモリワードにデータがエントリ
された時に、第2のフラグレジスタ55をリセットする
場合は、ワードリセット信号線56cとワード線24を
アクティブにすることで、これらの信号線56cとワー
ド線24とを入力とする2入力アンドゲート71、この
アンドゲート71の出力を他方の入力とする反転出力オ
アゲート70を経由して第2のフラグレジスタ55のリ
セット反転入力Rに入力されたリセットパルスにより、
リセットすることが可能となる。このワード線24は、
メインデコーダ線52aとサブデコーダ線52bを入力
とするアンドゲート67の出力として定義されており、
これらのデコーダ線52a,52bにより選択された特
定ワードのみがアクティブとなるよう設けられている。
【0036】ここで、上記のようにしてこのメモリワー
ドに一致が生じた結果、アンドゲート53の出力が一致
を表す‘1’となり、その一致信号がオアゲート54を
経由して第2のフラグレジスタ55に印加されたタイミ
ングで履歴フラグクロック線57にクロックパルスが印
加され、これにより第2のフラグレジスタ55に一致が
あったことを表す‘1’が格納される。この第2のフラ
グレジスタ55に一旦‘1’が格納されると、その第2
のフラグレジスタ55のQ出力がオアゲート54を経由
して再度その第2のフラグレジスタ55に入力されてい
るため、次にリセットされるまでの間は履歴フラグクロ
ック線57にクロックパルスが印加される毎に常に
‘1’が上書きされ続ける。第2のフラグレジスタ55
のQ出力は、オアゲート54を経由して自分自身に入力
されるほか、信号線58を経由してセレクト回路59に
も入力されるとともに、ワード線24を制御入力とする
3ステートバッファ73を経由してフラグデータリード
線55aにも接続される。こうして、ワード線24をア
クティブにすることにより、第2のフラグレジスタ55
のQノード出力を読みだすことができるように設計され
ている。またこのセレクト回路59には、ワード線24
に接続された信号線60、および4本の選択信号線6
1、62、63a、63bも接続されている。
【0037】図2は、セレクト回路59の構成を表す回
路図である。このセレクト回路59は、5入力アンドゲ
ート590a,590b、3入力アンドゲート591、
入力側の信号が全て反転される3入力アンドゲート59
2、入力側の信号が1つだけ反転される3入力アンドゲ
ート593、および各入力がアンドゲート590a,5
90b,591,592,593の各出力、および選択
信号線61と接続された6入力オアゲート594から構
成されている。
【0038】選択信号線61は、各メモリワード11に
対応する各第1のフラグレジスタ51の全てに、一括し
て、そのメモリワード11が空き状態にあることを表す
空きフラグ‘1’を記憶させるための信号線である。そ
の信号線61に論理‘1’の信号を印加すると、その信
号はオアゲート594を経由し、図1に示すアンドゲー
ト64に入力される。アンドゲート64には空きフラグ
クロック信号線65も接続されており、セレクト回路5
9から論理‘1’の信号がアンドゲート64に入力され
ていることから、空きフラグクロック信号線65にクロ
ックパルスが印加されるとそのクロックパルスはアンド
ゲート64を通過し、第1のフラグレジスタ51のクロ
ック入力端子に入力される。このときに空きフラグデー
タ線66に論理‘1’の信号をのせておくと、第1のフ
ラグレジスタ51に空きフラグ‘1’がセットされ、こ
れにより全てのメモリワード11が一括して空き状態と
なる。前述したように、第1のフラグレジスタ51の出
力はアンドゲート53の反転入力端子と接続されてお
り、空き状態にあるメモリワード11でたとえ一致が検
出され一致線14が‘1’となってもアンドゲート53
で遮断され、一致線140は‘0’のままにとどまるこ
とになる。
【0039】また、3本の選択信号線61,62,63
aが全て‘0’および選択信号線63bが‘1’の状態
において、第2のフラグレジスタ55に過去に一致がな
かったことを表す‘0’が格納されていた場合、信号線
58が‘0’の状態にあり、アンドゲート592の出力
が‘1’となり、オアゲート594を経由して‘1’が
出力される。その状態で空きフラグクロック線65にク
ロックパルスが印加されると、第1のフラグレジスタ5
1に空きフラグが格納される。すなわち、この場合、過
去に一致がなかったことを表す‘0’が格納されていた
第2のフラグレジスタ55に対応するメモリワード11
が一括して空き状態に変更される。
【0040】また、選択信号線61,63aを‘0’、
選択信号線62,63bを‘1’に保った状態におい
て、第2のフラグレジスタ55に過去に一致があったこ
とを表す‘1’が格納されていた場合、信号線58が
‘1’の状態にあり、アンドゲート593の出力が
‘1’となり、オアゲート594を経由して‘1’が出
力される。すなわち、この場合、過去に一致があったこ
とを表す‘1’が格納されていた第2のフラグレジスタ
55に対応するメモリワード11が一括して空き状態に
変更される。以上の場合が第2のフラグレジスタ55の
値に応じて一括して、データの有効、非有効を決める方
法である。
【0041】同様にして本願の主たる各ワード毎のデー
タの有効、非有効を決める方法について以下に述べる。
まず、選択信号線63aを‘1’、選択信号線61,6
2,63bを‘0’に保った状態にしておいて、第2の
フラグレジスタ55に過去に一致がなかったことを表す
‘0’が格納されており、信号線58が‘0’の状態に
あり、且つ特定のメモリワード11が選択され、そのワ
ード線24、従って信号線60が‘1’の状態にある
時、アンドゲート590aの出力が‘1’となり、オア
ゲート594を経由して‘1’が出力される。その状態
で空きフラグクロック線65にクロックパルスが印加さ
れ、同時に空きフラグデータ線66に論理‘1’の信号
がのせられていると、第1のフラグレジスタ51に空き
フラグ‘1’がセットされる。すなわち、この制御方法
により、過去に一致がなかった特定メモリワードのみを
空きデータとすることが可能となる。
【0042】次に、選択信号線63a,62を‘1’、
選択信号線61,63bを‘0’に保った状態にしてお
いて、第2フラグレジデータ55に過去に一致があった
ことを表す‘1’が格納されていた場合、信号線58が
‘1’の状態にあり、且つ特定のメモリワード11が選
択されそのワード線24(信号線60)が‘1’の状態
にある時、アンドゲート590bの出力が‘1’とな
り、オアゲート594を経由して‘1’が出力される。
この状態で空きフラグクロック線65にクロックパルス
が印加され、同時に空きフラグデータ線66に論理
‘1’の信号がのせられていると、第1のフラグレジス
タ51に空きフラグ‘1’がセットされる。すなわち、
過去に一致のあった特定メモリワードのみを空きデータ
とすることが可能となるわけである。また、同様にして
選択信号線63a,63bを‘1’にして特定メモリワ
ード11を選択してワード線24(信号線60)を
‘1’にすることによって、アンドゲート591の出力
が‘1’となり、その結果オアゲート594を経由して
‘1’が出力されるので、上述した場合と同様にして第
1のフラグレジスタ51に空きフラグ‘1’がセットさ
れ、任意の特定メモリワードを空き状態にすることがで
きる。
【0043】このような構成における各データ毎の書き
込み時間、すなわち登録時間(エントリ時間)の管理の
一例を図3を用いて説明する。まずエントリデータのエ
ージング(登録時間管理)を行うために、図3に示すよ
うに、前述の連想メモリテーブルとは別に、エントリデ
ータの登録時系列に対応させてエージングデータ40を
登録するエージングテーブル43を作る。ここで、エン
トリアドレス40aとは連想メモリにエントリデータが
登録された時のアドレスを示し、エントリタイム40b
とはその時刻に対応したデータであり、少なくともこの
2種類のデータをエージングデータ40として、エント
リポインタ41が示す位置に格納する。一旦エージング
データ40が格納されると、エントリポインタ41は、
次の格納位置を順次示すよう構成されている。
【0044】また、このエントリデータを前述の連想メ
モリのメモリワード11への登録の時に、前述の手法に
より第2のフラグレジスタ55をリセットし、過去に一
致がなかったことを表す‘0’に設定しておき、このメ
モリワード11のアドレスをエントリアドレスEAiと
し、その登録時刻をETiとして図3のエージングテー
ブル43に登録する。一旦、連想メモリ上に登録された
データは、検索の毎に、履歴フラグクロック線57に入
力されるパルスによって、アンドゲート53の出力が入
力されるオアゲート54の出力が入力される。すなは
ち、一致があったかどうかという情報がワード単位で蓄
積されることになる。
【0045】また図3に示されているエージングポイン
タは、エントリデータの最低保持時間Tよりも充分短い
サイクルtsでエントリの古いもの(同図では、より上
にあるもの)から順に、データのエントリとは全く非同
期でエージングデータのチェックを行う位置を示すもの
である。例えば、今エージングポインタ42が図3のよ
うに、最も上のエージングデータ40を示していた時
は、このエージングデータ40のエントリタイム40b
と現在の時刻を比較して、最低保持時間T以上であった
場合、このエントリアドレス40aをアドレスデータと
する連想メモリ上のメモリワード11をアクセスする。
この時、ワード線24を‘1’として、第2のフラグレ
ジスタ55のQノード出力のフラグデータリード線55
aの値を読み出す。ここで、仮にこの値が‘1’、すな
わち過去に一致があったとする。最低保持時間T以内の
過去に一致があった場合に、そのエントリデータは、更
に次の最低保持時間Tの間保持するよう制御すると仮定
すると、この時、制御線56cにリセットパルスを入力
し、第2のフラグレジスタ55をリセットする。更に、
図3のエージングテーブル43の最上位のエージングデ
ータ40を無効化し、このエントリアドレス40aのE
Aoをエントリポインタ41で示されるエントリ可能領
域のEAiに再書き込み(再登録)を行うと同時に、E
Tiにその書き込み時刻に対応するデータを書き込んで
おく。これでエントリアドレス40aのEAoで示され
る連想メモリ上のエントリデータが次の最低保持時間T
の間保持される対象として新たに登録されたことによ
る。なお、この時エージングテーブル43のエージング
ポインタ42およびエントリポインタ41は1つづつ下
にさがることになる。
【0046】もちろん上述の例で、現在の時刻と比較し
て最低保持時間Tに満たない場合は、更にts時刻後の
次のエージングポインタのチェックまで全てのデータが
保持される。
【0047】また、現在の時刻と比較して、最低保持時
間T以上であって、且つフラグデータリード線55aの
値が‘0’で、過去に一致がなかった時は、制御線56
cにリセットパルスを入力し、第2のフラグレジスタ5
5をリセットすると同時に、前述のごとく、選択信号線
63a,63bを‘1’、選択信号線61,62を
‘0’に保った状態にしておいて、空きフラグクロック
線65にクロックパルスを印加すると同時に空きフラグ
データ線66に論理‘1’を印加することで選択された
メモリワードの第1のフラグレジスタ51に空きフラグ
‘1’がセットされる。すなわち、この制御方法により
過去に一致がなかった特定メモリワードのみを空きデー
タとすることが可能となる。
【0048】この時は、エージングテーブル43のエー
ジングポインタ42で指示されるエージングデータ40
が無効化され、エージングポインタ42は1つ下がり、
ts時間後の次のサイクルで、次のエージングデータ4
0のチェックを行う。エントリポインタ41は、最上位
のエージングデータ40の再書き込みが行われないので
位置は移動しない。このようにして、連想メモリ上に格
納される各エントリデータ毎に、最低保持時間Tをきめ
細かく制御することが可能となる。
【0049】なお、空きフラグ‘1’が格納されている
第1のフラグレジスタ51に対応するメモリワード11
へのデータの書き込みは、ビット線23−1、…、23
−nおよびビットバー線26−1、…、26−nにこの
メモリワード11に記憶すべきデータをのせた状態で、
メインデコーダ線52aおよびサブデコーダ線52bに
より選択された当該メモリワード11のワード線24を
アンドゲート67を経由してアクティブとすることによ
り行われる。
【0050】
【発明の効果】以上説明したように、本発明の連想メモ
リは、有効データが記憶されているか否かを示す第1の
フラグと、一致が検出されたか否かを示す第2のフラグ
を各メモリワードに対応させておき、第2のフラグ状態
に応じて各ワード毎に消去する構成を備えたものである
ため、一致のあったもの、もしくは一致のなかったもの
のみを各ワード毎に消去し再設定できる。
【図面の簡単な説明】
【図1】 本発明の一実施例の連想メモリの、1つのメ
モリワードに対応した特徴部分を示す回路図である。
【図2】 セレクト回路の構成を表す回路図である。
【図3】 エージングテーブルの一例を示す説明図であ
る。
【図4】 従来の連想メモリの一例を表した回路ブロッ
ク図である。
【図5】 連想メモリ中の1つのメモリワードを表した
詳細回路図である。
【図6】 LANの一例を示した図である。
【図7】 ブリッジの機能説明図である。
【符号の説明】
11 メモリワード 14 一致線 24 ワード線 51 第1のフラグレジスタ 55 第2のフラグレジスタ

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】各データをそれぞれ記憶する複数のメモリ
    ワードと、それら複数のメモリワードそれぞれに対応し
    て備えられ、対応するメモリワードに記憶されたデータ
    と入力された検索データとの一致不一致を検出する複数
    の一致検出回路とを備えた連想メモリにおいて、 前記複数のメモリワードそれぞれに対応して備えられ、
    対応するメモリワードが、検索の対象とされる有効デー
    タが記憶された第1の記憶状態にあるメモリワードであ
    るか、あるいは前記有効データが記憶されておらず、し
    たがって書き込みが許容される第2の記憶状態にあるメ
    モリワードであるかを示す第1のフラグが記憶される複
    数の第1のフラグレジスタと、 前記複数のメモリワードそれぞれに対応して備えられ、
    対応するメモリワードが、過去の複数回の検索において
    少なくとも一度一致が検出された第1の履歴状態にある
    メモリワードであるか、あるいは過去の複数回の検索に
    おいて全て不一致であった第2の履歴状態にあるメモリ
    ワードであるかを示す第2のフラグが記憶される複数の
    第2のフラグレジスタと、 前記第1の記憶状態にあるメモリワードのうち、前記第
    1の履歴状態および前記第2の履歴状態のうちいずれか
    一方の状態を示す前記第2のフラグが記憶された前記第
    2のフラグレジスタに対応するメモリワードを、各ワー
    ド毎に前記第2の記憶状態に変更する記憶状態変更回路
    と、 前記複数の第2のフラグレジスタに、前記第2の履歴状
    態を示す前記第2のフラグを各ワード毎に記憶させる履
    歴状態リセット回路を備えたことを特徴とする連想メモ
    リ。
  2. 【請求項2】前記第1の記憶状態にあるメモリワード
    を、一括して前記第2の記憶状態に変更する記憶状態リ
    セット回路を備えたことを特徴とする請求項1に記載の
    連想メモリ。
JP24004594A 1994-10-04 1994-10-04 連想メモリ Pending JPH08106788A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24004594A JPH08106788A (ja) 1994-10-04 1994-10-04 連想メモリ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24004594A JPH08106788A (ja) 1994-10-04 1994-10-04 連想メモリ

Publications (1)

Publication Number Publication Date
JPH08106788A true JPH08106788A (ja) 1996-04-23

Family

ID=17053662

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24004594A Pending JPH08106788A (ja) 1994-10-04 1994-10-04 連想メモリ

Country Status (1)

Country Link
JP (1) JPH08106788A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5978245A (en) * 1996-10-17 1999-11-02 Kawasaki Steel Corporation Associative memory device having circuitry for storing a coincidence line output

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5978245A (en) * 1996-10-17 1999-11-02 Kawasaki Steel Corporation Associative memory device having circuitry for storing a coincidence line output

Similar Documents

Publication Publication Date Title
JP5140849B2 (ja) 内容参照メモリ
US6137707A (en) Method and apparatus for simultaneously performing a plurality of compare operations in content addressable memory device
US6574702B2 (en) Method and apparatus for determining an exact match in a content addressable memory device
US20030131188A1 (en) Synchronous content addressable memory
JP3850669B2 (ja) キャッシュメモリ
JPH01223697A (ja) 内容番地付け記憶装置
US5267210A (en) SRAM with flash clear for selectable I/OS
JP3037089B2 (ja) 連想メモリ
US5657291A (en) Multiport register file memory cell configuration for read operation
US6766317B2 (en) Range check cell and a method for the use thereof
US20030005210A1 (en) Intelligent CAM cell for CIDR processor
JPH09120687A (ja) データ処理システムのための内容アドレス可能メモリ
JPH07105689A (ja) 連想メモリ
JP3370227B2 (ja) 連想メモリ
JPH08106788A (ja) 連想メモリ
JPH08124386A (ja) 連想メモリ
US5978245A (en) Associative memory device having circuitry for storing a coincidence line output
JP2738782B2 (ja) 半導体集積回路
US5465228A (en) Associative memory
JPH08180690A (ja) 連想メモリ
JPH05113929A (ja) マイクロコンピユータ
JP3645293B2 (ja) 連想メモリ
JPH07153281A (ja) 連想メモリ
JPH06215583A (ja) 連想メモリ
WO2001095336A2 (en) Partitioned content addressable memory device

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040907

A131 Notification of reasons for refusal

Effective date: 20040928

Free format text: JAPANESE INTERMEDIATE CODE: A131

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050208