JP2002504251A - 無停止要求テクスチャキャッシュシステム及び方法 - Google Patents

無停止要求テクスチャキャッシュシステム及び方法

Info

Publication number
JP2002504251A
JP2002504251A JP55166299A JP55166299A JP2002504251A JP 2002504251 A JP2002504251 A JP 2002504251A JP 55166299 A JP55166299 A JP 55166299A JP 55166299 A JP55166299 A JP 55166299A JP 2002504251 A JP2002504251 A JP 2002504251A
Authority
JP
Japan
Prior art keywords
texel
storage device
storage
module
value
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
JP55166299A
Other languages
English (en)
Other versions
JP4205176B2 (ja
Inventor
クオ,ドン−イン
ホン,チョウ
ツァオ,ランディ
ニウ,ロジャー
ラオ,プーナチャンドラ
チェン,リン
アルベス,ジェレミー
Original Assignee
エススリー・インコーポレイテッド
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 エススリー・インコーポレイテッド filed Critical エススリー・インコーポレイテッド
Publication of JP2002504251A publication Critical patent/JP2002504251A/ja
Application granted granted Critical
Publication of JP4205176B2 publication Critical patent/JP4205176B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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/0875Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
    • 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

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)
  • Image Generation (AREA)

Abstract

(57)【要約】 画素合成のために必要なテクセルに対応する受信メモリブロックの識別子と、キャッシュモジュール内に局所的に記憶されたテクセルに対応するメモリブロック識別子を比較することによって、キャッシュモジュールとメモリモジュールとの動作の同時性を向上させるためのキャッシュシステムである。受信メモリブロックの識別子が、局所的にキャッシュされたテクセルに対応するメモリブロック識別子に一致(合致)する場合は、システムは、画素合成のために、これらのテクセルをテクスチャフィルタユニットに送信する。受信メモリブロックの識別子が、局所的にキャッシュされたテクセルに対応するメモリブロック識別子に一致しない場合は、システムは、可能な限りはやくメモリモジュールからこれらのテクセルを検索して、新たなテクセルでキャッシュモジュールを更新する。複数の先入れ先出しバッファが制御モジュールを支援するために使用され、キャッシュモジュールからのテクセルの送信と、メモリモジュールから受信されたテクセルのキャッシュモジュールへの上書きを同期化する。局所的にキャッシュされると、これらのテクセルは、画素合成のためにテクスチャフィルタユニットに送信される。

Description

【発明の詳細な説明】 発明の名称 無停止要求テクスチャキャッシュシステム及び方法 発明の背景 発明の分野 本発明は、一般に、コンピュータグラフィッタスシステムの分野に関連し、詳 しくは、コンピュータ化されたグラフィックイメージのテクスチャの生成及び処 理に関連する。 従来技術の説明 コンピュータによって生成される3次元画素(ピクセル)ベースのグラフィッ クイメージにおいて臨場感を得るためには、表面のテクスチャ(texture:構造 /模様)のような実世界の表面構造をシミュレートするために、現実的な表面シ ェーディングをグラフィックイメージに付加しなければならない。かかる表面特 性を作り出すための従来方式が、テクスチャマッピングである。 テクスチャマッピングは、複雑なイメージ(画像)の外観を作成するための比 較的効率の良い技法であり、3次元グラフィックイメージの表面に3次元の細部 を直接描写しなければならないという、時間がかかりかつ負荷の大きい計算上の コストをかける必要がない。具体的には、個々の要素(texel:テクセル)から 構成されるソース(テクスチャ)イメージは、3次元グラフィックイメージ上に 画素合成によりマッピングされる。例えば、オーク製のテーブルのグラフィック イメージを作成するために、先ず、いすの構造が作成される。次に、オーク材の テクスチャイメージがいすの構造表面にマッピングされる。このオークのテクス チャイメージをいす上に正確に統合するために、所定数のテクセルを補間して、 いすの表面の各画素を生成する。 当該分野において周知のように、テクスチャイメージから画素を効率的に補間 するための、より一般的なテクスチャマッピング技法に、双一次型フィルタリン グ法(bi-linear filtering)と3−一次型フィルタリング法(tri-linear filtering)の2つがある。 双一次型フィルタリング法では、グラフィックイメージの各画素を補間するた めに4つのテクセルが使用される。3−一次フィルタリング法では、グラフィッ クイメージの各画素を補間するために8つのテクセルが使用される。 これらのテクスチャマッピング技法を使用すると、極めて大きな帯域幅を必要 とする可能性があるが、これを防止するために、ミップ(multum in parvo:圧 縮)マッピングを使用して、テクスチャイメージを個々の「d」レベルの解像度 からなるテクスチャマップに圧縮することが多い。ラスター化の走査変換段階の 間、テクスチャマップのこれらのミップマップの各々は、特定の「d」レベルの 細部について事前計算され、個別に記録される。画素ベースのグラフィックイメ ージの細部のレベルに応じて、特定の「d」レベルのテクスチャマップが、テク スチャのフィルタリングのために検索される。例えば、グラフィックイメージが 、コンピュータによって作成されたグラフィックシーンの背景内のより小さなイ メージとして表示される場合は、細部のレベルは低く、そのため、より低い解像 度(例えば、d=4)のテクスチャマップを使用することができる。テクスチャ のフィルタリングに必要とされるテクセルが少ないので、低解像度のテクスチャ マップでは、システムに要求される帯域幅は小さくなる。一方、グラフィックイ メージが、グラフィックシーンの前景に原寸大のイメージとして表示される場合 は、より高解像度のテクスチャマップ表面(例えば、d=0)が使用され、この ため、システム全体が必要とする帯域幅は大きくなる。 あいにく、本明細書に参考として組み込んでいる、「Hardware Accelerated Re ndering of Anti-aliasing Using a Modified A-Buffer Algorithm」(Computer G raphics,307-316(Siggraph'97 Proceedings))に記載されているように、実時間 の環境では、これらの複雑なテクスチャマッピング技法によって毎秒数千万画素 を作成しなければならず、テクスチャマッピングシステムのために高度な計算能 力と極めて大きな帯域が必須となる。例えば、テクスチャマッピングシステムの 主たる目的が、キャッシュを使用せずに、1クロックサイクル当たり1画素の平 均的な画素合成速度を実現することである場合、1つのメモリブロ ック(例えば、2×2マトリックス構成における4つの32ビットテクセル)を 1クロックサイクル毎に検索しなければならない。クロック周波数が約100MHzの 場合、かかる理想的なデータ転送速度を実現するために必要な帯域幅は、約1600 メガバイト/秒(MBps)である。 コンピュータによって作成されるグラフィックにおける現実感に対するユーザ の期待、並びに、経済的なテクスチャマッピングシステムに対する需要が絶え間 なく増加しているために、かかる理想的なデータ転送速度を経済的なコストで実 現することはとらえ所のない問題となることが多い。例えば、テクスチャマッピ ングシステムを並列DRAMメモリモジュールサブシステム構成と統合する商用シス テムが利用可能である。このようなシステムでは高速のデータ転送速度が得られ るが、そのようなシステムは、コストが高いために、平均的な需要者には経済的 に非現実的なものである。 より廉価なテクスチャマッピングシステム構成は、テクスチャマッピングシス テムをグラフィックアクセラレータカードに統合したものである。グラフィック アクセラレータカードは、アドバンストグラフィックポート/周辺機器相互接続 (AGP/PCI)インターフェースによって比較的安価な汎用のパーソナルコンピュ ータにインターフェースするものである。しかしながら、これには、性能を制限 する少なくとも2つの重大な問題がある。 第1に、AGP/PCIインターフェースが、約512MBpsの帯域幅しかもたないた めに、1600MBpsのデータ転送速度を実現するテクスチャマッピングの能力が大き く制限される。具体的には、かかる帯域幅がネッタとなって、メモリモジュール から複数のテクセル(メモリブロック)を要求するシステムと、要求されたメモ リブロックを受け取るシステムとの間にかなり長い待ち時間が生じる。第2に、 画素識別子が走査モジュールによって生成される順に、これらのメモリブロック 要求を発行することにより、テクスチャマッピングシステムは、メモリモジュー ル内のDRAMページをページ切り換えして、必要なメモリブロックを取得しなけれ ばならないことが多い。このため、テクスチャマッピングシステム全体にさらに 待ち時間が追加されることになる。 かかる性能に関する問題に対処するために、コストに敏感なテクスチャマッ ピングシステムは、AGP/PCIの制限を最小限にすべくシステム内部に配置される キャッシュモジュールを使用する。メモリブロック内に含まれている任意のテク セルを必要とする前にメモリブロックを検索することによって、AGP/PCIインタ ーフェースによってこれらのテクセルを検索することに起因する待ち時間が低減 される。 しかし、この局所配置キャッシュ(ローカルキャッシュ)構成の性能上の利点 は、キャッシュモジュール内に必要とされるメモリブロックを記憶するヒット率 に依存する。例えば、テクスチャのプリミティブとして所定の形状(例えば、細 長い三角形)を描写するときには、メモリブロックの局所性が不十分であるとい う問題が生じる。コスト上の制限により、キャッシュモジュールが限定された記 憶サイズであることが要求されるために、走査変換の開始に関連するキャッシュ モジュール内に記憶されたメモリブロックは、走査変換期間が終了するときには 、もはや、キャッシュモジュール内に局所的に記憶されていない。この状況では 、キャッシュモジュール内に特定のメモリブロックを配置するのに失敗する割合 が増加するだけでなく、メモリブロックをキャッシュモジュール内外にスワップ する回数も多くなる。この局所性の問題を最小限にするために、テクスチャマッ ピングシステムでは、システムのコストを劇的に増加させることなく、メモリモ ジュールとキャッシュモジュールとを正確に同期化させることが必要である。 多くのテクセル要求をできるだけ速く送信し、テクセル要求と対応するテクセ ルの処理を同期化させ、コスト効果の高い方式で帯域幅の制限を回避するという 問題に効果的に対処することが可能なテクスチャマッピングシステム及び方法が 必要とされている。 発明の要約 本発明のシステム及び方法に従えば、先入れ先出し方式を効率的に同期化にし て、キャッシュモジュールとメモリモジュール間の動作の同時性を高める高速キ ャッシングシステムが提供される。キャッシングシステムは、走査モジュール、 メモリモジュール、テクスチャキャッシュモジュール、テクスチャフィ ルタモジュール及び画素処理装置から構成することができる。 走査モジュールは、3次元グラフィックイメージとメモリモジュール内のテク セルのメモリブロックの両方の特定画素に対応する画素識別子を生成する。テク スチャキャッシュモジュールは、これらの画素識別子の各々を対応するメモリブ ロック(MB)識別子サブコンポーネントとテクセル識別子サブコンポーネントに 分離する。先入れ先出し方式に基づき、テクスチャキャッシュモジュールは、各 MB識別子を利用して、MB識別子に対応するメモリブロックがキャッシュモジュー ル内にすでに局所的に記憶されているかどうかを判定する。メモリブロックがす でに局所的にキャッシュされている場合は、テクスチャキャッシュモジュールは 、メモリブロック内のテクセルのテクスチャフィルタモジュールへの送信を同期 化する。メモリブロッタがテクスチャキャッシュモジュール内にまだ局所的にキ ャッシュされていない場合には、テクスチャキャッシュモジュールは、メモリモ ジュールから必要なメモリブロックを検索して、テクスチャキャッシュモジュー ル内の特定の場所にそのメモリブロックを記憶する。これらのテクセルが画素合 成のために必要なときに、テクスチャキャッシュモジュールは、これらのテクセ ルをテクスチャフィルタモジュールに送信する。 このシステム及び方法は、キャッシュモジュールとメモリモジュール間の動作 の同時性を効率的な同期化により高めることによって、高性能で、かつコスト効 果の高い先入れ先出しキャッシュ方式を確実に実現するものである。 図面の簡単な説明 図1は、本発明の好適な実施態様におけるテクスチャマッピングシステムの好 適な実施態様を示す高レベル図である。 図2は、好適な実施態様のテクスチャキャッシュモジュールの詳細図である。 図3は、好適な実施態様のアドレスモジュールの詳細図である。 図4は、好適な実施態様の制御モジュールを示す図である。 図5は、好適な実施態様におけるメモリブロック記憶方式からキャッシュブロ ック記憶方式への変換を示す図である。 好ましい実施態様の詳細な説明 図面を参照して本発明の好適な実施態様を説明する。図面では、同一のまたは 機能的に類似の要素には同じ参照番号を付しており、各参照番号の最も左側の数 字は、参照番号を最初に使用している図面に対応する。 図1は、画素合成のためのテクセルのキャッシュ性能を改善するための本発明 の好適な実施態様のシステムの概要図である。システム100は、メモリモジュ ール140、走査モジュール160、テクスチャキャッシュモジュール(TCM) 130,テクスチャフィルタモジュール(TFM)180、及び画素処理ユニット (PPU)190を備える。この実施態様では、メモリモジュール140は、複数 のメモリブロックの1つに、4×4のマトリックスの各テクセルを記憶するダイ ナミックランダムアタセスメモリ(DRAM)から構成される。 TCM130に結合された走査モジュール160は、複数の画素識別子510( 図5に示す)をTCM130に送信する。TCM130は、これらの画素識別子510 の各々を使用して、画素識別子510に対応するメモリブロックがメモリモジュ ール140から検索されて、TCM130内に局所的にキャッシュされることを確 実にしている。メモリブロックが局所的にキャッシュされると、画素識別子51 0に対応するメモリブロック内の各テクセルが、TFM180に送信される。TFM1 80は、受信したテクセルをフィルタリングする。フィルタリングされたテクセ ルは、画素合成のためにPPU190に送信される。 図2は、本発明の好適な実施態様のTCM130の詳細図である。TCM130は、 キャッシュモジュール220,データフォーマッター255、検索バッファ26 0、リクエストバッファ250、アドレスモジュール210、バッファモジュー ル240,及び制御モジュール290から構成される。 本実施態様では、4ウェイ−4セットアソシェーション(4 way-4 setassocia tion)を有するSRAMから構成されるキャッシュモジュール220は、メモリモジ ュール140内に記憶されたメモリブロックのサブセットを局所的に記憶する。 図5に示すように、かかるアソシェーション(関連)により、キャッシュモジュ ール220は、各ウェイが4象限(組)を有する4つのウェイ (例えば、ウェイ0〜3)に構成上分割される。固有のキャッシュブロックアド レス(例えば、0と15の間の数)を有する各組は、テクセルの4×4のマトリ ックス(キャッシュブロック)を表す。 走査モジュール160とキャッシュモジュール220に結合されたアドレスモ ジュール210は、走査モジュール160から、整数部(u._,v._,d._)及び 小数部(_.Uf,_.Vf,_.df)を各走査画素について備える画素識別子510(u. uf,v.vf,d.df)を受信する。各画素識別子510の整数部から、アドレスモジ ュール210は、メモリブロック(MB)識別子とテクセル識別子520を生成す る。アドレスモジュール210は、MB識別子530を使用して、メモリモジュー ル140内のメモリブロックを識別する。アドレスモジュール210は、テクセ ル識別子520を使用して、そのメモリブロック内に特定のテクセルを配置する 。アドレスモジュール210は、画素合成のためにテクセル識別子520に対応 するテクセルを線形補間するための補間係数として、画素識別子510の小数部 を使用する。 図5に図2と連携して、好適な実施態様におけるこれらの各識別子の用途をよ り良く示す。双一次型フィルタリングでは、走査モジュール160が、3次元グ ラフィックイメージの各画素毎に4つの11ビット[10:0]画素識別子510を生 成する。アドレスモジュール210は、画素識別子510の各整数部を、9ビッ トのMB識別子530と2ビットのテクセル識別子520に分離する。メモリモジ ュール140内の4×4のテクセルメモリブロックを表すMB識別子530は、整 数部の上位8ビット[10:2]である。このメモリブロック内のテクセルに対して直 交座標を表すテクセル識別子520は、整数部の下位2ビット[1:0]である。 アドレスモジュール210は、MB識別子530を使用して、MB識別子530に 対応するメモリブロックが、すでにキャッシュモジュール220のキャッシュブ ロック内に局所的に記憶されたかどうかを判定する。アドレスモジュール210 が、メモリブロックがすでに特定のキャッシュブロックアドレスに局所的にキャ ッシュされている(ヒット)と判定した場合には、アドレスモジュール210は 、送信タグ信号を生成してバッファモジュール240に送信す る。送信タグ信号は、キャッシュブロックアドレス、テクセル識別子520、補 間係数及びヒットマーカーを備える。TCM130は、ヒットマーカーを使用して 、キャッシュモジュール220にすでに局所的にキャッシュされているメモリブ ロックに対応する送信タグ信号を識別する。 メモリブロックが、まだ局所的にキャッシュされていない(ミスヒット)場合 は、アドレスモジュール210は、FIFOキューとして動作するリクエストバッフ ァ250に検索信号を送信することによって、メモリモジュール140からメモ リブロックを検索するための要求を開始する。本実施態様では、リクエストバッ ファ250は、4つまでの検索信号を同時に受信することができる。検索信号は 、MB識別子530と1次元のメモリモジュールアドレスを含む。AGP/PCIインタ ーフェース(不図示)が許容する速度まででしか検索信号をメモリモジュール1 40に送信することができないので、リクエストバッファ250は、対応する画 素識別子510がアドレスモジュール210によって受信された順番で、メモリ モジュール140に検索信号を連続して送信する。しかし、AGP/PCIインターフ ェースにより、リクエストバッファ250の送信速度は最高約512MBpsまでに 制限される。 メモリモジュール140は、MB識別子530に対応するメモリブロックをTCM 130に送信することにより、検索信号の受信に応答する。しかしながら、コス ト上の制約のために、キャッシュモジュール220の記憶容量が有限の大きさに 制限されるので、メモリモジュール140から検索されたすべてのメモリブロッ クを、キャッシュモジュール220内に直ちに記憶することができるわけではな い。メモリブロックに関連するキャッシュブロックが、メモリブロックを記憶す るために利用可能になるまで、FIFOキューとしても動作する検索バッファ260 が、受信したメモリブロックを受信した順番で一時的に記憶する。本実施態様で は、検索バッファ260は、システムクロックの2クロックサイクル内で256 ビットのメモリブロックを受信する。 アドレスモジュール210は、検索信号をリクエストバッファ250に送信す るのに加えて、検索タグ信号と送信タグ信号を生成してバッファモジュール24 0に送信する。検索タグ信号は、図3を参照して説明するタグ基準計数値 とキャッシュブロックアドレスを含む。キャッシュブロックアドレスは、MB識別 子530に対応する検索されたメモリブロックが記憶されることになるキャッシ ュモジュール220内の特定のキャッシュブロックを指定するものである。アド レスモジュール210は、最長時間未使用(LRU)アルゴリズムを使用して、各 検索タグ信号に対する特定のキャッシュブロックアドレスを決定する。送信タグ 信号は、キャッシュブロックアドレス、テクセル識別子、補間係数及びミスマー カーを含む。 制御モジュール290は、バッファモジュール240内の検索タグ信号を使用 して、検索バッファ260からメモリブロックに関連するキャッシュブロックへ のメモリブロックの送信を制御する。図4を参照してさらに詳述するように、制 御モジュール290が、キャッシュブロックが検索バッファ260の最上部の関 連するメモリブロックに利用可能であると判定すると、制御モジュール290は 、データフォーマッター255へのメモリブロックの送信をトリガする。データ フォーマッター255は、このメモリブロックをその元の形式(フォーマット)か らキャッシュモジュール形式に変換するが、それは、本実施態様では、従来のAR GB形式である。データフォーマッター255は、次に、これらの再フォーマット された各メモリブロックをキャッシュモジュール220に送信し、そこで、メモ リブロックは、それらの関連するキャッシュブロックに記憶される。 制御モジュール290は、アドレスモジュール210によって分離された補間 情報を使用して、キャッシュモジュール220から各送信タグ信号に関連する各 テクセルのTFM180への送信をいつトリガするかを決定する。双一次型フィル タリングのようなフィルタリング技法は、画素合成を実行するために2つ以上の テクセルを必要し、これらのテクセルの各々は、キャッシュモジュール220が 4ウェイ−4セット構成であるために、異なるキャッシュブロックに配置される 可能性があり、従って、画素を合成する度に、最大4つの送信タグ信号をキャッ シュモジュール220に送信しなければならない。 図3は、アドレスモジュール210とバッファモジュール240をより詳細に 示す図である。アドレスモジュール210は、アドレスコントローラ310、 タグモジュール320、及びタグ基準カウンタ(TRC)330を備える。バッフ ァモジュール240は、キャッシュバッファ335と送信バッファ345から構 成される。各バッファ335と345は、最大4つまでのタグ信号を同時に受信 することができる。アドレスコントローラ310に結合されたタグモジュールは 、各キャッシュブロックのアドレスと、そのキャッシュブロックに記憶されたメ モリブロックに対応するMB識別子530とのアソシェーションを記憶する。本実 施態様では、タグモジュール320は、アドレスコントローラ310によって編 集されるテーブルである。 アドレスコントローラ310は、リクエストバッファ250、タグモジュール 320、TRC330、キャッシュバッファ335、送信バッファ345及び走査 モジュール160に結合される。この好適な実施態様では、アドレスコントロー ラ310は、状態マシンであり、この状態マシンは、インテル準拠のパーソナル コンピュータの中央処理装置(CPU)(不図示)によって実行されるソフトウエア プログラムであるか、または、状態マシンを実施するよう構成されたハードウエ アから代替的に構成される。走査モジュール160から画素識別子510を受信 すると、アドレスコントローラ310は、各画素識別子510のMB識別子530 の部分と、タグモジュール320に記憶されたMB識別子530を比較する。TRC 330は、アドレスコントローラ310がこれら2つのMB識別子530の一致( ヒット)を連続して検出した回数を記録する。この実施態様では、TRC330は 8ビットカウンタであり、最初は0に設定される。 アドレスコントローラ310が、受信したMB識別子530と、タグモジュール 320に記憶されたMB識別子530が一致を検出すると、アドレスコントローラ 310は、ヒットマーカー、MB識別子530に対応するテクセル識別子520、 及び、MB識別子530に関連するキャッシュブロックアドレスを含む前述の送信 タグ信号を生成する。アドレスコントローラ310は、また、TRC330の値を 1だけ増加させる。 アドレスコントローラ310が、受信したMB識別子530と、タグモジュール 320に記憶されたMB識別子530の1つとの一致を検出できない場合 は、アドレスコントローラ310は、MB識別子530と一次元メモリモジュール アドレスを含む検索タグ信号を生成する。さらに、送信タグ信号と検索タグ信号 が生成されて、バッファモジュール240に送信される。検索タグ信号は、現在 のTRC値、及び、前述したように、アドレスコントローラ310によって、LRUア ルゴリズムを使用することにより、一致検出されなかったMB識別子530に関連 付けられるキャッシュブロックアドレスとを含む。このキャッシュブロックアド レスは、キャッシュモジュール220内の位置として使用され、そこで、一致検 出されなかったMB識別子530に対応する検索されたメモリブロックが記憶され る。「ヒット」した場合と異なり、「ミス」した場合には、TRC330の値が1 だけ増加されることはなく、TRC330の現在の値が、検索タグ信号に組み込ま れ、TRC330は1に戻される。このTRCの値は、アドレスコントローラ310が 「ミス」の状態を識別する前の連続して「ヒット」した数を表す。「ミス」の状 態用の送信タグ信号は、テクセル識別子520、テクセル識別子520に対応す るキャッシュブロックアドレス、及び「ミス」マーカーを含む。「ミス」マーカ ーは、メモリモジュール140から検索されなければならないメモリブロックに 対応するそれらの送信タグ信号を識別するために使用される。この場合、検索タ グ信号と送信タグ信号はいずれも、キャッシュバッファ335と送信バッファ3 45の終わりにそれぞれ追加される。 図4は、TCM130の制御モジュール290の詳細図である。制御モジュール 290は、検索コントローラ410、送信コントローラ430、データ基準カウ ンタ(DRC)440及びステータスモジュール450を備える。DRC440は、キ ャッシュモジュール220に送信される、「ヒット」マーカーを有する連続した 送信タグ信号の数を記録する。本実施態様では、DRC440は8ビットカウンタ であり、ステータスモジュール450はテーブルであり、このテーブルで、各キ ャッシュブロックアドレスは、ある論理状態(例えば、「リードオンリー(読み 出しのみ)」の論理状態または「ライトオンリー(書き込みのみ)」の論理状態) に関連付けられる。 送信バッファ350、DRC440、及びステータスモジュール450に結合 される送信コントローラ430は、送信バッファ350の最上部における送信タ グ信号に対応するメモリブロック内のテクセルを、いつTCM130によってさら に処理するかを制御する。好適な実施態様では、送信コントローラ430は状態 マシンであり、この状態マシンは、インテル準拠のパーソナルコンピュータのC PUによって実行されるソフトウエアプログラムであるか、または、代替的に、 かかる状態マシンを実施するために構成されたハードウエアコンポーネントから なる。特定の画素に関連する送信タグ信号がいずれも、「ヒット」マーカーを含 み、送信バッファ350によって送信されるべき次の信号であり、対応するキャ ッシュブロックのステータスモジュール450の論理状態が、「リードオンリー 」状態に設定されている場合は、送信コントローラ430は、送信タグ信号をキ ャッシュモジュール220に送信するために送信バッファ350をトリガする。 次に、キャッシュモジュール220は、送信タグ信号に対応するテクセルをTFM 180に送信する。ほぼ同じ時間に、送信コントローラ430は、また、最初は 0の値に設定されているDRC440を1だけ増加させる。送信バッファ350の 最上部にあり、特定の画素識別子510に関連する送信タグ信号の少なくとも1 つが、「ミス」マーカーを含む場合は、送信コントローラ430は、ただちに送 信バッファ350をトリガして、送信タグ信号をキャッシュモジュール220に 送信するのではなく、検索コントローラ410が、キャッシュブロックの論理状 態を「リードオンリー」から「ライトオンリー」状態に変更して、検索バッファ 260からのメモリブロックの検索をトリガする。「ライトオンリー」への論理 状態の変化を検出すると、送信コントローラ430は、その論理状態を「リード オンリー」状態に再び変更し、DRCを1だけ増加して、画素合成のために必要と される送信タグ信号をキャッシュモジュール220に送信するために送信バッフ ァ350をトリガする。 検索コントローラ410は、検索バッファ260、キャッシュバッファ340 、DRC440及びステータスモジュール450に結合される。好適な実施態様で は、検索コントローラ410は状態マシンであり、この状態マシンは、インテル 準拠のパーソナルコンピュータのCPUによって実行されるソフトウエアプログ ラムであるか、代替的に、かかる状態マシンを実施するために構成さ れたハードウエアからなる。検索コントローラ410には、ステータスモジュー ル450内の特定のキャッシュブロックに関連付けられた論理状態を「リードオ ンリー」から「ライトオンリー」に変更することによって、キャッシュブロック 220内のメモリブロックの書き込みを同期させる役目がある。具体的には、検 索コントローラ410は、検索タグ信号に対応するメモリブロックが、メモリモ ジュール140から検索バッファ260によって受信されるのを待つ。受信され ると、検索コントローラ410は、現在のDRCの値を検索タグ信号内のTRCの値と 比較する。このTRCの値が0より大きくてDRCの値より小さい場合は、検索コント ローラ410は停止する。DRCの値がTRCの値以上であり、検索バッファ260が 空でない場合は、検索コントローラ410は、キャッシュブロックアドレスに対 応する論理状態を「ライトオンリー」に設定し、DRCの値を0に戻す。 上述したように、「ライトオンリー」に論理状態を変更することによって、検 索コントローラ410が、キャッシュバッファ340をトリガして、検索バッフ ァ260の最上部における検索されたメモリブロックを再フォーマットのために データフォーマッター255に送信することになる。次に、データフォーマッタ ー255は、再フォーマットされたメモリブロックをキャッシュモジュール22 0に送信し、そこで、メモリブロックは、検索タグ信号に対応するキャッシュブ ロックに記憶される。メモリブロックが、キャッシュモジュール220内に記憶 されると、送信コントローラ430は、キャッシュブロックの論理状態を「リー ドオンリー」に戻すことによって、「ライトオンリー」への論理状態の変化に応 答する。この一連の技法には、後で必要になるテクセルを含むメモリブロックを 上書きしてしまうリスクがあるが、この技法によって回避される待ち時間の大き さは、これらのメモリブロックを再検索することに起因するわずかな遅延を補っ て余りあるものである。 好適な実施態様についての以上の説明は、例示と説明のために提示したもので ある。開示したそのままの形態を本発明の全てとすることも、また、本発明をそ れに限定することも意図したものではない。上記の教示に照らして、多くの修正 及び変更が可能である。例えば、本発明の代替の実施態様では、双一次 型フィルタリングではなくて、3−一次型フィルタリングをサポートすることが できる。好適な実施態様は、本発明の原理とその実際の用途を最良に説明するた めに選択され、記述されたものであり、これにより、当業者は、種々の態様で本 発明を最良に利用することが可能であり、かつ、意図した特定の用途に適するよ うな種々の修正を施してそれらを利用する事が可能である。一方、本システム及 び方法は、帯域幅がネックとなって大量のデータを効率的に処理できないような 状況でも使用することができる。本発明の範囲は、請求の範囲とその均等物によ って規定されるべきものである。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE),OA(BF,BJ ,CF,CG,CI,CM,GA,GN,GW,ML, MR,NE,SN,TD,TG),AP(GH,GM,K E,LS,MW,SD,SL,SZ,UG,ZW),E A(AM,AZ,BY,KG,KZ,MD,RU,TJ ,TM),AL,AM,AT,AU,AZ,BA,BB ,BG,BR,BY,CA,CH,CN,CU,CZ, DE,DK,EE,ES,FI,GB,GD,GE,G H,GM,HR,HU,ID,IL,IN,IS,JP ,KE,KG,KP,KR,KZ,LC,LK,LR, LS,LT,LU,LV,MD,MG,MK,MN,M W,MX,NO,NZ,PL,PT,RO,RU,SD ,SE,SG,SI,SK,SL,TJ,TM,TR, TT,UA,UG,UZ,VN,YU,ZW (72)発明者 ツァオ,ランディ アメリカ合衆国カリフォルニア州94539, フレモント,サン・セバスチャン・プレイ ス・40338 (72)発明者 ニウ,ロジャー アメリカ合衆国カリフォルニア州94539, フレモント,ハーラン・ドライブ・1061 (72)発明者 ラオ,プーナチャンドラ アメリカ合衆国カリフォルニア州95051, サンタクララ,ホームステッド・ロード・ ナンバー9エイ・3131 (72)発明者 チェン,リン アメリカ合衆国カリフォルニア州94086, サニーベイル,カリエンテ・ドライブ・ナ ンバー6・639 (72)発明者 アルベス,ジェレミー アメリカ合衆国カリフォルニア州94041, マウンテンビュー,レインボウ・ドライ ブ・ナンバー160・600 【要約の続き】 クセルは、画素合成のためにテクスチャフィルタユニッ トに送信される。

Claims (1)

  1. 【特許請求の範囲】 1.無停止要求システムであって、 複数のテクセルを記憶するための第1の記憶装置と、 複数のテクセルのうちの第1のテクセルを記憶するために、前記第1の記憶装 置に結合された第2の記憶装置と、 第1の識別信号と前記第1のテクセルとのアソシェーションを記憶するための 第3の記憶装置と、 前記第2の記憶装置からの前記第1のテクセルの送信をトリガすることにより 、前記第1の識別信号に合致する第2の信号に応答するために、及び、前記第1 の記憶装置から複数のテクセルのうちの第2のテクセルを検索することにより、 前記第1の識別信号に合致しない第2の信号に応答するために、前記第2の記憶 装置と前記第3の記憶装置に結合された第1の論理装置であって、前記第2のテ クセルが、前記第2の識別信号と関連することからなる、第1の論理装置 とから構成される、無停止要求システム。 2.前記第2の記憶装置からの前記第1のテクセルの送信を同期化するために、 前記第1の論理装置に結合された第2の論理装置をさらに含む、請求項1のシス テム。 3.前記第2の記憶装置における前記第2のテクセルの記憶を同期化するために 、前記第1の論理装置に結合された第3の論理装置をさらに含む、請求項1のシ ステム。 4.前記第2の記憶装置と複数の論理状態のアソシェーションを記憶するために 、第2の論理装置に結合された第4の記憶装置をさらに含む、請求項2のシステ ム。 5.第1の値を第2の値に変更することによって前記第1の識別信号に合致する 前記第2の識別信号に応答するために、前記第1の論理装置に結合された第1の カウンタをさらに含む、請求項1のシステム。 6.第3の値を第4の値に変更することによって前記第2の記憶装置による前 記第1のテクセルの送信に応答するために、前記第2の論理装置に結合された第 2のカウンタをさらに含む、請求項2のシステム。 7.第3の値を第4の値に変更することによって、前記第2の記憶装置による前 記第1のテクセルの送信に応答するための第2のカウンタと 前記第2の記憶装置における前記第2のテクセルの記憶をトリガすることによ って、少なくとも前記第2の値と同じ大きさの値を有する前記第4の値に応答す るために、前記第1の論理装置と前記第2のカウンタに結合された第3の論理装 置 をさらに含む、請求項5のシステム。 8.前記第2の記憶装置からの前記第1のテクセルの送信を制御するために、前 記第2の記憶装置に結合された第2の論理装置と、 前記第2の記憶装置における前記第2のテクセルの記憶をトリガするために、 前記第2の記憶装置に結合された第3の論理装置と、 前記第1のテクセルの送信と前記第2のテクセルの記憶を同期化するために、 前記第2の論理装置と前記第3の論理装置に結合された第3の記憶装置をさらに 含む、請求項1のシステム。 9.前記第3の論理装置が、前記第2の記憶装置における前記第2のテクセルの 記憶をトリガするまで、第2の記憶モジュールにおける前記第2のテクセルの記 憶を遅延させるために、前記第1の記憶装置、前記第2の記憶装置、及び前記第 3の論理装置に結合された第1のバッファ をさらに含む、請求項3のシステム。 10.前記第1のバッファが先入れ先出しキューである、請求項9のシステム。 11.テクセルを要求するための方法であって、 第1の記憶装置に複数のテクセルを記憶するステップと、 第2の記憶装置に複数のテクセルのうちの第1のテクセルを記憶するステップ と、 第1の識別信号と前記第1のテクセルとのアソシェーションを記憶するステッ プと、 前記第2の記憶装置からの前記第1のテクセルの送信をトリガすることによ って、前記第1の識別信号に合致する第2の識別信号に応答するステップと、 前記第1の記憶装置から、前記第2の識別信号と関連する、複数のテクセルの うちの第2のテクセルを検索することによって、前記第1の識別信号に合致しな い第2の識別信号に応答するステップ からなる方法。 12.前記第2の記憶装置からの前記第1のテクセルの送信を同期化するステッ プをさらに含む、請求項11の方法。 13.前記第2の記憶装置における前記第2のテクセルの記憶を同期化するステ ップをさらに含む、請求項11の方法。 14.前記第2の記憶装置と複数の論理状態とのアソシェーションを記憶するス テップをさらに含む、請求項12の方法。 15.第1の値を第2の値に変更することによって、前記第1の識別信号に合致 する前記第2の識別信号に応答するステップをさらに含む、請求項11の方法。 16.第3の値を第4の値に変更することによって、前記第2の記憶装置による 前記第1のテクセルの送信に応答するステップをさらに含む、請求項12の方法 。 17.第3の値を第4の値に変更することによって、前記第2の記憶装置による 前記第1のテクセルの送信に応答するステップと、 前記第2の記憶装置における前記第2のテクセルの記憶をトリガすることによ り、前記第2の値と少なくとも同じ大きさの値を有する前記第4の値に応答する ステップ をさら含む、請求項15の方法。 18.前記第2の記憶装置からの前記第1のテクセルの送信を制御するステップ と、 前記第2の記憶装置における前記第2のテクセルの記憶をトリガするステップ と、 前記第1のテクセルの送信と前記第2のテクセルの記憶を同期化するステップ をさらに含む、請求項11の方法。 19.前記第3の論理装置が、前記第2の記憶装置における前記第2のテクセル の記憶をトリガするまで、第2の記憶モジュールにおける前記第2のテクセルの 記憶を遅延させるステップをさらに含む、請求項13の方法。 20.前記第2のテクセルの記憶を遅延させるステップが、 第3のテクセルを送信する前に、該第3のテクセルに先立って受信された前記 第2のテクセルを送信するステップ をさらに含む、請求項19の方法。
JP55166299A 1998-04-09 1999-03-04 無停止要求テクスチャキャッシュシステム及び方法 Expired - Lifetime JP4205176B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/057,628 1998-04-09
US09/057,628 US6011565A (en) 1998-04-09 1998-04-09 Non-stalled requesting texture cache
PCT/US1999/004778 WO1999053402A1 (en) 1998-04-09 1999-03-04 Non-stalled requesting texture cache system and method

Publications (2)

Publication Number Publication Date
JP2002504251A true JP2002504251A (ja) 2002-02-05
JP4205176B2 JP4205176B2 (ja) 2009-01-07

Family

ID=22011786

Family Applications (1)

Application Number Title Priority Date Filing Date
JP55166299A Expired - Lifetime JP4205176B2 (ja) 1998-04-09 1999-03-04 無停止要求テクスチャキャッシュシステム及び方法

Country Status (7)

Country Link
US (1) US6011565A (ja)
EP (1) EP0998709B1 (ja)
JP (1) JP4205176B2 (ja)
AU (1) AU2983199A (ja)
CA (1) CA2293634C (ja)
DE (1) DE69918022T2 (ja)
WO (1) WO1999053402A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010198156A (ja) * 2009-02-24 2010-09-09 Fujitsu Semiconductor Ltd 画像描画装置
JP4810605B2 (ja) * 2006-03-13 2011-11-09 株式会社ソニー・コンピュータエンタテインメント マルチプロセッサ環境のためのテクスチャユニット
JP2012177986A (ja) * 2011-02-25 2012-09-13 Nec System Technologies Ltd 画像描画装置、画像描画方法、及びプログラム
WO2013030861A1 (ja) * 2011-08-26 2013-03-07 三菱電機株式会社 テクスチャマッピング装置

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6259460B1 (en) * 1998-03-26 2001-07-10 Silicon Graphics, Inc. Method for efficient handling of texture cache misses by recirculation
US7136068B1 (en) 1998-04-07 2006-11-14 Nvidia Corporation Texture cache for a computer graphics accelerator
US6300953B1 (en) * 1998-10-15 2001-10-09 Nvidia Apparatus and method for grouping texture cache requests
US6353438B1 (en) * 1999-02-03 2002-03-05 Artx Cache organization—direct mapped cache
US6181352B1 (en) 1999-03-22 2001-01-30 Nvidia Corporation Graphics pipeline selectively providing multiple pixels or multiple textures
US6919895B1 (en) 1999-03-22 2005-07-19 Nvidia Corporation Texture caching arrangement for a computer graphics accelerator
US6650333B1 (en) 1999-06-09 2003-11-18 3Dlabs Inc., Ltd. Multi-pool texture memory management
US7061500B1 (en) 1999-06-09 2006-06-13 3Dlabs Inc., Ltd. Direct-mapped texture caching with concise tags
US6677952B1 (en) 1999-06-09 2004-01-13 3Dlabs Inc., Ltd. Texture download DMA controller synching multiple independently-running rasterizers
US6587113B1 (en) 1999-06-09 2003-07-01 3Dlabs Inc., Ltd. Texture caching with change of update rules at line end
US7050061B1 (en) 1999-06-09 2006-05-23 3Dlabs Inc., Ltd. Autonomous address translation in graphic subsystem
US6683615B1 (en) 1999-06-09 2004-01-27 3Dlabs Inc., Ltd. Doubly-virtualized texture memory
US6744438B1 (en) * 1999-06-09 2004-06-01 3Dlabs Inc., Ltd. Texture caching with background preloading
US6750872B1 (en) * 1999-09-17 2004-06-15 S3 Graphics, Co., Ltd. Dynamic allocation of texture cache memory
US6717577B1 (en) 1999-10-28 2004-04-06 Nintendo Co., Ltd. Vertex cache for 3D computer graphics
US6618048B1 (en) 1999-10-28 2003-09-09 Nintendo Co., Ltd. 3D graphics rendering system for performing Z value clamping in near-Z range to maximize scene resolution of visually important Z components
US6433789B1 (en) 2000-02-18 2002-08-13 Neomagic Corp. Steaming prefetching texture cache for level of detail maps in a 3D-graphics engine
US7710425B1 (en) 2000-06-09 2010-05-04 3Dlabs Inc. Ltd. Graphic memory management with invisible hardware-managed page faulting
US7538772B1 (en) * 2000-08-23 2009-05-26 Nintendo Co., Ltd. Graphics processing system with enhanced memory controller
US6636214B1 (en) 2000-08-23 2003-10-21 Nintendo Co., Ltd. Method and apparatus for dynamically reconfiguring the order of hidden surface processing based on rendering mode
US6707458B1 (en) 2000-08-23 2004-03-16 Nintendo Co., Ltd. Method and apparatus for texture tiling in a graphics system
US6811489B1 (en) 2000-08-23 2004-11-02 Nintendo Co., Ltd. Controller interface for a graphics system
US6937245B1 (en) * 2000-08-23 2005-08-30 Nintendo Co., Ltd. Graphics system with embedded frame buffer having reconfigurable pixel formats
US6700586B1 (en) 2000-08-23 2004-03-02 Nintendo Co., Ltd. Low cost graphics with stitching processing hardware support for skeletal animation
US7196710B1 (en) * 2000-08-23 2007-03-27 Nintendo Co., Ltd. Method and apparatus for buffering graphics data in a graphics system
US7576748B2 (en) * 2000-11-28 2009-08-18 Nintendo Co. Ltd. Graphics system with embedded frame butter having reconfigurable pixel formats
US20030030646A1 (en) * 2001-08-10 2003-02-13 Yeh Kwo-Woei Trilinear texture filtering method with proper texel selection
KR20140095296A (ko) * 2013-01-24 2014-08-01 삼성전자주식회사 픽셀 캐시 및 픽셀 캐시의 동작 방법
US9483843B2 (en) 2014-01-13 2016-11-01 Transgaming Inc. Method and system for expediting bilinear filtering
CN112862724B (zh) * 2021-03-12 2022-09-09 上海壁仞智能科技有限公司 用于计算的方法、计算设备和计算机可读存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69635638T2 (de) * 1995-06-06 2006-07-20 Hewlett-Packard Development Co., L.P., Houston Pufferspeicher für Texturdaten
US5751292A (en) * 1995-06-06 1998-05-12 Hewlett-Packard Company Texture mapping method and system
US5828382A (en) * 1996-08-02 1998-10-27 Cirrus Logic, Inc. Apparatus for dynamic XY tiled texture caching
US5831640A (en) * 1996-12-20 1998-11-03 Cirrus Logic, Inc. Enhanced texture map data fetching circuit and method

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4810605B2 (ja) * 2006-03-13 2011-11-09 株式会社ソニー・コンピュータエンタテインメント マルチプロセッサ環境のためのテクスチャユニット
JP2010198156A (ja) * 2009-02-24 2010-09-09 Fujitsu Semiconductor Ltd 画像描画装置
JP2012177986A (ja) * 2011-02-25 2012-09-13 Nec System Technologies Ltd 画像描画装置、画像描画方法、及びプログラム
WO2013030861A1 (ja) * 2011-08-26 2013-03-07 三菱電機株式会社 テクスチャマッピング装置

Also Published As

Publication number Publication date
EP0998709A4 (en) 2000-05-24
DE69918022D1 (de) 2004-07-22
CA2293634C (en) 2008-08-05
AU2983199A (en) 1999-11-01
CA2293634A1 (en) 1999-10-21
DE69918022T2 (de) 2005-07-07
EP0998709A1 (en) 2000-05-10
WO1999053402A1 (en) 1999-10-21
US6011565A (en) 2000-01-04
EP0998709B1 (en) 2004-06-16
JP4205176B2 (ja) 2009-01-07

Similar Documents

Publication Publication Date Title
JP4205176B2 (ja) 無停止要求テクスチャキャッシュシステム及び方法
EP1016068B1 (en) Reordering of memory references for pixels in a page-mode memory architecture
US5831640A (en) Enhanced texture map data fetching circuit and method
US6426753B1 (en) Cache memory for high latency and out-of-order return of texture data
JP2637931B2 (ja) テクスチャ・マッピングを行うコンピュータ・システム
US6204863B1 (en) Method for dynamic XY tiled texture caching
US6288730B1 (en) Method and apparatus for generating texture
US6629188B1 (en) Circuit and method for prefetching data for a texture cache
JP4203128B2 (ja) 3次元の三角形描画におけるブロック及びバンド志向走査
JP3490346B2 (ja) テクスチャ・データ取り出し方法
US7027063B1 (en) Texture cache addressing
JP4545242B2 (ja) ノンブロッキング・パイプライン・キャッシュ
JPH0916785A (ja) テクスチャマッピング・コンピュータ・グラフィックス・システム
US6222552B1 (en) Systems and methods for caching depth information of three-dimensional images
US6300953B1 (en) Apparatus and method for grouping texture cache requests
US6456291B1 (en) Method and apparatus for multi-pass texture mapping
US20050195200A1 (en) Embedded system with 3D graphics core and local pixel buffer
US20210398241A1 (en) Techniques for performing accelerated point sampling in a texture processing pipeline
US6590579B1 (en) System for low miss rate replacement of texture cache lines
US6903739B2 (en) Graphic display system having a frame buffer with first and second memory portions
EP0803859A2 (en) System and method for optimizing storage requirements for an N-way distribution channel

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060208

A72 Notification of change in name of applicant

Free format text: JAPANESE INTERMEDIATE CODE: A721

Effective date: 20070328

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20070328

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20070706

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080408

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080704

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080819

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080821

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

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

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

Free format text: PAYMENT UNTIL: 20111024

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

Year of fee payment: 3

R154 Certificate of patent or utility model (reissue)

Free format text: JAPANESE INTERMEDIATE CODE: R154

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

Free format text: PAYMENT UNTIL: 20121024

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20121024

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20131024

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term