JP2004192695A - 連想メモリ装置 - Google Patents

連想メモリ装置 Download PDF

Info

Publication number
JP2004192695A
JP2004192695A JP2002357701A JP2002357701A JP2004192695A JP 2004192695 A JP2004192695 A JP 2004192695A JP 2002357701 A JP2002357701 A JP 2002357701A JP 2002357701 A JP2002357701 A JP 2002357701A JP 2004192695 A JP2004192695 A JP 2004192695A
Authority
JP
Japan
Prior art keywords
search
bit
word
entry
data
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
JP2002357701A
Other languages
English (en)
Inventor
Yuki Narita
祐樹 成田
Ryuichi Hata
竜一 籏
Naoki Kanazawa
直樹 金沢
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.)
Kawasaki Microelectronics Inc
Original Assignee
Kawasaki Microelectronics Inc
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 Microelectronics Inc filed Critical Kawasaki Microelectronics Inc
Priority to JP2002357701A priority Critical patent/JP2004192695A/ja
Publication of JP2004192695A publication Critical patent/JP2004192695A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Static Random-Access Memory (AREA)

Abstract

【課題】検索動作時の検索ビット線対と一致線における消費電力を削減することができる、ワード連結機能を持つ連想メモリ装置を提供する。
【解決手段】本発明の連想メモリ装置は、検索が行われていないスタンバイ期間中は、検索ビット線対を電源電位とグランド電位との間の中間電位とし、検索期間中は、検索しようとするデータに応じて、検索ビット線対の一方を電源電位、かつ他方をグランド電位にドライブする検索ビット線対のドライブ手段と、検索の開始時に、前記メモリワードに記憶されたデータと検索しようとするデータとの検索結果が出力される一致線を、電源電位とグランド電位との間の中間電位とする一致線の充電手段とのうちの少なくとも一方を備える。
【選択図】図1

Description

