JP3964705B2 - 適応置換制御機能を有するセット・アソシアティブ方式のキャッシュシステム及びキャッシュ制御方法 - Google Patents

適応置換制御機能を有するセット・アソシアティブ方式のキャッシュシステム及びキャッシュ制御方法 Download PDF

Info

Publication number
JP3964705B2
JP3964705B2 JP2002082806A JP2002082806A JP3964705B2 JP 3964705 B2 JP3964705 B2 JP 3964705B2 JP 2002082806 A JP2002082806 A JP 2002082806A JP 2002082806 A JP2002082806 A JP 2002082806A JP 3964705 B2 JP3964705 B2 JP 3964705B2
Authority
JP
Japan
Prior art keywords
replacement
data
cache
hit
rule
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.)
Expired - Fee Related
Application number
JP2002082806A
Other languages
English (en)
Other versions
JP2003280987A (ja
Inventor
欣吾 小山
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 JP2002082806A priority Critical patent/JP3964705B2/ja
Publication of JP2003280987A publication Critical patent/JP2003280987A/ja
Application granted granted Critical
Publication of JP3964705B2 publication Critical patent/JP3964705B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、セット・アソシアティブ方式のキャッシュシステム及びキャッシュ制御方法に係り、特に、プロセッサからアクセスされたデータがキャッシュメモリにない場合に、メインメモリのデータと置き換えを行う置換規則を、適応的に切り換える適応置換制御機能を有するセット・アソシアティブ方式のキャッシュシステム及びキャッシュ制御方法に関する。
【0002】
【従来の技術】
従来、コンピュータシステムにおいて、大容量の主記憶装置(メインメモリ)は、動作速度がマイクロプロセッサに比べて遅いため、例えばSRAM等の、容量は小さいが高速のメモリを、キャッシュメモリとしてマイクロプロセッサの内部あるいはその近傍に配置して、メインメモリのデータの一部をこのキャッシュメモリに記憶するようにして、マイクロプロセッサを高速で動作させるようにしている。
【0003】
このようなコンピュータシステムにおいて、マイクロプロセッサからキャッシュメモリへのアクセス要求に対し、要求されたデータがキャッシュメモリに存在しないとき(ミスヒットの場合)は、メインメモリから新たに読み出されたデータがキャッシュメモリのあるブロックに格納される。しかし、一般にキャッシュメモリは、メインメモリに比べ容量が小さいため、キャッシュメモリ中のいずれかのブロックを選択し、そのブロックのデータとメインメモリのデータを置き換える必要がある。
【0004】
従来、このようなデータの置き換えを行う場合、キャッシュメモリ中のどのブロックを置き換えるかを決定する置換規則として、LRU(Least Recently Used)方式( アクセスされたのが最も古いデータのブロックを置き換える方式)、FIFO(First In First Out) 方式( 入れ換えたのが最も古いデータのブロックを置き換える方式)、アクセス頻度による方式、キャッシュのステータスによる固定優先度方式等、様々な方式が提案されている。
【0005】
【発明が解決しようとする課題】
しかしながら、前記従来提案されている各種の置換規則では、その実現される性能がプログラムに依存する部分が大きく、必ずしも良い性能が得られるとは限らないという問題があった。
例えば、2つの置換規則A及びBと、2つのプログラムX及びYがあった場合に、プログラムXを実行するとき、置換規則Aを採用したキャッシュシステムの方が、置換規則Bを採用したキャッシュシステムよりもヒット率が高く、プログラム実行速度が速くなったとしても、プログラムYの実行においても、置換規則Aを採用したキャッシュシステムの方が性能が良いとは限らない。
【0006】
また、同一プログラムを実行するにしても、ある部分は置換規則Aを採用した方が性能が良く、またある部分では置換規則Bを採用した方が性能が良いという場合もある。
このように、キャッシュメモリに対してアクセス要求のあったデータがキャッシュメモリ内に存在するか否かというヒット率(ミス率)は、プログラムの実行速度に大きな影響を与えるため、ヒット率を向上させ、ミス率を低減することのできる置換規則が望まれていた。
【0007】
本発明は、前記従来の問題に鑑みてなされたものであり、実行するプログラムに対して、適応的に置換規則を切り換えることにより、単一の置換規則を採用した場合よりも平均的にプログラムの実行速度を高めることのできる適応置換制御機能を有するセット・アソシアティブ方式のキャッシュシステム及びキャッシュ制御方法を提供することを課題とする。
【0008】
【課題を解決するための手段】
前記課題を解決するために、本発明の第一の態様は、セット・アソシアティブ方式のキャッシュシステムであって、アクセス要求のあったデータがキャッシュメモリ中に存在しない場合に、キャッシュメモリのデータとメインメモリのデータを置き換える置換規則を複数備え、そのうちの1つの置換規則を用いて、前記データの置き換えを行う置換制御回路と、前記置換規則の何れかに対応する複数の性能評価回路を備え、該複数の性能評価回路で対応する前記複数の置換規則のそれぞれのキャッシュ動作をプログラム実行中にシミュレートし、アクセス要求のあったデータがキャッシュメモリ中に存在する割合を示すヒット率及び存在しない割合を示すミス率を、前記複数の置換規則ごとに算出する置換規則性能評価回路と、前記算出されたヒット/ミス率に基づいて、前記置換制御回路で用いる置換規則を、前記複数の置換規則の中の1つと切り換える置換規則切換制御回路と、を備えたことを特徴とする適応置換制御機能を有するセット・アソシアティブ方式のキャッシュシステムを提供する。
【0009】
また、同様に前記課題を解決するために、本発明の第二の態様は、セット・アソシアティブ方式のキャッシュ制御方法であって、アクセス要求のあったデータがキャッシュメモリ中に存在しない場合に、キャッシュメモリのデータとメインメモリのデータを置き換える複数の置換規則を備え、前記複数の置換規則のそれぞれのキャッシュ動作をプログラム実行中にシミュレートし、アクセス要求のあったデータがキャッシュメモリ中に存在する割合を示すヒット率及び存在しない割合を示すミス率を、キャッシュ動作中に前記複数の置換規則毎に算出し、前記算出されたヒット/ミス率に基づいて、前記複数の置換規則のうちで用いる置換規則を適応的に切り換えることを特徴とするセット・アソシアティブ方式のキャッシュ制御方法を提供する。
【0010】
【発明の実施の形態】
以下、本発明の適応置換制御機能を有するセット・アソシアティブ方式のキャッシュシステム及びキャッシュ制御方法について、添付の図面に示される好適実施形態を基に詳細に説明する。
【0011】
図1は、本発明に係る適応置換制御機能を有するセット・アソシアティブ方式のキャッシュシステム及びキャッシュ制御方法の一実施形態の概略構成を示す図である。
図1に示すように、キャッシュシステム1は、置換制御回路10、置換規則性能評価回路12、置換規則切換制御回路14を備え、キャッシュメモリのタグメモリ16のデータを置き換える置換規則を適応的に切り換えるよう制御して、単一の置き換え規則を採用する場合よりも平均的に良い性能を得るようにするものである。
【0012】
置換制御回路10は、複数の置換規則(例えば、#0〜#(N−1)のN個の置換規則)を備え、このN個の置換規則のうち、置換規則切換制御回路14によって選択された1つの置換規則に基づいて、タグメモリ16の置き換えるべき所定のブロック(置換ブロック)を選択し、メインメモリ(図示せず)のデータをタグメモリ16に書き込み(タグメモリライト)、キャッシュメモリ(タグメモリ16)のデータをメインメモリのデータと置き換える。
【0013】
置換規則性能評価回路12は、N個の置換規則毎に、その置換規則によりキャッシュメモリのデータを置き換えた場合の、キャッシュメモリに対する最近一定アクセス回数中のヒット率及びミス率を算出する。図に示すように、置換規則性能評価回路12は、各置換規則毎に、その置換規則用の性能評価回路12aが設けられている。すなわち、置換規則#0用のものから、置換規則#(N−1)用のものまで、N個の各置換規則用の性能評価回路12aを有して構成され、各置換規則毎のヒット率を算出するようにしている。
【0014】
置換規則切換制御回路14は、置換規則性能評価回路12中の各置換規則用の性能評価回路12aで、N個の置換規則毎に算出された各ヒット率/ミス率に基づいて置換制御回路10で用いる置換規則を選択する。このとき、どの置換規則を選択するかは、特に限定はされないが、あまり頻繁に置換規則の切り換えが発生するのを抑制するために、例えば、ある置換規則に対応するヒット率が、他の置換規則に対応するヒット率よりも十分大きい場合に、この置換規則を選択するようにすることが好ましい。ある置換規則に対応するヒット率が他の置換規則に対応するヒット率よりも十分大きいか否かは、その差が予め設定されたある閾値を越えたか否かで判定すればよい。
【0015】
タグメモリ(タグRAM)16は、図示を省略したデータメモリ(データRAM)とともにキャッシュメモリを構成し、データメモリ中に格納されているデータが、メインメモリのどのアドレスに対応するものかを示すアドレス部を格納するものである。データメモリのデータは、タグメモリ16に格納されるアドレス部とプロセッサの示すアクセス先アドレスが一致した場合、それに対応したデータが読み出される。データを置き換える場合には、データとアドレスの両方が置き換えられる。
【0016】
本実施形態は、このように構成されたセット・アソシアティブ方式のキャッシュシステムにおいて、置換規則性能評価回路12中の各置換規則用の性能評価回路12aで、複数の置換規則のそれぞれのキャッシュ動作をプログラム実行中にシミュレートし、各置換規則毎のヒット率を算出して各置換規則の性能を評価し、最も性能の良い置換規則に適応的に切り換えるよう制御するものである。
【0017】
次に、置換規則性能評価回路12及び置換規則切換制御回路14についてさらに詳しく説明する。
図2に、置換規則性能評価回路12を構成する複数(N個)の各置換規則毎に用意された性能評価回路12aの1つの性能評価回路13の一構成例を示す。図2に示すように、ある置換規則の性能評価回路13は、その置換規則の性能評価用タグメモリ13a、比較器13b、ヒット数カウンタ13c及びその置換規則によってデータの置き換えを行う置換制御回路13dを含んで構成される。また、ヒット数カウンタ13cは、ヒット/ミス履歴レジスタ13e及びヒット数出力回路13fを含んでいる。
【0018】
性能評価用タグメモリ13aには、メモリアクセス信号及びアドレス(インデックス部)が入力される。性能評価用タグメモリ13aからは、これらの信号により、そのインデックスに対応する各ウエイ(セットの構成要素)のアドレスが読み出され、比較器13bにおいて、前記読み出されたアドレスと、今メモリアクセスが要求されているアドレス(タグ部)とが比較される。比較器13bからは、前記比較の結果、ヒットがあるか否か(ヒット/ミス)がヒット数カウンタ13c及び置換制御回路13dに出力される。
【0019】
ヒット数カウンタ13cは、キャッシュメモリに対する最近一定アクセス回数中の性能評価用タグメモリ13aにおけるヒット数(ヒット率)を出力する回路である。ヒット/ミス履歴レジスタ13eは、その一定アクセス回数分のビット数を持っている。比較器13bから出力されるヒット信号(ヒット/ミス)は、メモリアクセス発生ごとにヒット/ミス履歴レジスタ13eにシフト入力され、それにより最近一定アクセス回数中のヒット/ミス履歴がヒット/ミス履歴レジスタ13eに保持される。ヒット数出力回路13fは、ヒット/ミス履歴レジスタ13eの中身から、最近一定アクセス回数中のヒット数を出力する。
【0020】
また、置換制御回路13dは、その性能評価回路13が評価しようとする置換規則を備えており、比較器13bからヒット/ミス結果を受け取り、ミス発生時には、その置換規則により性能評価用タグメモリ13aのブロックを置き換えるため、置換ブロック選択信号及び性能評価用タグメモリライト信号を生成する。
【0021】
置換規則切換制御回路14は、各置き換え規則用の性能評価回路12aが出力する一定アクセス回数中のヒット数の最大値選択回路と、複数のヒット数が同じ場合に対応するための優先度付けをして出力する回路とにより、構成することができる。
ただし、このように構成した場合、置換規則の切り換えが過剰な頻度で発生する可能性があるため、それを回避するように回路を設計することが好ましい。
【0022】
図3に示す回路は、前記問題を回避するため、置換規則切換制御回路14を構成した例である。レジスタ14aに所定の閾値を予め設定しておき、ある置換規則のヒット数と他の置換規則のヒット数との差が前記レジスタ14aに設定された閾値を越えないと、置換規則選択信号が切り換わらないように動作する。
【0023】
また、図3において、置換規則切換制御回路14には、ヒット数が入力され、αを置換規則用の性能評価回路のヒット数、βをヒット数にレジスタ値を加算した値とするとき、比較回路14bは、α>βのときはγ=1、α≦βのときはγ=0を出力し、フリップフロップ14cからは置換規則選択信号が出力される。
【0024】
以下、本実施形態の作用を図4の制御フローチャートを用いて説明する。
まず図4のステップ100において、プログラム実行中にメモリアクセスが発生した場合には、次のステップ102、112、・・・、122以下において、複数(N個)の置換規則に対応した性能評価処理が、置換規則性能評価回路12中の(N個の)各置換規則用の性能評価回路12aにおいて行われ、それぞれ各置換規則に対応したヒット数が算出される。
すなわち、その後のステップ102〜108の処理、ステップ112〜118の処理及びステップ122〜128の処理は、各置換規則に対応した性能評価をシミュレートする処理であり、それぞれ同じ処理が、N個の各性能評価回路12aにおいて、シーケンシャルに、または並行して行われる。
【0025】
そこで、置換規則#0に対応する性能評価回路12a(その具体的構成は、例えば図2に示されている。)の処理であるステップ102〜108の処理についてのみ説明することとする。
ステップ102において、前述したように、置換規則#0用の性能評価回路12a(13)中の比較器13b(図2参照)により、性能評価用タグメモリ13aから読み出されたアドレス(タグ部)と、今メモリアクセスが要求されているアドレス(タグ部)を比較し、ヒットがあるかどうか判定する。
【0026】
ヒットがない場合には、ステップ104へ進み、前述したように、図2の置換制御回路13dにより発生された置換ブロック選択信号及び性能評価用タグメモリライト信号により、置換規則#0評価用タグメモリ13aを更新する。
そして、ステップ106において、ヒット数カウンタ13cにより、ヒット/ミス履歴レジスタ13eのヒット/ミス履歴を更新する。
また、ステップ102において、ヒットがあった場合には、評価用タグメモリ13aは更新せず、直接ステップ106へ進み、ヒット/ミス履歴を更新する。
【0027】
また、ステップ108において、ヒット数出力回路13fにより、置換規則#0における最近一定アクセス回数中のヒット数(ヒット率)を算出し、出力する。
以上のような処理がN個の各置換規則#0〜#(N−1)に対しシーケンシャルに、または並行して行われ、それぞれに対するヒット率(数)が算出され、置換規則切換制御回路14に入力される。
【0028】
次にステップ130において、置換規則切換制御回路14により、ある置換規則のヒット率が他の置換規則のヒット率よりも十分大きいか否か判定する。
ステップ132において、このように他の置換規則のヒット率よりも十分大きいヒット率を有する置換規則を選択し、置換規則選択信号を置換規則切換制御回路14から出力する。
【0029】
出力された置換規則選択信号は、置換制御回路10(図1参照)へ入力される。そして、置換制御回路10は、選択された置換規則に基づいて、置換ブロック選択信号を出力し、タグメモリ16のブロックを置き換え、メインメモリのデータをキャッシュメモリのそのブロックに書き込み(タグメモリライト)、キャッシュメモリのデータをメインメモリのデータと置き換える。
【0030】
このように本実施形態では、プログラム実行中に、複数の各置換規則に対するヒット率(ヒット率)をそれぞれ算出して、比較することにより、各置換規則の性能をシミュレートして、適応的に置換規則を切り換えるようにしたため、単一の置き換え規則を採用する場合よりも、平均的に良い性能を得ることができる。
【0031】
以上、本発明の適応置換制御機能を有するセット・アソシアティブ方式のキャッシュシステム及びキャッシュ制御方法について詳細に説明したが、本発明は、以上の実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において、各種の改良や変更を行ってもよいのはもちろんである。
【0032】
【発明の効果】
以上、説明した通り、本発明によれば、実行するプログラムに対して、適応的に置換規則を切り換えることにより、単一の置換規則を採用した場合よりも平均的に良い性能を得ることができ、プログラムの実行速度を高めることが可能となる。
【図面の簡単な説明】
【図1】 本発明に係る適応置換制御機能を有するセット・アソシアティブ方式のキャッシュシステム及びキャッシュ制御方法の一実施形態の概略構成を示す図である。
【図2】 本実施形態の置換規則性能評価回路を構成する複数の置換規則毎の性能評価回路の一構成例を示す回路図である。
【図3】 本実施形態の置換規則切換制御回路の一構成例を示す回路図である。
【図4】 本実施形態の作用を示す制御フローチャートである。
【符号の説明】
1 キャッシュシステム
10 置換制御回路
12 置換規則性能評価回路
12a 各置換規則用の性能評価回路
13 (ある置換規則に対する)性能評価回路
13a 性能評価用タグメモリ
13b 比較器
13c ヒット数カウンタ
13d 置換制御回路
13e ヒット/ミス履歴レジスタ
13f ヒット数出力回路
14 置換規則切換制御回路
14a レジスタ
14b 比較回路
14c フリップフロップ
16 タグメモリ

Claims (2)

  1. セット・アソシアティブ方式のキャッシュシステムであって、
    アクセス要求のあったデータがキャッシュメモリ中に存在しない場合に、キャッシュメモリのデータとメインメモリのデータを置き換える置換規則を複数備え、そのうちの1つの置換規則を用いて、前記データの置き換えを行う置換制御回路と、
    前記置換規則の何れかに対応する複数の性能評価回路を備え、該複数の性能評価回路で対応する前記複数の置換規則のそれぞれのキャッシュ動作をプログラム実行中にシミュレートし、アクセス要求のあったデータがキャッシュメモリ中に存在する割合を示すヒット率及び存在しない割合を示すミス率を、前記複数の置換規則ごとに算出する置換規則性能評価回路と、
    前記算出されたヒット/ミス率に基づいて、前記置換制御回路で用いる置換規則を、前記複数の置換規則の中の1つと切り換える置換規則切換制御回路と、
    を備えたことを特徴とする適応置換制御機能を有するセット・アソシアティブ方式のキャッシュシステム。
  2. セット・アソシアティブ方式のキャッシュ制御方法であって、
    アクセス要求のあったデータがキャッシュメモリ中に存在しない場合に、キャッシュメモリのデータとメインメモリのデータを置き換える複数の置換規則を備え、
    前記複数の置換規則のそれぞれのキャッシュ動作をプログラム実行中にシミュレートし、アクセス要求のあったデータがキャッシュメモリ中に存在する割合を示すヒット率及び存在しない割合を示すミス率を、キャッシュ動作中に前記複数の置換規則毎に算出し、
    前記算出されたヒット/ミス率に基づいて、前記複数の置換規則のうちで用いる置換規則を適応的に切り換えることを特徴とするセット・アソシアティブ方式のキャッシュ制御方法。
JP2002082806A 2002-03-25 2002-03-25 適応置換制御機能を有するセット・アソシアティブ方式のキャッシュシステム及びキャッシュ制御方法 Expired - Fee Related JP3964705B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002082806A JP3964705B2 (ja) 2002-03-25 2002-03-25 適応置換制御機能を有するセット・アソシアティブ方式のキャッシュシステム及びキャッシュ制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002082806A JP3964705B2 (ja) 2002-03-25 2002-03-25 適応置換制御機能を有するセット・アソシアティブ方式のキャッシュシステム及びキャッシュ制御方法

Publications (2)

Publication Number Publication Date
JP2003280987A JP2003280987A (ja) 2003-10-03
JP3964705B2 true JP3964705B2 (ja) 2007-08-22

Family

ID=29230855

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002082806A Expired - Fee Related JP3964705B2 (ja) 2002-03-25 2002-03-25 適応置換制御機能を有するセット・アソシアティブ方式のキャッシュシステム及びキャッシュ制御方法

Country Status (1)

Country Link
JP (1) JP3964705B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9104435B2 (en) 2009-04-14 2015-08-11 Empire Technology Development Llc Program and data annotation for hardware customization and energy optimization
WO2012095957A1 (ja) * 2011-01-12 2012-07-19 富士通株式会社 キャッシュメモリ装置,キャッシュメモリの制御装置,情報処理装置,キャッシュメモリの制御方法,及びキャッシュメモリ装置の閾値決定プログラム
US9652387B2 (en) 2014-01-03 2017-05-16 Red Hat, Inc. Cache system with multiple cache unit states
JP6488962B2 (ja) * 2015-09-28 2019-03-27 日本電気株式会社 キャッシュ制御装置、キャッシュ制御方法およびキャッシュ制御プログラム
US9928176B2 (en) * 2016-07-20 2018-03-27 Advanced Micro Devices, Inc. Selecting cache transfer policy for prefetched data based on cache test regions
US11210234B2 (en) 2019-10-31 2021-12-28 Advanced Micro Devices, Inc. Cache access measurement deskew

Also Published As

Publication number Publication date
JP2003280987A (ja) 2003-10-03

Similar Documents

Publication Publication Date Title
JP4067887B2 (ja) プリフェッチを行う演算処理装置、情報処理装置及びそれらの制御方法
US7783836B2 (en) System and method for cache management
KR100514677B1 (ko) 컴퓨터 시스템 및 캐시 라인 대체 방법
US7552286B2 (en) Performance of a cache by detecting cache lines that have been reused
CN101470670B (zh) 具有扇区功能的高速缓冲存储器
US9292447B2 (en) Data cache prefetch controller
US11301250B2 (en) Data prefetching auxiliary circuit, data prefetching method, and microprocessor
JP2023507078A (ja) プリフェッチレベルの降格
US20130297882A1 (en) Cache memory device, control unit of cache memory, information processing apparatus, and cache memory control method
US20080301372A1 (en) Memory access control apparatus and memory access control method
JP3964705B2 (ja) 適応置換制御機能を有するセット・アソシアティブ方式のキャッシュシステム及びキャッシュ制御方法
JP4009304B2 (ja) キャッシュメモリおよびキャッシュメモリ制御方法
US20070083718A1 (en) Cache memory and control method thereof
US6792498B2 (en) Memory system with mechanism for assisting a cache memory
WO2023173991A1 (en) Cache line compression prediction and adaptive compression
US5787467A (en) Cache control apparatus
JP2017037538A (ja) 演算処理装置及び演算処理装置の制御方法
JP2001290704A (ja) マルチプロセス制御装置及びマルチプロセス制御方法
JP5077209B2 (ja) メモリ管理装置、メモリ管理方法およびプログラム
US6859849B2 (en) Method and architecture capable of adaptively accessing data and instructions
JPH0612331A (ja) キャッシュメモリ制御装置
JP2002251322A (ja) 記憶装置制御システム
JP2004145780A (ja) マルチプロセッサ・キャッシュ装置
JPH0340412B2 (ja)
JP2000293437A (ja) キャッシュメモリ装置及びキャッシュメモリ制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040820

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070306

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070313

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070426

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: 20070515

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070524

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: 20110601

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110601

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120601

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120601

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130601

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130601

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140601

Year of fee payment: 7

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees