JP2004295967A - 連想メモリ - Google Patents

連想メモリ Download PDF

Info

Publication number
JP2004295967A
JP2004295967A JP2003084594A JP2003084594A JP2004295967A JP 2004295967 A JP2004295967 A JP 2004295967A JP 2003084594 A JP2003084594 A JP 2003084594A JP 2003084594 A JP2003084594 A JP 2003084594A JP 2004295967 A JP2004295967 A JP 2004295967A
Authority
JP
Japan
Prior art keywords
circuit
match
line
data
comparison
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
JP2003084594A
Other languages
English (en)
Inventor
Ryuichi Hata
竜一 籏
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 JP2003084594A priority Critical patent/JP2004295967A/ja
Publication of JP2004295967A publication Critical patent/JP2004295967A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • G11C15/04Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements

Abstract

【課題】従来よりも少ないトランジスタ数で大小比較機能を実現すると共に、レンジ一致比較機能を備える連想メモリを提供する。
【解決手段】本発明の連想メモリで用いられるCAMセルは、1ビットのデータを記憶する記憶回路と、記憶回路に記憶されたデータと検索データとの一致比較を行う一致比較回路と、記憶回路に記憶されたデータと検索データとの大小比較を行う大小比較回路とを備える。一致比較回路は、第1の一致線と第2の一致線との間に接続され、記憶回路に記憶されたデータと検索データとが一致した場合にオンする第1のトランジスタを備え、大小比較回路は、第1の一致線と大小比較線との間に接続され、記憶回路に記憶されたデータの方が検索データよりも大きいかまたは小さい場合に択一的にオンする第2のトランジスタを備える。
【選択図】図3

Description

【0001】
【発明の属する技術分野】
本発明は、それぞれのワードに記憶されたデータと検索データとの一致比較だけでなく、大小比較およびレンジ一致比較を行うことができる連想メモリに関するものである。
【0002】
【従来の技術】
従来より、それぞれのワードに記憶されたデータと検索データとの一致検索を同時に行い、検索データに一致するデータが記憶されているワードのアドレス、あるいはこれに関連したデータを出力する機能を有する半導体記憶装置として、内容によりデータ検索を行う連想メモリ(内容アドレス式メモリ(Content Addressable Memory):以下、CAMという)がよく知られている。
【0003】
図11は、従来のCAMの一例のブロック図である。同図に示すCAM86は、図中横方向に配列されたmビットのCAMセルからなるn個のワードW_1,W_2,…,W_nと、mビットの検索データを格納する比較レジスタ88と、mビットの検索ビット線ドライバ90と、n個の一致センス回路MSC_1,MSC_2,…,MSC_nと、n個の一致フラグレジスタMFR_1,MFR_2,…,MFR_nと、プライオリティエンコーダPEとを備えている。
【0004】
なお、CAM86は、上記回路に加えて、通常の半導体記憶装置と同様に、それぞれのワードに対してデータの書き込み/読み出しを行うためのデコーダ、mビットのデータビット線ドライバ、センスアンプ等の回路を備えているが、ここでは図面の煩雑さを避けるために省略されている。
【0005】
CAM86では、検索前に、それぞれのワードにデータが記憶される。検索時には、比較レジスタ88にmビットの検索データが格納される。mビットの検索データの各々のビットは、検索ビット線ドライバ90によって各々対応するmビットの検索ビット線上にドライブされる。各々のワードでは、記憶されているmビットのデータと検索ビット線上にそれぞれドライブされたmビットの検索データとの一致検索が同時(並列)に行われ、その検索結果が出力される。
【0006】
各々のワードから出力される検索結果は、一致線ML_1,ML_2,…,ML_nを介して一致センス回路MSC_1,MSC_2,…,MSC_nに入力され、一致センス出力として増幅出力される。
【0007】
各々の一致センス回路から出力される一致センス出力は、一致センス出力線MT_1,MT_2,…,MT_nを介して一致フラグレジスタMFR_1,MFR_2,…,MFR_nに格納され、一致フラグ出力として出力される。
【0008】
各々の一致フラグレジスタから出力される一致フラグ出力は、一致フラグ出力線MF_1,MF_2,…,MF_nを介してプライオリティエンコーダPEに入力される。プライオリティエンコーダPEでは、所定の優先順位付けに従って、一致が検出されたワードの中から最優先順位のワードのアドレス(最優先一致アドレス:HMA)が出力される。
【0009】
例えば、検索の結果、一致フラグレジスタMFR_1,MFR_2,…,MFR_nに、一致フラグとして、それぞれ‘0’,‘1’,‘1’,‘0’,…,‘1’,‘0’が格納された場合を説明する。ここで、一致フラグの‘1’は一致あり、‘0’は一致なしを意味するものとする。また、ワードの優先順位は、W_1が最も高く、W_nに向かうに従って順次優先順位が低くなるものとする。
【0010】
この場合、ワードW_2,W_3,…,W_n−1で一致が検出されているので、ワードW_2のアドレスがHMAとして出力される。また、一致フラグレジスタMFR_2に格納された一致フラグを‘0’にクリアすることにより、その次に優先順位の高いワードW_3に対応するアドレスをHMAとして出力することができる。以下同様にして、一致が検出されたワードのアドレスを順次出力することができる。
【0011】
次に、従来のCAM86で用いられるCAMセルについて説明する。
【0012】
図12は、従来のCAMセルの一例の構成回路図である。同図に示すCAMセル92は不一致検出型のものであり、1ビットのデータを記憶するSRAM構成の記憶回路16と、記憶回路16に記憶された1ビットのデータと検索ビット線対SL,SLN上にドライブされる検索データとを比較し、その一致比較結果を一致線ML上に出力する一致比較回路18とを備えている。
【0013】
一致比較回路18は、3つのN型MOSトランジスタ(以下、NMOSという)94,96,98を備えている。NMOS94,96は、検索ビット線SLNと検索ビット線SLとの間に直列に接続され、そのゲートには、それぞれ記憶回路16のデータDおよび反転データDNが接続されている。また、NMOS98は、一致線MLとグランドとの間に接続され、そのゲートには、NMOS94,96の間のノードが接続されている。
【0014】
CAMセル92では、検索前に、記憶回路16にデータが書き込まれる。記憶回路16へのデータの書き込み/記憶回路16からのデータの読み出しは通常のSRAMの場合と同様にして行われる。
【0015】
検索時には、まず、検索ビット線対SL,SLNが共に‘L(=0)’とされる。一方、記憶回路16に記憶されているデータに応じて、一致比較回路18のNMOS94,96のうちの一方がオン、他方がオフしている。従って、オンしているNMOS94,96のうちの一方を介して両者の間のノードが‘L’となるため、NMOS98はオフする。この状態で、一致線MLは一致の状態を表す‘H(=1)’にプリチャージされる。
【0016】
その後、検索データに応じて、検索ビット線対SL,SLNのどちらか一方が‘H’とされる。記憶回路16に記憶されているデータDと検索データS(以下、検索ビット線SLに供給されるデータを検索データSという)とが一致する場合、NMOS98は、そのゲートが‘L’でありオフを保持するため、一致線MLは‘H’に保持される。一方、記憶回路16に記憶されているデータDと検索データSとが異なる場合、NMOS98は、そのゲートが‘H’になってオンするため、一致線MLはディスチャージされて‘L’になる。
【0017】
mビットのCAMセル92からなるCAMワードの一致線MLは、各CAMセル92のNMOS98がパラレルに接続されたワイヤードOR回路を構成する。従って、1ワードを構成するmビットのCAMセル92の全てにおいて一致が検出された場合に限り、一致線MLは‘H’、すなわち一致の状態に保持される。一方、1ビットでもCAMセル92で不一致が検出されると、一致線MLは‘L’、すなわち不一致の状態となる。
【0018】
図13は、従来のCAMセルの別の例の構成回路図である。同図に示すCAMセル100は一致検出型のものであり、同じくSRAM構成の記憶回路16と、一致比較回路18とを備えている。
【0019】
一致比較回路18は、3つのNMOS30,32,34を備えている。NMOS30,32は、検索ビット線SLと検索ビット線SLNとの間に直列に接続され、そのゲートには、それぞれ記憶回路16のデータDおよび反転データDNが接続されている。また、NMOS34は、一致線ML_aと一致線ML_bとの間に接続され、そのゲートには、NMOS30,32の間のノードが接続されている。
【0020】
CAMセル100では、検索時には、まず検索ビット線対SL,SLNが共に‘H’とされる。一方、記憶回路16に記憶されているデータに応じて、一致比較回路18のNMOS30,32のうちの一方がオン、他方がオフしている。従って、オンしているNMOS30,32のうちの一方を介して両者の間のノードが‘H’となるため、NMOS34はオンする。この状態で、一致線MLは、その一方の端部から不一致の状態である‘H’にプリチャージされる。mビットのCAMセル100からなるCAMワードの一致線MLは、各CAMセル100のNMOS34がシリアルに接続されたAND回路を構成する。従って、各々のCAMセル100の一致線ML_a,ML_bは、各々のCAMセル100のNMOS34を介して‘H’にプリチャージされる。
【0021】
その後、検索データに応じて、検索ビット線対SL,SLNのどちらか一方が‘L’とされる。記憶回路16に記憶されているデータDと検索データSとが一致する場合、NMOS34は、そのゲートが‘H’でありオンを保持する。一方、記憶回路16に記憶されているデータDと検索データSとが異なる場合、NMOS34は、そのゲートが‘L’になってオフする。
【0022】
mビットのCAMセル100からなるCAMワードでは、全てのCAMセル100のNMOS34の状態が確定した後、一致線MLの一方の端部からディスチャージを開始し、他方の端部で一致比較結果を判定する。この時、1ビットでも不一致のCAMセルがある場合には一致比較結果は‘H’、すなわち不一致の状態に保持される。一方、全てのCAMセルで一致が検出された場合にのみ一致比較結果は‘L’、すなわち一致の状態となる。
【0023】
上記の通り、従来のCAM86では、CAMワードに記憶されたデータと検索データとの一致検索を行うことができる。しかし、例えば検索データよりも大きい、あるいは小さい値を持つデータの検索を行う大小比較機能や、レンジ一致比較機能、すなわち記憶されているデータがあるレンジ(範囲)の値を持ち、検索データがこのレンジ内に入る値であるかどうかを検索する機能は備えていない。
【0024】
これに対し、例えば大小比較機能を備えるCAMが特許文献1において提案されている。
【0025】
しかし、特許文献1で提案された大小比較回路は、6〜7トランジスタと、ANDゲートとによって構成されており、ANDゲートが通常6トランジスタで構成されることから、結局1つのCAMセル当たり、記憶回路に加えて12〜13トランジスタを必要としている。このような大小比較回路に多数のトランジスタを必要とする従来技術を用いてCAMを大容量化すると、チップ面積が大きくなりコストアップを招くため、より少ないトランジスタ数で同様の機能を実現することが求められていた。また特許文献2には、大小比較回路を構成するトランジスタの数を大幅に削減したCAMセルが開示されている。しかしその発明においても、記憶回路以外に6トランジスタが必要となり、より少ないトランジスタ数で同様の機能を実現することが求められている。
【0026】
また、特許文献1および2のCAMは、大小比較機能は備えているが、上記レンジ一致比較機能については何ら言及されていない。従って、レンジ一致機能を備えるCAMが求められている。
【0027】
【特許文献1】
特開平1−175029号公報
【特許文献2】
特許第2741810号公報
【0028】
【発明が解決しようとする課題】
本発明の目的は、前記従来技術に基づく問題点を解消し、従来よりも少ないトランジスタ数で大小比較機能を実現すると共に、レンジ一致比較機能を備える連想メモリを提供することにある。
【0029】
【課題を解決するための手段】
上記目的を達成するために、本発明は、1ビットのデータを記憶する記憶回路と、この記憶回路に記憶されたデータと検索データとの一致比較を行う一致比較回路と、前記記憶回路に記憶されたデータと前記検索データとの大小比較を行う大小比較回路とを備え、
前記一致比較回路は、第1の一致線と第2の一致線との間に接続され、前記記憶回路に記憶されたデータと前記検索データとが一致した場合にオンする第1のトランジスタを備え、
前記大小比較回路は、前記第1の一致線と大小比較線との間に接続され、前記記憶回路に記憶されたデータの方が前記検索データよりも大きいかまたは小さい場合に択一的にオンする第2のトランジスタを備えることを特徴とするCAMセルを提供するものである。
【0030】
ここで、前記大小比較回路は、前記第2のトランジスタとして、前記第1の一致線と前記大小比較線との間に直列に接続され、そのゲートに、それぞれ前記記憶回路のデータ出力および反転検索ビット線が接続された第3および第4のトランジスタを備える、もしくは前記第2のトランジスタとして、前記第1の一致線と前記大小比較線との間に直列に接続され、そのゲートに、それぞれ前記記憶回路の反転データ出力および検索ビット線が接続された第3および第4のトランジスタを備えるのが好ましい。
【0031】
また、上記のいずれかに記載のCAMセルにおいて、前記一致比較回路は、検索ビット線と反転検索ビット線との間に直列に接続され、そのゲートに、それぞれ前記記憶回路のデータ出力および反転データ出力が接続された第5および第6のトランジスタと、前記第1の一致線と前記第2の一致線との間に接続され、そのゲートに、前記第5のトランジスタと前記第6のトランジスタとの間のノードが接続された前記第1のトランジスタとを備えるのが好ましい。
【0032】
また、本発明は、請求項1乃至4のいずれかに記載のCAMセルを複数有し、前記複数のCAMセルは、上位ビットのCAMセルの前記第2の一致線が隣接する下位ビットのCAMセルの前記第1の一致線に順次接続され、前記大小比較線が全てのCAMセルで共通に接続されたCAMワードと、
最上位ビットのCAMセルの前記第1の一致線と前記大小比較線に接続され、制御信号に応じて、前記第1の一致線と前記大小比較線を充電し、または前記第1の一致線を放電する充放電回路と、
最下位ビットのCAMセルの前記第2の一致線と前記大小比較線に接続され、それぞれの電位変化をセンスして出力するセンス回路とを備えることを特徴とする1ワード回路を提供する。
【0033】
また、本発明は、上記に記載の複数の1ワード回路と、これら複数の1ワード回路から出力される検索結果に応じて、前記一致比較および大小比較の検索結果を選択的に出力する選択回路と、この選択回路から出力される検索結果に基づいて、所定の優先順位付けに従い、最優先順位の検索結果に対応するワードのアドレスを出力するプライオリティエンコーダとを備え、
前記選択回路は、前記1ワード回路に記憶されたデータと前記検索データとの一致比較の検索結果を出力する一致比較結果の検出回路と、前記1ワード回路に記憶されたデータと前記検索データとの大小比較の検索結果を出力する大小比較結果の検出回路とを備えることを特徴とする連想メモリを提供する。
【0034】
ここで、前記1ワード回路は2ワードを単位として使用され、前記2ワードのうちの一方の1ワード回路にレンジの下限値が記憶され、他方の1ワード回路に前記レンジの上限値が記憶され、
前記選択回路は、前記1ワード回路の2ワードに対して1つずつ設けられ、前記2ワードのうちの一方の1ワード回路に記憶されたレンジの下限値と他方の1ワード回路に記憶されたレンジの上限値から、前記検索データが前記2ワードの1ワード回路で指定されるレンジ内に入る値であるかどうかのレンジ一致比較の検索結果を出力するレンジ一致比較の検出回路を備えるのが好ましい。
【0035】
【発明の実施の形態】
以下に、添付の図面に示す好適実施形態に基づいて、本発明の連想メモリを詳細に説明する。
【0036】
図1は、本発明の連想メモリの一実施形態の構成概略図である。同図に示す連想メモリ(以下、CAMという)10は、n個の1ワード回路W_0,W_1,…,W_n−1と、n個のフラグラッチFL_0,FL_1,…,FL_n−1と、連続する2つの1ワード回路に対して1つずつ設けられたn/2個の選択回路SC_0,SC_2,…,SC_n−2と、プライオリティエンコーダPEとを備えている。
【0037】
各々の1ワード回路は、図2に示すように、充放電回路12と、mビットのCAMセルC_0,C_1,…,C_m−1と、センス回路14とを備えている。
【0038】
図3は、本発明によるCAMセルの一実施形態の構成回路図である。同図に示すCAMセルは一致検出型のCAMセルであり、1ビットのデータを記憶する記憶回路16と、記憶回路16に記憶された1ビットのデータと検索ビット線SL上にドライブされる検索データとの一致比較を行う一致比較回路18と、記憶回路16に記憶された1ビットのデータと検索データとの大小比較を行う大小比較回路20とを備えている。
【0039】
記憶回路16はSRAM構成のものであり、互いに一方の出力が他方の入力に入力された2つのインバータ22,24と、それぞれデータビット線対BL,BLNと2つのインバータ22,24の入力との間に接続され、そのゲートがワード線WLに共通に接続された2つのNMOS26,28とを備えている。SRAMの構成は従来公知であるから、ここではその説明は省略する。
【0040】
なお、記憶回路16としては、1ビットのデータを記憶するものであれば、従来公知のメモリセルがいずれも利用可能である。また、記憶回路16のデータの書き込み/読み出しに係る回路も従来公知のものがいずれも利用可能である。
【0041】
一致比較回路18は、図13に示す従来のCAMセル100と同じものであり、3つのNMOS30,32,34を備えている。なお、一致比較回路18としては、記憶回路16に記憶されたデータDと検索データSとが一致した場合にオンして一致線ML_aと一致線ML_bとを導通させ、不一致の場合にオフして非導通とさせるトランジスタを備えるものであれば、どのような回路構成のものも利用可能である。また、トランジスタは、NMOSに限らず、PMOSを使用してもよいし、NMOSとPMOSを組み合わせて使用してもよい。
【0042】
大小比較回路20は、2つのNMOS36,38を備えている。これら2つのNMOS36,38は、一致線ML_aと大小比較線GLとの間に直列に接続され、そのゲートには、それぞれ記憶回路16のデータD、および検索ビット線SLNが接続されている。
【0043】
なお、大小比較回路20としては、記憶回路16に記憶されたデータDの方が検索データSよりも大きい場合にオンして一致線ML_aと大小比較線GLとを導通させ、一致あるいは小さい(D=S or D<S)場合にオフして非導通とさせるトランジスタを備えるものであれば、どのような回路構成のものも利用可能である。同様に、トランジスタはNMOSを使用しても、PMOSを使用しても、両者を組み合わせて使用してもよい。
【0044】
図3に示すCAMセルでは、検索に先立って、まず、検索ビット線SL,SLNが‘H’とされ、一致比較回路18のNMOS34がオンとされ、この状態で一致線ML_a,ML_bが‘H’にプリチャージされる。また、大小比較線GLも後述する充放電回路12により‘H’にプリチャージされる。その後、検索データに応じて、検索ビット線SL,SLNの一方が‘L’とされる。
【0045】
一致比較回路18の動作は、図13に示す従来のCAMセル100の場合と同じである。
【0046】
大小比較回路20では、記憶回路16に記憶されたデータDと検索データSとが同じ場合、すなわちデータDおよび検索データSの両方が‘1’の場合、または両方が‘0’の場合にはNMOS36,38の一方がオン、他方がオフし、一致線ML_aと大小比較線GLは非導通状態となる。この場合、大小比較線GLは初期状態の‘H’を保持する。
【0047】
また、データDの方が検索データSよりも大きい場合、すなわちデータDが‘1’で、検索データSが‘0’の場合、大小比較回路20のNMOS36,38は両方ともオンし、一致線ML_aと大小比較線GLは導通状態となる。この場合、検索時に、後述する充放電回路12によって一致線MLがディスチャージされると、大小比較線GLは‘L’となる。
【0048】
一方、データDよりも検索データSの方が大きい場合、すなわちデータDが‘0’で、検索データSが‘1’の場合、大小比較回路20のNMOS36,38は両方ともオフし、一致線ML_aと大小比較線GLは非導通状態となる。この場合、大小比較線GLは初期状態の‘H’を保持する。
【0049】
図3の回路ではデータDの方が検索データSよりも大きい場合に、一致線ML_aと大小比較線GLが導通状態となるが、反対に、データDの方が検索データSよりも小さい場合に導通状態にするには、NMOS36のゲートを記憶回路16の反転データ出力DNに接続し、NMOS38のゲートを検索ビット線SLに接続すればよい。また図3では検索ビット線対SL,SLNとデータビット線対BL,BLNは別々に配設されているが、これらは共用されていてもよい。すなわち、SLとBLとが1本の線、SLNとBLNとが1本の線とされていてもよい。
【0050】
mビットのデータの値は、全てのCAMセルでデータDと検索データSとの一致が検出されれば、両者の値は一致となる。また、両者が不一致のCAMセルが存在する場合、その中で最上位のCAMセルにおいて、データDの方が検索データSよりも大きい場合、mビットデータは検索データよりも大きいということになり、逆にデータDよりも検索データSの方が大きい場合、検索データの方がmビットデータよりも大きいということになる。
【0051】
図4は、充放電回路の一実施形態の構成回路図である。同図に示す充放電回路12は、電源と一致線MLとの間に接続されたPMOS40と、一致線MLとグランドとの間に接続されたNMOS42と、電源と大小比較線GLとの間に接続されたPMOS44とを備えている。これらのPMOS40、NMOS42およびPMOS44のゲートには信号SEが共通に接続されている。
【0052】
充放電回路12では、検索前に、信号SEが‘L’とされる。これにより、PMOS40,44がオン、NMOS42がオフし、一致線MLおよび大小比較線GLは‘H’にプリチャージされる。検索時には、一致比較回路18および大小比較回路20の状態が確定した後、信号SEが‘H’とされる。これにより、大小比較線GLのプリチャージは停止され、図2中左端からNMOS42を介して一致線ML_mがディスチャージされる。
【0053】
図5は、センス回路の一実施形態の構成回路図である。同図に示すセンス回路14は、一致線MLのセンス回路46と、大小比較線GLのセンス回路54とを備えている。
【0054】
一致線MLのセンス回路46は、一致線MLと一致センス出力線MTとの間に直列に接続された2つのインバータ48,50と、電源と一致線MLとの間に接続されたPMOS52とを備えている。PMOS52のゲートには、インバータ46の出力が接続されている。同様に、大小比較線GLのセンス回路54は、大小比較線GLと大小比較センス出力線GTとの間に直列に接続された2つのインバータ56,58と、電源と大小比較線GLとの間に接続されたPMOS60とを備えている。PMOS60のゲートには、インバータ56の出力が接続されている。
【0055】
一致線MLのセンス回路46では、検索前に、前述のように、充放電回路12によって一致線MLが‘H’にプリチャージされると、インバータ48の出力が‘L’となり、PMOS52がオンする。これにより、一致線MLは、PMOS52によっても‘H’にプリチャージされる。また、インバータ50の出力、すなわち一致センス出力線MT上に出力される信号は、不一致の状態を表す‘H’となる。
【0056】
検索時に、充放電回路12によって一致線MLがディスチャージされ、1ワード回路を構成するmビットのCAMセルの記憶データが、各々対応する検索データと一致することにより図2中右端の一致線ML_0が‘L’になると、インバータ48の出力は‘H’となり、PMOS52がオフする。また、一致センス出力線MT上に出力される信号は、一致の状態を表す‘L’となる。
【0057】
大小比較線GLのセンス回路54の検索前の動作は一致線MLのセンス回路46の場合と同じである。データDの方が検索データSよりも大きい場合、大小比較線GLはディスチャージされ‘L’となり、大小比較センス出力線GT上に出力される信号はD>Sの状態を示す‘L’となる。
【0058】
なお、充放電回路12およびセンス回路14は、一致線MLおよび大小比較線GLの極性が逆の場合には、図6に示す充放電回路61および図7に示すセンス回路62を使用することができる。また、充放電回路12およびセンス回路14は図示例のものに限定されるわけではなく、同様の機能を実現する他の回路構成のものを使用することが可能である。
【0059】
図2では、充放電回路12とCAMセルC_m−1とを接続する一致線をML_mとし、以下順に、CAMセルC_i+1とCAMセルC_iとを接続する一致線をML_i+1(m−2≧i≧0)とし、CAMセルC_0とセンス回路14とを接続する一致線をML_0としてある。
【0060】
すなわち、1ワード回路の一致線MLは、各々のCAMセルの一致比較回路18のNMOS34を介してシリアルに接続されたAND回路を構成し、図2中左側の端部は充放電回路12に接続され、右側の端部はセンス回路14に接続されている。また、大小比較線GLは、充放電回路12とセンス回路14との間に接続される。
【0061】
1ワード回路では、検索前に、各々のCAMセルの記憶回路16にデータが書き込まれる。記憶回路16へのデータの書き込み/記憶回路16からのデータの読み出しは通常のSRAMの場合と同様にして行われる。
【0062】
検索時には、まず検索ビット線対SL,SLNが共に‘H’とされ、一致比較回路18のNMOS34がオンとされる。そして、一致線MLおよび大小比較線GLは、充放電回路12により、図中左側の端部からプリチャージされる。前述の通り、mビットのCAMセルからなるCAMワードの一致線MLは、各CAMセルのNMOS34がシリアルに接続されたAND回路を構成するため、各々のCAMセルの一致線ML_a,ML_bは、各々のCAMセルのNMOS34を介して不一致の状態を表す‘H’にプリチャージされる。
【0063】
その後、検索データに応じて、検索ビット線対SL,SLNのどちらか一方が‘L’とされる。
【0064】
各々のCAMセルの一致比較回路18では、記憶回路16に記憶されているデータと検索データとが一致する場合、NMOS34は、そのゲートが‘H’でありオンを保持する。一方、記憶回路16に記憶されているデータと検索データとが異なる場合、NMOS34は、そのゲートが‘L’になってオフする。
【0065】
また、大小比較回路20では、前述の通り、記憶回路16に記憶されたデータDと検索データSとが一致する場合には、一致線ML_aと大小比較線GLは非導通状態となる。また、データDの方が検索データSよりも大きい場合には、一致線ML_aと大小比較線GLは導通状態となり、データDよりも検索データSの方が大きい場合には、一致線ML_aと大小比較線GLは非導通状態となる。
【0066】
mビットのCAMセルからなる1ワード回路では、全てのCAMセルの状態が確定した後、一致線MLが充放電回路12によってディスチャージされ、センス回路14によって一致比較結果および大小比較結果が判定される。
【0067】
1ビットでも不一致のCAMセルがある場合には、一致線MLのセンス回路46に接続された一致線ML_0はディスチャージされず、‘H’に保持される。このため、図8の表に示すように、一致線MLのセンス回路46から一致センス出力線MT上に出力される一致比較結果MTは‘H’、すなわち不一致の状態に保持される。一方、全てのCAMセルで一致が検出された場合には一致比較結果MTは‘L’、すなわち一致の状態となる。
【0068】
また、同じく図8の表に示すように、1ワード回路のCAMセルCi(m−1≧i≧0)の記憶回路16に記憶されたデータDiと対応する検索データSiとが完全に一致した場合、大小比較線GLのセンス回路54から大小センス出力線GT上に出力される大小比較結果GTは、‘H’となる。また、記憶回路16に記憶されたデータDiの方が検索データSiよりも大きい場合、大小比較結果GTは‘L’となり、検索データSの方が記憶回路16に記憶されたデータDよりも大きい場合、大小比較結果GTは‘H’となる。
【0069】
各々の1ワード回路から一致センス出力線MT上に出力された一致比較結果および大小センス出力線GT上に出力された大小比較結果は、それぞれ対応するフラグラッチFL_0,FL_1,…,FL_n−1にラッチされた後、2ワードを単位として、各々対応する選択回路SC_0,SC_2,…,SC_n−2に入力される。
【0070】
図9は、選択回路の一実施形態の構成回路図である。同図に示す選択回路SC_0は、2つの1ワード回路W_0,W_1に対応して設けられたもので、5つのANDゲート64,66,68,70,72と、2つのインバータ74,76と、2つのマルチプレクサ78,80とを備えている。以下、この選択回路SC_0を例に挙げて説明するが、他の選択回路についても同様である。
【0071】
ANDゲート64には、その反転入力に信号MFO_0が入力され、通常入力には信号GFO_0が接続されている。また、ANDゲート66には信号MFO_0および信号GFO_0が入力され、インバータ74には信号GFO_0が入力されている。同様に、ANDゲート68には、その反転入力に信号MFO_1が入力され、通常入力には信号GFO_1が接続されている。また、ANDゲート70には信号MFO_1および信号GFO_1が入力され、インバータ76には信号GFO_1が入力されている。
【0072】
また、ANDゲート72には、その反転入力にインバータ74の出力が入力され、通常入力にはインバータ76の出力が入力されている。
【0073】
また、マルチプレクサ78の4つの入力には、ANDゲート64,66,72の出力およびインバータ74の出力が入力され、その選択入力には検索モード信号が入力されている。同様に、マルチプレクサ80の3つの入力には、ANDゲート68,70の出力およびインバータ76の出力が入力され、その選択入力には検索モード信号が入力されている。なお、マルチプレクサ80の1つの入力はグランドに接続されている。
【0074】
選択回路SC_0では、検索モード信号として、一致比較結果を出力するための‘S=D’を示す信号が与えられると、マルチプレクサ78,80からは、信号HF_0,HF_1として、それぞれANDゲート64,68の出力である信号M_0,M_1が出力される。ANDゲート64,68は、一致比較結果の検出回路であり、例えば信号M_0を例に挙げて説明すると、信号M_0が‘H’の時、すなわち信号MFO_0が‘L’かつ信号GFO_0が‘H’の時はS=Dであることを表し、信号M_0が‘L’の時、すなわち信号MFO_0が‘H’または信号GFO_0が‘L’の時はS=Dではないことを表す。
【0075】
また、検索モード信号として、大小比較結果を出力するための‘S>D’を示す信号が与えられると、マルチプレクサ78,80からは、それぞれANDゲート66,70の出力である信号L_0,L_1が出力される。ANDゲート66,70は大小比較結果の検出回路であり、同様に信号L_0を例に挙げて説明すると、信号L_0が‘H’の時、すなわち信号MFO_0および信号GFO_0が共に‘H’の時はS>Dであることを表し、信号L_0が‘L’の時、すなわち信号MFO_0または信号GFO_0が‘L’の時はS>Dではないことを表す。
【0076】
同様に、検索モード信号として、大小比較結果を出力するための‘S<D’を示す信号が与えられると、マルチプレクサ78,80からは、それぞれインバータ74,76の出力である信号G_0,G_1が出力される。インバータ74,76も大小比較結果の検出回路であり、同様に信号G_0を例に挙げて説明すると、信号G_0が‘H’の時、すなわち信号GFO_0が‘L’の時はS<Dであることを表し、信号G_0が‘L’の時、すなわち信号GFO_0が‘H’の時はS<Dではないことを表す。
【0077】
また、検索モード信号として、レンジ一致比較結果を出力するための‘Da≦S<Db’を示す信号が与えられると、マルチプレクサ78からは、ANDゲート72の出力である信号R_0が出力される。なお、マルチプレクサ80の出力は常に‘L’となる。
【0078】
レンジ一致比較検索を行う場合、ペアとなる2ワードのうちの上位側の1ワード回路W_0にレンジの下限値Daが記憶され、下位側の1ワード回路W_1にレンジの上限値Dbが記憶される。
【0079】
ANDゲート72はレンジ一致比較結果の検出回路であり、信号R_0が‘H’の時、すなわち信号GFO_0が‘H’かつ信号GFO_1が‘L’の時はDa≦S<Dbであることを表し、信号R_0が‘L’の時、すなわち信号GFO_0が‘L’または信号GFO_1が‘H’の時はDa≦S<Dbではないことを表す。
【0080】
なお、レンジ一致比較結果の検出回路として、例えば図10(A)に示すNORゲート82を使用すれば、Da≦S≦Dbを検出することができるし、同図(B)に示すANDゲート84を使用すれば、Da<S<Dbを検出することができる。また、レンジ一致比較結果の検出回路は、図9および図10に示す回路に限定されるわけではなく、同様の機能を実現する他の回路によって構成することが可能である。
【0081】
各々の選択回路から検索結果線HF_0,HF_1,…,HF_n−1上に出力される検索結果は、全てプライオリティエンコーダPEに入力される。プライオリティエンコーダPEでは、所定の優先順位付けに従って、最優先順位の検索結果に対応するワードのアドレスHMAが出力される。
【0082】
上記の通り、CAM10では、記憶されたデータDと検索データSとの一致比較検索はもちろん、両者の大小比較検索およびレンジ一致比較検索を行うことができる。また、CAMセルは、記憶回路16に加えて、僅かに5トランジスタで構成されるので、従来よりも少ないトランジスタ数で大小比較機能を実現することができる。また、大容量化した場合であってもチップ面積を小さくすることができるため、コストを削減することができる。
【0083】
なお、CAMに含まれる1ワード回路のワード数や、1ワードに含まれるCAMセルのビット数は何ら制限されない。また、各信号の極性は適宜変更してもよく、各回路の構成は、各信号の極性に応じて適宜設計されるべきものである。また、実施形態のように、一致比較機能に加えて、大小比較機能とレンジ一致比較機能の両方を同時に備えていてもよいが、例えば大小比較機能だけを備えていても良いし、レンジ一致比較機能だけを備えていても良い。
【0084】
本発明は、基本的に以上のようなものである。
以上、本発明の連想メモリについて詳細に説明したが、本発明は上記実施形態に限定されず、本発明の主旨を逸脱しない範囲において、種々の改良や変更をしてもよいのはもちろんである。
【0085】
【発明の効果】
以上詳細に説明した様に、本発明の連想メモリによれば、従来よりも少ないトランジスタ数で、記憶されたデータと検索データとの大小比較検索を行うことができる。従って、大容量化した場合であってもチップ面積を小さくすることができるため、コストを削減することができる。また、本発明の連想メモリでは、2ワードの1ワード回路を単位として使用し、一方の1ワード回路にレンジの下限値、他方の1ワード回路にレンジの上限値を記憶させて検索を行い、記憶されたデータと検索データとのレンジ一致比較検索を行うことも可能である。
【図面の簡単な説明】
【図1】本発明の連想メモリの一実施形態の構成概略図である。
【図2】1ワード回路の一実施形態の構成概略図である。
【図3】CAMセルの一実施形態の構成回路図である。
【図4】充放電回路の一実施形態の構成回路図である。
【図5】センス回路の一実施形態の構成回路図である。
【図6】充放電回路の別の実施形態の構成回路図である。
【図7】センス回路の別の実施形態の構成回路図である。
【図8】図2に示す1ワード回路における比較結果を表す表である。
【図9】選択回路の一実施形態の構成回路図である。
【図10】(A)および(B)は、いずれもレンジ一致比較結果の検出回路の別の実施形態の構成回路図である。
【図11】従来の連想メモリの一例の構成概略図である。
【図12】従来のCAMセルの一例の構成回路図である。
【図13】従来のCAMセルの別の例の構成回路図である。
【符号の説明】
10,86 連想メモリ
12,61 充放電回路
14,46,54,62 センス回路
16 記憶回路
18 一致比較回路
20 大小比較回路
22,24,48,50,56,58,74,76 インバータ
26,28,30,32,34,36,38,42,94,96,98 N型MOSトランジスタ
40,44,52,60 P型MOSトランジスタ
64,66,68,70,72,84 ANDゲート
78,80 マルチプレクサ
82 NORゲート
88 比較レジスタ
90 検索ビット線ドライバ
92,100 CAMセル
W 1ワード回路
C CAMセル
MSC 一致センス回路
MFR 一致フラグレジスタ
FL フラグラッチ
SC 選択回路
PE プライオリティエンコーダ

Claims (7)

  1. 1ビットのデータを記憶する記憶回路と、この記憶回路に記憶されたデータと検索データとの一致比較を行う一致比較回路と、前記記憶回路に記憶されたデータと前記検索データとの大小比較を行う大小比較回路とを備え、
    前記一致比較回路は、第1の一致線と第2の一致線との間に接続され、前記記憶回路に記憶されたデータと前記検索データとが一致した場合にオンする第1のトランジスタを備え、
    前記大小比較回路は、前記第1の一致線と大小比較線との間に接続され、前記記憶回路に記憶されたデータの方が前記検索データよりも大きいかまたは小さい場合に択一的にオンする第2のトランジスタを備えることを特徴とするCAMセル。
  2. 前記大小比較回路は、前記第2のトランジスタとして、前記第1の一致線と前記大小比較線との間に直列に接続され、そのゲートに、それぞれ前記記憶回路のデータ出力および反転検索ビット線が接続された第3および第4のトランジスタを備える請求項1に記載のCAMセル。
  3. 前記大小比較回路は、前記第2のトランジスタとして、前記第1の一致線と前記大小比較線との間に直列に接続され、そのゲートに、それぞれ前記記憶回路の反転データ出力および検索ビット線が接続された第3および第4のトランジスタを備える請求項1に記載のCAMセル。
  4. 請求項1乃至3のいずれかに記載のCAMセルにおいて、前記一致比較回路は、検索ビット線と反転検索ビット線との間に直列に接続され、そのゲートに、それぞれ前記記憶回路のデータ出力および反転データ出力が接続された第5および第6のトランジスタと、前記第1の一致線と前記第2の一致線との間に接続され、そのゲートに、前記第5のトランジスタと前記第6のトランジスタとの間のノードが接続された前記第1のトランジスタとを備えるCAMセル。
  5. 請求項1乃至4のいずれかに記載のCAMセルを複数有し、前記複数のCAMセルは、上位ビットのCAMセルの前記第2の一致線が隣接する下位ビットのCAMセルの前記第1の一致線に順次接続され、前記大小比較線が全てのCAMセルで共通に接続されたCAMワードと、
    最上位ビットのCAMセルの前記第1の一致線と前記大小比較線に接続され、制御信号に応じて、前記第1の一致線と前記大小比較線を充電し、または前記第1の一致線を放電する充放電回路と、
    最下位ビットのCAMセルの前記第2の一致線と前記大小比較線に接続され、それぞれの電位変化をセンスして出力するセンス回路とを備えることを特徴とする1ワード回路。
  6. 請求項5に記載の複数の1ワード回路と、これら複数の1ワード回路から出力される検索結果に応じて、前記一致比較および大小比較の検索結果を選択的に出力する選択回路と、この選択回路から出力される検索結果に基づいて、所定の優先順位付けに従い、最優先順位の検索結果に対応するワードのアドレスを出力するプライオリティエンコーダとを備え、
    前記選択回路は、前記1ワード回路に記憶されたデータと前記検索データとの一致比較の検索結果を出力する一致比較結果の検出回路と、前記1ワード回路に記憶されたデータと前記検索データとの大小比較の検索結果を出力する大小比較結果の検出回路とを備えることを特徴とする連想メモリ。
  7. 前記1ワード回路は2ワードを単位として使用され、前記2ワードのうちの一方の1ワード回路にレンジの下限値が記憶され、他方の1ワード回路に前記レンジの上限値が記憶され、
    前記選択回路は、前記1ワード回路の2ワードに対して1つずつ設けられ、前記2ワードのうちの一方の1ワード回路に記憶されたレンジの下限値と他方の1ワード回路に記憶されたレンジの上限値から、前記検索データが前記2ワードの1ワード回路で指定されるレンジ内に入る値であるかどうかのレンジ一致比較の検索結果を出力するレンジ一致比較の検出回路を備える請求項6に記載の連想メモリ。
JP2003084594A 2003-03-26 2003-03-26 連想メモリ Pending JP2004295967A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003084594A JP2004295967A (ja) 2003-03-26 2003-03-26 連想メモリ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003084594A JP2004295967A (ja) 2003-03-26 2003-03-26 連想メモリ

Publications (1)

Publication Number Publication Date
JP2004295967A true JP2004295967A (ja) 2004-10-21

Family

ID=33399735

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003084594A Pending JP2004295967A (ja) 2003-03-26 2003-03-26 連想メモリ

Country Status (1)

Country Link
JP (1) JP2004295967A (ja)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005129218A (ja) * 2003-10-21 2005-05-19 Stmicroelectronics Inc マグニチュード内容参照可能メモリ
JP2009525561A (ja) * 2006-02-03 2009-07-09 グローネット システムズ インコーポレーテッド 範囲マッチングセル及びこれを用いたcam
US7894227B2 (en) 2008-02-13 2011-02-22 Renesas Electronics Corporation Content addressable memory
KR101155120B1 (ko) 2010-10-04 2012-06-12 경희대학교 산학협력단 데이터 손실을 최소화하는 바이너리 내용 주소화 메모리
US8285922B2 (en) 2006-03-31 2012-10-09 Kyushu Institute Of Technology Address generator using LUT cascade logic network
KR20120137263A (ko) 2011-06-09 2012-12-20 가부시키가이샤 한도오따이 에네루기 켄큐쇼 기억 장치
US8352677B2 (en) 2006-03-31 2013-01-08 Kyushu Institute Of Technology Associative memory
CN103778957A (zh) * 2014-01-30 2014-05-07 大连理工大学 一种区间匹配cam单元电路及其组成的rcam存储器
US8897049B2 (en) 2011-05-13 2014-11-25 Semiconductor Energy Laboratories Co., Ltd. Semiconductor device and memory device including semiconductor device
US9230648B2 (en) 2011-04-15 2016-01-05 Semiconductor Energy Laboratory Co., Ltd. Memory device
KR101747253B1 (ko) 2016-07-15 2017-06-14 경희대학교 산학협력단 터너리 내용 주소화 메모리의 저장 셀 및 이를 포함하는 터너리 내용 주소화 메모리
US9859268B2 (en) 2011-05-17 2018-01-02 Semiconductor Energy Laboratory Co., Ltd. Content addressable memory
US9865350B2 (en) 2014-08-21 2018-01-09 Meiji University Content addressable memory, an index generator, and a registered information update method
US10242124B2 (en) 2014-05-26 2019-03-26 Renesas Electronics Corporation Content addressable memory and semiconductor device

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005129218A (ja) * 2003-10-21 2005-05-19 Stmicroelectronics Inc マグニチュード内容参照可能メモリ
JP2009525561A (ja) * 2006-02-03 2009-07-09 グローネット システムズ インコーポレーテッド 範囲マッチングセル及びこれを用いたcam
US8285922B2 (en) 2006-03-31 2012-10-09 Kyushu Institute Of Technology Address generator using LUT cascade logic network
US8352677B2 (en) 2006-03-31 2013-01-08 Kyushu Institute Of Technology Associative memory
US7894227B2 (en) 2008-02-13 2011-02-22 Renesas Electronics Corporation Content addressable memory
US8284582B2 (en) 2008-02-13 2012-10-09 Renesas Electronics Corporation Content addressable memory
US8564998B2 (en) 2008-02-13 2013-10-22 Renesas Electronic Corporation Content addressable memory
KR101155120B1 (ko) 2010-10-04 2012-06-12 경희대학교 산학협력단 데이터 손실을 최소화하는 바이너리 내용 주소화 메모리
US9230648B2 (en) 2011-04-15 2016-01-05 Semiconductor Energy Laboratory Co., Ltd. Memory device
US8897049B2 (en) 2011-05-13 2014-11-25 Semiconductor Energy Laboratories Co., Ltd. Semiconductor device and memory device including semiconductor device
US9859268B2 (en) 2011-05-17 2018-01-02 Semiconductor Energy Laboratory Co., Ltd. Content addressable memory
US8958231B2 (en) 2011-06-09 2015-02-17 Semiconductor Energy Laboratory Co., Ltd. Memory device including first to seventh transistors
US9105313B2 (en) 2011-06-09 2015-08-11 Semiconductor Energy Laboratory Co., Ltd. Memory device
KR20120137263A (ko) 2011-06-09 2012-12-20 가부시키가이샤 한도오따이 에네루기 켄큐쇼 기억 장치
CN103778957A (zh) * 2014-01-30 2014-05-07 大连理工大学 一种区间匹配cam单元电路及其组成的rcam存储器
US10242124B2 (en) 2014-05-26 2019-03-26 Renesas Electronics Corporation Content addressable memory and semiconductor device
US10891337B2 (en) 2014-05-26 2021-01-12 Renesas Electronics Corporation Content addressable memory and semiconductor device
US9865350B2 (en) 2014-08-21 2018-01-09 Meiji University Content addressable memory, an index generator, and a registered information update method
KR101747253B1 (ko) 2016-07-15 2017-06-14 경희대학교 산학협력단 터너리 내용 주소화 메모리의 저장 셀 및 이를 포함하는 터너리 내용 주소화 메모리
WO2018012740A1 (ko) * 2016-07-15 2018-01-18 경희대학교 산학협력단 터너리 내용 주소화 메모리의 저장 셀 및 이를 포함하는 터너리 내용 주소화 메모리

Similar Documents

Publication Publication Date Title
US8462532B1 (en) Fast quaternary content addressable memory cell
US6934796B1 (en) Content addressable memory with hashing function
US8582338B1 (en) Ternary content addressable memory cell having single transistor pull-down stack
US6191969B1 (en) Selective match line discharging in a partitioned content addressable memory array
US6768659B2 (en) Circuit and method for reducing power usage in a content addressable memory
US6744688B2 (en) Searchline control circuit and power reduction method
CA2384039C (en) Low power content addressable memory architecture
KR101557883B1 (ko) 터너리 컨텐츠 어드레스가능 메모리(tcam)를 위한 정적 nand 셀
US8625320B1 (en) Quaternary content addressable memory cell having one transistor pull-down stack
US9019737B2 (en) Power savings in a content addressable memory device using masked pre-compare operations
US8553441B1 (en) Ternary content addressable memory cell having two transistor pull-down stack
JP2004295967A (ja) 連想メモリ
US7525867B2 (en) Storage circuit and method therefor
US6867989B1 (en) Auto read content addressable memory cell and array
EP1461811A1 (en) Low power content addressable memory architecture
WO2010050282A1 (ja) パラレル連想メモリ
US8493763B1 (en) Self-timed match line cascading in a partitioned content addressable memory array
WO2010050283A1 (ja) メモリセル及びそれを用いた連想記憶装置
JP6854832B2 (ja) 効率的な比較演算
US8773880B2 (en) Content addressable memory array having virtual ground nodes
JP2004110887A (ja) 半導体装置のデータ読出回路およびデータ読出方法
JP4850403B2 (ja) マグニチュード内容参照可能メモリ
US8787059B1 (en) Cascaded content addressable memory array having multiple row segment activation
KR20030039989A (ko) 연상 메모리 및 그 메모리 셀
EP1271548B1 (en) Associative memory with AND gate match signal combining circuitry

Legal Events

Date Code Title Description
A621 Written request for application examination

Effective date: 20060217

Free format text: JAPANESE INTERMEDIATE CODE: A621

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080401

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080722