JP3704519B2 - 命令解読のための複数のソース - Google Patents

命令解読のための複数のソース Download PDF

Info

Publication number
JP3704519B2
JP3704519B2 JP2002530993A JP2002530993A JP3704519B2 JP 3704519 B2 JP3704519 B2 JP 3704519B2 JP 2002530993 A JP2002530993 A JP 2002530993A JP 2002530993 A JP2002530993 A JP 2002530993A JP 3704519 B2 JP3704519 B2 JP 3704519B2
Authority
JP
Japan
Prior art keywords
instructions
instruction
multiplexer
collecting
decoder
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 - Lifetime
Application number
JP2002530993A
Other languages
English (en)
Other versions
JP2004510247A (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.)
Analog Devices Inc
Original Assignee
Analog Devices 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 Analog Devices Inc filed Critical Analog Devices Inc
Publication of JP2004510247A publication Critical patent/JP2004510247A/ja
Application granted granted Critical
Publication of JP3704519B2 publication Critical patent/JP3704519B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/30149Instruction analysis, e.g. decoding, instruction word fields of variable length instructions

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
  • Advance Control (AREA)

Description

【0001】
【発明の属する技術分野】
本発明はデジタル信号プロセッサに関し、さらに詳しくは、デコーダに命令を提供する複数のソースを有するデジタル信号プロセッサに関する。
【0002】
【発明の背景】
デジタル信号処理は、デジタル形式の信号表現および数値演算を用いたかかる信号表現の変換または処理と関連する。デジタル信号処理は、ワイヤレス通信、ネットワーキング、マルチメディア等の分野における今日の多くの先端技術製品にとって核心となる技術である。デジタル信号処理技術が普及した理由の1つは、低価格でパワフルなデジタル信号プロセッサ(DSP)が開発され、これが、これらの製品を安く効率的に生産するための信頼できる演算能力をエンジニアに提供したことである。最初のDSPが開発されて以来、DSPのアーキテクチャや設計は、ビデオ伝送順序のような複雑なリアルタイム処理でさえ行なうことができる段階にまで発展した。
【0003】
DSPは、デジタル・ビデオ、イメージング、オーディオのような様々なマルチメディア・アプリケーションにしばしば用いられる。DSPは、かかるマルチメディア・ファイルを作成して開くためのデジタル信号を操作する。
【0004】
MPEG−1(Motion Picture Expert Group)、MPEG−2、MPEG−4およびH.263は、デジタル・ビデオ圧縮標準規格およびファイル形式である。これらの標準規格は、個々のフレーム全体を格納する代わりに、主としてあるビデオ・フレームから他のフレームへの変化を格納することにより、デジタル・ビデオ信号の高い圧縮率を達成する。ビデオ情報は、多くの異なる技術を用いて、さらに圧縮することができる。
【0005】
DSPは、圧縮している間に、ビデオ情報に対して様々な動作を実行するために用いられる。これらの動作は、動き探索および空間補間アルゴリズムを含む。第1の目的は、隣接したフレーム内のブロック間の歪みを測定することである。これらの動作は演算が集中的であるので、高度なデータ処理能力が要求される。
【0006】
標準規格のMPEGファミリーは、マルチメディア・アプリケーションおよびファイルの帯域幅を拡大する要求と歩調を合わせて発展している。標準規格の各新バージョンは、MPEG準拠のビデオ処理装置内で使用されるDSPにさらに大きな処理要求を出すより複雑なアルゴリズムを提供する。
【0007】
ビデオ処理装置の製造者は、MPEGおよびH.263標準規格に従ってビデオ符号化のためにカスタマイズされた特定用途向け集積回路(ASIC)に依存することが多い。しかしながら、ASICは設計が複雑で、生産コストが高く、それらのアプリケーションにおいて汎用DSPよりも柔軟性がない。
【0008】
【実施例の詳細な説明】
本発明のこれらおよび他の特徴および利点は、次の詳細な記述を読み、かつ、添付図面を参照することによって、さらに明らかになるだろう。
【0009】
図1は、発明の実施例に従った、プロセッサを含むモバイル・ビデオ装置100を示す。モバイル・ビデオ装置100は、アンテナ105から、あるいは、デジタル・ビデオ・ディスク(DVD)やメモリ・カードのようなデジタル・ビデオ記憶媒体120から受信した、符号化されたビデオ信号により生成されたビデオ画像を表示する携帯装置である。プロセッサ110は、プロセッサの動作のために命令およびデータを格納するキャッシュ・メモリ115と通信する。プロセッサ110は、マイクロプロセッサ、デジタル信号プロセッサ(DSP)、スレーブDSPを制御するマイクロプロセッサ、またはハイブリッド・マイクロプロセッサ/DSPアーキテクチャを備えたプロセッサでもよい。本アプリケーションにおいては、プロセッサ110は、以下DSP110と呼ぶ。
【0010】
DSP110は、符号化されたビデオ信号によって、例えば、アナログ対デジタル変換、復調、フィルタリング、データ回復、符号解読等を含む様々な動作を行なう。DSP110は、標準規格のMPEGファミリーおよびH.263標準規格のような種々のデジタル・ビデオ圧縮標準規格の1つによって圧縮したデジタル・ビデオ信号を解読する。そして、解読されたビデオ信号は、ディスプレイ125上にビデオ画像を生成するために、ディスプレイ・ドライバ130に入力される。
【0011】
携帯装置は、一般的に電源による制約を受ける。さらに、ビデオ解読動作は演算が集中的である。従って、そのような装置内で使用されるプロセッサとしては、比較的高速で低電力の装置が好都合である。
【0012】
DSP110は、巧妙なパイプライン方式のロード/格納アーキテクチャを有する。パイプライン方式を用いることによって、DSPの性能は、パイプライン方式でないDSPに比べて増強される。第1命令を取り出して第1命令を実行し、次に第2命令を取り出す代わりに、パイプライン方式のDSP110では、第1命令の実行と同時に第2の命令を取り出すので、これによって命令処理能力が改善する。さらに、パイプライン方式のDSPのクロック・サイクルは、パイプライン方式でないDSPより短く、そこで命令が同じクロック・サイクル内で取り出されて実行される。
【0013】
このようなDSP110は、ビデオ・カムコーダ、電話会議、PCビデオ・カード、および高品位テレビ(HDTV)に使用することができる。さらに、DSP110は、モバイル電話方式、音声認識、および他のアプリケーション内で使用される音声処理のようなデジタル信号処理を利用する他の技術と関連して使用できる。
【0014】
図2には、1つの実施例に従って、DSP110を含む信号処理システム200のブロック図が示される。1またはそれ以上のアナログ信号が、例えばアンテナ105のような外部ソースによって、シグナル・コンディショナ202に提供される。シグナル・コンディショナ202は、アナログ信号によって一定の前処理機能を実行する。典型的な前処理機能は、いくつかのアナログ信号を共に混合し、濾波し、増幅するなどの段階を含む。アナログ−デジタル変換器(ADC)204は、上記のように、シグナル・コンディショナ202から前処理されたアナログ信号を受信し、かつ、前処理されたアナログ信号をサンプルから構成されるデジタル信号に変換するために結合される。サンプルは、シグナル・コンディショナ202によって受信されたアナログ信号の性質によって決定されるサンプリング率によって得られる。DSP110は、ADC204の出力でデジタル信号を受信するために結合される。DSP110は、受信デジタル信号によって望ましい信号変換を実行し、1またはそれ以上の出力デジタル信号を生成する。デジタル−アナログ変換器(DAC)206は、DSP110から出力デジタル信号を受信するために結合される。DAC206は、出力デジタル信号を出力アナログ信号に変換する。そして、出力アナログ信号は、他のシグナル・コンディショナ208に伝達される。シグナル・コンディショナ208は、出力アナログ信号によって後処理機能を実行する。典型的な後処理機能は、上記の前処理機能に類似する。シグナル・コンディショナ202,208、ADC204およびDAC206については、他にも様々な手段が周知であることに注意されたい。これらの装置の適切なアレンジメントであれば、DSP110を用いた信号処理システム200への結合が可能である。
【0015】
図3には、別の実施例に従った信号処理システム300が示される。本実施例において、デジタル受信機302は、1またはそれ以上のデジタル信号を受信し、かつ、DSP110に受信デジタル信号を伝達するために配置される。図2に示される実施例のように、DSP110は、受信デジタル信号によって望ましい信号変換を実行し、1またはそれ以上の出力デジタル信号を生成する。
デジタル信号送信機304は、出力デジタル信号を受信するために結合される。1つの典型的なアプリケーションにおいて、信号処理システム300はデジタル・オーディオ装置であり、そこでデジタル受信機302が、DSP110へ、デジタル記憶装置120上に格納されたデータを示すデジタル信号を伝える。次に、DSP110は、デジタル信号を処理し、結果としての出力デジタル信号をデジタル送信機304に伝達する。そして、デジタル送信機304は、出力デジタル信号の値を、ディスプレイ125上にビデオ画像を生成するディスプレイドライバ130に送信する。
【0016】
図4に図示されたパイプラインは8つのステージを含み、それは、命令取り出し402−403、デコード404、アドレス演算405、実行406−408、および書き戻し409のステージを含む。命令iがあるクロック・サイクルで取り出され、そして、例えばi+1、i+2のような新たな命令を取り出すと同時に、次のクロック・サイクルでパイプライン上で動作され、実行される。
【0017】
パイプライン方式は、プロセッサの性能に、追加の協調問題やハザードをもたらすことがある。プログラムの流れにおけるジャンプは、パイプライン内に空スロットまたは「バブル」を生成する。条件付き分岐を生じたり、例外や中断を発生する状況は、命令の連続的な流れを変更する。それらが発生した後は、新しい命令は、連続的なプログラム流れの外で取り出され、パイプライン内の残りの命令を無関係にする。データ・フォワーディング、分岐予測、パイプライン内の命令アドレスと有効なビットを関連付けるといった方法が、これらの複雑さに対処するために用いられることがある。
【0018】
図5は、本発明の1つの実施例に従った、複数のソースのデコーダ提供システム500のブロック図である。デコーダ提供システム500は、命令レジスタ507、ループ・バッファ510、エミュレーション命令レジスタ515、および他のソース520を有するIキャッシュ/整列ユニット505、64ビット・マルチプレクサ(MUX)525、2ビット・マルチプレクサ(MUX)530、およびデコーダ535のような複数のソースを含む。デコーダ提供システム500は、命令レジスタ507へデータを転送することなく、複数のソースの1つによってデコーダ535に直接提供されることを可能にする。この特定の実施例では、データは命令レジスタ507へ転送される必要がないので、命令レイテンシが減少し、DSP110の性能が向上する。さらに、複数のソースは、幅ビットを含む同一フォーマットを有する命令を提供する。デコーダ535の設計は、複数のソースが同様にフォーマットされた命令を提供することを保証することによって単純化でき、それによって、サイクル時間を改善する。
【0019】
Iキャッシュ/整列ユニット505、ループ・バッファ510、エミュレーション命令レジスタ515、または他のソース520は、64ビットMUX525および2ビットMUX530の双方に結合される。これらの各ソースは、16ビット、32ビット、または64ビットの命令のような複数の幅の命令を提供する。これらの命令は、64ビットMUX525に提供される。もちろん、他のサイズの命令を処理できる他のサイズのMUXも、本発明の精神から逸脱しない限り使用できる。各ソースはまた、64ビットMUX525に提供される命令の幅を示す2ビットMUX530に信号を提供する。2ビットの信号で、2ビットの幅信号のための4つの値が可能である。例えば、00の幅ビットは、命令が無効であることを示し、01の幅ビットは16ビットの命令を示し、10の幅ビットは32ビットの命令を示し、11の幅ビットは64ビットの命令を示す。一旦特定の命令ソースが選択されると、64ビットMUX525からの命令、および、そのソースからの2ビットMUX530からの幅ビットの双方は、処理するためにデコーダ535へ転送される。
【0020】
2つのマルチプレクサ525,530が図示されているが、追加情報の選択を可能にするために、いかなる数のマルチプレクサでも使用できることが理解されるであろう。例えば、追加のマルチプレクサは、ソース505−520の各々からプリデコード情報を受信して、適切なプリデコード情報をデコーダへ送ることができる。
【0021】
デコーダ535に命令を提供するプロセス600が、図6に示される。プロセス600は、スタート・ブロック605で始まる。ブロック610へ進むと、そこでは、1またはそれ以上のソースが命令および対応する幅ビットをMUX525,530に提供する。上述のように、命令は、16ビット、32ビットまたは64ビットを含む様々なサイズである。命令は、ただ1つのソースによって提供されてもよいが、命令や対応する幅ビットは、2またはそれ以上のソースによって提供されてもよい。
【0022】
ブロック615へ進むと、そこでは、命令を提供するソースが選択される。DSP110は、次の命令が、Iキャッシュ/整列ユニット505、ループ・バッファ510、エミュレーション命令レジスタ515または他のソース520のいずれによって提供されるのかを決定する。DSP110がデコーダ535に送る命令を決定した後、MUX525,530がデコーダ535へ適切な命令および幅ビットを提供する。
【0023】
ブロック620へ進むと、そこでは、選択された命令および幅ビットが、命令レジスタ507に格納されずに、直接デコーダ535へ転送される。デコーダ535に命令を直接転送することによって、命令レイテンシが減少し、性能が向上する。その後、デコーダ535が命令を実行する。そして、本プロセスはエンド・ブロック630で終了する。
【0024】
本発明のマルチプレクサ525,530は、選択された命令ソース505−520に基づいてデコーダ535に適切な情報を提供する。しかしながら、複数のソース505−520が選択された場合、マルチプレクサ525,530は、デコーダ535への情報提供を制御するためにプライオリティ論理を含むことがある。例えば、マルチプレクサ525,530は、エミュレーション命令レジスタ515からの情報が最優先であるとか、Iキャッシュ/整列ユニット505からの情報がループ・バッファ510からの情報より優先して処理されるといったことを記述するプライオリティ論理を含む。優先順位スケジュールは、処理全般にわたって予め決定され、または更新される。
【0025】
本発明の多くの変更や修正が、当業者にとって直ちに明らとなるであろう。従って、本発明は、その精神または本質的特徴から逸脱しない限り、他の特定の形で具体化することができる。
【図面の簡単な説明】
【図1】 本発明の1つの実施例に従ったプロセッサを利用するモバイル・ビデオ装置のブロック図である。
【図2】 本発明の実施例に従った信号処理システムのブロック図である。
【図3】 本発明の実施例に従った他の信号処理システムのブロック図である。
【図4】 本発明の実施例に従った図1中のプロセッサの典型的なパイプライン・ステージを図示する。
【図5】 本発明の1つの実施例に従った複数のソース・デコーダ・フィード・システムのブロック図である。
【図6】 本発明の1つの実施例に従った、複数のソースからデコーダへ選択された命令を提供するプロセスを図示する。

Claims (25)

  1. 複数のソースから選択された命令を第1マルチプレクサに収集する段階と、
    前記選択された命令のサイズを示すデータを第2マルチプレクサに収集する段階と、
    前記選択された命令および前記選択された命令のサイズを示すデータをデコーダに提供する段階と、
    から成ることを特徴とするプロセッサ内のデコーダへ命令を提供する方法。
  2. 前記複数のソースから複数の命令を収集する段階をさらに含むことを特徴とする請求項1記載の方法。
  3. 第3マルチプレクサに前記ソースの少なくとも1つからプリデコード情報を収集する段階と、
    前記プリデコード情報を前記デコーダに提供する段階と、
    をさらに含むことを特徴とする請求項1記載の方法。
  4. 前記選択された命令のサイズに対応して前記デコーダへ幅ビットを送信する段階をさらに含むことを特徴とする請求項1記載の方法。
  5. 前記複数のソースから前記命令のサイズに対応する複数の幅ビットを収集する段階をさらに含むことを特徴とする請求項1記載の方法。
  6. 前記第2マルチプレクサ内で前記複数の幅ビットを収集する段階をさらに含むことを特徴とする請求項5記載の方法。
  7. 優先順位スケジュールに基づいて前記選択された命令を決定する段階をさらに含むことを特徴とする請求項1記載の方法。
  8. デジタル信号プロセッサ内で前記命令を提供する段階をさらに含むことを特徴とする請求項1記載の方法。
  9. 複数の命令ソースから複数の命令を第1マルチプレクサに収集する段階と、
    前記複数の命令に対応する複数の幅ビットを第2マルチプレクサに収集する段階と、
    前記複数の命令から処理すべき1つを決定する段階と、
    前記複数の命令から選択された1つおよびそれに対応する幅ビットをデコーダへ転送する段階と、
    から成ることを特徴とするプロセッサ内のデコーダで命令を取得する方法。
  10. Iキャッシュ/整列ユニットから命令を収集する段階をさらに含むことを特徴とする請求項9記載の方法。
  11. ループ・バッファから命令を収集する段階をさらに含むことを特徴とする請求項9記載の方法。
  12. エミュレーション命令レジスタから命令を収集する段階をさらに含むことを特徴とする請求項9記載の方法。
  13. デジタル信号プロセッサ内で命令を取得する段階をさら含むことを特徴とする請求項9記載の方法。
  14. 同一のフォーマットを有する前記複数の命令を収集する段階をさらに含むことを特徴とする請求項9記載の方法。
  15. 優先順位スケジュールに基づいて処理される前記命令を決定する段階をさらに含むことを特徴とする請求項9記載の方法。
  16. 複数の命令を提供する複数の命令ソースと、
    前記複数の命令ソースから前記複数の命令を受信する第1マルチプレクサであって、前記第1マルチプレクサは前記複数の命令から実行すべき第1命令を選択する、第1マルチプレクサと、
    前記第1マルチプレクサから前記選択された第1命令を受信するデコーダと、
    前記命令ソースから前記命令のサイズを示す複数の信号を受信する第2マルチプレクサであって、前記第2マルチプレクサは前記選択された第1命令に対応する前記複数の信号の1つを前記デコーダに提供する、第2マルチプレクサと、
    から構成されることを特徴とするプロセッサ。
  17. 前記ソースの少なくとも1つからプリデコード情報を示すプリデコード信号を受信する第3マルチプレクサをさらに含み、前記第3マルチプレクサは前記プリデコード信号を前記デコーダに提供する、
    ことを特徴とする請求項16記載のプロセッサ。
  18. 前記複数の命令の各々が同一のフォーマット内にあることを特徴とする請求項16記載のプロセッサ。
  19. 前記デコーダが、前記第1マルチプレクサから前記選択された第1命令を直接受信することを特徴とする請求項16記載のプロセッサ。
  20. 前記第1マルチプレクサが、優先順位スケジュールに基づいて前記複数の命令から実行されるべき第1命令を選択することを特徴とする請求項16記載のプロセッサ。
  21. 前記プロセッサがデジタル信号プロセッサであることを特徴とする請求項16記載のプロセッサ。
  22. 複数の命令を処理するマシン・システム内で使用するための機械読み取り可能な記憶媒体上に存在する命令を含む装置であって、前記命令によって前記マシンが、
    複数のソースから命令を選択し、
    前記命令を第1マルチプレクサに収集し、
    前記選択された命令のサイズを示すデータを第2マルチプレクサに収集し、
    前記選択された命令および前記選択された命令のサイズを示すデータを前記デコーダへ提供する、
    ことを特徴とする装置。
  23. 前記マシンが前記複数のソースから複数の命令を収集することを特徴とする請求項22記載の装置。
  24. 前記マシンが、
    第3マルチプレクサに前記ソースの少なくとも1つからプリデコード情報を収集し、
    前記プリデコード情報を前記デコーダに提供する、
    ことを特徴とする請求項23記載の装置。
  25. 前記命令のサイズに対応する複数の幅ビットが、前記複数のソースから収集されることを特徴とする請求項22記載の装置。
