(57)【要約】【課題】内容参照メモリの検索時の消費電力を低減しかつ検索動作を高速化する。【解決手段】メモリセルアレイ１内のエントリ（ＥＲＹ０−ＥＲＹＮ）の各々において、対応のＣＡＭセル（ＣＣ０−ＣＣＮ）に共通に、定電流を駆動する電流源素子（ＣＳＴ０−ＣＳＴＮ）を設ける。この電流源素子を、制御信号に従って検索動作時、導通状態に設定する。ミス状態のマッチ線の電圧変化速度を、ミス状態のＣＡＭセルの数に係らず一定とする。マッチ線の電圧振幅を低減し、消費電力を低減し、また、検索動作を活性化する。【選択図】図３
2008192218.tif 000002
【特許請求の範囲】
【請求項１】
互いに並列に配置される複数のマッチ線、および
各前記マッチ線に対応して配置され、各々が、複数の内容参照メモリセルを有する複数のエントリを備え、各前記内容参照メモリセルは、データを記憶するデータ記憶部と、検索データと前記データ記憶部の記憶データとに従って対応のマッチ線を選択的に第１の電位レベルへ駆動する検索部とを備え、
各前記エントリに対応してかつ対応のエントリの内容参照メモリセルの検索部に共通に配置され、各々が対応のエントリのメモリセルの検索部と前記第１の電位を供給する第１の電源との間に接続され、導通時、対応のエントリのメモリセルの検索部に対する共通の定電流源として機能する複数の電流源素子、
各前記マッチ線に対応して配置され、各々が対応のマッチ線を少なくともスタンバイ時に第２の電位レベルに設定する複数のプリチャージトランジスタ、および
各前記マッチ線に対応して配置され、各々が対応のマッチ線上の電位に従って検索結果を示す内部データを生成する複数の判定回路を備える、内容参照メモリ。
【請求項２】
各前記プリチャージトランジスタは、常時導通状態に設定される、請求項１記載の内容参照メモリ。
【請求項３】
各前記判定回路は、
対応のマッチ線の電位を基準電圧と比較し、該比較結果を示す信号を生成する比較回路、
前記比較回路の出力する信号をラッチして前記内部データを生成するラッチ回路とを備える、請求項１記載の内容参照メモリ。
【請求項４】
各前記プリチャージトランジスタは、前記ラッチ回路のラッチ状態移行後にワンショット駆動されて対応のマッチ線を前記第２の電位レベルに駆動する、請求項３記載の内容参照メモリ。
【請求項５】
前記定電流源素子は、前記ラッチ回路のラッチ状態移行後に非導通状態に設定される、請求項３記載の内容参照メモリ。
【請求項６】
前記検索データを前記複数のエントリに転送する複数ビット幅の検索データ線をさらに備え、各検索データ線は、各エントリの同一位置の内容参照メモリセルの検索部に対して検索データを転送し、各検索データ線はスタティックに駆動される、請求項１記載の内容参照メモリ。
【請求項７】
行列状に配列され、各々が、データを記憶するデータ記憶部と、前記データ記憶部の記憶するデータと検索データとに従って選択的に導通する検索部とを有する複数の内容参照メモリセルを備え、前記複数の内容参照メモリセルは、行ごとにエントリに分割され、
各前記エントリに対応して配置され、検索時、対応の内容参照メモリセルの検索部により選択的に第１の電圧レベルに向かって駆動される複数のマッチ線、
各前記エントリに対応してかつ対応のエントリのメモリセルの検索部に共通に結合され、対応の検索部と前記第１の電位を供給する第１の電源との間に接続され、導通時、対応のエントリを介して対応のマッチ線を一定の電流で駆動する複数の電流源素子、
各前記マッチ線に対応して配置され、対応のマッチ線を少なくともスタンバイ時に第２の電圧レベルに設定する複数のプリチャージトランジスタ、
各前記メモリセル列に対応して配置され、各々が対応の列のメモリセルに前記検索データを転送する複数の検索データ線、
各前記マッチ線に対応して配置され、各々が、対応のマッチ線の電圧レベルに従って検索結果を示す内部データを生成する判定回路、および
検索時、前記電流源素子を導通状態に設定するとともに、前記判定回路の内部データ生成動作を活性化する検索制御回路を備える、内容参照メモリ。
【請求項８】
各前記判定回路は、
対応のマッチ線の電位を、基準電圧と比較し、該比較結果を示す信号を生成する比較回路と、前記検索制御回路の出力信号に従って選択的に導通し、前記比較回路の出力する信号をラッチして前記内部データを生成するラッチ回路とを備える、請求項７記載の内容参照メモリ。
【請求項９】
前記検索制御回路は、前記ラッチ回路によるラッチ動作完了後、前記プリチャージトランジスタをワンショット駆動して、各前記マッチ線を前記第２の電圧レベルにプリチャージさせる、請求項８記載の内容参照メモリ。
【請求項１０】
前記検索線に対して設けられ、外部からの検索データに従って前記検索線に検索データを伝達する検索線駆動回路をさらに備え、前記検索線制御回路は、外部からの検索データに従ってスタティックに各前記検索線を駆動する、請求項７記載の内容参照メモリ。
【請求項１１】
各前記プリチャージトランジスタは、常時導通状態に維持される、請求項７記載の内容参照メモリ。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、内容参照メモリに関し、特に、検索動作時における消費電流およびピーク電流を低減しかつ検索動作を高速化するための構成に関する。
【背景技術】
【０００２】
内容参照メモリ（ＣＡＭ：Content Addressable Memory）は、データの読出／書込機能に加えて、記憶データと与えられた検索データとの一致判定を行なう機能を有する。検索データワードを格納する１エントリが、複数のＣＡＭセルで構成され、これらのＣＡＭセルに、検索候補のワードビットが格納される。各エントリには、対応のＣＡＭセルが並列に結合されるマッチ線が設けられる。検索データワードとエントリの格納データワードとが一致した場合には、対応のマッチ線が“１”の状態に維持され、不一致のときには対応のマッチ線が“０”の状態に駆動される。
【０００３】
このマッチ線の電圧レベルを識別することにより、検索データに対応するデータがエントリに格納されているかの判定を行なうことができる。ＣＡＭを例えばテーブルとして利用することにより、検索データがテーブルに格納されているかの判定およびテーブルの対応の内容の読出を高速で行なうことができる。
【０００４】
このような内容参照メモリは、たとえば、通信用途のルータおよびキャッシュメモリにおけるキャッシュミス／ヒットの判定などにおいて用いられている。ネットワークルータなどで行なわれるＩＰ（インターネットプロトコル）パケットのルーティングは、ルータ内に設けられる内容参照メモリに格納されているＩＰアドレスと外部から入力されるＩＰアドレスとを照合することにより行なわれる。たとえば、このルータ内の内容参照メモリにおいて一致状態のマッチ線情報に基づいて、次の行き先アドレスを示す値をＩＰパケットに書込んで、対応のポートから送出する。
【０００５】
通常、通信ルータなどにおいて用いられるＣＡＭにおいては、検索データのビット幅が、７２ビットから２８８ビットであり、エントリ数が、約６４Ｋである。
【０００６】
従来のＣＡＭにおいては、マッチ線が、プリチャージ期間に電源電圧ＶＤＤ（または接地電圧ＧＮＤレベル）にプリチャージされる。記憶データと検索データとの一致を検出するサーチ期間に、検索データと各エントリのＣＡＭセルの記憶するデータビットとを比較する。不一致の場合には、ミス状態のＣＡＭセル内のトランジスタにより、対応のマッチ線が、プリチャージ電圧と異なる接地電圧（または電源電圧レベル）へ放電（または充電）される。したがって、１つのエントリにおいて不一致のＣＡＭセルの個数がたとえばｎ個ある場合には、Ｉ＿ｍｉｓｓ×ｎの電流により、１つのマッチ線が放電（または充電）される。ここで、Ｉ＿ｍｉｓｓは、１つのＣＡＭセルが不一致状態のときに駆動する電流である。エントリ内のすべてのＣＡＭセルにおいてデータビットがすべて一致している場合には、このエントリ内の全ＣＡＭセルに放電（または充電）経路が存在しない。従って、一致状態のマッチ線は、プリチャージ電圧（電源電圧ＶＤＤまたは接地電圧ＧＮＤ）レベルに維持される。
【０００７】
ＣＡＭにおいては、検索データは、複数のエントリに並列に与えられ、各エントリにおいて、検索動作が並行して実行される。検索データを伝達するサーチ線および一致結果を示す信号を生成するマッチ線は、各検索動作が行なわれる検索サイクルごとに、所定の電圧レベルにプリチャージされる。一例として、サーチ線は、接地電圧レベルにプリチャージされ、マッチ線は電源電圧レベルにプリチャージされる。このサーチ線には、すべてのエントリのＣＡＭセルが結合される。従って、サーチ線の容量負荷は大きい。また、検索時の一致状態以外の大多数のマッチ線が、各検索サイクルごとに、電源電圧レベルと接地電圧レベルの間で変化する。したがって、サーチ線およびマッチ線の充放電電流が大きく、消費電流／電力が大きくなるという問題が生じる。
【０００８】
この内容参照メモリにおける消費電流を低減し、高速に検索動作を行なうための構成が、非特許文献１（H. Noda, et. al.,“A cost-efficient high-performance dynamic TCAM with pipelined hierarchical searching and shift redundancy architecture”, JSSCC, Vol.40, 2005, pp.245-253.）に示されている。この非特許文献１に示される構成においては、マッチ線が階層構造化される。１エントリに対して複数のローカルマッチ線が設けられる。これらの複数のローカルマッチ線が、共通のグローバルマッチ線に結合される。各ローカルマッチ線において、パイプライン的に検索動作を実行する。たとえば、１４４ビットの検索データが、７２ビットデータに分割される。最初の７２ビットで一致しなかったブロックのローカルマッチ線においては、以後の検索を続行する必要がない。従って、不一致ブロックに対応するエントリにおいては、次の段階でのサーチ線の活性化が行なわれず、ローカルマッチ線の放電は行なわれない。充放電が行なわれるローカルマッチ線の数を低減することができ、消費電力を低減することができる。
【０００９】
また、この非特許文献１においては、サーチデータ格納用に、ＤＲＡＭ型セル構造が用いられ、個々のＤＲＡＭセルにデータビットを格納して３値データを格納する。この３値データを格納するＣＡＭセルは、通常、ＴＣＡＭ（ターナリＣＡＭ：Ternary CAM）セルと呼ばれ、ドントケア状態を格納することができる。
【００１０】
また、検索動作を高速化することを図る構成が、特許文献１(特開平１０−２７４８１号公報）に示されている。この特許文献１に示される構成においては、スタンバイ時においてマッチ線を接地電圧レベルにプリチャージする。検索動作時に、各マッチ線に、検索データと１ビット不一致のときに流れる電流と同程度の大きさの電流を供給する。不一致のエントリのマッチ線の電圧上昇を、基準電圧以下に抑制し、消費電流を低減することを図る。
【００１１】
特許文献２（特開２００４−１９２６９５号公報）は、同様、検索時の消費電流を低減することを図る構成を示している。この特許文献２においては、検索データビットは、相補サーチ線を伝達される。スタンバイ時において相補サーチ線を短絡することによりサーチ線を中間電圧レベルにプリチャージする。マッチ線は、スタンバイ時に接地電圧にプリチャージし、検索動作開始時に容量素子からの充電電荷によりチャージアップする。容量素子とマッチ線との容量分割によりマッチ線の電圧レベルの上限値を電源電圧より低い中間電圧レベルとする。マッチ線の電圧レベルの検出は、バッファ回路により行なわれる。
【００１２】
マッチ線負荷増大時においても高速で検索動作を実行することを図る構成が、特許文献３（特開２００３−１０００８６号公報）において示されている。この特許文献３においては、マッチ線それぞれに対応して、基準電圧発生回路と、差動増幅回路とが設けられる。差動増幅回路により基準電圧とマッチ線電圧との比較を行なうことにより、検索判定動作を高速化することを図る。
【００１３】
特許文献４（特開２００２−３５８７９１号公報）は、検索動作時のプリチャージ電流を低減することを図る構成を示す。この特許文献４においては、ＣＡＭエントリを分割する。分割ＣＡＭエントリのマッチ線のプリチャージ電圧レベルおよび不一致時のマッチ線の駆動電圧レベルを逆に設定する。すなわち、一方において、マッチ線をＨレベルプリチャージかつ不一致時にＬレベル放電に設定し、他方においては、マッチ線をＬレベルプリチャージかつ不一致時にＨレベル充電とする。分割ＣＡＭエントリのマッチ線を短絡することにより、不一致エントリにおいてプリチャージ時に電荷の再配分により中間電圧レベルにまでマッチ線が駆動され、消費電流を低減することを図る。
【００１４】
特許文献５（特開２００２−２４５７８３号公報）も検索動作時の消費電流を低減することを図る構成を示す。この特許文献５に示される構成においては、一致状態のエントリと同一の容量を有するダミーマッチ線を設ける。マッチ線およびダミーマッチ線は接地電圧にプリチャージされ、検索動作時に電流が供給される。ダミーマッチ線の電圧レベルがＨレベルと判定されると、判定タイミング信号を生成し、マッチ線に対する充電を停止する。マッチ線の充電期間を短くすることにより消費電流を低減する。マッチ線の電圧レベルの判定には差動増幅回路が用いられ、参照電圧とマッチ線電圧との比較が行なわれる。
【００１５】
特許文献６（特開２００１−３１９４８１号公報）は、検索動作時の消費電流の低減および検索動作の高速化を図る構成を開示する。この特許文献６に示される構成においては、データ書込／読出用のビット線と検索データ転送用のサーチ線とを別々に設ける。ビット線をＨレベルにプリチャージ、サーチ線をＬレベルにプリチャージする。検索時、検索データに応じて、サーチ線とビット線とを短絡することによりハイレベルのサーチ線を中間電圧レベルに設定し、サーチ線電圧を接地電圧と中間電圧レベルとの間で変化させて、サーチ線電圧振幅を低減する。マッチ線に対しては、中間電圧レベルにプリチャージし、検索動作時にはデカップルトランジスタを介してマッチ線をチャージアップする。このデカップルトランジスタを介してマッチ線とセンスアンプとが結合される。センスアンプの入力ノードのセンスノードの充電が行なわれても、デカップルトランジスタによりマッチ線の電圧上昇は抑制される。不一致時には、マッチ線を介してセンスノードが放電される。マッチ線および／またはサーチ線の電圧振幅を制限することにより、消費電流の低減および検索動作の高速化を図る。
【特許文献１】特開平１０−２７４８１号公報
【特許文献２】特開２００４−１９２６９５号公報
【特許文献３】特開２００３−１０００８６号公報
【特許文献４】特開２００２−３５８７９１号公報
【特許文献５】特開２００２−２４５７８３号公報
【特許文献６】特開２００１−３１９４８１号公報
【非特許文献１】H. Noda, et. al., “A cost-efficient high-performance dynamic TCAM with pipelined hierarchical searching and shift redundancy architecture”, JSSCC, Vol.40, 2005, pp.245-253.
【発明の開示】
【発明が解決しようとする課題】
【００１６】
上述のように、内容参照メモリ（ＣＡＭ、ＴＣＡＭ）においては、各検索サイクルごとに、サーチ線およびマッチ線が充放電され、消費電流が大きい。前述の非特許文献１においては、マッチ線を階層構造とし、複数のローカルマッチ線ブロック毎にパイプライン的に検索動作を行なう。あるパイプラインステージ（ローカルマッチ線ブロック）において不一致のエントリに対しては、以後のサーチ線およびローカルマッチ線の放電を停止し、消費電流を低減することを図る。
【００１７】
この非特許文献１においては、マッチ線について階層構造が用いられているものの、サーチ線は、全エントリに共通に設けられている。したがって、負荷容量の大きなサーチ線については、電源電圧レベルと接地電圧レベルの間で、検索データに応じて充放電が行なわれ、消費電流を低減するうえで、改善の余地がある。
【００１８】
また、多数のサーチ線およびローカルマッチ線においてそれぞれ同時に検索動作が行なわれる。このため、同時動作電流（ピーク電流）が大きく、スイッチングノイズの原因となる問題が生じる。
【００１９】
また、グローバルマッチ線およびローカルマッチ線は、前述の非特許文献１においては、電源電圧レベルと接地電圧レベルの間で充放電される。したがって、一致検出結果を示すローカル／グローバルマッチ線の信号振幅が大きく、消費電流を低減するうえで、また一致結果が確定するまでの時間を低減するうえで限界が生じるという問題が生じる。電源電圧レベルを低下させ、信号振幅を小さくすることは可能である。しかしながら、その場合、トランジスタ素子の動作速度から電源電圧レベルの下限があり、この方式では、高速化に限界がある。
【００２０】
また、特許文献１に示される構成においては、ＣＡＭセルと同様のトランジスタを用いて、検索動作時１ビットミス時の電流を生成してマッチ線に供給する。ゲートに基準電圧を受けるトランジスタを介してマッチ線の充電を行なっており、不一致のマッチ線の電圧上昇を基準電圧以下に抑制する。しかしながら、この特許文献１においては、デカップルトランジスタと並列に充電トランジスタを設けて一致状態のマッチ線を電源電圧レベルにまで駆動している。一致状態のマッチ線の数は少ないものの、消費電流が大きくなるという問題が生じる。特許文献１においては、全マッチ線の電圧振幅を電源電圧よりも小さくする構成については示していない。
【００２１】
特許文献２に示される構成においては、マッチ線が容量素子との容量分割による電荷再配分により、そのプリチャージ電圧レベルが設定される。したがって、マッチ線と容量素子との間の容量値の調整に精度が要求され、正確に所望の中間電圧レベルに一致状態のマッチ線をチャージアップするのが困難となる。また、特許文献２においては、サーチ線のプリチャージを相補サーチ線の短絡により行ない、サーチ線の充放電電流を低減することが行なわれている。しかしながら、この場合においても、サーチ線の容量を低減することは行なわれていない。従って、検索データに応じて中間電圧レベルから電源電圧レベルまでサーチ線を充電するため、エントリ数が増大し、サーチ線の負荷容量が増大した場合、消費電流を低減することができなくなるという問題が生じる。
【００２２】
特許文献３に示される構成においては、マッチ線それぞれに対応して、基準電圧発生回路および差動増幅回路が設けられている。しかしながら、この特許文献３においては、マッチ線が電源電圧レベルにプリチャージされている。従って、マッチ線の電圧振幅が大きく、高速の検索動作および消費電流低減を実現することができなくなるという問題が生じる。
【００２３】
特許文献４に示される構成においては、ＣＡＭエントリを分割し、分割エントリにおいてプリチャージ電圧レベルが異なる。従って、分割エントリ間での動作速度を一致させるのが困難であるという問題が生じる。また、各エントリにおいて、分割エントリの一致／不一致に応じて分割エントリのマッチ線の接続を制御する必要があり、この接続を行なうための回路の占有面積が大きくなるという問題が生じる。さらに、各分割エントリのマッチ線の電圧振幅は電源電圧レベルであり、高速で検索動作を行なうことができなくなるという問題が生じる。また、検索データのビット数が増大し、エントリのＣＡＭセルのビット数が増大した場合、応じてマッチ線の負荷も増大し、中間電圧レベルから電源電圧レベルへのプリチャージの消費電流が増大するという問題が生じる。
【００２４】
特許文献５に示される構成においては、ダミーマッチ線の電圧レベルを検出して、判定タイミングを設定して、マッチ線のプリチャージ期間を調整している。しかしながら、このプリチャージ電流値を制限することは何ら考慮されていない。また、一致状態のマッチ線の充電は停止されておらず、検索動作時の消費電流を低減する上で限度がある。
【００２５】
特許文献６に示される構成においては、サーチ線とビット線との短絡により、サーチ線の電圧振幅を電源電圧よりも小さい中間電圧に設定している。従って、ビット線を電源電圧レベルにまでプリチャージする必要があり、消費電流を低減することができないという問題が生じる。また、デカップルトランジスタを介してマッチ線とバッファ（センスアンプ）とを結合し、一致状態のマッチ線の中間電圧レベルへのチャージアップおよびセンスノードの電源電圧レベルへのプルアップを行なっている。従って、センスノードの放電速度が、検索データ１ビットが不一致のときには遅くなり、高速で検索動作を行なうことができなくなるという問題が生じる。この特許文献６は、別の実施例においては、容量素子の充電電荷の再配分により一致状態のマッチ線の電圧レベルを設定している。従って、先の特許文献２の構成と同様、容量素子とマッチ線の負荷容量の調整が困難となるという問題が生じる。
【００２６】
また、１ビットミス時においてマッチ線を流れる電流量が最も少なくなる。この場合、検索動作の高速化のために、ＣＡＭセルの駆動電流量を大きくすることが考えられる。しかしながら、あるエントリにおいてミス状態のＣＡＭセルの数に応じて駆動電流が大きくなり、マッチ線の電圧振幅が大きくなり、プリチャージ時の消費電流が増大するという問題が生じる。
【００２７】
それゆえ、この発明の目的は、検索データのビット数が大きい場合においても、消費電流をより低減することができかつ高速に検索動作を行なうことのできる内容参照メモリを提供することである。
【課題を解決するための手段】
【００２８】
この発明に係る内容参照メモリは、要約すれば、各ＣＡＭセルエントリに対応して電流源トランジスタ（素子）を設ける。この電流源素子（トランジスタ）は、対応のエントリのＣＡＭセルに共通に結合され、検索動作時に定電流源として機能する。
【発明の効果】
【００２９】
この発明においては、不一致状態のマッチ線は、定電流源素子（トランジスタ）を介して、一定電流により放電（または充電）される。したがって、検索データとエントリ内の記憶データの一致ビット数に係らず、常に、同じ速度でマッチ線が充電または放電される。これにより、最悪ケースを想定して、検索結果判定タイミングを設定する必要がなく、早いタイミングで検索結果を判定することができ、検索動作が高速化される。
【００３０】
また、スタンバイ時においては、単にこの電流源素子（トランジスタ）を非導通状態に設定することにより、エントリにおける電流が流れる経路を遮断することができる。したがって、サーチ線をプリチャージ状態に設定する必要がなく、充放電電流が低減され、応じて消費電流が低減される。
【００３１】
また、検索動作時、不一致状態のマッチ線は、一定の速度で充電または放電される。したがって、そのマッチ線の電圧振幅を小さくして、判定動作を行なうことができ、マッチ線の充電または放電電流を低減することができ、応じて消費電流を低減することができる。また、マッチ線をフルスイングする前に、検索結果判定を行なうことができ、検索動作サイクルを短縮することができる。
【発明を実施するための最良の形態】
【００３２】
［実施の形態１］
図１は、この発明の実施の形態１に従う内容参照メモリの全体の構成を概略的に示す図である。図１において、内容参照メモリは、メモリセル（ＣＡＭセル）ＣＣが行列状に配列されるメモリセルアレイ１を含む。メモリセルアレイ１は、複数のエントリＥＲＹに分割される。エントリＥＲＹ各々に対しては、対応のエントリ内のＣＡＭセルＣＣが並列に結合されるマッチ線ＭＬが設けられる。また、エントリＥＲＹ各々において、ＣＡＭセルＣＣの充電または放電電流量を一定とするための定電流源素子ＣＳＴが設けられる。
【００３３】
メモリセルアレイ１の各エントリＥＲＹに共通に、検索データを伝達するサーチ線対ＳＬＰが設けられる。サーチ線対ＳＬＰは、メモリセルアレイ１のメモリセル列それぞれに対応して配置され、各エントリ内の対応の列のメモリセル（ＣＡＭセル）が共通に対応のサーチ線対ＳＬＰに結合される。
【００３４】
ＣＡＭセルＣＣは、その構成は後に説明するが、検索候補データの書込、読出および記憶機能ならびに検索機能を有する。
【００３５】
内容参照メモリは、さらに、検索データＳＤとメモリセルアレイ１における記憶データとの一致／不一致の判定を行なう一致判定回路２を含む。一致判定回路２は、マッチ線ＭＬにそれぞれ対応して設けられるマッチアンプ１０を含む。マッチアンプ１０は、検索動作時対応のマッチ線ＭＬの電圧レベルに従って検索結果を示す内部データを生成する。
【００３６】
内容参照メモリは、さらに、定電流源素子ＣＳＴの検索時の導通／非導通を制御するとともに一致判定回路２の判定動作を制御する制御回路６と、一致判定回路２に含まれるマッチアンプ１０に基準電圧を供給する基準電圧発生回路８とを含む。マッチアンプ１０は、基準電圧に従って対応のマッチ線の電圧レベルを検出し、その検出結果に従って一致/不一致を判定する。
【００３７】
制御回路６は、クロック信号ＣＬＫに同期して動作し、与えられたコマンドＣＭＤに従って、検索動作が指定されたとき、検索動作に必要な動作の制御を行なう。制御回路６は、また、検索データ入力回路４を、検索動作時、活性化する。
【００３８】
検索データ入力回路４は、与えられた検索データＳＤに従ってスタティックに、検索データ線対ＳＬＰを駆動する。検索データＳＤは、多ビットワードであり、この検索データワードの各ビットは、それぞれ、対応する検索データ線対ＳＬＰに伝達される。
【００３９】
図１に示すように、エントリＥＲＹ各々に対して、定電流を駆動する定電流源素子ＣＳＴを設ける。これにより、エントリＥＲＹにおいて、ＣＡＭセルＣＣが対応のマッチ線ＭＬを不一致時に駆動する場合、その導通状態となるＣＡＭセルの数にかかわらず、一定の速度で、マッチ線ＭＬを駆動する。
【００４０】
一致判定回路２においては、マッチアンプ１０の活性化タイミング（検索結果判定タイミング）を設定するにあたって、最悪ケース（１つのＣＡＭセルのみにより、対応のマッチ線ＭＬが駆動される状態）を考慮する必要がなく、早いタイミングで、一致判定タイミングを設定することができる。これにより、検索動作を高速化することができる。
【００４１】
なお、図１においては、図面を簡略化するために、検索データをＣＡＭセルＣＣに書込また読出すための書込/読出回路は示していない。
【００４２】
図２は、図１に示すメモリセルアレイ１に配列されるＣＡＭセルＣＣの構成の一例を示す図である。図２において、ＣＡＭセルＣＣは、検索候補データを格納するデータ記憶部１２と、この検索候補データと検索データＳＬ、ＳＬ＿Ｎとを比較し、その比較結果に従ってマッチ線ＭＬを駆動する検索部１４を含む。
【００４３】
データ記憶部１２は、２つのメモリセル（ＸセルおよびＹセル）を含む。これらのＸセルおよびＹセルは、ＳＲＡＭセル（スタティック・ランダム・アクセス・メモリセル）の構成を有する。ＸセルおよびＹセル両者は、同一構造を有するため、図２においては、ＸセルおよびＹセルにおいて対応する部分には同一の参照符号を付す。
【００４４】
ＸセルおよびＹセルの各々は、データを保持するラッチ回路を構成する反並列に接続されるインバータＩＶ１およびＩＶ２と、導通時、記憶ノードＮＤ１およびＮＤ２を、それぞれビット線／ＢＬＬおよびＢＬＬに結合するアクセストランジスタＴＲ１およびＴＲ２を含む。
【００４５】
ＸセルのアクセストランジスタＴＲ１およびＴＲ２は、ワード線駆動信号ＷＬ＿Ｘに従って導通状態となる。ＹセルのアクセストランジスタＴＲ１およびＴＲ２は、ワード線駆動信号ＷＬ＿Ｙに従って導通状態となる。これらのワード線駆動信号ＷＬ＿ＸおよびＷＬ＿Ｙは、ＣＡＭセルＣＣのデータの書込時および読出時において図示しない行駆動回路により生成される。
【００４６】
ビット線ＢＬＬおよび／ＢＬＬには、図示しない書込回路により、相補なデータＢＬおよびＢＬ＿Ｎが伝達される。したがって、ＸセルおよびＹセル各々において、記憶ノードＮＤ１およびＮＤ２には、相補データが格納される。ＸセルおよびＹセル各々に格納するデータは、検索候補データに応じて設定される。ＣＡＭセルＣＣにおいて、２つのメモリセルを利用することにより３値データを格納することができる。
【００４７】
検索部１４は、Ｘセルに対して設けられるＭＯＳトランジスタ（絶縁ゲート型電界効果型トランジスタ）ＴＱ１およびＴＱ２と、Ｙセルに対応して設けられるＭＯＳトランジスタＴＱ３およびＴＱ４を含む。ＭＯＳトランジスタＴＱ１およびＴＱ２は、マッチ線ＭＬと接地ノードの間に直列に接続される。ＭＯＳトランジスタＴＱ１は、そのゲートが、Ｘセルの記憶ノードＮＤ２に結合される。ＭＯＳトランジスタＴＱ２は、検索候補データビットＳＬをゲートに受ける。ＭＯＳトランジスタＴＱ３は、そのゲートが、Ｙセルの記憶ノードＮＤ２に結合される。ＭＯＳトランジスタＴＱ４は、そのゲートに、検索データの反転ビットＳＬ＿Ｎを受ける。
【００４８】
ＸセルおよびＹセルは、ワード線駆動信号ＷＬ＿ＸおよびＷＬ＿Ｙに従って、その記憶データを個々に設定することができる。このＣＡＭセルＣＣは、以下に説明するように、３値状態を実現する。
【００４９】
（ｉ）  Ｘセルの記憶ノードＮＤ２がＨレベル（論理ハイレベル）、Ｙセルの記憶ノードＮＤ２がＬレベル（論理ローレベル）のとき：
この場合、検索データビット（以下、単に検索データと称す）ＳＬがＨレベルであれば、ＭＯＳトランジスタＴＱ１およびＴＱ２がともに導通し、マッチ線ＭＬが放電される。Ｘセルには、検索候補データの反転データが格納される。したがって、この状態においては、ミス状態である。一方、検索データＳＬがＬレベルであれば、ＭＯＳトランジスタＴＱ２がオフ状態であり、また、ＭＯＳトランジスタＴＱ３もオフ状態である。したがって、この状態においては、マッチ線ＭＬは放電されず、プリチャージ電圧レベルに維持される。この状態は、検索データと記憶データとが一致しているヒット状態である。
【００５０】
（ii）  Ｘセルの記憶ノードＮＤ１がＬレベル、Ｙセルの記憶ノードＮＤ２がＨレベルのとき：
この場合、検索データＳＬがＨレベルであれば、補の検索データＳＬ＿ＮがＨレベルである。したがって、ＭＯＳトランジスタＴＱ３およびＴＱ４がともに導通し、マッチ線ＭＬが放電される。検索データＳＬ＿Ｎが補の検索データである。したがって、この状態はミス状態である。一方、検索データＳＬがＨレベルであれば、補の検索データＳＬ＿ＮがＬレベルである。したがって、ＭＯＳトランジスタＴＱ４が非導通状態となり、また、ＭＯＳトランジスタＴＱ１が非導通状態である。したがって、マッチ線ＭＬはプリチャージ電圧状態に維持される。したがって、この状態は、ヒット状態である。
【００５１】
（iii）  ＸセルおよびＹセルの記憶ノードＮＤ２がともにＬレベルのとき：
この状態においては、ＭＯＳトランジスタＴＱ１およびＴＱ３はともに非導通状態である。したがって、マッチ線ＭＬは検索データＳＬの論理値に係らず、プリチャージ電圧レベルに維持される。したがって、この状態により、検索データＳＬに対し「ドントケア状態（Ｘ状態）」を実現することができる。
【００５２】
（iv）  ＸセルおよびＹセルの記憶ノードＮＤ２がともにＨレベルのとき：
この状態においては、検索データＳＬの論理値に従って、ＭＯＳトランジスタＴＱ１およびＴＱ２の経路およびＭＯＳトランジスタＴＱ３およびＴＱ４の経路の一方が、導通し、マッチ線ＭＬが放電される。したがって、検索データに係らず、常にミス状態が指定されるため、この状態は、通常、禁止状態とされる。
【００５３】
上述のように、このＣＡＭセルＣＣは、状態（ｉ）のＨデータ記憶、状態（ｉｉ）のＬデータ記憶、および状態（ｉｉｉ）のドントケア状態を含む３値データを記憶することができる。しかしながら、ＣＡＭセルＣＣとしては、２値データを記憶するＣＡＭセルであってもよい。２値データを記憶するＣＡＭセルとしては、データ記憶部が１つのＳＲＡＭセルで構成されても良い。１つのＳＲＡＭセルの相補な記憶ノードが、検索部のトランジスタＴＱ１およびＴＱ３のそれぞれのゲートに結合される。
【００５４】
図３は、図１に示すメモリアレイ１および一致判定回路２の構成を示す図である。図３において、メモリセルアレイ１において、エントリＥＲＹ０−ＥＲＹＮが設けられる。エントリＥＲＹ０−ＥＲＹＮの各々は、行方向（マッチ線延在方向）に整列して配置されるＣＡＭセルＣＣ０−ＣＣＮを含む。これらのＣＡＭセルＣＣ０−ＣＣＮは、同一構成を維持し、ＳＲＡＭセルＳＭＣと、ＭＯＳトランジスタＴＱ１−ＴＱ４を含む。ＳＲＡＭセルＳＭＣは、図２に示すＸセルおよびＹセルを含み、３値データを記憶する。しかしながら、このＳＲＡＭセルＳＭＣは、１つのＳＲＡＭセルで構成され、２値データを記憶する構成であってもよい。
【００５５】
エントリＥＲＹ０−ＥＲＹＮにそれぞれ対応して、マッチ線ＭＬ０−ＭＬＮが設けられる。エントリＥＲＹ０−ＥＲＹＮの列方向に整列するＣＡＭセルに対し、サーチ線ＳＬ［０］,／ＳＬ［０］−ＳＬ［Ｎ］，／ＳＬ［Ｎ］が設けられる。サーチ線ＳＬ［０］，／ＳＬ［０］は,エントリＥＲＹ０−ＥＲＹＮのＣＡＭセルＣＣ０のＭＯＳトランジスタＴＱ２およびＴＱ４のゲートに接続される。サーチ線ＳＬ［Ｎ］，／ＳＬ［Ｎ］は、エントリＥＲＹ０−ＥＲＹＮのＣＡＭセルＣＣＮのＭＯＳトランジスタＴＱ４，ＴＱ２それぞれのゲートに接続される。
【００５６】
ＳＲＡＭセルＳＭＣの記憶ノードが、それぞれＭＯＳトランジスタＴＱ１およびＴＱ３に結合される。
【００５７】
このエントリＥＲＹ０−ＥＲＹＮそれぞれに対して、導通時定電流源として機能する電流源素子（トランジスタ）ＣＳＴ０−ＣＳＴＮが設けられる。定電流源素子ＣＳＴ０−ＣＳＴＮが、それぞれ、対応のエントリＥＲＹ０−ＥＲＹＮの検索部のＭＯＳトランジスタＴＱ２，ＴＱ４のソースノードと接地ノードの間に接続され、そのゲートに共通に、サーチ制御信号ＳＳＬが結合される。
【００５８】
この定電流源素子ＣＳＴ0−ＣＳＴＮは、各々、定電流ＩＭＩＳＳを導通時駆動する。定電流ＩＭＩＳＳは、１ビットのＣＡＭセルがミス時に駆動する電流Ｉｍｉｓｓと同程度の大きさの電流である（ＩＭＩＳＳ≒Ｉｍｉｓｓ）。この電流ＩＭＩＳＳは、１ビットミス電流Ｉｍｉｓｓよりも小さくても良い。対応のエントリＥＲＹｉにおいてミス状態のＣＡＭセルの数に係らず、一定の大きさの電流ＩＭＩＳＳで、ミス状態のマッチ線が放電される。
【００５９】
マッチ線ＭＬ０−ＭＬＮに対してそれぞれ設けられるマッチアンプ１０は、同一構成を有する。図３においては、このマッチアンプ１０のエントリＥＲＹ０−ＥＲＹＮそれぞれに対して設けられるマッチアンプ１０において対応する部分には同一参照番号を付す。
【００６０】
マッチアンプ１０は、対応のマッチ線ＭＬｉ（ｉ＝０−Ｎ）の信号ＭＬＡ［ｉ］の電圧レベルと基準電圧Ｖｒｅｆとを比較する比較回路２０と、比較回路２０の出力信号を、ラッチ指示信号ＭＡＬＡＴおよびＺＭＡＬＡＴに従って取込みラッチするラッチ回路２２と、対応のマッチ線ＭＬＩを電源電圧ＶＣＣレベルにプリチャージするプリチャージトランジスタ２４を含む。
【００６１】
比較回路２０は、その正入力に、対応のマッチ線ＭＬｉ上の信号ＭＬＡ［ｉ］を受け、負入力に基準電圧Ｖｒｅｆを受ける。この比較回路は、例えば、カレントミラー型差動増幅回路で構成され、対応のマッチ線ＭＬｉ上の信号ＭＬＡ［ｉ］の電圧レベルが基準電圧よりも高いときにハイレベルの信号を出力する。
【００６２】
ラッチ回路２２は、相補ラッチ指示信号ＭＡＬＡＴおよびＺＭＡＬＡＴに従って選択的に活性化されるトライステートインバータ３０および３４と、トライステートインバータ３０の出力信号をラッチするインバータ３２と、インバータ３２の出力信号に従って判定結果を示す内部データＭＬＡ＿Ｄ［ｉ］を生成するバッファ３６を含む。
【００６３】
トライステートインバータ３０は、ラッチ指示信号ＭＡＬＡＴがＨレベルのときに活性化されてインバータとして動作して比較回路２０の出力信号を反転し、ラッチ指示信号ＭＡＬＡＴがＬレベルのときに出力ハイインピーダンス状態となる。
【００６４】
インバータ３２は、トライステートインバータ３０の出力信号を反転してバッファ３６の入力に伝達する。トライステートインバータ３４は、ラッチ指示信号ＭＡＬＡＴおよびＺＭＡＬＡＴに従ってトライステートインバータ３０と相補的に活性化されて、インバータ３２の出力信号を反転してインバータ３２の入力に伝達する。従って、トライステートインバータ３０が出力ハイインピーダンス状態のときに、トライステートインバータ３４がインバータとして動作し、インバータ３２とでインバータラッチを構成する。トライステートバッファ３０がインバータとして動作するとき、トライステートインバータ３４が、出力ハイインピーダンス状態となり、ラッチ回路２２がスルー状態となり、比較回路２０の出力信号に従って高速で内部データＭＬＡ＿Ｄ［ｉ］を変化させる。
【００６５】
図４は、図３に示すメモリセルアレイ１および一致判定回路２の動作を示す信号波形図である。以下、図４を参照して、図３に示すメモリセルアレイ１および一致判定回路２における検索動作について説明する。
【００６６】
スタンバイ時において、プリチャージ指示信号ＺＰＲＥＡはＨレベルであり、マッチアンプ１０においては、プリチャージトランジスタ２４は非導通状態にある。また、制御信号線ＳＳＬ上のサーチ指示信号はＬレベルである。応じて、エントリＥＲＹ０−ＥＲＹＮそれぞれに対して設けられる定電流源素子ＣＳＴ０−ＣＳＴＮは、すべて非導通状態にある。したがって、サーチ線ＳＬ，／ＳＬ（ＳＬ［０］，／ＳＬ［０］−ＳＬ［Ｎ］，／ＳＬ［Ｎ］）において、先のサイクルにおいて、検索データに従ってその電圧レベルが電源電圧および接地電圧レベルに維持されていても、エントリＥＲＹ０−ＥＲＹＮ各々において、ＣＡＭセルＣＣ０−ＣＣＮの電流の放電経路は遮断されており、スタンバイ電流は流れず、電流消費は生じない。
【００６７】
新たに与えられた検索データに従って、サーチ線ＳＬ，／ＳＬ（ＳＬ［０］，／ＳＬ［０］−ＳＬ［Ｎ］，／ＳＬ［Ｎ］）の電圧レベルが変化する。この検索データの変化に同期して、制御信号線ＳＳＬがＨレベルへ駆動される。応じて、定電流源素子ＣＳＴ０−ＣＳＴＮが導通し、エントリＥＲＹ０−ＥＲＹＮ各々において、ＣＡＭセルＣＣ０−ＣＣＮに対する電流の放電経路が形成される。
【００６８】
エントリＥＲＹ０−ＥＲＹＮにおいて、検索データと記憶データとに従って比較／検索動作が行なわれ、マッチ線ＭＬ０−ＭＬＮ上の信号ＭＬＡ（ＭＬＡ［０］−ＭＬＡ［Ｎ］）の電圧レベルが変化する。定電流源素子ＣＳＴ０−ＣＳＴＮの駆動電流量は、１ビットミス電流Ｉｍｉｓｓと同程度の大きさの電流ＩＭＩＳＳである。したがって、エントリＥＲＹ０−ＥＲＹＮ各々において、ミス状態のＣＡＭセルの数に係らず、マッチ線ＭＬ０−ＭＬＮは、一定の速度で放電される（ミス時の場合）。一致状態のマッチ線は、放電経路が遮断されるため、先のサイクルのプリチャージ電圧レベルに維持される。
【００６９】
マッチ線ＭＬ０−ＭＬＮのミス状態時の電圧レベルの変化速度は、すべて同じである。したがって、比較回路２０の出力信号の確定タイミングも、エントリＥＲＹ０−ＥＲＹＮそれぞれに対して同じとなる。マッチアンプ１０に対して、ラッチ指示信号ＭＡＬＡＴを活性化すると、ラッチ回路２２がスルー状態となり、比較回路２０の出力信号に従って内部データＭＬＡ＿Ｄの電圧レベルが変化する。ラッチ指示信号ＭＡＬＡＴがＬレベルに駆動されるとラッチ回路２２が、ラッチ状態となり、出力データＭＬＡ＿Ｄの電圧レベルが保持される。
【００７０】
すなわち、ラッチ指示信号ＭＡＬＡＴがＨレベルに駆動されると、トライステートインバータ３０が活性化されて、比較回路２０の出力信号を反転する。ラッチ指示信号ＭＡＬＡＴが非活性状態となると、トライステートインバータ３０が出力ハイインピーダンス状態となり、インバータ３２およびトライステートインバータ３４により、トライステートインバータ３４の出力信号がラッチされる。応じて、このラッチ信号に従って検索結果を示す内部データＭＬＡ＿Ｄ（ＭＬＡ＿Ｄ［０］−ＭＬＡ＿Ｄ［Ｎ］）が生成される。
【００７１】
比較回路２０は、前述のように、たとえばカレントミラー型の差動増幅回路で構成される。この構成の場合、比較回路２０における差動段が、ＭＯＳトランジスタで構成され、マッチ線ＭＬ０−ＭＬＮはそれぞれ比較回路２０の差動段のＭＯＳトランジスタのゲートに接続される。比較回路３０の増幅動作は、対応のマッチ線の電圧レベルに対しては影響を及ぼさない。対応のマッチ線上の信号ＭＬＡの電圧レベルと基準電圧との差により比較回路３０の出力信号が確定する。ラッチ回路２２により、比較回路２０の出力信号の取込みおよびラッチを行なった時点で、ラッチ状態においてラッチ回路２２の出力部とマッチ線ＭＬ０−ＭＬＮとは分離されるため、検索／判定動作を停止させることができる。したがって、マッチ線ＭＬ０−ＭＬＮ上の信号ＭＬＡ（ＭＬＡ［０］−ＭＬＡ［Ｎ］）が、フルスイングする前に、この検索／判定動作を停止させることができる。
【００７２】
マッチ線ＭＬの電圧振幅が小さくても、比較回路２０により、基準電圧との差に応じて正確に判定結果信号ＭＬＡの電圧レベルを判定することができる。応じて、検索／判定動作時の消費電力を低減することができる。すなわち、ラッチ指示信号ＭＡＬＡＴが活性化されると、続いて、サーチ制御信号線ＳＳＬ上の信号を非活性状態に駆動し、定電流源素子ＣＳＴ０−ＣＳＴＮを非導通状態に設定する。これにより、エントリＥＲＹ０−ＥＲＹＮにおいて、放電経路がすべて遮断され、エントリＥＲＹ０−ＥＲＹＮにおける貫通電流を少なくすることができる。
【００７３】
この場合、また、サーチ信号線ＳＳＬを駆動することが要求されるだけであり、エントリにおける貫通電流停止のために必要とされる信号線を１本とでき、貫通電流停止のための消費電流を低減することができる。また、サーチ線ＳＬ、／ＳＬの電圧レベルは、対応のエントリのＣＡＭセルの放電に影響を及ぼさないため、サーチ線を検索データに応じた電圧レベルに維持しても何ら問題は生じない。サーチ線をプリチャージすることなく、検索データに応じてスタティックに駆動することにより、サーチ線のプリチャージが不要となり、消費電流を低減することができる。
【００７４】
このラッチ回路２２によるラッチ状態への移行に応答して、プリチャージ指示信号ＺＰＲＥＡをワンショット形態で活性化する。応じて、マッチ線ＭＬ０−ＭＬＮが電源電圧ＶＣＣレベルにプリチャージされる。このプリチャージトランジスタ２４によるプリチャージ期間は、プリチャージ指示信号ＺＰＲＥＡの活性化期間であり、短い期間である。マッチ線ＭＬ０−ＭＬＮの電圧振幅は小さいため、高速で、不一致状態（ミス状態）のマッチ線ＭＬを電源電圧ＶＣＣレベルに駆動することができる。したがって、このプリチャージにおける消費電流も、マッチ線の電圧振幅を小さくすることにより低減することができる。
【００７５】
また、エントリＥＲＹ０−ＥＲＹＮにおいて、検索／判定結果の確定タイミングは同じである（定電流源素子ＣＳＴ０−ＣＳＴＮにより、一定速度で、マッチ線ＭＬ０−ＭＬＮが駆動されるため）。したがって、最悪ケースを想定して、検索／判定結果を示す内部データを生成する必要がなく、早いタイミングで、検索／判定結果を示す内部データＭＬＡ＿Ｄを生成することができる。これにより、マッチ線ＭＬ０−ＭＬＮの信号ＭＬＡがフルスイングする前に、検索／判定結果を示す内部データを生成することができ、検索動作を高速化することができる。１ビットＣＡＭセルの検索部のトランジスタ（ＴＱ１−ＴＱ４）の電流駆動力（ゲート幅）をレイアウト上許容することができる程度に大きくすることにより、１ビットミス時においても高速でマッチ線を駆動することができる。あるエントリにおいて全ビットミス状態となっても、マッチ線を流れる電流量は１ビットミス時と同じであり、マッチ線電圧変化速度をミス状態のＣＡＭセルのビット数に係らず同じとすることができる。応じて、比較回路２０の出力信号の確定タイミングも同じに設定することができ、マッチアンプの動作条件を全エントリに対して同じに設定することができ、安定にかつ正確に検索／判定を行なうことができる。
【００７６】
図５は、図１に示す制御回路６の構成を概略的に示す図である。図５において、制御回路６は、外部からのコマンドＣＭＤに従って検索動作指示ＥＮを生成するコマンドデコーダ４０と、各々検索指示ＥＮに従って活性化されるサーチ線ドライブ活性化回路４２および定電流源活性化回路４４を含む。
【００７７】
コマンドデコーダ４０は、クロック信号ＣＬＫに従って外部からのコマンドＣＭＤを取り込んでデコードし、コマンドＣＭＤが検索動作を指示するときには、検索動作指示ＥＮを活性化する。
【００７８】
サーチ線ドライブ活性化回路４２は、検索動作指示ＥＮが活性化されると、検索データ入力回路４を活性化する制御信号（検索動作活性化信号）ＳＬＥＮを活性化する。この検索動作活性化信号ＳＬＥＮの活性化に従って、検索データ入力回路４は、外部からの検索データＳＥを取込み、検索データ線ＳＬ，／ＳＬを駆動する。この検索データ入力回路４は、スタティックに動作しており、内部の検索データ線の所定電圧レベルへのプリチャージは行なわない。したがって、この検索動作活性化信号ＳＬＥＮの非活性化時、検索データ入力回路４は、出力ハイインピーダンス状態に維持される。
【００７９】
定電流源活性化回路４４は、検索動作指示ＥＮが活性化されると、サーチ制御信号線ＳＳＬへ伝達される定電流源制御信号を活性状態へ駆動する。図５においては、サーチ制御信号線と底に伝達される制御信号とを同一の符号ＳＳＬで示す。
【００８０】
制御回路６は、さらに、検索動作指示ＥＮを所定期間遅延する遅延回路４５と、遅延回路４５の出力信号に従ってラッチ指示信号ＭＡＬＡＴおよびＺＭＡＬＡＴを活性化するラッチ活性化回路４６と、マッチ線のプリチャージ動作を制御するプリチャージ活性化回路４８を含む。このラッチ活性化回路４６は、定電流源活性化回路４４により、定電流源制御信号ＳＳＬが活性化されて、ミス状態のマッチ線の電圧と基準電圧との差が充分な大きさとなると、遅延回路４５の出力信号に従って、ラッチ指示信号ＭＡＬＡＴおよびＺＭＡＬＡＴを所定期間活性状態に駆動する。
【００８１】
定電流源活性化回路４４は、ラッチ活性化回路４６がラッチ指示信号ＭＡＬＡＴを非活性化するタイミングで制御信号ＳＳＬを非活性化する。これにより、マッチアンプ１０においてラッチ回路２２がラッチ状態となると、定電流源素子ＣＳＴを非導通状態に設定して検索動作を停止する。
【００８２】
プリチャージ活性化回路４８は、ラッチ活性化回路４６がラッチ指示信号ＭＡＬＡＴを非活性化する（Ｌレベルに駆動する）タイミングに従って、プリチャージ指示信号ＺＰＲＥＡを、所定期間ワンショットの形態で活性化する。
【００８３】
ラッチ活性化回路４６がラッチ指示信号ＭＡＬＡＴおよびＺＭＡＬＡＴを活性化するタイミングは、マッチ線の電圧レベルのスキューを想定する必要がなく、遅延回路４５の遅延時間は短くすることができる。
【００８４】
なお、先の図３に示す構成においては、マッチアンプ１０において、比較回路２０は、常時動作するように示される。しかしながら、この比較回路２０も、検索動作時に、定電流源制御信号ＳＳＬに従って、活性化されるように構成されてもよい。
【００８５】
以上のように、この発明の実施の形態１に従えば、ＣＡＭセルアレイのエントリそれぞれにおいて、エントリ内のＣＡＭセルに共通に定電流源素子を設けている。したがって、エントリにおいてミス状態となるＣＡＭセルの数に係らず、一定の電流でミス状態のマッチ線を駆動することができる。これにより、マッチ線の電位変化速度を、ミス状態のＣＡＭセルの数に係らず一定とすることができ、判定結果生成タイミングを固定することができる。また、マッチ線の電圧と基準電圧との差に従ってマッチ線の電圧レベルを判定しており、マッチ線電圧振幅が小さい状態で検索判定を行なうことができ、検索動作タミングを早くすることができる。
【００８６】
また、マッチ線の電圧振幅を小さくすることが可能となり、消費電流を低減することができる。さらに、単に各エントリに対して設けられる定電流源素子の導通／非導通を制御するだけで、エントリにおける電流経路を遮断することができる。これにより、貫通電流防止のためにサーチ線のプリチャージを行なう必要がなく、各エントリにおける貫通電流制御のための信号線の数を低減できる。これにより、貫通電流停止のための制御回路の消費電流を低減することができる。
【００８７】
なお、上述の実施の形態１においては、マッチ線がＨレベルにプリチャージされ、ミス状態のマッチ線がローレベルに駆動されている。しかしながら、マッチ線がＬレベルにプリチャージされ、ミス状態のマッチ線がＣＡＭセルを介してハイレベルに駆動される構成であっても良い。この構成の場合、各エントリにおいて、ＣＡＭセルに共通に充電用の定電流源素子が設けられる。
【００８８】
［実施の形態２］
図６は、この発明の実施の形態２に従う内容参照メモリの要部の構成を示す図である。この図６に示す内容参照メモリは、以下の点で、図３に示す内容参照メモリとその構成が異なる。すなわち、マッチアンプ１０において、プリチャージトランジスタ５０は、そのゲートが接地ノードに接続され、常時導通状態に維持される。このプリチャージトランジスタ５０の電流駆動力は、マッチ線の電圧振幅に応じて適切な大きさに設定される。プリチャージトランジスタ５０の電流駆動力が、対応の定電流源素子ＣＳＴ０−ＣＳＴＮよりも小さくされる場合、マッチ線の電圧振幅が大きくなる。逆に、プリチャージトランジスタ５０の電流駆動力が、対応の定電流源素子ＣＳＴ０−ＣＳＴＮよりも大きくされると、対応のマッチ線の電圧振幅が小さくなる。この検索動作時のミス状態のマッチ線の電圧振幅は、プリチャージトランジスタ５０および定電流源素子ＣＳＴを線形領域で動作させて、駆動電流が等しくなるマッチ線の電圧レベルを求めることにより近似的に求めることができる。
【００８９】
図７は、図６に示す内容参照メモリの検索時の動作を示す信号波形図である。この図７に示す信号波形図は、図４に示す信号波形図と、プリチャージ指示信号ＺＰＲＥＡが利用されないことを除いて同じである。マッチ線ＭＬの電圧が振るスイングする前に検索判定を行なうことができる。
【００９０】
この図６に示す内容参照メモリの構成においては、図７に示すように、検索動作時、ミス状態のマッチ線ＭＬの電位ＭＬＡは、低下する。この電圧低下速度は、プリチャージトランジスタ５０および対応の定電流源素子ＣＳＴの電流駆動力により決定される。この場合でも、ミス状態のマッチ線の電圧変化速度は、ミス状態のＣＡＭセルのビット数に限らず一定である。
【００９１】
この検索動作時、プリチャージトランジスタ５０は導通状態にあるため、電源ノードから接地ノードへ、貫通電流が流れる。しかしながら、検索期間は、ミス状態のマッチ線の電圧が基準電圧Ｖｒｅｆを越えるまでの期間であり、この期間は、プリチャージトランジスタ５０および定電流源素子ＣＳＴの電流駆動力に応じて決定される。また、ミス状態のマッチ線の電圧振幅も小さく、貫通電流が流れる期間は、十分に短くすることができ、応じて、検索時の貫通電流を低減することができる。
【００９２】
また、貫通電流が流れても、このプリチャージトランジスタ５０および定電流源素子ＣＳＴの電流駆動力に応じてミス状態のマッチ線の電圧を変化させることができ、正確に検索／判定を行なうことができる。なお、貫通電流の大きさは、定電流源素子およびプリチャージトランジスタのうちの電流駆動力の小さい方の素子の電流駆動力により決定される。
【００９３】
判定動作後ラッチ状態となり、定電流源素子ＣＳＴが非導通状態となると、自動的にマッチ線はプリチャージトランジスタ５０によりその電圧レベルがプルアップされる。ヒット状態のマッチ線は、プリチャージ電圧レベルの電源電圧レベルである。このプリチャージ動作時、マッチ線ＭＬ０−ＭＬＮの電圧振幅は小さいため（実施の形態１と同様）、例えプリチャージトランジスタ５０の電流駆動量が小さくされても、確実に、ミス状態のマッチ線を元のプリチャージ電圧レベルに駆動することができる。
【００９４】
図８は、この図６に示す内容参照メモリに対する制御回路６の構成を概略的に示す図である。この図８に示す制御回路６の構成は、図５に示す制御回路と、以下の点でその構成は異なる。すなわち、この発明の実施の形態２に従う内容参照メモリにおいては、制御回路６内においては、プリチャージ活性化回路（４８：図５参照）は設けられない。他の構成は、図５に示す制御回路６の構成と同じであり、対応する部分には同一参照番号を付し、その詳細説明は省略する。
【００９５】
この図８に示すように、制御回路６において、プリチャージ活性化回路を省略することができ、消費電流を低減することができる。また、この制御回路６の占有面積を低減することができる。また配線レイアウトにおいても、プリチャージ活性化信号を伝達する信号線が不要となり、配線レイアウトの空き領域を増加させることができ、応じて配線レイアウトの自由度が増加する。また、プリチャージ活性化信号を駆動する必要がなく、消費電流を低減することができる。
【００９６】
以上のように、この発明の実施の形態２に従えば、マッチアンプにおいて、マッチ線をプリチャージするプリチャージトランジスタを常時導通状態に設定している。したがって、プリチャージトランジスタの導通／非導通を制御する回路部分が不要となり、また制御信号線が不要となり、消費電流を低減でき、また制御回路の占有面積も低減することができる。
【００９７】
また、実施の形態２においても、マッチ線は、電源電圧レベルにプリチャージされ、ミス状態時において接地電圧レベル方向に駆動されている。しかしながら、このマッチ線は、接地電圧レベルにプリチャージされ、ミス時に電源電圧レベル方向に充電される構成が用いられてもよい。
【００９８】
また、この実施の形態２においても、また、マッチアンプ１０において比較回路２０は、検索動作時においてのみ活性化される構成が用いられてもよい。
【産業上の利用可能性】
【００９９】
この発明は、検索データに従って記憶情報に対する検索を行なって記憶情報との一致／不一致を判定する内容参照メモリに対して適用することができる。特に、検索データのビット幅が広いたとえば通信用ルータなどにおいてＩＰアドレスをデコードして転送経路を設定する構成に利用することができる。この通信用ルータに適用した場合、小占有面積でかつ消費電力が低減された高速で検索動作を行なうことのできるルータを実現することができる。また、この発明に従う内容参照メモリは、キャッシュコントローラなどにおけるキャッシュミス／ヒットの判定を行なうための回路構成に利用されてもよい。
【図面の簡単な説明】
【０１００】
【図１】この発明の実施の形態１に従う内容参照メモリの全体の構成を概略的に示す図である。
【図２】図１に示すＣＡＭセルの構成の一例を示す図である。
【図３】この発明の実施の形態１に従う内容参照メモリの要部の構成を示す図である。
【図４】図３に示す内容参照メモリの検索動作を示す信号波形図である。
【図５】図１に示す制御回路の構成を概略的に示す図である。
【図６】この発明の実施の形態２に従う内容参照メモリの要部の構成を示す図である。
【図７】図６に示す内容参照メモリの検索動作を示す信号波形図である。
【図８】この発明の実施の形態２において用いられる制御回路の構成を概略的に示す図である。
【符号の説明】
【０１０１】
１  メモリセルアレイ、２  一致判定回路、６  制御回路、１０  マッチアンプ、ＣＣ  ＣＡＭセル、２０  比較回路、２２  ラッチ回路、２４，５０  プリチャージトランジスタ、ＣＣ０−ＣＣＮ  ＣＡＭセル、ＣＳＴ０−ＣＳＴＮ  定電流源素子。
【図１】
2008192218.tif 000003
【図２】
2008192218.tif 000004
【図３】
2008192218.tif 000005
【図４】
2008192218.tif 000006
【図５】
2008192218.tif 000007
【図６】
2008192218.tif 000008
【図７】
2008192218.tif 000009
【図８】
2008192218.tif 000010