JPH08124386A - 連想メモリ - Google Patents

連想メモリ

Info

Publication number
JPH08124386A
JPH08124386A JP6255092A JP25509294A JPH08124386A JP H08124386 A JPH08124386 A JP H08124386A JP 6255092 A JP6255092 A JP 6255092A JP 25509294 A JP25509294 A JP 25509294A JP H08124386 A JPH08124386 A JP H08124386A
Authority
JP
Japan
Prior art keywords
memory
flag
word
data
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
JP6255092A
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 JP6255092A priority Critical patent/JPH08124386A/ja
Publication of JPH08124386A publication Critical patent/JPH08124386A/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号明細書において不要なデータのみを一括消去で
きる連想メモリ、あるいは、特願平6−240045号
明細書において、各エントリ毎にヒット履歴に応じて、
不要なデータを消去できる連想メモリを提案した。しか
しながら、このような連想メモリでは、ヒット履歴に無
関係に半永久的に保有しておきたいエントリデータが消
去されてしまうという問題がある。そこで本発明の目的
は、上記の問題点を解消し、各エントリ毎にメモリテー
ブルに半永久的に保持するかどうかを定義可能な新規な
連想メモリを提案することにある。
【0027】
【課題を解決するための手段】上記目的を達成する本発
明の連想メモリは、各データをそれぞれ記憶する複数の
メモリワードと、それら複数のメモリワードそれぞれに
対応して備えられ、対応するメモリワードに記憶された
データと入力された検索データとの一致不一致を検出す
る一致検出回路とを備えた連想メモリにおいて、(1)
上記複数のメモリワードそれぞれに対応して備えられ、
対応するメモリワードが、検索の対象とされる有効デー
タが記憶された第1の記憶状態にあるメモリワードであ
るか、あるいは前記有効データが記憶されておらず、し
たがって書き込みが許容される第2の記憶状態にあるメ
モリワードであるかを示す第1のフラグが記憶される第
1のフラグレジスタ、(2)上記複数のメモリワードそ
れぞれに対応して備えられ、対応するメモリワードが、
過去の複数回の検索において少なくとも一度一致が検出
された第1の履歴状態にあるメモリワードであるか、あ
るいは過去の複数回の検索において全て不一致であった
第2の履歴状態にあるメモリワードであるかを示す第2
のフラグが記憶される第2のフラグレジスタ、(3)上
記第1の記憶状態にあるメモリワードのうち、前記第1
の履歴状態および前記第2の履歴状態のうちいずれか一
方の状態を示す前記第2のフラグが記憶された前記第2
のフラグレジスタに対応するメモリワードを、前記第2
の記憶状態に変更する記憶状態変更回路とこの記憶状態
変更回路の有効化制御フラグとを各ワード毎に有し、
(4)上記複数の第2のフラグレジスタに、前記第2の
履歴状態を示す前記第2のフラグを各ワード毎に記憶さ
せる履歴状態リセット回路を備えたことを特徴とするも
のである。
【0028】ここで、上記本発明の連想メモリにおい
て、前記第1の記憶状態にあるメモリワードを、一括し
て前記第2の記憶状態に変更する記憶状態リセット回路
を備えることが好ましい。
【0029】
【作用】本発明の連想メモリは、有効データが記憶され
ているか否かを示す第1のフラグと、一致が検出された
か否かを示す第2のフラグを各メモリワードに対応させ
ておき、第2のフラグ状態に応じて有効データが記憶さ
れているメモリワードを各ワード毎に消去する構成を備
え、且つこの操作の有効無効を制御するフラグを設えた
ものであるため、例えば上述したブリッジの初期化の
際、過去に一度も一致検出が行われていない、すなわち
データの送受信に参加していない端末のデータのみを一
定時間隔でワード毎に消去することができ、またこの時
必要なデータを誤って消してしまうこともない。なお、
メモリワードの消去は、そのメモリワードに記憶された
データ自体を消去してもよいが、それ限られず、消去さ
れた場合と実質的に等価でありさえすればよく、例えば
第1のフラグレジスタのフラグ内容を書き換えることに
よりそのメモリワードが検索に参加しないようにしても
よい。
【0030】上述したように、特開昭57−74887
号公報には本発明にいう第2のフラグに近似したフラグ
が示されており、特公昭61−31588号公報には本
発明にいう第1のフラグが示されている。しかしこれら
の公報に提案された技術は、前述したように、互いに全
く異なる課題を解決する手段を示したものであって、こ
れらの公報にはこれらの第1のフラグと第2のフラグを
結びつけるものは全く存在していない。またこれらの公
報には、本発明という記憶状態変更回路も存在していな
い。
【0031】
【実施例】以下、本発明の実施例について説明する。図
1は、本発明の一実施例の連想メモリの、1つのメモリ
ワードに対応した特徴部分を示す回路図である。前述し
た従来例で参照した図面における構成要素に対応する構
成要素には、それらの図面に付した番号と同一の番号を
付して示す。
【0032】この図1では、メモリワード11や一致線
14の構成は略示されている。この各メモリワード11
に対応して第1のフラグレジスタ51が備えられてお
り、この第1のフラグレジスタ51には、対応するメモ
リワード11に検索の対象となる有効データが記憶され
ている場合に‘0’、検索の対象から除外され、したが
って書き込みを許容する無効のデータが記憶されている
場合(これを、ここでは対応するメモリワード11が
「空き状態にある」と称する)に‘1’の空きフラグ
(本発明にいう第1のフラグの一例)が記憶されてい
る。ここでは、この空きフラグは‘0’、すなわち図示
のメモリワード11には有効データが格納されているも
のとする。この第1のフラグレジスタ51のQ出力は、
一方の入力側が反転されたアンド回路53の反転入力側
に接続されている。
【0033】ビット線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’が格納される。
【0034】また、各メモリワードにデータがエントリ
された時に、第2のフラグレジスタ55をリセットする
場合は、ワードリセット信号線56cとワード線24を
アクティブにすることで、これらの信号線56cとワー
ド線24とを入力とする2入力アンドゲート71、この
アンドゲート71の出力を他方の入力とする反転出力オ
アゲート70を経由して第2のフラグレジスタ55のリ
セット反転入力Rに入力されたリセットパルスにより、
リセットすることが可能となる。このワード線24は、
メインデコーダ線52aとサブデコーダ線52bを入力
とするアンドゲート67の出力として定義されており、
これらのデコーダ線52a,52bにより選択された特
定ワードのみがアクティブとなるよう設けられている。
【0035】ここで、上記のようにしてこのメモリワー
ドに一致が生じた結果、アンドゲート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も接続されている。
【0036】図2は、セレクト回路59の構成を表す回
路図である。このセレクト回路59は、5入力アンドゲ
ート590a,590b、3入力アンドゲート591、
入力側の信号が全て反転される3入力アンドゲート59
2、入力側の信号が1つだけ反転される3入力アンドゲ
ート593、および各入力がアンドゲート590a,5
90b,592,593の各出力と接続された4入力オ
アゲート594a、この出力と第2フラグ有効化制御フ
ラグレジスタ595のQ出力反転信号を入力とする2入
力アンドゲート594bおよびこのアンドゲート594
bとアンドゲート591の出力ならびに選択信号線61
に接続された3入力オアゲート594cから構成されて
いる。
【0037】選択信号線61は、各メモリワード11に
対応する各第1のフラグレジスタ51の全てに、一括し
て、そのメモリワード11が空き状態にあることを表す
空きフラグ‘1’を記憶させるための信号線である。そ
の信号線61に論理‘1’の信号を印加すると、その信
号はオアゲート594cを経由し、図1に示すアンドゲ
ート64に入力される。アンドゲート64には空きフラ
グクロック信号線65も接続されており、セレクト回路
59から論理‘1’の信号がアンドゲート64に入力さ
れていることから、空きフラグクロック信号線65にク
ロックパルスが印加されるとそのクロックパルスはアン
ドゲート64を通過し、第1のフラグレジスタ51のク
ロック入力端子に入力される。このときに空きフラグデ
ータ線66に論理‘1’の信号をのせておくと、第1の
フラグレジスタ51に空きフラグ‘1’がセットされ、
これにより全てのメモリワード11が一括して空き状態
となる。前述したように、第1のフラグレジスタ51の
出力はアンドゲート53の反転入力端子と接続されてお
り、空き状態にあるメモリワード11でたとえ一致が検
出され一致線14が‘1’となってもアンドゲート53
で遮断され、一致線140は‘0’のままにとどまるこ
とになる。
【0038】また、3本の選択信号線61,62,63
aが全て‘0’の状態において、第2のフラグレジスタ
55に過去に一致がなかったことを表す‘0’が格納さ
れていた場合、信号線58が‘0’の状態にあり、アン
ドゲート592の出力が‘1’となり、オアゲート59
4aを経由して‘1’が出力される。この時、第2フラ
グ有効化制御フラグレジスタ595のQ出力が‘0’な
らば、アンドゲート594bおよびオアゲート594c
を経由して‘1’が出力される。その状態で空きフラグ
データ線66に‘1’の信号をのせて、空きフラグクロ
ック線65にクロックパルスを印加すると、第1のフラ
グレジスタ51に空きフラグが格納される。すなわち、
この場合、過去に一致がなかったことを表す‘0’が格
納されていた第2のフラグレジスタ55に対応するメモ
リワード11が一括して空き状態に変更される。
【0039】また、これとは逆に、第2フラグ有効化制
御フラグレジスタ595のQ出力が‘1’ならば、アン
ドゲート594bの出力は‘0’となりオアゲート59
4cの出力は‘0’のままであり、空きフラグデータ線
66に‘1’の信号をのせて、空きフラグクロック線6
5にクロックパルスが印加されても第1のフラグレジス
タ51は‘0’の状態(データが有効である)を保つこ
とになる。即ち、この各ワード毎に設けられた第2フラ
グ有効化制御フラグレジスタ595にセットされるデー
タによって、各ワード毎にそのデータをヒット履歴によ
って消去可能にするか否かを決定することができるわけ
である。
【0040】また、選択信号線61,63aを‘0’、
選択信号線62を‘1’に保った状態において、第2の
フラグレジスタ55に過去に一致があったことを表す
‘1’が格納されていた場合、信号線58が‘1’の状
態にあり、アンドゲート593の出力が‘1’となり、
同様にして、第2フラグ有効化制御フラグレジスタ59
5のQ出力が‘0’ならばアンドゲート594bおよび
オアゲート594cを経由して‘1’が出力される。す
なわち、この場合、過去に一致があったことを表す
‘1’が格納されていた第2のフラグレジスタ55に対
応するメモリワード11が一括して空き状態に変更され
る。以上の場合が第2のフラグレジスタ55および第2
フラグ有効化制御フラグレジスタ595の値に応じて一
括して、データの有効、非有効を決める方法である。
【0041】同様にして各ワード毎のデータの有効、非
有効を決める方法について以下に述べる。まず、選択信
号線63aを‘1’、選択信号線61,62,63bを
‘0’に保った状態にしておいて、第2のフラグレジス
タ55に過去に一致がなかったことを表す‘0’が格納
されており、信号線58が‘0’の状態にあり、且つ特
定のメモリワード11が選択され、そのワード線24、
従って信号線60が‘1’の状態にある時、アンドゲー
ト590aの出力が‘1’となり、同様にして、第2フ
ラグ有効化制御フラグレジスタ595のQ出力が‘0’
ならばアンドゲート594bおよびオアゲート594c
を経由して‘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’とな
り、同様にして、第2フラグ有効化制御フラグレジスタ
595のQ出力が‘0’ならばアンドゲート594bお
よびオアゲート594cを経由して‘1’が出力され
る。この状態で空きフラグクロック線65にクロックパ
ルスが印加され、同時に空きフラグデータ線66に論理
‘1’の信号がのせられていると、第1のフラグレジス
タ51に空きフラグ‘1’がセットされる。すなわち、
過去に一致のあった特定メモリワードのみを空きデータ
とすることが可能となるわけである。
【0043】以上の場合が第2フラグレジスタ55およ
び第2のフラグ有効化制御フラグレジスタ595の値に
応じて各ワード毎にデータの有効、非有効を決める方法
である。このように、第2フラグ有効化制御フラグレジ
スタ595の存在により、特定のワードデータを半永久
的に保持すると同時に、非有効データを効率的に無効化
できるものである。また、図示はしていないが、一般的
手法により、この第2フラグ有効化制御フラグレジスタ
595は、各ワード毎に選択しデータをセットする手段
をもつ。また、同様にして選択信号線63a,63bを
‘1’にして特定メモリワード11を選択してワード線
24(信号線60)を‘1’にすることによって、アン
ドゲート591の出力が‘1’となり、その結果オアゲ
ート594cを経由して‘1’が出力されるので、上述
した場合と同様にして第1のフラグレジスタ51に空き
フラグ‘1’がセットされ、任意の特定メモリワードを
空き状態にすることができる。
【0044】このような構成における各データ毎の書き
込み時間、すなわち登録時間(エントリ時間)の管理の
一例を図3を用いて説明する。まずエントリデータのエ
ージング(登録時間管理)を行うために、図3に示すよ
うに、前述の連想メモリテーブルとは別に、エントリデ
ータの登録時系列に対応させてエージングデータ40を
登録するエージングテーブル43を作る。ここで、エン
トリアドレス40aとは連想メモリにエントリデータが
登録された時のアドレスを示し、エントリタイム40b
とはその時刻に対応したデータであり、少なくともこの
2種類のデータをエージングデータ40として、エント
リポインタ41が示す位置に格納する。一旦エージング
データ40が格納されると、エントリポインタ41は、
次の格納位置を順次示すよう構成されている。
【0045】また、このエントリデータを前述の連想メ
モリのメモリワード11への登録の時に、前述の手法に
より第2のフラグレジスタ55をリセットし、過去に一
致がなかったことを表す‘0’に設定しておき、このメ
モリワード11のアドレスをエントリアドレスEAiと
し、その登録時刻をETiとして図3のエージングテー
ブル43に登録する。一旦、連想メモリ上に登録された
データは、検索の毎に、履歴フラグクロック線57に入
力されるパルスによって、アンドゲート53の出力が入
力されるオアゲート54の出力が入力される。すなは
ち、一致があったかどうかという情報がワード単位で蓄
積されることになる。
【0046】また図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つづつ下
にさがることになる。
【0047】もちろん上述の例で、現在の時刻と比較し
て最低保持時間Tに満たない場合は、更にts時刻後の
次のエージングポインタのチェックまで全てのデータが
保持される。
【0048】また、現在の時刻と比較して、最低保持時
間T以上であって、且つフラグデータリード線55aの
値が‘0’で、過去に一致がなかった時は、制御線56
cにリセットパルスを入力し、第2のフラグレジスタ5
5をリセットすると同時に、前述のごとく、選択信号線
63a,63bを‘1’、選択信号線61,62を
‘0’に保った状態にしておいて、空きフラグクロック
線65にクロックパルスを印加すると同時に空きフラグ
データ線66に論理‘1’を印加することで選択された
メモリワードの第1のフラグレジスタ51に空きフラグ
‘1’がセットされる。すなわち、この制御方法により
過去に一致がなかった特定メモリワードのみを空きデー
タとすることが可能となる。
【0049】この時は、エージングテーブル43のエー
ジングポインタ42で指示されるエージングデータ40
が無効化され、エージングポインタ42は1つ下がり、
ts時間後の次のサイクルで、次のエージングデータ4
0のチェックを行う。エントリポインタ41は、最上位
のエージングデータ40の再書き込みが行われないので
位置は移動しない。このようにして、連想メモリ上に格
納される各エントリデータ毎に、最低保持時間Tをきめ
細かく制御することが可能となる。
【0050】なお、空きフラグ‘1’が格納されている
第1のフラグレジスタ51に対応するメモリワード11
へのデータの書き込みは、ビット線23−1、…、23
−nおよびビットバー線26−1、…、26−nにこの
メモリワード11に記憶すべきデータをのせた状態で、
メインデコーダ線52aおよびサブデコーダ線52bに
より選択された当該メモリワード11のワード線24を
アンドゲート67を経由してアクティブとすることによ
り行われる。
【0051】
【発明の効果】以上説明したように、本発明の連想メモ
リは、有効データが記憶されているか否かを示す第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に記載の
    連想メモリ。
JP6255092A 1994-10-20 1994-10-20 連想メモリ Pending JPH08124386A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6255092A JPH08124386A (ja) 1994-10-20 1994-10-20 連想メモリ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6255092A JPH08124386A (ja) 1994-10-20 1994-10-20 連想メモリ

Publications (1)

Publication Number Publication Date
JPH08124386A true JPH08124386A (ja) 1996-05-17

Family

ID=17274014

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6255092A Pending JPH08124386A (ja) 1994-10-20 1994-10-20 連想メモリ

Country Status (1)

Country Link
JP (1) JPH08124386A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1166867A (ja) * 1997-08-26 1999-03-09 Kawasaki Steel Corp 連想メモリ装置およびこれに適用される符号化回路
US5978245A (en) * 1996-10-17 1999-11-02 Kawasaki Steel Corporation Associative memory device having circuitry for storing a coincidence line output

Cited By (2)

* 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
JPH1166867A (ja) * 1997-08-26 1999-03-09 Kawasaki Steel Corp 連想メモリ装置およびこれに適用される符号化回路

Similar Documents

Publication Publication Date Title
US8564998B2 (en) Content addressable memory
US4567578A (en) Cache memory flush scheme
TW445410B (en) Method and apparatus for performing a read next highest priority match instruction in a content addressable memory device
US5267210A (en) SRAM with flash clear for selectable I/OS
US5657291A (en) Multiport register file memory cell configuration for read operation
US6215685B1 (en) Sequentially comparing content addressable memory
US5805493A (en) Associative memory having a data registration device
KR20010091109A (ko) 어소시어티브 캐시 메모리
US6766317B2 (en) Range check cell and a method for the use thereof
US20030005210A1 (en) Intelligent CAM cell for CIDR processor
JPH07105689A (ja) 連想メモリ
JPH03219326A (ja) データ比較回路
JP3370227B2 (ja) 連想メモリ
JPH08124386A (ja) 連想メモリ
JPH08106788A (ja) 連想メモリ
US5978245A (en) Associative memory device having circuitry for storing a coincidence line output
US5465228A (en) Associative memory
US20040125630A1 (en) CAM with automatic next free address pointer
JPH08180690A (ja) 連想メモリ
JPH04368695A (ja) 半導体集積回路
JPH07153281A (ja) 連想メモリ
JPH08124388A (ja) 連想メモリ
JP3597882B2 (ja) 連想メモリ
WO2001095336A2 (en) Partitioned content addressable memory device
JP3597881B2 (ja) 連想メモリ

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040921

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040928

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050208