JPH10283369A - データ検索装置およびその使用方法 - Google Patents

データ検索装置およびその使用方法

Info

Publication number
JPH10283369A
JPH10283369A JP9092433A JP9243397A JPH10283369A JP H10283369 A JPH10283369 A JP H10283369A JP 9092433 A JP9092433 A JP 9092433A JP 9243397 A JP9243397 A JP 9243397A JP H10283369 A JPH10283369 A JP H10283369A
Authority
JP
Japan
Prior art keywords
data
stored
search
memory
memory areas
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.)
Withdrawn
Application number
JP9092433A
Other languages
English (en)
Inventor
Masato Yoneda
正人 米田
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 JP9092433A priority Critical patent/JPH10283369A/ja
Publication of JPH10283369A publication Critical patent/JPH10283369A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】本発明は、複数の格納データを書換え自在に格
納しておき、検索データが入力され、入力された検索デ
ータに対応する格納データを検索するデータ検索装置、
およびそのデータ検索装置の使用方法に関し、検索の高
速性と、メモリ容量、消費電力、チップ面積および欠陥
発生時の回復可能性とを極めて高いレベルで均衡を保
つ。 【解決手段】第1のメモリ領域110を複数のブロック
に分け、また第1のメモリ領域110に値の小さな順も
しくは大きな順にデータを格納しておき、第2のメモリ
領域210には、第1のメモリ領域110の各ブロック
の先頭もしくは末尾のデータを格納しておき、検索デー
タと、第2のメモリ領域210に格納されたデータとの
大小比較により、所望のデータが格納されたブロックを
見つけ、そのブロック内の複数のデータを読出して検索
データと一致不一致の比較を行なうことにより所望のデ
ータを検出する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、複数の格納データ
を書換え自在に格納しておき、検索データが入力され、
入力された検索データに対応する格納データを検索する
データ検索装置、およびそのデータ検索装置の使用方法
に関する。
【0002】
【従来の技術】従来より、上記のようなデータ検索装置
が様々な分野で利用されている。以下、データ検索装置
の一例として、検索機能を備えたメモリである連想メモ
リの概要を説明し、次いで連想メモリの主要な用途の1
つである、通信ネットワークを経由して送信されるネッ
トワークを中継するネットワークフレーム中継器につい
て説明する。
【0003】従来より、配列された複数のワードメモリ
それぞれに各格納データを格納しておき、検索データを
入力し、入力された検索データに対応する所定の格納デ
ータ、すなわちその入力された検索データの全部もしく
は所定の一部のビットパターンと一致するビットパター
ンを有する格納データが記憶されたワードメモリを検索
する連想メモリ(Associative Memor
y,内容アドレス式メモリ;Content Addr
essable Memory(CAM))が提案され
ている。
【0004】図2は、連想メモリの一例を表わした回路
ブロック図である。この連想メモリ(CAM)10に
は、図の横方向に並ぶmビットのメモリセルからなる、
mビットを1ワードとする多数のワードメモリ11_
1,11_2,…,11_nが、図の縦方向に配列され
ている。またこの連想メモリ10は、1ワードの入力デ
ータ(ここでは検索データ)が入力されラッチされる入
力データレジスタ12と、その入力データレジスタ12
にラッチされた検索データのうち検索に有効なデータ部
分を定める(検索に関与させないデータ部分にマスクを
かける)マスクデータがラッチされるマスクデータレジ
スタ13が備えられており、入力データレジスタ12に
ラッチされた検索データのうち、マスクデータレジスタ
にラッチされたマスクデータによりマスクがかけられて
いない、検索データの全部もしくは所定の一部のビット
パターンと、各ワードメモリ11_1,11_2,…,
11_nに記憶された格納データのうち上記ビットパタ
ーンに対応する部分のビットパターンとの一致(ヒッ
ト)不一致(ミスヒット)が比較され、各ワードメモリ
11_1,11_2,…,11_nのそれぞれに対応し
て備えられた一致線14_1,14_2,…,14_n
のうちビットパターンが一致したワードメモリ11_
1,11_2,…,11_nに対応する一致線に論理
‘1’のヒットフラグが出力される。それ以外の一致線
は論理‘0’(ミスヒット)にとどまる。
【0005】このCAM10には、各ワードメモリ11
_1,11_2,…,11_nに対応して、そのワード
メモリに検索の対象となる有効な格納データが格納され
ているか(論理‘0’)、それともそのワードメモリ
が、有効なデータが格納されていない空き状態にあるか
(論理‘1’)を区別するためのエンプティフラグを格
納するエンプティフラグレジスタ15_1,15_2,
…,15_nが備えられており、上記の検索にあたって
は、エンプティフラグレジスタ15_1,15_2,
…,15_nに格納されたエンプティフラグが論理
‘0’(有効な検索データが格納されている)の状態に
あるワードメモリのみが検索の対象となる。
【0006】各エンプティフラグレジスタ15_1,1
5_2,…,15_nに格納されたエンプティフラグ
は、プライオリティエンコーダ17に入力され、このプ
ライオリティエンコーダ17からは、所定の優先順位づ
けに従って、論理‘1’のエンプティフラグが格納され
たエンプティフラグレジスタ(ここではエンプティフラ
グレジスタ14_n−1とエンプティフラグレジスタ1
4_nの2つとする)のうちの優先度の最も高いエンプ
ティフラグレジスタ(ここではエンプティフラグレジス
タ14_n−1)に対応するアドレスデータHEA(H
ighest Empty Address)が出力さ
れる。このアドレスデータHEAは検索とは無関係に常
時出力されている。この連想メモリ10に新たに検索デ
ータを格納しようとするときは、そのアドレスデータH
EAが参照され、空きアドレスにその新たなデータが格
納される。
【0007】検索動作に戻って説明を続行する。上述し
た検索により一致線14_1,14_2,…,14_n
に出力された信号は、各ヒットフラグレジスタ16_
1,16_2,…,16_nに格納される。ここでは、
一例として、図示のように、各ヒットフラグレジスタ1
6_1,16_2,…,16_nにそれぞれ‘0’,
‘1’,‘1’,‘0’,…,‘0’,‘0’が格納さ
れたものとする。エンプティフラグレジスタ15_1,
15_2,…,15_nのうち対応するワードメモリが
空き状態にあることをあらわす論理‘1’のエンプティ
フラグが格納されたエンプティフラグレジスタに対応す
るフラグレジスタには、無条件に、すなわち、そのワー
ドメモリにたまたま検索データと合致するビットパター
ンが格納されていたとしても、不一致をあらわす論理
‘0’が格納される。
【0008】これらのヒットフラグレジスタ16_1,
16_2,…,16_nに格納されたヒットフラグは、
エンプティフラグの場合と同様に、プライオリティエン
コーダ17に入力され、プライオリティエンコーダ17
からは、所定の優先順位づけに従って、論理‘1’のヒ
ットフラグが格納されたヒットフラグレジスタ(ここで
はヒットフラグレジスタ16_2とヒットフラグレジス
タ16_3の2つ)のうちの優先度の最も高いヒットフ
ラグレジスタに対応するアドレスデータHHA(Hig
hest Hit Addres)が出力される。ここ
では、添字が若いほど優先順位が高いものとし、従って
ヒットフラグレジスタ16_2に対応するメモリアドレ
スが出力される。
【0009】また、このCAM10は通常のRAMと同
様、外部からアドレスを与えて、そのアドレスにデータ
を書き込んだり、そのアドレスからデータを読み出す機
能も備えている。例えば、プライオリティエンコーダ1
7から出力されたアドレスデータHHAをアドレスデコ
ーダ18にアドレスデータADとして入力してデータの
読出しを指示すると、アドレスデコーダ18ではこの入
力されたアドレスデータADをデコードして、各ワード
メモリ11_1,11_2,…,11_nそれぞれに対
応して備えられたワード線19_1,19_2,…,1
9_nのうちの入力されたアドレスデータADに対応す
るいずれか1本のワード線(ここではワード線19_
2)にアクセス信号(ここでは論理‘1’の信号)を出
力し、アクセス信号の出力されたワード線19_2に対
応するワードメモリ11_2に記憶されている格納デー
タが出力レジスタ20に読み出される。
【0010】また、書き込もうとする入力データを入力
するとともに、例えばプライオリティエンコーダ17か
ら出力されたアドレスデータHEAをアドレスデコーダ
18にアドレスデータADとして入力し、データの書込
みを指示すると、アドレスデコーダ18では、データ読
出しのときと同様、入力されたアドレスデータADをデ
コードして、そのアドレスデータに対応する1本のワー
ド線にアクセス信号を出力し、アクセス信号の出力され
たワード線に対応するワードメモリに入力データが書き
込まれる。
【0011】なお、検索のときと同様、この連想メモリ
10にデータを格納するときも、そのデータの格納先が
空きアドレスであるか否かに拘らず、マスクデータレジ
スタ13に格納されマスクデータが有効に作用し、格納
しようとするデータのうち、マスクデータによりマスク
されていないデータ部分のみ書き換えられ、マスクデー
タによりマスクされたデータ部分は書き換えられずに前
のデータがそのまま保存される。
【0012】また、CAM10には、検索によりヒット
したすべてのワードメモリを一括して消去する機能も備
えられている。具体的には、検索によりヒットしたすべ
てのワードメモリに対応するエンプティフラグレジスタ
の内容が論理‘1’(空き状態)に変更される。この機
能は、例えば後述するネットワークフレーム中継器に備
えられた連想メモリに格納されたデータのうち、時間的
に古いデータを一括して消去する場合等に用いられる。
【0013】上記のように、CAM10は、検索データ
の全部もしくは所定の一部のデータを用いて多数のワー
ドメモリ11_1,11_2,…,11_nに格納され
た格納データを検索し、一致する格納データを有するワ
ードメモリのアドレスHHAを得ることを基本とするメ
モリである。上記のような連想メモリの主要な用途の1
つに、ネットワークフレームの送受信の中継を行なうネ
ットワークフレーム中継器がある。以下、このネットワ
ークフレーム中継器の概要について説明する。
【0014】従来より、ネットワークシステム中に、そ
のネットワークシステム内で送受信される情報の塊とし
てのネットワークフレームの送信を中継する、例えば
“ハブ”等と呼ばれるネットワークフレーム中継器が存
在する。図3は、ネットワークフレーム中継器の一構成
例を示す回路ブロック図である。
【0015】ここに示すネットワークフレーム中継器3
0には、バス31に接続されたn個のポートコントロー
ラ32_1,…,32_nが備えられており、また各ポ
ートコントローラ32_1,…,32_nに対応する各
ポート33_1,…,33_nには、LAN34_1,
…,34_nを介して、複数の端末A,B,…,C;
…;E,F,…,Gが接続されている。
【0016】また、バス31には、CAM35、RAM
36、CPU37、およびパケットメモリ38が接続さ
れている。CAM35は検索機能が付加されたものであ
るため、通常のRAMと比べビット単価が高く、メモリ
容量が比較的小さい。そこで図3に示すネットワークフ
レーム中継器30ではCAM35とRAM36が併用さ
れ、検索のために直接に必要なデータのみCAM35に
格納しておき、その他の、検索のためには直接には関与
しないデータは、RAM36に格納される。CAM35
の各ワードメモリのアドレスとRAM36の各メモリ領
域のアドレスは信号線39で互いに対応づけられてお
り、CAM35には、各端末のアドレスをあらわすアド
レスデータと、後述するタイムスタンプ情報が格納さ
れ、RAM36には、各端末が接続されたポートのポー
ト番号や、その他、説明は省略するが、VLAN(Vi
rtualLAN;仮想LAN)に関するデータや、こ
のネットワークフレーム中継器のハードウェアが参照す
るデータなどが格納されている。
【0017】また、CPU37は、このネットワークフ
レーム中継器30の全体の制御を司っており、パケット
メモリ38は、送信されてきたネットワークフレームを
一時的に蓄えるものである。尚、ネットワークフレーム
中継器30には、通常、さらに種々のデバイス等が備え
られているが、ここでの説明には直接は関係しないた
め、それらについての図示および説明は省略する。
【0018】ここでは、LAN34_1に接続された端
末Bから、LAN34_nに接続された端末Eに向け
て、ネットワークフレームの形式を有する、ある情報を
送信するものとする。このとき、ネットワークフレーム
には、そのヘッダ部分に、情報の受信先、すなわち端末
Eを示すデスティネーションアドレス、および情報の送
信元、すなわち端末Bを示すソースアドレスが記録され
ている。
【0019】端末Bからポート33_1を経由して送信
されてきたネットワークフレームは、ポートコントロー
ラ32 1を経由し、バス31を経由して、一旦パケッ
トメモリ38に蓄積される。CPU37は、そのネット
ワークフレームの中のヘッダの部分からデータ転送先
(ここでの例では端末E)をあらわすデスティネーショ
ンアドレスを抽出してCAM35に送る。CAM35に
は、このネットワークシステムを構成する各端末A,
B,…,C;…;E,F,…,Gのアドレスを表わすア
ドレスデータが記憶されており、一方、RAM36に
は、それら各端末A,B,…,C;…;E,F,…,G
がどのポート33_1,33_nを経由した先に接続さ
れているかを示すポート番号が格納されている。CAM
35には、デスティネーションアドレスをあらわすアド
レスデータが入力され、そのアドレスデータと同一のア
ドレスデータが格納されているCAM35のワードメモ
リのアドレスHHAが出力される。それを受けて、RA
M36の、アドレスHHAに対応するアドレスから、そ
のデスティネーションアドレスが示す端末の接続先を示
すポート番号が読み出される。この読み出されたポート
番号により、CPU35は、今回のネットワークフレー
ムはポート33_nから送信すべきネットワークフレー
ムであることを認識する。
【0020】このようにしてRAM36からポート番号
が読み出されると、それに引き続いて、ネットワークフ
レームが、パケットメモリ38からバス31を経由して
ポートコントローラ32_nに入力され、ポート33_
nを経由し、さらにLAN34_nを経由して端末Eに
送られる。このように、ネットワークフレーム中継器で
は、アドレスの高速検索用として連想メモリ(CAM)
が有効に利用されている。
【0021】図4は、図3に示すネットワークフレーム
中継器30に備えられたCAM35に格納された格納デ
ータを示した図、図5は、タイムスタンプ情報の説明図
である。各ワードメモリには、図4に示すように、各端
末のアドレスをあらわすアドレスデータと、タイムスタ
ンプ情報が格納されている。
【0022】上述したように、ネットワークフレームか
ら抽出したデスティネーションアドレスで検索を行な
い、その検索により得られたアドレスHHAに対応した
RAM36のアドレスからそのネットワークフレームを
送出すべきポート番号を知ることができるが、各ワード
メモリには、図4に示すように、各端末のアドレスをあ
らわすアドレスデータのほか、各タイムスタンプ情報も
格納されている。以下、このタイムスタンプ情報につい
て説明する。
【0023】ここでは、図5に示すように、所定の時間
間隔を1つのタイムスロットとし、時間の経過に従っ
て、p個のタイムスロットのうちのいずれか1つのタイ
ムスロットに循環的に移り変わるものとし、これらp個
のタイムスロットを互いに区別する情報、例えばタイム
スロットの番号1,2,…,pをタイムスタンプ情報と
称する。
【0024】ネットワークフレームから抽出したソース
アドレスで、CAM35の検索を行ない、そのソースア
ドレスと同一の端末アドレスが検出されたときは、その
ワードメモリのタイムスタンプ情報が現時点のタイムス
ロットをあらわすタイムスタンプ情報に書き換えられ
る。また、検索を行なった結果そのソースアドレスと同
一のアドレスが検出されなかったときは、空きアドレス
(空き状態のワードメモリ)に、そのソースアドレス
と、さらに現時点のタイムスロットをあらわすタイムス
タンプ情報とからなるデータが書き込まれる。これとと
もに、RAM36には、そのソースアドレスを持ったネ
ットワークフレームが送信されてきたポートのポート番
号が書き込まれる。また、CAM35では、1つのタイ
ムスロットを規定する時間間隔ごとに、現時点のタイム
スロットよりも1つ先のタイムスロット(最も時間の経
過したタイムスロット)のタイムスタンプ情報で検索が
行なわれ、そのタイムスタンプ情報と同一のタイムスタ
ンプ情報が検出されたワードメモリのデータが一括して
消去される。この消去は、具体的には、前述したよう
に、そのワードメモリに対応するエンプティフラグレジ
スタの内容が空き状態をあらわす内容に書き換えられ
る。長期間通信に参加していない端末のアドレス情報を
消去することによってCAM15内に空きアドレスを確
保し、新たなデータの格納を可能にするためである。
【0025】
【発明が解決しようとする課題】以上説明した連想メモ
リはそこに格納されたデータを高速に検索するのに適
し、例えばネットワークフレーム中継器など高速検索を
必要とする用途に広く採用されているが、連想メモリ
は、通常のメモリと較べ、1つのメモリセルを構成する
トランジスタの数が多く半導体基板上に作り込むにあた
り通常のメモリよりも大面積を必要とする、多数のワー
ドメモリが同時に動作するため大容量化すると消費電力
が著しく増大する、などの点から高集積化、大容量化が
困難であり、また、通常のメモリと較べ製造工程中に生
じた欠陥を救済するための冗長回路を組み込んでおくこ
とが困難であり、製造歩留まりが低いという問題があ
る。
【0026】一方、CAMを使用せずに通常のRAMを
使用するデータ検索装置も知られており、例えば、RA
Mに、多数の格納データを値の小さな順もしくは値の大
きな順に格納しておき、検索にあたっては、そのRAM
の中央のアドレスのメモリ領域に格納された格納データ
を読み出してきて検索データと比較し、それらのデータ
の大小に応じて中央のアドレスで二分された2つのメモ
リ領域群のうちの一方のメモリ領域群を選択し、その選
択したメモリ領域群中の中央のアドレスのメモリ領域に
格納された格納データを読み出してきて検索データと比
較するという手順を順次繰り返すことにより最終的に目
的の格納データに到達する、いわゆるバイナリ・サーチ
手法が知られている。このバイナリ・サーチ手法では、
例えば1k(210)個のメモリ領域を持つRAMの場合
10回、4k(212)個のメモリ領域を持つRAMの場
合12回の読み出しと比較を行なって始めて目的のデー
タに辿りつくことができ、このような多数回の動作を必
要とするのでは高速な検索が困難であるという問題があ
る。
【0027】本発明は、上記事情に鑑み、連想メモリよ
りは検索動作の低下は避けられないものの、かなり高速
な検索が可能であって、しかも大容量化に適したデータ
検索装置、およびそのデータ検索装置の使用方法を提供
することを目的とする。
【0028】
【課題を解決するための手段】上記目的を達成する本発
明のデータ検索装置は、(1)複数の格納データそれぞ
れを書換え自在にそれぞれに格納する複数の第1のメモ
リ領域、それぞれに2以上の第1のメモリ領域が含まれ
るように上記複数の第1のメモリ領域が分割されてなる
複数のブロックの中から選択された1つのブロックを構
成する複数の第1のメモリ領域に格納された複数の格納
データを読み出す読出手段、および読出手段により読み
出された複数の格納データそれぞれと、入力された検索
データとの一致不一致の比較を行なう第1の比較手段を
備えた第1のメモリ部と、(2)複数の格納データそれ
ぞれを書換え自在にそれぞれに格納する複数の第2のメ
モリ領域、およびこれら複数の第2のメモリ領域に格納
された複数の格納データそれぞれと、入力された検索デ
ータとの大小比較を行なう第2の比較手段を備えた第2
のメモリ部とを具備することを特徴とする。
【0029】ここで、上記第1の比較手段が、入力され
た検索データと、読出手段により読み出された複数の格
納データそれぞれとの、互いに対応する一部のビットパ
ターンどうしの一致不一致が比較されるように、上記一
部以外の部分を比較対象から外すマスキングを行なうマ
スキング手段を含むものであることが好ましい。また、
上記目的を達成する本発明のデータ検索装置の使用方法
は、上記(1)の第1のメモリ部と、上記(2)の第2
のメモリ部とを備えたデータ検索装置の使用方法であっ
て、上記複数の格納データそれぞれを書換え自在にそれ
ぞれに格納する複数の第1のメモリ領域、それぞれに2
以上の第1のメモリ領域が含まれるように上記複数の第
1のメモリ領域が分割されてなる複数のブロックの中か
ら選択された1つのブロックを構成する複数の第1のメ
モリ領域に格納された複数の格納データを読み出す読出
手段、および読出手段により読み出された複数の格納デ
ータそれぞれと、入力された検索データとの一致不一致
の比較を行なう第1の比較手段を備えた第1のメモリ部
と、複数の格納データそれぞれを書換え自在にそれぞれ
に格納する複数の第2のメモリ領域、およびこれら複数
の第2のメモリ領域に格納された複数の格納データそれ
ぞれと、入力された検索データとの大小比較を行なう第
2の比較手段を備えた第2のメモリ部とを具備するデー
タ検索装置の使用方法であって、上記複数の第1のメモ
リ領域に、複数の格納データを、値の大きな順もしくは
小さな順に格納するとともに、上記複数の第2のメモリ
領域に、上記複数のブロックそれぞれを構成する第1の
メモリ領域のうちの先頭もしくは末尾の第1のメモリ領
域に格納された格納データを格納しておき、上記第2の
比較手段に、上記複数の第2のメモリ領域に格納された
複数の格納データそれぞれと入力された検索データとの
大小比較を行なわせることにより、その検索データに対
応する格納データが格納された第1のメモリ領域を含む
ブロックである検索対策ブロックを検出し、上記読出手
段に、上記検索対象ブロックを構成する複数の第1のメ
モリ領域に格納された複数の格納データを読み出させ
て、上記第1の比較手段に読出手段により読み出された
複数の格納データそれぞれと検索データとの一致不一致
の比較を行なわせることにより、その検索データに対応
する格納データを検出することを特徴とする。
【0030】ここで、上記本発明のデータ検索装置の使
用方法において、上記データ検索装置の第1の比較手段
が、入力された検索データと、読出手段により読み出さ
れた複数の格納データそれぞれとの、互いに対応する一
部のビットパターンどうしの一致不一致が比較されるよ
うに、上記一部以外の部分を比較対象から外すマスキン
グを行なうマスキング手段を含むものであって、検索対
象ブロックを検出した後、読出手段に、その検索対象ブ
ロックを構成する複数の第1のメモリ領域に格納された
複数の格納データを読み出させるとともに、マスキング
手段に、上記一部以外の部分にマスキングを施させて、
第1の比較手段に、読出手段により読み出された複数の
格納データそれぞれと上記検索データとの、上記一部の
ビットパターンどうしの一致不一致の比較を行なわせる
ことにより、その検索データに対応する格納データを検
出することが好ましい。
【0031】本発明のデータ検索装置は、上記使用方法
を採用すると、第2のメモリ部で検索(大小比較)を行
ない、次いで第1のメモリ部で検索(一致不一致の比
較)を行なうだけで目的とする格納データに辿り着くこ
とができ、連想メモリほどではないにしろ、バイナリ・
サーチ手法を用いた場合と較べ極めて高速な検索が可能
である。
【0032】また、回路規模上は、上記第1のメモリ部
は、通常のRAMと比べ、読出手段として、1つのブロ
ック内の複数の第1のメモリ領域に格納された複数の格
納データを高速に読み出すための回路構成、例えばそれ
ら複数の格納データを同時に読み出す場合はその同時読
出しのための回路構成を必要とし、また通常のRAMと
比較し第1の比較手段を追加する必要があるが、通常の
RAMとCAMとの差異は1ビットのデータを格納する
メモリセル1つずつについてトランジスタの数が大きく
異なるのに対し、本発明にいう第1のメモリ部は通常の
RAMに多少の回路を追加する程度で済み、全体として
通常のRAMとほぼ変わらないチップ面積や消費電力で
通常のRAMとほぼ変わらないメモリ容量を確保するこ
とができる。
【0033】また、上記第2のメモリ部は、第1のメモ
リ部の複数のブロックそれぞれについて1ワードずつの
メモリ領域を確保すればよく、極めて小さなメモリ容量
で済み、大小比較用の回路を必要とするもののもともと
のメモリ容量が小さくて済むことからその大小比較用回
路の回路規模や消費電力も小さくて済む。したがって本
発明のデータ検索装置は、回路規模、消費電力は通常の
RAMのみよりは若干劣るものの通常のRAMとほぼ変
わらないレベルを維持することができる。また歩留まり
の点に関しても、大部分は通常のRAMと同等のメモリ
構成で済むため通常のRAMとほとんど変わらないレベ
ルを維持することができる。
【0034】
【発明の実施の形態】以下、本発明の実施形態について
説明する。図1は、本発明のデータ検索装置およびその
使用方法の一実施形態を示す図である。この図1に示す
データ検索装置は、第1のメモリ部100と第2のメモ
リ部200とから構成されており、第1のメモリ部10
0は、通常のRAMと同様な構成の多数(この図1では
N個)の第1のメモリ領域110と、本発明にいう読出
手段に相当するデータ読出回路120と、本発明にいう
第1の比較手段に相当するコンパレータ群130から構
成されている。このコンパレータ群130には、本発明
にいうマスキング手段に相当するマスキング回路131
が備えられている。また、第2のメモリ部200は、複
数の第2のメモリ領域210と、本発明の第2の比較手
段に相当するコンパレータ群220が備えられている。
【0035】第1のメモリ部100を構成する第1のメ
モリ領域110は、100ワードずつに区切られてい
て、区切られた各100ワードにより各1つのブロック
が構成されている。第1のメモリ領域110には、若い
アドレス(アドレス値の小さなアドレス)ほど値の小さ
い格納データが格納されるように、各第1のメモリ領域
に1つずつ、各格納データが格納される。この各第1の
メモリ領域110に格納される各格納データは、図4に
示すように、上位ビット側が端末アドレス110a、下
位ビット側がタイムスタンプ情報110bである。この
とき、データ値の順序に格納データを配列すると、格納
データ配列の順序は上位ビット側の端末アドレスの値で
定まり、タイムスタンプ情報は下位ビット側であるため
その値が如何に書き換えられても格納データの配列順序
は不変である。
【0036】また、第2のメモリ部200の各第2のメ
モリ領域210には、図1に示すように、第1のメモリ
部100の各ブロック末尾のメモリ領域、すなわち10
0番地、200番地、300番地、……、N番地(Nは
100のn倍)のメモリ領域に格納されている格納デー
タA,B,C,……,Xが格納される。ここで、検索デ
ータαが入力されると、この検索データαは、先ず第2
のメモリ部200に入力され、第2のメモリ部200で
は、コンパレータ群220により、第2のメモリ部20
0の各第2のメモリ領域210に格納された各格納デー
タA,B,C,……,Xのそれぞれと、入力された検索
データαとの大小比較が行なわれる。ここでは、コンパ
レータ群220により、例えばB≧α>Aであると判定
されたものとする。この判定結果は、第1のメモリ部1
00内に目的とする格納データが存在するとすれば、第
1のメモリ部100の、101番地から200番地まで
のブロック内に存在することを意味している。
【0037】この判定結果は、第1のメモリ部100の
データ読出回路120に伝えられる。データ読出回路1
20は、この判定結果に基づいて、101番地から20
0番地までのブロックを選択し、そのブロックを構成す
る100個の第1のメモリ領域110に格納されている
100個の格納データを読み出す。このデータ読出回路
120は、これら100個の格納データを同時に読み出
すものであってもよく、あるいは例えばページモード読
出しのようにして極めて高速に順次に読み出すものであ
ってもよく、あるいはそれらを組み合わせて1回に複数
個ずつ高速に順次に読み出すものであってもよい。
【0038】データ読出回路120により読み出された
100個の格納データは、第1のメモリ部100のコン
パレータ群130に入力される。またこのコンパレータ
群130には検索データαも入力される。このコンパレ
ータ群130に含まれるマスキング回路131は、タイ
ムスタンプ情報110bの部分をマスキングし、コンパ
レータ群130では、100個の格納データそれぞれの
端末アドレス110aの部分と、検索データαの端末ア
ドレスの部分との一致不一致が比較される。
【0039】このコンパレータ群130では、例えば1
05番地から読み出された格納データの端末アドレスが
検索データ中の端末アドレスと一致した場合、その10
5番地から読み出された格納データそのもの、あるいは
その105番地というアドレスが出力データとして出力
される。本実施形態によれば、図1に示すデータ検索装
置の、回路面積上の極めて大きな部分を示す複数の第1
のメモリ領域110は通常のRAMと同様の高集積化が
可能な構成で、検索の高速性と、メモリ容量、消費電
力、チップ面積および欠陥発生時の回復可能性とを極め
て高いレベルで均衡を保つことができる。
【0040】
【発明の効果】以上説明したように、本発明によれば、
高速検索が可能であって、しかも大容量化に適したデー
タ検索装置が実現する。
【図面の簡単な説明】
【図1】本発明のデータ検索装置およびその使用方法の
一実施形態を示す図である。
【図2】連想メモリの一例を表わした回路ブロック図で
ある。
【図3】ネットワークフレーム中継器の一構成例を示す
回路ブロック図である。
【図4】図3に示すネットワークフレーム中継器に備え
られたCAMに格納された格納データを示した図であ
る。
【図5】タイムスタンプ情報の説明図である。
【符号の説明】
100 第1のメモリ部 200 第2のメモリ部 110 第1のメモリ領域 120 データ読出回路 130 コンパレータ群 131 マスクレジスタ群 210 第2のメモリ領域 220 コンパレータ群

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 複数の格納データそれぞれを書換え自在
    にそれぞれに格納する複数の第1のメモリ領域、それぞ
    れに2以上の第1のメモリ領域が含まれるように前記複
    数の第1のメモリ領域が分割されてなる複数のブロック
    の中から選択された1つのブロックを構成する複数の第
    1のメモリ領域に格納された複数の格納データを読み出
    す読出手段、および前記読出手段により読み出された複
    数の格納データそれぞれと、入力された検索データとの
    一致不一致の比較を行なう第1の比較手段を備えた第1
    のメモリ部と、 複数の格納データそれぞれを書換え自在にそれぞれに格
    納する複数の第2のメモリ領域、および前記複数の第2
    のメモリ領域に格納された複数の格納データそれぞれ
    と、入力された検索データとの大小比較を行なう第2の
    比較手段を備えた第2のメモリ部とを具備することを特
    徴とするデータ検索装置。
  2. 【請求項2】 前記第1の比較手段が、入力された検索
    データと、前記読出手段により読み出された複数の格納
    データそれぞれとの、互いに対応する一部のビットパタ
    ーンどうしの一致不一致が比較されるように、前記一部
    以外の部分を比較対象から外すマスキングを行なうマス
    キング手段を含むものであることを特徴とする請求項1
    記載のデータ検索装置。
  3. 【請求項3】 複数の格納データそれぞれを書換え自在
    にそれぞれに格納する複数の第1のメモリ領域、それぞ
    れに2以上の第1のメモリ領域が含まれるように前記複
    数の第1のメモリ領域が分割されてなる複数のブロック
    の中から選択された1つのブロックを構成する複数の第
    1のメモリ領域に格納された複数の格納データを読み出
    す読出手段、および前記読出手段により読み出された複
    数の格納データそれぞれと、入力された検索データとの
    一致不一致の比較を行なう第1の比較手段を備えた第1
    のメモリ部と、複数の格納データそれぞれを書換え自在
    にそれぞれに格納する複数の第2のメモリ領域、および
    前記複数の第2のメモリ領域に格納された複数の格納デ
    ータそれぞれと、入力された検索データとの大小比較を
    行なう第2の比較手段を備えた第2のメモリ部とを具備
    するデータ検索装置の使用方法であって、 前記複数の第1のメモリ領域に、複数の格納データを、
    値の大きな順もしくは小さな順に格納するとともに、前
    記複数の第2のメモリ領域に、前記複数のブロックそれ
    ぞれを構成する第1のメモリ領域のうちの先頭もしくは
    末尾の第1のメモリ領域に格納された格納データを格納
    しておき、 前記第2の比較手段に、前記複数の第2のメモリ領域に
    格納された複数の格納データそれぞれと入力された検索
    データとの大小比較を行なわせることにより、該検索デ
    ータに対応する格納データが格納された第1のメモリ領
    域を含むブロックである検索対策ブロックを検出し、 前記読出手段に、前記検索対象ブロックを構成する複数
    の第1のメモリ領域に格納された複数の格納データを読
    み出させて、前記第1の比較手段に前記読出手段により
    読み出された複数の格納データそれぞれと前記検索デー
    タとの一致不一致の比較を行なわせることにより、該検
    索データに対応する格納データを検出することを特徴と
    するデータ検索装置の使用方法。
  4. 【請求項4】 前記データ検索装置の前記第1の比較手
    段が、入力された検索データと、前記読出手段により読
    み出された複数の格納データそれぞれとの、互いに対応
    する一部のビットパターンどうしの一致不一致が比較さ
    れるように、前記一部以外の部分を比較対象から外すマ
    スキングを行なうマスキング手段を含むものであって、 前記検索対象ブロックを検出した後、前記読出手段に、
    前記検索対象ブロックを構成する複数の第1のメモリ領
    域に格納された複数の格納データを読み出させるととも
    に、前記マスキング手段に、前記一部以外の部分にマス
    キングを施させて、前記第1の比較手段に、前記読出手
    段により読み出された複数の格納データそれぞれと前記
    検索データとの、前記一部のビットパターンどうしの一
    致不一致の比較を行なわせることにより、該検索データ
    に対応する格納データを検出することを特徴とする請求
    項3記載のデータ検索装置の使用方法。
JP9092433A 1997-04-10 1997-04-10 データ検索装置およびその使用方法 Withdrawn JPH10283369A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9092433A JPH10283369A (ja) 1997-04-10 1997-04-10 データ検索装置およびその使用方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9092433A JPH10283369A (ja) 1997-04-10 1997-04-10 データ検索装置およびその使用方法

Publications (1)

Publication Number Publication Date
JPH10283369A true JPH10283369A (ja) 1998-10-23

Family

ID=14054311

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9092433A Withdrawn JPH10283369A (ja) 1997-04-10 1997-04-10 データ検索装置およびその使用方法

Country Status (1)

Country Link
JP (1) JPH10283369A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000194641A (ja) * 1998-12-01 2000-07-14 Lucent Technol Inc 持続的ウエブ資源のドメイン名を分析するための方法および装置
JP2000194642A (ja) * 1998-12-01 2000-07-14 Lucent Technol Inc ウエブ資源に相対タイムスタンプを用いて持続的にアクセスするための方法および装置
JP2000194644A (ja) * 1998-12-01 2000-07-14 Lucent Technol Inc ウエブ資源に持続的にアクセスするための方法および装置
JP2000194643A (ja) * 1998-12-01 2000-07-14 Lucent Technol Inc ウエブ資源を持続的に格納するための方法および装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000194641A (ja) * 1998-12-01 2000-07-14 Lucent Technol Inc 持続的ウエブ資源のドメイン名を分析するための方法および装置
JP2000194642A (ja) * 1998-12-01 2000-07-14 Lucent Technol Inc ウエブ資源に相対タイムスタンプを用いて持続的にアクセスするための方法および装置
JP2000194644A (ja) * 1998-12-01 2000-07-14 Lucent Technol Inc ウエブ資源に持続的にアクセスするための方法および装置
JP2000194643A (ja) * 1998-12-01 2000-07-14 Lucent Technol Inc ウエブ資源を持続的に格納するための方法および装置

Similar Documents

Publication Publication Date Title
US7526709B2 (en) Error detection and correction in a CAM
US7307860B2 (en) Static content addressable memory cell
US6910097B1 (en) Classless interdomain routing using binary content addressable memory
JP2009193622A (ja) 内容参照メモリ
US20030179623A1 (en) CAM cell array, TCAM cell, TCAM cell array, address search memory, and network address search apparatus
US7421630B2 (en) Apparatus and methods for testing memory devices
KR20020071845A (ko) 메모리 장치내의 멀티플렉스된 중복 계획을 위한 회로 및방법
JP3599273B2 (ja) 内容参照可能メモリの改良
US5805493A (en) Associative memory having a data registration device
US20030005210A1 (en) Intelligent CAM cell for CIDR processor
US7099992B2 (en) Distributed programmable priority encoder capable of finding the longest match in a single operation
US20070130417A1 (en) CAM with automatic writing to the next free address
US20020009056A1 (en) Route retrieving system, method therefor and a router device to be used in the same
JPH10283369A (ja) データ検索装置およびその使用方法
US6781856B2 (en) Tertiary CAM cell
JPH10255485A (ja) 連想メモリおよびネットワークフレーム中継器
US6934797B2 (en) Counter in CAM word
US6809944B2 (en) CAM with automatic next free address pointer
US7107391B2 (en) Automatic learning in a CAM
JP2005353107A (ja) 半導体装置
JPH10275479A (ja) 連想メモリおよびネットワークフレーム中継器
US7082493B1 (en) CAM-based search engines and packet coprocessors having results status signaling for completed contexts
JPH05151785A (ja) 内容アドレス式メモリ
US7167942B1 (en) Dynamic random access memory controller
US6934172B2 (en) Priority encoder for successive encoding of multiple matches in a CAM

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20040706