JP2002530993A 2000-09-28 2001-09-25 命令解読のための複数のソース Expired - Lifetime JP3704519B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US67090700A 2000-09-28 2000-09-28
PCT/US2001/030261 WO2002027482A2 (en) 2000-09-28 2001-09-25 Multiple sources for instruction decode

Publications (2)

Publication Number Publication Date
JP2004510247A JP2004510247A (ja) 2004-04-02
JP3704519B2 true JP3704519B2 (ja) 2005-10-12

Family

ID=24692374

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002530993A Expired - Lifetime JP3704519B2 (ja) 2000-09-28 2001-09-25 命令解読のための複数のソース

Country Status (5)

Country Link
JP (1) JP3704519B2 (ja)
KR (1) KR100688139B1 (ja)
CN (1) CN1261864C (ja)
TW (1) TWI237787B (ja)
WO (1) WO2002027482A2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04293124A (ja) * 1991-03-20 1992-10-16 Hitachi Ltd データ処理プロセッサ
GB2263985B (en) * 1992-02-06 1995-06-14 Intel Corp Two stage window multiplexors for deriving variable length instructions from a stream of instructions
SG47981A1 (en) * 1994-03-01 1998-04-17 Intel Corp Pipeline process of instructions in a computer system

Also Published As

Publication number Publication date
WO2002027482A3 (en) 2002-06-13
KR20030036844A (ko) 2003-05-09
CN1261864C (zh) 2006-06-28
WO2002027482A2 (en) 2002-04-04
CN1466717A (zh) 2004-01-07
TWI237787B (en) 2005-08-11
JP2004510247A (ja) 2004-04-02
KR100688139B1 (ko) 2007-03-02

Similar Documents

Publication Publication Date Title
US7036000B2 (en) Valid bit generation and tracking in a pipelined processor
US7360059B2 (en) Variable width alignment engine for aligning instructions based on transition between buffers
US6789184B1 (en) Instruction address generation and tracking in a pipelined processor
JP3818965B2 (ja) ソフトウェアおよびハードウェアのループ圧縮を有するfifo書込み/lifo読取り追跡バッファ
US6976151B1 (en) Decoding an instruction portion and forwarding part of the portion to a first destination, re-encoding a different part of the portion and forwarding to a second destination
JP3704519B2 (ja) 命令解読のための複数のソース
JP3692115B2 (ja) 命令幅に基づく効率的なエミュレーションの実行
US7069420B1 (en) Decode and dispatch of multi-issue and multiple width instructions
JP3844465B2 (ja) イベント・ベクトル・テーブルのオーバーライド

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20041018

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041108

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050401

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050602

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050725

R150 Certificate of patent or registration of utility model

Ref document number: 3704519

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20090729

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

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

Free format text: PAYMENT UNTIL: 20090729

Year of fee payment: 4

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

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20110729

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20110729

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120729

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20120729

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130729

Year of fee payment: 8

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

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