(57)【要約】【課題】  ホスト機器と転送速度の異なる複数の転送モードを有するインタフェースを介して接続される装置において、アイドル時の消費電力を低減する。【解決手段】  転送速度の異なる複数の転送モードを有するインタフェース１０３を介して接続されているホスト１０１とプリンタ１０２とからなる記録システムにおいて、ホストとプリンタとの間の接続が確立されたときには、転送モードを転送速度が低い転送モードに設定し、ホストは、記録データの転送を開始する前に、転送速度が高い転送モードへの切り替えを要求し、記録データの転送が終了した後に、転送速度の低い転送モードへの切り替えを要求し、プリンタから転送モードの切り替えの要求に対する応答を受信した後に、インタフェースを初期化し、初期化の後に、互いに所定のネゴシエーションを行って転送モードを切り替える。【選択図】  図１
2005208811.tif 000002
【特許請求の範囲】
【請求項１】
転送速度の異なる複数の転送モードを有するインタフェースを介して接続されているデバイスにデータを転送するデータ転送装置であって、
前記転送モードを切り替える切り替え手段と、
前記デバイスに所定量以上のデータの転送を開始する前に、転送速度が高い転送モードに切り替え、前記所定量以上のデータの転送が終了した後に、転送速度の低い転送モードに切り替えるように前記切り替え手段を制御する転送速度制御手段と、を備えることを特徴とするデータ転送装置。
【請求項２】
前記切り替え手段は、前記デバイスに転送モードの切り替え要求を送信し、該切り替え要求に対する前記デバイスからの応答を受信した後に、前記転送モードの切り替えを実行することを特徴とする請求項１に記載のデータ転送装置。
【請求項３】
前記インタフェースがＵＳＢであり、前記転送速度が高い転送モードがハイスピードモード、前記転送速度の低い転送モードがフルスピードモードであることを特徴とする請求項１又は２に記載のデータ転送装置。
【請求項４】
前記切り替え手段は、ＵＳＢのバスリセットを行った後に、前記デバイスと所定のネゴシエーションを行って前記転送モードの切り替えを実行することを特徴とする請求項３に記載のデータ転送装置。
【請求項５】
前記デバイスはプリンタであり、前記所定量以上のデータは記録データであることを特徴とする請求項１から４のいずれか１項に記載のデータ転送装置。
【請求項６】
転送速度の異なる複数の転送モードを有するインタフェースを介して接続されているホスト機器とプリンタとからなる記録システムであって、
前記ホスト機器は、記録データの転送を開始する前に、転送速度が高い転送モードへの切り替えを要求し、前記記録データの転送が終了した後に、転送速度の低い転送モードへの切り替えを要求する切り替え要求手段と、
前記プリンタから前記転送モードの切り替えの要求に対する応答を受信した後に、前記インタフェースを初期化するリセット手段とを有し、
前記ホスト機器と前記プリンタとは、前記接続が確立されたときには、前記転送モードを転送速度が低い転送モードに設定し、前記初期化の後には、所定のネゴシエーションを行って前記転送モードを切り替えるように構成されていることを特徴とする記録システム。
【請求項７】
転送速度の異なる複数の転送モードを有するインタフェースを介して接続されているホスト機器からデバイスにデータを転送するデータ転送方法であって、
前記ホスト機器と前記周辺機器との間で前記接続が確立されたときに、前記転送モードを転送速度が低い転送モードに設定する接続確立工程と、
前記ホスト機器から前記デバイスに対して、転送速度が高い転送モードへの切り替えを要求する第１の切り替え要求工程と、
前記デバイスから前記ホスト機器に、前記切り替え要求への応答を送信する第１の応答工程と、
前記ホスト機器と前記デバイスとの間で所定のネゴシエーションを行って、前記転送速度が高い転送モードに前記転送モードを切り替える第１の切り替え工程と、
前記ホスト機器から前記デバイスにデータを転送する転送工程と、
前記ホスト機器から前記デバイスに対して、転送速度が低い転送モードへの切り替えを要求する第２の切り替え要求工程と、
前記デバイスから前記ホスト機器に、前記切り替え要求への応答を送信する第２の応答工程と、
前記ホスト機器と前記デバイスとの間で所定のネゴシエーションを行って、前記転送速度が低い転送モードに前記転送モードを切り替える第２の切り替え工程と、を備えることを特徴とするデータ転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ転送装置、データ転送方法、及び記録システムに関し、より詳細には、転送速度の異なる複数の転送モードを有するインタフェースを介して接続されているホスト機器からデバイスへのデータ転送の際の制御に関するものである。
【背景技術】
【０００２】
近年、オフィスや家庭あるいは移動中にパーソナルコンピュータ（以下、ＰＣと称する）などのコンピュータ機器が使用される機会が増え、ＰＣに接続する周辺機器も多様化している。
【０００３】
ＰＣに周辺装置を接続するインタフェースとして様々な規格が知られているが、近年ではＵＳＢ（Universal Serial Bus）によって接続する周辺機器が増えている。ＵＳＢは既存のレガシーインターフェイスを統合していくことを目的に開発され、プラグアンドプレイやホットプラグ（活線挿抜）による使い勝手のよさ、及びポートの拡張性の高さから普及が進んでいる。
【０００４】
加えて、２０００年４月に正式な仕様が公開されたＵＳＢ  Ｒｅｖ２．０（以下、ＵＳＢ２．０と称する）仕様では、転送速度が４８０Ｍｂｐｓにまで引き上げられ、より一層普及が進むと考えられる。
【０００５】
ＵＳＢ２．０規格で新しく策定されたハイスピードモードは、フルスピードモードよりも４０倍高速であるが、下位互換性を保つため、フルスピードモードもサポートする必要がある。
【０００６】
具体的には、デバイスの上位側に接続されるホスト機器がハイスピード対応であればハイスピードで、ホスト機器がフルスピード対応であればフルスピードでの動作が要求される。ホスト機器がハイスピード対応であるか、フルスピード対応であるかは、デバイスとホスト間のChirpと呼ばれるネゴシエーションにより検出される。
【０００７】
また、ＵＳＢのコントローラの低消費電力化については、システムの電源オン時の制御（特許文献１）、シリアルバス（Ｄ＋，Ｄ−）のノイズによる差動入力バッファの動作に起因する無駄な電力の低減（特許文献２）、ＵＳＢデバイスの未接続時の消費電力の低減（特許文献３）等が挙げられる。
【特許文献１】特開平１１−１９４８４７号公報
【特許文献２】特開平１１−２０５４１２号公報
【特許文献３】特開２０００−１０９０７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
ＵＳＢのハイスピード転送に対応した装置では、ＰＣなどのホスト機器との接続時にホスト機器がハイスピード対応であるか、フルスピード対応であるかを検出し、その動作速度を決定する。接続時に転送速度が決定された後は、装置の動作内容により転送速度を変更するということは行わず、つねに接続時に決定された動作速度が維持される。つまり、ホスト機器がハイスピードに対応していた場合、装置側はその動作内容によらず、常にハイスピードで動作を行う。
【０００９】
しかしながら、一般的に、高速なデータ転送（４８０Ｍｂｐｓ）を行うハイスピードモードは、転送速度がより低い（１２Ｍｂｐｓ）フルスピードモードよりも消費電力が大きい。このため、アイドル時にはデータ転送を行わず、動作時にのみデータ転送を行うように構成されている装置の場合、アイドル時でもハイスピードモードで動作することとなり、無駄な電力が消費されることになる。
【００１０】
例えば、プリンタの場合、記録動作を行っていないアイドル時には、ステータス情報取得のためのデータ転送が行われるが、このステータス情報取得のデータ転送では転送されるデータ量が少なく、高速でデータ転送を行う必要はない。一方で、記録動作時には高速なデータ転送が要求される。
【００１１】
以上の理由から、特にプリンタのようにユーザの指示に応じて動作する装置においては、動作を行っていないアイドル時に行われるデータ量の少ないデータ転送でも高速で消費電力の大きなハイスピードモードでデータ転送を行うため、アイドル時の消費電力が大きくなってしまう。
【００１２】
本発明は以上のような状況に鑑みてなされたものであり、ホスト機器と転送速度の異なる複数の転送モードを有するインタフェースを介して接続される装置において、アイドル時の消費電力を低減することを目的とする。
【課題を解決するための手段】
【００１３】
上記目的を達成する本発明の一態様としてのデータ転送装置は、転送速度の異なる複数の転送モードを有するインタフェースを介して接続されているデバイスにデータを転送するデータ転送装置であって、
前記転送モードを切り替える切り替え手段と、
前記デバイスに所定量以上のデータの転送を開始する前に、転送速度が高い転送モードに切り替え、前記所定量以上のデータの転送が終了した後に、転送速度の低い転送モードに切り替えるように前記切り替え手段を制御する転送速度制御手段と、を備えている。
【００１４】
すなわち、本発明では、転送速度の異なる複数の転送モードを有するインタフェースを介して接続されているデバイスにデータを転送するデータ転送装置に、転送モードを切り替える切り替え手段を設け、デバイスに所定量以上のデータの転送を開始する前に、転送速度が高い転送モードに切り替え、所定量以上のデータの転送が終了した後に、転送速度の低い転送モードに切り替えるように切り替え手段を制御する。
【００１５】
このようにすると、実際に高速のデータ転送が必要となるときにだけ転送速度が高速の転送モードに切り替えられ、それ以外の場合には転送速度が低速の転送モードに設定される。
【００１６】
従って、デバイスがアイドル状態にあるときには、消費電力の少ない転送速度が低い転送モードに設定されるので、アイドル状態でのデバイスの消費電力を低減することができる。
【００１７】
なお、切り替え手段は、デバイスに転送モードの切り替え要求を送信し、該切り替え要求に対するデバイスからの応答を受信した後に、転送モードの切り替えを実行するのがよい。
【００１８】
インタフェースがＵＳＢであり、転送速度が高い転送モードがハイスピードモード、転送速度の低い転送モードがフルスピードモードであってもよい。
【００１９】
この場合、切り替え手段は、ＵＳＢのバスリセットを行った後に、デバイスと所定のネゴシエーションを行って転送モードの切り替えを実行するのがよい。
【００２０】
デバイスは、例えばプリンタであり、所定量以上のデータは記録データである。
【００２１】
本発明を転送速度の異なる複数の転送モードを有するインタフェースを介して接続されているホスト機器とプリンタとからなる記録システムに適用すると、
ホスト機器が、記録データの転送を開始する前に、転送速度が高い転送モードへの切り替えを要求し、記録データの転送が終了した後に、転送速度の低い転送モードへの切り替えを要求する切り替え要求手段と、プリンタから転送モードの切り替えの要求に対する応答を受信した後に、インタフェースを初期化するリセット手段とを有し、
ホスト機器とプリンタとが、接続が確立されたときには、転送モードを転送速度が低い転送モードに設定し、初期化の後には、所定のネゴシエーションを行って転送モードを切り替える。
【００２２】
上記目的を達成する本発明の別の態様としてのデータ転送方法は、転送速度の異なる複数の転送モードを有するインタフェースを介して接続されているホスト機器からデバイスにデータを転送するデータ転送方法であって、
前記ホスト機器と前記周辺機器との間で前記接続が確立されたときに、前記転送モードを転送速度が低い転送モードに設定する接続確立工程と、
前記ホスト機器から前記デバイスに対して、転送速度が高い転送モードへの切り替えを要求する第１の切り替え要求工程と、
前記デバイスから前記ホスト機器に、前記切り替え要求への応答を送信する第１の応答工程と、
前記ホスト機器と前記デバイスとの間で所定のネゴシエーションを行って、前記転送速度が高い転送モードに前記転送モードを切り替える第１の切り替え工程と、
前記ホスト機器から前記デバイスにデータを転送する転送工程と、
前記ホスト機器から前記デバイスに対して、転送速度が低い転送モードへの切り替えを要求する第２の切り替え要求工程と、
前記デバイスから前記ホスト機器に、前記切り替え要求への応答を送信する第２の応答工程と、
前記ホスト機器と前記デバイスとの間で所定のネゴシエーションを行って、前記転送速度が低い転送モードに前記転送モードを切り替える第２の切り替え工程と、を備えている。
【００２３】
また、上記の目的は、上記のデータ転送方法をコンピュータ装置で実現するコンピュータプログラム、該コンピュータプログラムを格納した記憶媒体によっても達成される。
【発明の効果】
【００２４】
本発明によれば、実際に高速のデータ転送が必要となるときにだけ転送速度が高速の転送モードに切り替えられ、それ以外の場合には転送速度が低速の転送モードに設定される。
【００２５】
従って、デバイスがアイドル状態にあるときには、消費電力の少ない転送速度が低い転送モードに設定されるので、アイドル状態でのデバイスの消費電力を低減することができる。
【発明を実施するための最良の形態】
【００２６】
以下に、添付図面を参照して、本発明の好適な実施の形態を例示的に詳しく説明する。ただし、以下の実施形態に記載されている構成要素はあくまで例示であり、本発明の範囲をそれらのみに限定する趣旨のものではない。
【００２７】
以下では、パーソナルコンピュータなどのホスト機器と、周辺機器としてのインクジェットプリンタとから構成される記録システムに本発明を適用した例を説明する。
【００２８】
＜システムの説明＞
図１は、本発明に係る実施形態としての記録システムの構成を示すブロック図である。図１に示した記録システムでは、パーソナルコンピュータ（ＰＣ）などのホスト機器１０１とインクジェットプリンタ１０２とが、外部バス１０３としてＵＳＢ２．０規格に従って接続されている。ホスト機器１０１にインストールされたプリンタドライバで生成された画像データは、ホスト機器内部の外部バス制御部１０６から外部バス１０３を経由してインクジェットプリンタ１０２の外部バス制御部１０７に転送され、記録出力が行われる。
【００２９】
プリンタ１０２の構成を大別すると、制御部であるプリンタコントローラ１０４と、記録部であるプリンタエンジン１０５に分けられる。プリンタコントローラ１０４では主に、
・ホスト機器との通信に用いられる外部バスのＩＦ制御、
・ホスト機器から転送されるプリンタ制御コマンド及び画像データの解釈、ビットマップデータの生成、
・ビットマップデータ生成時における各種画像処理、
・ユーザーによる操作を受け付け、プリンタエンジンへのコマンド送信、
の処理を行う。
【００３０】
一方、プリンタエンジン１０５ではプリンタコントローラで生成されたビットマップデータを受け取り、
・インクジェット記録ヘッドの吐出タイミングデータの生成、
・記録処理、
・インクジェット記録ヘッドへのインク供給、回復処理、
・記録媒体の搬送、記録ヘッド動作におけるモータ制御、
を主に行う。
【００３１】
＜プリンタコントローラ＞
図２は、プリンタコントローラ１０４の構成を詳細に示すブロック図である。この図を参照してコントローラの機能および概略動作について説明する。
【００３２】
ＣＰＵ２０１は、バスブリッジ２１１、内部バス及びＵＳＢインターフェース２０２を介してホストＰＣ１０１に接続されており、メモリコントローラ２１２を介して、制御プログラムを格納したＲＯＭ２０３、更新可能な制御プログラムや処理プログラムや各種定数データなどを格納したＥＥＰＲＯＭ２０４、及びホストＰＣ１０１から受信したコマンド信号や画像情報を格納するためのＲＡＭ２０５にアクセスし、これらのメモリに格納された情報に基づいて記録動作を制御する。
【００３３】
操作パネル２０６のキーから入力される指示情報は、操作パネルインタフェース２０７を介してＣＰＵ２０１に伝達され、またＣＰＵ２０１からの命令により同様に操作パネルインタフェース２０７を介して操作パネル２０６のＬＥＤの点灯やＬＣＤの表示が制御される。拡張インターフェース２０８は、ＬＡＮコントローラやＨＤＤなどの拡張カードを接続することにより機能拡張を行うためのインターフェースである。ＲＡＭ２０５に格納された画像情報は、画像データ処理ブロック２０９により各インクの吐出データに変換され、プリンタエンジン１０５へ出力される。またコントローラとエンジン１０５の間の各種コマンドやステータス情報の送受信は、同様に画像データ処理ブロック２０９を介して行われる。
【００３４】
＜プリンタ全体の説明＞
図５は、本実施形態のインクジェットプリンタ１０２の概要を示す外観斜視図である。
【００３５】
図５に示すように、インクジェットプリンタ１０２は、インクジェット方式に従ってインクを吐出して記録を行なう記録ヘッド３を搭載したキャリッジ２にキャリッジモータＭ１によって発生する駆動力を伝達機構４より伝え、キャリッジ２を矢印Ａ方向に往復移動させるとともに、例えば、記録紙などの記録媒体Ｐを給紙機構５を介して給紙し、記録位置まで搬送し、その記録位置において記録ヘッド３から記録媒体Ｐにインクを吐出することで記録を行なう。
【００３６】
また、記録ヘッド３の状態を良好に維持するためにキャリッジ２を回復装置１０の位置まで移動させ、間欠的に記録ヘッド３の吐出回復処理を行う。
【００３７】
プリンタのキャリッジ２には記録ヘッド３を搭載するのみならず、記録ヘッド３に供給するインクを貯留するインクカートリッジ６を装着する。インクカートリッジ６はキャリッジ２に対して着脱自在になっている。
【００３８】
図５に示したプリンタはカラー記録が可能であり、そのためにキャリッジ２にはマゼンタ（Ｍ）、シアン（Ｃ）、イエロ（Ｙ）、ブラック（Ｋ）のインクを夫々、収容した４つのインクカートリッジを搭載している。これら４つのインクカートリッジは夫々独立に着脱可能である。
【００３９】
さて、キャリッジ２と記録ヘッド３とは、両部材の接合面が適正に接触されて所要の電気的接続を達成維持できるようになっている。記録ヘッド３は、記録信号に応じてエネルギーを印加することにより、複数の吐出口からインクを選択的に吐出して記録する。特に、この実施形態の記録ヘッド３は、熱エネルギーを利用してインクを吐出するインクジェット方式を採用し、熱エネルギーを発生するために電気熱変換体を備え、その電気熱変換体に印加される電気エネルギーが熱エネルギーへと変換され、その熱エネルギーをインクに与えることにより生じる膜沸騰による気泡の成長、収縮によって生じる圧力変化を利用して、吐出口よりインクを吐出させる。この電気熱変換体は各吐出口のそれぞれに対応して設けられ、記録信号に応じて対応する電気熱変換体にパルス電圧を印加することによって対応する吐出口からインクを吐出する。
【００４０】
図５に示されているように、キャリッジ２はキャリッジモータＭ１の駆動力を伝達する伝達機構４の駆動ベルト７の一部に連結されており、ガイドシャフト１３に沿って矢印Ａ方向に摺動自在に案内支持されるようになっている。従って、キャリッジ２は、キャリッジモータＭ１の正転及び逆転によってガイドシャフト１３に沿って往復移動する。また、キャリッジ２の移動方向（矢印Ａ方向）に沿ってキャリッジ２の絶対位置を示すためのスケール８が備えられている。この実施形態では、スケール８は透明なＰＥＴフィルムに必要なピッチで黒色のバーを印刷したものを用いており、その一方はシャーシ９に固着され、他方は板バネ（不図示）で支持されている。
【００４１】
また、プリンタには、記録ヘッド３の吐出口（不図示）が形成された吐出口面に対向してプラテン（不図示）が設けられており、キャリッジモータＭ１の駆動力によって記録ヘッド３を搭載したキャリッジ２が往復移動されると同時に、記録ヘッド３に記録信号を与えてインクを吐出することによって、プラテン上に搬送された記録媒体Ｐの全幅にわたって記録が行われる。
【００４２】
さらに、図５において、１４は記録媒体Ｐを搬送するために搬送モータＭ２によって駆動される搬送ローラ、１５はバネ（不図示）により記録媒体Ｐを搬送ローラ１４に当接するピンチローラ、１６はピンチローラ１５を回転自在に支持するピンチローラホルダ、１７は搬送ローラ１４の一端に固着された搬送ローラギアである。そして、搬送ローラギア１７に中間ギア（不図示）を介して伝達された搬送モータＭ２の回転により、搬送ローラ１４が駆動される。
【００４３】
またさらに、２０は記録ヘッド３によって画像が形成された記録媒体Ｐをプリンタの外ヘ排出するための排出ローラであり、搬送モータＭ２の回転が伝達されることで駆動されるようになっている。なお、排出ローラ２０は記録媒体Ｐをバネ（不図示）により圧接する拍車ローラ（不図示）により当接する。２２は拍車ローラを回転自在に支持する拍車ホルダである。
【００４４】
またさらに、プリンタには、図５に示されているように、記録ヘッド３を搭載するキャリッジ２の記録動作のための往復運動の範囲外（記録領域外）の所望位置（例えば、ホームポジションに対応する位置）に、記録ヘッド３の吐出不良を回復するための回復装置１０が配設されている。
【００４５】
回復装置１０は、記録ヘッド３の吐出口面をキャッピングするキャッピング機構１１と記録ヘッド３の吐出口面をクリーニングするワイピング機構１２を備えており、キャッピング機構１１による吐出口面のキャッピングに連動して回復装置内の吸引手段（吸引ポンプ等）により吐出口からインクを強制的に排出させ、それによって、記録ヘッド３のインク流路内の粘度の増したインクや気泡等を除去するなどの吐出回復処理を行う。
【００４６】
また、非記録動作時等には、記録ヘッド３の吐出口面をキャッピング機構１１によるキャッピングすることによって、記録ヘッド３を保護するとともにインクの蒸発や乾燥を防止することができる。一方、ワイピング機構１２はキャッピング機構１１の近傍に配され、記録ヘッド３の吐出口面に付着したインク液滴を拭き取るようになっている。
【００４７】
これらキャッピング機構１１及びワイピング機構１２により、記録ヘッド３のインク吐出状態を正常に保つことが可能となっている。
【００４８】
＜ＵＳＢのデータ転送＞
ＵＳＢについて簡単に説明する。ＵＳＢでのデータ転送は、基本的に３つのパケット、すなわち、トークンパケット、データパケット、ハンドシェイクパケットで構成される。これら３つのパケットで構成される１回のデータ転送をトランザクションと呼ぶ。
【００４９】
トークンパケットには、トランザクションの種類を示すパケットＩＤ、データ転送のターゲットとなるデバイスのアドレス、エンドポイント番号が挿入されており、このトークンパケットの情報に適合したデバイスとホストとの間でデータ転送が可能になる。このトークンパケットはホストのみが生成することができる。これはホストのみでバスのアクセス権を管理していることを意味する。データパケットには転送データが格納されている。ハンドシェイクパケットにはデータ転送が正常に完了したか、または正常に完了できなかったかを示す情報が格納されている。
【００５０】
トランザクションにはイントランザクション、アウトトランザクション、セットアップトランザクションの３種類がある。イントランザクションでは周辺機器からホストへデータが転送される。アウトトランザクションではホストから周辺機器へデータが転送される。セットアップトランザクションではホストから周辺機器に対して規格で規定されたコマンドの転送に使用される。これら３つのトランザクションでバルク転送、コントロール転送、アイソクロナス転送、インタラプト転送と呼ばれるトランスファーが構成される。
【００５１】
バルク転送はイントランザクション又はアウトトランザクションの並びである。コントロール転送はセットアップトランザクションのみ、またはセットアップトランザクションに続くイントランザクションとアウトトランザクションの並びである。アイソクロナス転送はハンドシェークパケットの無いイントランザクションまたはアウトトランザクションの並びである。インタラプト転送はひとつのイントランザクションである。
【００５２】
これらのトランスファーはフレームと呼ばれる１ｍｓ単位の期間に並べられる。この制御はホスト機器の外部バス制御部で行われる。フレームの開始はＳＯＦ（Start of Frame）パケットと呼ばれる特殊なパケットで通知される。このうち、アイソクロナス転送とインタラプト転送はフレーム内にその帯域が確保されている。バルク転送は非同期のデータ転送であり、コントロール転送はバスに接続されている周辺機器の外部バス制御部の初期化に使用される。アイソクロナス転送は同期転送であり、単位時間当たりのデータ転送量が確保されている。ただし、他のトランスファーと異なり、アイソクロナス転送のみデータの保証はされていない。インタラプト転送は設定時間ごとに必ず転送されることが保証されているため、割り込み処理に使用される。ＵＳＢ２．０仕様ではμフレームが追加されている。ハイスピードモードにおけるデータ転送はμフレームによる同期が行われる。μフレームはフレームの１／８の長さの１２５μｓである。ＳＯＦはフレームと同じＳＯＦパケットが使用され、８回の同じフレーム番号を持つＳＯＦが連続して８回発行される。
【００５３】
以上のＵＳＢ通信はホストとエンドポイントの間で行われる。デバイスは複数のエンドポイントを持つことができ、複数のエンドポイントをグループ化することによりインターフェイスという単位とすることができる。デバイスはさらにインターフェイスを複数持つことができ、複数のインターフェイスをグループ化することによりデバイス構成とすることができる。これらのインターフェイス、デバイス構成を定義することにより複雑な機能を持ったデバイスへ柔軟に対応することができる。
【００５４】
次に、フルスピード、ハイスピードの転送モードの決定方法について説明する。転送モードの決定はＵＳＢ接続時のバスエニュミレーション時に行われる。
【００５５】
まず、プリンタの電源投入によりプリンタコントローラの初期化が行われる。この際にＵＳＢコントローラの初期化が行われる。
【００５６】
その後、プリンタにホストＰＣがＵＳＢにより接続されている場合は、ＵＳＢのバス・エニュミレーションが行われる。プリンタとホストＰＣが接続されていない場合は、接続が行われた時点でエニュミレーションが行われる。
【００５７】
＜デバイスの状態遷移＞
ＵＳＢデバイスは、図３で示されるデバイスステートを遷移していき、アイドル状態となることができる。具体的なエニュミレーション時の動作を以下に示す。
【００５８】
（１）ＵＳＢデバイスをハブ（不図示）に接続すると、ハブがステータスの変化をホストに通知する。このときＵＳＢデバイスはAttached（接続）ステート３０１となり、ＵＳＢデバイスが接続されたポートはディスエーブルとなる。
【００５９】
（２）ホストはハブになぜステータスが変化したかを問い合わせる。
【００６０】
（３）ホストは新しいデバイスが接続されたことを知り、またどのポートに接続されたことも知る。ホストは新しいデバイスが接続されたポートに対し、ポートイネーブル、リセットコマンドを発行する。Powered（電源投入）ステート３０２となる。
【００６１】
（４）ハブは新しいデバイスが接続されたポートへのリセット信号を１０ｍｓ保持する。リセット信号が解除されるとポートがイネーブルにされ、ハブは１００ｍＡのバス電流をＵＳＢデバイスに供給する。これでＵＳＢデバイスはDefault（デフォルト）ステート３０３となる。この状態でＵＳＢデバイスはデフォルトアドレスに応答できるようになる。
【００６２】
（５）ＵＳＢデバイスが一意なアドレスを受け取るまでは、デフォルトパイプにデフォルトアドレスを通じてアクセスできる。ホストはデバイスディスクリプタを読み取り、デフォルトパイプが使用できる最大データペイロードサイズを判断する。
【００６３】
（６）ホストはＵＳＢデバイスに一意のアドレスを割り当て、そのデバイスをAddress（アドレス割り当て）ステート３０４に移す。
【００６４】
（７）ホストはＵＳＢデバイスからの構成情報を読み取るためにそれぞれの構成０〜ｎを読み取る。このプロセスを完了するのにいくつかのフレームが必要になることがある。
【００６５】
（８）構成情報とＵＳＢデバイスの使用方法をもとにして、ホストはデバイスに構成値を割り当てる。これでデバイスはConfigured（構成）ステート３０５となり、この構成の中の全てのエンドポイントは、記述されている特性をとる。ＵＳＢデバイスは、その構成ディスクリプタの中で記述されている量のVbus電力を得ることができる。デバイスから見るとデバイスは使用可能な状態（アイドル）状態となっている。
【００６６】
ＵＳＢデバイスは、バスに接続してから使用可能になるまでに上記のようにステートを遷移する。ＵＳＢのフルスピードとハイスピードの調停も上記ステート遷移の中で行われる。具体的には（４）のリセット信号を１０ｍｓ保持しているときに行われる。
【００６７】
ハブがリセット信号を保持している際に、ハイスピード（ＨＳ）対応デバイスはリセット信号を検知した場合、フルスピード（ＦＳ）デバイスと同様に、まずＤ＋ラインをプルアップする。その後、ＨＳ対応デバイスはＤ＋、Ｄ−ラインをＫステートにドライブを行うことにより、ハブにＨＳ対応デバイスであることを通知する。この処理はデバイスChirpと呼ばれる。ハブはデバイスChirpを検知すると、Ｄ＋、Ｄ−ラインをＫステートとＪステートを交互にドライブすることにより、デバイスにＨＳ対応ハブであることを通知する。この処理はハブChirpと呼ばれる。以上のデバイスChirpとハブChirpにより、互いにＨＳ対応デバイスであることが確認できるとハイスピードモードとなる。
【００６８】
ハイスピード、フルスピードの調停方法は上記の手順によるため、デバイスがリセット時にデバイスChirp（バスステートをＫステートにドライブ）を行わなければ、ホストがハイスピード対応デバイスであっても、フルスピードモードでデータ転送を行うことができる。また、ハイスピードモードでデータ転送を行いたい場合は、デバイスChirpを行って、上述のネゴシエーションを完了させればよい。
【００６９】
＜記録処理＞
次に、本実施形態において、プリンタに記録動作を実行させる場合の処理について説明する。
【００７０】
図４は、本実施形態においてプリンタがホストＰＣとＵＳＢのフルスピードモードで接続されている状態で、ユーザがホスト機器にインストールされたアプリケーションの動作中に記録を指示してから、所望の記録画像がプリンタから出力されるまでの処理を、各処理が実行される部分と共に示すフローチャートである。
【００７１】
ユーザがアプリケーションから記録を指示すると、記録開始命令がプリンタドライバに通知される（ステップＳ４０１）。プリンタドライバは用紙サイズ、記録品位などのプリンタ設定情報などをホストのオペレーションシステムに通知する（ステップＳ４０２）。
【００７２】
プリンタドライバはさらに、ホストの外部バス制御部へ記録開始を通知する（ステップＳ４２１）。記録開始の通知を受けたホストの外部バス制御部は、周辺機器の外部バス制御部へ転送モードの切り替えを通知する（ステップＳ４２２）。周辺機器の外部バス制御部への転送モードの切替通知には、例えば、ＵＳＢに用意されているベンダー固有の命令を定義できるコントロール転送を用いればよい。転送モード切り替え通知をプリンタの外部バス制御部が受信したら（ステップＳ４２３）、ホストの外部バス制御部はＵＳＢのバスリセットを行う（ステップＳ４２４）。ここで、バスリセット発生後、ＵＳＢの仕様に従ってChirpによるネゴシエーションが行われ、ＵＳＢの転送モードがフルスピードからハイスピードに切り替わる（ステップＳ４２５Ａ、ステップＳ４２５Ｂ）。
【００７３】
ステップＳ４０２でプリンタ設定情報を通知されたオペレーションシステムは、アプリケーションに記録用のデータを要求し（ステップＳ４０３）、アプリケーションは記録が指示された画像データを、オペレーションシステムが要求する所定のフォーマットのデータに変換して、オペレーションシステムに転送する（ステップＳ４０４）。
【００７４】
オペレーションシステムは、転送されたデータを蓄積部（メモリ）に格納し（ステップＳ４０５）、アプリケーションに終了許可を通知する（ステップＳ４０６）。アプリケーションはこの終了許可を受け取ると記録動作を終了し、次の操作を受け付ける状態に移行する（ステップＳ４０７）。
【００７５】
オペレーションシステムは、アプリケーションに終了許可を通知した後、格納した記録データをプリンタドライバで処理可能な所定サイズのデータ量（バンド領域毎）に分割して、プリンタドライバにデータを転送する（ステップＳ４０８）。
【００７６】
プリンタドライバは、受け取ったデータから接続されたプリンタに最適な画像データを生成するための画像処理を行う（ステップＳ４０９）。ここで行われる画像処理は、例えば、色空間変換、カラーマッチング、ラスタサイズ、エッジ強調、ソフトネスなどである。これらの処理は、テキスト領域、イメージ領域に応じて最適な組み合わせが選択される。
【００７７】
以上のようにして生成された画像データは、プリンタ制御コマンドに変換され（ステップＳ４１０）、プリンタへの送信要求とともにオペレーションシステムに渡される（ステップＳ４１１）。
【００７８】
オペレーションシステムは、受け取ったプリンタ制御コマンドをホストの外部バス制御部に転送する（ステップＳ４１２）。ホストの外部バス制御部は、オペレーションシステムからプリンタ制御コマンドを受け取ると、周辺機器の外部バス制御部へＵＳＢを介してプリンタ制御コマンドを転送する（ステップＳ４１３）。
【００７９】
周辺機器の外部バス制御部は、ホストの外部バス制御部からデータを受信し（ステップＳ４１４）、正しく受信できたことを示す信号をホストの外部バス制御部に送信すると共に、プリンタコントローラへデータを送信する。
【００８０】
ホストの外部バス制御部は、データの転送が終了した後に、周辺機器の外部バス制御部から正しく受信できたことを示す信号を受信すると、オペレーションシステムにデータ転送の終了を通知する（ステップＳ４１５）。
【００８１】
プリンタコントローラは、周辺機器の外部バス制御部から受信したデータを、プリンタの記録ヘッドの構成に合わせて変換し（ステップＳ４１６）、さらにプリント出力のための画像処理（誤差拡散処理など）を行う（ステップＳ４１７）。そして、このような画像処理が行われた記録データをプリンタエンジンに送信する。
【００８２】
プリンタエンジンは、受信した記録データに基づき、記録ヘッドや各種モータなどを制御して記録動作を実行する（ステップＳ４１８）。
【００８３】
オペレーションシステムは、ステップＳ４１５でホストの外部バス制御部からデータ転送の終了が通知されると、記録するページのデータ転送が終了したか否かを判定し（ステップＳ４１９）、１ページのデータ転送が終了していないと判定された場合、ステップＳ４０８以降の処理を繰り返す。１ページのデータ転送が終了したと判定された場合には、要求されている全てのページのデータ転送が終了したか否かを判定し（ステップＳ４２０）、転送していないページがあれば、そのページに対してステップＳ４０８以降の処理を繰り返す。
【００８４】
ステップＳ４２０で、オペレーションシステムが記録が要求された全てのページのデータ転送が終了したと判定した場合、それを受けてプリンタドライバは、ホストの外部バス制御部へ記録終了を通知する（ステップＳ４２６）。記録終了通知を受信したホストの外部バス制御部は、周辺機器の外部バス制御部へ転送モードの切り替えを通知する（ステップＳ４２７）。転送モードの切り替え通知を周辺機器外部バス制御部が受信したら（ステップＳ４２８）、ホストの外部バス制御部は、ＵＳＢのバスリセットを行う（ステップＳ４２９）。ここで、バスリセット発生後、ＵＳＢの仕様に従ったChirpによるネゴシエーションが行われ、ＵＳＢの転送モードがハイスピードからフルスピードに切り替わる（ステップＳ４３０Ａ、ステップＳ４３０Ｂ）。
【００８５】
以上の手順で、ホスト機器から記録データをプリンタへ送信し、プリンタでの記録処理が実現される。
【００８６】
以上説明したように本実施形態によれば、ホスト機器でプリンタに記録データを送信する前後にバスリセット信号を発生し、プリンタはアイドル状態ではフルスピードモードで動作して、ＵＳＢ２．０による高速転送が可能なプリンタにおいて、アイドル状態での消費電力が低減される。
【００８７】
（他の実施形態）
上記実施形態では、パーソナルコンピュータなどのホスト機器と、周辺機器としてのインクジェットプリンタとから構成される記録システムに本発明を適用した例を説明したが、本発明は上記実施形態に限定されるものではなく種々の応用が可能である。
【００８８】
例えば、周辺機器としては上記実施形態のインクジェットプリンタ以外のプリンタ、例えば、レーザービームプリンタ（ＬＢＰ）であってもよいし、ストレージ機器等のプリンタ以外の周辺機器に対するデータ転送にＵＳＢ２．０を使用した場合にも本発明を適用できる。
【００８９】
更に、データの転送速度が異なる複数の転送モードが規定されたインタフェース規格であれば、上記実施形態のＵＳＢ２．０に限らず、あらゆるインタフェース規格に本発明を適用することができる。
【００９０】
本発明は、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【００９１】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（本実施形態では図４に示すフローチャートに対応したプログラム）を、システム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。その場合、プログラムの機能を有していれば、形態は、プログラムである必要はない。
【００９２】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明のクレームでは、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【００９３】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【００９４】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などがある。
【００９５】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明の範囲に含まれるものである。
【００９６】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【００９７】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【００９８】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【００９９】
【図１】本発明の実施形態の記録システムの構成を示すブロック図である。
【図２】図１のプリンタコントローラの詳細な構成を示すブロック図である
【図３】ＵＳＢデバイスの遷移状態を示す図である。
【図４】ホスト機器で記録が指示されてからプリント出力までの処理を示すフローチャートである。
【図５】図１のプリンタの外観斜視図である。
【符号の説明】
【０１００】
１０１  ホスト
１０２  プリンタ
１０３  外部バス
１０４  プリンタコントローラ
１０５  プリンタエンジン
１０６  ホスト外部バス制御部
１０７  周辺機器外部バス制御部
【図１】
2005208811.tif 000003
【図２】
2005208811.tif 000004
【図３】
2005208811.tif 000005
【図４】
2005208811.tif 000006
【図５】
2005208811.tif 000007