東海大学紀要情報通信学部
vol.3,No1,2010,pp.14-18
東海大学紀要工学研究科
Vol. , No. , XXXX, pp. -論文
ニューロン CMOS インバータを用いた
高速 NAND 型 CAM の検索動作特性
小林貴裕 *1，吉田正廣 *2Retrieval Operating Characteristics of a High Speed NAND Type CAM Using
Neuron CMOS Inverters
byTakahiro KOBAYASHI*1 and Masahiro YOSHIDA*2(received on March 26, 2010 & accepted on June 30, 2010)

Abstract
In content addressable memory (CAM), large amounts of stored data are compared with an input data in parallel, and thecontents and/or the addresses of any matches are then output. Such lookup capability is useful in many applications, including
cache tag tables, image pattern recognition, packet switching in communication networks and hardware data base accelerators.
We have previously proposed a high speed NAND type CAM using neuron CMOS inverters. In this paper, we examine in detail
retrieval operating characteristics of the proposed CAM and the conventional NAND type CAM by HSPICE simulations. The
results show that the proposed CAM can retrieve faster than the conventional CAM even if the number of bits in a word increases.
Keywords: Neuron CMOS Inverter, Content Addressable Memory, Retrieval Speed, CAM
キーワード：ニューロン CMOS インバータ，内容照合メモリ，検索速度，CAM

１．まえがきCAM(Content Addressable Memory)は，記憶データと検索データを完全並列に照合し，それらの間に一定の関係がある記憶データを読み出す機能を有している．このため CAM
は，テータベースマシン，画像処理装置，通信ネットワー
ク，キャッシュメモリ等の重要な構成要素として研究開発が進められている[1]～[3]．今日広く用いられている CAM
は，検索データと記憶データを照合する検索回路部が NOR構造のものである（以下では NOR・CAM と略記する）．
この NOR・CAM は，検索速度は速いが消費電力が大きい問題がある．この問題点を改善したものとして，検索回路部を NAND 構造にした CAM が提案されている（以下ではNAND・CAM と略記する）．しかし，この NAND・CAM
は NOR・CAM よりも消費電力は極めて小さいが，1 ワードを構成するビット数が増加するほど検索速度が遅くなる問題がある[4]．このような背景から，筆者らは，従来のNAND・CAM よりも検索速度の速いニューロン CMOS インバータ(以下では νCMOS インバータと略記する)を用いた新しい CAM を提案した（以下では νCMOS ・CAM と略記する）[5]．本文では，筆者らが提案した νCMOS ・CAMの検索動作を理論的に明らかにする．また，NOR・CAM，
NAND・CAM 及び νCMOS ・CAM の検索速度と消費電力を HSPICE を用いたシミュレーションによって詳細に検討し、提案 CAM の有用性を示す．

２．従来 CAM の構成と問題点*1 工学研究科情報通信制御システム工学専攻修士課程*2 情報通信学部組込みソフトウェア工学科教授

―
1 −―
− 14

図1

NOR・CAM の構成

図 1 に従来の NOR・CAM の 1 ワードの構成を示す．ただし，1 ワードは m(m≧1)ビットとする．この CAM は CAM
セルアレイ，検索回路部を構成するプルダウン nMOS トランジスタ(n1，n2，・・・，nm)，プルアップ pMOS トラン
ジスタ p1，プリチャージキャパシタ CML から成る．ここでWL はワード選択線，BL，BR は各ビットのビット選択線である（以下同様）．
この NOR・CAM の場合には，記憶データと検索データ

小林貴裕・吉田正廣

偶数ヘッダーの間に 1 ビット以上の不一致があると n1～nm のいずれかが導通し，CML に蓄えられた電荷が放電される．一方，記憶データと検索データが完全に一致している場合には，n1～nm が全て非導通になるために CML に蓄えられた電荷は保持される．一般に，検索データと記憶データが“不一致であるワード数”は“一致であるワード数”より圧倒的に多くなる．したがって，この CAM の場合にはワード数の増加とともに消費電力が大きくなる欠点がある．しかし，このNOR・CAM の場合には n1～nm が並列接続されているため，1 ワードを構成するビット数が増えても検索速度が増加しないという利点がある．
図 2 は NOR・CAM の消費電力の問題を改善した NAND・CAM の構成図である．この CAM の場合には検索回路部のプルダウン用トランジスタ n1～nm が直列接続されている．

ッチ回路とその制御回路から構成される．同図中 V1 ，
V2,・・・，Vm (m は 1 ワードのビット数)は検索データと記憶データの EXNOR に対応する電圧，VOUT はラッチ回路の出力電圧，VSW，VCUT は νCMOS インバータとラッチ回路の制御電圧である．さらに，C1，C2，・・・，Cm は EXNOR
出力端子とフローティングゲート間の容量，CAGR はアースとフローティングゲート間の容量，COUT はラッチ回路の出力端子の寄生容量である．

図3

図2

NAND・CAM

この NAND・CAM の場合には記憶データと検索データが完全一致した場合のみ n1～nm が導通し，CML に蓄えられている電荷が放電する．そのため，この CAM の消費電力は極めて小さいという特徴がある．しかし，この CAM の場合には CML に蓄えられていた電荷が，直列接続されたプルダウン用トランジスタ n1～nm を介して放電するため，ビット数 m の増加と共に検索速度が遅くなる欠点がある．
また，この CAM にはチャージ分割という問題が生じる場合がある．すなわち，記憶データと検索データが完全一致でない場合，CML に近いプルダウン用 nMOS トランジス
タが導通状態になると，CML に蓄えられた電荷が導通した
nMOS トランジスタのドレイン容量，ソース容量，配線容量によって分割されるために CML の端子間電圧が低下し，誤動作の原因になることがある．

３．提案 CAM の構成と検索動作

提案 νCMOS ・CAM

以下の解析では，図 3 中の節点 t1 の電圧が 0[V]，節点 t2の電圧が VDD[V]の場合，CAM セルの記憶データを“0”とし，電圧関係がその逆の場合，CAM セルの記憶データを“1”と定義する．また，“1”を検索する場合にはビット
選択線 BL に VDD[V]，BR に 0[V]，“0”を検索する場合には BL に 0[V]，BR に VDD[V]を印加する．さらに，検索の際に１ワードの中の特定のビットにマスクを掛ける場合には，当該ビットのビット選択線 BL，BR に VDD[V]の電圧を印加すると定義する．
図 3 において，記憶データと検索データが完全に一致した場合と 1 ビット不一致の場合を区別できるように C1，
C2，・・・，Cm，CAGR を以下のように定める：

C1 = C2 = L = Cm = C
C AGR = (m − 1)C
上記のようにそれぞれの容量の値を設定すると，νCMOS
インバータのフローティングゲートの電位 φ F は次式で与えられる[6]～[8]．

C m
∑ Vi
CT i =1(1)

CT = C0 + (2m − 1)C(2)φF =ただし，であり，C0 は νCMOS インバータのフローティングと基板間の容量である[6]．ここで，νCMOS インバータのフロー
ティングゲート利得係数γ INV は次式で与えられる[8]．

図 3 は従来の NAND・CAM の問題点を解決するために，
検 索 回 路 部 に νCMOS イ ン バ ー タ を 用 い た 提 案 CAM（νCMOS・CAM）の構成図である[5]．
提案 CAM は CAM セルアレイ，νCMOS インバータ，ラγ INV =―2 ―− 15 −CT − C0CT(3)ニューロン CMOS インバータを用いた高速 NAND 型 CAM の検索動作特性奇数ヘッダー（VDD[V]）に変化し，1 ビット不一致の場合には VOUT の電圧は L レベルのままであることから，提案 CAM は理論通りに動作していることが分かる．

式(2)と式(3)より，次式が得られる．

Cγ INV=CT (2m − 1)

(4)

式(4)を式(1)に代入すると， φF は次のようになる．

φF =γ INVm∑V(2m − 1)i =1i(5)

また，図 3 より CAM セルアレイの EXNOR の出力電圧の総和を求めると次式が得られる．
m∑ V =(m－DMM)VDDi =1i(6)ただし，DMM は検索データと記憶データ間の不一致ビットの数である．さらに，式(6)を式(5)に代入すると，φF は次式で与えられる．

φF =m − DMM
γ INVVDD
2m − 1(7)

ここで，ノイズマージンを最大にした場合の νCMOS イン
バータの反転しきい電圧 VINV は次式で与えられる[8]．

VINV =

1γ INVVDD2(8)式(7)の φ F の 値が式 (8)の VINV を 超え る かどう かで，
νCMOS インバータの出電圧 VMID が決まる．すなわち，検索データと記憶データを比較した結果，それらが完全一致している場合には DMM＝0 なので，式(7)と式(8)より φF＞
VINV になる．したがって，図 3 中の νCMOS インバータのnMOS（ν-nMOS と略記する）が導通し，VMID は 0[V]に向かって下降する．この電圧がトランスミッションゲートを介してラッチ回路へ伝達されるため，ラッチ回路の出力電圧 VOUT は VDD[V]に向かって上昇する．
一方，検索データと記憶データを比較した結果，それらの間に 1 ビット以上の不一致ビットがある場合には DMM≧
1 なので，式(7)と式(8)より φF＜VINV となり，νCMOS インバータの pMOS（ν-pMOS と略記する）が導通し VMID はVDD[V]に向かって上昇する．この電圧がトランスミッションゲートを介してラッチ回路へ伝達されるため，ラッチ回路の出力電圧 VOUT は初期値である 0[V]を保持する．したがって，この VOUT を検出することによって，検索データと記憶データ間の一致／不一致を判別することができる．

図4

提案CAMの動作波形（8ビットの場合）

図5は1ワードのビット数を32に拡張した時の出力電圧の波形である．同図から分かるようにビット数を32にまで拡張した場合でも，提案CAMは設計通りの動作をすることが分かる．

４．HSPICE によるシミュレーション結果
記憶データの検索を行う際には WL, BL, BR に 0[V]を印加し，VSW=0[V]， VCUT=VDD[V]として回路をリセット状態にする．その後，BL と BR に検索データに対応する電圧を印加し, VSW=VCUT=VDD[V]とすることで検索結果をラッチ回路に取り込むことができる．これらの動作を HSPICE によってシミュレーションした結果を図 4，図 5 に示す．主なシミュレーション条件は表 1 に示す通りである．
図 4 は 1 ワード 8 ビットの場合の提案 CAM の出力電圧
VOUT の波形である．検索データと記憶データが完全に一致している場合には VOUT が L レベル（0[V]）から H レベル―3 ―− 16−

図5

提案CAMの動作波形（32ビットの場合）小林貴裕・吉田正廣

偶数ヘッダー

図6は1ワードを構成するビット数を8ビットから32ビットまで変化したときの提案CAMと従来CAM（NOR・CAMとNAND・CAM）の検索時間特性である．この図から明らかなように，NOR・CAMの検索速度が最も速く，次は提案
νCMOS・CAMであり，最も遅いのがNAND・CAMである．
NOR・CAMはプルダウン用nMOSトランジスタが並列接続されているため，非常に高速な検索を可能にしている．一方，NAND・CAMはプルダウン用nMOSトランジスタが直列接続されているため，検索時間が最も遅く，1ワードを構成するビット数が多くなればなるほど検索時間も遅くなっている．これに対して，νCMOS・CAMは1個のν-nMOSまたはν-pMOSを介してνCMOSインバータの出力端子の寄生容量の充電と放電を行うため，NAND・CAMよりも検索時間は速く，しかもその検索時間は1ワードを構成するビット数に無関係でほぼ一定になる．したがって，提案CAMは検索速度の面でNAND・CAMよりも優れていることが分かる．
表1

シミュレーション条件

記号

パラメータ名値

単位

VDD

電源

3.3Vｍ

1 ワードのビット数

8～32

Bit

CML

従来回路の寄生容量

1pF

0.5pF

3.5pF

1pF

CCAGR

CAM セルとフローティングゲート間の容量
アースとフローティングゲート間の容量

Cout

提案回路の寄生容量

図6

検索時間の比較

次に，従来 CAM と提案 CAM の消費電力について検討する．図 7 は 1 ワードを 32 ビット構成とし、記憶データと検索データ間の不一致ビットの数を 0～32 まで変化したと
きの 1 ワードの消費電力特性である．同図より，NAND・CAM は不一致ビットの数が 0 の場合（検索データと記憶データが完全に一致している）以外は殆ど電力を消費しないことが分かる。また，νCMOS・CAM の場合には，不一致ビット数の増加と共に消費電力が大きく減少するが、NOR・CAM の場合には不一致ビット数が 0 の場合以外は常に一定の電力を消費していることが分かる．ここで，消費電力の平均値（0～32 ビットまでの消費電力を平均した値）を求めると、従来の NOR・CAM が 28.8[μW]と最も大きく，最も小さいのは NAND・CAM であり，その値は 4.6[μW]となる．これに対して νCMOS・CAM の値は 9.6[μW]と、NOR・CAM と NAND・CAM の中間値を取る．

MOS トランジスタ

tox

シリコン酸化膜の膜厚70Å

ε0

真空中の誘電率

8.854
×10-14F/cmεox

シリコン酸化膜の比誘電率

3.9-Lnチャネル長0.4μm

Wn

チャネル幅1μm

Lp

チャネル長0.4μm

Wp

チャネル幅3μm

nMOSpMOS
図7

図 8 は 1 ワードのビット数を 32、記憶データと検索デー
タ間の不一致ビットの数を 1 に設定し，νCMOS・CAM のワード数を 10 から 1M まで増加した場合の消費電力特性である． 同図より明らかなように，ワード数が増加すればするほど，NAND・CAM や νCMOS・CAM に比べ，NOR・CAM の消費電力が大きく増大することが分かる．これは、
図 7 にも示したように、NOR・CAM の場合には検索デー
タと記憶データ間に 1 ビットでも不一致ビットがあるとCML に蓄えられていた電荷が放電し、電力を消費するためである．一般に、検索データと記憶データが“不一致であるワード数”は、“一致であるワード数”よりも極めて多くなる．したがって、消費電力の観点から考えると、ワード数が多くなればなるほど，NOR・CAM に比べ、NAND・

ν-nMOSLnν

チャネル長0.4μm

Wnν

チャネル幅1μm

Lpν

チャネル長0.4μm

Wpν

チャネル幅3μm不一致ビット数を変化した場合の消費電力特性

ν-pMOS―4 ―− 17 −

ニューロン CMOS インバータを用いた高速 NAND 型 CAM の検索動作特性

奇数ヘッダー

CAM や νCMOS・CAM が有利であると言える．

ions on Electron Devices, vol40, No.3, pp.570-576, March1993.
[7] T. Ochiai and H. Hatano, “A Proposition on Floating Gate
Neuron MOS Macromodeling for Device Fabrications”, EICETrans Fundamentals, Vol.E82-A, No.11 November 1999.
[8] T. Shibata and T. Ohmi, “A Functional MOS Transistor
Featuring Gate-Level Weighted Sum and Threshold Operations,” IEEE Transactions on Electron Devices,
vol.39, No.6, pp.1444-1455, June 1992.

図 8 ワード数を変化した場合の消費電力特性

5．まとめ
筆者らが提案した νCMOS ・CAM の検索動作を理論的に明らかにした．また，従来の CAM（NOR・CAM と NAND・CAM）と提案 CAN（νCMOS ・CAM）の検索速度と消費電力を HSPICE を用いたシミュレーションによって詳細に検討した．
その結果、提案 CAM が設計通りに動作することを確認した．また、提案 CAM は従来の NAND・CAM よりも検索速度の面で優れていることを明らかにした．さらに，提案
CAM の消費電力は NAND・CAM よりは大きいが，NOR・CAM よりは小さく，この特徴は CAM を構成するワード数が多くなるほど顕著になることを示した．
今後は，提案 CAM を試作し，実チップでの性能評価及び提案 CAM の応用について研究を行う予定である．

参考文献[1]T. Ogura and M. Nakanishi, “CAM-Based Highly-Parallel
Image Processing Hardware”, IEICE Trans. Electron,Vol.E80-C, No.7, pp.868-874, July 1997.
[2]S. Azgomi, “Using Content-Addressable Memory for
NetworkingApplications”,Communication
SystemDesign(CSD), Vol.5, No.11, Nov. 1999.
[3] H. Miyatake, M. Tanaka, and Y. Mori, “A Design for
High-Speed Low-Power CMOS Fully Parallel
Content-Addressable Memory Macros”, IEEE Journal ofSolid-State Circuits, Vol.36, No.6, June 2001.
[4] K. Pagiamtzis and A. Sheikholeslami, “Content Addressable Memory(CAM) Circuits and Architectures : A Tutorialand Survey” IEEE Joumal of Solid-State Circuits, vol41,
No.3, pp.712-727, March 2006.
[5]小林貴裕，吉田正廣，“ニューロンCMOSインバータを用いた高速NAND型CAM”，電子情報通信学会論文誌C，Vol.J93-C，No.5，pp.175-176，May 2010.
[6] T. Shibata and T. Ohmi, “Neuron MOS binary logic
integrated circuits : PartⅠ, Design fundamentals andsoft-hardware-logic circuit implementation,” IEEE Transact-―
5 ―− 18−