【手続補正書】
【提出日】平成18年1月17日(2006.1.17)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】発明の名称
【補正方法】変更
【補正の内容】
【発明の名称】通信制御方法、機器、ホスト装置、周辺装置及び制御方法
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】  イニシエータからターゲットに対して命令を発行することで、前記イニシエータの有する記憶領域に対してデータの書き込みあるいは読み出しを前記ターゲットに行わせてデータを交換する通信制御方法であって、
前記イニシエータが、前記記憶領域に対するデータの読み出し命令または前記記憶領域に対するデータの書き込み命令を、ターゲットが保持できる命令の総和を超えないようにターゲットに送信するステップと、
前記ターゲットが、前記イニシエータから受信した読み出し命令または書き込み命令を保持するステップと、
前記ターゲットが、前記イニシエータから受信した読み出し命令または書き込み命令への参照を複数のキューのうちの１つにより保持するステップと、
前記ターゲットが、前記イニシエータから受信した読み出し命令または書き込み命令を処理するステップとを有することを特徴とする通信制御方法。
【請求項２】  前記イニシエータから前記ターゲットに対する命令の送信は、前記イニシエータの有する記憶領域に命令を置き、前記イニシエータの指示によって前記ターゲットが前記イニシエータの記憶領域から読み出すことにより行われることを特徴とする請求項１に記載の通信制御方法。
【請求項３】  前記キュー数の増加に応じて、前記ターゲットが保持できる命令の総和を増加させる、または前記イニシエータの命令パラメータに従って前記ターゲットが保持できる命令の総和を増加させる、または前記キュー数の減少に応じて、前記ターゲットが保持できる命令の総和を減少させる、または前記イニシエータの命令パラメータに従って前記ターゲットが保持できる命令の総和を減少させることを特徴とする請求項１或いは２に記載の通信制御方法。
【請求項４】  前記キューの増加数以上の個数分、前記ターゲットが保持できる命令の総和を増加させることを特徴とする請求項１或いは２に記載の通信制御方法。
【請求項５】  前記キューの数の増加時に伴って増加した前記ターゲットが保持できる命令の総和数の増加分だけ、当該キューの数の減少時に前記ターゲットが保持できる命令の総和数を減少させることを特徴とする請求項１或いは２に記載の通信制御方法。
【請求項６】  前記イニシエータは、前記書き込み命令または前記読み出し命令にキューを識別するキュー識別子を付与し、前記ターゲットは、キュー識別子毎にキュー識別子に対応する命令を独立して処理することを特徴とする請求項１乃至５に記載の通信制御方法。
【請求項７】  前記イニシエータは、前記複数のキューのそれぞれに対して少なくとも１つの命令を前記ターゲットが保持できるように、前記複数のキューのそれぞれに対して命令数の割り当てを行うことを特徴とする請求項１乃至６に記載の通信制御方法。
【請求項８】  前記イニシエータは、キューの増加時または減少時に、複数のキューのそれぞれに対して命令数の割り当てを行うことを特徴とする請求項７に記載の通信制御方法。
【請求項９】  前記複数のキューのそれぞれに対して割り当てられた命令数の総和は、前記ターゲットが保持できる命令の総和より小さく、
前記ターゲットが保持できる命令の総和と前記複数のキューのそれぞれに対して割り当てられた命令数の総和との差分が、前記複数のキューのそれぞれにおいて割り当てられた命令数を超えて前記ターゲットが保持している命令の数の総和より大きい場合には、前記イニシエータは、前記複数のキューのうちの１つにおいて割り当てられた命令数を超えて、当該１つのキューに対して命令を送信できることを特徴とする請求項７或いは８に記載の通信制御方法。
【請求項１０】  イニシエータのメモリ内の記憶領域に対してターゲットからデータを読み出し或いは書き込みすることでターゲットとデータを交換するイニシエータにおける通信制御方法であって、
前記ターゲットが有する複数のキューのうちの１つを識別するキュー識別子が対応付けられた命令を生成する命令生成工程と、
前記ターゲットから与えられた前記ターゲットが保持できる命令の総和のパラメータを超えないように、前記命令生成工程で生成された命令をターゲットに対して送信する送信工程と、を備えることを特徴とする通信制御方法。
【請求項１１】  前記複数のキューのそれぞれに対して少なくとも１つの命令を前記ターゲットが保持できるように、前記複数のキューのそれぞれに対して命令数の割り当てを行う割り当て工程を有することを特徴とする請求項１０に記載の通信制御方法。
【請求項１２】  イニシエータのメモリ内の記憶領域に対してターゲットからデータを読み出し或いは書き込みすることでターゲットとデータを交換するイニシエータとしての機器であって、
前記ターゲットが有する複数のキューのうちの１つを識別するキュー識別子が対応付けられた命令を生成する命令生成手段と、
前記ターゲットから与えられた前記ターゲットが保持できる命令の総和のパラメータを超えないように、前記命令生成手段によって生成された命令をターゲットに対して送信する送信手段と、を備えることを特徴とする機器。
【請求項１３】  前記複数のキューのそれぞれに対して少なくとも１つの命令を前記ターゲットが保持できるように、前記複数のキューのそれぞれに対して命令数の割り当てを行う割り当て手段を有することを特徴とする請求項１２に記載の機器。
【請求項１４】  イニシエータの有する記憶領域に対してデータを読み出し或いは書き込みしてイニシエータとデータを交換するターゲットにおける通信制御方法であって、
前記イニシエータからの命令を所定容量の記憶領域に格納する格納工程と、
前記格納工程によって格納された命令を参照する参照データを複数のキューのうちの１つに登録するキューイング工程と、
前記複数のキューのうちの１つに登録されている参照データによって参照される命令を実行する実行工程と、を備えることを特徴とする通信制御方法。
【請求項１５】  前記キューの増加または減少に応じて前記所定容量の記憶領域の容量を増加または減少する容量変更工程と、
増加分または減少分をイニシエータに通知する通知工程と、を備えることを特徴とする請求項１４に記載の通信制御方法。
【請求項１６】  前記キューの増加数以上の個数分、前記ターゲットが保持できる命令の総和を増加させる、または前記イニシエータからの命令パラメータに応じて、前記ターゲットが保持できる命令の総和を増加させる、またはキューの数の増加時に伴って増加した前記ターゲットが保持できる命令の総和数の増加分だけ、当該キューの減少時に前記ターゲットが保持できる命令の総和数を減少させる、または前記イニシエータからの命令パラメータに応じて、前記ターゲットが保持できる命令の総和を減少させることを特徴とする請求項１４に記載の通信制御方法。
【請求項１７】  イニシエータの有する記憶領域に対してデータを読み出し或いは書き込みしてイニシエータとデータを交換するターゲットとしての機器であって、
前記イニシエータからの命令を格納する格納手段と、
前記格納手段によって格納された命令を参照する参照データを複数のキューのうちの１つに登録するキューイング手段と、
前記複数のキューのうちの１つに登録されている参照データによって参照される命令を実行する実行手段と、を備えることを特徴とする機器。
【請求項１８】  要求を格納する格納手段と前記格納手段に格納された要求を参照する情報を複数の参照キューにキューイングする手段と有する周辺装置に接続されるホスト装置であって、
クライアントからの要求に対応した複数の要求キューを保持する保持手段と、
前記周辺装置の格納手段に格納可能な要求の数を管理する管理手段と、
前記管理手段に管理されている数に基づき、前記保持手段に保持された複数のキューのそれぞれにある要求をリストに格納する手段とを有することを特徴とするホスト装置。
【請求項１９】  ホスト装置に接続される周辺装置であって、
前記ホスト装置からの要求を格納する格納手段と、
前記格納手段に格納された要求を参照する情報を複数の参照キューにキューイングする手段と、
前記複数の参照キューのそれぞれにキューイングされている前記参照する情報に基づきそれぞれの要求を独立して実行する手段とを有することを特徴とする周辺装置。
【請求項２０】  要求を格納する格納手段と前記格納手段に格納された要求を参照する情報を複数の参照キューにキューイングする手段と有する周辺装置に接続されるホスト装置の制御方法であって、
クライアントからの要求に対応した複数の要求キューに要求をキューイングするステップと、
前記周辺装置の前記格納手段に格納可能な要求の数を超えないように、前記複数の要求キューのそれぞれにある要求をリストに格納するステップとを有することを特徴とする制御方法。
【請求項２１】  ホスト装置に接続される周辺装置の制御方法であって、
前記ホスト装置からの要求を格納手段にするステップと、
前記格納手段に格納された要求を参照する情報を複数の参照キューにキューイングするステップと、
前記複数の参照キューのそれぞれにキューイングされている前記参照する情報に基づきそれぞれの参照キューの要求を独立して実行するステップとを有することを特徴とする制御方法。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
【発明が解決しようとする課題】
このＩＥＥＥ１３９４の上に構築されるＳＢＰ−２プロトコルを利用して通信を行う場合、特に、ホストコンピュータ等のデータ源をイニシエータとし、それからターゲットであるプリンタ装置などの周辺機器へのデータ転送に応用する場合、次のような３つの問題点があった。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１６
【補正方法】削除
【補正の内容】
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１７
【補正方法】削除
【補正の内容】
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００１８
【補正方法】削除
【補正の内容】
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００１９
【補正方法】変更
【補正の内容】
【００１９】
（問題点３）
イニシエータがターゲットに各キュー毎に数を超えないよう命令を送信していたため、使われないキューに確保されている数が無駄になる事がある。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００２０
【補正方法】変更
【補正の内容】
【００２０】
本発明は上記問題点に鑑みてなされたもので、１回のログインで全２重通信（互いに非同期な双方向通信）を可能とし、また、データの交換に必要なプロセスやメモリといった資源を効率的に利用することができる通信制御方法、機器、ホスト装置、周辺装置及び制御方法を提供することを目的とする。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００２１
【補正方法】変更
【補正の内容】
【００２１】
また、マルチチャネルを実現する通信制御方法、機器、ホスト装置、周辺装置及び制御方法を提供することを目的とする。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００２２
【補正方法】削除
【補正の内容】
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００２３
【補正方法】変更
【補正の内容】
【００２３】
また、イニシエータからターゲットに送信できる命令の数の管理をターゲットの各キュー毎に行うのではではなく、一元管理することにより効率的にリソースを利用できるようにする。
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】００２４
【補正方法】変更
【補正の内容】
【００２４】
また、キュー数の増加に応じて、ターゲットが保持できる命令の総和を増加させる、またはイニシエータの命令パラメータに従ってターゲットが保持できる命令の総和を増加させる、またはキュー数の減少に応じて、ターゲットが保持できる命令の総和を減少させる、またはイニシエータの命令パラメータに従ってターゲットが保持できる命令の総和を減少させることにより、ターゲットのリソース利用効率を向上させるようにする。
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】００２５
【補正方法】変更
【補正の内容】
【００２５】
【課題を解決するための手段】
本発明に係る通信制御方法は、イニシエータからターゲットに対して命令を発行することで、前記イニシエータの有する記憶領域に対してデータの書き込みあるいは読み出しを前記ターゲットに行わせてデータを交換する通信制御方法であって、前記イニシエータが、前記記憶領域に対するデータの読み出し命令または前記記憶領域に対するデータの書き込み命令を、ターゲットが保持できる命令の総和を超えないようにターゲットに送信するステップと、前記ターゲットが、前記イニシエータから受信した読み出し命令または書き込み命令を保持するステップと、前記ターゲットが、前記イニシエータから受信した読み出し命令または書き込み命令への参照を複数のキューのうちの１つにより保持するステップと、前記ターゲットが、前記イニシエータから受信した読み出し命令または書き込み命令を処理するステップとを有することを特徴とする。
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】００２６
【補正方法】変更
【補正の内容】
【００２６】
また、前記キュー数の増加に応じて、前記ターゲットが保持できる命令の総和を増加させる、または前記イニシエータの命令パラメータに従って前記ターゲットが保持できる命令の総和を増加させる、または前記キュー数の減少に応じて、前記ターゲットが保持できる命令の総和を減少させる、または前記イニシエータの命令パラメータに従って前記ターゲットが保持できる命令の総和を減少させることを特徴とする。
【手続補正１５】
【補正対象書類名】明細書
【補正対象項目名】００２７
【補正方法】変更
【補正の内容】
【００２７】
また、前記イニシエータは、前記書き込み命令または前記読み出し命令にキューを識別するキュー識別子を付与し、前記ターゲットは、キュー識別子毎にキュー識別子に対応する命令を独立して処理することを特徴とする。
【手続補正１６】
【補正対象書類名】明細書
【補正対象項目名】００２８
【補正方法】変更
【補正の内容】
【００２８】
また、前記イニシエータは、前記複数のキューのそれぞれに対して少なくとも１つの命令を前記ターゲットが保持できるように、前記複数のキューのそれぞれに対して命令数の割り当てを行うことを特徴とする。
【手続補正１７】
【補正対象書類名】明細書
【補正対象項目名】００２９
【補正方法】変更
【補正の内容】
【００２９】
また、前記複数のキューのそれぞれに対して割り当てられた命令数の総和は、前記ターゲットが保持できる命令の総和より小さく、前記ターゲットが保持できる命令の総和と前記複数のキューのそれぞれに対して割り当てられた命令数の総和との差分が、前記複数のキューのそれぞれにおいて割り当てられた命令数を超えて前記ターゲットが保持している命令の数の総和より大きい場合には、前記イニシエータは、前記複数のキューのうちの１つにおいて割り当てられた命令数を超えて、当該１つのキューに対して命令を送信できることを特徴とする。
【手続補正１８】
【補正対象書類名】明細書
【補正対象項目名】００３０
【補正方法】変更
【補正の内容】
【００３０】
また、本発明に係る通信制御方法は、イニシエータのメモリ内の記憶領域に対してターゲットからデータを読み出し或いは書き込みすることでターゲットとデータを交換するイニシエータにおける通信制御方法であって、前記ターゲットが有する複数のキューのうちの１つを識別するキュー識別子が対応付けられた命令を生成する命令生成工程と、前記ターゲットから与えられた前記ターゲットが保持できる命令の総和のパラメータを超えないように、前記命令生成工程で生成された命令をターゲットに対して送信する送信工程と、を備えることを特徴とする。
【手続補正１９】
【補正対象書類名】明細書
【補正対象項目名】００３１
【補正方法】変更
【補正の内容】
【００３１】
また、本発明に係る機器は、イニシエータのメモリ内の記憶領域に対してターゲットからデータを読み出し或いは書き込みすることでターゲットとデータを交換するイニシエータとしての機器であって、前記ターゲットが有する複数のキューのうちの１つを識別するキュー識別子が対応付けられた命令を生成する命令生成手段と、前記ターゲットから与えられた前記ターゲットが保持できる命令の総和のパラメータを超えないように、前記命令生成手段によって生成された命令をターゲットに対して送信する送信手段と、を備えることを特徴とする。
【手続補正２０】
【補正対象書類名】明細書
【補正対象項目名】００３２
【補正方法】変更
【補正の内容】
【００３２】
また、本発明に係る通信制御方法は、イニシエータの有する記憶領域に対してデータを読み出し或いは書き込みしてイニシエータとデータを交換するターゲットにおける通信制御方法であって、前記イニシエータからの命令を所定容量の記憶領域に格納する格納工程と、前記格納工程によって格納された命令を参照する参照データを複数のキューのうちの１つに登録するキューイング工程と、前記複数のキューのうちの１つに登録されている参照データによって参照される命令を実行する実行工程と、を備えることを特徴とする。
【手続補正２１】
【補正対象書類名】明細書
【補正対象項目名】００３３
【補正方法】変更
【補正の内容】
【００３３】
また、本発明に係る機器は、イニシエータの有する記憶領域に対してデータを読み出し或いは書き込みしてイニシエータとデータを交換するターゲットとしての機器であって、前記イニシエータからの命令を格納する格納手段と、前記格納手段によって格納された命令を参照する参照データを複数のキューのうちの１つに登録するキューイング手段と、前記複数のキューのうちの１つに登録されている参照データによって参照される命令を実行する実行手段と、を備えることを特徴とする。
【手続補正２２】
【補正対象書類名】明細書
【補正対象項目名】００３４
【補正方法】変更
【補正の内容】
【００３４】
また、本発明に係るホスト装置は、要求を格納する格納手段と前記格納手段に格納された要求を参照する情報を複数の参照キューにキューイングする手段と有する周辺装置に接続されるホスト装置であって、クライアントからの要求に対応した複数の要求キューを保持する保持手段と、前記周辺装置の格納手段に格納可能な要求の数を管理する管理手段と、前記管理手段に管理されている数に基づき、前記保持手段に保持された複数のキューのそれぞれにある要求をリストに格納する手段とを有することを特徴とする。
【手続補正２３】
【補正対象書類名】明細書
【補正対象項目名】００３５
【補正方法】変更
【補正の内容】
【００３５】
また、本発明に係る周辺装置は、ホスト装置に接続される周辺装置であって、前記ホスト装置からの要求を格納する格納手段と、前記格納手段に格納された要求を参照する情報を複数の参照キューにキューイングする手段と、前記複数の参照キューのそれぞれにキューイングされている前記参照する情報に基づきそれぞれの要求を独立して実行する手段とを有することを特徴とする。
【手続補正２４】
【補正対象書類名】明細書
【補正対象項目名】００３６
【補正方法】変更
【補正の内容】
【００３６】
また、本発明に係る制御方法は、要求を格納する格納手段と前記格納手段に格納された要求を参照する情報を複数の参照キューにキューイングする手段と有する周辺装置に接続されるホスト装置の制御方法であって、クライアントからの要求に対応した複数の要求キューに要求をキューイングするステップと、前記周辺装置の前記格納手段に格納可能な要求の数を超えないように、前記複数の要求キューのそれぞれにある要求をリストに格納するステップとを有することを特徴とする。
【手続補正２５】
【補正対象書類名】明細書
【補正対象項目名】００３７
【補正方法】変更
【補正の内容】
【００３７】
また、本発明に係る制御方法は、ホスト装置に接続される周辺装置の制御方法であって、前記ホスト装置からの要求を格納手段にするステップと、前記格納手段に格納された要求を参照する情報を複数の参照キューにキューイングするステップと、前記複数の参照キューのそれぞれにキューイングされている前記参照する情報に基づきそれぞれの参照キューの要求を独立して実行するステップとを有することを特徴とする。
【手続補正２６】
【補正対象書類名】明細書
【補正対象項目名】０１７７
【補正方法】変更
【補正の内容】
【０１７７】
また、ＩＥＥＥ１３９４インターフェースを利用しているために、ターゲット側へのデータ転送を、ターゲットがその都合に応じて読み出すことで行うことができ、イニシエータがターゲットの都合によってデータ転送に占有されることを防止できる。
【手続補正２７】
【補正対象書類名】明細書
【補正対象項目名】０１７８
【補正方法】変更
【補正の内容】
【０１７８】
また、ＳＢＰ−２プロトコルを利用しているため、ターゲットでキューされるのはＯＲＢだけで、実際に転送されるデータそのものは処理待ちの間イニシエータに格納されている。このため、ターゲットのメモリ資源を小容量化できる。
【手続補正２８】
【補正対象書類名】明細書
【補正対象項目名】０１７９
【補正方法】変更
【補正の内容】
【０１７９】
また、最新の処理状態を保持することで、バスリセットが発生しても、バスリセット後に、バスリセット直前の状態から処理を再開することができ、処理の正常な続行を保証することができる。
【手続補正２９】
【補正対象書類名】明細書
【補正対象項目名】０１８０
【補正方法】変更
【補正の内容】
【０１８０】
【発明の効果】
以上説明したように、本発明によれば、イニシエータとターゲットとの間において、１回のログインで非同期な双方向通信及びそのマルチチャネル化を可能とし、また、データの交換に必要なプロセスやメモリといった資源を効率的に利用できる。
【手続補正３０】
【補正対象書類名】明細書
【補正対象項目名】０１８２
【補正方法】変更
【補正の内容】
【０１８２】
また、キュー数の増加に応じて、ターゲットが保持できる命令の総和を増加させる、またはイニシエータの命令パラメータに従ってターゲットが保持できる命令の総和を増加させる、またはキュー数の減少に応じて、ターゲットが保持できる命令の総和を減少させる、またはイニシエータの命令パラメータに従ってターゲットが保持できる命令の総和を減少させることにより、ターゲットのリソース利用効率を向上させるようにする。