【0001】
【発明の属する技術分野】
本発明は、複数のメモリワードを連結して1つのエントリを構成するワード連結機能を持つ連想メモリ装置において、その消費電力を削減するための技術分野に関するものである。
【0002】
【従来の技術】
連想メモリ(Associative Memory)装置は、内容アドレス式メモリ(Content Addressable Memory)装置とも呼ばれているように、あらかじめ連想メモリ(以下、CAMという)装置のそれぞれのメモリワードにデータ(以下、記憶データという)を記憶しておき、検索しようとするデータ(以下、検索データという)と一致する記憶データが記憶されているメモリワードのアドレスを出力することが可能なものである。
【0003】
CAM装置では、基本的に全てのメモリワードで同時に検索が行われる。この時、電力の大部分は、それぞれのメモリセルに対して検索データを供給するための検索ビット線対と、一致検索の結果が出力される一致線で消費される。従って、CAM装置の大容量化に伴い、検索ビット線対と一致線を共に、電源電位とグランド電位との間でフル振幅させると消費電力が非常に大きくなるという問題が発生する。
【0004】
また、本出願人に係わる特許文献1のCAM装置のように、複数のメモリワードを連結して1つのエントリを構成するワード連結機能を持つCAM装置が知られている。特許文献1のCAM装置は、メモリアレイを、エントリを構成する複数のメモリワードの各々に対応した複数のメモリブロックに分割し、検索を行うに際して、検索対象のメモリブロックにおいてのみ、検索ビット線対をドライブするようにしたものである。
【0005】
これにより、特許文献1のCAM装置では、ワード連結を行った場合にその消費電力を大幅に削減することが可能である。しかし、特許文献1のCAM装置においても、検索ビット線対と一致線を共に、電源電位とグランド電位との間でフル振幅させている。このため、ワード連結を行わない場合は、CAM装置の大容量化に伴い、従来のCAM装置の場合と同様に、検索ビット線対および一致線における消費電力が大きくなるという問題が発生する。
【0006】
【特許文献1】
特開2002−197873号公報
【0007】
【発明が解決しようとする課題】
本発明の目的は、前記従来技術に基づく問題点を解消し、検索動作時の検索ビット線対と一致線における消費電力を削減することができる、ワード連結機能を持つ連想メモリ装置を提供することにある。
【0008】
【課題を解決するための手段】
上記目的を達成するために、本発明は、1つのメモリワードもしくは複数のメモリワードを連結して構成される複数のエントリを含むメモリアレイを備え、
前記メモリワードを構成する各々のメモリセルに対して、データのリードライトを行うためのデータビット線対と検索しようとするデータを供給するための検索ビット線対とがそれぞれ独立に配設された連想メモリ装置であって、
検索が行われていないスタンバイ期間中は、前記検索ビット線対を電源電位とグランド電位との間の中間電位とし、検索期間中は、前記検索しようとするデータに応じて、前記検索ビット線対の一方を前記中間電位より高い電位に、かつ他方を前記中間電位より低い電位にドライブする検索ビット線対のドライブ手段と、
検索の開始時に、前記メモリワードに記憶されたデータと検索しようとするデータとの検索結果が出力される一致線を、電源電位とグランド電位との間の中間電位とする一致線の充電手段とのうちの少なくとも一方を備える連想メモリ装置を提供するものである。
【0009】
ここで、前記メモリワードが、検索の対象となるデータを保持する少なくとも1ビットのメモリセルと、前記データビットが検索の対象となる有効なビットか検索の対象とならない無効なビットかを表すフラグを保持する少なくとも1ビットのメモリセルとを含み、
複数の前記メモリワードを連結して前記エントリを構成した場合に、当該エントリの代表となるエントリ代表ワードのエンプティビットが、前記エントリが検索の対象となる有効なものか検索の対象とならない無効なものかを表す上記に記載の連想メモリ装置であって、
前記検索ビット線対のドライブ手段は、前記メモリワードが前記エントリ代表ワードではない場合、エンプティビット用の検索ビット線対をマスク状態とし、
前記メモリワードが前記エントリ代表ワードである場合、スタンバイ期間中は、前記エンプティビット用の検索ビット線対をマスク状態とし、検索期間中は、前記エンプティビット用の検索ビット線対をエンプティビット用の検索データに応じてドライブするのが好ましい。
【0010】
また、前記メモリワードが、検索の対象となるデータを保持する少なくとも1ビットのメモリセルと、前記データビットが検索の対象となる有効なビットか検索の対象とならない無効なビットかを表すフラグを保持する少なくとも1ビットのメモリセルとを含み、
複数の前記メモリワードを連結して前記エントリを構成した場合に、当該エントリの代表となるエントリ代表ワードのエンプティビットが、前記エントリが検索の対象となる有効なものか検索の対象とならない無効なものかを表す上記に記載の連想メモリ装置であって、
前記検索ビット線対のドライブ手段は、前記メモリワードが検索対象である場合、スタンバイ期間中は、データビット用の検索ビット線対を電源電位とグランド電位との間の中間電位とし、検索期間中は、前記データビット用の検索ビット線対をデータビット用の検索データに応じてドライブし、
前記メモリワードが検索対象ではなく、かつ前記エントリ代表ワードである場合、前記データビット用の検索ビット線対をマスク状態とし、前記メモリワードが検索対象ではなく、かつ前記エントリ代表ワードでもない場合、前記データビット用の検索ビット線対を電源電位とグランド電位との間の中間電位とするのが好ましい。
【0011】
また、前記メモリワードが、検索の対象となるデータを保持する少なくとも1ビットのメモリセルと、前記データビットが検索の対象となる有効なビットか検索の対象とならない無効なビットかを表すフラグを保持する少なくとも1ビットのメモリセルとを含み、
複数の前記メモリワードを連結して前記エントリを構成した場合に、当該エントリの代表となるエントリ代表ワードのエンプティビットが、前記エントリが検索の対象となる有効なものか検索の対象とならない無効なものかを表す上記に記載の連想メモリ装置であって、
前記一致線の充電手段は、前記メモリワードが検索対象ではなく、かつ前記エントリ代表ワードでもない場合、前記一致線をグランド電位とし、
前記メモリワードが検索対象であるか、または前記エントリ代表ワードである場合、前記一致線を電源電位とグランド電位との間の中間電位に充電するのが好ましい。
【0012】
【発明の実施の形態】
以下に、添付の図面に示す好適実施形態に基づいて、本発明の連想メモリ装置を詳細に説明する。
【0013】
図1は、本発明の連想メモリ装置の一実施形態の構成概略図である。同図に示すCAM装置10は、1ワードで、もしくは2ワードまたは4ワードを連結(最大4ワードまで連結可能)して1つのエントリを構成するワード連結機能を持つものであり、メモリアレイ12と、エントリ構成設定ブロック14と、論理セグメント−物理セグメント変換回路16と、タイミング発生回路18と、優先順位エンコーダ20とを備えている。
【0014】
CAM装置10において、まず、メモリアレイ12は、それぞれN(N=1,2,3,…)ワードからなる4つ(少なくとも最大連結ワード数分以上)のメモリブロック22を備えている。すなわち、メモリアレイ12全体では4Nワードを備えている。従って、CAM装置10では、1つのエントリが1ワード、2ワードおよび4ワードで構成された場合の総エントリ数は、それぞれ4N個、2N個およびN個となる。
【0015】
メモリアレイ12の各ワードは、それぞれアドレス4n,4n+1,4n+2,4n+3(n=0,1,2,…)で指定される。本実施形態では、アドレス4n(0,4,8,…)で指定されるNワードを含むメモリブロック22を物理セグメント0とし、同様に、アドレス4n+1(1,5,9,…)、4n+2(2,6,10,…)、4n+3(3,7,11,…)で指定されるNワードを含むメモリブロック22をそれぞれ物理セグメント1,2,3とする。
【0016】
各々のメモリブロック22は、Nワード分の1ワード回路24と、検索ビット線ドライバ制御回路25と、検索ビット線ドライバ26と、一致線充電制御回路28とを備えている。
【0017】
メモリブロック22において、まず、各々の1ワード回路24は、それぞれ1ワード分のデータを記憶し、記憶データと検索データとの一致検索を行って、その一致不一致の一致検索結果(一致フラグ)を出力するものであり、一致線充電回路29と、m+1ビットのCAMセルからなるCAMワード30と、このCAMワード30から一致線ML上に出力される検索結果を処理するワードロジック32とを備えている。
【0018】
ここで、CAMワード30のm+1ビットのCAMセルのうちのmビットは、検索対象となる有効なデータが記憶されるビット(データビット)である。また、残りの1ビットは、CAMワード30に記憶されたデータビットが検索対象となる有効なデータなのか、検索対象とはならない無効なデータなのかを示すフラグが記憶されるビット(エンプティビット)である。なお、この1ワード回路24については一例を挙げて後述する。
【0019】
続いて、検索ビット線ドライバ制御回路25は、エントリ構成設定ブロック14から供給されるエントリ代表セグメント信号ES<3:0>、論理セグメント−物理セグメント変換回路16から供給される検索対象物理セグメント指示信号PSS<3:0>、およびタイミング発生回路18から供給される検索動作タイミング信号PHASEに基づいて、検索ビット線ドライバ26の動作を制御するための制御信号を発生する。
【0020】
ここで、エントリ代表セグメント信号ESは、エントリの代表となる物理セグメント(エントリ代表セグメント)のメモリブロック22を指定する信号である。検索対象物理セグメント指示信号PSSは、検索対象の物理セグメントのメモリブロック22を指示する信号である。なお、エントリ代表セグメント信号ESおよび検索対象物理セグメント指示信号の詳細は後述する。また、検索動作タイミング信号PHASEは、検索動作を開始および終了するタイミングを指示する信号である。
【0021】
検索ビット線ドライバ26は、検索ビット線ドライバ制御回路25から供給される制御信号の制御に従い、各々対応する物理セグメントのメモリブロック22の検索ビット線対を同電位のローレベルまたは中間電位とする、あるいはCAM装置10の外部から供給される検索データに基づいて、検索ビット線対のうちの一方を中間電位より高い電位、例えば電源電位とし、他方を中間電位より低い電位、例えばグランド電位にドライブする。
【0022】
CAM装置10では、メモリブロック22毎に検索ビット線ドライバ制御回路25と検索ビット線ドライバ26を設けているので、メモリブロック22毎に検索ビット線対のドライブを制御することができる。従って、複数ワードを連結して1エントリを構成した場合、検索対象の物理セグメントのメモリブロック22の検索ビット線対のみをドライブすることができるため、消費電力を大幅に削減することができる。
【0023】
続いて、一致線充電制御回路28は、エントリ構成設定ブロック14から供給されるエントリ代表セグメント信号ES<3:0>、論理セグメント−物理セグメント変換回路16から供給される検索対象物理セグメント指示信号PSS<3:0>、およびタイミング発生回路18から供給される検索動作タイミング信号PHASEに基づいて、一致線充電回路29の動作を制御するための制御信号を発生する。
【0024】
なお、検索ビット線ドライバ制御回路25、検索ビット線ドライバ26、一致線充電制御回路28についても一例を挙げて後述する。
【0025】
続いて、CAM装置10において、エントリ構成設定ブロック14および論理セグメント−物理セグメント変換回路16は、このように4つの物理セグメント0〜3のメモリブロック22から構成されたメモリアレイ12を論理的に再構成する機能を実現する。
【0026】
本実施形態の場合、図2の概念図に示すように、1ワードで1エントリを構成した場合(図2(a))、全ての物理セグメント0〜3が同一の論理セグメント0となる。また、2ワードを連結して1エントリを構成した場合(図2(b))、物理セグメント0,2が論理セグメント0、物理セグメント1,3が論理セグメント1となり、4ワードを連結して1エントリを構成した場合(図2(c))、物理セグメント0〜3がそれぞれ論理セグメント0〜3となる。
【0027】
ここで、エントリ構成設定ブロック14は、アドレスの連続した何個のワードを連結して1エントリを構成するのかを設定するブロックである。この設定値に基づいて、エントリ代表セグメント信号ES<3:0>が出力される。
【0028】
図3は、エントリ構成とエントリ代表セグメント信号との間の関係を表す一実施形態の表である。本実施形態の場合、同図の表1に示すように、エントリ構成設定ブロック14により、1ワードで1エントリを構成した場合、エントリ代表セグメント信号ES<3:0>=‘1111’が出力され、物理セグメント0〜3全てのメモリブロック22がエントリ代表物理セグメントとなる。
【0029】
また、2ワードを連結して1エントリを構成した場合、エントリ代表セグメント信号ES<3:0>=‘1010’が出力され、物理セグメント3および1のメモリブロック22がエントリ代表物理セグメントとなる。また、4ワードを連結して1エントリを構成した場合、エントリ代表セグメント信号ES<3:0>=‘1000’が出力され、物理セグメント3のメモリブロック22がエントリ代表物理セグメントとなる。
【0030】
続いて、論理セグメント−物理セグメント変換回路16は、エントリ構成設定ブロック14の設定に応じて、CAM装置10の外部から供給される検索対象論理セグメント信号LSS<1:0>を物理セグメント番号に変換した検索対象物理セグメント信号PSS<3:0>を出力する。この検索対象物理セグメント信号は、各々対応する物理セグメントのメモリブロック22の検索ビット線ドライバ制御回路25および一致線充電制御回路28に供給される。
【0031】
図4は、エントリ構成および検索対象論理セグメント信号と検索対象物理セグメント信号との間の関係を表す一実施形態の表である。本実施形態の場合、同図の表2に示すように、1ワードで1エントリを構成した場合、検索対象論理セグメント信号LSS<1:0>=‘00’により論理セグメント0が指定されると、検索対象物理セグメント信号PSS<3:0>=‘1111’が出力され、物理セグメント0〜3全てのメモリブロック22が検索対象となる。
【0032】
また、2ワードを連結して1エントリを構成した場合、検索対象論理セグメント信号LSS<1:0>=‘00’により論理セグメント0が指定されると、検索対象物理セグメント信号PSS<3:0>=‘0101’が出力され、物理セグメント0,2のメモリブロック22が検索対象となる。また、検索対象論理セグメント信号LSS<1:0>=‘01’により論理セグメント1が指定されると、検索対象物理セグメント信号PSS<3:0>=‘1010’が出力され、物理セグメント1,3のメモリブロック22が検索対象となる。
【0033】
また、4ワードを連結して1エントリを構成した場合、検索対象論理セグメント信号LSS<1:0>=‘00’により論理セグメント0が指定されると、検索対象物理セグメント信号PSS<3:0>=‘0001’が出力され、物理セグメント0のメモリブロック22が検索対象となる。以下同様に、検索対象論理セグメント信号LSS<1:0>=‘01’、‘10’および‘11’によりそれぞれ論理セグメント1,2,3が指定されると、検索対象物理セグメント信号PSS<3:0>=‘0010’、‘0100’および‘1000’が出力され、それぞれ物理セグメント1,2,3のメモリブロック22が検索対象となる。
【0034】
続いて、CAM装置10において、タイミング発生回路18は、前述の検索動作タイミング信号の他、一致線ML上に出力される結果を保持するタイミングを指示する一致フラグ制御信号、次に述べる優先順位エンコーダ20に供給されるエンコード開始信号等を発生する。タイミング発生回路18により発生された各種の信号は、各々対応する部位へ供給される。なお、図1では、図面の煩雑さを避けるために、一致フラグ制御信号、エンコード開始信号等の接続は省略してある。
【0035】
最後に、優先順位エンコーダ20は、所定の優先順位付けに従って、一致が検出されたワードのアドレスをエンコードして出力する。優先順位エンコーダ20には、後述する全てのワードのエントリ一致出力が入力されており、タイミング発生回路18からエンコード開始信号が入力されると、例えば最も優先順位の高いワードのアドレスが出力される。複数ワードを連結して1エントリを構成した場合、エントリ代表ワードのアドレスが出力される。
【0036】
次に、1ワード回路24について説明する。
【0037】
図5は、1ワード回路の一実施形態の構成概略図である。
同図に示すように、1ワード回路24は、前述の通り、一致線充電回路29と、CAMワード30と、ワードロジック32とを備えている。なお、図面の煩雑さを避けるために、図5では一致線充電回路29の記載を省略しているが、その詳細は図6に示してある。
【0038】
1ワード回路24において、まず、一致線充電回路29は、一致線充電制御回路28から供給される制御信号の制御に従い、一致検索動作時(一致検索が開始される前の状態)に一致線MLを所定の中間電位に充電する、または常にローレベルに固定する。
【0039】
一致線充電回路29は、図6に一例を示すように、プリチャージ用のP型MOSトランジスタ(以下、PMOSという)56と、キャパシタ58と、イコライズ用のN型MOSトランジスタ(以下、NMOSという)60と、ディスチャージ用のNMOS62とを備えている。
【0040】
プリチャージ用のPMOS56は電源と内部ノードAとの間に接続され、ディスチャージ用のNMOS62は、一致線MLとグランドとの間に接続されている。また、キャパシタ58は内部ノードAとグランドとの間に接続され、イコライズ用のNMOS60は、内部ノードAと一致線MLとの間に接続されている。
【0041】
また、メモリブロック22に含まれている全ての1ワード回路24の一致線充電回路29のプリチャージ用のPMOS56のゲートにはプリチャージ信号MPCNが共通に入力されている。同様に、メモリブロック22に含まれている全ての1ワード回路24の一致線充電回路29のディスチャージ用のNMOS62のゲートにはディスチャージ信号MDCが共通に入力され、イコライズ用のNMOS60のゲートには一致線イコライズ信号MEQが共通に入力されている。
【0042】
上記信号MPCN,MDC,MEQは、一致線充電制御回路28から供給される制御信号である。なお、一致線充電回路29の動作については、一致線充電制御回路28の動作と共に後述する。
【0043】
続いて、CAMワード30は、1ワード分のm+1ビットのデータを記憶し、記憶されたデータと検索データとの一致検索を行って、その一致検出結果を一致線に出力するもので、m+1ビットのCAMセル34を備えている。前述の通り、m+1ビットのCAMセルのうち、1ビットはエンプティビットであり、残りのmビットはデータビットである。
【0044】
CAMセル34は、本実施形態の場合、図7に示すように、不一致検出型のCAMセルである。このCAMセル34は、1ビットのデータを記憶する記憶セル36と、この記憶セル36に記憶された記憶データと検索ビット線KDおよびその反転検索ビット線KDN上にドライブされる検索データとを比較して、その一致検出結果を一致線ML上に出力する一致検出論理回路38とを備えている。
【0045】
図示例の記憶セル36は、従来公知のSRAMセルであるから、ここではその構成の詳細説明は省略する。記憶セル36では、ワード線WLの制御により、データビット線BLとその反転データビット線BLNを介してデータのリードライトが行われる。
【0046】
一致検出論理回路38は、4つのNMOS40,42,44,46を備えている。NMOS40,42は、一致線MLとグランド線との間に直列に接続され、そのゲートは、それぞれ記憶セル36の出力端子Dおよび反転検索ビット線KDNに接続されている。また、NMOS44,46も一致線MLとグランド線との間に直列に接続され、そのゲートは、それぞれ記憶セル36の反転出力端子DNおよび検索データ線KDに接続されている。
【0047】
CAMセル34では、詳細は後述するが、一致検索を行う前に、あらかじめ検索ビット線対KD,KDNが共に電源電位とグランド電位との間の中間電位とされ、かつ一致線MLはグランド電位とされる。
【0048】
一致検索時に、一致線MLは一旦中間電位をとる検索データID(データ1、データ0、マスク状態)に応じて、検索ビット線対KD,KDNがそれぞれ10,01,00にドライブされると、記憶セル36に記憶された記憶データDと検索ビット線対KD,KDNの状態に応じて、NMOS40,42,44,46のオンオフが決定される。その結果、一致線MLは、不一致の場合にはディスチャージされ、一致の場合には中間電位の状態に保持される。
【0049】
なお、CAMセル34は、データビット線対BL,BLNと検索ビット線対KD,KDNとがそれぞれ独立に配線されているものであれば、不一致検出型のものでも一致検出型のものでもよく、1ビットのデータを記憶する従来公知の各種のSRAMセル、DRAMセル、ROMセルが利用可能である。また、図示例では、データビット線対BL,BLNをドライブするデータビット線ドライバは省略してあるが、これも従来公知のものが利用可能である。
【0050】
また、CAMワード30としては、CAMワード30を構成するm+1ビットのCAMセル34の全て、すなわちエンプティビットとデータビットの全てにおいて一致が検出された場合にのみ、一致線MLは中間電位の状態に保持され、1ビットでも不一致が存在すると、一致線MLはディスチャージされる。
【0051】
エンプティビットのみを検索する場合、全てのデータビット用の検索ビット線対KD,KDNが共に0とされ、全てのデータビットがマスクされてエンプティビットのみの検索が行われる。また、データビットのみを検索する場合、同様にエンプティビット用の検索ビット線対KD,KDNが共に0とされ、エンプティビットがマスクされてデータビットのみの検索が行われる。
【0052】
続いて、1ワード回路24において、ワードロジック32は、本実施形態の場合、CAMワード30から一致線ML上に出力される結果を一致フラグMTに変換するバッファ47と、一致フラグMTを保持する一致フラグレジスタ48と、複数ワードの一致フラグを連結するためのANDチェーンを構成するANDゲート50およびORゲート52と、エントリの検索結果(エントリ一致出力)を出力するためのエントリ一致出力回路となるANDゲート54とを備えている。
【0053】
ここで、一致フラグレジスタ48のデータ入力端子Dには、CAMワード30から一致線ML上に出力される検索結果をバッファ47により増幅された信号が入力され、そのデータラッチ制御端子には、タイミング発生回路18から出力される一致フラグ制御信号が入力されている。図示例の場合、一致フラグ制御信号が入力されると、その立上りエッジにより、バッファ47の出力が一致フラグレジスタ48に取り込まれる。
【0054】
ANDチェーンを構成するANDゲート50の一方の入力端子には一致フラグレジスタ48の出力Qが入力され、その他方の入力端子には、隣接するワードのANDチェーン出力が入力される。従って、このANDゲート50からは、このワードの一致フラグレジスタ48からの出力が論理‘1’すなわち一致であり、かつ、隣接するワードのANDチェーン出力が論理‘1’すなわち一致の場合に論理‘1’が出力される。
【0055】
ANDチェーン出力を発生するORゲート52の一方の入力端子にはANDゲート50の出力が入力され、その他方の入力端子には、エントリ構成設定ブロック14からエントリ代表セグメント信号ESが入力される。このエントリ代表セグメント信号ESは、エントリを代表するワード(エントリ代表ワード)を指示する信号であり、エントリ代表ワードである場合には論理‘1’、代表ワードでない場合には論理‘0’とされる。
【0056】
本実施形態では、複数ワードを連結して1エントリを構成した場合、そのエントリを構成する最大アドレスのワードが含まれる物理セグメントをエントリ代表セグメントとする。従って、検索結果の一致アドレスとして、このエントリ代表セグメントのメモリブロック22に含まれるワードのアドレスが出力される。なお、エントリを構成する最小アドレスのワードをエントリ代表ワードとしたい場合、ANDチェーンの向きを反対にすればよい。
【0057】
このように構成されたANDチェーン出力は、このワードがエントリ代表ワードではない場合、一致フラグのAND結果が出力され、次のワードでのAND検索のために提供される。一方、エントリ代表ワードである場合には、AND結果に係わらず論理‘1’が出力され、次のワードとは切り離される。このように、ANDチェーンは、エントリ代表ワードを境にして論理的に区切られることになる。
【0058】
エントリ一致出力回路となるANDゲート54の一方の入力端子にはANDゲート50の出力が接続され、その他方の入力端子には、エントリ代表セグメント信号ESが接続される。従って、エントリ一致出力として、ANDゲート54からは、このワードがエントリ代表ワードである場合、エントリを構成する複数ワードの一致フラグのAND結果が出力され、エントリ代表ワードでない場合には不一致を示す論理‘0’が出力される。
【0059】
前述の通り、CAM装置10では、1ワード回路24を複数(本実施形態では最大4個まで)連結して1エントリを構成することができる。一例として、以下、2ワードを連結して1エントリを構成した場合を例に挙げて説明する。
【0060】
図8は、2ワードを連結して1エントリを構成した場合の1ワード回路の一実施形態の構成概略図である。前述の通り、本実施形態では、ワードiおよびワードi+1で1エントリを構成し、ワードi+1がエントリ代表ワードとなる。すなわち、ワードi,i+1に入力されるエントリ代表セグメント信号ESは、それぞれ論理‘0’および論理‘1’に設定される。
【0061】
また、ワードi−1は別のエントリのエントリ代表ワードであるため、ワードiのANDチェーン入力は論理‘1’となる。その結果、図8に示すように、ワードi,i+1を論理的に接続するANDチェーンが形成され、ワードiの一致フラグレジスタ48に保持された一致フラグは、ANDチェーンを介してワードi+1に伝搬され、エントリ一致出力として、ワードi+1からワードi,i+1の一致フラグのAND結果が出力される。
【0062】
以下、図8の概略図を参照しながら、2ワードを連結して1エントリを構成した場合の検索動作について説明する。
【0063】
まず、一連のAND検索結果をエントリ代表ワードに正しく伝搬させるために、初期化手段(図示省略)により、全ての一致フラグレジスタ48を初期化して一致の状態とする。なお、本実施形態のように、不一致検出型のCAMセル34を使用した場合、検索対象外の物理セグメントのメモリブロック22では、全ての一致線は初期状態である一致の状態を保持しているので、初回検索時に、バッファ47の出力を一致フラグレジスタ48に取り込むように構成してもよい。
【0064】
1回目の検索の場合、検索データに応じて、検索対象となる物理セグメントのメモリブロック22、本実施形態では、ワードiが含まれる物理セグメントのメモリブロック22の検索ビット線対KD,KDNのみがドライブされ、検索対象外の物理セグメントのメモリブロック22、すなわちワードi+1が含まれる物理セグメントのメモリブロック22の検索ビット線対KD,KDNはスタンバイ状態(本実施形態の場合、KD,KDNともに中間電位)とされる。
【0065】
これにより、検索対象のワードiでは、CAMワード30に記憶された記憶データと検索データとの検索が同時に行われ、各々対応する一致線ML上に比較結果が出力される。なお、検索対象外のワードi+1の一致フラグは初期状態である一致の状態に保持される。その後、一致線MLの状態が確定したタイミングで双方の一致フラグ制御信号にデータ取り込みパルスが与えられ、一致フラグが各々対応する一致フラグレジスタ48に保持される。
【0066】
続いて、2回目の検索(AND検索)では、1回目の検索の場合と同様、検索対象のワードi+1が含まれる物理セグメントのメモリブロック22の検索ビット線対KD,KDNのみが、検索データに応じてドライブされる。その後、一致線MLの状態が確定したタイミングで、検索対象のワードi+1の一致フラグ制御信号にのみデータ取り込みパルスが与えられ、一致フラグは、各々対応する一致フラグレジスタ48に保持される。
【0067】
その結果、エントリ代表ワードi+1からは、エントリ一致出力としてAND検索結果が出力され、優先順位エンコーダ20により、所定の優先順位付けに従って、各エントリ代表ワードのアドレスが出力される。
【0068】
このように、上記1ワード回路24を複数連結し、検索ビット線対KD,KDNおよび一致フラグレジスタ48のデータ取り込みを独立に制御することにより、検索する順番によらず正しいAND検索結果を得ることができる。また、実際に検索対象のワードの検索ビット線対KD,KDNおよび一致線MLのみがドライブされ、検索対象外のワードの検索ビット線対KD,KDNおよび一致線MLはドライブされないので、従来のワード連結機能を持つCAM装置と比べて大幅に消費電力を削減することができる。
【0069】
なお、複数のワードを連結して1エントリを構成した場合、どの順番で検索を行ってもよい。
【0070】
次に、本実施形態の検索ビット線ドライバ制御回路25と検索ビット線ドライバ26について説明する。
【0071】
検索ビット線ドライバ制御回路25は、図9に一例を示すように、CAMワード30のエンプティビット用の検索ビット線ドライバ制御回路25aとデータビット用の検索ビット線ドライバ制御回路25bとを備えている。
【0072】
まず、エンプティビット用の検索ビット線ドライバ制御回路25aは、NANDゲート64,66と、遅延素子68と、ORゲート70と、NORゲート72と、ANDゲート74とを備えている。
【0073】
NANDゲート64には信号ES,PHASEが入力され、NANDゲート64からは信号KDDCが出力されている。同様に、NANDゲート66には信号ES,PHASEが入力されている。また、ORゲート70、NORゲート72およびANDゲート74の一方の入力端子にはNANDゲート66の出力が共通に入力され、その他方の入力端子には、遅延素子68を介してNANDゲート66の出力が共通に入力されている。また、ORゲート70、NORゲート72およびANDゲート74からは、それぞれ信号KDDRN,KDDRおよびKDEQが出力されている。
【0074】
一方、データビット用の検索ビット線ドライバ制御回路25bは、インバータ76と、ANDゲート78と、NANDゲート80と、遅延素子82と、ORゲート84と、NORゲート86と、ANDゲート88とを備えている。
【0075】
ANDゲート78には、信号ES,PHASEの他、インバータ76を介して信号PSSが入力され、ANDゲート78からは信号KDDCが出力されている。NANDゲート80には信号PHASE,PSSが入力されている。また、ORゲート84、NORゲート86およびANDゲート88の一方の入力端子にはNANDゲート80の出力が共通に入力され、その他方の入力端子には、遅延素子82を介してNANDゲート80の出力が共通に入力されている。また、ORゲート84、NORゲート86およびANDゲート88からは、それぞれ信号KDDRN,KDDRおよびKDEQが出力されている。
【0076】
また、検索ビット線ドライバ26は、図7に一例を示すように、検索ビット線KD用ドライバ90aと、反転検索ビット線KDN用ドライバ90bと、イコライズ用のNMOS92とを備えている。
【0077】
まず、検索ビット線KD用ドライバ90aは、NANDゲート94と、NORゲート96と、ORゲート98と、PMOS100と、NMOS102とを備えている。
【0078】
NANDゲート94には信号KDDR,IDが入力されている。NORゲート96の2つの入力端子には信号KDDRN,IDが入力され、ORゲート98には、信号KDDCおよびANDゲート96の出力が入力されている。PMOS100およびNMOS102のソースはそれぞれ電源およびグランドに接続され、そのゲートには、それぞれNANDゲート94の出力およびORゲート98の出力が入力されている。また、PMOS100およびNMOS102のドレインは検索ビット線KDに共通に接続されている。
【0079】
一方、反転検索ビット線KDN用ドライバ90bの構成は、検索ビット線KD用ドライバ90aにおいて、検索ビット線KDが検索ビット線KDNに、また、信号IDがIDNに変更されている点を除いて同じであるから、同一の構成要素に同一の符号を付してその説明を省略する。また、イコライズ用のNMOS92は、検索ビット線対KD,KDNとの間に接続され、そのゲートには信号KDEQが入力されている。
【0080】
検索ビット線KD<m:0>とその反転検索ビット線KDN<m:0>は、図7に示すように、各々対応する物理セグメントのメモリブロック22に含まれる全ての1ワード回路のCAMワード30を構成するm+1ビットのCAMセルに対してそれぞれ共通に接続されている。
【0081】
以下、検索ビット線ドライバ制御回路25と検索ビット線ドライバ26の動作を説明する。
【0082】
エンプティビット用の検索ビット線ドライバ制御回路25aでは、図9に示すように、信号ESがローレベルの場合、すなわちエントリ代表セグメントのメモリブロック22ではない場合、NANDゲート64の出力、すなわち信号KDDCは信号PHASEに係わらずハイレベルになる。同様に、NANDゲート66の出力信号もハイレベルとなり、信号KDDRNはハイレベル、信号KDDRはローレベル、信号KDEQはハイレベルになる。
【0083】
この場合、検索ビット線ドライバ26では、図7に示すように、信号KDDRのローレベルによりNANDゲート94の出力がハイレベルとなってPMOS100はオフする。また、信号KDDCのハイレベルによりORゲート98の出力がハイレベルとなってNMOS102がオンする。また、信号KDEQのハイレベルによりNMOS92がオンし、検索ビット線対KD,KDNが電気的に接続されて同電位のローレベル(グランド電位)になる。
【0084】
すなわち、エントリ代表セグメントのメモリブロック22ではない場合、図11の表3に示すように、エンプティビット用の検索ビット線対KD,KDNは同電位のローレベルとなる。本実施形態では、エントリ代表ワードのエンプティビットがエントリの有効無効を表す。このため、エントリ代表セグメントではないメモリブロック22に含まれるワードのエンプティビットの検索ビット線はローレベルとされ(すなわち、マスク状態とされ)、検索が行われない。
【0085】
一方、信号ESがハイレベルの場合、すなわちエントリ代表セグメントのメモリブロック22である場合には、検索動作が行われていないスタンバイ期間中、すなわち信号PHASEがローレベルの期間中の動作は信号ESがローレベルの場合と同じである。検索期間中、すなわち信号PHASEがハイレベルの期間中は、信号KDDCおよびNANDゲートの出力は共にハイレベルになる。
【0086】
従って、信号KDDRNは、信号PHASEがハイレベルとなってから遅延素子68による遅延時間の後にローレベルとなり、信号PHASEがローレベルに戻るタイミングでハイレベルに戻る。また、信号KDDRは、信号KDDRを反転したハイレベルのパルスとなる。信号KDEQは、信号PHASEがハイレベルになるタイミングでローレベルとなり、信号PHASEがローレベルとなってから遅延素子68による遅延時間の後にハイレベルに戻る。
【0087】
この場合、検索ビット線ドライバ26では、信号KDEQがローレベルの期間は、NMOS92がオフして検索ビット線対KD,KDNが電気的に分離される。また、信号KDDCがローレベル、信号KDDRがハイレベル、信号KDDRNがローレベルの期間は、NANDゲート94およびORゲート98を介し、検索データIDとその反転検索データIDNに従ってPMOS100およびNMOS102がオンオフする。
【0088】
すなわち、エントリ代表セグメントのメモリブロック22である場合、スタンバイ期間中は、エンプティビット用の検索ビット対KD,KDNは同電位のローレベル(グランド電位)(マスク状態)となる。また、検索期間中は、エンプティビット用の検索ビット線対KD,KDNは、検索データIDとその反転検索データIDNに応じて一方がハイレベル(電源電位)、他方がローレベル(グランド電位)に駆動され、エンプティビットと検索データとの検索動作が行われる(図11の表3におけるエンプティビットの通常動作)。
【0089】
続いて、データビット用の検索ビット線ドライバ制御回路25bにおいて、信号PSSがハイレベルの場合、すなわち検索対象の物理セグメントのメモリブロックである場合、インバータの出力がローレベルとなり、ANDゲートの出力、すなわち信号KDDCは、信号ES,PHASEに係わらずローレベルとなる。
【0090】
この場合、スタンバイ期間中、すなわち信号PHASEがローレベルの期間中は、NANDゲート80の出力がハイレベルとなり、信号KDDRNはハイレベル、信号KDDRはローレベル、信号KDEQはハイレベルになる。
【0091】
従って、検索ビット線ドライバ26では、信号KDEQのハイレベルにより、NMOS92がオンして検索ビット線対KD,KDNとが電気的に接続される。また、信号KDDRのローレベルによりNANDゲート94の出力がハイレベルとなってPMOS100がオフし、信号KDDRNのハイレベルおよび信号KDDCのローレベルによりNORゲート96の出力がローレベル、ORゲート98の出力もローレベルとなってNMOS102もオフする。
【0092】
すなわち、検索対象の物理セグメントのメモリブロック22である場合、スタンバイ期間中は、データビット用の検索ビット線対KD,KDNは同電位の中間電位となる。
【0093】
なお、検索期間中は、検索対象の物理セグメントのメモリブロック22では、検索ビット線対KD,KDNは、一方がハイレベル(電源電位)、他方がローレベル(グランド電位)とされる。このため、スタンバイ期間中に、検索ビット線対KD,KDNをドライブするPMOS100およびNMOS102をオフとし、かつNMOS92によって検索ビット線対KD,KDNを電気的に接続することにより両者を同電位の中間電位とすることができる。
【0094】
一方、信号PSSがハイレベルの場合、検索期間中、すなわち信号PHASEがハイレベルの期間中は、NANDゲート80の出力がローレベルになる。
【0095】
従って、信号KDDRNは、信号PHASEがハイレベルとなってから遅延素子82による遅延時間の後にローレベルとなり、信号PHASEがローレベルに戻るタイミングでハイレベルに戻る。また、信号KDDRは、信号PHASEを反転したハイレベルのパルスとなる。信号KDEQは、信号PHASEがハイレベルになるタイミングでローレベルとなり、信号PHASEがローレベルとなってから遅延素子82による遅延時間の後にハイレベルに戻る。
【0096】
この場合、検索ビット線ドライバ26では、信号KDEQがローレベルの期間は、NMOS92がオフして検索ビット線対KD,KDNが電気的に分離される。また、信号KDDCがローレベル、信号KDDRがハイレベル、信号KDDRNがローレベルの期間は、NANDゲート94およびORゲート98を介し、検索データIDとその反転検索データIDNに従ってPMOS100およびNMOS102がオンオフする。
【0097】
すなわち、検索対象の物理セグメントのメモリブロック22である場合、検索期間中は、データビット用の検索ビット線対KD,KDNは、検索データIDとその反転検索データIDNに応じて、一方がハイレベル(電源電位)、他方がローレベル(グランド電位)に駆動され、データビットと検索データとの一致検索動作が行われる(図11の表3におけるデータビットの通常動作)。
【0098】
一方、信号PSSがローレベルの場合、すなわち検索対象の物理セグメントのメモリブロック22ではない場合に、信号ESがローレベル、すなわちエントリ代表セグメントのメモリブロック22ではない場合、ANDゲート78の出力、すなわち信号KDDCは信号PHASEに係わらずローレベルになる。また、NANDゲート80の出力信号はハイレベルとなり、信号KDDRNはハイレベル、信号KDDRはローレベル、信号KDEQはハイレベルになる。
【0099】
この場合、検索ビット線ドライバ26では、信号KDDRのローレベルにより、NANDゲート94の出力がハイレベルとなってPMOS100はオフする。また、信号KDDRNのハイレベルによりNORゲート96の出力がローレベル、信号KDDCのローレベルによりORゲート98の出力がローレベルとなってNMOS102もオフする。また、信号KDEQのハイレベルによりNMOS92がオンし、データビット用の検索ビット線対KD,KDNが電気的に接続される。
【0100】
すなわち、図11の表3に示すように、検索対象の物理セグメントのメモリブロック22ではなく、エントリ代表セグメントのメモリブロック22でもない場合、データビット用の検索ビット線対KD,KDNは同電位の中間電位になる。
【0101】
一方、信号PSSがローレベルで信号ESがハイレベル、すなわち検索対象の物理セグメントのメモリブロック22ではなく、エントリ代表セグメントのメモリブロック22である場合、スタンバイ期間中、すなわち信号PHASEがローレベルの期間中は、図12のタイミングチャートに一例を示すように、信号KDDCはローレベルになる。また、NANDゲート80の出力はハイレベルとなり、信号KDDRNはハイレベル、信号KDDRはローレベル、信号KDEQはハイレベルとなる。
【0102】
この場合の動作は、信号PSSがハイレベル、すなわち検索対象の物理セグメントのメモリブロック22におけるスタンバイ期間中の動作と同じである。すなわち、データビット用の検索ビット線対KD,KDNは同電位の中間電位となる。
【0103】
信号PSSがローレベルで信号ESがハイレベルの場合、検索期間中、すなわち信号PHASEがハイレベルの期間中は、図12のタイミングチャートに示すように、信号KDDCはハイレベルになる。また、NANDゲート80の出力は、信号PHASEに係わらずハイレベルとなり、従って、信号KDDRNはハイレベル、信号KDDRはローレベル、信号KDEQはハイレベルとなる。
【0104】
この場合、検索ビット線ドライバ26では、信号KDEQのハイレベルによりNMOS92がオンして、検索ビット線対KD,KDNは電気的に接続される。また、信号KDDRのローレベルによりNANDゲート94の出力がハイレベルとなってPMOS100はオフする。また、信号KDDCのハイレベルによりORゲート98の出力がハイレベルとなってNMOS102がオンする。
【0105】
すなわち、検索対象の物理セグメントのメモリブロック22ではなく、エントリ代表セグメントのメモリブロック22である場合、図11の表3に示すように、また、図12のタイミングチャートに示すように、データビット線用の検索ビット線対KD,KDNは同電位のローレベル(グランド電位)(マスク状態)に固定される。この場合、検索対象ではないので、データビットはマスクされるが、エンプティビットはエントリの有効無効を表すので検索対象とされる。
【0106】
以上のように、検索ビット線対KD,KDNをスタンバイ期間中に同電位の中間電位とし、検索開始時に、検索データに応じて、一方を中間電位から電源電位に、他方を中間電位からグランド電位までドライブすることにより、検索ビット線対KD,KDNをスタンバイ期間中に電源電位とグランド電位との間でフル振幅させた場合と比べて大幅に消費電力を削減することができると共に、検索動作時には高速に検索を行うことができる。
【0107】
次に、本実施形態の一致線充電制御回路28について説明する。
【0108】
一致線充電制御回路28は、図10に一例を示すように、ORゲート104と、NANDゲート106と、遅延素子108と、NORゲート110と、ANDゲート112と、NANDゲート114とを備えている。
【0109】
ORゲート104には信号PSS,ESが入力され、NANDゲート106には信号PHASEおよびORゲート104の出力が入力されている。NORゲート110、ANDゲート112およびNANDゲート114の一方の入力端子にはNANDゲート106の出力が共通に入力され、その他方の入力端子には、遅延素子108を介してNANDゲート106の出力が共通に入力されている。
【0110】
以下、一致線充電制御回路28と一致線充電回路29の動作を説明する。
【0111】
一致線充電制御回路28において、信号ESおよび信号PSSがローレベルの場合、すなわちエントリ代表セグメントのメモリブロック22でも検索対象の物理セグメントのメモリブロック22でもない場合、ORゲート104の出力がローレベルとなって、NANDゲート106の出力は信号PHASEに係わらずハイレベルとなり、信号MEQはローレベル、信号MDCはハイレベル、信号MPCNはローレベルとなる。
【0112】
この場合、一致線充電回路29では、信号MEQのローレベルによりNMOS60がオフして、内部ノードAと一致線MLとが電気的に分離される。また、信号MPCNのローレベルによりPMOS56がオンして内部ノードAがプリチャージされ、キャパシタ58に所定量の電荷が充電される。また、信号MDCのハイレベルによりNMOS62がオンして、一致線MLはグランド電位までディスチャージされ、ローレベルに固定される。
【0113】
すなわち、エントリ代表セグメントのメモリブロック22でも検索対象の物理セグメントのメモリブロック22でもない場合、図11の表3に示すように、一致線MLはローレベル(グランド電位)に固定される。この場合、エントリ代表セグメントのメモリワード22でもなく、検索対象の物理セグメントのメモリワード22でもないため、一致線MLをローレベルに固定することで、消費電力を極力抑えることができる。
【0114】
一方、信号ESまたは信号PSSがハイレベル、すなわちエントリ代表セグメントのメモリブロック22であるか、または検索対象物理セグメントのメモリブロック22である場合に、まず、スタンバイ期間中、すなわち信号PHASEがローレベルの期間中の動作は、信号ESおよび信号PSSがローレベルの場合、すなわちエントリ代表セグメントのメモリブロック22でも検索対象の物理セグメントのメモリブロック22でもない場合の動作と同じである。
【0115】
また、信号ESまたは信号PSSがハイレベルの場合に、検索期間中は、信号PHASEがハイレベルの期間中にNANDゲート106の出力がローレベルとなる。
【0116】
従って、信号MEQは、信号PHASEがハイレベルとなってから遅延素子108による遅延時間の後にハイレベルとなり、信号PHASEがローレベルに戻るタイミングでローレベルに戻る。また、信号MDCは、信号PHASEがハイレベルになるタイミングでローレベルとなり、信号PHASEがローレベルとなってから遅延素子108による遅延時間の後にハイレベルに戻る。信号MPCNは、信号MDCを反転したハイレベルのパルスとなる。
【0117】
この場合、一致線充電回路29では、信号MPCNのハイレベルによりPMOS56がオフして内部ノードAのプリチャージが停止されると共に、信号MDCのローレベルによりNMOS62がオフして一致線MLのディスチャージが停止される。その後、信号MEQのハイレベルによりNMOS60がオンして内部ノードAと一致線MLが電気的に接続され、キャパシタ58に充電されている電荷が内部ノードAと一致線MLとの間で分割され、一致線MLは所定の中間電位となる。
【0118】
すなわち、一致線MLは、検索動作時(一致線ML上に一致フラグが出力される前の状態)には所定の中間電位に充電される(図11の表3における一致線の通常動作)。検索の結果、一致線MLは、本実施形態の場合、図12のタイミングチャートに示すように、不一致の場合にはグランド電位までディスチャージされ、一致の場合には中間電位の状態に保持される。
【0119】
以上のように、検索動作時に一致線MLを中間電位とすることにより、検索動作時に一致線MLを電源電位とし、電源電位とグランド電位との間でフル振幅させた場合と比べて大幅に消費電力を削減することができる。なお、一致線MLの中間電位は、図5に示す1ワード回路24のバッファ47により増幅される。なお、一致線MLの中間電位は、バッファ47の論理しきい値の電圧レベルVR(図12のタイミングチャート参照)を超えている必要がある。
【0120】
上記実施形態では、1エントリを最大4ワードまで連結して構成可能な例を挙げて説明したが、本発明はこれに限定されず、何ワードを連結して1エントリを構成するように設定可能としてもよい。また、検索ビット線対をスタンバイ期間中に中間電位とすることと、一致線を検索動作時に中間電位とすることは、これらは同時に実施するようにしてもよいし、それぞれ個別に実施するようにしてもよい。
【0121】
また、上記実施形態では、CAMワードを構成するCAMセルの1ビットを使用してエンプティビットを構成しているが、エンプティビットをCAMセルで構成することは必須ではない。例えば、エンプティビットを従来公知の記憶素子で構成し、CAMワードから出力される一致フラグと記憶素子から出力されるエンプティビットとの論理をとって、CAMワードまたはエントリが有効なものか無効なものかを判断するようにしてもよい。
【0122】
また、上記実施形態では、エントリ代表セグメントのメモリブロック22に含まれるワードのエンプティビットが、エントリの有効無効を表すエンプティビットとして用いられる例を挙げて説明したが、これも限定されず、それぞれのワードのエンプティビットが、それぞれのワードの有効無効を表すものとし、1つのエントリを構成する複数のワードのエンプティビットが全て有効を表す場合にエントリが有効であると判断するように回路を構成してもよい。
【0123】
従って、検索ビット線ドライバ制御回路25、検索ビット線ドライバ26、一致線充電制御回路28、一致線充電回路29、ワードロジック32等の具体的な回路構成は何ら図示例のものに限定されるわけではなく、必要とする機能に応じて適宜設計されるべきものである。また、ワード連結機能も上記実施形態のものに限定されず、本発明は、従来公知のワード連結機能を持つCAM装置に適用可能である。
【0124】
また、上記実施形態では、スタンバイ期間中は検索ビット線対KD,KDNを共に中間電位とし、検索期間中には、検索データに応じて、一方を電源電位とし、かつ他方をグランド電位としている。しかし、本発明はこれに限定されず、検索期間中に、検索ビット線対KD,KDNの一方を中間電位より高い電位とし、他方を中間電位より低い電位とすればよい。ただし、上記中間電位より高い電位は、例えば図7に示すCAMセル34の一致検出論理回路38の構成の場合、NMOS42,46のしきい値の電位よりも高い電位とする必要がある。同様に、上記中間電位より低い電位は、NMOS42,46のしきい値の電位よりも低い電位とする必要がある。
【0125】
本発明は、基本的に以上のようなものである。
以上、本発明の連想メモリ装置について詳細に説明したが、本発明は上記実施形態に限定されず、本発明の主旨を逸脱しない範囲において、種々の改良や変更をしてもよいのはもちろんである。
【0126】
【発明の効果】
以上詳細に説明した様に、本発明の連想メモリ装置は、検索が行われていないスタンバイ期間中は、検索ビット線対を電源電位とグランド電位との間の中間電位とし、検索期間中は、検索しようとするデータに応じて、検索ビット線対の一方を電源電位、かつ他方をグランド電位にドライブするのと、検索の開始時に、メモリワードに記憶されたデータと検索しようとするデータとの検索結果が出力される一致線を、電源電位とグランド電位との間の中間電位とするのとのうちの少なくとも一方を行うようにしたものである。
これにより、本発明の連想メモリ装置によれば、スタンバイ期間中の検索ビット線対の電圧振幅を小さくできるため、ワード連結をするしないに関係なく、検索ビット線対における消費電力を大幅に削減することができる。同様に、検索開始時の一致線の電圧振幅も小さくできるため、一致線における消費電力を大幅に削減することができる。
【図面の簡単な説明】
【図1】本発明の連想メモリ装置の一実施形態の構成概略図である。
【図2】(a)、(b)および(c)は、物理セグメントと論理セグメントとの間の関係を表す一実施形態の概念図である。
【図3】エントリ構成とエントリ代表セグメント信号との間の関係を表す一実施形態の表である。
【図4】エントリ構成および検索対象論理セグメント信号と検索対象物理セグメント信号との間の関係を表す一実施形態の表である。
【図5】1ワード回路の一実施形態の構成概略図である。
【図6】一致線充電回路の一実施形態の構成概略図である。
【図7】検索ビット線ドライバおよびCAMセルの一実施形態の構成概略図である。
【図8】2ワードを連結して1エントリを構成した場合の1ワード回路の一実施形態の構成概略図である。
【図9】検索ビット線ドライバ制御回路の一実施形態の構成概略図である。
【図10】一致線充電制御回路の一実施形態の構成概略図である。
【図11】ワード連結をした場合の検索ビット線および一致線の状態を表す一実施形態の表である。
【図12】本発明の連想メモリ装置の動作を表す一実施形態のタイミングチャートである。
【符号の説明】
10 CAM装置
12 メモリアレイ
14 エントリ構成設定ブロック
16 論理セグメント−物理セグメント変換回路
18 タイミング発生回路
20 優先順位エンコーダ
22 メモリブロック
24 1ワード回路
25 検索ビット線ドライバ制御回路
25a エンプティビット用の検索ビット線ドライバ制御回路
25b データビット用の検索ビット線ドライバ制御回路
26 検索ビット線ドライバ
28 一致線充電制御回路
29 一致線充電回路
30 CAMワード
32 ワードロジック
34 CAMセル
36 記憶セル
38 一致検出論理回路
40,42,44,46,60,62,92,102 N型MOSトランジスタ
47 バッファ
48 一致フラグレジスタ
50,54,74,78,88,112 ANDゲート
52,70,84,98,104 ORゲート
56,100 P型MOSトランジスタ
58 キャパシタ
64,66,80,94,106,114 NANDゲート
68,82,108 遅延素子
72,86,96,110 NORゲート
76 インバータ
90a 検索ビット線用ドライバ
90b 反転検索ビット線用ドライバ

Claims (4)

  1. 1つのメモリワードもしくは複数のメモリワードを連結して構成される複数のエントリを含むメモリアレイを備え、
    前記メモリワードを構成する各々のメモリセルに対して、データのリードライトを行うためのデータビット線対と検索しようとするデータを供給するための検索ビット線対とがそれぞれ独立に配設された連想メモリ装置であって、
    検索が行われていないスタンバイ期間中は、前記検索ビット線対を電源電位とグランド電位との間の中間電位とし、検索期間中は、前記検索しようとするデータに応じて、前記検索ビット線対の一方を前記中間電位より高い電位に、かつ他方を前記中間電位より低い電位にドライブする検索ビット線対のドライブ手段と、
    検索の開始時に、前記メモリワードに記憶されたデータと検索しようとするデータとの検索結果が出力される一致線を、電源電位とグランド電位との間の中間電位とする一致線の充電手段とのうちの少なくとも一方を備える連想メモリ装置。
  2. 前記メモリワードが、検索の対象となるデータを保持する少なくとも1ビットのメモリセルと、前記データビットが検索の対象となる有効なビットか検索の対象とならない無効なビットかを表すフラグを保持する少なくとも1ビットのメモリセルとを含み、
    複数の前記メモリワードを連結して前記エントリを構成した場合に、当該エントリの代表となるエントリ代表ワードのエンプティビットが、前記エントリが検索の対象となる有効なものか検索の対象とならない無効なものかを表す請求項1に記載の連想メモリ装置であって、
    前記検索ビット線対のドライブ手段は、前記メモリワードが前記エントリ代表ワードではない場合、エンプティビット用の検索ビット線対をマスク状態とし、前記メモリワードが前記エントリ代表ワードである場合、スタンバイ期間中は、前記エンプティビット用の検索ビット線対をマスク状態とし、検索期間中は、前記エンプティビット用の検索ビット線対をエンプティビット用の検索データに応じてドライブする連想メモリ装置。
  3. 前記メモリワードが、検索の対象となるデータを保持する少なくとも1ビットのメモリセルと、前記データビットが検索の対象となる有効なビットか検索の対象とならない無効なビットかを表すフラグを保持する少なくとも1ビットのメモリセルとを含み、
    複数の前記メモリワードを連結して前記エントリを構成した場合に、当該エントリの代表となるエントリ代表ワードのエンプティビットが、前記エントリが検索の対象となる有効なものか検索の対象とならない無効なものかを表す請求項1に記載の連想メモリ装置であって、
    前記検索ビット線対のドライブ手段は、前記メモリワードが検索対象である場合、スタンバイ期間中は、データビット用の検索ビット線対を電源電位とグランド電位との間の中間電位とし、検索期間中は、前記データビット用の検索ビット線対をデータビット用の検索データに応じてドライブし、
    前記メモリワードが検索対象ではなく、かつ前記エントリ代表ワードである場合、前記データビット用の検索ビット線対をマスク状態とし、前記メモリワードが検索対象ではなく、かつ前記エントリ代表ワードでもない場合、前記データビット用の検索ビット線対を電源電位とグランド電位との間の中間電位とする連想メモリ装置。
  4. 前記メモリワードが、検索の対象となるデータを保持する少なくとも1ビットのメモリセルと、前記データビットが検索の対象となる有効なビットか検索の対象とならない無効なビットかを表すフラグを保持する少なくとも1ビットのメモリセルとを含み、
    複数の前記メモリワードを連結して前記エントリを構成した場合に、当該エントリの代表となるエントリ代表ワードのエンプティビットが、前記エントリが検索の対象となる有効なものか検索の対象とならない無効なものかを表す請求項1に記載の連想メモリ装置であって、
    前記一致線の充電手段は、前記メモリワードが検索対象ではなく、かつ前記エントリ代表ワードでもない場合、前記一致線をグランド電位とし、
    前記メモリワードが検索対象であるか、または前記エントリ代表ワードである場合、前記一致線を電源電位とグランド電位との間の中間電位に充電する連想メモリ装置。
JP2002357701A 2002-12-10 2002-12-10 連想メモリ装置 Pending JP2004192695A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002357701A JP2004192695A (ja) 2002-12-10 2002-12-10 連想メモリ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002357701A JP2004192695A (ja) 2002-12-10 2002-12-10 連想メモリ装置

Publications (1)

Publication Number Publication Date
JP2004192695A true JP2004192695A (ja) 2004-07-08

Family

ID=32757627

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002357701A Pending JP2004192695A (ja) 2002-12-10 2002-12-10 連想メモリ装置

Country Status (1)

Country Link
JP (1) JP2004192695A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007294013A (ja) * 2006-04-25 2007-11-08 Renesas Technology Corp 内容参照メモリ
JP2009510665A (ja) * 2005-09-30 2009-03-12 クゥアルコム・インコーポレイテッド 直列並列混合検索を用いる連想メモリ
JP2009110616A (ja) * 2007-10-31 2009-05-21 Renesas Technology Corp 連想記憶装置
US8164934B2 (en) 2006-04-25 2012-04-24 Renesas Electronics Corporation Content addressable memory

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009510665A (ja) * 2005-09-30 2009-03-12 クゥアルコム・インコーポレイテッド 直列並列混合検索を用いる連想メモリ
JP2007294013A (ja) * 2006-04-25 2007-11-08 Renesas Technology Corp 内容参照メモリ
US8164934B2 (en) 2006-04-25 2012-04-24 Renesas Electronics Corporation Content addressable memory
US8310852B2 (en) 2006-04-25 2012-11-13 Renesas Electronics Corporation Content addressable memory
US8638583B2 (en) 2006-04-25 2014-01-28 Renesas Electronics Corporation Content addressable memory
US9042148B2 (en) 2006-04-25 2015-05-26 Renesas Electronics Corporation Content addressable memory
US9620214B2 (en) 2006-04-25 2017-04-11 Renesas Electronics Corporation Content addressable memory with reduced power consumption and increased search operation speed
JP2009110616A (ja) * 2007-10-31 2009-05-21 Renesas Technology Corp 連想記憶装置

Similar Documents

Publication Publication Date Title
US6191969B1 (en) Selective match line discharging in a partitioned content addressable memory array
US7848129B1 (en) Dynamically partitioned CAM array
JP3095064B2 (ja) 連想記憶装置
CA2384039C (en) Low power content addressable memory architecture
EP1470554B1 (en) Circuit and method for reducing power usage in a content addressable memory
US6381673B1 (en) Method and apparatus for performing a read next highest priority match instruction in a content addressable memory device
US7050318B1 (en) Selective match line pre-charging in a CAM device using pre-compare operations
US7154764B2 (en) Method of controlling a bit line for a content addressable memory
US6717876B2 (en) Matchline sensing for content addressable memories
US20060098522A1 (en) Decoder for memory data bus
US6400594B2 (en) Content addressable memory with potentials of search bit line and/or match line set as intermediate potential between power source potential and ground potential
JPH09128977A (ja) スタティック型ランダムアクセスメモリ
JPH0727716B2 (ja) メモリのデコ−ド・ドライブ回路
EP1461811B1 (en) Low power content addressable memory architecture
JP2004295967A (ja) 連想メモリ
JP4149296B2 (ja) 半導体記憶装置
US20020080665A1 (en) Content addressable memory having data width extension capability
JP2004192695A (ja) 連想メモリ装置
JP2003123484A (ja) Camセル
US6125057A (en) Segmented source memory array
US7248520B2 (en) Semiconductor memory and data read method of the same
US20040223364A1 (en) Content addressable memory architecture providing improved speed
KR20050112988A (ko) 플래시 메모리 장치의 페이지 버퍼 및 이를 이용한 데이터리드 방법
US5894431A (en) Low power output block for large ROM
JP3632113B2 (ja) 連想メモリ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050328

A131 Notification of reasons for refusal

Effective date: 20070703

Free format text: JAPANESE INTERMEDIATE CODE: A131

A02 Decision of refusal

Effective date: 20071030

Free format text: JAPANESE INTERMEDIATE CODE: A02