説明

プロセッサ設計支援装置及びプロセッサ設計支援プログラム

【課題】 ハザードの発生を充分防ぐことが可能なプロセッサを設計でき、しかもこの設計にかかる処理が簡易かつ効率的に行えるプロセッサ設計支援装置を提供する。
【解決手段】 設計対象のパイプラインプロセッサにおいて実行される命令の各ステージにおける動作の定義を支援する設計支援装置を構成するにあたり、命令に含まれる複数の動作要素のうちの同一ステージにおいて同一のハードウェアリソースを占有するもの同士を汎用コンピュータのプロセッサ102で対応付け、主記憶装置106においてポリシーとして管理する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プロセッサ設計支援装置及びプロセッサ設計支援プログラムに関する。
【背景技術】
【0002】
現在、組込みシステムにおいて、特定の用途に向けて開発されたプロセッサが多く用いられている。このようなプロセッサは、ASIP(Application Specific Instruction set Processor)と呼ばれ、特定のアプリケーションに機能を特化することによって汎用的なプロセッサに比べてプロセッサの面積を削減し、処理効率を向上させることができる。
また、近年では、ハードウェアリソースのパラメータ、命令セット、各命令におけるマイクロ動作を記述するだけでASIPが自動的に設計できるシステム(設計支援ツール)が開発されている。設計支援ツールの開発により、ASIPの開発に係る困難性が軽減されるとともに、開発コストが低廉化する。
【0003】
ASIPの設計支援ツールとしては、例えば、大阪大学で開発されたASIP Meisterがある(非特許文献1)。このASIP Meisterは、RISC(Reduced Instruction Set Computer)プロセッサの設計支援ツールである。ASIP Meisterによれば、ハードウェアリソースや命令セットなどをパラメータとして定義することによって自動的にプロセッサのHDL(Hardware Description Language)だけでなく、アセンブラやコンパイラ、ISS(Instruction Set Simulator)などを生成することができる。
【0004】
ところで、ASIPの設計支援ツールでは、プロセッサの設計にレジスタや演算器などのハードウェアリソースを定義することが必要である。また、命令デコーダの作成のためには命令セットの定義が必要となる。さらに、命令の内容(動作)を記述するマイクロ動作記述(Micro Operation Description)が必要になる。マイクロ動作記述に関する従来技術としては、例えば、特許文献1に記載された発明がある。
【0005】
特許文献1の発明は、特にパイプライン制御に関するものであり、ハザードを起こすことがない命令動作を実現することを目的にしている。
ASIP Meisterや特許文献1のマイクロ動作記述を実現するツール等では、アプリケーションに特化された命令の動作記述を行う際、あるハードウェアリソースの動作記述をどのステージで行うかに試行錯誤を要する場合がある。すなわち、ASIPのように特定用途向けとして開発されたプロセッサでは、例えばR3000のような基本的なプロセッサにないハードウェアリソースを用いたとき、このハードウェアリソースをどのステージで扱う(リードまたはライトするか)を決定することが必要になる。
【0006】
特許文献1の発明では、ポリシーの決定にあたり、ハードウェアリソースが衝突することによってハザードが起きる全ての命令パターンを抽出する。そして、抽出された結果に基づいて、各パイプラインステージでの処理を進行させる、あるいは停止させる理論を自動的に生成している。
【非特許文献1】http://aoba.ics.es.osaka-u.ac.jp/eda-meister/asip-meister/
【特許文献1】特開平6−60147号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、上記した特許文献1の発明は、ハザードが起きる全ての命令パターンを抽出する処理の処理量が大量で処理にかかる負荷が大きいという不具合がある。また、このような負荷の大きい処理を行った場合にも、プロセッサのハードウェアリソースや命令セット、マイクロ動作記述全てユーザが定義する場合、ハザードがまったく起きない論理を生成することは困難であり、適切な妥協点を見出してパイプライン処理の論理を構成することが必要となる場合も多い。
【0008】
なお、適切な妥協点とは、例えば、あるパターンの命令の処理時においてハザードは発生するものの、処理全般にかかる時間が短時間ですむといった観点から論理を生成することをいう。
本発明は、上記した点に鑑みてなされたものであり、ハザードの発生を充分防ぐことが可能なプロセッサを設計でき、しかもこの設計にかかる処理が簡易かつ効率的に行えるプロセッサ設計支援装置及び設計支援プログラムを提供するものとする。
【課題を解決するための手段】
【0009】
以上の課題を解決するため、本発明は、設計対象のパイプラインプロセッサにおいて実行される命令の各ステージにおける動作の定義を支援するプロセッサ設計支援装置であって、前記命令が複数の動作要素を含み、同一ステージにおいて同一のハードウェアリソースを占有する動作要素同士の対応付けをポリシーとして管理するポリシー管理手段を備えることを特徴とする。
【0010】
このような発明によれば、命令に含まれる複数の動作要素同士を同一ステージにおいて同一のハードウェアリソースを占有するものごとに管理することができる。このため、同一ステージにおいて同一のハードウェアリソースを占有する動作要素同士を命令に関わらず対応付けて管理することができる。このため、1つの命令で動作要素を操作したとき、この動作要素に対応付けられる他の命令の動作要素をポリシーによって一括して検出し、対応して操作することができる。このような発明で動作要素をハザード防止のために操作した場合、ハザードの発生を充分防ぐことが可能なプロセッサを設計でき、プロセッサの設計にかかる処理が簡易かつ効率的に行えるプロセッサ設計支援装置を提供することができる。
【0011】
また、本発明のプロセッサ設計支援装置は、前記命令のいずれかにおける動作要素を実行するステージが変更された場合、前記ポリシー管理手段によって管理されているポリシーで対応付けられた他の動作要素を実行するステージを同様に変更するステージ変更手段をさらに備えることを特徴とする。
このような発明によれば、設計対象となるプロセッサにおけるハザードの発生を防ぐために動作要素のステージを移動させたとき、この移動に伴って他の命令の動作要素を一括して移動させることができる。したがって、ハザードの発生を充分防ぐことが可能なプロセッサを設計でき、プロセッサの設計にかかる処理が簡易かつ効率的に行えるプロセッサ設計支援装置を提供することができる。
【0012】
また、本発明のプロセッサ設計支援プログラムは、パイプラインプロセッサにおいて実行される命令の各ステージにおける動作の定義を支援する設計支援プログラムであって、前記命令が複数の動作要素を含み、同一ステージにおいて同一のハードウェアリソースを占有する動作要素同士の対応付けをポリシーとして管理するポリシー管理機能と、をコンピュータに実行させることを特徴とする。
【0013】
このような発明によれば、命令に含まれる複数の動作要素同士を同一ステージにおいて同一のハードウェアリソースを占有するものごとに管理することができる。このため、同一ステージにおいて同一のハードウェアリソースを占有する動作要素同士を命令に関わらず対応付けて管理することができる。このため、1つの命令で動作要素を操作したとき、この動作要素に対応付けられる他の命令の動作要素をポリシーによって一括して検出し、対応して操作することができる。このような発明で動作要素をハザード防止のために操作した場合、ハザードの発生を充分防ぐことが可能なプロセッサを設計でき、プロセッサの設計にかかる処理が簡易かつ効率的に行えるプロセッサ設計支プログラムを提供することができる。
【0014】
また、本発明のプロセッサ設計支援プログラムは、前記命令のいずれかにおける動作要素を実行するステージが変更された場合、前記ポリシー管理手段によって管理されているポリシーで対応付けられた他の動作要素を実行するステージを同様に変更するステージ変更機能をさらに含むことを特徴とする。
このような発明によれば、設計対象となるプロセッサにおけるハザードの発生を防ぐために動作要素のステージを移動させたとき、この移動に伴って他の命令の動作要素を一括して移動させることができる。したがって、ハザードの発生を充分防ぐことが可能なプロセッサを設計でき、プロセッサの設計にかかる処理が簡易かつ効率的に行えるプロセッサ設計支援プログラムを提供することができる。
【発明を実施するための最良の形態】
【0015】
以下、図を参照して本発明に係る一実施形態のプロセッサ設計支援装置(以下、単に設計支援装置とも記す)を説明する。図1は、本実施形態の設計支援装置のブロック図である。本実施形態の設計支援装置は、パイプラインプロセッサの設計を支援するものとする。なお、パイプラインとは、コンピュータの高速化に使用する重複オペレーティングサイクル機能である。パイプライン化によって、一つの命令が終わる前に次の命令を始めることができ、複数の動作を並列的に実行することが可能になる。
【0016】
図示したプロセッサ設計支援装置は、汎用的なコンピュータを使って構成されている。このコンピュータは、コンピュータを統括的に制御するプロセッサ102と、プロセッサ102に使用されるデータやプログラム等が記憶されていると共に、プロセッサ102による演算処理の結果が記憶される主記憶装置106と、コンピュータにプログラム等のデータを読み込ませる、あるいはコンピュータからデータを抽出する補助記録装置104とからなる本体103を有する。
【0017】
さらに、コンピュータは、本体103をオペレータが操作するための入力装置105と、入力の結果等を表示させるためのモニタ101とを備えている。入力装置105としては、モニタ上をタッチして指示を入力するためのタッチペン、あるいはキーボード等が用いられる。また、モニタ101には、液晶等を用いたディスプレイ画面が用いられる。
このようなコンピュータは、コンピュータのOS上のアプリケーションとしてプロセッサ設計支援プログラムを動作させ、設計支援装置として動作する。
【0018】
また、本実施形態の設計支援装置は、設計対象のパイプラインプロセッサにおいて実行される命令の各ステージにおける動作の定義(マイクロ動作記述)を支援することによってパイプラインプロセッサの設計を支援する設計支援装置である。
すなわち、パイプラインプロセッサにおいて実行される命令は、複数の動作要素を含む。本実施形態では、動作要素とは、例えば、命令をGPR(General Purpose Register)からデータを読み込むReadGPR等の単位に分割した要素をいい、以降ファンクションとも記す。
【0019】
また、本実施形態の設計支援装置では、プロセッサ102及び主記憶装置106がポリシー管理手段として機能する。この構成においては、特にプロセッサ102が同一ステージにおいて同一のハードウェアリソースを占有するファンクション同士を対応付け、主記憶装置106がポリシーとして管理するものとする。
さらに、プロセッサ102及び主記憶装置106は、設計対象のプロセッサで実行される命令のいずれかにおけるファンクションを実行するステージが変更された場合、管理されているポリシーで対応付けられた他のファンクションを実行するステージを同様に変更するステージ変更手段としても機能する。
【0020】
ポリシーは、パイプラインプロセッサの命令フェッチ(IF)やデコード(ID)といったステージにおいて同一のハードウェアリソースを占有するファンクション同士の対応付けである。なお、ハードウェアリソースとしては、例えばレジスタが挙げられる。図2は、ポリシーの概念を示すための模式図である。本実施形態のポリシーは、各ステージと、ステージで使用されるハードウェアリソースと、このハードウェアリソースを占有するファンクションとを対応付けている。
【0021】
図3は、プロセッサを自動的に設計するための一連の処理(自動設計処理)について説明するための図である。図3によれば、プロセッサの自動設計処理は、基本仕様入力処理(S201)、リソース定義処理(S202)、命令セット定義処理(S203)、マイクロ動作記述処理(S204)、パラメータファイル生成処理(S205)、HDL・SystemC記述処理(S206)6つの処理に大別される。本実施形態の設計支援装置は、上記した処理のうちのマイクロ動作記述処理(S204)を行うことによって設計を支援するものである。
【0022】
すなわち、本実施形態の自動設計処理は、コンピュータシステムを使ったオペレータの操作による一連の処理として行われる。この一連の処理では、先ず、プロセッサのパイプライン段数、命令ビット長、データビット長などが入力される(基本仕様入力処理:S201)。次に、プロセッサに使用されるレジスタのビット数、レジスタファイルの個数や各々のビット数やポート数が定義される(リソース定義処理:S202)。
【0023】
さらに、命令セットとして、命令の名称やビットアサイン、命令に含まれるオペランドの個数、種類、アドレッシングモードを定義する(命令セット定義処理:S203)。本実施形態の設計支援装置及び設計支援プログラムは、命令セットの定義後、命令セット定義でされた命令が各ステージで行う動作を記述する(マイクロ動作記述処理:S204)。記述に使用される言語については特に定めるものではないが、ハードウェア記述言語(HDL:Hardware Description Language)に近い言語が望ましい。本実施形態にかかる動作の定義は、マイクロ動作記述処理において実行されるものである。
【0024】
以上の処理によってプロセッサの処理の仕様が決定する。自動設計処理では、次に、決定した仕様からパラメータをまとめてファイル化することによってパラメータファイルを作成する(パラメータ作成処理:S205)。そして、このパラメータファイルから決定したプロセッサ全体の回路をHDLやSystemCによって記述したデータを生成する(HDL・SystemC記述処理:S206)。尚、パラメータ作成処理(S205)から直接HDL・SystemC記述処理(S206)を行なっても良い。
【0025】
図4は、マイクロ動作記述のために表示される画面(マイクロ動作記述画面)を示した図である。図示したマイクロ動作記述画面は、テキストボックス303と、テキストボックス303に対応するビュー305を有している。また、グローバル変数を記述するテキストボックス309及びテキストボックス309に対応するビュー311、テキストボックス302aないし302eと、テキストボックス302aないし302eの各々に対応するビュー304aないし304eとを有している。
【0026】
テキストボックス303は、命令セット定義処理203においてユーザが定義した命令の名称(Ld:LoaD命令、St:STore命令等)が表示されている。図示した例では、add命令が選択されていて、このマイクロ動作記述画面がadd命令のものであることを示している。ビュー305には、テキストボックス303で選択された命令のビットフィールドやオペレータによって記述されたコメントが表示される。
【0027】
図示した例では、add命令の構造が示されていて、add命令の先頭には命令体系(class)を示すデータがあり、続いてオペランドが示されている。本実施形態のadd命令は、2オペランド方式であって、op1とop2とがある。さらに、add命令は、加算される値がGPRから読み出される範囲rd、rsを特定するデータを含み、rdから読み出された値とrsから読み出された値とを加算してrdに書き戻すものであることが分かる。
【0028】
また、テキストボックス302a〜302e及びビュー304a〜304eは、各々が特定のステージに対応している。すなわち、テキストボックス302a及びビュー304aは命令フェッチ(IF)のステージに対応し、テキストボックス302b及びビュー304bは命令デコード(ID)のステージに対応する。また、テキストボックス302c及びビュー304cは命令実行(EXE)のステージに、テキストボックス302d及びビュー304dはオペランドフェッチ(MEM)のステージに、テキストボックス302e及びビュー304eはライトバック(WB)のステージにそれぞれ対応している。
【0029】
ビュー304a〜304eには、対応するテキストボックス302a〜302eにおいて行われる動作が表示される。図示した例では、add命令において、IDステージでGPRの読み込みを行い、EXEステージでPSR(Processor Status Register)へ書き込む動作を記述している。
さらに、テキストボックス301及びビュー307は、このような各ステージで行われる命令を調整するためのポリシーを設定するものである。ビュー307には、GPRからの読み出し(ReadGPR;)やPSRへの書き込み(WritePSR;)といった動作を設定するファンクションが表示されている。
本実施形態の設計支援装置は、テキストボックス301及びビュー307を使って特定の動作にポリシーを付し、ポリシーが付された動作をオペレータが選択した任意のステージで行われるよう一括して設定するものである。
【0030】
次に、以上述べた構成におけるポリシー付けの操作を説明する。オペレータは、例えばファンクションのうち「ReadGPR;」の文字上でクリックすることによって図5に示すGPRの読み込みのファンクションにポリシー付けをするポリシー記述画面を開くことができる。図5の画面において、オペレータは、Stageの欄でReadGPRのファンクションを実行させたいステージを選択する。
【0031】
図5に示した例では、IDステージが選択されており、IDステージの選択によって図3に示したビュー304bにReadGPRのファンクションが自動的に表示される。この表示は、例えば赤によってなされ、このファンクションがポリシーを使って設定されたものであることを示す。ポリシーを使って設定されたファンクションは、基本的に以降の書き換えが禁止される。
【0032】
また、図4に示したビュー307の「WritePSR;」上でオペレータがクリックすることにより、図6に示した画面を開くことができる。図6に示した画面は、プロセッサステータスレジスタの書き込みのファンクションにポリシー付けをするポリシー記述画面である。図6の画面において、オペレータは、Stageの欄でWritePSRのファンクションを実行させたいステージを選択する。
【0033】
図6に示した例では、EXEステージが選択されており、IDステージの選択によって図4に示したビュー304cにWritePSRのファンクションが自動的に表示される。
ところで、パイプラインプロセッサは、IF、ID等のステージを同じタイミングで繰り返す命令を並列に実行すると共に、各命令の開始タイミングをずらすことによって各ステージで使用されるハードウェアリソースが競合することを防いでいる。
【0034】
このため、各命令で実行されるファンクションのうち命令に共通のファンクションであって、かつ同一のハードウェアリソースを使用するものは、基本的に同じステージで実行されなければハザードを起こすことになる。このため、1つの命令でファンクションのステージを移動した場合、他の命令についてもポリシーによって対応付けられるファンクションを移動されたファンクションと同じステージに移動させることが必要になる。
【0035】
本実施形態によれば、ステージとハードウェアリソースとファンクションとをポリシーで対応付けているため、同様のポリシーが付されたファンクションを一括して移動されたファクションの移動先にあたるステージに移動させることができる。このため、他の命令についてもファンクションのステージを移動させる作業をなくし、オペレータにかかる設計支援の負荷を軽減することができる。
【0036】
また、本実施形態は、自動的にファンクションのステージを移動させることによって移動にかかる時間を短縮することができる。さらに、ファンクションをより正確に移動させることができる。
したがって、以上述べた本実施形態の設計支援システムは、任意のファンクションを所望のステージに移動させて設計対象のプロセッサで起こるハザードを防ぐと共に、ステージ移動に伴う操作を簡易かつ効率的に行うことができる。
【0037】
次に、図7ないし図9を用い、以上述べたポリシー付けの効果について説明する。なお、ハザードの原因はハードウェアリソースの競合ばかりではない。しかし、以下の説明では、説明の簡単のため、同一ステージにおけるハードウェアリソースとファンクションとの関係についてのみ述べるものとする。
図7は、命令に共通な動作記述と例外的な動作記述について説明するための図である。図示した例では、命令Aから命令Dの4つの命令が3つの動作ステージ(STAGE1、STAGE2、STAGE3)によって行われているものとする。また、各命令は、例えば「add%r0,%r1」のように2オペランド方式であって、あるレジスタで%r0のレジスタ及び%r1のレジスタの内容をリードすることが必要である。
【0038】
図7では、上記した動作を実行するステージと、このステージで動作に使用されるハードウェアリソースのファンクション(リソースファンクションと記す)とを対応付けて示している。図中に記したリソースファンクションのうち、リソースファンクション1、リソースファンクション2は、命令Aから命令Dのいずれにおいてもステージ1で実行される。このように全ての命令で同じステージで行われる動作を共通な動作という。
【0039】
一方、リソースファンクション3は、命令Aにおいてのみステージ3で実行される。また、リソースファンクション4は、命令Dにおいてのみステージ2で実行される。このように命令に共通でないリソースファンクションを例外的な動作と本実施形態ではいう。また、この説明において、すべてのリソースファンクションは、同一のハードウェアリソースを使って実行されるものとする(例えばGPRからの読み出し動作等)。なお、本実施形態のリソースファンクション1とリソースファンクション2とは、同じハードウェアリソースを占有するものの、読み出すポートの違い等によって同じステージで実行されてもハザードを起こさないものとする。
【0040】
このような状態において、ハードウェアリソースのハザードを避ける等のため、すべての命令でリソースファンクション1及びリソースファンクション2をステージ2に移動させる必要が生じた場合、本実施形態の設計支援装置は、マイクロ動作記述画面上で前記した操作をすることによってリソースファンクション1、リソースファンクション2のみをステージ2に移動させることができる。
【0041】
図8(a)、(b)、(c)は、図7においてリソースファンクション1、リソースファンクション2のみをステージ2に移動させる操作を説明するための図である。(a)は、マイクロ動作記述画面のポリシーのテキストボックス及びビューを示している。また、(b)、(c)は、いずれもリソースファンクション1及びリソースファンクション2をクリックして開かれるポリシー記述画面を示している。
【0042】
リソースファンクション1、リソースファンクション2を移動させる操作は、図8(a)に示した命令Aにおいて、マイクロ動作記述画面のポリシーの欄でリソースファンクション1をクリックする。この操作により、(b)に示す画面を開き、Stageの欄においてステージ2を選択する。また、オペレータは、マイクロ動作記述画面に戻り、ポリシーの欄でリソースファンクション2をクリックする。この操作により、(c)に示す画面を開き、Stageの欄においてステージ2を選択する。
【0043】
このような操作により、全ての命令でリソースファンクション1及びリソースファンクション2がステージ2に移動する。この状態を図9に示す。
図10は、図9に示した本実施形態の効果と比較するために示した図であって、従来の設計支援装置の動作を示した図である。従来の設計支援装置では、各命令で一括してリソースファンクションを他のステージに移動させる場合、ステージ1の記述を変更し、ステージ2にテキスト置換する、あるいは一括移動コマンドを用いる。
【0044】
このようにした場合、リソースファンクション1、リソースファンクション2と共に、同一のリソースを扱うものの他のステージにあって競合しないリソースファンクション3、リソースファンクション4までもステージ2に移動するという不具合が生じる。
したがって、以上述べた本実施形態は、ハザードの発生を充分防ぐことが可能なプロセッサを設計でき、しかもリソースファンクションのステージの変更処理を簡易、かつ確実に行うことができる。さらに、本実施形態は、所望のリソースファンクションのみを選択的にステージ移動させることができる点で従来よりも優れた効果を得ることができる。
【図面の簡単な説明】
【0045】
【図1】本発明の一実施形態の設計支援装置のブロック図である。
【図2】本発明の一実施形態のポリシーの概念を示すための模式図である。
【図3】本発明の一実施形態のプロセッサを自動的に設計するための自動設計処理について説明するための図である。
【図4】本発明の一実施形態のマイクロ動作記述画面を示した図である。
【図5】図4に示したマイクロ動作記述画面から開かれるポリシー記述画面を示す図である。
【図6】図4に示したマイクロ動作記述画面から開かれる他のポリシー記述画面を示す図である。
【図7】本発明の一実施形態の命令に共通な動作記述と例外的な動作記述について説明するための図である。
【図8】図7に示したリソースファンクションのステージを移動させるための操作を説明するための図である。
【図9】図8に示した操作によって得られる結果を示した図である。
【図10】図9に示した結果と比較される従来例を示した図である。
【符号の説明】
【0046】
101 モニタ、102 プロセッサ、103 本体
104 補助記録装置、105 入力装置、106 主記憶装置
203 命令セット定義処理、301
301,302a〜302e,303,309 テキストボックス
304a〜304e,305,307,311 ビュー

【特許請求の範囲】
【請求項1】
設計対象のパイプラインプロセッサにおいて実行される命令の各ステージにおける動作の定義を支援する設計支援装置であって、
前記命令が複数の動作要素を含み、同一ステージにおいて同一のハードウェアリソースを占有する動作要素同士の対応付けをポリシーとして管理するポリシー管理手段を備えることを特徴とするプロセッサ設計支援装置。
【請求項2】
前記命令のいずれかにおける動作要素を実行するステージが変更された場合、前記ポリシー管理手段によって管理されているポリシーで対応付けられた他の動作要素を実行するステージを同様に変更するステージ変更手段をさらに備えることを特徴とする請求項1に記載のプロセッサ設計支援装置。
【請求項3】
パイプラインプロセッサにおいて実行される命令の各ステージにおける動作の定義を支援する設計支援プログラムであって、
前記命令が複数の動作要素を含み、同一ステージにおいて同一のハードウェアリソースを占有する動作要素同士の対応付けをポリシーとして管理するポリシー管理機能と、
をコンピュータに実行させることを特徴とするプロセッサ設計支援プログラム。
【請求項4】
前記命令のいずれかにおける動作要素を実行するステージが変更された場合、前記ポリシー管理手段によって管理されているポリシーで対応付けられた他の動作要素を実行するステージを同様に変更するステージ変更機能をさらに含むことを特徴とする請求項3に記載のプロセッサ設計支援プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2006−119694(P2006−119694A)
【公開日】平成18年5月11日(2006.5.11)
【国際特許分類】
【出願番号】特願2004−303808(P2004−303808)
【出願日】平成16年10月19日(2004.10.19)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】