JP2008010144A - 連想メモリセル、連想メモリセルアレイ、アドレス検索メモリおよびネットワークアドレス検索装置 - Google Patents

連想メモリセル、連想メモリセルアレイ、アドレス検索メモリおよびネットワークアドレス検索装置 Download PDF

Info

Publication number
JP2008010144A
JP2008010144A JP2007213895A JP2007213895A JP2008010144A JP 2008010144 A JP2008010144 A JP 2008010144A JP 2007213895 A JP2007213895 A JP 2007213895A JP 2007213895 A JP2007213895 A JP 2007213895A JP 2008010144 A JP2008010144 A JP 2008010144A
Authority
JP
Japan
Prior art keywords
search
level
memory cell
output line
lines
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.)
Granted
Application number
JP2007213895A
Other languages
English (en)
Other versions
JP4391554B2 (ja
Inventor
Kazunari Inoue
一成 井上
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.)
Renesas Technology Corp
Original Assignee
Renesas Technology Corp
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 Renesas Technology Corp filed Critical Renesas Technology Corp
Priority to JP2007213895A priority Critical patent/JP4391554B2/ja
Publication of JP2008010144A publication Critical patent/JP2008010144A/ja
Application granted granted Critical
Publication of JP4391554B2 publication Critical patent/JP4391554B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Logic Circuits (AREA)

Abstract

【課題】検索動作時の低消費電力化を可能にする連想メモリセル、検索動作を低消費電力のもとで実行できる方策を講じて高速化を可能にする連想メモリセルアレイ、それを用いたアドレス検索メモリおよび使い勝手の優れたシステムLSIたるネットワークアドレス検索装置を得ること。
【解決手段】連想メモリセルは、データ入出力を行う2つのビット線BL,ZBLに接続され書き込まれたデータを保持する第1の記憶ノードおよび第2の記憶ノードを有するメモリセルと、2つのMOSトランジスタ103,104からなる一致比較回路と、出力線141に接続され比較の結果不一致のときにプリチャージレベルから電荷引き抜きが行われ降下する出力線151の電位レベルが接地電位レベルに到達する以前の所定電位レベルで止まるようにするクランプ回路151とを備えている。
【選択図】 図1

Description

