JP2007048285A - キャッシュにおける電力消費削減方法、論理装置及びシステム - Google Patents

キャッシュにおける電力消費削減方法、論理装置及びシステム Download PDF

Info

Publication number
JP2007048285A
JP2007048285A JP2006210350A JP2006210350A JP2007048285A JP 2007048285 A JP2007048285 A JP 2007048285A JP 2006210350 A JP2006210350 A JP 2006210350A JP 2006210350 A JP2006210350 A JP 2006210350A JP 2007048285 A JP2007048285 A JP 2007048285A
Authority
JP
Japan
Prior art keywords
cache
power consumption
code
memory
architecture
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
JP2006210350A
Other languages
English (en)
Other versions
JP5061523B2 (ja
Inventor
Toru Ishihara
亨 石原
Farzan Fallah
ファラー ファルザン
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JP2007048285A publication Critical patent/JP2007048285A/ja
Application granted granted Critical
Publication of JP5061523B2 publication Critical patent/JP5061523B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3225Monitoring of peripheral devices of memory devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0864Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1028Power efficiency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/27Using a specific cache architecture
    • G06F2212/271Non-uniform cache access [NUCA] architecture
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

【課題】メモリシステムにおける電力消費を削減すること。
【解決手段】キャッシュにおける電力消費を削減する方法は、キャッシュのキャッシュセット各々についてキャッシュの最適数を用意するキャッシュの非一様性アーキテクチャを決定する。該非一様なアーキテクチャはキャッシュ中のキャッシュセットが互いに異なる関連値を有することを許容する。キャッシュでの電力消費を削減するために、キャッシュで非一様性アーキテクチャが使用される。本方法は、キャッシュから離れたメモリにどのコードが書き込み可能であるかに応じてコード配置を決定する。コード配置は、メモリからキャッシュにロードされた場合のインターキャッシュラインシーケンシャルフローの出現を減らす。コード配置に従ってコードがコンパイルされ、キャッシュでの電力消費を更に削減するために、メモリからキャッシュへ以後ロードするコードがコード配置に従ってメモリに書き込まれる。
【選択図】図1

Description

本発明は一般にメモリシステムに関連し、特にキャッシュでの電力消費を削減することに関連する。
プロセッサに関するキャッシュは一般に相当な電力量を消費する。一例としてARM920Tの命令キャッシュはプロセッサの電力消費の約25%を占める。別の例として、低電力アプリケーションを意図するストロングARMSA-110の命令キャッシュは、プロセッサの電力消費の約27%を占める。
本発明の課題は、従来のメモリシステムに関連する問題及び欠点を軽減又は解消することである。
一形態では、キャッシュにおける電力消費削減方法は、前記キャッシュのキャッシュセット各々についてキャッシュの最適数を用意するキャッシュの非一様性アーキテクチャを決定するステップを含む。該非一様なアーキテクチャは前記キャッシュ中のキャッシュセットが互いに異なる関連値を有することを許容する。本方法は、前記キャッシュでの電力消費を削減するために、前記キャッシュで前記非一様性アーキテクチャを使用するステップも含む。
別の形態では、本方法は、前記キャッシュから離れたメモリにどのコードが書き込み可能であるかに応じてコード配置を決定するステップを含む。コード配置は、前記メモリから前記キャッシュにロードされた場合のインターキャッシュラインシーケンシャルフローの出現を減らす。本方法は、前記コード配置に従って前記コードをコンパイルするステップと、前記キャッシュでの電力消費を更に削減するために、前記メモリから前記キャッシュへ以後ロードするコードを前記コード配置に従って前記メモリに書き込むステップとを更に有する。
本発明の特定の実施例は1以上の技術的恩恵をもたらす。非限定的な一例として、特定の実施例はキャッシュにおける電力消費を低減する。特定の実施例は非一様なキャッシュ構造を用意し、キャッシュにおける電力消費を減らす。特定の実施例はタグルックアップ、ウェイルックアップ又は双方を減らすコード配置を支援し、キャッシュにおける電力消費を減らす。特定の実施例はキャッシュアーキテクチャ及びコード配置の同時最適化を支援し、キャッシュウェイ又はタグアクセス及びキャッシュミスを減らす。特定の実施例はこれらの技術的恩恵の全部又は一部をもたらしてもよいし、全くもたらさなくてもよい。特定の実施例は1以上の他の技術的恩恵をもたらし、1以上のそれらは図面、明細書及び特許請求の範囲から当業者にとって明白になるであろう。
本発明並びにその特徴及び利点の理解の完全を期するため、添付図面に関連する以下の説明が参照される。
以下、本発明の実施例によるキャッシュでの電力消費を削減する方法、論理装置及びシステムが説明される。この場合において、論理装置なる語は、ソフトウエアで構成される論理プログラムや、ハードウエアで構成される論理回路を含む概念である。
図1はキャッシュ10の電力消費を減らすための非一様な(ununiform)キャッシュ構造例を示す図である。特定の実施例では、キャッシュ10はプロセッサの構成要素であり、そのプロセッサで実行するコードを一時的に格納するのに使用される。「コード」に関連するものは、適切ならば、1以上の実行可能な命令、他のコード又は双方を包含する。キャッシュ10は複数のセット(set)12、複数のウェイ(way)14及び複数のタグ16を含む。セット12は複数のウェイ14及び複数のタグ16を論理的に横切る。セット12及びウェイ14間の論理的な交差部は、コードを格納するキャッシュ10の中で互いに隣接する複数のメモリを含む。セット12及びタグ16間の論理的な交差部は、キャッシュ10の中で互いに隣接する1以上のメモリセルを含み、そのメモリセルは、キャッシュ10に格納されるコードの発見、キャッシュ10に格納されたコードの確認又は双方を支援するデータを格納する。非限定的な一例として、セット12a及びタグ16a間の第1の論理交差部は1以上のメモリセルを含み、そのメモリセルは、セット12a及びウェイ14a間の第2の論理交差部で格納されるコードの発見、第2路の論理交差部に格納されたコードの確認又は双方を支援するデータを格納する。キャッシュ10は複数のセンスアンプ18も含む。特定の実施例では、センスアンプ18はキャッシュ10内のメモリセルの内容を読み出すのに使用される。特定の構成に従って構築された特定の構成要素を含む特定のキャッシュ10が図示及び説明されるが、本発明は適切な如何なる構成に従って構築された適切な如何なる構成要素を含む適切な如何なるキャッシュ10にも関連する。更に本発明はキャッシュ10に限定されず、適切な如何なるメモリシステムにも関連する。
特定の実施例では、キャッシュ10の非一様なアーキテクチャは、キャッシュ10における電力消費、キャッシュ10からの電流漏れ又は双方を減らす。非一様なアーキテクチャは、セット12が互いに異なる関連値(associativity value)を有することを許容する。特定の実施例では、第1セット12が第1数のアクティブなウェイ14を横切り、第2セット12は第2数のクティブウェイ14を横切り、第1数と第2数は異なる場合に、第1セット12は第2セット12とは異なる関連値を有する。非限定的な例として、キャッシュ10内の非一様なアーキテクチャによれば、ウェイ14a,ウェイ14b,ウェイ14c,ウェイ14dは全てセット12a及びセット12b内でアクティブであり;ウェイ14a及びウェイ14bのみがセット12c及びセット12dでアクティブであり;ウェイ14aのみがセット12e、セット12f、セット12g及びセット12hでアクティブである。特定の実施例では、アクティブなメモリセルは格納に利用可能であり、インアクティブなメモリセルは格納に利用できない。
特定の実施例では、キャッシュセット各々の中で最適な数のキャッシュウェイが、キャッシュ10の設計で決定される。非限定的な例として、ハードウエア、ソフトウエア、組み込み論理要素(logic component)又はそれらの要素の2以上の組み合わせは、以下に説明されるような、キャッシュセット各々で最適な数のキャッシュウェイを判定するアルゴリズムを実行してよい。1以上のユーザは1以上のコンピュータシステムを利用し、1以上の要素から出力を受信し及び入力を与える。「キャッシュウェイ」に関連するものは、適切ならば、キャッシュ10のウェイ14を包含する。「キャッシュセット」に関連するものは、適切ならば、キャッシュ10のセット12を包含する。特定の実施例では、アプリケーションが走っている間に、キャッシュ10の中のアクティブなキャッシュウェイ数が動的に変えられる。特定の実施例では、1以上のスリープ(sleep)トランジスタを利用して、キャッシュ10の中でアクティブなキャッシュウェイ数を動的に変える。特定の実施例では、不使用のキャッシュウェイへの電源供給は、不使用のキャッシュウェイ中のメモリセルへの電源供給を接続するためのビア(vias)を排除することで、その不使用のキャッシュウェイから分離されてよい。不使用のメモリセルは同様な手法でビットライン及びワードラインから分離されてもよい。
特定の実施例では、不使用キャッシュブロックを特徴付ける(マークする)ために第2の有効ビットが使用されてもよい。「キャッシュブロック」に関連するものは、適切ならば、セット12及びウェイ14間の論理交差部を含む。キャッシュブロックは、適切ならば、ウェイ14に対応するタグ16及びセット12の間の論理交差部を含む。特定の実施例では、1以上の有効ビットがセット12各々のタグ16各々に付される。特定の実施例では、そのようなビットはセット12各々のタグ16各々の一部である。第2有効ビットが1であったならば、対応するキャッシュブロックは、キャッシュミスが生じた場合に置換に使用されない。インアクティブなキャッシュブロックへのアクセスはキャッシュミスを引き起こす。特定の実施例では、非一様なキャッシュ10の電力消費を減らすため、アクセス対象のキャッシュセットの中でインアクティブにマークされているキャッシュウェイのセンスアンプ18は、非活性化される。特定の実施例では、これは、メモリアドレスレジスタ22のセットインデックス20を検査することで実行される。非限定的な例として、図1に示される非一様なキャッシュ10の中で、セット12e、セット12f、セット12g又はセット12hがアクセスの目的とされた場合に、センスアンプ18c及びセンスアンプ18dは非活性化される。セット12c、セット12d、セット12e、セット12f、セット12g又はセット12hがアクセスの目的とされた場合に、センスアンプ18e、センスアンプ18f、センスアンプ18g及びセンスアンプ18hは全て非活性化される。
タグアクセス及びタグ比較は命令フェッチ全てについて必ずしも実行されなくてよい。或る命令iの直後に実行される命令jを考察する。3つの場合が考えられる:
1.イントラキャッシュラインシーケンシャルフロー
これは、i及びj双方の命令が同一のキャッシュラインに属し、iが分岐でない命令である又は分岐を取得しない場合に生じる。
2.インターキャッシュラインシーケンシャルフロー
これは第1の場合と同様であるが、唯一の相違は、iとjが異なるキャッシュラインに属することである。
3.非シーケンシャルフロー
この場合、iは分岐命令を取り、jはその目的(ターゲット)である。
第1の場合(イントラキャッシュラインシーケンシャルフローの場合)、j及びiが同一のキャッシュウェイに属することは容易に検出可能である。従って命令に関するタグ探索(タグルックアップ)は必須でない。一方、例えば分岐を取得する場合(又は非シーケンシャルフロー)のような非シーケンシャルなフェッチ又はキャッシュライン境界をまたぐシーケンシャルフェッチ(又はインターキャッシュラインシーケンシャルフロー)には、タグルックアップ及びウェイアクセスが必要とされる。従って、イントラキャッシュラインシーケンシャルフローの場合にタグ16及びウェイ14のメモリセルを非活性化することは、キャッシュ10の電力消費を減らす。特定の実施例はこの又は同様なインターラインウェイ記憶(ILWM: inter line way memorization)技法を使用する。
図2A及び2Bはキャッシュ10の電力消費を減らすためのコード配置例を示す。7つの命令を含む基本ブロックを考察する。基本ブロックはAで指定され、その命令はA1,A2,A3,A4,A5,A6,A7で指定される。A7は分岐を取り、A3は分岐命令ではない。図2Aでは、A7はキャッシュライン26eのワード24dに属する。A3はキャッシュライン26dのワード24hに属する。A3又はA7が実行される場合には、何れの場合も、次の命令がキャッシュ10内に有るか否かが不明なので、タグルックアップが必要とされる。しかしながら、図2Bでは、Aがどのキャッシュライン境界にも及ばないように、Aはキャッシュ10のアドレス空間に位置づけられる。Aはどのキャッシュライン境界にも至らないので、キャッシュアクセス及びタグアクセスはA3に関してはなされない。特定の実施例では、メインメモリ中の基本ブロックの配置は、メインメモリからキャッシュ10にロードされる場合に、頻繁にアクセスされる基本ブロックが、どのキャッシュライン境界にも及ばないように(又はできるだけ少ないキャッシュ境界にしか及ばないように)変更される。
インターキャッシュラインシーケンシャルフローの出現数を減らすことは、キャッシュ10での電力消費を減らす。キャッシュラインサイズの増加はそのような出現を減らす傾向にあるが、キャッシュラインサイズを増やすことは、キャッシュミスに関連するオフチップ(off-chip)メモリアクセス数を増やすことにもなる。特定の実施例は或るアルゴリズムを利用し、そのアルゴリズムはこのトレードオフを考慮し、メモリ階層の消費電力全体を最小化するために様々なキャッシュラインサイズを探索する。
Lワードのキャッシュラインサイズを有するサイズC(C=2mワード)のダイレクトマップキャッシュ10(direct-mapped cache)を考察する。キャッシュ読み取りミスの際に、L個の連続的なワードがフェッチされる。ダイレクトマップキャッシュ10では、メモリアドレスMにあるワードを含むキャッシュラインは、
Figure 2007048285
により計算されてもよい。従って、2つのメモリロケーションMi,Mjは、以下の条件が成立するならば、同じキャッシュラインに対応付けられる:
Figure 2007048285
上記の数式は次のようにも書ける:
(n・C−L)< (Mi−Mj)< (n・C+L) (1)
ここで、nは何らかの整数である。基本ブロックBi,BjがN回の反復を有するループの内側にあり、それらのメモリロケーションMi,Mjが条件(1)を満足するならば、そのループを実行する際に、キャッシュコンフリクトミスが少なくともN回発生する。これはWウェイセット関連キャッシュ10に拡張されてもよい。キャッシュコンフリクトミスは、条件(1)を満足する個々の
Figure 2007048285
の値と共にWより多くの異なるアドレスがループ内でアクセスされた場合に、Wウェイセット関連キャッシュ10で生じる。Mはメモリアドレスである。キャッシュコンフリクトミスの数はキャッシュパラメータ(例えば、キャッシュラインサイズ、キャッシュセット数、キャッシュウェイ数、キャッシュ10のメモリアドレス空間中の各基本ブロックのロケーション、及びターゲットアプリケーションプログラムの閉ループ各々についての反復回数)から容易に計算できる。特定の実施例は、所与のパフォーマンス制約に関し、キャッシュ10及びオフチップメモリでの動的なリーク電力消費を多かれ少なかれ同時に減らすようにキャッシュコンフィギュレーション及びコード配置を最適化する。特定の実施例では、アルゴリズムは所与の関連性に関するキャッシュセット各々でのキャッシュコンフリクト数を算出する。
以下の表記(notation)はコード配置に関する問題定義の一例を用意するために使用される:
・Ememory,Eway,Etag:メインメモリ、単一のキャッシュウェイ及びキャッシュタグメモリ各々についてのアクセス当たりのエネルギ消費。
・Pstatic:メインメモリの静的な電力消費。
・TEmemory,TEcache:例えばオフチップメモリ及びキャッシュ10のようなメインメモリの全エネルギ消費。
・Pleakage:lバイトキャッシュメモリブロックのリーク電力消費。
・TEleakage:リークに起因するキャッシュメモリの全エネルギ消費。
・Wbus:メモリアクセスバス幅(バイト)。
・Winst:命令のサイズ(バイト)。
・Scache:キャッシュメモリ中のセット数。
・Caccess:1つのメモリアクセスに必要なCPUサイクル数。
・Cwait:メモリアクセス中の待ちサイクル数。
・Fclock:CPUのクロック周波数。
・nline:キャッシュメモリのラインサイズ(バイト)。
・ai:i番目のキャッシュセット中のウェイ数。
・Nmiss:キャッシュミス数。
・Ninst:実行される命令数。
・Xi:i番目のキャッシュセットに関する「全(フル)ウェイアクセス」の数。「全ウェイ」アクセスでは、ターゲットキャッシュセット中のキャッシュタグ及び全キャッシュウェイが活性化される。「フルウェイアクセス」はインターキャッシュラインシーケンシャルフロー又は非シーケンシャルフローで必要である。或いは単独のキャッシュウェイのみが活性化される。
・Ttotal,Tconst:全実効時間及びそれについての制約。
・Ptotal:メモリシステムの総電力消費。
Ememory, Eway, Etag, Pstatic,Pleakage,Wbus,Winst,Scache,Fclock,Caccess,Cwait及びTconstが所与のパラメータであるとする。決定されるパラメータはnline及びaiである。Nmiss,Xi及びTtotalはコード配置Wbus,Winst,nline及びaiの関数である。Nmiss,Ninst,及びXiは1以上の説明済みの方法に従って見出されてもよい。キャッシュ10は通常的にはサブバンクに分割され、唯1つのサブバンクがアクセス毎に活性化され、Ewayはnlineに独立である。
以下の例示的問題定義はコード配置に使用されてよい:Ememory, Eway, Etag, Pstatic,Pleakage,Wbus,Winst,Scache,Fclock,Caccess,Cwait及びTconstの所与の値について、所与の時間的制約Tconstの下で、メモリ階層の総電力消費Ptotalを最小化するために、コード配置nline及びaiを決定する。T total,TEmemory,TEcache,TEleakage及びPtotalは、以下の数式を用いて算出されてもよい:
Figure 2007048285
特定の実施例では、アルゴリズムはオリジナルのキャッシュコンフィギュレーション(nlines=32,Scache=8,ai=64)と共に始まる。次のステップでは、アルゴリズムはアドレス空間の中でそのアプリケーションプログラムの各ブロックの最適なロケーションを見出す。特定の実施例では、これは、アドレス空間内で配置する関数の順序を変更し、最適な順序を見出すことで実行される。各順序について、アルゴリズムは或るキャッシュセットを反復的に発見することで貪欲にエネルギを減らし、そのキャッシュセットについて2のべき乗でキャッシュウェイ数を減らすことは、最大の電力削減効果をもたらす。電力消費(Ptotal)及びランタイム(Ttotal)は所与の関連性についてキャッシュミス数を算出することで発見される。この計算は、キャッシュ10をシミュレーションせずに、アプリケーションプログラムのアドレス空間の中で、各ループの反復回数及び各基本ブロックのロケーションを分析することで実行されてよい。最少のエネルギを与える順序が、キャッシュセット各々に関するキャッシュウェイの最適数と共に選択される。アルゴリズムは、様々案キャッシュサイズについて上記のステップを実行し、電力消費が減る限り(ステップの実効を)続ける。関数の順序は、キャッシュラインサイズが変わる場合に固定されてもよい。これは良い簡素化である。なぜなら、キャッシュラインサイズが2のべき乗で変わる場合には、関数の最適な順序は通常的には大きく変わらないからである。特定の実施例では、アルゴリズムの計算時間は、関数の数の二乗で増え、アプリケーションプログラムのループ数に線形に増える。
非限定的な例として、以下の擬似コードは、上述のアルゴリズムの1以上の具体例を実現する:
Figure 2007048285
特定の実施例では、ハードウエア、ソフトウエア、組み込まれた論理要素、又はそのような要素の2以上の組み合わせが、上記のアルゴリズムの1以上のステップを実行する。1以上のユーザは1以上のコンピュータシステムを利用して、1以上の要素から出力を受信し及びそこに入力を与える。
以上本発明を説明するために特定の実施例が使用されてきた。当該技術分野で通常の知識を有する者は、添付の特許請求の範囲の範疇で、本発明を説明するために使用された特定の実施例に対する変更、置換、変形、代替又は修正の1以上を理解するであろう。本発明はそのような変更、置換、変形、代替又は修正の全てを包含する。
以下、本発明により教示される手段が例示的に列挙される。
(付記1)
キャッシュにおける電力消費を削減する方法であって、
前記キャッシュのキャッシュセット各々についてキャッシュの最適数を用意するキャッシュの非一様性アーキテクチャを決定するステップであって、該非一様なアーキテクチャは前記キャッシュ中のキャッシュセットが互いに異なる関連値を有することを許容するところのステップと、
前記キャッシュでの電力消費を削減するために、前記キャッシュで前記非一様性アーキテクチャを使用するステップと、
を有することを特徴とする方法。
(付記2)
前記キャッシュから離れたメモリにどのコードが書き込み可能であるかに応じて、前記コードが前記メモリから前記キャッシュにロードされた場合のインターキャッシュラインシーケンシャルフローの出現を減らすコード配置を決定するステップと、
前記コード配置に従って前記コードをコンパイルするステップと、
前記キャッシュでの電力消費を更に削減するために、前記メモリから前記キャッシュへ以後ロードするコードを前記コード配置に従って前記メモリに書き込むステップと、
を更に有することを特徴とする付記1記載の方法。
(付記3)
前記キャッシュがプロセッサに関する命令キャッシュである
ことを特徴とする付記1記載の方法。
(付記4)
前記キャッシュに関連するプロセッサにおいて、1以上のプログラム部分の実行中に、前記キャッシュの1以上のキャッシュセットの1以上の関連値を動的に変えるステップ
を有することを特徴とする付記1記載の方法。
(付記5)
前記非一様性アーキテクチャに応じて前記キャッシュ中でインアクティブな1以上のキャッシュブロックをマークするために、1以上の有効性ビットを使用するステップ
を有することを特徴とする付記1記載の方法。
(付記6)
キャッシュブロックをマークする有効性ビットが、前記キャッシュブロックに関連するキャッシュタグに付される
ことを特徴とする付記5記載の方法。
(付記7)
前記非一様性アーキテクチャに従って前記キャッシュ中のインアクティブなキャッシュブロックへのアクセスを防ぐため、前記非一様性アーキテクチャに従って、アクセス対象のキャッシュセット中のインアクティブなキャッシュウェイに関連する1以上のセンスアンプを非活性化するステップ
を更に有することを特徴とする付記1記載の方法。
(付記8)
前記非一様性アーキテクチャに従って前記キャッシュでインアクティブなメモリセルを電源供給部から分離するステップ
を更に有することを特徴とする付記1記載の方法。
(付記9)
メモリセルを電源供給部から分離する前記ステップが、前記メモリセルを前記電源供給部に接続するビアを分離するステップを有する
ことを特徴とする付記8記載の方法。
(付記10)
前記非一様性アーキテクチャに従って、前記キャッシュ中でインアクティブなメモリセルを前記キャシュのビットライン及びワードラインから分離するステップ
を更に有することを特徴とする付記1記載の方法。
(付記11)
ロック(lock)ビット及び有効ビットの組み合わせを用いて、前記非一様性アーキテクチャに従って前記キャッシュでインアクティブなキャッシュウェイをマークするステップ
を更に有することを特徴とする付記1記載の方法。
(付記12)
1以上の媒体中にエンコードされる、キャッシュにおける電力消費を削減するための論理装置であって、
前記キャッシュのキャッシュセット各々についてキャッシュの最適数を用意するキャッシュの非一様性アーキテクチャを決定するステップであって、該非一様なアーキテクチャは前記キャッシュ中のキャッシュセットが互いに異なる関連値を有することを許容するところのステップと、
前記キャッシュでの電力消費を削減するために、前記キャッシュで前記非一様性アーキテクチャを使用するステップと、
をコンピュータに実行させることを特徴とする論理装置。
(付記13)
前記キャッシュから離れたメモリにどのコードが書き込み可能であるかに応じて、前記コードが前記メモリから前記キャッシュにロードされた場合のインターキャッシュラインシーケンシャルフローの出現を減らすコード配置を決定するステップと、
前記コード配置に従って前記コードをコンパイルするステップと、
前記キャッシュでの電力消費を更に削減するために、前記メモリから前記キャッシュへ以後ロードするコードを前記コード配置に従って前記メモリに書き込むステップと、
をコンピュータに更に実行させることを特徴とする付記12記載の論理装置。
(付記14)
前記キャッシュがプロセッサに関する命令キャッシュである
ことを特徴とする付記12記載の論理装置。
(付記15)
前記キャッシュに関連するプロセッサにおいて、1以上のプログラム部分の実行中に、前記キャッシュの1以上のキャッシュセットの1以上の関連値を動的に変えるステップ
をコンピュータに実行させることを特徴とする付記12記載の論理装置。
(付記16)
前記非一様性アーキテクチャに応じて前記キャッシュ中でインアクティブな1以上のキャッシュブロックをマークするために、1以上の有効性ビットを使用するステップ
をコンピュータに実行させることを特徴とする付記12記載の論理装置。
(付記17)
キャッシュブロックをマークする有効性ビットが、前記キャッシュブロックに関連するキャッシュタグに付される
ことを特徴とする付記16記載の論理装置。
(付記18)
前記非一様性アーキテクチャに従って前記キャッシュ中のインアクティブなキャッシュブロックへのアクセスを防ぐため、前記非一様性アーキテクチャに従って、アクセス対象のキャッシュセット中のインアクティブなキャッシュウェイに関連する1以上のセンスアンプを非活性化するステップ
をコンピュータに更に実行させることを特徴とする付記12記載の論理装置。
(付記19)
前記非一様性アーキテクチャに従って前記キャッシュでインアクティブなメモリセルを電源供給部から分離するステップ
をコンピュータに更に実行させることを特徴とする付記12記載の論理装置。
(付記20)
メモリセルを電源供給部から分離する前記ステップが、前記メモリセルを前記電源供給部に接続するビアを分離するステップを有する
ことを特徴とする付記19記載の論理装置。
(付記21)
前記非一様性アーキテクチャに従って、前記キャッシュ中でインアクティブなメモリセルを前記キャシュのビットライン及びワードラインから分離するステップ
をコンピュータに更に実行させることを特徴とする付記12記載の論理装置。
(付記22)
ロックビット及び有効ビットの組み合わせを用いて、前記非一様性アーキテクチャに従って前記キャッシュでインアクティブなキャッシュウェイをマークするステップ
をコンピュータに更に実行させることを特徴とする付記12記載の論理装置。
(付記23)
キャッシュにおける電力消費を削減するシステムであって、
キャッシュと、
前記キャッシュでの電力消費を削減するために、前記キャッシュで使用される非一様性アーキテクチャと、
を有し、前記非一様性アーキテクチャは、前記キャッシュのキャッシュセット各々についてキャッシュの最適数を用意し、前記キャッシュ中のキャッシュセットが互いに異なる関連値を有することを許容する
ことを特徴とするシステム。
(付記24)
前記キャッシュから離れたメモリを更に有し、コードが前記メモリから前記キャッシュにロードされた場合のインターキャッシュラインシーケンシャルフローの出現を減らすコード配置に従って、コードがメモリに書き込まれ及びコンパイルされ、前記コードは、前記キャッシュでの電力消費を更に削減するために、前記コード配置に従って前記メモリから前記キャッシュへロード可能である
ことを特徴とする付記23記載のシステム。
(付記25)
前記キャッシュがプロセッサに関する命令キャッシュである
ことを特徴とする付記23記載のシステム。
(付記26)
前記キャッシュの1以上のキャッシュセットの1以上の関連値が、前記キャッシュに関連するプロセッサにおいて、1以上のプログラム部分の実行中に動的に変更可能である
ことを特徴とする付記23記載のシステム。
(付記27)
1以上の有効性ビットが、前記非一様性アーキテクチャに応じて前記キャッシュ中でインアクティブな1以上のキャッシュブロックをマークする
ことを特徴とする付記23記載のシステム。
(付記28)
キャッシュブロックをマークする有効性ビットが、前記キャッシュブロックに関連するキャッシュタグに付される
ことを特徴とする付記27記載のシステム。
(付記29)
前記非一様性アーキテクチャに従って前記キャッシュ中のインアクティブなキャッシュブロックへのアクセスを防ぐため、前記非一様性アーキテクチャに従って、アクセス対象のキャッシュセット中のインアクティブなキャッシュウェイに関連する1以上のセンスアンプが非活性化される
ことを特徴とする付記23記載のシステム。
(付記30)
前記非一様性アーキテクチャに従って前記キャッシュでインアクティブなメモリセルが電源供給部から分離される
ことを特徴とする付記23記載のシステム。
(付記31)
メモリセルを電源供給部に接続するビアが、前記メモリセルを前記電源供給部から分離するために分離される
ことを特徴とする付記30記載のシステム。
(付記32)
前記非一様性アーキテクチャに従って、前記キャッシュ中でインアクティブなメモリセルが前記キャシュのビットライン及びワードラインから分離される
ことを特徴とする付記23記載のシステム。
(付記33)
ロックビット及び有効ビットの組み合わせが、前記非一様性アーキテクチャに従って前記キャッシュでインアクティブなキャッシュウェイをマークする
ことを特徴とする付記23記載のシステム。
(付記34)
キャッシュにおける電力消費を削減するシステムであって、
前記キャッシュのキャッシュセット各々についてキャッシュの最適数を用意するキャッシュの非一様性アーキテクチャを決定する手段であって、該非一様なアーキテクチャは前記キャッシュ中のキャッシュセットが互いに異なる関連値を有することを許容するところの手段と、
前記キャッシュでの電力消費を削減するために、前記キャッシュで前記非一様性アーキテクチャを使用する手段と、
を有することを特徴とするシステム。
キャッシュの電力消費を減らすための非一様なキャッシュ構造例を示す図である。 キャッシュの電力消費を減らすためのコード配置例を示す図である。 キャッシュの電力消費を減らすためのコード配置例を示す図である。
符号の説明
10 キャッシュ
12 セット
14 ウェイ
16 タグ
18 センスアンプ
20 セットインデックス
22 オフセット
24 ワード
26 キャッシュライン

Claims (5)

  1. 前記キャッシュのキャッシュセット各々についてキャッシュの最適数を用意するキャッシュの非一様性アーキテクチャを決定するステップであって、該非一様なアーキテクチャは前記キャッシュ中のキャッシュセットが互いに異なる関連値を有することを許容するところのステップと、
    前記キャッシュでの電力消費を削減するために、前記キャッシュで前記非一様性アーキテクチャを使用するステップと、
    を有することを特徴とするキャッシュにおける電力消費削減方法。
  2. 前記キャッシュから離れたメモリにどのコードが書き込み可能であるかに応じて、前記コードが前記メモリから前記キャッシュにロードされた場合のインターキャッシュラインシーケンシャルフローの出現を減らすコード配置を決定するステップと、
    前記コード配置に従って前記コードをコンパイルするステップと、
    前記キャッシュでの電力消費を更に削減するために、前記メモリから前記キャッシュへ以後ロードするコードを前記コード配置に従って前記メモリに書き込むステップと、
    を更に有することを特徴とする請求項1記載の電力消費削減方法。
  3. 1以上の媒体中にエンコードされる、キャッシュにおける電力消費を削減するための論理装置であって、
    前記キャッシュのキャッシュセット各々についてキャッシュの最適数を用意するキャッシュの非一様性アーキテクチャを決定するステップであって、該非一様なアーキテクチャは前記キャッシュ中のキャッシュセットが互いに異なる関連値を有することを許容するところのステップと、
    前記キャッシュでの電力消費を削減するために、前記キャッシュで前記非一様性アーキテクチャを使用するステップと、
    をコンピュータに実行させることを特徴とする論理装置。
  4. キャッシュにおける電力消費を削減するシステムであって、
    キャッシュと、
    前記キャッシュでの電力消費を削減するために、前記キャッシュで使用される非一様性アーキテクチャと、
    を有し、前記非一様性アーキテクチャは、前記キャッシュのキャッシュセット各々についてキャッシュの最適数を用意し、前記キャッシュ中のキャッシュセットが互いに異なる関連値を有することを許容する
    ことを特徴とするシステム。
  5. キャッシュにおける電力消費を削減するシステムであって、
    前記キャッシュのキャッシュセット各々についてキャッシュの最適数を用意するキャッシュの非一様性アーキテクチャを決定する手段であって、該非一様なアーキテクチャは前記キャッシュ中のキャッシュセットが互いに異なる関連値を有することを許容するところの手段と、
    前記キャッシュでの電力消費を削減するために、前記キャッシュで前記非一様性アーキテクチャを使用する手段と、
    を有することを特徴とするシステム。

JP2006210350A 2005-08-05 2006-08-01 キャッシュメモリ、演算処理装置およびキャッシュメモリの制御方法 Expired - Fee Related JP5061523B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/198,559 2005-08-05
US11/198,559 US7647514B2 (en) 2005-08-05 2005-08-05 Reducing power consumption at a cache

Publications (2)

Publication Number Publication Date
JP2007048285A true JP2007048285A (ja) 2007-02-22
JP5061523B2 JP5061523B2 (ja) 2012-10-31

Family

ID=37718909

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006210350A Expired - Fee Related JP5061523B2 (ja) 2005-08-05 2006-08-01 キャッシュメモリ、演算処理装置およびキャッシュメモリの制御方法

Country Status (3)

Country Link
US (1) US7647514B2 (ja)
JP (1) JP5061523B2 (ja)
CN (1) CN100593159C (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007048286A (ja) * 2005-08-05 2007-02-22 Fujitsu Ltd キャッシュにおける電力消費削減方法、論理装置及びシステム
JP2013502645A (ja) * 2009-08-21 2013-01-24 エンパイア テクノロジー ディベロップメント エルエルシー キャッシュメモリ結合性を伴うプロセッサコアの割当

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8156357B2 (en) * 2009-01-27 2012-04-10 Freescale Semiconductor, Inc. Voltage-based memory size scaling in a data processing system
US8230176B2 (en) * 2009-06-26 2012-07-24 International Business Machines Corporation Reconfigurable cache
US8412971B2 (en) * 2010-05-11 2013-04-02 Advanced Micro Devices, Inc. Method and apparatus for cache control
CN103019954A (zh) * 2011-09-22 2013-04-03 瑞昱半导体股份有限公司 高速缓存装置与高速缓存数据存取方法
US9021207B2 (en) * 2012-12-20 2015-04-28 Advanced Micro Devices, Inc. Management of cache size
CN106250325B (zh) * 2016-07-19 2019-11-19 中科创达软件股份有限公司 一种缓存优化方法和***
CN109857681B (zh) * 2017-11-30 2023-07-18 华为技术有限公司 高速缓存cache地址映射方法以及相关设备
CN114138685B (zh) * 2021-12-06 2023-03-10 海光信息技术股份有限公司 缓存的资源分配方法及装置、电子装置和存储介质

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0877068A (ja) * 1994-09-06 1996-03-22 Toshiba Corp マルチプロセッサシステム及びメモリアロケーション最適化方法
JPH0950401A (ja) * 1995-08-09 1997-02-18 Toshiba Corp キャッシュメモリ及びそれを備えた情報処理装置
JPH09120372A (ja) * 1995-07-07 1997-05-06 Sun Microsyst Inc プリフェッチ命令を用いるハーバードアーキテクチャキャッシュメモリの調和したソフトウェア制御
JPH10111832A (ja) * 1996-10-04 1998-04-28 Hitachi Ltd メモリシステム
JPH10124202A (ja) * 1996-10-04 1998-05-15 Internatl Business Mach Corp <Ibm> 電子回路内の電力消費を減少させる方法及びシステム
JPH11134077A (ja) * 1997-10-30 1999-05-21 Hitachi Ltd データ処理装置及びデータ処理システム
JP2000298618A (ja) * 1999-04-14 2000-10-24 Toshiba Corp セットアソシアティブ型キャッシュメモリ装置
US6175957B1 (en) * 1997-12-09 2001-01-16 International Business Machines Corporation Method of, system for, and computer program product for providing efficient utilization of memory hierarchy through code restructuring
JP2002024031A (ja) * 2000-07-07 2002-01-25 Sharp Corp オブジェクトコードの再合成方法および生成方法
US20030154345A1 (en) * 2002-02-08 2003-08-14 Terry Lyon Multilevel cache system having unified cache tag memory
JP2003242029A (ja) * 2002-02-15 2003-08-29 Hitachi Ltd 半導体集積回路
JP2005122481A (ja) * 2003-10-16 2005-05-12 Matsushita Electric Ind Co Ltd コンパイラ装置およびリンカ装置
JP2005122506A (ja) * 2003-10-17 2005-05-12 Matsushita Electric Ind Co Ltd コンパイラ装置
WO2005048112A1 (ja) * 2003-11-12 2005-05-26 Matsushita Electric Industrial Co., Ltd. キャッシュメモリおよびその制御方法
JP2005301387A (ja) * 2004-04-07 2005-10-27 Matsushita Electric Ind Co Ltd キャッシュメモリ制御装置およびキャッシュメモリ制御方法
JP2006040089A (ja) * 2004-07-29 2006-02-09 Fujitsu Ltd セカンドキャッシュ駆動制御回路、セカンドキャッシュ、ram、及びセカンドキャッシュ駆動制御方法
JP2006323841A (ja) * 2005-05-18 2006-11-30 Samsung Electronics Co Ltd テクスチャキャッシュメモリ装置及びこれを利用した3次元グラフィック加速器および方法
JP2007048286A (ja) * 2005-08-05 2007-02-22 Fujitsu Ltd キャッシュにおける電力消費削減方法、論理装置及びシステム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6944714B2 (en) * 2002-07-30 2005-09-13 Hewlett-Packard Development Company, L.P. Method and apparatus for saving microprocessor power when sequentially accessing the microprocessor's instruction cache
US7127560B2 (en) * 2003-10-14 2006-10-24 International Business Machines Corporation Method of dynamically controlling cache size

Patent Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0877068A (ja) * 1994-09-06 1996-03-22 Toshiba Corp マルチプロセッサシステム及びメモリアロケーション最適化方法
JPH09120372A (ja) * 1995-07-07 1997-05-06 Sun Microsyst Inc プリフェッチ命令を用いるハーバードアーキテクチャキャッシュメモリの調和したソフトウェア制御
JPH0950401A (ja) * 1995-08-09 1997-02-18 Toshiba Corp キャッシュメモリ及びそれを備えた情報処理装置
JPH10111832A (ja) * 1996-10-04 1998-04-28 Hitachi Ltd メモリシステム
JPH10124202A (ja) * 1996-10-04 1998-05-15 Internatl Business Mach Corp <Ibm> 電子回路内の電力消費を減少させる方法及びシステム
JPH11134077A (ja) * 1997-10-30 1999-05-21 Hitachi Ltd データ処理装置及びデータ処理システム
US6175957B1 (en) * 1997-12-09 2001-01-16 International Business Machines Corporation Method of, system for, and computer program product for providing efficient utilization of memory hierarchy through code restructuring
JP2000298618A (ja) * 1999-04-14 2000-10-24 Toshiba Corp セットアソシアティブ型キャッシュメモリ装置
JP2002024031A (ja) * 2000-07-07 2002-01-25 Sharp Corp オブジェクトコードの再合成方法および生成方法
US20030154345A1 (en) * 2002-02-08 2003-08-14 Terry Lyon Multilevel cache system having unified cache tag memory
JP2003242029A (ja) * 2002-02-15 2003-08-29 Hitachi Ltd 半導体集積回路
JP2005122481A (ja) * 2003-10-16 2005-05-12 Matsushita Electric Ind Co Ltd コンパイラ装置およびリンカ装置
JP2005122506A (ja) * 2003-10-17 2005-05-12 Matsushita Electric Ind Co Ltd コンパイラ装置
WO2005048112A1 (ja) * 2003-11-12 2005-05-26 Matsushita Electric Industrial Co., Ltd. キャッシュメモリおよびその制御方法
JP2005301387A (ja) * 2004-04-07 2005-10-27 Matsushita Electric Ind Co Ltd キャッシュメモリ制御装置およびキャッシュメモリ制御方法
JP2006040089A (ja) * 2004-07-29 2006-02-09 Fujitsu Ltd セカンドキャッシュ駆動制御回路、セカンドキャッシュ、ram、及びセカンドキャッシュ駆動制御方法
JP2006323841A (ja) * 2005-05-18 2006-11-30 Samsung Electronics Co Ltd テクスチャキャッシュメモリ装置及びこれを利用した3次元グラフィック加速器および方法
JP2007048286A (ja) * 2005-08-05 2007-02-22 Fujitsu Ltd キャッシュにおける電力消費削減方法、論理装置及びシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007048286A (ja) * 2005-08-05 2007-02-22 Fujitsu Ltd キャッシュにおける電力消費削減方法、論理装置及びシステム
JP2013502645A (ja) * 2009-08-21 2013-01-24 エンパイア テクノロジー ディベロップメント エルエルシー キャッシュメモリ結合性を伴うプロセッサコアの割当

Also Published As

Publication number Publication date
US20070033423A1 (en) 2007-02-08
JP5061523B2 (ja) 2012-10-31
CN1971538A (zh) 2007-05-30
CN100593159C (zh) 2010-03-03
US7647514B2 (en) 2010-01-12

Similar Documents

Publication Publication Date Title
JP5061523B2 (ja) キャッシュメモリ、演算処理装置およびキャッシュメモリの制御方法
JP2007048286A (ja) キャッシュにおける電力消費削減方法、論理装置及びシステム
US10025720B2 (en) Cache organization and method
US7899993B2 (en) Microprocessor having a power-saving instruction cache way predictor and instruction replacement scheme
US7389402B2 (en) Microprocessor including a configurable translation lookaside buffer
KR100747127B1 (ko) 경로 예측 실패시 조회를 지시하도록 비예측 경로들로부터부분적인 태그들을 제공하는 캐쉬
US20220350776A1 (en) Coprocessors with Bypass Optimization, Variable Grid Architecture, and Fused Vector Operations
KR100454441B1 (ko) 전폭캐쉬를가진집적프로세서/메모리장치
US9390011B2 (en) Zero cycle clock invalidate operation
EP1869557B1 (en) Global modified indicator to reduce power consumption on cache miss
CN103198026A (zh) 指令高速缓存功耗降低
US9128842B2 (en) Apparatus and method for reducing the flushing time of a cache
US8611170B2 (en) Mechanisms for utilizing efficiency metrics to control embedded dynamic random access memory power states on a semiconductor integrated circuit package
Zeng et al. Register file caching for energy efficiency
Guo et al. Energy-efficient hardware data prefetching
Petrov et al. Data cache energy minimizations through programmable tag size matching to the applications
Moshnyaga et al. Low power cache design
Panda et al. Power-efficient Memory and Cache
Piguet Stefan Cserveny Jean-Marc Masgonty
Panda Power Optimisation Strategies Targeting the Memory Subsystem
Mohammad et al. Cache Architecture and Main Blocks

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090409

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111206

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120203

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120327

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120525

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

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

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

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees