(57)【特許請求の範囲】
【請求項１】
第１のメモリセル部と、
前記第１のメモリセル部と同時に検索データが与えられる第２のメモリセル部と、
前記第１のメモリセル部に対応して設けられ、検索前にプリチャージされる第１のマッチラインと、
前記第２のメモリセル部に対応して設けられ、検索前にプリチャージされる第２のマッチラインと、
を備え、
前記第１のメモリセル部は、検索時に前記検索データが自己の記憶データと一致しないときは、前記第１のマッチラインを放電させ、前記検索データが自己の記憶データと一致するときは、前記第１のマッチラインを放電させないように構成され、
前記第２のメモリセル部は、検索時に前記検索データが前記第１のメモリセル部の記憶データと一致しないときにおいて、前記検索データが自己の記憶データと一致しないときは、前記第２のマッチラインを放電させ、前記検索データが自己の記憶データと一致したときは、前記第２のマッチラインを放電させず、前記検索データが前記第１のメモリセル部の記憶データと一致したときは、前記検索データと自己の記憶データとの一致、不一致に関わらず、前記第２のマッチラインを放電させないように構成される
ことを特徴とする連想メモリ。
【請求項２】
前記第１のメモリセル部のメモリセルは、
一端を前記第１のマッチラインに接続し、第１のストレージノードの電位によりオン、オフが制御される第１のスイッチ素子と、
一端を前記第１のマッチラインに接続し、第２のストレージノードの電位によりオン、オフが制御される第２のスイッチ素子と、
一端を前記第１のスイッチ素子の他端に接続し、他端を接地し、一方のサーチバスの電位によりオン、オフが制御される第３のスイッチ素子と、
一端を前記第２のスイッチ素子の他端に接続し、他端を接地し、他方のサーチバスの電位によりオン、オフが制御される第４のスイッチ素子と、
を備え、
前記第２のメモリセル部のメモリセルは、
一端を前記第２のマッチラインに接続し、第３のストレージノードの電位によりオン、オフが制御される第５のスイッチ素子と、
一端を前記第２のマッチラインに接続し、第４のストレージノードの電位によりオン、オフが制御される第６のスイッチ素子と、
一端を前記第５のスイッチ素子の他端に接続し、他端を前記第１のマッチラインに接続し、前記一方のサーチバスの電位によりオン、オフが制御される第７のスイッチ素子と、
一端を前記第６のスイッチ素子の他端に接続し、他端を前記第１のマッチラインに接続し、前記他方のサーチバスの電位によりオン、オフが制御される第８のスイッチ素子と、
を備えることを特徴とする請求項１に記載の連想メモリ。
【請求項３】
前記第１のメモリセル部のメモリセルは、
一端を前記第１のマッチラインに接続し、第１のストレージノードの電位によりオン、オフが制御される第１のスイッチ素子と、
一端を前記第１のマッチラインに接続し、第２のストレージノードの電位によりオン、オフが制御される第２のスイッチ素子と、
一端を前記第１のスイッチ素子の他端に接続し、他端を接地し、一方のサーチバスの電位によりオン、オフが制御される第３のスイッチ素子と、
一端を前記第２のスイッチ素子の他端に接続し、他端を接地し、他方のサーチバスの電位によりオン、オフが制御される第４のスイッチ素子と、
を備え、
前記第２のメモリセル部のメモリセルは、
一端を前記第２のマッチラインに接続し、第３のストレージノードの電位によりオン、オフが制御される第５のスイッチ素子と、
一端を前記第２のマッチラインに接続し、第４のストレージノードの電位によりオン、オフが制御される第６のスイッチ素子と、
一端を前記第５のスイッチ素子の他端に接続し、他端をグランドラインに接続し、前記一方のサーチバスの電位によりオン、オフが制御される第７のスイッチ素子と、
一端を前記第６のスイッチ素子の他端に接続し、他端を前記グランドラインに接続し、前記他方のサーチバスの電位によりオン、オフが制御される第８のスイッチ素子と、
を備え、
更に、検索時に、前記第１のマッチラインがプリチャージ電位を維持するときは、前記グランドラインをフローティングとし、前記第１のマッチラインがグランド電位に下降したときは、前記グランドラインをグランド電位にするグランドライン・ドライバと、
を備えることを特徴とする請求項１に記載の連想メモリ。
【請求項４】
前記第１のメモリセル部のメモリセルは、
一端を前記第１のマッチラインに接続し、一方のサーチバスの電位によりオン、オフが制御される第１のスイッチ素子と、
一端を前記第１のマッチラインに接続し、他方のサーチバスの電位によりオン、オフが制御される第２のスイッチ素子と、
一端を前記第１のスイッチ素子の他端に接続し、他端を接地し、第１のストレージノードの電位によりオン、オフが制御される第３のスイッチ素子と、
一端を前記第２のスイッチ素子の他端に接続し、他端を接地し、第２のストレージノードの電位によりオン、オフが制御される第４のスイッチ素子と、
を備え、
前記第２のメモリセル部のメモリセルは、
一端を前記第２のマッチラインに接続し、前記一方のサーチバスの電位によりオン、オフが制御される第５のスイッチ素子と、
一端を前記第２のマッチラインに接続し、前記他方のサーチバスの電位によりオン、オフが制御される第６のスイッチ素子と、
一端を前記第５のスイッチ素子の他端に接続し、他端を前記第１のマッチラインに接続し、第３のストレージノードの電位によりオン、オフが制御される第７のスイッチ素子と、
一端を前記第６のスイッチ素子の他端に接続し、他端を前記第１のマッチラインに接続し、第４のストレージノードの電位によりオン、オフが制御される第８のスイッチ素子と、
を備えることを特徴とする請求項１に記載の連想メモリ。
【請求項５】
前記第１のメモリセル部のメモリセルは、
一端を前記第１のマッチラインに接続し、一方のサーチバスの電位によりオン、オフが制御される第１のスイッチ素子と、
一端を前記第１のマッチラインに接続し、他方のサーチバスの電位によりオン、オフが制御される第２のスイッチ素子と、
一端を前記第１のスイッチ素子の他端に接続し、他端を接地し、第１のストレージノードの電位によりオン、オフが制御される第３のスイッチ素子と、
一端を前記第２のスイッチ素子の他端に接続し、他端を接地し、第２のストレージノードの電位によりオン、オフが制御される第４のスイッチ素子と、
を備え、
前記第２のメモリセル部のメモリセルは、
一端を前記第２のマッチラインに接続し、前記一方のサーチバスの電位によりオン、オフが制御される第５のスイッチ素子と、
一端を前記第２のマッチラインに接続し、前記他方のサーチバスの電位によりオン、オフが制御される第６のスイッチ素子と、
一端を前記第５のスイッチ素子の他端に接続し、他端をグランドラインに接続し、第３のストレージノードの電位によりオン、オフが制御される第７のスイッチ素子と、
一端を前記第６のスイッチ素子の他端に接続し、他端を前記グランドラインに接続し、第４のストレージノードの電位によりオン、オフが制御される第８のスイッチ素子と、
を備え、
更に、検索時に、前記第１のマッチラインがプリチャージ電位を維持するときは、前記グランドラインをフローティングとし、前記第１のマッチラインがグランド電位に下降したときは、前記グランドラインをグランド電位にするグランドライン・ドライバと、
を備えることを特徴とする請求項１に記載の連想メモリ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、連想メモリ（ＣＡＭ：Content Addressable Memory）、即ち、外部から与えられた検索データと同一データを記憶するアドレスを検索し、検索データと同一データを記憶するアドレスを示すアドレス信号を外部に出力する機能（いわゆる検索機能）を有するメモリに関する。
【背景技術】
【０００２】
図１７は連想メモリの機能をＲＡＭ（Random Access Memory）と比較して説明するための図である。図１７中、１はＲＡＭ、２は連想メモリである。ＲＡＭ１は、書き込み及び読み出しが可能とされたものであり、（Ａ）に示すように、ライトコマンドとアドレス信号とデータが与えられると、アドレス信号が指示するアドレスに対するデータの書き込みを行い、（Ｂ）に示すように、リードコマンドとアドレス信号が与えられると、アドレス信号が指示するアドレスからデータを読み出して出力する。
【０００３】
連想メモリ２は、書き込み、読み出し及び検索が可能とされたものであり、（Ｃ）に示すように、ライトコマンドとアドレス信号とデータが与えられると、アドレス信号が指示するアドレスに対するデータの書き込みを行い、（Ｄ）に示すように、リードコマンドとアドレス信号が与えられると、アドレス信号が指示するアドレスからデータを読み出して出力し、（Ｅ）に示すように、検索コマンドとデータが与えられると、与えられたデータと同一データを記憶するアドレスを検索し、検索したアドレスを示すアドレス信号を出力する。
【０００４】
図１８は連想メモリが備えるメモリセルの一例を示す回路図である。図１８中、ＷＬはライト／リード時にメモリセルの選択を行うためのワードライン、ＢＬ、ＸＢＬはライト時にはライトアンプが出力する相補化されたライトデータのメモリセルへの伝送を行い、リード時にはメモリセルから読み出された相補化されたリードデータのセンスアンプへの伝送を行うためのビットライン、ＳＢ、ＸＳＢは外部から与えられた検索データを相補化してなるデータをサーチドライバからメモリセルに伝送するためのサーチバス、ＭＬは検索データとメモリセルの記憶データとの一致、不一致を検出するためのマッチライン、３はＳＲＡＭ（Static Random Access Memory）セルからなるメモリセルである。
【０００５】
また、メモリセル３において、４は記憶媒体をなすフリップフロップであり、５、６はインバータ、Ｓ０、Ｓ１はストレージノードである。７、８はワードラインＷＬの電位によりＯＮ、ＯＦＦが制御されるＮＭＯＳトランジスタ、９はストレージノードＳ０の電位によりＯＮ、ＯＦＦが制御されるＮＭＯＳトランジスタ、１０はストレージノードＳ１の電位によりＯＮ、ＯＦＦが制御されるＮＭＯＳトランジスタ、１１はサーチバスＸＳＢの電位によりＯＮ、ＯＦＦが制御されるＮＭＯＳトランジスタ、１２はサーチバスＳＢの電位によりＯＮ、ＯＦＦが制御されるＮＭＯＳトランジスタである。
【０００６】
本例では、メモリセル３に対するデータの書き込み及びメモリセル３からのデータの読み出しは、ワードラインＷＬと、ビットラインＢＬ、ＸＢＬと、ＮＭＯＳトランジスタ７、８とを使用して行われる。表１はメモリセル３に対するデータ書き込み時及びメモリセル３からのデータ読み出し時におけるメモリセル３の記憶データとストレージノードＳ０、Ｓ１の論理値とビットラインＢＬ、ＸＢＬの論理値との関係を示している。
【０００７】
【表１】
0005104297.tif 000002
【０００８】
ここで、メモリセル３にデータ“０”を書き込む場合には、ワードラインＷＬの論理値＝“１”、ＮＭＯＳトランジスタ７、８の状態＝ＯＮ、ビットラインＢＬの論理値＝“０”、ビットラインＸＢＬの論理値＝“１”とすることにより、ストレージノードＳ０の論理値＝“０”、ストレージノードＳ１の論理値＝“１”とし、その後、ワードラインＷＬの論理値＝“０”、ＮＭＯＳトランジスタ７、８の状態＝ＯＦＦとする。
【０００９】
これに対して、メモリセル３にデータ“１”を書き込む場合には、ワードラインＷＬの論理値＝“１”、ＮＭＯＳトランジスタ７、８の状態＝ＯＮ、ビットラインＢＬの論理値＝“１”、ビットラインＸＢＬの論理値＝“０”とすることにより、ストレージノードＳ０の論理値＝“１”、ストレージノードＳ１の論理値＝“０”とし、その後、ワードラインＷＬの論理値＝“０”、ＮＭＯＳトランジスタ７、８の状態＝ＯＦＦとする。
【００１０】
また、メモリセル３の記憶データが“０”の場合、即ち、ストレージノードＳ０の論理値＝“０”、ストレージノードＳ１の論理値＝“１”とされている場合において、ワードラインＷＬの論理値＝“１”、ＮＭＯＳトランジスタ７、８の状態＝ＯＮとし、メモリセル３からデータを読み出すと、ビットラインＢＬの論理値＝“０”、ビットラインＸＢＬの論理値＝“１”となる。
【００１１】
これに対して、メモリセル３の記憶データが“１”の場合、即ち、ストレージノードＳ０の論理値＝“１”、ストレージノードＳ１の論理値＝“０”とされている場合において、ワードラインＷＬの論理値＝“１”、ＮＭＯＳトランジスタ７、８の状態＝ＯＮとし、メモリセル３からデータを読み出すと、ビットラインＢＬの論理値＝“１”、ビットラインＸＢＬの論理値＝“０”となる。
【００１２】
また、メモリセル３に対する検索は、サーチバスＳＢ、ＸＳＢと、ＮＭＯＳトランジスタ９〜１２と、マッチラインＭＬとを使用して行われる。表２は検索時におけるメモリセル３の記憶データとストレージノードＳ０、Ｓ１の論理値と検索データとサーチバスＳＢ、ＸＳＢの論理値とマッチラインＭＬの論理値との関係を示しており、図１９〜図２２はメモリセル３に対する検索動作を説明するための回路図である。
【００１３】
【表２】
0005104297.tif 000003
【００１４】
本例では、非検索時には、サーチバスＳＢ、ＸＳＢの論理値＝“０”、ＮＭＯＳトランジスタ１１、１２の状態＝ＯＦＦとされる。これに対して、検索時には、マッチラインＭＬは、電源電圧ＶＤＤにプリチャージされ、その論理値を“１”とされる。そして、検索データ＝“０”の場合には、サーチバスＳＢの論理値＝“０”、サーチバスＸＳＢの論理値＝“１”とされ、検索データ＝“１”の場合には、サーチバスＳＢの論理値＝“１”、サーチバスＸＳＢの論理値＝“０”とされる。
【００１５】
ここで、図１９に示すように、メモリセル３の記憶データ＝“０”の場合（即ち、ストレージノードＳ０の論理値＝“０”、ストレージノードＳ１の論理値＝“１”とされている場合）に、検索データとして“０”が入力された場合（即ち、サーチバスＳＢの論理値＝“０”、サーチバスＸＳＢの論理値＝“１”とされた場合）には、ＮＭＯＳトランジスタ９はＯＦＦ、ＮＭＯＳトランジスタ１０はＯＮ、ＮＭＯＳトランジスタ１１はＯＮ、ＮＭＯＳトランジスタ１２はＯＦＦとなるので、マッチラインＭＬの論理値＝“１”が維持される。
【００１６】
これに対して、図２０に示すように、メモリセル３の記憶データ＝“０”の場合（即ち、ストレージノードＳ０の論理値＝“０”、ストレージノードＳ１の論理値＝“１”とされている場合）に、検索データとして“１”が入力された場合（即ち、サーチバスＳＢの論理値＝“１”、サーチバスＸＳＢの論理値＝“０”とされた場合）には、ＮＭＯＳトランジスタ９はＯＦＦ、ＮＭＯＳトランジスタ１０はＯＮ、ＮＭＯＳトランジスタ１１はＯＦＦ、ＮＭＯＳトランジスタ１２はＯＮとなるので、マッチラインＭＬは、ＮＭＯＳトランジスタ１０、１２を介して接地され、マッチラインＭＬの論理値は“０”に遷移する。
【００１７】
また、図２１に示すように、メモリセル３の記憶データ＝“１”の場合（即ち、ストレージノードＳ０の論理値＝“１”、ストレージノードＳ１の論理値＝“０”とされている場合）に、検索データとして“１”が入力された場合（即ち、サーチバスＳＢの論理値＝“１”、サーチバスＸＳＢの論理値＝“０”とされた場合）には、ＮＭＯＳトランジスタ９はＯＮ、ＮＭＯＳトランジスタ１０はＯＦＦ、ＮＭＯＳトランジスタ１１はＯＦＦ、ＮＭＯＳトランジスタ１２はＯＮとなるので、マッチラインＭＬの論理値＝“１”が維持される。
【００１８】
また、図２２に示すように、メモリセル３の記憶データ＝“１”の場合（即ち、ストレージノードＳ０の論理値＝“１”、ストレージノードＳ１の論理値＝“０”とされている場合）に、検索データとして“０”が入力された場合（即ち、サーチバスＳＢの論理値＝“０”、サーチバスＸＳＢの論理値＝“１”とされた場合）には、ＮＭＯＳトランジスタ９はＯＮ、ＮＭＯＳトランジスタ１０はＯＦＦ、ＮＭＯＳトランジスタ１１はＯＮ、ＮＭＯＳトランジスタ１２はＯＦＦとなるので、マッチラインＭＬは、ＮＭＯＳトランジスタ９、１１を介して接地され、マッチラインＭＬの論理値は“０”に遷移する。
【００１９】
図２３はメモリセル３に対する検索時のサーチバスＳＢ、ＸＳＢ及びマッチラインＭＬの電位変化を示す波形図であり、（Ａ）はサーチバスＳＢ、ＸＳＢの電位変化、（Ｂ）はマッチラインＭＬの電位変化を示している。前述のように、マッチラインＭＬは、電源電圧ＶＤＤ（論理１）にプリチャージされるが、検索データとメモリセル３の記憶データとが不一致のときは、マッチラインＭＬは、ＮＭＯＳトランジスタ９、１１又はＮＭＯＳトランジスタ１０、１２を介して接地され、マッチラインＭＬの電位は０Ｖ（論理０）に下降し、検索データとメモリセル３の記憶データとが一致したときは、マッチラインＭＬは、接地されず、電源電圧ＶＤＤ（論理１）を維持する。
【００２０】
図２４は実際の連想メモリにおけるメモリセルとマッチラインとの関係を示す回路図である。図２４中、３（０）、３（１）、３（２）、３（ｎ−１）はメモリセルであり、メモリセル３（３）〜３（ｎ−２）は図示を省略している。ＳＢ（０）、ＸＳＢ（０）、ＳＢ（１）、ＸＳＢ（１）、ＳＢ（２）、ＸＳＢ（２）、ＳＢ（ｎ−１）、ＸＳＢ（ｎ−１）はサーチバスであり、サーチバスＳＢ（３）、ＸＳＢ（３）〜ＳＢ（ｎ−２）、ＸＳＢ（ｎ−２）は図示を省略している。
【００２１】
また、１５は検索時にマッチラインＭＬの電位変化を検出して検索結果信号ＭＳＺを出力するマッチライン・センスアンプ（ＭＬＳＡ：Match Line Sense Amplifier）である。マッチライン・センスアンプ１５は、マッチラインＭＬの論理値＝“１”のときは、検索結果信号ＭＳＺの論理値＝“１”とし、マッチラインＭＬの論理値＝“０”のときは、検索結果信号ＭＳＺの論理値＝“０”とする。
【００２２】
図２４に示すように、実際の連想メモリにおいては、メモリセルとマッチラインとの関係は、１対１ではなく、マッチラインＭＬには、検索データのビット数と同じ数のメモリセル３（０）〜３（ｎ−１）が接続されている。そして、マッチラインＭＬは、ｎビットからなる検索データの各ビットの論理値が、対応するメモリセルの記憶データの論理値と一致するときは、“１”を維持するが、検索データのいずれかのビットの論理値が、対応するメモリセルの記憶データの論理値と一致しないときは、“０”に遷移する。
【００２３】
図２５は従来の連想メモリの一例の一部分を示すブロック図である。図２５中、１６は図１８に示す構成のメモリセルを１行（１ワードライン）当たりｎ個配列したメモリセル列が５１２行配列されてなるメモリセルアレイ、１７はワードラインを駆動するワードデコーダ（ＷＤＥＣ）のグループであるワードデコーダ部、１８はメモリセルに書き込みを行うライトアンプ（Ｗ／Ａ）のグループであるライトアンプ部、１９はビットラインに読み出されたデータを増幅するセンスアンプ（Ｓ／Ａ）のグループであるセンスアンプ部である。
【００２４】
２０はサーチバスを駆動するサーチドライバ（Ｓ／Ｄ）のグループであるサーチドライバ部、２１はマッチラインのレベル検出を行うマッチライン・センスアンプ（ＭＬＳＡ）のグループであるマッチライン・センスアンプ部、２２はマッチライン・センスアンプ部２１が出力する検索結果信号ＭＳＺをエンコードして、検索データと同一のデータが記憶されているアドレスを示すアドレス信号を出力するエンコーダ（ＥＮＣ）である。
【００２５】
２３は外部から与えられる検索コマンド信号をデコードするコマンドデコーダ（ＣＯＭＤＥＣ）、２４はコマンドデコーダ２３が出力する検索コマンドデコード信号を入力してサーチドライバ部２０のサーチドライバに与えるサーチドライバ活性化信号を生成するサーチドライバ活性化信号生成回路（ＳＢＥＧＥＮ）である。
【００２６】
図２６は図２５に示す従来の連想メモリの一部分をより詳しく示す回路図である。メモリセルアレイ１６において、３（０、０）は１行目の１ビット目のメモリセル、３（０、１）は１行目の２ビット目のメモリセル、３（０、ｎ−１）は１行目のｎビット目のメモリセルであり、１行目の３ビット目〜ｎ−１ビット目のメモリセル３（０、２）〜３（０、ｎ−２）は図示を省略している。３（１、０）は２行目の１ビット目のメモリセル、３（１、１）は２行目の２ビット目のメモリセル、３（１、ｎ−１）は２行目のｎビット目のメモリセルであり、２行目の３ビット目〜ｎ−１ビット目のメモリセル３（１、２）〜３（１、ｎ−２）は図示を省略している。
【００２７】
３（５１１、０）は５１２行目の１ビット目のメモリセル、３（５１１、１）は５１２行目の２ビット目のメモリセル、３（５１１、ｎ−１）は５１２行目のｎビット目のメモリセルであり、５１２行目の３ビット目〜ｎ−１ビット目のメモリセル３（５１１、２）〜３（５１１、ｎ−２）は図示を省略している。また、３行目〜５１１行目のメモリセル３（２、０）〜３（２、ｎ−１）、…、３（５１０、０）〜３（５１０、ｎ−１）も図示を省略している。図２７は図２５に示すメモリセルアレイ１６の部分をより詳しく示している。なお、本例では、ｋ行目（但し、ｋ＝１、２、…、５１２であり、以下、同様である。）のメモリセル列の番地は、ｋ−１番地とされる。
【００２８】
また、図２６において、ＷＬ０は１行目のワードライン、ＷＬ１は２行目のワードライン、ＷＬ５１１は５１２行目のワードラインであり、３行目〜５１１行目のワードラインＷＬ２〜ＷＬ５１０は図示を省略している。ＭＬ０は１行目のマッチライン、ＭＬ１は２行目のマッチライン、ＭＬ５１１は５１２行目のマッチラインであり、３行目〜５１１行目のマッチラインＭＬ２〜ＭＬ５１０は図示を省略している。
【００２９】
ワードデコーダ部１７において、２５（０）は１行目のワードラインＷＬ０に対応して設けられたワードデコーダ、２５（１）は２行目のワードラインＷＬ１に対応して設けられたワードデコーダ、２５（５１１）は５１２行目のワードラインＷＬ５１１に対応して設けられたワードデコーダであり、３行目〜５１１行目のワードラインＷＬ２〜ＷＬ５１０に対応して設けられたワードデコーダ２５（２）〜２５（５１０）は図示を省略している。
【００３０】
ライトアンプ部１８において、２６（０）は１ビット目のビットラインＢＬ（０）、ＸＢＬ（０）に対応して設けられたライトアンプ、２６（１）は２ビット目のビットラインＢＬ（１）、ＸＢＬ（１）に対応して設けられたライトアンプ、２６（ｎ−１）はｎビット目のビットラインＢＬ（ｎ−１）、ＸＢＬ（ｎ−１）に対応して設けられたライトアンプであり、３ビット目〜ｎ−１ビット目のビットラインＢＬ（２）、ＸＢＬ（２）〜ＢＬ（ｎ−２）、ＸＢＬ（ｎ−２）に対応して設けられたライトアンプ２６（２）〜２６（ｎ−２）は図示を省略している。
【００３１】
センスアンプ部１９において、２７（０）は１ビット目のビットラインＢＬ（０）、ＸＢＬ（０）に対応して設けられたセンスアンプ、２７（１）は２ビット目のビットラインＢＬ（１）、ＸＢＬ（１）に対応して設けられたセンスアンプ、２７（ｎ−１）はｎビット目のビットラインＢＬ（ｎ−１）、ＸＢＬ（ｎ−１）に対応して設けられたセンスアンプであり、３ビット目〜ｎ−１ビット目のビットラインＢＬ（２）、ＸＢＬ（２）〜ＢＬ（ｎ−２）、ＸＢＬ（ｎ−２）に対応して設けられたセンスアンプ２７（２）〜２７（ｎ−２）は図示を省略している。
【００３２】
サーチドライバ部２０において、２８（０）は１ビット目のサーチバスＳＢ（０）、ＸＳＢ（０）に対応して設けられたサーチドライバ、２８（１）は２ビット目のサーチバスＳＢ（１）、ＸＳＢ（１）に対応して設けられたサーチドライバ、２８（ｎ−１）はｎビット目のサーチバスＳＢ（ｎ−１）、ＸＳＢ（ｎ−１）に対応して設けられたサーチドライバであり、３ビット目〜ｎ−１ビット目のサーチバスＳＢ（２）、ＸＳＢ（２）〜ＳＢ（ｎ−２）、ＸＳＢ（ｎ−２）に対応して設けられたサーチドライバ２８（２）〜２８（ｎ−２）は図示を省略している。
【００３３】
マッチライン・センスアンプ部２１において、１５（０）は１行目のマッチラインＭＬ０に対応して設けられたマッチライン・センスアンプ、１５（１）は２行目のマッチラインＭＬ１に対応して設けられたマッチライン・センスアンプ、１５（５１１）は５１２行目のマッチラインＭＬ５１１に対応して設けられたマッチライン・センスアンプであり、３行目〜５１１行目のマッチラインＭＬ２〜ＭＬ５１０に対応して設けられたマッチライン・センスアンプ１５（２）〜１５（５１０）は図示を省略している。
【００３４】
図２８は図２５に示す従来の連想メモリの検索動作例を説明するための回路図、図２９及び図３０は図２５に示す従来の連想メモリの検索動作例を示すタイミング図であり、図２９は検索データＤＩＮと１番地の記憶データとが一致した場合、図３０は検索データＤＩＮと０番地の記憶データとが一致した場合である。
【００３５】
図２８において、ＸＳＥＲは外部からコマンドデコーダ２３に与えられる検索コマンド信号、ＳＥＲＺはコマンドデコーダ２３が出力する検索コマンドデコード信号、ＳＢＥＺはサーチドライバ活性化信号生成回路２４が出力するサーチドライバ活性化信号、ＤＩＮは外部から与えられるｎビットからなる検索データ、Ｄ（０）は検索データＤＩＮの１ビット目のデータ、Ｄ（ｎ−１）は検索データＤＩＮのｎビット目のデータであり、検索データＤＩＮの２ビット目〜ｎ−１ビット目のデータＤ（１）〜Ｄ（ｎ−２）は図示を省略している。また、ＭＳ０Ｚは１行目のマッチライン・センスアンプ１５（０）が出力する検索結果信号、ＭＳ１Ｚは２行目のマッチライン・センスアンプ１５（１）が出力する検索結果信号、ＥＡはエンコーダ２２が出力する９ビットからなるアドレス信号である。
【００３６】
また、図２９及び図３０において、（Ａ）は動作サイクルを決めるクロック信号ＣＬＫ、（Ｂ）は検索コマンド信号ＸＳＥＲ、（Ｃ）は検索コマンドデコード信号ＳＥＲＺ、（Ｄ）はサーチドライバ活性化信号ＳＢＥＺ、（Ｅ）はサーチバスＳＢ（ｐ）、ＸＳＢ（ｐ）の論理値（但し、ｐ＝０、１、…、ｎ−１であり、以下、同様である。）、（Ｆ）はマッチラインＭＬ０の論理値、（Ｇ）は検索結果信号ＭＳ０Ｚ、（Ｈ）はマッチラインＭＬ１の論理値、（Ｉ）は検索結果信号ＭＳ１Ｚを示している。
【００３７】
即ち、図２５に示す従来の連想メモリにおいては、検索前（スタンバイ時）には、検索コマンド信号ＸＳＥＲ＝“１”、検索コマンドデコード信号ＳＥＲＺ＝“０”、サーチドライバ活性化信号ＳＢＥＺ＝“０”、サーチバスＳＢ（ｐ）、ＸＳＢ（ｐ）の論理値＝“０”、マッチラインＭＬ０〜ＭＬ５１１の論理値＝“１”、検索結果信号ＭＳ０Ｚ〜ＭＳ５１１Ｚ＝“１”とされる。
【００３８】
そして、検索を行う場合には、図２９及び図３０に示すように、検索コマンド信号ＸＳＥＲ＝“０”とされ、検索が指示されると共に、サーチドライバ２８（０）〜２８（ｎ−１）に検索データＤ（０）〜Ｄ（ｎ−１）が与えられる。この結果、コマンドデコーダ２３は、検索コマンドデコード信号ＳＥＲＺ＝“１”とし、これに応答して、サーチドライバ活性化信号生成回路２４は、サーチドライバ活性化信号ＳＢＥＺ＝“１”とし、サーチドライバ２８（ｐ）は、検索データＤ（ｐ）の値に対応してサーチバスＳＢ（ｐ）、ＸＳＢ（ｐ）の一方の論理値＝“１”、他方の論理値＝“０”とする。
【００３９】
ここで、検索データＤ（０）〜Ｄ（ｎ−１）が０番地の記憶データ（即ち、メモリセル３（０、０）〜３（０、ｎ−１）の記憶データ）と一致せず、１番地の記憶データ（即ち、メモリセル３（１、０）〜３（１、ｎ−１）の記憶データ）と一致すると、図２９に示すように、マッチラインＭＬ０の論理値＝“０”となり、マッチラインＭＬ１の論理値＝“１”が維持される。この結果、マッチライン・センスアンプ１５（０）は、検索結果信号ＭＳ０Ｚ＝“０”とし、マッチライン・センスアンプ１５（１）は、検索結果信号ＭＳ１Ｚ＝“１”を維持する。したがって、この場合には、エンコーダ２２は、１番地を示すアドレス信号ＥＡとして［００００００００１］を出力する。
【００４０】
これに対して、検索データＤ（０）〜Ｄ（ｎ−１）が０番地の記憶データ（即ち、メモリセル３（０、０）〜３（０、ｎ−１）の記憶データ）と一致し、１番地の記憶データ（即ち、メモリセル３（１、０）〜３（１、ｎ−１）の記憶データ）と一致しなかった場合には、図３０に示すように、マッチラインＭＬ０の論理値＝“１”が維持され、マッチラインＭＬ１の論理値＝“０”となる。この結果、マッチライン・センスアンプ１５（０）は、検索結果信号ＭＳ０Ｚ＝“１”を維持し、マッチライン・センスアンプ１５（１）は、検索結果信号ＭＳ１Ｚの論理値＝“０”とする。したがって、この場合には、エンコーダ２２は、０番地を示すアドレス信号ＥＡとして［０００００００００］を出力する。
【００４１】
なお、連想メモリは、検索データが複数番地の記憶データと一致した場合、どの番地を示すアドレス信号を出力するかについて予め優先順位を定めておき、これに従ってアドレス信号を出力するという機能、即ち、プライオリティ・マッチ（Priority match）機能を備えている。例えば、図２５に示す従来の連想メモリが、検索データＤＩＮが複数番地の記憶データと一致した場合には、最小番地を示すアドレス信号を出力するという優先順位を定めている場合において、例えば、図３１に示すように、検索データＤＩＮが０番地の記憶データと２番地の記憶データとに一致した場合には、エンコーダ２２は、０番地を検出して、０番地を示すアドレス信号を出力することになる。
【特許文献１】特開２０００−２１５６７８号公報
【特許文献２】特開平７−２８７７１８号公報
【特許文献３】特開平３−２１２８９６号公報
【発明の開示】
【発明が解決しようとする課題】
【００４２】
図２５に示す従来の連想メモリにおいては、検索データＤＩＮについての検索動作は、５１２個の全アドレス（０番地〜５１１番地）に対して行われるが、検索データＤＩＮと同一データを記憶するアドレスは、ほんの一部であり、５１２本のマッチラインＭＬ０〜ＭＬ５１１のほとんどは、その論理値が“０”に遷移するので、検索後、スタンバイ状態に戻る際には５１２本のマッチラインＭＬ０〜ＭＬ５１１のほとんどについて充電が必要となる。ここに、検索後、スタンバイ状態に戻る際に充電を必要とするマッチラインの数を減らすことができれば、消費電流を低減することができるので、これを可能とする連想メモリの開発が要請されている。
【００４３】
本発明は、かかる点に鑑み、検索後、スタンバイ状態に戻る際に充電を必要とするマッチラインの数を減らし、消費電流の低減化を図ることができるようにした連想メモリを提供することを目的とする。
【課題を解決するための手段】
【００４４】
本出願が開示する連想メモリは、第１のメモリセル部と、第２のメモリセル部と、前記第１のメモリセル部に対応して設けられ、検索前にプリチャージされる第１のマッチラインと、前記第２のメモリセル部に対応して設けられ、検索前にプリチャージされる第２のマッチラインとを備える。
【００４５】
そして、前記第１のメモリセル部は、検索時に検索データが自己の記憶データと一致しないときは、前記第１のマッチラインを放電させ、前記検索データが自己の記憶データと一致するときは、前記第１のマッチラインを放電させないように構成される。
【００４６】
また、前記第２のメモリセル部は、検索時に前記検索データが前記第１のメモリセル部の記憶データと一致しないときにおいて、前記検索データが自己の記憶データと一致しないときは、前記第２のマッチラインを放電させ、前記検索データが自己の記憶データと一致したときは、前記第２のマッチラインを放電させず、前記検索データが前記第１のメモリセル部の記憶データと一致したときは、前記検索データと自己の記憶データとの一致、不一致に関わらず、前記第２のマッチラインを放電させないように構成される。
【発明の効果】
【００４７】
開示した連想メモリによれば、前記第２のメモリセル部は、前記検索データが前記第１のメモリセル部の記憶データと一致したときは、前記検索データと自己の記憶データとの一致、不一致に関わらず、前記第２のマッチラインを放電させないように構成されるので、前記検索データが前記第１のメモリセル部の記憶データと一致したときは、検索後、スタンバイ状態に戻る際に前記第２のマッチラインについては充電の必要がない。したがって、検索後、スタンバイ状態に戻る際に充電を必要とするマッチラインの数を減らし、消費電流の低減化を図ることができる。
【発明を実施するための最良の形態】
【００４８】
（第１実施形態）
図１は本発明の第１実施形態の一部分を示す回路図である。本発明の第１実施形態は、図２５に示す従来の連想メモリが備えるメモリセルアレイ１６と構成の異なるメモリセルアレイ３１を設け、その他については、図２５に示す従来の連想メモリと同様に構成したものである。
【００４９】
図２はメモリセルアレイ３１の構成を示す回路図である。図２では、０番地の１ビット目及びｎビット目のメモリセル３（０、０）、３（０、ｎ−１）と、１番地の１ビット目及びｎビット目のメモリセル３（１、０）、３（１、ｎ−１）と、５１０番地の１ビット目及びｎビット目のメモリセル３（５１０、０）、３（５１０、ｎ−１）と、５１１番地の１ビット目及びｎビット目のメモリセル３（５１１、０）、３（５１１、ｎ−１）とを示し、その他については、図示を省略している。
【００５０】
ここで、たとえば、１番地のメモリセル３（１、ｐ）内のＮＭＯＳトランジスタ９（１、ｐ）〜１２（１、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（１、ｐ）、１２（１、ｐ）のソースは、接地されずに、０番地のマッチラインＭＬ０に接続されている。
【００５１】
また、たとえば、５１１番地のメモリセル３（５１１、ｐ）内のＮＭＯＳトランジスタ９（５１１、ｐ）〜１２（５１１、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（５１１、ｐ）、１２（５１１、ｐ）のソースは、接地されずに、５１０番地のマッチラインＭＬ５１０に接続されている。
【００５２】
即ち、メモリセルアレイ３１は、奇数番地、即ち、２ｍ＋１番地（但し、ｍ＝０、１、２、…、２５５であり、以下、同様である。）のメモリセル３（２ｍ＋１、ｐ）内のＮＭＯＳトランジスタ９（２ｍ＋１、ｐ）〜１２（２ｍ＋１、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（２ｍ＋１、ｐ）、１２（２ｍ＋１、ｐ）のソースについては、接地せずに、２ｍ番地のマッチラインＭＬ２ｍに接続し、その他については、図２７に示すメモリセルアレイ１６と同様に構成したものである。
【００５３】
図３〜図５は本発明の第１実施形態の検索動作例を説明するためのタイミング図であり、図３は検索データＤＩＮが０番地の記憶データと不一致で、１番地の記憶データと一致した場合、図４は検索データＤＩＮが０番地及び１番地の記憶データと不一致の場合、図５は検索データＤＩＮが０番地の記憶データＤＩＮと一致した場合を示している。
【００５４】
図３〜図５において、（Ａ）は動作サイクルを決めるクロック信号ＣＬＫ、（Ｂ）は検索コマンド信号ＸＳＥＲ、（Ｃ）は検索コマンドデコード信号ＳＥＲＺ、（Ｄ）はサーチドライバ活性化信号ＳＢＥＺ、（Ｅ）はサーチバスＳＢ（ｐ）、ＸＳＢ（ｐ）のレベル、（Ｆ）はマッチラインＭＬ０のレベル、（Ｇ）は検索結果信号ＭＳ０Ｚ、（Ｈ）はマッチラインＭＬ１のレベル、（Ｉ）は検索結果信号ＭＳ１Ｚを示している。
【００５５】
即ち、本発明の第１実施形態においては、検索前（スタンバイ時）には、検索コマンド信号ＸＳＥＲはＨレベル、検索コマンドデコード信号ＳＥＲＺはＬレベル、サーチドライバ活性化信号ＳＢＥＺはＬレベル、サーチバスＳＢ（ｐ）、ＸＳＢ（ｐ）はＬレベル、マッチラインＭＬ０〜ＭＬ５１１はＨレベル、検索結果信号ＭＳ０Ｚ〜ＭＳ５１１ＺはＨレベルとされる。
【００５６】
そして、検索時には、図３〜図５に示すように、検索コマンド信号ＸＳＥＲはＬレベルとされ、検索が指示されると共に、サーチドライバ２８（０）〜２８（ｎ−１）に対して検索データＤＩＮ＝Ｄ（０）〜Ｄ（ｎ−１）が与えられる。この結果、コマンドデコーダ２３は、検索コマンドデコード信号ＳＥＲＺをＨレベルとし、これに応答して、サーチドライバ活性化信号生成回路２４は、サーチドライバ活性化信号ＳＢＥＺをＨレベルとし、サーチドライバ２８（ｐ）は、検索データＤ（ｐ）の値に対応してサーチバスＳＢ（ｐ）、ＸＳＢ（ｐ）の一方をＨレベル、他方をＬレベルとする。
【００５７】
ここで、例えば、検索データＤＩＮが０番地の記憶データ（即ち、メモリセル３（０、０）〜３（０、ｎ−１）の記憶データ）と不一致の場合には、図３及び図４に示すように、マッチラインＭＬ０はＬレベルとなる。この結果、１番地のメモリセル３（１、ｐ）内のＮＭＯＳトランジスタ９（０、９）〜１２（０、ｐ）が活性化され、１番地のメモリセル３（１、ｐ）を対象に検索が行われる。
【００５８】
そして、たとえば、検索データＤＩＮが１番地の記憶データ（即ち、メモリセル３（１、０）〜３（１、ｎ−１）の記憶データ）と一致すると、図３に示すように、マッチラインＭＬ１はＨレベルの状態が維持される。これに対して、検索データＤＩＮが１番地の記憶データ（即ち、メモリセル３（１、０）〜３（１、ｎ−１）の記憶データ）と不一致の場合には、図４に示すように、１番地のマッチラインＭＬ１はＬレベルとなる。
【００５９】
また、検索データＤＩＮについて０番地を検索した場合において、検索データＤＩＮが０番地の記憶データ（即ち、メモリセル３（０、０）〜３（０、ｎ−１）の記憶データ）と一致すると、図５に示すように、０番地のマッチラインＭＬ０はＨレベルの状態が維持される。
【００６０】
この結果、１番地のメモリセル３（１、ｐ）内のＮＭＯＳトランジスタ１１（１、ｐ）、１２（１、ｐ）のソースのレベルは、マッチラインＭＬ０〜ＭＬ５１１のプリチャージレベルとなり、ＮＭＯＳトランジスタ１１（１、ｐ）、１２（１、ｐ）は非活性となり、１番地のメモリセル３（１、ｐ）を対象とした検索は実行されない。したがって、この場合には、１番地のマッチラインＭＬ１はＨレベルの状態が維持され、検索後、スタンバイ状態に戻る際に、１番地のマッチラインＭＬ１については充電の必要がない。
【００６１】
即ち、本発明の第１実施形態によれば、検索データＤＩＮが２ｍ番地の記憶データと一致した場合には、２ｍ＋１番地のマッチラインＭＬ（２ｍ＋１）はＨレベルを維持するので、検索後、スタンバイ状態に戻る際に、２ｍ＋１番地のマッチラインＭＬ（２ｍ＋１）については充電の必要がない。したがって、検索後、スタンバイ状態に戻る際に充電を必要とするマッチラインの数を減らし、消費電流の低減化を図ることができる。
【００６２】
（第２実施形態）
図６及び図７は本発明の第２実施形態の一部分を示す回路図であり、本発明の第２実施形態が備えるメモリセルアレイ３２の構成を示している。即ち、本発明の第２実施形態は、図２５に示す従来の連想メモリが備えるメモリセルアレイ１６と構成の異なるメモリセルアレイ３２を設け、その他については、図２５に示す従来の連想メモリと同様に構成したものである。
【００６３】
図６では、０番地の１ビット目及びｎビット目のメモリセル３（０、０）、３（０、ｎ−１）と、１番地の１ビット目及びｎビット目のメモリセル３（１、０）、３（１、ｎ−１）と、２番地の１ビット目及びｎビット目のメモリセル３（２、０）、３（２、ｎ−１）と、３番地の１ビット目及びｎビット目のメモリセル３（３、０）、３（３、ｎ−１）とを示し、その他については、図示を省略している。
【００６４】
図７では、５０８番地の１ビット目及びｎビット目のメモリセル３（５０８、０）、３（５０８、ｎ−１）と、５０９番地の１ビット目及びｎビット目のメモリセル３（５０９、０）、３（５０９、ｎ−１）と、５１０番地の１ビット目及びｎビット目のメモリセル３（５１０、０）、３（５１０、ｎ−１）と、５１１番地の１ビット目及びｎビット目のメモリセル３（５１１、０）、３（５１１、ｎ−１）とを示し、その他については、図示を省略している。
【００６５】
ここで、たとえば、１番地のメモリセル３（１、ｐ）内のＮＭＯＳトランジスタ９（１、ｐ）〜１２（１、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（１、ｐ）、１２（１、ｐ）のソースは、接地されずに、０番地のマッチラインＭＬ０に接続されている。
【００６６】
２番地のメモリセル３（２、ｐ）内のＮＭＯＳトランジスタ９（２、ｐ）〜１２（２、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（２、ｐ）、１２（２、ｐ）のソースは、接地されずに、１番地のマッチラインＭＬ１に接続されている。
【００６７】
３番地のメモリセル３（３、ｐ）内のＮＭＯＳトランジスタ９（３、ｐ）〜１２（３、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（３、ｐ）、１２（３、ｐ）のソースは、接地されずに、２番地のマッチラインＭＬ２に接続されている。
【００６８】
また、５０９番地のメモリセル３（５０９、ｐ）内のＮＭＯＳトランジスタ９（５０９、ｐ）〜１２（５０９、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（５０９、ｐ）、１２（５０９、ｐ）のソースは、接地されずに、５０８番地のマッチラインＭＬ５０８に接続されている。
【００６９】
５１０番地のメモリセル３（５１０、ｐ）内のＮＭＯＳトランジスタ９（５１０、ｐ）〜１２（５１０、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（５１０、ｐ）、１２（５１０、ｐ）のソースは、接地されずに、５０９番地のマッチラインＭＬ５０９に接続されている。
【００７０】
５１１番地のメモリセル３（５１１、ｐ）内のＮＭＯＳトランジスタ９（５１１、ｐ）〜１２（５１１、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（５１１、ｐ）、１２（５１１、ｐ）のソースは、接地されずに、５１０番地のマッチラインＭＬ５１０に接続されている。
【００７１】
即ち、メモリセルアレイ３２においては、４ｑ＋１番地（但し、ｑ＝０、１、２、…、１２７であり、以下、同様である。）のメモリセル３（４ｑ＋１、ｐ）内のＮＭＯＳトランジスタ９（４ｑ＋１、ｐ）〜１２（４ｑ＋１、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（４ｑ＋１、ｐ）、１２（４ｑ＋１、ｐ）のソースは、接地されずに、４ｑ番地のマッチラインＭＬ４ｑに接続されている。
【００７２】
また、４ｑ＋２番地のメモリセル３（４ｑ＋２、ｐ）内のＮＭＯＳトランジスタ９（４ｑ＋２、ｐ）〜１２（４ｑ＋２、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（４ｑ＋２、ｐ）、１２（４ｑ＋２、ｐ）のソースは、接地されずに、４ｑ＋１番地のマッチラインＭＬ（４ｑ＋１）に接続されている。
【００７３】
また、４ｑ＋３番地のメモリセル３（４ｑ＋３、ｐ）内のＮＭＯＳトランジスタ９（４ｑ＋３、ｐ）〜１２（４ｑ＋３、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（４ｑ＋３、ｐ）、１２（４ｑ＋３、ｐ）のソースは、接地されずに、４ｑ＋２番地のマッチラインＭＬ（４ｑ＋２）に接続されている。その他については、メモリセルアレイ３２は、図２７に示すメモリセルアレイ１６と同様に構成されている。
【００７４】
このように構成された本発明の第２実施形態においても、検索前（スタンバイ時）には、マッチラインＭＬ０〜ＭＬ５１１はＨレベルにプリチャージされると共に、サーチバスＳＢ（ｐ）、ＸＳＢ（ｐ）はＬレベルとされる。そして、検索時に、検索データＤＩＮが０番地の記憶データ（即ち、メモリセル３（０、０）〜３（０、ｎ−１）の記憶データ）と一致すると、マッチラインＭＬ０はＨレベルの状態が維持される。この結果、１番地のメモリセル３（１、ｐ）内のＮＭＯＳトランジスタ１１（１、ｐ）、１２（１、ｐ）は非活性とされ、１番地のメモリセル３（１、ｐ）を対象とした検索は実行されない。したがって、１番地のマッチラインＭＬ１はＨレベルの状態が維持される。
【００７５】
また、この結果、２番地のメモリセル３（２、ｐ）内のＮＭＯＳトランジスタ１１（２、ｐ）、１２（２、ｐ）は非活性とされ、２番地のメモリセル３（２、ｐ）を対象とした検索は実行されない。したがって、２番地のマッチラインＭＬ２はＨレベルの状態が維持される。また、この結果、３番地のメモリセル３（３、ｐ）内のＮＭＯＳトランジスタ１１（３、ｐ）、１２（３、ｐ）は非活性とされ、３番地のメモリセル３（３、ｐ）を対象とした検索は実行されない。したがって、３番地のマッチラインＭＬ３はＨレベルの状態が維持される。
【００７６】
これに対して、検索データＤＩＮが０番地の記憶データ（即ち、メモリセル３（０、０）〜３（０、ｎ−１）の記憶データ）と不一致の場合には、マッチラインＭＬ０はＬレベルとなる。この結果、１番地のメモリセル３（１、ｐ）内のＮＭＯＳトランジスタ１１（１、ｐ）、１２（１、ｐ）は活性化され、１番地のメモリセル３（１、ｐ）を対象とした検索が実行される。
【００７７】
ここで、たとえば、検索データＤＩＮが１番地の記憶データ（即ち、メモリセル３（１、０）〜３（１、ｎ−１）の記憶データ）と一致すると、１番地のマッチラインＭＬ１はＨレベルの状態が維持される。この結果、２番地のメモリセル３（２、ｐ）内のＮＭＯＳトランジスタ１１（２、ｐ）、１２（２、ｐ）は非活性とされ、２番地のメモリセル３（２、ｐ）を対象とした検索は実行されない。したがって、２番地のマッチラインＭＬ２はＨレベルの状態が維持される。
【００７８】
また、この結果、３番地のメモリセル３（３、ｐ）内のＮＭＯＳトランジスタ１１（３、ｐ）、１２（３、ｐ）は非活性とされ、３番地のメモリセル３（３、ｐ）を対象とした検索は実行されない。したがって、３番地のマッチラインＭＬ３はＨレベルの状態が維持される。
【００７９】
これに対して、０番地の次に１番地のメモリセル（１、０）〜３（１、ｎ−１）を対象として検索を実行した結果、検索データＤＩＮが１番地の記憶データ（即ち、メモリセル３（１、０）〜３（１、ｎ−１）の記憶データ）と不一致の場合には、１番地のマッチラインＭＬ１はＬレベルとなる。この結果、２番地のメモリセル３（２、ｐ）内のＮＭＯＳトランジスタ１１（２、ｐ）、１２（２、ｐ）は活性化され、２番地のメモリセル３（２、ｐ）を対象とした検索が実行される。
【００８０】
ここで、たとえば、検索データＤＩＮが２番地の記憶データ（即ち、メモリセル３（２、０）〜３（２、ｎ−１）の記憶データ）と一致すると、２番地のマッチラインＭＬ２はＨレベルの状態が維持される。この結果、３番地のメモリセル３（３、ｐ）内のＮＭＯＳトランジスタ１１（３、ｐ）、１２（３、ｐ）は非活性とされ、３番地のメモリセル３（３、ｐ）を対象とした検索は実行されない。この場合には、３番地のマッチラインＭＬ３のレベル＝Ｈレベルの状態が維持される。
【００８１】
即ち、本発明の第２実施形態においては、検索データＤＩＮが４ｑ番地の記憶データと一致した場合には、４ｑ＋１番地〜４ｑ＋３番地のマッチラインＭＬ（４ｑ＋１）〜ＭＬ（４ｑ＋３）はＨレベルを維持するので、検索後、スタンバイ状態に戻る際に、４ｑ＋１番地〜４ｑ＋３番地のマッチラインＭＬ（４ｑ＋１）〜ＭＬ（４ｑ＋３）については充電の必要がない。
【００８２】
また、検索データＤＩＮが４ｑ番地の記憶データと不一致で、４ｑ＋１番地の記憶データと一致した場合には、４ｑ＋２番地及び４ｑ＋３番地のマッチラインＭＬ（４ｑ＋２）、ＭＬ（４ｑ＋３）はＨレベルを維持するので、検索後、スタンバイ状態に戻る際に、４ｑ＋２番地及び４ｑ＋３番地のマッチラインＭＬ（４ｑ＋２）、ＭＬ（４ｑ＋３）については充電の必要がない。
【００８３】
また、検索データＤＩＮが４ｑ番地及び４ｑ＋１番地の記憶データと不一致で、４ｑ＋２番地の記憶データと一致した場合には、４ｑ＋３番地のマッチラインＭＬ（４ｑ＋３）はＨレベルを維持するので、検索後、スタンバイ状態に戻る際に、４ｑ＋３番地のマッチラインＭＬ（４ｑ＋３）については充電の必要がない。
【００８４】
したがって、本発明の第２実施形態によれば、検索後、スタンバイ状態に戻る際に充電を必要とするマッチラインの数を本発明の第１実施形態以上に減らし、消費電流の低減化を図ることができる。
【００８５】
（第３実施形態）
図８は本発明の第３実施形態の一部分を示す回路図である。本発明の第３実施形態は、図２５に示す従来の連想メモリが備えるメモリセルアレイ１６と構成の異なるメモリセルアレイ３３を設けると共に、０番地及び偶数番地に対応してグランドラインＭＧＬ０、ＭＧＬ２、…、ＭＧＬ５１０を設け、更に、グランドラインＭＧＬ０、ＭＧＬ２、…、ＭＧＬ５１０に対応してグランドライン・ドライバ（ＭＧＬＤ）部３４を設け、その他については、図２５に示す従来の連想メモリと同様に構成したものである。
【００８６】
図９はメモリセルアレイ３３の構成を示す回路図である。図９では、０番地の１ビット目及びｎビット目のメモリセル３（０、０）、３（０、ｎ−１）と、１番地の１ビット目及びｎビット目のメモリセル３（１、０）、３（１、ｎ−１）と、５１０番地の１ビット目及びｎビット目のメモリセル３（５１０、０）、３（５１０、ｎ−１）と、５１１番地の１ビット目及びｎビット目のメモリセル３（５１１、０）、３（５１１、ｎ−１）とを示し、その他については、図示を省略している。
【００８７】
ここで、たとえば、１番地のメモリセル３（１、ｐ）内のＮＭＯＳトランジスタ９（１、ｐ）〜１２（１、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（１、ｐ）、１２（１、ｐ）のソースは、接地されずに、０番地のグランドラインＭＧＬ０に接続されている。
【００８８】
また、たとえば、５１１番地のメモリセル３（５１１、ｐ）内のＮＭＯＳトランジスタ９（５１１、ｐ）〜１２（５１１、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（５１１、ｐ）、１２（５１１、ｐ）のソースは、接地されずに、５１０番地のグランドラインＭＧＬ５１０に接続されている。
【００８９】
即ち、メモリセルアレイ３３は、０番地及び偶数番地、即ち、２ｍ番地に対応してグランドラインＭＧＬ２ｍを設け、２ｍ＋１番地のメモリセル３（２ｍ＋１、ｐ）内のＮＭＯＳトランジスタ９（２ｍ＋１、ｐ）〜１２（２ｍ＋１、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（２ｍ＋１、ｐ）、１２（２ｍ＋１、ｐ）のソースについては、接地せずに、２ｍ番地のグランドラインＭＧＬ２ｍに接続し、その他については、図２５に示すメモリセルアレイ１６と同様に構成したものである。
【００９０】
図１０はグランドライン・ドライバ部３４の構成を示す回路図である。図１０中、３５（０）はグランドラインＭＧＬ０に対応して設けられたグランドライン・ドライバ、３５（２）はグランドラインＭＧＬ２に対応して設けられたグランドライン・ドライバ、３５（５１０）はグランドラインＭＧＬ５１０に対応して設けられたグランドライン・ドライバであり、グランドライン・ドライバＭＧＬ４、ＭＧＬ６、…、ＭＧＬ５０８に対応して設けられたグランドライン・ドライバ３５（４）、３５（６）、…、３５（５０８）は図示を省略している。
【００９１】
グランドライン・ドライバ３５（０）は、インバータ３６（０）とＮＭＯＳトランジスタ３７（０）とを備えている。そして、インバータ３６（０）は、入力端子を検索結果信号線３８（０）に接続している。ＮＭＯＳトランジスタ３７（０）は、ゲートをインバータ３６（０）の出力端子に接続し、ドレインをグランドラインＭＧＬ０に接続し、ソースを接地している。
【００９２】
グランドライン・ドライバ３５（２）は、インバータ３６（２）とＮＭＯＳトランジスタ３７（２）とを備えている。そして、インバータ３６（２）は、入力端子を検索結果信号線３８（２）に接続している。ＮＭＯＳトランジスタ３７（２）は、ゲートをインバータ３６（２）の出力端子に接続し、ドレインをグランドラインＭＧＬ２に接続し、ソースを接地している。
【００９３】
グランドライン・ドライバ３５（５１０）は、インバータ３６（５１０）とＮＭＯＳトランジスタ３７（５１０）とを備えている。そして、インバータ３６（５１０）は、入力端子を検索結果信号線３８（５１０）に接続している。ＮＭＯＳトランジスタ３７（５１０）は、ゲートをインバータ３６（５１０）の出力端子に接続し、ドレインをグランドラインＭＧＬ５１０に接続し、ソースを接地している。グランドライン・ドライバ３５（４）、３５（６）、…、３５（５０８）も同様に構成されている。
【００９４】
即ち、グランドライン・ドライバ部３４は、グランドラインＭＧＬ２ｍに対応してグランドライン・ドライバ３５（２ｍ）を備えており、グランドライン・ドライバ３５（２ｍ）は、インバータ３６（２ｍ）とＮＭＯＳトランジスタ３７（２ｍ）とを備えている。そして、インバータ３６（２ｍ）は、入力端子を検索結果信号線３８（２ｍ）に接続し、ＮＭＯＳトランジスタ３７（２ｍ）は、ゲートをインバータ３６（２ｍ）の出力端子に接続し、ドレインをグランドラインＭＧＬ２ｍに接続し、ソースを接地している。
【００９５】
ここで、例えば、検索結果信号ＭＳ２ｍＺがＨレベルの場合、インバータ３６（２ｍ）の出力はＬレベル、ＮＭＯＳトランジスタ３７（２ｍ）はＯＦＦとなり、グランドラインＭＧＬ２ｍはフローティングとなる。これに対して、検索結果信号ＭＳ２ｍＺがＬレベルの場合、インバータ３６（２ｍ）の出力はＨレベル、ＮＭＯＳトランジスタ３７（２ｍ）はＯＮとなり、グランドラインＭＧＬ２ｍは、ＮＭＯＳトランジスタ３７（２ｍ）を介して接地される。
【００９６】
図１１及び図１２は本発明の第３実施形態の検索動作例を示すタイミング図である。図１１は検索データＤＩＮが０番地及び１番地の記憶データと不一致の場合、図１２は検索データＤＩＮが０番地の記憶データと一致した場合を示している。
【００９７】
図１１及び図１２において、（Ａ）は動作サイクルを決めるクロック信号ＣＬＫ、（Ｂ）は検索コマンド信号ＸＳＥＲ、（Ｃ）は検索コマンドデコード信号ＳＥＲＺ、（Ｄ）はサーチドライバ活性化信号ＳＢＥＺ、（Ｅ）はサーチバスＳＢ（ｐ）、ＸＳＢ（ｐ）のレベル、（Ｆ）はマッチラインＭＬ０のレベル、（Ｇ）は検索結果信号ＭＳ０Ｚ、（Ｈ）はマッチラインＭＬ１のレベル、（Ｉ）は検索結果信号ＭＳ１Ｚを示している。
【００９８】
即ち、本発明の第３実施形態においては、検索前（スタンバイ時）には、検索コマンド信号ＸＳＥＲはＨレベル、検索コマンドデコード信号ＳＥＲＺはＬレベル、サーチドライバ活性化信号ＳＢＥＺはＬレベル、サーチバスＳＢ（ｐ）、ＸＳＢ（ｐ）はＬレベル、マッチラインＭＬ０〜ＭＬ５１１はＨレベル、検索結果信号ＭＳ０Ｚ〜ＭＳ５１１ＺはＨレベルとされる。
【００９９】
そして、検索時には、図１１及び図１２に示すように、検索コマンド信号ＸＳＥＲはＬレベルとされ、検索が指示されると共に、サーチドライバ２８（０）〜２８（ｎ−１）に検索データＤＩＮ＝Ｄ（０）〜Ｄ（ｎ−１）が与えられる。この結果、コマンドデコーダ２３は、検索コマンドデコード信号ＳＥＲＺをＨレベルとし、これに応答して、サーチドライバ活性化信号生成回路２４は、サーチドライバ活性化信号ＳＢＥＺをＨレベルとし、サーチドライバ２８（ｐ）は、検索データＤ（ｐ）の値に対応してサーチバスＳＢ（ｐ）、ＸＳＢ（ｐ）の一方をＨレベル、他方をＬレベルとする。
【０１００】
ここで、たとえば、検索データＤＩＮが０番地の記憶データ（即ち、メモリセル３（０、０）〜３（０、ｎ−１）の記憶データ）と不一致の場合には、図１１に示すように、０番地のマッチラインＭＬ０はＬレベル、検索結果信号ＭＳ０ＺはＬレベルとなるので、インバータ３６（０）の出力はＨレベル、ＮＭＯＳトランジスタ３７（０）はＯＮとなり、グランドラインＭＧＬ０は、ＮＭＯＳトランジスタ３７（０）を介して接地される。
【０１０１】
この結果、１番地のメモリセル３（１、ｐ）内のＮＭＯＳトランジスタ１１（１、ｐ）、１２（１、ｐ）が活性化され、１番地のメモリセル３（１、ｐ）を対象に検索が行われる。検索の結果、検索データＤＩＮが１番地の記憶データ（即ち、メモリセル３（１、０）〜３（１、ｎ−１）の記憶データ）と不一致の場合には、図１１に示すように、１番地のマッチラインＭＬ１はＬレベル、検索結果信号ＭＳ１ＺはＬレベルとなる。
【０１０２】
これに対して、検索データＤＩＮが０番地の記憶データ（即ち、メモリセル３（０、０）〜３（０、ｎ−１）の記憶データ）と一致すると、図１２に示すように、０番地のマッチラインＭＬ０はＨレベルの状態が維持され、検索結果信号ＭＳ０ＺもＨレベルの状態が維持されるので、インバータ３６（０）の出力はＬレベル、ＮＭＯＳトランジスタ３７（０）はＯＦＦを維持し、グランドラインＭＧＬ０はフローティング状態を維持する。
【０１０３】
この結果、１番地のメモリセル３（１、ｐ）内のＮＭＯＳトランジスタ１１（１、ｐ）、１２（１、ｐ）は非活性とされ、１番地のメモリセル３（１、ｐ）を対象とした検索は実行されない。したがって、この場合には、１番地のマッチラインＭＬ１はＨレベルの状態が維持され、検索後、スタンバイ状態に戻る際に、１番地のマッチラインＭＬ１については充電の必要がない。
【０１０４】
即ち、本発明の第３実施形態によれば、検索データＤＩＮが２ｍ番地の記憶データと一致した場合には、２ｍ＋１番地のマッチラインＭＬ（２ｍ＋１）はＨレベルを維持するので、検索後、スタンバイ状態に戻る際に、２ｍ＋１番地のマッチラインＭＬ（２ｍ＋１）については充電の必要がない、したがって、検索後、スタンバイ状態に戻る際に充電を必要とするマッチラインの数を減らし、消費電流の低減化を図ることができる。
【０１０５】
（第４実施形態）
図１３は本発明の第４実施形態の一部分を示す回路図である。本発明の第４実施形態は、図２５に示す従来の連想メモリが備えるメモリセルアレイ１６と構成の異なるメモリセルアレイ４０を設けると共に、グランドラインＭＧＬ４ｑ〜ＭＧＬ（４ｑ＋２）と、グランドライン・ドライバ（ＭＧＬＤ）部４１とを設け、その他については、図２５に示す従来の連想メモリと同様に構成したものである。
【０１０６】
図１４はメモリセルアレイ４０の構成を示す回路図である。図１４では、０番地の１ビット目及びｎビット目のメモリセル３（０、０）、３（０、ｎ−１）と、１番地の１ビット目及びｎビット目のメモリセル３（１、０）、３（１、ｎ−１）と、２番地の１ビット目及びｎビット目のメモリセル３（２、０）、３（２、ｎ−１）と、３番地の１ビット目及びｎビット目のメモリセル３（３、０）、３（３、ｎ−１）とを示し、その他については、図示を省略している。
【０１０７】
ここで、たとえば、１番地のメモリセル３（１、ｐ）内のＮＭＯＳトランジスタ９（１、ｐ）〜１２（１、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（１、ｐ）、１２（１、ｐ）のソースは、接地されずに、０番地のグランドラインＭＧＬ０に接続されている。
【０１０８】
また、２番地のメモリセル３（２、ｐ）内のＮＭＯＳトランジスタ９（２、ｐ）〜１２（２、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（２、ｐ）、１２（２、ｐ）のソースは、接地されずに、１番地のグランドラインＭＧＬ１に接続されている。
【０１０９】
また、３番地のメモリセル３（３、ｐ）内のＮＭＯＳトランジスタ９（３、ｐ）〜１２（３、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（３、ｐ）、１２（３、ｐ）のソースを２番地のグランドラインＭＧＬ２に接続している。
【０１１０】
即ち、メモリセルアレイ４０においては、４ｑ＋１番地のメモリセル３（４ｑ＋１、ｐ）内のＮＭＯＳトランジスタ９（４ｑ＋１、ｐ）〜１２（４ｑ＋１、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（４ｑ＋１、ｐ）、１２（４ｑ＋１、ｐ）のソースは、接地されずに、４ｑ番地のグランドラインＭＧＬ４ｑに接続されている。
【０１１１】
また、４ｑ＋２番地のメモリセル３（４ｑ＋２、ｐ）内のＮＭＯＳトランジスタ９（４ｑ＋２、ｐ）〜１２（４ｑ＋２、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（４ｑ＋２、ｐ）、１２（４ｑ＋２、ｐ）のソースは、接地されずに、４ｑ＋１番地のグランドラインＭＧＬ（４ｑ＋１）に接続されている。
【０１１２】
また、４ｑ＋３番地のメモリセル３（４ｑ＋３、ｐ）内のＮＭＯＳトランジスタ９（４ｑ＋３、ｐ）〜１２（４ｑ＋３、ｐ）のうち、ゲートがサーチバスＳＢ（ｐ）又はＸＳＢ（ｐ）に接続されているＮＭＯＳトランジスタ１１（４ｑ＋３、ｐ）、１２（４ｑ＋３、ｐ）のソースは、接地されずに、４ｑ＋２番地のグランドラインＭＧＬ（４ｑ＋２）に接続されている。その他については、メモリセルアレイ４０は、図２７に示すメモリセルアレイ１６と同様に構成されている。
【０１１３】
図１５はグランドライン・ドライバ部４１の構成を示す回路図である。図１５において、４２（０）はグランドラインＭＧＬ０に対応して設けられたグランドライン・ドライバ、４２（１）はグランドラインＭＧＬ１に対応して設けられたグランドライン・ドライバ、４２（２）はグランドラインＭＧＬ２に対応して設けられたグランドライン・ドライバであり、グランドラインＭＧＬ４〜ＭＧＬ６、ＭＧＬ８〜ＭＧＬ１０、…、ＭＧＬ５０８〜ＭＧＬ５１０に対応して設けられたグランドライン・ドライバ４２（４）〜４２（６）、４２（８）〜４２（１０）、…、４２（５０８）〜４２（５１０）は図示を省略している。
【０１１４】
ここで、たとえば、グランドライン・ドライバ４２（０）は、インバータ４３（０）とＮＭＯＳトランジスタ４４（０）とを備えている。そして、インバータ４３（０）は、入力端子を検索結果信号線３８（０）に接続している。ＮＭＯＳトランジスタ４４（０）は、ゲートをインバータ４３（０）の出力端子に接続し、ドレインをグランドラインＭＧＬ０に接続し、ソースを接地している。
【０１１５】
また、グランドライン・ドライバ４２（１）は、インバータ４３（１）とＮＭＯＳトランジスタ４４（１）とを備えている。そして、インバータ４３（１）は、入力端子を検索結果信号線３８（１）に接続している。ＮＭＯＳトランジスタ４４（１）は、ゲートをインバータ４３（１）の出力端子に接続し、ドレインをグランドラインＭＧＬ１に接続し、ソースを接地している。
【０１１６】
また、グランドライン・ドライバ４２（２）は、インバータ４３（２）とＮＭＯＳトランジスタ４４（２）とを備えている。そして、インバータ４３（２）は、入力端子を検索結果信号線３８（２）に接続している。ＮＭＯＳトランジスタ４４（２）は、ゲートをインバータ４３（２）の出力端子に接続し、ドレインをグランドラインＭＧＬ２に接続し、ソースを接地している。
【０１１７】
即ち、グランドライン・ドライバ部４１は、グランドラインＭＧＬ４ｑに対応してグランドライン・ドライバ４２（４ｑ）を設け、グランドラインＭＧＬ（４ｑ＋１）に対応してグランドライン・ドライバ４２（４ｑ＋１）を設け、グランドラインＭＧＬ（４ｑ＋２）に対応してグランドライン・ドライバ４２（４ｑ＋２）を設けて構成されている。
【０１１８】
また、グランドライン・ドライバ４２（４ｑ）は、インバータ４３（４ｑ）とＮＭＯＳトランジスタ４４（４ｑ）とを設けて構成されている。そして、インバータ４３（４ｑ）は、入力端子を検索結果信号線３８（４ｑ）に接続している。ＮＭＯＳトランジスタ４４（４ｑ）は、ゲートをインバータ４３（４ｑ）の出力端子に接続し、ドレインをグランドラインＭＧＬ４ｑに接続し、ソースを接地している。
【０１１９】
また、グランドライン・ドライバ４２（４ｑ＋１）は、インバータ４３（４ｑ＋１）とＮＭＯＳトランジスタ４４（４ｑ＋１）とを設けて構成されている。そして、インバータ４３（４ｑ＋１）は、入力端子を検索結果信号線３８（４ｑ＋１）に接続している。ＮＭＯＳトランジスタ４４（４ｑ＋１）は、ゲートをインバータ４３（４ｑ＋１）の出力端子に接続し、ドレインをグランドラインＭＧＬ（４ｑ＋１）に接続し、ソースを接地している。
【０１２０】
また、グランドライン・ドライバ４２（４ｑ＋２）は、インバータ４３（４ｑ＋２）とＮＭＯＳトランジスタ４４（４ｑ＋２）とを設けて構成されている。そして、インバータ４３（４ｑ＋２）は、入力端子を検索結果信号線３８（４ｑ＋２）に接続している。また、ＮＭＯＳトランジスタ４４（４ｑ＋２）は、ゲートをインバータ４３（４ｑ＋２）の出力端子に接続し、ドレインをグランドラインＭＧＬ（４ｑ＋２）に接続し、ソースを接地している。
【０１２１】
ここで、例えば、検索結果信号ＭＳ４ｑＺがＨレベルの場合、インバータ４３（４ｑ）の出力はＬレベル、ＮＭＯＳトランジスタ４４（４ｑ）はＯＦＦとなり、グランドラインＭＧＬ４ｑはフローティングとなる。これに対して、検索結果信号ＭＳ４ｑＺがＬレベルの場合、インバータ４３（４ｑ）の出力はＨレベル、ＮＭＯＳトランジスタ４４（４ｑ）はＯＮとなり、グランドラインＭＧＬ４ｑは、ＮＭＯＳトランジスタ４４（４ｑ）を介して接地される。
【０１２２】
また、例えば、検索結果信号ＭＳ（４ｑ＋１）ＺがＨレベルの場合、インバータ４３（４ｑ＋１）の出力はＬレベル、ＮＭＯＳトランジスタ４４（４ｑ＋１）はＯＦＦとなり、グランドラインＭＧＬ（４ｑ＋１）はフローティングとなる。これに対して、検索結果信号ＭＳ（４ｑ＋１）ＺがＬレベルの場合、インバータ４３（４ｑ＋１）の出力はＨレベル、ＮＭＯＳトランジスタ４４（４ｑ＋１）はＯＮとなり、グランドラインＭＧＬ（４ｑ＋１）は、ＮＭＯＳトランジスタ４４（４ｑ＋１）を介して接地される。
【０１２３】
また、例えば、検索結果信号ＭＳ（４ｑ＋２）ＺがＨレベルの場合、インバータ４３（４ｑ＋２）の出力はＬレベル、ＮＭＯＳトランジスタ４４（４ｑ＋２）はＯＦＦとなり、グランドラインＭＧＬ（４ｑ＋２）はフローティングとなる。これに対して、検索結果信号ＭＳ（４ｑ＋２）ＺがＬレベルの場合、インバータ４３（４ｑ＋２）の出力はＨレベル、ＮＭＯＳトランジスタ４４（４ｑ＋２）はＯＮとなり、グランドラインＭＧＬ（４ｑ＋２）は、ＮＭＯＳトランジスタ４４（４ｑ＋２）を介して接地される。
【０１２４】
このように構成された本発明の第４実施形態においては、検索前（スタンバイ時）には、マッチラインＭＬ０〜ＭＬ５１１はＨレベルにプリチャージされると共に、サーチバスＳＢ（ｐ）、ＸＳＢ（ｐ）はＬレベルとされる。そして、検索時に、検索データＤＩＮが０番地の記憶データ（即ち、メモリセル３（０、０）〜３（０、ｎ−１）の記憶データ）と一致すると、マッチラインＭＬ０はＨレベルの状態が維持され、検索結果信号ＭＳ０ＺもＨレベルの状態が維持されるので、インバータ４３（０）の出力はＬレベル、ＮＭＯＳトランジスタ４４（０）はＯＦＦを維持し、グランドラインＭＧＬ０はフローティング状態を維持する。
【０１２５】
この結果、１番地のメモリセル３（１、ｐ）内のＮＭＯＳトランジスタ１１（１、ｐ）、１２（１、ｐ）は非活性とされ、１番地のメモリセル３（１、ｐ）を対象とした検索は実行されない。したがって、１番地のマッチラインＭＬ１はＨレベルの状態が維持され、検索結果信号ＭＳ１ＺもＨレベルの状態が維持されるので、インバータ４３（１）の出力はＬレベル、ＮＭＯＳトランジスタ４４（１）はＯＦＦを維持し、グランドラインＭＧＬ１はフローティング状態を維持する。
【０１２６】
この結果、２番地のメモリセル３（２、ｐ）内のＮＭＯＳトランジスタ１１（２、ｐ）、１２（２、ｐ）は非活性とされ、２番地のメモリセル３（２、ｐ）を対象とした検索は実行されない。したがって、２番地のマッチラインＭＬ２はＨレベルの状態が維持され、検索結果信号ＭＳ２ＺもＨレベルの状態が維持されるので、インバータ４３（２）の出力はＬレベル、ＮＭＯＳトランジスタ４４（２）はＯＦＦを維持し、グランドラインＭＧＬ２はフローティング状態を維持する。この結果、３番地のメモリセル３（３、ｐ）内のＮＭＯＳトランジスタ１１（３、ｐ）、１２（３、ｐ）は非活性とされ、３番地のメモリセル３（３、ｐ）を対象とした検索は実行されない。したがって、３番地のマッチラインＭＬ３はＨレベルの状態が維持される。
【０１２７】
これに対して、検索データＤＩＮが０番地の記憶データ（即ち、メモリセル３（０、０）〜３（０、ｎ−１）の記憶データ）と不一致の場合には、０番地のマッチラインＭＬ０はＬレベル、検索結果信号ＭＳ０ＺはＬレベルとなり、インバータ４３（０）の出力はＨレベル、ＮＭＯＳトランジスタ４４（０）はＯＮとなり、グランドラインＭＧＬ０Ｚは、ＮＭＯＳトランジスタ４４（０）を介して接地される。この結果、１番地のメモリセル３（１、ｐ）内のＮＭＯＳトランジスタ１１（１、ｐ）、１２（１、ｐ）は活性化され、１番地のメモリセル３（１、ｐ）を対象とした検索が実行される。
【０１２８】
ここで、例えば、検索データＤＩＮが１番地の記憶データ（即ち、メモリセル３（１、０）〜３（１、ｎ−１）の記憶データ）と一致すると、１番地のマッチラインＭＬ１はＨレベルの状態が維持され、検索結果信号ＭＳ１ＺもＨレベルの状態が維持されるので、インバータ４３（１）の出力はＬレベル、ＮＭＯＳトランジスタ４４（１）はＯＦＦを維持し、グランドラインＭＧＬ１はフローティング状態を維持する。
【０１２９】
この結果、２番地のメモリセル３（２、ｐ）内のＮＭＯＳトランジスタ１１（２、ｐ）、１２（２、ｐ）は非活性とされ、２番地のメモリセル３（２、ｐ）を対象とした検索は実行されない。したがって、２番地のマッチラインＭＬ２はＨレベルの状態が維持され、検索結果信号ＭＳ２ＺもＨレベルの状態が維持されるので、インバータ４３（２）の出力はＬレベル、ＮＭＯＳトランジスタ４４（２）はＯＦＦを維持し、グランドラインＭＧＬ２はフローティング状態を維持する。この結果、３番地のメモリセル３（３、ｐ）内のＮＭＯＳトランジスタ１１（３、ｐ）、１２（３、ｐ）は非活性とされ、３番地のメモリセル３（３、ｐ）を対象とした検索は実行されない。したがって、３番地のマッチラインＭＬ３はＨレベルの状態が維持される。
【０１３０】
これに対して、０番地の次に１番地のメモリセル（１、０）〜３（１、ｎ−１）を対象として検索を実行した結果、検索データＤＩＮが１番地の記憶データ（即ち、メモリセル３（１、０）〜３（１、ｎ−１）の記憶データ）と不一致の場合には、１番地のマッチラインＭＬ１はＬレベル、検索結果信号ＭＳ１ＺはＬレベル、インバータ４３（１）の出力はＨレベル、ＮＭＯＳトランジスタ４４（１）はＯＮとなり、グランドラインＭＧＬ２は、ＮＭＯＳトランジスタ４４（１）を介して接地される。この結果、２番地のメモリセル３（２、ｐ）内のＮＭＯＳトランジスタ１１（２、ｐ）、１２（２、ｐ）は活性化され、２番地のメモリセル３（２、ｐ）を対象とした検索が実行される。
【０１３１】
ここで、例えば、検索データＤＩＮが２番地の記憶データ（即ち、メモリセル３（２、０）〜３（２、ｎ−１）の記憶データ）と一致すると、２番地のマッチラインＭＬ２はＨレベルの状態が維持され、検索結果信号ＭＳ２ＺもＨレベルが維持されるので、インバータ４３（２）の出力はＬレベル、ＮＭＯＳトランジスタ４４（２）はＯＦＦを維持し、グランドラインＭＧＬ２はフローティング状態を維持する。この結果、３番地のメモリセル３（３、ｐ）内のＮＭＯＳトランジスタ１１（３、ｐ）、１２（３、ｐ）は非活性とされ、３番地のメモリセル３（３、ｐ）を対象とした検索は実行されない。したがって、３番地のマッチラインＭＬ３はＨレベルの状態が維持される。
【０１３２】
即ち、本発明の第４実施形態においては、検索データＤＩＮが４ｑ番地の記憶データと一致した場合には、４ｑ＋１番地〜４ｑ＋３番地のマッチラインＭＬ（４ｑ＋１）〜ＭＬ（４ｑ＋３）はＨレベルを維持するので、検索後、スタンバイ状態に戻る際に、４ｑ＋１番地〜４ｑ＋３番地のマッチラインＭＬ（４ｑ＋１）〜ＭＬ（４ｑ＋３）については充電の必要がない。
【０１３３】
また、検索データＤＩＮが４ｑ番地の記憶データと不一致で、４ｑ＋１番地の記憶データと一致した場合には、４ｑ＋２番地及び４ｑ＋３番地のマッチラインＭＬ（４ｑ＋２）、ＭＬ（４ｑ＋３）はＨレベルを維持するので、検索後、スタンバイ状態に戻る際に、４ｑ＋２番地及び４ｑ＋３番地のマッチラインＭＬ（４ｑ＋２）、ＭＬ（４ｑ＋３）については充電の必要がない。
【０１３４】
また、検索データＤＩＮが４ｑ番地及び４ｑ＋１番地の記憶データと不一致で、４ｑ＋２番地の記憶データと一致した場合には、４ｑ＋３番地のマッチラインＭＬ（４ｑ＋３）はＨレベルを維持するので、検索後、スタンバイ状態に戻る際に、４ｑ＋３番地のマッチラインＭＬ（４ｑ＋３）については充電の必要がない。
【０１３５】
したがって、本発明の第４実施形態によれば、検索後、スタンバイ状態に戻る際に充電を必要とするマッチラインの数を本発明の第３実施形態以上に減らし、消費電流の低減化を図ることができる。
【０１３６】
（その他）
本発明の第１実施形態〜第４実施形態においては、二値（binary）タイプのメモリセルを使用した場合について説明したが、その他、本発明は、例えば、図１６に示すような三値（ternary）タイプのメモリセルを使用することもできる。図１６中、４６は一方の記憶媒体であるフリップフロップであり、４７、４８はインバータである。また、Ｓ０、Ｓ１はストレージノード、４９、５０はワードラインＷＬの電位によりＯＮ、ＯＦＦが制御されるＮＭＯＳトランジスタである。５１は他方の記憶媒体であるフリップフロップであり、５２、５３はインバータである。また、Ｓ３、Ｓ４はストレージノード、５４、５５はワードラインＷＬの電位によりＯＮ、ＯＦＦが制御されるＮＭＯＳトランジスタである。
【０１３７】
５６はストレージノードＳ１の電位によりＯＮ、ＯＦＦが制御されるＮＭＯＳトランジスタ、５７はストレージノードＳ４の電位によりＯＮ、ＯＦＦが制御されるＮＭＯＳトランジスタ、５８はサーチバスＳＢの電位によりＯＮ、ＯＦＦが制御されるＮＭＯＳトランジスタ、５９はサーチバスＸＳＢの電位によりＯＮ、ＯＦＦが制御されるＮＭＯＳトランジスタである。
【０１３８】
図１６に示すメモリセルに対するデータの書き込み及び図１６に示すメモリセルからのデータの読み出しは、ワードラインＷＬとビットラインＢＬ０、ＸＢＬ０、ＢＬ１、ＸＢＬ１とＮＭＯＳトランジスタ４９、５０、５４、５５とを使用して行われる。表３は図１６に示すメモリセルに対するデータ書き込み時及び図１６に示すメモリセルからのデータ読み出し時におけるメモリセルの記憶データとビットラインＢＬ０、ＸＢＬ０、ＢＬ１、ＸＢＬ１の論理値との関係を示している。
【０１３９】
【表３】
0005104297.tif 000004
【０１４０】
また、図１６に示すメモリセルに対する検索は、サーチバスＳＢ、ＸＳＢと、ＮＭＯＳトランジスタ５６〜５９と、マッチラインＭＬを使用して行われる。表４は検索時におけるメモリセルの記憶データとサーチバスＳＢ、ＸＳＢの論理値との関係を示している。
【０１４１】
【表４】
0005104297.tif 000005
【０１４２】
また、本発明の第１実施形態〜第４実施形態においては、検索時に使用するＮＭＯＳトランジスタ９〜１２については、ゲートをストレージノードＳ０又はＳ１に接続したＮＭＯＳトランジスタ９、１０が上段となり、ゲートをサーチバスＳＢ又はＸＳＢに接続したＮＭＯＳトランジスタ１１、１２が下段となるように接続した場合について説明したが、ゲートをサーチバスＳＢ又はＸＳＢに接続したＮＭＯＳトランジスタ１１、１２が上段となり、ゲートをストレージノードに接続したＮＭＯＳトランジスタ９、１０が下段となるように接続しても良い。
【０１４３】
また、本発明の第１実施形態〜第４実施形態においては、メモリセルとしてＳＲＡＭセルを使用した場合について説明したが、本発明は、ＳＲＡＭセル以外のメモリセルを使用する場合にも適用することができることは当然である。
【０１４４】
また、本発明の第１実施形態及び第３実施形態においては、連続する２つの番地を単位として上位番地のマッチラインのレベル制御を行い、本発明の第２実施形態及び第４実施形態においては、連続する４つの番地を単位として上位番地のマッチラインのレベル制御を行う場合について説明したが、上位番地のマッチラインのレベル制御を行う単位を構成する番地数は、これらに限られるものではなく、たとえば、８個の番地や１６個の番地や３２個の番地などを単位とすることもできる。
【図面の簡単な説明】
【０１４５】
【図１】本発明の第１実施形態の一部分を示す回路図である。
【図２】本発明の第１実施形態が備えるメモリセルアレイの構成を示す回路図である。
【図３】本発明の第１実施形態の検索動作例を説明するためのタイミング図である。
【図４】本発明の第１実施形態の検索動作例を説明するためのタイミング図である。
【図５】本発明の第１実施形態の検索動作例を説明するためのタイミング図である。
【図６】本発明の第２実施形態の一部分を示す回路図である。
【図７】本発明の第２実施形態の一部分を示す回路図である。
【図８】本発明の第３実施形態の一部分を示す回路図である。
【図９】本発明の第３実施形態が備えるメモリセルアレイの構成を示す回路図である。
【図１０】本発明の第３実施形態が備えるグランドライン・ドライバ部の構成を示す回路図である。
【図１１】本発明の第３実施形態の検索動作例を説明するためのタイミング図である。
【図１２】本発明の第３実施形態の検索動作例を説明するためのタイミング図である。
【図１３】本発明の第４実施形態の一部分を示す回路図である。
【図１４】本発明の第４実施形態が備えるメモリセルアレイの構成を示す回路図である。
【図１５】本発明の第４実施形態が備えるグランドライン・ドライバ部の構成を示す回路図である。
【図１６】本発明に使用することができるメモリセルの他の例を示す回路図である。
【図１７】連想メモリの機能をＲＡＭと比較して説明するための図である。
【図１８】連想メモリが備えるメモリセルの一例を示す回路図である。
【図１９】図１８に示すメモリセルに対する検索動作を説明するための回路図である。
【図２０】図１８に示すメモリセルに対する検索動作を説明するための回路図である。
【図２１】図１８に示すメモリセルに対する検索動作を説明するための回路図である。
【図２２】図１８に示すメモリセルに対する検索動作を説明するための回路図である。
【図２３】図１８に示すメモリセルに対する検索時のサーチバス及びマッチラインの電位変化を示す波形図である。
【図２４】実際の連想メモリにおけるメモリセルとマッチラインとの関係を示す回路図である。
【図２５】従来の連想メモリの一例の一部分を示すブロック図である。
【図２６】図２５に示す従来の連想メモリの一部分をより詳しく示す回路図である。
【図２７】図２５に示す従来の連想メモリが備えるメモリセルアレイの部分をより詳しく示す回路図である。
【図２８】図２５に示す従来の連想メモリの検索動作例を説明するための回路図である。
【図２９】図２５に示す従来の連想メモリの検索動作例を説明するためのタイミング図である。
【図３０】図２５に示す従来の連想メモリの検索動作例を説明するためのタイミング図である。
【図３１】図２５に示す従来の連想メモリが有するプライオリティ・マッチ機能を説明するための図である。
【符号の説明】
【０１４６】
１…ＲＡＭ
２…連想メモリ（ＣＡＭ）
３…メモリセル（ＭＣ）
４…フリップフロップ
５、６…インバータ
７〜１２…ＮＭＯＳトランジスタ
１５…マッチライン・センスアンプ（ＭＬＳＡ）
１６…メモリセルアレイ
１７…ワードデコーダ（ＷＤＥＣ）部
１８…ライトアンプ（Ｗ／Ａ）部
１９…センスアンプ（Ｓ／Ａ）部
２０…サーチドライバ（Ｓ／Ｄ）部
２１…マッチライン・センスアンプ（ＭＬＳＡ）部
２２…エンコーダ（ＥＮＣ）
２３…コマンドデコーダ（ＣＯＭＤＥＣ）
２４…サーチドライバ活性化信号生成回路（ＳＢＥＧＥＮ）
２５…ワードドライバ（ＷＤＥＣ）
２６…ライトアンプ（Ｗ／Ａ）
２７…センスアンプ（Ｓ／Ａ）
２８…サーチドライバ（Ｓ／Ｄ）
３１〜３３…メモリセルアレイ
３４…グランドライン・ドライバ部
３５…グランドライン・ドライバ
３６…インバータ
３７…ＮＭＯＳトランジスタ
４０…メモリセルアレイ
４１…グランドライン・ドライバ部
４２…グランドライン・ドライバ
４３…インバータ
４４…ＮＭＯＳトランジスタ
４６…フリップフロップ
４７、４８…インバータ
４９、５０…ＮＭＯＳトランジスタ
５１…フリップフロップ
５２、５３…インバータ
５４〜５９…ＮＭＯＳトランジスタ
【図１】
0005104297.tif 000006
【図２】
0005104297.tif 000007
【図３】
0005104297.tif 000008
【図４】
0005104297.tif 000009
【図５】
0005104297.tif 000010
【図６】
0005104297.tif 000011
【図７】
0005104297.tif 000012
【図８】
0005104297.tif 000013
【図９】
0005104297.tif 000014
【図１０】
0005104297.tif 000015
【図１１】
0005104297.tif 000016
【図１２】
0005104297.tif 000017
【図１３】
0005104297.tif 000018
【図１４】
0005104297.tif 000019
【図１５】
0005104297.tif 000020
【図１６】
0005104297.tif 000021
【図１７】
0005104297.tif 000022
【図１８】
0005104297.tif 000023
【図１９】
0005104297.tif 000024
【図２０】
0005104297.tif 000025
【図２１】
0005104297.tif 000026
【図２２】
0005104297.tif 000027
【図２３】
0005104297.tif 000028
【図２４】
0005104297.tif 000029
【図２５】
0005104297.tif 000030
【図２６】
0005104297.tif 000031
【図２７】
0005104297.tif 000032
【図２８】
0005104297.tif 000033
【図２９】
0005104297.tif 000034
【図３０】
0005104297.tif 000035
【図３１】
0005104297.tif 000036