この発明は、連想メモリセル、連想メモリセルアレイ、アドレス検索メモリおよびネットワークアドレス検索装置に関するものである。
近年、インターネット利用者の増加、企業内LAN構築の増加等に応えるために、ネットワークの中継点ルータでは、処理能力の向上を図るために、連想メモリ(Content Addressable Memory:CAM)の一種であるTCAM(Ternary CAM)がアドレス検索装置として頻繁に使用されるようになってきている。以下に、図15〜図20を参照してTCAMについて説明する。なお、図15は、アドレス検索用装置としてのTCAMが使用されるネットワークシステムの構成例を示す図である。図16は、ハードウェア処理によるパケットの分類アルゴリズムを説明する図である。図17は、TCAMの基本構成および検索動作を説明する概念図である。図18は、TCAMの詳細構成を示すブロック図である。図19は、図18に示す従来のTCAMセルの構成を示す概念図である。
図15は、非特許文献1に示されているシステム例である。図15において、ネットワーク1601は、インターネットサービスプロバイダ(ISP1)が管理している。このネットワーク1601には、中継点ルータ1602を介して企業内ネットワーク(E1)1603が接続され、また中継点ルータ1604を介して企業内ネットワーク(E2)1605が接続されている。
さらに、このネットワーク1601には、中継点ルータ1606を介してネットワークアクセスポイント(NAP)1607が接続されている。NAP1607には、インターネットサービスプロバイダ(ISP2)が管理しているネットワーク1608と、インターネットサービスプロバイダ(ISP3)が管理しているネットワーク1609とが接続されている。
以上の構成において、中継点ルータ1602,1604,1606では、受け取ったパケットのヘッダに記載されたルールをルックアップしてパケットの分類(Packet Classification)が行われる。例えば、中継点ルータ1606では、NAP1607から受け取ったパケットについて、「このパケットは企業内ネットワーク(E1)に行け」とか、「このパケットは企業内ネットワーク(E1)ではない、企業内ネットワーク(E2)にホップせよ」、あるいは「このパケットはどこでもない」というように分類する。
パケットのヘッダには、このような様々の情報がルールという形で記載されており、中継点ルータ内で分類のための検索キーとなっている。中継点ルータ内では、送られてくる様々なパケットが持つルール全てについて、それぞれどのようなアクションかをルックアップし、どのルータに引き渡すか(ホップするか)などを瞬時に判断する必要がある。
パケットの分類(Packet Classification)にはいろいろな手法がある(非特許文献1参照)。今日、最も頻繁に使用されるのが、図16に示すようなハードウェア処理によるパケットの分類アルゴリズムである。これには、TCAM(Ternary Content Addressable Memory)とよばれる特殊なハードウェアが使用される。
図16において、ハードウェア処理によるパケットの分類アルゴリズムでは、TCAM1701と優先制御部(プライオリティエンコーダ)1702とアクションメモリ1703とが用いられる。
TCAM1701には、エントリ(entry)毎にルール(rule)が保持されている。今日のTCAMは、あまりに高価であるため、このように、各エントリにはルール名、つまりラベルだけを保持しているのが通常である。次に実施すべきアクションは、比較的安価なDRAMやSRAMなどで構成されるアクションメモリ1703に記憶されている。
TCAM1701では、入力ピンにパケットから行き先アドレスとしてあるルールが与えられると、その入力ピンに与えられたルールを内部で保持しているルールと一斉に並列に一致比較を開始する。そして、一致、あるいは最も近いもののエントリ番号(単数または複数)を出力する。例えば、ルール{rule:R4,R5,R6}が与えられると、エントリ番号#3を出力する。
優先制御部1702では、TCAM1701の検索結果が複数あるとき、優先度の高いエントリとして番号の一番若いエントリをアクションメモリ1703に与える。アクションメモリ1703では、優先制御部1702から入力されたエントリについて次に行うべきアクションを探し出す。その結果、次のルータが指定され、パケットが転送される、など次にホップする。
ここで、例えばルールがIPアドレスである場合、“X”値(don't care)が用いられることがしばしばある。これは、一致比較の検索対象から外すという意味である。TCAM1701では、記憶値が“X”であれば無条件一致という判断をする。よって、TCAM1701の内部セルが記憶すべき情報も“0”“1”の他“X”も含めた3値となる。これがTernary型CAMなる名前の由来である。
次に、図17を参照して、TCAMのハードウェア基本構成と検索の基本動作について説明する。図17において、TCAMでは、検索命令(サーチコマンド)のデータ列が配置されるサーチポート1801が設けられている。また、各エントリ(entry#0〜#n)には、複数のTCAMセル1802が設けられている。そして、複数のTCAMセル1802は、サーチポート1801のデータ列と1対1対応に検索動作用ビット線(サーチ線)1803で接続されている。さらに、エントリ(entry#0〜#n)毎に設けられる複数のTCAMセル1802は、共通に検索出力線(マッチ線)1804に接続されている。TCAMセル1802は、上記したように、“0”“1”あるいは“X”の3値を記憶している。
検索動作時には、サーチコマンドが図示しない入力ピンに与えられると、サーチポート1801に転送され、サーチコマンドのデータ列が検索動作用ビット線1803上に配置され、各エントリの全てのTCAMセル1802に伝達される。これによって、全てのエントリにおいてデータ列とTCAMセル1802の保持データとの一致不一致の比較が一斉に開始される。
検索出力線1804は、検索動作開始前に“H”レベルにプリチャージされている。そして、通常、一致したTCAMセル1802が接続される検索出力線1804では、その“H”レベルがそのまま保持される。一方、不一致のTCAMセル1802が接続される検索出力線1804では、セル内のトランジスタを介して放電し、“L”レベルに引き下げされる。つまり、図16に示すアドレス検索装置としてのTCAM1701では、“H”レベルを保持する検索出力線1804のエントリ番号を調べて、そのエントリ番号を優先制御部1702に出力することが行われる。以上が、TCAM1701の役割である。
次に、図18を参照してTCAMの詳細構成と検索動作等の概要とについて説明する。図18に示すように、外部との接続ピンとして、データ入出力ピン1901と、命令制御ピン1902と、アドレス入力ピン1903と、検索結果出力ピン1904とを備えている。
命令制御ピン1902には、命令解読器1921が接続されている。命令制御ピン1902に与えられた命令が命令解読器1921にて解読され、その解読結果による動作指示が各部に通知されるようになっている。
アドレス入力ピン1903には、デコーダ1931が接続されている。デコーダ1931の出力端には、行デコーダ1932が接続されている。また、検索結果出力ピン1904には、検索エンコーダ1941の出力端が接続されている。
行デコーダ1932の各行出力端と検索エンコーダ1941の各行入力端との間に、複数のTCAMセル1910が横一列に配置されている。行デコーダ1932の各行出力端には、マスクデータ用ワード線1933と有効データ用ワード線1943とが設けられている。横一列に配置されている複数のTCAMセル1910は、それぞれマスクデータ用ワード線1933と有効データ用ワード線1934とに並列に接続されている。
そして、検索エンコーダ1941の各行入力端には、検索出力線(マッチ線)1942が設けられ、各検索出力線1942には、横一列に配置されている複数のTCAMセル1910が並列に接続されている。
データ入出力ピン1901には、複数のセンスアンプ1911と複数のサーチドライバ1912,1913とが接続されている。複数のセンスアンプ1911と複数のサーチドライバ1912,1913は、横一列に配置されている複数のTCAMセル1910の各列の一端側に1対1対応で設けられている。
複数のセンスアンプ1911のそれぞれには、書き込み、読み出し、およびリフレッシュの各動作を行うためのビット線1914,1915が設けられている。この2本のビット線1914,1915には、横一列に配置されている複数のTCAMセル1910の各列における複数のTCAMセル1910が並列に接続されている。
複数のサーチドライバ1912,1913のそれぞれには、検索動作用ビット線(サーチ線)1916,1917が設けられている。この2本の検索動作用ビット線1916,1917には、横一列に配置されている複数のTCAMセル1910の各列における複数のTCAMセル1910が並列に接続されている。
以上の構成において、まず、TCAMセル1910にデータを書き込むときは、書き込みという命令が命令制御ピン1902に与えられる。そして、書き込みたいデータをデータ入出力ピン1901に与え、書き込みたいアドレス、エントリ番号をアドレス入力ピン1903に与える。
なお、書き込み命令に関してアドレス入力はあまり必要ではない。最終的に必要なものは、各ルール(入力データ)に対応する次のアクションであるから、データがTCAMのエントリに入力されるかよりも、TCAMのエントリと次のアクションメモリへのルックアップさえ管理すればよいからである。したがって、空いているエントリに順にデータを入力し、どこのエントリにデータが書き込まれたかは、データ書き込み時に検索結果出力ピン1904にアドレス情報を出力すればよいことになる。
次に、書き込みデータは、センスアンプ1911に内蔵の書き込みバッファ回路によって2本のビット線1914,1915に伝達される。同時に、書き込みアドレスは、デコーダ1931を介して行デコーダ1932に入力され、所望のエントリにおけるTCAMセル1910に書き込みが行われる。
次に、検索動作についても説明する。サーチコマンド(sertch)は、同じく命令制御ピン1902に与えられ、検索すべきデータ列もデータ入出力ピン1901に与えられる。検索時には、データ列はサーチドライバ1912,1913を経て検索動作用ビット線1916,1917に伝達される。このとき、検索出力線1942は、検索動作開始前に予め“H”レベルにプリチャージされている。
TCAMセル1910では、保持データと検索動作用ビット線1916,1917の一致比較が行われる。そして、全てのデータ列が一致したエントリだけに接続される検索出力線1942が“H”レベルを保持する。1ビットでも不一致があれば、その検索出力線1942が接続されるエントリでは、その検索出力線1942のレベルをセル内のトランジスタを介して放電し“L”レベルに引き下げる。これは、ワイヤードオア処理によって行われる。
検索エンコーダ1941では、このようにしてデータ列が全て一致して“H”レベルを保持している検索出力線1942が見つけ出され、その“H”レベルを保持している検索出力線1942の属するエントリの番号が検索結果出力ピン1904から出力される。
次に、図18に示す従来のTCAMセル1910は、例えば図19に示すように構成されている。図19において、従来のTCAMセル1910は、有効データ記憶セル2001とマスクデータ記憶セル2002とによる物理的に2つのセルの組み合わせによって、“1”“0”“X”の3値(ターナリ値)を保持するように構成されている。
有効データ記憶セル2001とマスクデータ記憶セル2002は、それぞれ、フリップフロップを構成するように逆並列接続された2つのインバータによって構成されている。
有効データ記憶セル2001の一方の記憶端は、MOSトランジスタ2011のソース電極とMOSトランジスタ2012のゲート電極とに接続され、他方の記憶端は、MOSトランジスタ2013のソース電極とMOSトランジスタ2014のゲート電極とに接続されている。MOSトランジスタ2011のドレイン電極は、ビット線2015に接続されている。MOSトランジスタ2013のドレイン電極は、ビット線2016に接続されている。そして、MOSトランジスタ2011,2013のゲート電極は共通に有効データ用ワード線2017に接続されている。また、MOSトランジスタ2012,2014は、直列に接続され、一端は検索動作用ビット線2018に接続され、他端は検索動作用ビット線2019に接続されている。
また、マスクデータ記憶セル2002の一方の記憶端は、MOSトランジスタ2021のソース電極に接続され、他方の記憶端は、MOSトランジスタ2022のソース電極とMOSトランジスタ2023のゲート電極とに接続されている。MOSトランジスタ2021のドレイン電極は、ビット線2024に接続され、MOSトランジスタ2023のドレイン電極は、ビット線2025に接続されている。そして、MOSトランジスタ2021,2022のゲート電極は共通にマスクデータ用ワード線2026に接続されている。MOSトランジスタ2023のソース電極は接地され、ドレイン電極は、MOSトランジスタ2027のソース電極に接続されている。MOSトランジスタ2027のゲート電極は、直列接続されたMOSトランジスタ2012,2014の接続端に接続され、ドレイン電極は、検索出力線2030に接続されている。
このように、従来のネットワークアドレス検索装置(LSI)で用いるTCAMセルは、図19に示すように、“1”“0”“X”の3値を表現するために、例えば16個のMOSトランジスタを用いて物理的に2つのSRAM(スタティックランダムアクセスメモリ)セルと検索(一致比較)するセルとを構成するようにしている。
このTCAMセルでの検索動作は、次式で表現される。
If ([val=1'b0]&&[mas=1'b1]) then WORD<=1'b0;
If ([val=1'b1]&&[mas=1'b1]) then WORD<=1'b1;
If ([val=1'bx]&&[mas=1'b0]) then WORD<=1'bx;
すなわち、マスクデータ記憶セル2002に保持されるマスクビット(Maskビット)が“1”であれば、有効データ記憶セル2001に保持される有効ビット(validビット)と検索動作用ビット線2018,2019との一致不一致が比較され、検索結果が検索出力線2030に出力される。マスクデータ記憶セル2002に保持されるマスクビット(Maskビット)が“0”のときは、MOSトランジスタ2023,2027がON動作をしないので、検索出力線2030は絶対に接地(GND)レベルに接続されることはない。
IEEE Network Mar/Apr2001 Algorithms for Packet Classification
しかしながら、従来のTCAMセルには、次のような問題がある。まず、従来のTCAMセルは、図19に示すように、例えば、16個のMOSトランジスタを用いて物理的に2つのSRAMセルと検索(一致比較)するセルとを構成するようにしているので、1セルあたりの占有面積が大きく、LSIシリコン上に大容量搭載ができないという問題がある。高々9Mビットの容量しか確保できないのが実状である。このことは、今日のSRAMが6個のMOSトランジスタで構成され、DRAM(ダイナッミクランダムアクセスメモリ)が1個のMOSトランジスタと1個のキャパシタ素子とで構成されていることと比較すると明らかである。
また、図20は、上述した検索動作を理解し易いように図示したものである。図20に示すTCAMセルアレイ2101は、図18に示した各行に横一列に配置される複数のTCAMセル1910の全行数分で構成される。サーチドライバ2102は、図18に示したサーチドライバ1912,1913をまとめて示したものである。サーチドライバ2102には、各列に配置される複数のTCAMセル毎に、検索動作用ビット線たるサーチ線SLが設けられている。また、各行に横一列に配置される複数のTCAMセル毎に、検索出力線たるマッチ線MLが設けられている。
図20において、従来の検索動作では、検索データをサーチ線SLによって全てのTCAMセルに対して一斉に並列に与える。その結果、全てのTCAMセルは、全てのマッチ線MLを駆動する。すなわち、読み出し、書き込みというメモリの基本動作は、通常メモリ全体のうちの限られた1部分について行われるが、それとは違って検索動作は、全てのTCAMセルについて、垂直方向、水平方向が動作対象となる。このため消費電力が例えば4Mビット容量のものでは6W、9Mビット容量のものでは10Wに達する場合があるなど極めて大きくなる。この点も大容量搭載を困難にする原因となっている。加えて、消費電力が大きいことは、検索動作の高速化を図ったネットワークアドレス検索装置としてのシステムLSIの実現を困難にしているという問題がある。
さらに、従来のTCAMは、一般に、図16に示したTCAM1701と優先制御部(プライオリティエンコーダ)1702とを含み、TCAM内部で、優先順位の高いものほどエントリ番号の小さいほうに書き並べ得るようになっている。したがって、従来のTCAMでは、検索動作において複数のエントリでヒットが生じた場合には、優先順位の高いもの、すなわちエントリ番号の小さいものを出力する。また、例えば誰もアクセスしなくなったIPアドレスなどは随時消去され(エージング(Ageing)という)、再度優先順位の高いものから順に並び替えが行われる。
このアドレスの再配置(re-addressing)は、実は非常にオーバヘッドの大きい作業である。全てのエントリに対してデータの書き換えを実行しなければならないからである。また、この期間中、検索動作は受け付けられない。これらの問題点を解消するため、例えば図21に示すように構成することが考えられる。図21は、従来のTCAMを用いてアドレス再配置時の問題を解決する場合の構成例を示すブロック図である。
図21において、TCAM2201,2202は、上記したように図16に示したTCAM1701と優先制御部(プライオリティエンコーダ)1702とを含むものである。TCAM2201は、アドレスデコーダ2203を介して書き込み線(Write)2204と検索線(Search)2205に接続されている。同様に、TCAM2202は、アドレスデコーダ2206を介して書き込み線(Write)2204と検索線(Search)2205に接続されている。
この構成によれば、TCAM2201,2202のそれぞれに同じデータの書き込みが行われる。そして、優先順位の書き換えが発生すれば、例えばTCAM2201に対してのみ書き換えを実行する。その期間中TCAM2202に対して検索を許容することができ、検索結果が出力される。勿論、検索は書き換え以前の古いデータに対してのみの実行となる。次いで、TCAM2201に対しての書き換えが完了した時点で、今度は検索ポートをTCAM2202からTCAM2201に移して実行する。書き換えが必要なときには、書き換えをTCAM2202に対して実行することができる。検索命令は、書き換え命令と関係なく連続して実行できる。
しかしながら、図21に示す構成では、TCAM自体が非常に高価なハードウェアであるにもかかわらず複数必要とするので、一層高価なものになる。また、近年のネットワークシステムの要求に対して検索スピードが追いついていないが、上記の消費電力が大きいので、改善が非常に困難であるという問題がある。
すなわち、今日のTCAMハードウェアで実現できる検索スピードは、せいぜい100Mpps(100メガパケット毎秒)程度であるが、市場要求として例えば40GLANでは、(40Gビット/20バイト)=250MHz、すなわち、250Mpps(250メガパケット毎秒)であり、現行性能の25倍は必要である。
さらに加えて、従来のTCAMは、一般に、図16に示したTCAM1701と優先制御部(プライオリティエンコーダ)1702とを含めてLSI化した構成であり、アクションメモリ1703までを含めたシステムLSIとはなっていない。したがって、従来では、システムボード上に、TCAM1701と優先制御部(プライオリティエンコーダ)1702とを含めたTCMALSIと、アクションメモリ1703のみからなるアクションメモリLSIとを配置し、TCMALSIでの検索結果をエンコードし、それをアクションメモリLSIに入力する構成となるので、アプリケーション上、使い勝手の悪いものになっているという問題もある。
この発明は、上記に鑑みてなされたものであり、検索動作時の低消費電力化を可能にする連想メモリセル、検索動作を低消費電力のもとで実行できる方策を講じて高速化を可能にする連想メモリセルアレイ、それを用いたアドレス検索メモリおよび使い勝手の優れたシステムLSIたるネットワークアドレス検索装置を得ることを目的とする。
上述した目的を達成するために、この発明にかかる連想メモリセルは、データ入出力を行う2つのビット線に接続され、書き込まれたデータを保持する第1の記憶ノードおよび第2の記憶ノードを有するメモリセルと、ゲート電極が前記2つの記憶ノードにそれぞれ接続され、一方の信号電極が検索データを与える2つのサーチ線の対応するサーチ線に接続され、他方の信号電極が出力線にそれぞれ接続される2つのMOSトランジスタで構成され、前記2つのサーチ線に供給される検索データと前記2つの記憶ノードの保持データとの一致比較を行い、一致するとき前記出力線をプリチャージレベルに維持し、不一致のとき前記出力線をプリチャージレベルから引き下げる動作を行う一致比較回路と、前記2つのサーチ線および前記出力線のプリチャージレベルは、それぞれ、動作電源レベルから所定値だけ下がったレベルであり、比較の結果不一致のときに前記プリチャージレベルから電荷引き抜きが行われ降下する前記出力線の電位レベルが接地電位レベルに到達する以前の所定電位レベルで止まるようにするレベル維持手段とを備えたことを特徴とする。
この発明によれば、レベル維持手段によって、2つのサーチ線および出力線の動作電圧範囲を狭い範囲内に制限できるので、検索動作時の消費電力を小さくすることができるという効果を奏する。また、レベル維持手段によって、出力線は、比較の結果不一致のときに接地電位レベルになることはないので、比較の結果一致を示しているMOSトランジスタの動作閾値を高めることができ、誤動作を生じないようにすることができるという効果も奏する。
以下に図面を参照して、この発明にかかる連想メモリセル、連想メモリセルアレイ、アドレス検索メモリおよびネットワークアドレス検索装置の好適な実施の形態を詳細に説明する。
実施の形態1.
図1は、この発明の実施の形態1による連想メモリセルとして、TCAMセルの構成を示す回路図である。図1において、連想メモリセルであるTCAMセルは、4つのMOSトランジスタ101,102,103,104と、2つのキャパシタ素子105,106とを備えている。このうち、MOSトランジスタ101とキャパシタ素子105、およびMOSトランジスタ102とキャパシタ素子106は、それぞれダイナミック型メモリセルを構成し、MOSトランジスタ103,104は一致比較回路を構成している。ビット線(BL)111とビット線(ZBL)112は、書き込み動作、読み出し動作およびリフレッシュ動作を行うビット線である。
一方のビット線(BL)111には、MOSトランジスタ101のドレイン電極が接続され、MOSトランジスタ101のソース電極には、キャパシタ素子105の蓄積ノードが接続されている。また、他方のビット線(ZBL)112には、MOSトランジスタ102のドレイン電極が接続され、MOSトランジスタ102のソース電極には、キャパシタ素子106の蓄積ノードが接続されている。そして、MOSトランジスタ101,102のゲート電極は、それぞれ、書き込み動作、読み出し動作およびリフレッシュ動作を行うワード線(WL)121に接続されている。
また、電位レベルが相補的に変化するサーチ線(SL)131とサーチ線(ZSL)132は、検索動作用のビット線である。マッチ線(ML)141は、検索結果を出力するための出力線である。MOSトランジスタ103のゲート電極は、キャパシタ素子105の蓄積ノードに接続され、ドレイン電極は、サーチ線(SL)131に接続されている。また、MOSトランジスタ104のゲート電極は、キャパシタ素子106の蓄積ノードに接続され、ドレイン電極は、サーチ線(ZSL)132に接続されている。そして、MOSトランジスタ102,103のソース電極は、それぞれマッチ線(ML)141に接続されている。
この構成によれば、2つのダイナミック型セルメモリにて、“1”“0”“X”の3値が保持できる。すなわち、
If ([1a=1'b0]&&[1b=1'b1]) then WORD<=1'b0;
If ([1a=1'b1]&&[1b=1'b0]) then WORD<=1'b1;
If ([1a=1'b0]&&[1b=1'b0]) then WORD<=1'bx;
と表現することができる。
3値データの書き込みは、ワード線(WL)121を高レベル(以下「“H”レベル」という)にし、ビット線(BL)111とビット線(ZBL)112とを、“H”レベルと低レベル(以下「“L”レベル」という)とに変化させることによって行う。例えば、“1”の書き込みは、ビット線(BL)111を“H”レベル、ビット線(ZBL)112を“L”レベルにして行う。“0”の書き込みは、ビット線(BL)111を“L”レベル、ビット線(ZBL)112を“H”レベルにして行う。“X”の書き込みは、ビット線(BL)111を“L”レベル、ビット線(ZBL)112を“L”レベルにして行う。
検索データは、“H”レベルと“L”とからなり、サーチ線(SL)131とサーチ線(ZSL)132から入力する。MOSトランジスタ103,104による一致比較回路にて、セルの保持データとの一致比較が行われる。その比較結果(検索結果)がマッチ線(ML)141に出力される。
ここに、サーチ線(SL)131、サーチ線(ZSL)132およびマッチ線(ML)141は、それぞれ検索動作の開始前にプリチャージされるが、この実施の形態でのプリチャージレベルは、Vccレベルではなく、閾値Vthだけ下がったVcc−Vthのレベルになっている。
そして、一致比較の結果(検索結果)、一致した場合には、一致比較回路では、そのマッチ線(ML)141のレベルをプリチャージレベルであるVcc−Vthのレベルに保持する。一方、不一致となったときは、一致比較回路では、そのマッチ線(ML)141の電荷を引き抜き、接地(GND)レベルに引き下げる動作が行われる。このとき、この実施の形態では、マッチ線(ML)141にクランプ回路151が設けられ、不一致となったマッチ線(ML)141が完全に接地(GND)レベルまで落ち込まないようにしている。
クランプ回路151は、MOSトランジスタQによって構成されている。すなわち、MOSトランジスタQのソース電極とゲート電極は、それぞれ電源に接続され、ドレイン電極は、マッチ線(ML)141に接続されている。これによって、例えば、(1/2)Vccのレベルで止まるようになっている。
次に、図1〜図4を参照して、実施の形態1による連想メモリセルであるTCAMセルの動作について説明する。なお、図2は、図1に示すTCAMセルにて行われる読み出し動作、書き込み動作の説明図である。図3は、図1に示すTCAMセルにて行われる検索動作の説明図である。図4は、図1に示すTCAMセルの動作タイムチャートである。
まず、図2を参照して読み出し動作、書き込み動作の説明を行う。図2では、M×NビットのTCAMセルアレイ201に対し、ワード線WLを制御する行デコーダ202と、ビット線BLを制御するセンスアンプ203と、選択する列の指示をセンスアンプ203に与える列デコーダ204とが設けられている。センスアンプ203には、I/Oバス205が接続されている。なお、ビット線BLは、図1に示した一対のビット線(BL,ZBL)をまとめて示している。
以上の構成において、読み出し動作では、まず、行デコーダ202によってM本のワード線WLのうちの1つを操作して行選択が行われる。ワード線WLの活性化によって、それに接続されるTCAMセルでは、それぞれの保持データによってビット線BLが“H”レベルまたは“L”レベルに僅かながら駆動される。センスアンプ203は、列デコーダ204が選択した列におけるビット線BLの電位レベルを高速に増幅する。その結果、センスアンプ203からI/Oバス205に、N対のビット線BL中の一対のビット線BLのデータが送り出される。書き込み動作では、I/Oバス205から送られてきたデータが、以上説明したのと同様の手順でTCAMセルアレイ201に書き込まれる。
次に、図3を参照して検索動作を説明する。図3では、2ビット長の2エントリ分の4個のTCAMセル301,302,303,304が示されている。行方向のTCAMセル301,302は、第1エントリのワード線WL_0とマッチ線ML_0に接続されている。また、行方向のTCAMセル303,304は、第2エントリのワード線WL_1とマッチ線ML_1に接続されている。列方向のTCAMセル301,303は、ビット線BL_0,ZBL_0,サーチ線SL_0,ZSL_0に接続されている。また、列方向のTCAMセル302,304は、ビット線BL_1,ZBL_1,サーチ線SL_1,ZSL_1に接続されている。なお、マッチ線ML_0,ML_1には、図示してないが、図1に示したクランプ回路151が設けられている。ここで、TCAMセル301,303に上位ビットが保持され、TCAMセル302,304に下位ビットが保持されているとする。
検索動作においては、前準備として、サーチ線とマッチ線が共に“H”レベルにプリチャージされる。前述したように、プリチャージレベルは、サーチ線とマッチ線が共にVcc−Vthのレベルである。これは、“H”レベルと“L”レベルの充放電を繰り返した場合の消費電力低減を図るための措置である。
この状態で検索を開始する。つまり、検索データをSL_0,ZSL_0と、SL_1,ZSL_1とにそれぞれ与える。今、SL_0=“H”,ZSL_0=“L”,SL_1=“L”,ZSL_1=“H”なるデータを与える。第1エントリにおいては、TCAMセル301では、“H”“L”が保持され、TCAMセル302では、“L”“H”が保持されているとすると、比較の結果は一致する(図3では、pass,passと表示されている)。したがって、マッチ線ML_0は、プリチャージレベルVcc−Vthを保持する。
一方、第1エントリにおいては、TCAMセル303では,“H”“L”が保持され、TCAMセル304では、“H”“L”が保持されているとすると、比較の結果、TCAMセル303では、一致する(passと表示)が、下位ビットのTCAMセル304では、一致しない(failと表示)。その結果、マッチ線ML_1にプリチャージされていた電荷がTCAMセル304の一致比較回路を介してサーチ線SL_1,ZSL_1側に放電されることが開始され、マッチ線ML_1の電位は、プリチャージレベルVcc−Vthから接地(GND)レベルに向けて降下を始める。
ここで、マッチ線ML_1の電荷が完全に放電され、電位が接地(GND)レベルになってしまうと、マッチ線ML_1に接続される上位ビット、つまりTCAMセル303においては、セル判定が一致(pass)であるとしてOFF動作をしている一致比較回路のMOSトランジスタがON動作を行い、当該MOSトランジスタを介してマッチ線ML_1とサーチ線SL_0またはサーチ線ZSL_0との間に電流パスが生じてしまう。
ところが、この実施の形態では、マッチ線ML_1に設けたクランプ回路151(図1参照)によってマッチ線ML_1は、接地(GND)レベルにはならず、例えば(1/2)Vccまで降下してそのレベルを維持するようになっている。その結果、今の例で言えば、TCAMセル303では、一致比較回路のMOSトランジスタのソース電位が(1/2)Vccとなる。そして、そのMOSトランジスタの動作閾値は、トランジスタの基板効果によって上昇するので、ON動作を行わず、誤動作は生じないことになる。
図4は、以上説明した書き込み動作、読み出し動作および検索動作をまとめて示したタイムチャートである。図4において、(1):各動作は、クロックCKに従って順々に実行される。(2):命令OPとして、書き込み命令Wが4つ連続し、その後サーチ(検索)命令Sが4つ連続している場合が示されている。(3):ワード線WLは、書き込み命令Wに応答してMOSレベルである“H”レベルと“L”になる。つまり、MOSレベルの振幅である。(4):同時に、ビット線BL(ZBL)は、“H”レベルと“L”レベルとに相補的に変化する。これも、MOSレベルの振幅である。(5)サーチ線SL(ZSL)は、プリチャージレベルがVcc−Vthのレベルにあり、サーチ(検索)命令Sに応答して、Vcc−Vthレベルと接地(GND)レベルの間で相補的に変化する。つまり、MOSレベルの振幅よりも遙かに小さい振幅で変化する。(6):マッチ線MLも同様に、プリチャージレベルがVcc−Vthのレベルにあり、比較結果に応じて、Vcc−Vthレベルと接地(GND)レベルの間で変化する。つまり、MOSレベルの振幅よりも遙かに小さい振幅で変化する。(7):次段には、マッチ線MLのレベルを本来のMOSレベルに増幅してから伝達される。
このように、実施の形態1によれば、TCAMセルを、4個のMOSトランジスタと2個のキャパシタ素子とによって構成したので、セルの占有面積を小さくすることができ、LSI化したときにTCAMセルの大容量搭載が可能となる。具体的には、従来例(図18)と同じデザインテクノロジーであれば、約4倍の容量搭載が可能である。例えば、0.13μmテクノロジーであれば、従来例ではおおよそ9Mビットまでであるが、実施の形態1によれば、おおよそ27Mビットまで容量搭載が可能である。
そして、レベル維持手段であるクランプ回路151を設けたので、次のような作用・効果が得られる。まず、サーチ線とマッチ線は、動作電圧値範囲を制限し低電圧振幅で動作するので、検索動作時の消費電力低減を図ることができる。また、マッチ線は、比較の結果が不一致のときに接地電位レベルにならないので、比較の結果、一致しているMOSトランジスタの動作閾値を高めることができ、誤動作を生じないようにすることができる。
実施の形態2.
図5は、この発明の実施の形態2による連想メモリセルとして、TCAMセルの構成を示す回路図である。なお、図5では、図1に示したTCAMセルと同一構成ないしは同等である構成部分には同一符号が付されている。ここでは、実施の形態2に関わる部分を中心に説明する。
図5に示すように、この実施の形態2による連想メモリセルであるTCAMセルは、図1に示したクランプ回路151に代えて、一致比較回路(MOSトランジスタ103,104)とマッチ線(ML)141との間に、電流制限回路501が設けられている。その他は、図1に示した構成と同様である。
電流制限回路501は、MOSトランジスタ103とマッチ線(ML)141との間に設けられるMOSトランジスタ511と、MOSトランジスタ104とマッチ線(ML)141との間に設けられるMOSトランジスタ512とで構成されている。MOSトランジスタ511,512のゲート電極は、共通に、マッチ線(ML)141に接続されている。
この構成によれば、検索動作時に、一致比較回路(MOSトランジスタ103,104)にて不一致と判定され、マッチ線(ML)141の電荷引き抜きが開始され、マッチ線(ML)141の電位が下がると、電流制限回路501によって一致比較回路(MOSトランジスタ103,104)を流れる電流が制限されるので、実施の形態1で説明したように、マッチ線(ML)141の電位を接地(GND)レベルではなく、例えば(1/2)Vccのレベルで保持することができる。したがって、実施の形態1と同様に、検索動作時の消費電力低減および誤動作防止の作用・効果が得られる。
実施の形態3.
図6は、この発明の実施の形態3による低電力消費型検索動作を実現する連想メモリセルアレイとして、TCAMセルアレイの構成を示すブロック図である。この実施の形態3では、実施の形態1(図1)または実施の形態2(図5)にて示したTCAMセルによるTCAMセルアレイ全体を例えば4つのサブアレイに分割し、検索動作をサブアレイ毎に実行するが、その際にマッチ線を順々に間引く、つまり階層的に間引くことで、低電力消費型検索動作を実現する構成例が示されている。
図6において、TCAMセルアレイ全体が、例えば288ビットで構成される場合に、[287:216][215:144][143:72][71:0]の4つのサブアレイに分割されている。図6では、サブアレイ[287:216]をステージ1、サブレイ[215:144]をステージ2、サブアレイ[143:72]をステージ3、サブアレイ[71:0]をステージ4と称している。そして、各ステージはいわゆるパイプライン方式で連結されている。
ステージ1では、プリチャージ線601と電源線とにANDゲート611の入力端が接続され、ANDゲート611の出力端がMOSトランジスタ612のゲート電極に接続されている。MOSトランジスタ612のソース電極は電源に接続され、ドレイン電極はマッチ線MLに接続されている。これによって、マッチ線MLは、検索動作開始前にVcc−Vthのレベルにプリチャージされる。マッチ線MLは、増幅器613の正相入力端(+)に接続され、増幅器613の逆相入力端(−)には、基準電圧refが与えられている。
このステージ1では、[287:216]の全ビット群のエントリについて検索動作が行われる。一致したマッチ線MLは、Vcc−Vthのレベルを保持しているので、そのマッチ線MLが接続される増幅器613は出力をMOSレベルの“H”レベルにする。一方、不一致となったマッチ線MLではレベル降下が生じ、Vcc−Vthのレベルから例えば(1/2)Vccのレベルに低下すると、そのマッチ線MLが接続される増幅器613は出力をMOSレベルの“L”レベルにする。
ステージ1と次のステージ2とを連結するプリチャージステージでは、増幅器613の出力を受けるパイプラインレジスタ622と、パイプラインレジスタ622の出力端とプリチャージ線621とが接続されるANDゲート623とが設けられている。パイプラインレジスタ622は、対応する増幅器613の出力が“H”レベルのときは、出力を“H”レベルにし、対応する増幅器613の出力が“L”レベルのときは、出力を“L”レベルにする。したがって、複数のANDゲート623のうち、“H”レベルを出力しているパイプラインレジスタ622に対応しているANDゲート623のみが出力を“H”レベルにする。
ステージ2では、MOSトランジスタ624と増幅器625とが設けられている。MOSトランジスタ624のゲート電極はANDゲート623の出力端に接続され、ソース電極は電源に接続され、ドレイン電極はマッチ線MLに接続されている。マッチ線MLは、増幅器625の正相入力端(+)に接続され、増幅器625の逆相入力端(−)には、基準電圧refが与えられている。そして、パイプラインレジスタ622の出力端が増幅器625の制御信号入力端に接続されている。
つまり、このステージ2では、複数のパイプラインレジスタ622のうち、出力を“H”レベルにしているパイプラインレジスタ622の出力を受けたANDゲート623に関わるマッチ線MLのみがプリチャージされる。そして、そのマッチ線MLが接続される増幅器625のみが増幅動作を行い、検索結果を次段のステージ3に伝達する。したがって、ステージ2では、[215:144]の全ビット群のエントリについて検索動作が実行されるのではなく、前段のステージ1において一致判定が行われたマッチ線MLについてのみ、検索動作が実行されることになる。このとき、前段のステージ1において不一致判定が行われたマッチ線MLは、(1/2)Vccレベルを維持し、サーチ線(SL,ZSL)の電位変化に影響されないので、誤動作が生ずることはない。
ステージ2と次のステージ3と連結するプリチャージステージでは、増幅器625の出力を受けるパイプラインレジスタ632と、パイプラインレジスタ632の出力端とプリチャージ線631とが接続されるANDゲート633とが設けられている。ステージ3以降は、図示省略したが、同様の構成になっている。
次に、図7を参照して実施の形態3による低消費電力型検索動作について説明する。図7では、図6と同様に、TCAMセルアレイ全体が、例えば288ビットで構成される場合に、[287:216][215:144][143:72][71:0]の4つのサブアレイに分割され、サブアレイ[287:216]をステージ1、サブアレイ[215:144]をステージ2、サブアレイ[143:72]をステージ3、サブアレイ[71:0]をステージ4と称している。そして、各ステージはいわゆるパイプライン方式で連結されている。
図7において、ステージ1では、[287:216]の全ビット群のエントリについて、全サーチ線および全マッチ線を対象として検索動作が行われる。そして、ステージ1において一致判定のなされたマッチ線MLが検出され、それがプリチャージステージを介してステージ2に伝達される。
ステージ2では、[215:144]の全ビット群のうち、ステージ1にて一致判定のなされたマッチ線に関わるエントリについて検索動作が行われ、一致するマッチ線の絞り込みが行われ、その絞り込みが行われたマッチ線がステージ3に伝達される。
このように、ステージ2では、[215:144]の全ビット群を検索対象とはしないので、消費電力の低減が図られる。ステージ3では、さらに対象となるマッチ線の絞り込みが行われるので、ステージ3,4においても同様に消費電力の低減が図られる。このように、階層的に消費電力の低減が図られる。
ここで、検索動作において消費する電力の内訳は、大きく3つの成分からなる。第1はサーチ線の充放電(a)である。第2はマッチ線の充放電(b)である。第3はアンプの活性化(c)である。この内訳で区分して消費電力を示すと次のようになる。
今、TCAMセルアレイがビット[287:0]のNエントリからなるとして、例えばステージ1の検索においてNエントリのうち、20エントリがヒット(一致)し、ステージ2では10エントリがヒットし、ステージ3では3エントリがヒットし、ステージ4で1エントリが最終的に検索データ288ビットと一致したとする。
この場合の消費電力は、次のようになる。ステージ1では[Nエントリ×288ビット]a+[Nエントリ×288ビット]b+[Nエントリ×288ビット]cとなる。ステージ2では[Nエントリ×288ビット]a+[20エントリ×288ビット]b+[20エントリ×288ビット]cとなる。ステージ3では[Nエントリ×288ビット]a+[10エントリ×288ビット]b+[10エントリ×288ビット]cとなる。ステージ4では[Nエントリ×288ビット]a+[3エントリ×288ビット]b+[3エントリ×288ビット]cとなる。
同様の内訳で従来例におけるTCAMセルアレイでの消費電力を示す。全てのステージで全てのエントリを対象にするので、ステージ1〜ステージ4では、等しく、[Nエントリ×288ビット]a+[Nエントリ×288ビット]b+[Nエントリ×288ビット]cとなる。このことからも、この実施の形態3では、大幅な消費電力の低減が行われていることが理解できる。
このように、実施の形態3によれば、TCAM特有の検索動作においては、検索動作をメモリアレイ全体に及ぼすのではなく、例えば、Nビット長、Mエントリのデータであれば、まず全てのエントリの上位N/2ビットについて検索を行い、一致したエントリだけの次の下位N/2ビットについて検索の対象とするという階層型検索方法を採用した。
したがって、検索動作時の消費電力低減を図ることができる。このとき、検索に要する時間が長くなると性能が低下するので、性能の低下を防ぐため、各ビット間の動作をいわゆるパイプライン接続し、スループットレートを確保するようにしている。
実施の形態4.
図8は、この発明の実施の形態4による低電力消費型検索動作を実現する連想メモリセルアレイとして、TCAMセルアレイの構成を示すブロック図である。この実施の形態4では、実施の形態1(図1)または実施の形態2(図5)にて示したTCAMセルによるTCAMセルアレイ全体を例えば4つのサブアレイに分割し、検索動作をサブアレイ毎に実行するが、その際にマッチ線に加えサーチ線も間引くことで、低電力消費型検索動作を実現する構成例が示されている。
図8において、実施の形態3と同様に、TCAMセルアレイ全体が、例えば288ビットで構成される場合に、[287:216][215:144][143:72][71:0]の4つのサブアレイに分割されている。図8では、サブアレイ[287:216]をステージ1、サブアレイ[215:144]をステージ2、サブアレイ[143:72]をステージ3、サブアレイ[71:0]をステージ4と称している。そして、各ステージはいわゆるパイプライン方式で連結されている。
ステージ1では、実施の形態3と同様に、マッチ線MLの電位状態(検索結果)が増幅器801にてMOSの振幅レベルに増幅される。ステージ2では、増幅器801の出力を取り込むパイプラインレジスタ802と、パイプラインレジスタ802の出力がゲート電極に入力されるMOSトランジスタ803とを備えている。複数のMOSトランジスタ803のドレイン電極は、それぞれ接地(GND)され、ソース電極は共通にMOSトランジスタ804のドレイン電極にワイヤードオア接続されている。
MOSトランジスタ804のドレイン電極は、ステージ3においてパイプラインレジスタ805の入力端に接続され、パイプラインレジスタ805の出力端には、サーチ線SLの駆動回路806が並列に接続されている。
要するに、ステージ1では、マッチ線MLの電位状態(検索結果)が増幅され、検索結果がステージ2に伝達される。ステージ2では、検索結果がワイヤードオアされて全てのエントリに対して一致がなかったことが判断される。そして、ワイヤードオアされた信号がパイプラインレジスタ805を介してサーチ線の駆動回路806に与えられ、サーチ線SLの一部駆動・全休止の制御が行われる。
次に、図9を参照して実施の形態4による低電力消費型検索動作について説明する。図9では、図8と同様に、TCAMセルアレイ全体が、例えば288ビットで構成される場合に、[287:216][215:144][143:72][71:0]の4つのサブアレイに分割され、サブアレイ[287:216]をステージ1、サブアレイ[215:144]をステージ2、サブアレイ[143:72]をステージ3、サブアレイ[71:0]をステージ4と称している。そして、各ステージはいわゆるパイプライン方式で連結されている。各サブアレイには、サーチ線SLの駆動回路たるサーチドライバ901,902,903,904が設けられている。
ステージ1では、全サーチ線SL並び全マッチ線MLが検索動作の対象となる。ステージ2では、全サーチ線SLと部分的マッチ線MLが検索動作の対象となる。ここで、ステージ3では、マッチ線MLがひとつもなかったとする。つまり、検索データと一致するデータ列がステージ3にきたときにすでにこのサブアレイ内にないことが解ったとする。
この場合には、ステージ4におけるマッチ線MLだけでなくサーチ線SLの発生源であるサーチドライバ904に対してディスエイブル信号(disable)を送り、動作を止めるようにしている。したがって、この実施の形態4によれば、実施の形態3と同様の作用効果が得られる。
実施の形態5.
図10は、この発明の実施の形態5による低電力消費型検索動作を実現する連想メモリセルアレイとして、TCAMセルアレイの構成を示すブロック図である。この実施の形態5では、実施の形態1(図1)または実施の形態2(図5)にて示したTCAMセルによるTCAMセルアレイ全体をサブアレイに分割し、検索動作をサブアレイ毎に実行する場合に、マッチ線とサーチ線とのタイミングを合わせる構成例が示されている。
図10において、TCAMセルアレイ全体が、例えば、143ビットで構成される場合に、[143:108][107:72][71:36]・・のサブアレイに分割されている。
[143:108]のサブアレイでは、マッチ線MLに関しては、入力端がプリチャージラインと電源ラインとに接続されるANDゲート1001とANDゲート1001の出力を受けてマッチ線MLのプリチャージを実行するMOSトランジスタ1002が設けられ、マッチ線MLの電位状態(検索結果)は、パイプラインレジスタ1011に取り込まれる。これに対し、サーチ線SLに関しては、タイミング調整用の1つのレジスタ1003が設けられている。
[107:72]のサブアレイでは、マッチ線MLに関しては、入力端がプリチャージラインとパイプラインレジスタ1011の出力端とに接続されるANDゲート1012とANDゲート1012の出力を受けてマッチ線MLのプリチャージを実行するMOSトランジスタ1013が設けられ、マッチ線MLの電位状態(検索結果)は、パイプラインレジスタ1021に取り込まれる。これに対し、サーチ線SLに関しては、タイミング調整用の2つのレジスタ1014,1015が設けられている。
[71:36]のサブアレイでは、マッチ線MLに関しては、入力端がプリチャージラインとパイプラインレジスタ1021の出力端とに接続されるANDゲート1022とANDゲート1022の出力を受けてマッチ線MLのプリチャージを実行するMOSトランジスタ1023が設けられ、マッチ線MLの電位状態(検索結果)は、同様に図示しない次段のパイプラインレジスタに取り込まれる。これに対し、サーチ線SLに関しては、タイミング調整用の3つのレジスタ1024,1025,1026が設けられている。
この構成によれば、複数のサブアレイをパイプラインで連結する場合のタイミングの問題が解消される。
実施の形態6.
図11は、この発明の実施の形態6によるアドレス検索メモリの構成を示す回路図である。図11において、並列に配置される連想メモリセルアレイであるTCAMセルアレイ1101,1102は、実施の形態1(図1)または実施の形態2(図5)にて示したTCAMセルによって構成されている。TCAMセルアレイ1101,1102の間には、駆動回路1104とセンスアンプ1103とが設けられている。駆動回路1104には、書き込み駆動回路とサーチ線駆動回路とが含まれている。
また、TCAMセルアレイ1101,1102に対して、行デコーダ1105,1106と検索エンコーダ1107,1108が、それぞれ独立して設けられ、検索エンコーダ1107,1108の出力は、セレクタ1109を介して外部に出力される。
図12は、並列に配置される2つのTCAMセルアレイの各TCAMセルとその間に配置されるセンスアンプおよび駆動回路の関係を示す回路図である。図12において、TCAMセル1201,1201は、図11におけるTCAMセルアレイ1101における隣接した2つのTCAMセルを示している。同様に、TCAMセル1202,1202は、図11におけるTCAMセルアレイ1102における隣接した2つのTCAMセルを示している。
TCAMセル1201とTCAMセル1202の間は、書き込み、読み出し、およびリフレッシュの各動作を実施するため相補的なビット線1210,1211と、検索動作を行うための相補的なサーチ線1221,1222とで接続されている。
ビット線1210,1211には、途中にMOSトランジスタで構成されるバッファ回路1213,1214がそれぞれ設けられている。バッファ回路1213,1214のMOSトランジスタは、制御線1215,1216によってそれぞれON/OFF制御できるようになっている。バッファ回路1213,1214間には、センスアンプ1203と書き込み駆動回路1204が配置されている。センスアンプ1203と書き込み駆動回路1204は、それぞれビット線1210,1211に接続されている。
また、サーチ線1221,1222には、途中にMOSトランジスタで構成されるバッファ回路1223,1224がそれぞれ設けられている。バッファ回路1223,1224のMOSトランジスタは、制御線1225,1226によってそれぞれON/OFF制御できるようになっている。バッファ回路1223,1224の間には、サーチ線駆動回路1205が配置されている。サーチ線駆動回路1205は、サーチ線1221,1222に接続されている。
次に、図11と図12とを参照して実施の形態6によるアドレス検索メモリの動作について説明する。この実施の形態6によるアドレス検索メモリでは、次の3つの動作モードが可能である。まず、第1の動作モードは、TCAMセルアレイ1101,1102を1つのメモリ空間として使用する動作モードである。すなわち、書き込み命令と検索命令の一方をTCAMセルアレイ1101,1102の双方に与える。これによれば、書き込みと検索が一方に限られるが、メモリ空間が大きく使用できる低速大容量の動作モードが実現できる。
図12で説明すれば、書き込み、読み出し、およびリフレッシュを行うときには、制御線1215、1216の一方によってバッファ回路1213,1214の一方をON状態にする。このときは、バッファ回路1223,1224は、いずれも制御線1225,1226によってOFF状態にする。これによって、TCAMセルアレイ1101,1102は、連続した1つのメモリ領域として使用することができる。
一方、検索動作時は、上記とは逆に、バッファ回路1223,1224は、双方を制御線1225,1226によってON状態にする。バッファ回路1213,1214は、いずれも制御線1215,1216によってOFF状態にする。
また、第2の動作モードは、TCAMセルアレイ1101,1102をそれぞれ独立したメモリ空間として使用する動作モードである。すなわち、TCAMセルアレイ1101,1102に同じデータを書き込み、書き換えが必要になった場合には、TCAMセルアレイ1101,1102の間に設けた共通のセンスアンプ1103内の書き込みバッファを用いて片側のアレイに対してのみ実行するモードである。もう一方のアレイに対しては、TCAMセルアレイ1101,1102の間に設けた共通のサーチ線駆動回路1104を用いて検索動作を中断することなく実行することができる。
図12で説明すれば、書き込み、読み出し、およびリフレッシュを行うときは、制御線1215,1216によってバッファ回路1213,1214の双方をON状態にする。このときは、バッファ回路1223,1224は、いずれも制御線1225,1226によってOFF状態にする。これによって、TCAMセルアレイ1101,1102には、同じデータが格納される。メモリ領域としては、1/2となる。
そして、書き換えが必要になった場合には、例えばTCAMセルアレイ1101について書き換えを実行する場合には、制御線1215によってバッファ回路1213のみをON動作させる。TCAMセルアレイ1102については、バッファ回路1224を制御線1226によってON動作させることによって検索が行える。
これによって、アドレスの再配置(re-addressing)の必要が生じた場合、検索命令は、書き換え命令と関係なく連続して実行できる。したがって、両アレイが共用するセンスアンプは、安価に構成できるので、近年のネットワークシステムが要求する検索スピードに応え得るアドレス検索装置を安価に提供することが可能となる。
第3の動作モードは、第2の動作モードで両アレイに同一データを書き込んだ状態で、両アレイに対する検索動作を高速に実行するモードである。すなわち、図12で言えば、システムクロックの“H”エッジでは、バッファ回路1223を制御線1225によってON動作させ、バッファ回路1224を制御線1226によってOFF動作させ、TCAMセルアレイ1101を検索する。また、システムクロックの“L”エッジでは、バッファ回路1223を制御線1225によってOFF動作させ、バッファ回路1224を制御線1226によってON動作させ、TCAMセルアレイ1102を検索する。
これによれば、メモリ領域は半分になるが、検索動作速度は、2倍になる。例えば、システムクロックが125MHzで走っている場合に、全体では250MHzの高速検索動作が可能となる。
そして、以上の各動作におけるTCAMセルアレイ1101,1102の出力は、それぞれ独立に検索エンコーダ1107,1108から並列データとして、または直列データとして出力され、セレクタ1109を介して外部に出力される。
実施の形態7.
図13は、この発明の実施の形態7によるネットワークアドレス検索装置として機能するシステムLSIの構成を示すブロック図である。
以上のように、実施の形態1(図1)による連想メモリセルであるTCAMセルは、4個のMOSトランジスタと2個のキャパシタ素子とで構成され、実施の形態2(図5)による連想メモリセルであるTCAMセルは、6個のMOSトランジスタと2個のキャパシタ素子とで構成されるので、占有面積が著しく減少し、大容量搭載が可能となる。また、実施の形態3〜5(図6〜図10)によれば、階層型部分検索が行えるので、消費電力を著しく減少させることが可能となる。
つまり、この発明によれば、特殊な検索動作を行うTCAMの集積度を一段と向上させることができる。したがって、図13に示すように、従来のTCAMは、TCAMセルアレイ1401に優先制御部(プライオリティエンコーダ)を含めたLSIであり、アクションメモリ1403までは含めることができなかったが、この発明によれば、アクションメモリ1403まで含めたシステムLSIとすることができる。
前述したように、アプリケーションの立場から実際に必要なものは、TCAMの示すエントリ番号ではなく次にホップするためのアクションであるので、この発明によれば、使い勝手の優れたネットワークアドレス検索装置として機能するシステムLSIを構成することが可能となる。
図14は、図13に示すネットワークアドレス検索装置として機能するシステムLSIの具体的構成を示すブロック図である。図14に示すように、TCAMセルアレイ1501のマッチ線MLを増幅器1502にて増幅して、パイプラインレジスタ1503に保持させ、パイプラインレジスタ1503の出力をダイナミックRAM(DRAM)からなるアクションメモリ1504のワード線WLとして直接用いるように構成する。このようにすれば、ヒットしたエントリのアクションが自動的にセンスアンプ1505によって増幅され、所望の出力が得られるようになる。すなわち、アプリケーション上、使い勝手の優れたネットワークアドレス検索装置として機能するシステムLSIを構成することができる。
なお、以上説明した実施の形態では、連想メモリセルとして、ダイナミック型記憶セルを示したが、この発明は、ダイナミック型記憶セルに限定されるものではなく、例えば、SRAM型記憶セルなど、その他の記憶セルにも同様に適用できるものである。
以上のように、この発明にかかる連想メモリセルは、検索動作時の低消費電力化を図るのに有用である。
この発明にかかる連想メモリセルアレイは、検索動作を低消費電力のもとで実行できるようにして高速化を図るのに有用である。
この発明にかかるアドレス検索メモリは、近年のネットワークシステムが要求する検索スピードに応え得るアドレス検索装置を安価に実現するのに有用である。
この発明にかかるネットワークアドレス検索装置は、使い勝手の優れたシステムLSIとして実現するのに有用である。
この発明の実施の形態1による連想メモリセルとして、TCAMセルの構成を示す回路図である。 図1に示すTCAMセルにて行われる読み出し動作、書き込み動作の説明図である。 図1に示すTCAMセルにて行われる検索動作の説明図である。 図1に示すTCAMセルの動作タイムチャートである。 この発明の実施の形態2による連想メモリセルとして、TCAMセルの構成を示す回路図である。 この発明の実施の形態3による低電力消費型検索動作を実現する連想メモリセルアレイとして、TCAMセルアレイの構成を示すブロック図である。 図6に示すTCAMセルアレイにて行われる低電力消費型検索動作の説明図である。 この発明の実施の形態4による低電力消費型検索動作を実現する連想メモリセルアレイとして、TCAMセルアレイの構成を示すブロック図である。 図8に示すTCAMセルアレイにて行われる低電力消費型検索動作の説明図である。 この発明の実施の形態5による低電力消費型検索動作を実現する連想メモリセルアレイとして、TCAMセルアレイの構成を示すブロック図である。 この発明の実施の形態6によるアドレス検索メモリの構成を示すブロック図である。 図11に示す並列に配置される2つのTCAMセルアレイの各TCAMセルとその間に配置されるセンスアンプおよび駆動回路の関係を示す回路図である。 この発明の実施の形態7であるネットワークアドレス検索装置として機能するシステムLSIの構成を示すブロック図である。 図13に示すネットワークアドレス検索装置として機能するシステムLSIの具体的構成を示すブロック図である。 アドレス検索用装置としてのTCAMが使用されるネットワークシステムの構成例を示す図である。 ハードウェア処理によるパケットの分類アルゴリズムを説明する図である。 TCAMの基本構成および検索動作を説明する概念図である。 TCAMの詳細構成を示すブロック図である。 図18に示す従来のTCAMセルの構成を示す概念図である。 図18に示す従来のTCAMにて行われる検索動作の説明図である。 従来のTCAMを用いてアドレス再配置時の問題を解決する場合の構成例を示すブロック図である。
符号の説明
101,102,103,104 MOSトランジスタ
105,106 キャパシタ素子
151 クランプ回路
201,1101,1102,1401,1501 連想メモリセルアレイ(TCAMセルアレイ)
203,1103,1203 センスアンプ
501 電流制限回路
1104 駆動回路(書き込み駆動回路、サーチ線駆動回路)
1107,1108 検索エンコーダ
1201,1202 TCAMセル(連想メモリセル)
1204 書き込み駆動回路
1205 サーチ線駆動回路
1402 優先制御部(プライオリティエンコーダ)
1403,1504 アクションメモリ

Claims (20)

  1. データ入出力を行う2つのビット線に接続され、書き込まれたデータを保持する第1の記憶ノードおよび第2の記憶ノードを有するメモリセルと、
    ゲート電極が前記2つの記憶ノードにそれぞれ接続され、一方の信号電極が検索データを与える2つのサーチ線の対応するサーチ線に接続され、他方の信号電極が出力線にそれぞれ接続される2つのMOSトランジスタで構成され、前記2つのサーチ線に供給される検索データと前記2つの記憶ノードの保持データとの一致比較を行い、一致するとき前記出力線をプリチャージレベルに維持し、不一致のとき前記出力線をプリチャージレベルから引き下げる動作を行う一致比較回路と、
    前記2つのサーチ線および前記出力線のプリチャージレベルは、それぞれ、動作電源レベルから所定値だけ下がったレベルであり、比較の結果不一致のときに前記プリチャージレベルから電荷引き抜きが行われ降下する前記出力線の電位レベルが接地電位レベルに到達する以前の所定電位レベルで止まるようにするレベル維持手段と、
    を備えたことを特徴とする連想メモリセル。
  2. 前記レベル維持手段は、前記出力線に設けられ、当該出力線の電位レベルが一定レベル以下に降下しないようにするクランプ回路であることを特徴とする請求項1に記載の連想メモリセル。
  3. 前記レベル維持手段は、前記一致比較回路の2つのMOSトランジスタの他方の信号電極と前記出力線との間にそれぞれ設けられ、ゲート電極が前記出力線にそれぞれ接続される2つのMOSトランジスタで構成される電流制限回路であることを特徴とする請求項1に記載の連想メモリセル。
  4. データ入出力を行う2つのビット線に接続され、書き込まれたデータを保持する第1の記憶ノードおよび第2の記憶ノードを有するメモリセルと、
    ゲート電極が前記2つの記憶ノードにそれぞれ接続され、一方の信号電極が検索データを与える2つのサーチ線の対応するサーチ線に接続され、他方の信号電極が出力線にそれぞれ接続される2つのMOSトランジスタで構成され、前記2つのサーチ線に供給される検索データと前記2つの記憶ノードの保持データとの一致比較を行い、一致するとき前記出力線をプリチャージレベルに維持し、不一致のとき前記出力線をプリチャージレベルから引き下げる動作を行う一致比較回路と、
    前記2つのサーチ線および前記出力線のプリチャージレベルは、それぞれ、動作電源レベルから所定値だけ下がったレベルであり、比較の結果不一致のときに前記プリチャージレベルから電荷引き抜きが行われ降下する前記出力線の電位レベルが接地電位レベルに到達する以前の所定電位レベルで止まるようにするレベル維持手段と、
    を備える連想メモリセルによって構成される連想メモリセルアレイであって、
    M個のエントリがそれぞれNビット長のデータで構成される場合に、当該連想メモリセルアレイをN/Lビット単位のサブアレイに分割し、まず最上位のサブアレイにおいて前記2つのサーチ線に検索データを与えてN/Lビットについて前記一致比較を実行させてM個のエントリに対応する前記出力線のうち一致したことを示す出力線を検出保持し、次上位のサブアレイにおいて前記2つのサーチ線に検索データを与えて前記検出された出力線についての一致比較を実行させ一致したことを示す出力線を検出保持する動作を下位のサブアレイに向かって順々に実行するパイプライン制御手段、
    を備えたことを特徴とする連想メモリセルアレイ。
  5. 前記次上位のサブアレイ以降の各サブアレイでは、上位のサブアレイにて検出された出力線に対応する出力線のみをプリチャージする手段、を備えたことを特徴とする請求項4に記載の連想メモリセルアレイ。
  6. 前記次上位のサブアレイ以降の各サブアレイでは、上位のサブアレイにおける出力線の検出結果に応じて当該サブアレイに属する前記2つのサーチ線の全部または一部について検索データを与えないようにする検索制御手段、を備えたことを特徴とする請求項4または5に記載の連想メモリセルアレイ。
  7. 前記各サブアレイでは、前記出力線と前記2つのサーチ線とのタイミングを調整する調整手段、を備えたことを特徴とする請求項4〜6のいずれか一つに記載の連想メモリセルアレイ。
  8. 前記レベル維持手段は、前記出力線に設けられ、当該出力線の電位レベルが一定レベル以下に降下しないようにするクランプ回路であることを特徴とする請求項4に記載の連想メモリセルアレイ。
  9. 前記レベル維持手段は、前記一致比較回路の2つのMOSトランジスタの他方の信号電極と前記出力線との間にそれぞれ設けられ、ゲート電極が前記出力線にそれぞれ接続される2つのMOSトランジスタで構成される電流制限回路であることを特徴とする請求項4に記載の連想メモリセルアレイ。
  10. データ入出力を行う2つのビット線に接続され、書き込まれたデータを保持する第1の記憶ノードおよび第2の記憶ノードを有するメモリセルと、
    ゲート電極が前記2つの記憶ノードにそれぞれ接続され、一方の信号電極が検索データを与える2つのサーチ線の対応するサーチ線に接続され、他方の信号電極が出力線にそれぞれ接続される2つのMOSトランジスタで構成され、前記2つのサーチ線に供給される検索データと前記2つの記憶ノードの保持データとの一致比較を行い、一致するとき前記出力線をプリチャージレベルに維持し、不一致のとき前記出力線をプリチャージレベルから引き下げる動作を行う一致比較回路と、
    前記2つのサーチ線および前記出力線のプリチャージレベルは、それぞれ、動作電源レベルから所定値だけ下がったレベルであり、比較の結果不一致のときに前記プリチャージレベルから電荷引き抜きが行われ降下する前記出力線の電位レベルが接地電位レベルに到達する以前の所定電位レベルで止まるようにするレベル維持手段と、
    を備える連想メモリセルによって構成される連想メモリセルアレイの2個に対し、
    前記2個の連想メモリセルアレイの間に、前記2個の連想メモリセルアレイに対する書き込みと読み出しおよびリフレッシュを制御する第1制御手段と、前記2個の連想メモリセルアレイに対する検索動作を制御する第2制御手段とがそれぞれ配置され、
    前記2個の連想メモリセルアレイそれぞれの出力端に、前記第2制御手段によって制御された検索結果をエンコードするエンコーダが配置されている、
    ことを特徴とするアドレス検索メモリ。
  11. 前記レベル維持手段は、前記出力線に設けられ、当該出力線の電位レベルが一定レベル以下に降下しないようにするクランプ回路であることを特徴とする請求項10に記載のアドレス検索メモリ。
  12. 前記レベル維持手段は、前記一致比較回路の2つのMOSトランジスタの他方の信号電極と前記出力線との間にそれぞれ設けられ、ゲート電極が前記出力線にそれぞれ接続される2つのMOSトランジスタで構成される電流制限回路であることを特徴とする請求項10に記載のアドレス検索メモリ。
  13. 前記第1制御手段は、前記2個の連想メモリセルアレイを互いに独立したメモリ空間として制御する第1モードと、前記2個の連想メモリセルアレイを全体として1つのメモリ空間として制御する第2モードと、を備えたことを特徴とする請求項10に記載のアドレス検索メモリ。
  14. 前記第2制御手段は、前記2個の連想メモリセルアレイに対し同時に検索動作を実施するモードと、システムクロックの前縁と後縁を利用して前記2個の連想メモリセルアレイに対し交互に検索動作を実施するモードと、を備えたことを特徴とする請求項10に記載のアドレス検索メモリ。
  15. 前記第1制御手段は、前記2個の連想メモリセルアレイに同一のデータを書き込んだ後に、一方の連想メモリセルアレイに対し書き換えを実施し、その間、前記第2制御手段は、他方の連想メモリセルアレイに対して検索動作を実施することを特徴とする請求項10に記載のアドレス検索メモリ。
  16. 前記2つのエンコーダは、それぞれを並列直列変換して出力するモードと、それぞれを並列に出力するモードとの一方または双方を備えたことを特徴とする請求項10に記載のアドレス検索メモリ。
  17. データ入出力を行う2つのビット線に接続され、書き込まれたデータを保持する第1の記憶ノードおよび第2の記憶ノードを有するメモリセルと、ゲート電極が前記2つの記憶ノードにそれぞれ接続され、一方の信号電極が検索データを与える2つのサーチ線の対応するサーチ線に接続され、他方の信号電極が出力線にそれぞれ接続される2つのMOSトランジスタで構成され、前記2つのサーチ線に供給される検索データと前記2つの記憶ノードの保持データとの一致比較を行い、一致するとき前記出力線をプリチャージレベルに維持し、不一致のとき前記出力線をプリチャージレベルから引き下げる動作を行う一致比較回路と、前記2つのサーチ線および前記出力線のプリチャージレベルは、それぞれ、動作電源レベルから所定値だけ下がったレベルであり、比較の結果不一致のときに前記プリチャージレベルから電荷引き抜きが行われ降下する前記出力線の電位レベルが接地電位レベルに到達する以前の所定電位レベルで止まるようにするレベル維持手段と、を備える連想メモリセルによって構成される連想メモリセルアレイと、
    前記連想メモリセルアレイにおける一致比較の結果、一致したことを示す前記出力線が複数あるとき、選択した1つの出力線に対応するエントリを出力する優先制御手段と、
    アクションデータを記憶し、前記優先制御手段の出力を受けて次に実行すべきアクションを出力する記憶手段と、
    が同一の半導体基板上に形成されていることを特徴とするネットワークアドレス検索装置。
  18. データ入出力を行う2つのビット線に接続され、書き込まれたデータを保持する第1の記憶ノードおよび第2の記憶ノードを有するメモリセルと、ゲート電極が前記2つの記憶ノードにそれぞれ接続され、一方の信号電極が検索データを与える2つのサーチ線の対応するサーチ線に接続され、他方の信号電極が出力線にそれぞれ接続される2つのMOSトランジスタで構成され、前記2つのサーチ線に供給される検索データと前記2つの記憶ノードの保持データとの一致比較を行い、一致するとき前記出力線をプリチャージレベルに維持し、不一致のとき前記出力線をプリチャージレベルから引き下げる動作を行う一致比較回路と、前記2つのサーチ線および前記出力線のプリチャージレベルは、それぞれ、動作電源レベルから所定値だけ下がったレベルであり、比較の結果不一致のときに前記プリチャージレベルから電荷引き抜きが行われ降下する前記出力線の電位レベルが接地電位レベルに到達する以前の所定電位レベルで止まるようにするレベル維持手段と、を備える連想メモリセルによって構成される連想メモリセルアレイと、
    前記連想メモリセルアレイにおける一致比較の結果、一致したことを示す前記出力線の電位レベルをMOSトランジスタの動作レベルに変換して保持する保持手段と、
    前記保持手段の出力を直接行選択信号として用いるダイナミック型記憶セルで構成され、アクションデータを記憶する記憶手段と、
    が同一の半導体基板上に形成されていることを特徴とするネットワークアドレス検索装置。
  19. 前記レベル維持手段は、前記出力線に設けられ、当該出力線の電位レベルが一定レベル以下に降下しないようにするクランプ回路であることを特徴とする請求項17または18に記載のネットワークアドレス検索装置。
  20. 前記レベル維持手段は、前記一致比較回路の2つのMOSトランジスタの他方の信号電極と前記出力線との間にそれぞれ設けられ、ゲート電極が前記出力線にそれぞれ接続される2つのMOSトランジスタで構成される電流制限回路であることを特徴とする請求項17または18に記載のネットワークアドレス検索装置。
JP2007213895A 2007-08-20 2007-08-20 連想メモリ Expired - Fee Related JP4391554B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007213895A JP4391554B2 (ja) 2007-08-20 2007-08-20 連想メモリ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007213895A JP4391554B2 (ja) 2007-08-20 2007-08-20 連想メモリ

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2002079457A Division JP2003272386A (ja) 2002-03-20 2002-03-20 Tcamセル、tcamセルアレイ、アドレス検索メモリおよびネットワークアドレス検索装置

Publications (2)

Publication Number Publication Date
JP2008010144A true JP2008010144A (ja) 2008-01-17
JP4391554B2 JP4391554B2 (ja) 2009-12-24

Family

ID=39068175

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007213895A Expired - Fee Related JP4391554B2 (ja) 2007-08-20 2007-08-20 連想メモリ

Country Status (1)

Country Link
JP (1) JP4391554B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11100993B2 (en) 2018-12-11 2021-08-24 Industry-Academic Cooperation Foundation Chosun University TCAM architecture where content-based search is conductible
JP2022522048A (ja) * 2019-04-12 2022-04-13 マイクロン テクノロジー,インク. 連想メモリバッファを備えた連想メモリシステムでの書き込み及びクエリ実行操作

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11100993B2 (en) 2018-12-11 2021-08-24 Industry-Academic Cooperation Foundation Chosun University TCAM architecture where content-based search is conductible
JP2022522048A (ja) * 2019-04-12 2022-04-13 マイクロン テクノロジー,インク. 連想メモリバッファを備えた連想メモリシステムでの書き込み及びクエリ実行操作

Also Published As

Publication number Publication date
JP4391554B2 (ja) 2009-12-24

Similar Documents

Publication Publication Date Title
US6731526B2 (en) CAM cell array, TCAM cell, TCAM cell array, address search memory, and network address search apparatus
US10366754B2 (en) Semiconductor integrated circuit device with reduced power consumption
US8891272B2 (en) Content addressable memory system
JP4343859B2 (ja) 半導体装置
JP3095064B2 (ja) 連想記憶装置
US9087572B2 (en) Content addressable memory
US7139182B2 (en) Cutting CAM peak power by clock regioning
US8659926B1 (en) PMC-based non-volatile CAM
US11107531B2 (en) Search circuits, hammer address management circuits, and memory systems including the same
JP3599273B2 (ja) 内容参照可能メモリの改良
US7423900B2 (en) Methods and apparatus for low power SRAM using evaluation circuit
US7113415B1 (en) Match line pre-charging in a content addressable memory having configurable rows
US8023301B1 (en) Content addressable memory device having state information processing circuitry
US7020000B2 (en) Reducing power dissipation in a match detection circuit
JP4391554B2 (ja) 連想メモリ
US10910055B2 (en) System and method for reducing power consumption of memory device
US20160358654A1 (en) Low-power ternary content addressable memory
JP2004515869A (ja) 連想メモリセル及び設計方法
JP2004171742A (ja) 半導体装置
JP6170718B2 (ja) 検索システム
US6580628B2 (en) Associative memory
JP3632113B2 (ja) 連想メモリ装置
JP5263015B2 (ja) 半導体メモリ
EP0763827B1 (en) Semiconductor memory device having serial access port
JP2009117031A (ja) 半導体装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090113

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090316

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090623

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090811

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091006

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091007

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121016

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121016

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121016

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121016

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131016

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees