(57)【特許請求の範囲】
【請求項１】
演算処理装置と記憶装置を有する情報処理装置に入出力装置を接続し、前記情報処理装置と前記入出力装置間で、第１及び第２のデータを有する連続データを転送するチャネル装置において、
前記記憶装置は、
前記第１のデータの第１の転送情報及び前記第２のデータの第２の転送情報を備えたアドレスリストと、
前記アドレスリストの先頭アドレス情報及び前記連続データの総転送量情報を有するチャネル起動情報と、
前記連続データのうち、最後に転送される最終データを指定する最終データ計数情報とを保持し、
前記チャネル装置は、
前記記憶装置と前記入出力装置間で転送されるデータを保持するデータバッファ部と、
前記チャネル起動情報を用いて、前記記憶装置と前記データバッファ部間で、前記連続データの転送を開始する転送制御部と、
前記アドレスリストが備える前記第１の転送情報を用いて、前記記憶装置と前記データバッファ部間で、前記第１のデータを転送するとともに、前記第１のデータの転送が完了した場合に、前記アドレスリストが備える前記第２の転送情報を用いて、前記記憶装置と前記データバッファ部間で、前記第２のデータを転送する記憶装置転送制御部と、
前記データバッファ部間と前記入出力装置間で、前記連続データを転送する入出力装置転送制御部とを有し、
前記入出力装置転送制御部は、前記データバッファ部間と前記入出力装置間で、前記第１及び前記第２のデータの転送情報と前記最終データ計数情報とを用いて決定される所定のデータ転送量毎に、前記連続データから前記最終データを除いたデータを分割して転送することを特徴とするチャネル装置。
【請求項２】
前記第１のデータ転送情報は、
第１のデータの転送開始アドレス情報と第１のデータの転送量情報を有し、
前記第２のデータ転送情報は、
第２のデータの転送開始アドレス情報と第２のデータの転送量情報を有することを特徴とする請求項１記載のチャネル装置。
【請求項３】
前記入出力装置転送制御部は、
前記連続データから前記最終データを除いたデータを分割して転送した後、前記データバッファ部間と前記入出力装置間で、前記最終データを転送することを特徴とする請求項１又は２記載のチャネル装置。
【請求項４】
前記情報処理装置は、
前記アドレスリストとチャネル起動情報と前記最終データ計数情報を、前記演算処理装置に、前記記憶装置へ格納させるドライバ部を有することを特徴とする請求項３記載のチャネル装置。
【請求項５】
演算処理装置と記憶装置を有する情報処理装置と、入出力装置と、前記情報処理装置に前記入出力装置を接続し、前記情報処理装置と前記入出力装置間で、第１及び第２のデータを有する連続データを転送するチャネル装置を有する情報処理システムにおいて、
前記記憶装置は、
前記第１のデータの第１の転送情報及び前記第２のデータの第２の転送情報を備えたアドレスリストと、
前記アドレスリストの先頭アドレス情報及び前記連続データの総転送量情報を有するチャネル起動情報と、
前記連続データのうち、最後に転送される最終データを指定する最終データ計数情報とを保持し、
前記チャネル装置は、
前記記憶装置と前記入出力装置間で転送されるデータを保持するデータバッファ部と、
前記チャネル起動情報を用いて、前記記憶装置と前記データバッファ部間で、前記連続データの転送を開始する転送制御部と、
前記アドレスリストが備える前記第１の転送情報を用いて、前記記憶装置と前記データバッファ部間で、前記第１のデータを転送するとともに、前記第１のデータの転送が完了した場合に、前記アドレスリストが備える前記第２の転送情報を用いて、前記記憶装置と前記データバッファ部間で、前記第２のデータを転送する記憶装置転送制御部と、
前記データバッファ部間と前記入出力装置間で、前記連続データを転送する入出力装置転送制御部とを有し、
前記入出力装置転送制御部は、前記データバッファ部間と前記入出力装置間で、前記第１及び前記第２のデータの転送情報と前記最終データ計数情報とを用いて決定される所定のデータ転送量毎に、前記連続データから前記最終データを除いたデータを分割して転送することを特徴とする情報処理システム。
【請求項６】
演算処理装置と記憶装置を有する情報処理装置に入出力装置を接続し、前記情報処理装置と前記入出力装置間で、第１及び第２のデータを有する連続データを転送するチャネル装置のデータ転送方法において、
前記演算処理装置が、前記記憶装置に、前記第１のデータの第１の転送情報及び前記第２のデータの第２の転送情報を備えたアドレスリストを保持するステップと、
前記演算処理装置が、前記記憶装置に、前記アドレスリストの先頭アドレス情報及び前記連続データの総転送量情報を有するチャネル起動情報を保持するステップと、
前記演算処理装置が、前記記憶装置に、前記連続データのうち、最後に転送される最終データを指定する最終データ計数情報を保持するステップと、
前記チャネル装置が有するデータバッファ部が、前記記憶装置と前記入出力装置間で転送されるデータを保持するステップと、
前記チャネル装置が有する転送制御部が、前記チャネル起動情報を用いて、前記記憶装置と前記データバッファ部間で、前記連続データの転送を開始するステップと、
前記チャネル装置が有する記憶装置転送制御部が、前記アドレスリストが備える前記第１の転送情報を用いて、前記記憶装置と前記データバッファ部間で、前記第１のデータを転送するとともに、前記第１のデータの転送が完了した場合に、前記アドレスリストが備える前記第２の転送情報を用いて、前記記憶装置と前記データバッファ部間で、前記第２のデータを転送するステップと、
前記チャネル装置が有する入出力装置転送制御部が、前記データバッファ部間と前記入出力装置間で、前記連続データを転送するステップとを有し、
前記連続データを転送するステップでは、前記入出力装置転送制御部が、前記データバッファ部間と前記入出力装置間で、前記第１及び前記第２のデータの転送情報と前記最終データ計数情報とを用いて決定される所定のデータ転送量毎に、前記連続データから前記最終データを除いたデータを分割して転送することを特徴とするデータ転送方法。
【請求項７】
前記第１のデータ転送情報は、
第１のデータの転送開始アドレス情報と第１のデータの転送量情報を有し、
前記第２のデータ転送情報は、
第２のデータの転送開始アドレス情報と第２のデータの転送量情報を有することを特徴とする請求項６記載のデータ転送方法。
【請求項８】
前記入出力装置転送制御部は、
前記連続データから前記最終データを除いたデータを分割して転送した後、前記データバッファ部間と前記入出力装置間で、前記最終データを転送することを特徴とする請求項６又は７記載のデータ転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、チャネル装置やチャネル装置を搭載した情報処理装置に関し、更に詳しくはチャネル装置から入出力装置（ＩＯ装置）へのデータの転送処理の技術に関する。
【背景技術】
【０００２】
メモリ上の複数の領域に分散されたデータをＩＯ装置に転送する際の処理において、データ転送効率の向上が望まれている。
たとえば、特許文献１にはハードディスク上のデータを任意の外部機器に効率よくＤＭＡ転送することが可能なシステムが開示されている。
【０００３】
また、特許文献２に開示があるように、チェインデータ処理によってデータを転送する転送方式が知られている。
チェインデータ処理は、１回のコマンドで、メモリ上の複数の領域に分散されたデータを、ＩＯ装置に効率よく転送するものである。
【０００４】
チャネル装置は、ＩＯ装置とのデータ転送の制御を、その動作を示すコマンド情報をメモリからフェッチしてその内容に従って行う。そのコマンド情報は、チャネル装置がデータ転送を制御するために用いる、メモリのデータアドレス、転送バイトカウント及びフラグを含んでいる。ＩＯ装置とメモリ間でデータ転送を行うにあたり、メモリの読み出し若しくは書き込み先の場所が分割されている場合、コマンド情報内のフラグの一つであるチェインデータフラグに“1”をセットすることで、後続の情報で新しいデータアドレスおよびバイトカウントを連続指定することができる。このようにしてデータ転送を行う処理をチェインデータ処理といい、チェインデータ処理で連続して転送される連続データをチェインデータという。
【０００５】
図９は、チェインデータ処理によってデータを転送する、従来技術のチャネル装置内の転送方式を示す図である。
同図は、チャネル装置を介して、情報処理装置内のメモリ上のデータを情報処理装置に接続されている入出力装置（ＩＯ装置）にデータを転送する場合を示している。
【０００６】
図９においてチェインデータ処理による転送を行うに先立って、情報処理装置のメモリ上に予めＣＣＷ（Ｃｈａｎｎｅｌ  Ｃｏｍｍａｎｄ  Ｗｏｒｄ）列を用意する。
このＣＣＷ列は、転送対象となるメモリ上に分散して記憶されているデータ領域（ｄａｔａ０、ｄａｔａ１、ｄａｔａ２）の先頭アドレス（ＤＴＡ０、ＤＴＡ１、ＤＴＡ２）と転送量（転送データ長）（ＬＮＧ０、ＬＮＧ１、ＬＮＧ２）を対応させて記憶している。
【０００７】
またこのＣＣＷ列のメモリ上の位置ＣＣＷＡ（Ｃｈａｎｎｅｌ  Ｃｏｍｍａｎｄ  Ｗｏｒｄ  Ａｄｄｒｅｓｓ）をＩＯ制御領域に記憶している。
メモリ上のデータをＩＯ装置に転送させるＩＯ命令が発行されると、チャネル装置は指定されたＣＣＷＡからＣＣＷの先頭アドレスを読み出す。
【０００８】
そしてチャネル装置は、データ転送指示を対象となるＩＯ装置に送り（１）、データ転送の方向や、データ転送量を知らせる。次に、ＣＣＷ列に記録されているデータ転送開始アドレスＤＴＡ０、データ転送量ＬＮＧ０に従ってメモリからデータ（ｄａｔａ０）を読み出し、そのデータをＩＯ側へ転送する（２）。１つ目のＣＣＷによるデータ転送が終了すると、同様に次のＣＣＷを読み出す。
【０００９】
次にチャネル装置は、チェインデータ指示をＩＯ装置に送って（３）、次のＣＣＷのデータ転送量を知らせる。その後、次のＣＣＷのアドレス／転送量（ＤＴＡ１／ＬＮＧ１）を基に、メモリから読み出したデータ（ｄａｔａ１）をＩＯ側へ転送する（４）。
【００１０】
以下、チェインデータを全て転送し終わるまでチャネル装置は、ＩＯ装置へのチェインデータ指示とチェインデータの転送を繰り返す（５，６）。
なお図９が図示しているのは、Ｗｒｉｔｅコマンド（メモリからＩＯ装置へのデータ転送）の動作であるが、Ｒｅａｄコマンド（ＩＯ装置からメモリへのデータ転送）では転送データの方向がＩＯ装置からメモリへの転送になるのみで、制御内容は上述したものと同じになる。
【００１１】
図１０は、上記したチェインデータ処理を実現するチャネル装置の構成例を示す図である。
同図のチャネル装置１００は、ＰＣＩバス制御部１１０、チャネル制御部１２０、データ転送制御部１３０及びＩＯ制御部１４０を備える。
【００１２】
ＰＣＩバス制御部１１０は、情報処理装置のＰＣＩバスとの接続制御を行うものである。チャネル制御部１２０はチャネル装置１００全体を制御するものである。データ転送制御部１３０は、情報処理装置のメモリとＩＯ装置との間のデータのやり取りを制御するものである。ＩＯ制御部１４０は、ＩＯ装置が備えるＩＯインタフェースとの接続制御を行うものである。
【００１３】
またデータ転送制御部１３０は、ＣＣＷ制御部１３１、転送制御部１３２、メモリ転送制御部１３３、データバッファ部１３４及びＩＯ転送制御部１３５を備えている。
ＣＣＷ制御部１３１は、チェインデータ処理時に情報処理装置のＣＣＷ列の内容を読み出す等のＣＣＷに対する制御を行う。転送制御部１３２は、データ転送制御部１３０全体を制御するものである。メモリ転送制御部１３３は、ＰＣＩバス制御部１１０を介してメモリ上のデータを受け取りデータバッファ部１３４に書き込んだり、データバッファ部１３４上のデータをＰＣＩバス制御部１１０を介してメモリに転送したりするものである。データバッファ部１３４は、メモリからのデータ転送速度とＩＯ装置からのデータ転送速度の差を吸収するバッファメモリである。ＩＯ転送制御部１３５は、ＩＯ制御部１４０を介してデータバッファ部１３４内のデータをＩＯ装置に転送したり、ＩＯ装置からのデータをデータバッファ部１３４に書き込んだりするものである。
【特許文献１】特開平１０−１７７５４１号公報
【特許文献２】特開平１−２８１５５３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１４】
図９に示したチェインデータ処理によるデータ転送では、１つのＣＣＷに対応するデータを転送する毎に、チャネル装置１００は、ＩＯ装置に対してチェインデータ転送指示を送ることとなり、１つ１つのチェインデータ転送毎にチャネル装置とＩＯ装置でやり取りが行われるので、ＩＯインタフェースには待ち時間が発生する。そのことがデータ転送における遅延となり、データ転送処理全体の性能の悪化の要因となっている。
【００１５】
本発明は、情報処理装置のメモリとＩＯ装置間のデータ転送において、高速で高効率なデータ転送を実現するチャネル装置、情報処理システム及びデータ転送方法を提供することを課題とする。
【課題を解決するための手段】
【００１６】
本発明は、演算処理装置と記憶装置を有する情報処理装置に入出力装置を接続し、前記
情報処理装置と前記入出力装置間で、第１及び第２のデータを有する連続データを転送するチャネル装置を前提とする。
【００１７】
上記課題を解決するため、前記記憶装置は、アドレスリスト及びチャネル起動情報を保持する。
アドレスリストは、前記第１のデータの第１の転送情報と前記第２のデータの第２の転送情報を備える。
【００１８】
チャネル起動情報は、前記アドレスリストの先頭アドレス情報と前記連続データの総転送量情報を有する。
また前記チャネル装置は、データバッファ部、転送制御部、記憶装置転送制御部及び入出力装置転送制御部を備える。
【００１９】
データバッファ部は、前記記憶装置と前記入出力装置間で転送されるデータを保持する。
転送制御部は、前記チャネル起動情報を用いて、前記記憶装置と前記データバッファ部間で、前記連続データの転送を開始する。
【００２０】
記憶装置転送制御部は、前記アドレスリストが備える前記第１の転送情報を用いて、前記記憶装置と前記データバッファ部間で、前記第１のデータを転送するとともに、前記第１のデータの転送が完了した場合に、前記アドレスリストが備える前記第２の転送情報を用いて、前記記憶装置と前記データバッファ部間で、第２のデータを転送する。
【００２１】
入出力装置転送制御部は、前記データバッファ部間と前記入出力装置間で、前記連続データを転送する。
この構成により、チャネル装置と入出力装置とのデータ転送は、前記連続データの総転送量情報に基づいたデータ単位で転送が行われる。
【００２２】
また記第１のデータ転送情報は、第１のデータの転送開始アドレス情報と第１のデータの転送量情報を有し、前記第２のデータ転送情報は、第２のデータの転送開始アドレス情報と第２のデータの転送量情報を有する構成としても良い。
【００２３】
更に、前記記憶装置はさらに、前記連続データのうち、最後に転送される最終データを指定する最終データ計数情報を保持し、前記入出力装置転送制御部は、前記データバッファ部間と前記入出力装置間で、前記第１及び第２のデータの転送情報と前記最終データ計数情報を用いて決定される所定のデータ転送量毎に、前記連続データから前記最終データを除いたデータを分割して転送する構成としても良い。
【００２４】
この構成により最終データを除くデータは、適宜に分割されて入出力装置に転送される。
また前記入出力装置転送制御部は、前記連続データから前記最終データを除いたデータを分割して転送した後、前記データバッファ部間と前記入出力装置間で、前記最終データを転送する構成としても良い。
【００２５】
この構成により、最終データは、他のデータと区別されて転送される。
更に前記情報処理装置は、前記アドレスリストとチャネル起動情報と前記最終データ計数情報を、前記演算処理装置に、前記記憶装置へ格納させるドライバ部を有する構成としても良い。
【００２６】
この構成によりチャネル装置の起動時にチャネル装置が起動に必要なデータが設定され
る。
また本発明は、演算処理装置と記憶装置を有する情報処理装置と、入出力装置と、前記情報処理装置に前記入出力装置を接続し、前記情報処理装置と前記入出力装置間で、第１及び第２のデータを有する連続データを転送するチャネル装置を有する情報処理システムや、演算処理装置と記憶装置を有する情報処理装置に入出力装置を接続し、前記情報処理装置と前記入出力装置間で、第１及び第２のデータを有する連続データを転送するチャネル装置のデータ転送方法もその範囲に含む。
【発明の効果】
【００２７】
開示のチャネル装置によれば、メモリ上にデータをチャネル装置３２で所定の大きさのデータ単位にしてＩＯ装置へ転送するので、ＩＯインタフェースの待ち時間を軽減させ、転送処理の性能を向上させることが出来る。
【発明を実施するための最良の形態】
【００２８】
以下に図面を参照しながら本発明の一実施形態について説明する。
図１は、本実施形態における情報処理システムの構成を示す図である。
同図において、情報処理システム１は、１乃至複数（図１では８つ）のシステムボード２−１〜２−８と、１乃至複数（図１では８つ）のＩＯユニット３−１〜３−８がシステムバスであるシステムインターコネクト４によって接続される構成を有している。
【００２９】
各システムボード２−１〜２−８には、１乃至複数（図１では４つ）の等価のＣＰＵ２１−１〜２１−４を備えており、また各ＣＰＵ２１−１〜２１−４が共用するメモリ２２を有している。また各ＣＰＵ２１−１〜２１−４は、それぞれＩＯユニット３−１〜３−８との接続を司り、また後述するＣＯＢ（Ｃｈａｎｅｌ  Ｏｐｅｒａｔｉｏｎ  Ｂｕｆｆｅｒ）のＤＬＷの設定値を設定するドライバ２３−１〜２３−ｎを有している。
【００３０】
また各ＩＯユニット３−１〜３−８は、情報処理システム１の内部入出力装置で、内部にシステムバス４とブリッジされた不図示のＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔｓ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バス等の汎用バスを備え、この汎用バスに例えばハードディスクドライブ３１、チャネル装置３２、ＬＡＮポート、ＣＤ−ＲＯＭやＤＶＤ用のドライブ装置等の入出力ユニットが接続されて搭載される構成となっている。
【００３１】
図１では、ＩＯユニット３−１は、４つのハードディスクドライブ３１−１〜３１−４と４つのチャネル装置３２−１〜３２−４を搭載している。なお他のＩＯユニット３−２〜３−８は、このような構成に限らず、ハードディスクドライブ３１のみを搭載していたり、ＬＡＮポートを搭載していたり等様々な構成が考えられる。
【００３２】
チャネル装置３２は、情報処理システム１と外部ＩＯ装置５を接続する通信カード装置である。
ＩＯ装置５−１〜５−ｎは、情報処理システム１外部に設けられたハードディスクドライブ、ＲＡＩＤ等の入出力装置で、チャネル装置３２を介して情報処理システム１と接続されている。
【００３３】
図２は、図１の情報処理システム１を簡略化して示した概略図である。
同図では、情報処理システム１は、ＣＰＵ２１、メモリ２２、１乃至複数（図２のでは３つ）のチャネル装置３２−１〜３２−３が、図１のシステムバス４とＩＯユニット３内のブリッジを含むシステム制御４１に接続される構成となっており、また各チャネル装置３２−１〜３２−３にはそれぞれ外部ＩＯ装置５−１〜５−３が接続されている。
【００３４】
本実施形態は、同図において、チャネル装置３２を介してメモリ２２とＩＯ装置５との
間でデータを転送する際のデータ転送の仕方、及びそのための構成を示すものである。
図３は、本実施形態におけるチャネル装置３２の構成例を示す図である。
【００３５】
同図において、チャネル装置３２は、ＰＣＩバス制御部５１、チャネル制御部５２、データ転送制御部５３及びＩＯ制御部５４を備える。
ＰＣＩバス制御部５１は、システムバス４とブリッジされたＩＯユニット３内のＰＣＩバスとの接続制御を行うものである。チャネル制御部５２はチャネル装置３２全体の制御を司るものである。データ転送制御部５３は、情報処理装置１のメモリ２２とＩＯ装置５との間のデータのやり取りを制御するものである。ＩＯ制御部５４は、ＩＯ装置５が備えるＩＯインタフェースとの接続制御を行うものである。
【００３６】
またデータ転送制御部５３は、ＤＬＷ制御部６１、転送制御部６２、チェインデータ制御部６３、メモリ転送制御部６４、データバッファ部６５及びＩＯ転送制御部６６を備えている。
【００３７】
ＤＬＷ制御部６１は、チェインデータ処理時に情報処理装置１のメモリ２２上に設けられる後述するＤＬＷの読み出し等の制御を行うものである。転送制御部６２は、データ転送制御部５３全体を制御するものである。チェインデータ制御部６３は、本実施形態におけるチェインデータ処理の実施を司る部分である。このチェインデータ制御部６３の詳細については後述する。メモリ転送制御部６４は、ＰＣＩバス制御部５１を介してメモリ２２上のデータを受け取りデータバッファ部６５に書き込んだり、データバッファ部６５上のデータをＰＣＩバス制御部５１を介してメモリ２２に転送したりするものである。データバッファ部６５は、メモリ２２からのデータ転送速度とＩＯ装置からのデータ転送速度の差を吸収するバッファメモリである。ＩＯ転送制御部６６は、ＩＯ制御部５４を介して、データバッファ部６５内のデータをＩＯ装置５に転送したり、ＩＯ装置５からのデータをデータバッファ部６５に書き込んだりするものである。
【００３８】
次に本実施形態の情報処理システム１におけるチェインデータ処理によるデータ転送の仕方について説明する。
図４は、チェインデータ処理によってデータを転送する、本実施形態の転送方式を示す図である。
【００３９】
本実施形態の転送方式では、チェインデータ処理によるデータ転送を開始するに当たってドライバ２３は事前にメモリ２２上にＣＯＢ領域を確保する。このＣＯＢ領域は、ドライバ２３がチャネル装置３２に動作内容を指示するためのバッファメモリである。
【００４０】
またドライバ２３は、ＣＯＢ領域にチャネル装置３２の起動情報を用意し、その中にはアドレスリスト（ＤＬＷ）の先頭アドレス（ＤＬＷＡ）と総転送量（ＴＬＮＧ）が格納される。
【００４１】
アドレスリスト（ＤＬＷ）は、転送対象となるメモリ２２上データである分散したデータ領域（ｄａｔａ０，ｄａｔａ１，ｄａｔａ２）のデータ転送開始アドレス（ＤＴＡ０，ＤＴＡ１，ＤＴＡ２）と、各データ領域におけるデータ転送量（ＬＮＧ０，ＬＮＧ１，ＬＮＧ２）を対応付けてメモリの連続領域に用意したものである。ＤＬＷの先頭アドレスＤＬＷＡは、このＤＬＷの先頭アドレスを示すものである。
【００４２】
また総転送量ＴＬＮＧは、チェインデータ処理によるデータ転送で転送される総データ量を示す。この総転送量ＴＬＮＧをＣＯＢ領域に事前にセットしておく点が、本実施形態のデータ転送の特徴点の１つであり、後述するように、チェインデータ制御部６３は、この総転送量ＴＬＮＧを用いてチャネル装置３２とＩＯ装置５の間の１回のデータ転送量を
決定する。
【００４３】
本実施形態では、チェインデータ処理は、以下の流れで行う。
まずドライバ２３がチャネル装置３２にＩＯ装置５へのアクセスを指示するコマンドの実行を指示すると、チャネル装置３２はメモリ２２のＣＯＢ領域を読み出し、ＣＯＢ領域の内容に従ってチェインデータ処理を開始する。
【００４４】
チャネル装置３２のＤＬＷ制御部６１は、ＣＯＢ領域から読み出したＤＬＷ先頭アドレス（ＤＬＷＡ）から順次ＤＬＷを読み出し、データ転送開始アドレス（ＤＴＡｎ）とデータ転送量（ＬＮＧｎ）に従ってメモリ２２とチャネル装置３２のデータバッファ部６５の間でデータ転送を行う。１つのＤＬＷに関するデータ転送が終了すると、次のＤＬＷを読み出し、その内容に従ってメモリ２２とデータバッファ部６５の間でデータ転送を継続する。以降ＤＬＷ制御部６１は、全てのＤＬＷによるメモリ２２とデータバッファ部６５の間でのデータ転送が完了するまで、上記処理を繰り返す。
【００４５】
上記メモリ２２とデータバッファ部６５の間でのデータ転送と並列して、チャネル装置３２のチェインデータ制御部６３は、データバッファ部６５とＩＯ装置５間のデータ転送（ｃｈａｉｎ  ｄａｔａ０）を行う。
【００４６】
データバッファ部６５とＩＯ装置５間のデータ転送では、図９の従来の方法では１回の転送データ量は、メモリ２２とデータバッファ部６５間のデータ転送と同じ量となっていた。例えば図９で、メモリからｄａｔａ０をバッファ部に読み出すとバッファ部からＩＯ装置へ１回の転送で転送されるｃｈａｉｎ  ｄａｔａ０は、ｄａｔａ０と同じ大きさであった。
【００４７】
それに対して本実施形態では、チェインデータ制御部６３が、ＣＯＢ領域から読み出した総転送量（ＴＬＮＧ）からチャネル装置３２（データバッファ部６５）とＩＯ装置５間で１回に転送するデータ量を決める。そしてチャネル装置３２はこのデータ量をＩＯ装置５にデータ転送指示で通知（１）後、通知したデータ量のデータ（ｃｈａｉｎ  ｄａｔａ０）を転送する（２）。この転送後にまだ転送すべきデータが残っている場合は、ＩＯ装置５にチェインデータを指示し（３）、残りのデータ転送（ｃｈａｉｎ  ｄａｔａ１）を行う（４）。
【００４８】
このような転送処理により、メモリ２２−ＩＯ装置５間の一回のデータ転送におけるデータ量を大きくすることが出来、効率良くデータ転送を行える。例えばｄａｔａ０、ｄａｔａ１、ｄａｔａ２のデータ量がそれぞれ１５Ｋｂｙｔｅで、チェインデータ制御部６３が、総転送量（ＴＬＮＧ）から決定したｃｈａｉｎ  ｄａｔａ０のデータ量が３２Ｋｂｙｔｅであった場合、図９に示す従来の方法の場合チャネル装置３２とＩＯ装置５との間のデータ転送は３回かかるが、図４に示す本実施形態の方法では２回ですむ。よってその分、メモリ２２−ＩＯ装置５間のデータ転送の効率化を高めることが出来る。
【００４９】
なお本実施形態において、メモリ２２−ＩＯ装置５間の一回のデータ転送とは、チャネル装置３２がＩＯ装置５に対して指示を送信してから、その指示に続いてデータを転送するまでを一回の転送をいう。
【００５０】
なお図４の例では、メモリ２２上のｄａｔａ０、ｄａｔａ１、ｄａｔａ２の３つのデータを転送する場合を例としているので、チャネル装置３２とＩＯ装置５との間のデータ転送は２回となっているが、総転送量（ＴＬＮＧ）がより大きなデータを転送する場合には、図４の（２）の処理の後に、チェインデータ指示及び複数のメモリエリア上のデータをまとめてｃｈａｉｎ  ｄａｔａ０と同じ大きさ（例えば３２Ｋｂｙｔｅ）としたデータの
転送が行われることとなる。
【００５１】
以上のように、メモリ−チャネル間とチャネル−ＩＯ間は、別々の制御によりチェインデータを転送する。またデータ転送の際の一回の転送で転送するデータ単位をメモリ−チャネル間とチャネル−ＩＯ間で変更している。
【００５２】
これにより、メモリ−ＩＯ装置間の効率の良いデータ転送を実現することが出来る。
ところで、実際のＩＯ装置５とのチェインデータ処理においては、最後にＩＯ装置５に転送するチェインデータの区切りを明確に指定する必要がある。
【００５３】
図５は、最後にＩＯ装置５に転送するチェインデータの区切りを明確にして転送する場合の転送方式を示す図である。なお同図は、Ｗｒｉｔｅコマンド（メモリからＩＯ装置へのデータ転送）の動作を示しているが、Ｒｅａｄコマンド（ＩＯ装置からメモリへのデータ転送）では転送データの方向がＩＯ装置からメモリへの転送になるのみで、制御内容は同じになる。
【００５４】
同図を図４と比較すると、図５のＣＯＢには、上述したＤＬＷの先頭アドレスＤＬＷＡ、総転送量ＴＬＮＧのほかに、最後のバイトカウントＬＢＣ（Ｌａｓｔ Ｂｙｔｅ Ｃｏｕｎｔ）が設定されている。この最後のバイトカウントＬＢＣは、最後にメモリ２２から転送されるチェインデータ（図５ではｄａｔａ２）の大きさ（図５ではＬＮＧ２）が入る。
【００５５】
そして図５の転送方式では、チャネル装置３２内のチェインデータ制御部６３はチャネル装置３２−ＩＯ装置５間のデータ転送量を、総転送量ＴＬＮＧ−最後のバイトカウントＬＢＣから決定し、それを通知後（１）、ＩＯに対し転送を行う（２）。そして最後にＬＢＣで指定された残りのデータ転送を実施する（３，４）。
【００５６】
これにより、最後にＩＯ装置５に転送するチェインデータの区切りを明確にして転送することが出来る。
図６は、図５に示した転送方式において、最後にＩＯ装置５に転送するチェインデータ以外のデータが、一度で転送できなかった場合を示す図である。
【００５７】
この場合には、最後にＩＯ装置５に転送するチェインデータ以外のデータを総転送量ＴＬＮＧ−最後のバイトカウントＬＢＣから決定したデータ転送量（例えば３２Ｋｂｙｔｅ）で順次転送してゆき（１，２）、最後にあまったデータ量（ｃｈａｉｎ  ｄａｔａ１）を転送し（３，４）、その後にＩＯ装置５に最後に転送するチェインデータ（ｃｈａｉｎ
ｄａｔａ２）を転送する。
【００５８】
このように、最後にＩＯ装置５に転送するチェインデータ以外のデータが、一度で転送できなかった場合においても、最後にＩＯ装置５に転送するチェインデータを区別して転送することが出来る。
【００５９】
次に上記転送方式を実現する本実施形態のチャネル装置３２のチェインデータ制御部６３について説明する。
図７は、本実施形態のチェインデータ制御部６３の構成を他のデータ転送制御部５３の構成を含めて示すブロック図である。
【００６０】
同図において、まず転送制御部６２は、ＢＢＣレジスタ７１、ＣＭＤレジスタ７２及びＩＤＬレジスタ７３の３つのレジスタを有している。
ＢＢＣ（Ｂｕｆｆｅｒ  Ｂｙｔｅ  Ｃｏｕｎｔ）レジスタ７１は、データ転送時にデータバッファ部６５上の有効なデータのバイト数を示す。ＢＢＣレジスタ７３の値はデータ転
送開始時には、リセットされる。このＢＢＣレジスタ７３の値は、チェインデータ制御部６３に通知される。ＣＭＤ（Ｃｏｍｍａｎｄ）レジスタ７２は、ＩＯ装置５へのコマンドをコード化した値を保持するために使用されるレジスタである。このＣＭＤレジスタ７２の内容はＷＴ（Ｗｒｉｔｅ）としてチェインデータ制御部６３に通知される。ＷＴはＣＭＤレジスタ７２の内容をデコードして得られる転送データの方向を示す値で、転送方向がメモリ２２からＩＯ装置５であれば“１”となり、転送データの方向がＩＯ装置５からメモリ２２であれば“０”となる。ＩＤＬ（ＩＯ  Ｄａｔａ  Ｌｅｎｇｔｈ）レジスタ７３は、チャネルとＩ／Ｏ間のデータ転送での残りデータ転送量を保持するものである。データ転送開始時には、このＩＤＬレジスタ７３に総転送量ＴＬＮＧが設定される。そして、チャネル装置３２（データバッファ部６５）とＩＯ装置５との間でデータ転送が行われる度に、転送データ分このＩＤＬレジスタ７３の値を減算する。このＩＤＬレジスタ７３の値はチェインデータ制御部６３に通知される。
【００６１】
またチェインデータ制御部６３は、ＬＢＣレジスタ７４、比較器７５（比較１）、ＩＢＣレジスタ７６及び比較器７７（比較２）を有する。
ＬＢＣ（Ｌａｓｔ  Ｂｙｔｅ  Ｃｏｕｎｔ）レジスタ７４は、チャネル装置３２からＩＯ装置５に指示する最後のチェインデータに関わる転送データのバイト数を設定するために使用されるレジスタである。ＩＯ装置５へ最初のコマンドを出力する前に、ＣＯＢに設定されているＬＢＣの値がこのＬＢＣレジスタ７４に設定される。ＩＯ装置５側はチェインデータフラグがオンのコマンドを受け取ると、そのコマンド処理後、その次のコマンドでデータ転送量を更新されることを指示されることを認識する。ＩＢＣ（ＩＯ  Ｂｙｔｅ
Ｃｏｕｎｔ）レジスタ７６は、チャネル装置３２とＩＯ装置５の間のデータ転送での残りバイトカウントを示すレジスタである。このＩＢＣレジスタ７６は、チャネル装置３２とＩＯ装置５の間でデータ転送をする度に転送バイト数を減算する。本レジスタは、チャネルとＩＯの間のチェインデータ転送終了の検出に使用され、その値はＩＯ転送制御部６６通知される。
【００６２】
比較器７５（比較１）は、ＴＣＭＦＴ（Ｔｒａｎｓｍｉｔ  Ｃｏｍｍａｎｄ  Ｆｒａｍｅ  ａｔ  Ｆｉｒｓｔ）信号がオンとなるのを契機として、ＩＤＬレジスタ７３内の値とＬＢＣレジスタ７４内の値を比較し、その比較結果に基づいてＩＢＣレジスタ７６に値を設定する。ＴＣＭＦＴ信号は、データ転送指示によってＩＯ装置５に最初のコマンドを出力するときに有効となる。また、比較器７５（比較１）は、上記比較の結果から、ＩＯ転送制御部６６に対してＩＯ装置５へのコマンドのチェインデータフラグをオンとして出力する時に有効となるＣＤＦ（Ｃｈａｉｎ  Ｄａｔａ  Ｆｌａｇ）信号を出力する。この比較器７５（比較１）によるＩＢＣレジスタ７６への値のセットで、チャネル装置３２（データバッファ部６５）からＩＯ装置５への１回のデータ転送量（データ単位）が決定される。
【００６３】
比較器７７（比較２）は、ＩＢＣレジスタ７６の値が０となったとき、すなわちデータバッファ部６５からＩＯ装置５への１回の転送が終了したとき、ＢＢＣレジスタ７１の値とＣＭＤレジスタ７２の出力ＷＴをチェックする。そして、ＢＢＣレジスタ７１の値が“０”、すなわちデータバッファ部６５内の有効なデータが無くなったとき、若しくはＷＴの値が“１”、すなわちＩＯ装置への命令がＷｒｉｔｅ命令であったとき、比較器７７（比較２）は、ＩＯ転送制御部６６にＴＣＭＣＤ（Ｔｒａｎｓｍｉｔ  Ｃｏｍｍａｎｄ  Ｆｒａｍｅ  ａｔ  Ｃｈａｉｎ  Ｄａｔａ）信号を出力する。このＴＣＭＣＤ信号は、チェインデータ指示によってＩＯ装置５に更新したコマンドを出力するときに有効となる。
【００６４】
次に本実施形態におけるチェインデータ処理によるデータ転送時のチャネル装置３２の動作を説明する。
図８は、データ転送時のチャネル装置３２の動作処理を示すフローチャートである。
【００６５】
同図において、データ転送処理が開始されると、まずステップＳ１としてデータ転送に必要なレジスタである、ＢＢＣレジスタ７１、ＣＭＤレジスタレジスタ７２、ＩＤＬレジスタ７３及びＬＢＣレジスタ７４に初期値が設定される。転送制御部６２のＩＤＬレジスタにはＣＯＢから読み出した総転送量ＴＬＮＧの値、ＣＭＤレジスタ７２にはＩＯ装置５へのコマンドをコード化した値を設定する。またＢＢＣレジスタ７１は“０”にリセットする。またチェインデータ制御部６３のＬＢＣレジスタ７４には、最後のチェインデータに関わる転送データのバイト数を設定する。
【００６６】
次にステップＳ２として、チャネル装置３２はＩＯ装置５にデータ転送の指示を行う。ＩＯ転送制御部６６はＩＯインタフェース上に最初コマンドを出力することが可能となると、チェインデータ制御部６３に対してＴＣＭＦＴ信号をオンとする。これを受けてチェインデータ制御部は、データ転送指示のコマンドでチャネルとＩＯ間で最初に行うデータ量を決定処理を開始することとなる。
【００６７】
データ量の決定処理としてまずステップＳ３において、チャネル装置３２のチェインデータ制御部６３は、ＩＤＬレジスタ７３の値とＬＢＣレジスタ７４の値を比較し、その結果ＩＤＬレジスタ７３の値の方が大きければ（ステップＳ３、Ｎｏ）、次にステップＳ４としてＩＤＬレジスタ７３の値−ＬＢＣレジスタ７４の値が６４Ｋｂｙｔｅ以上かどうかを判断する。そして６４Ｋｂｙｔｅ以上であれば（ステップＳ４、Ｙｅｓ）、ステップＳ６としてＩＢＣレジスタ７６に３２Ｋｂｙｔｅを設定し、またＣＤＦ信号を“１”にして処理をステップＳ８に移す。なおここで６４Ｋｂｙｔｅ-1は、一回の転送で転送できる最大の値の例であり、また３２Ｋｂｙｔｅは残りのデータ量が６４Ｋｂｙｔｅ以上のときに転送される値である。なおこの値は３２Ｋｂｙｔｅに限定されるものではなく、最大転送量６４Ｋｂｙｔｅ以下の値であればいくつでも良い。
【００６８】
またステップＳ４において、ＩＤＬレジスタ７３の値−ＬＢＣレジスタ７４の値が６４Ｋｂｙｔｅ未満であれば（ステップＳ４、Ｎｏ）、ステップＳ５としてＩＢＣレジスタ７６にＩＤＬレジスタ７３の値−ＬＢＣレジスタ７４の値を設定し、またＣＤＦ信号を“１”にして処理をステップＳ８に移す。
【００６９】
またステップＳ３において、ＩＤＬレジスタ７３の値とＬＢＣレジスタ７４の値の比較結果でＩＤＬレジスタ７３の値がＬＢＣレジスタ７４の値以下であれば（ステップＳ３、Ｙｅｓ）、ステップＳ７としてＩＢＣレジスタ７６にＩＤＬレジスタ７３の値を設定し、またＣＤＦ信号を“０”にして処理を終了する。
【００７０】
このステップＳ３〜Ｓ７の処理によって、ＩＢＣレジスタ７６の値を設定することによりチャネル装置３２とＩＯ装置５との間の一回のデータ転送量が決定され、またＣＤＦ信号によってチェインデータフラグ値が決定される。そしてこれにより、チャネル装置３２とＩＯ装置５との間のデータ転送が開始される。そして転送されたデータ量に基づいてＩＢＣレジスタの値が減算されてゆく。
【００７１】
ＩＢＣレジスタ７６は、チャネル装置３２とＩＯ装置５の間のデータ転送での残りバイトカウントを示しており、ステップＳ５、Ｓ６で、ＩＢＣレジスタ７６の値とＣＤＦ信号を決定した後、ステップＳ８において、チェインデータ制御部６３は、ＩＢＣレジスタ７６の値をチェックし、その値が“０”になるのを待つ（ステップＳ８、Ｎｏ）。
【００７２】
そしてＩＢＣレジスタ７６の値が“０”になったなら（ステップＳ８、Ｙｅｓ）、次にチェインデータ制御部６３は、ステップＳ９としてＣＭＤレジスタ７２の出力ＷＴをチェックし、命令がＲｅａｄコマンドがＷｒｉｔｅコマンドかをチェックし、Ｒｅａｄコマン
ドのときは（ステップＳ９、Ｎｏ）、ステップＳ１０としてＢＢＣレジスタ７１の値からデータバッファ部６５に十分な空きがあるかどうかをチェックし、空きが出来るまで待つ（ステップＳ１０、Ｎｏ）。そして空きができればステップＳ１１に処理を移す。
【００７３】
またステップＳ９において命令がＷｒｉｔｅコマンドであったなら（ステップＳ９、Ｙｅｓ）、Ｗｒｉｔｅコマンドの場合は、そのコマンドでＩＯ装置５へ転送すべきデータがないのでデータバッファ部６５の空きを確認する必要はなくステップＳ１０をスキップしてステップＳ１１に処理を移す。
【００７４】
ステップＳ１１では、チェインデータ制御部６３は、ＩＯ転送制御部６６に対してＴＣＭＣＤをオンとする。そして処理をステップＳ３に戻し、更新したコマンドでチャネル装置３２とＩＯ装置５間での転送のデータ量とＣＤＦ値を決定する。以降全てのデータを転送し終え、ＣＤＦ値が“０”にセットされるまで上記ステップＳ３〜Ｓ１０の処理を繰り返す。
【００７５】
この図８に示した処理をチャネル装置３２が行なうことにより、最初に指定される総転送量（ＴＬＮＧ）−最後のバイトカウント（ＬＢＣ）が６４Ｋ以上の場合には、３２Ｋバイトずつに分割してデータチェイン処理を実行して、ＩＯ装置５にデータが転送される。また残りのデータ転送量ＩＤＬ−ＬＢＣが６４Ｋ未満になると、６４Ｋ未満を一括してＩＯ装置５に転送する。そしてこの転送が終了すると、最後にＬａｓｔ  Ｂｙｔｅ  Ｃｏｕｎｔ分のチェインデータの転送を実行する。
【００７６】
このように本実施形態では、メモリ上に小さく分散して記憶されているデータをチャネル装置３２で特定の大きさのデータ単位にしてＩＯ装置へ転送するので、ＩＯインタフェースの待ち時間を軽減させ、転送処理の性能を向上させることが出来る。
【００７７】
以上の実施形態に関し、更に以下の付記を開示する。
（付記１）
演算処理装置と記憶装置を有する情報処理装置に入出力装置を接続し、前記情報処理装置と前記入出力装置間で、第１及び第２のデータを有する連続データを転送するチャネル装置において、
前記記憶装置は、
前記第１のデータの第１の転送情報と前記第２のデータの第２の転送情報を備えたアドレスリストと
前記アドレスリストの先頭アドレス情報と前記連続データの総転送量情報を有するチャネル起動情報を保持し、
前記チャネル装置は、
前記記憶装置と前記入出力装置間で転送されるデータを保持するデータバッファ部と、
前記チャネル起動情報を用いて、前記記憶装置と前記データバッファ部間で、前記連続データの転送を開始する転送制御部と、
前記アドレスリストが備える前記第１の転送情報を用いて、前記記憶装置と前記データバッファ部間で、前記第１のデータを転送するとともに、前記第１のデータの転送が完了した場合に、前記アドレスリストが備える前記第２の転送情報を用いて、前記記憶装置と前記データバッファ部間で、第２のデータを転送する記憶装置転送制御部と、
前記データバッファ部間と前記入出力装置間で、前記連続データを転送する入出力装置転送制御部を有することを特徴とするチャネル装置。
（付記２）
前記第１のデータ転送情報は、
第１のデータの転送開始アドレス情報と第１のデータの転送量情報を有し、
前記第２のデータ転送情報は、
第２のデータの転送開始アドレス情報と第２のデータの転送量情報を有することを特徴とする付記１記載のチャネル装置。
（付記３）
前記記憶装置はさらに、
前記連続データのうち、最後に転送される最終データを指定する最終データ計数情報を保持し、
前記入出力装置転送制御部は、
前記データバッファ部間と前記入出力装置間で、前記第１及び第２のデータの転送情報と前記最終データ計数情報を用いて決定される所定のデータ転送量毎に、前記連続データから前記最終データを除いたデータを分割して転送することを特徴とする付記１又は２記載のチャネル装置。
（付記４）
前記入出力装置転送制御部は、
前記連続データから前記最終データを除いたデータを分割して転送した後、前記データバッファ部間と前記入出力装置間で、前記最終データを転送することを特徴とする付記３記載のチャネル装置。
（付記５）
前記情報処理装置は、
前記アドレスリストとチャネル起動情報と前記最終データ計数情報を、前記演算処理装置に、前記記憶装置へ格納させるドライバ部を有することを特徴とする付記４記載のチャネル装置。
（付記６）
前記入出力装置転送制御部は、前記データバッファ部間と前記入出力装置間で、前記記憶装置と前記バッファ部間の転送におけるデータ単位とは異なるデータ単位で前記連続データを転送することを特徴とする付記１乃至５のいずれか１つに記載のチャネル装置。
（付記７）
演算処理装置と記憶装置を有する情報処理装置と、入出力装置と、前記情報処理装置に前記入出力装置を接続し、前記情報処理装置と前記入出力装置間で、第１及び第２のデータを有する連続データを転送するチャネル装置を有する情報処理システムにおいて、
前記記憶装置は、
前記第１のデータの第１の転送情報と前記第２のデータの第２の転送情報を備えたアドレスリストと
前記アドレスリストの先頭アドレス情報と前記連続データの総転送量情報を有するチャネル起動情報を保持し、
前記チャネル装置は、
前記記憶装置と前記入出力装置間で転送されるデータを保持するデータバッファ部と、
前記チャネル起動情報を用いて、前記記憶装置と前記データバッファ部間で、前記連続データの転送を開始する転送制御部と、
前記アドレスリストが備える前記第１の転送情報を用いて、前記記憶装置と前記データバッファ部間で、前記第１のデータを転送するとともに、前記第１のデータの転送が完了した場合に、前記アドレスリストが備える前記第２の転送情報を用いて、前記記憶装置と前記データバッファ部間で、第２のデータを転送する記憶装置転送制御部と、
前記データバッファ部間と前記入出力装置間で、前記連続データを転送する入出力装置転送制御部を有することを特徴とする情報処理システム。
（付記８）
前記第１のデータ転送情報は、
第１のデータの転送開始アドレス情報と第１のデータの転送量情報を有し、
前記第２のデータ転送情報は、
第２のデータの転送開始アドレス情報と第２のデータの転送量情報を有することを特徴とする付記７記載の情報処理システム。
（付記９）
前記記憶装置はさらに、
前記連続データのうち、最後に転送される最終データを指定する最終データ計数情報を保持し、
前記入出力装置転送制御部は、
前記データバッファ部間と前記入出力装置間で、前記第１及び第２のデータの転送情報と前記最終データ計数情報を用いて決定される所定のデータ転送量毎に、前記連続データから前記最終データを除いたデータを分割して転送することを特徴とする付記７又は８記載の情報処理システム。
（付記１０）
前記入出力装置転送制御部は、
前記連続データから前記最終データを除いたデータを分割して転送した後、前記データバッファ部間と前記入出力装置間で、前記最終データを転送することを特徴とする付記９記載の情報処理システム。
（付記１１）
前記情報処理装置は、
前記アドレスリストとチャネル起動情報と前記最終データ計数情報を、前記演算処理装置に、前記記憶装置へ格納させるドライバ部を有することを特徴とする付記１０記載の情報処理システム。
（付記１２）
演算処理装置と記憶装置を有する情報処理装置に入出力装置を接続し、前記情報処理装置と前記入出力装置間で、第１及び第２のデータを有する連続データを転送するチャネル装置のデータ転送方法において、
前記演算処理装置が、前記記憶装置に、前記第１のデータの第１の転送情報と前記第２のデータの第２の転送情報を備えたアドレスリストを保持するステップと、
前記演算処理装置が、前記記憶装置に、前記アドレスリストの先頭アドレス情報と前記連続データの総転送量情報を有するチャネル起動情報を保持するステップと、
前記チャネル装置が有するデータバッファ部が、前記記憶装置と前記入出力装置間で転送されるデータを保持するステップと、
前記チャネル装置が有する転送制御部が、前記チャネル起動情報を用いて、前記記憶装置と前記データバッファ部間で、前記連続データの転送を開始するステップと、
前記チャネル装置が有する記憶装置転送制御部が、前記アドレスリストが備える前記第１の転送情報を用いて、前記記憶装置と前記データバッファ部間で、前記第１のデータを転送するとともに、前記第１のデータの転送が完了した場合に、前記アドレスリストが備える前記第２の転送情報を用いて、前記記憶装置と前記データバッファ部間で、第２のデータを転送するステップと、
前記チャネル装置が有する入出力装置転送制御部が、前記データバッファ部間と前記入出力装置間で、前記連続データを転送するステップを有することを特徴とするデータ転送方法。
（付記１３）
前記第１のデータ転送情報は、
第１のデータの転送開始アドレス情報と第１のデータの転送量情報を有し、
前記第２のデータ転送情報は、
第２のデータの転送開始アドレス情報と第２のデータの転送量情報を有することを特徴とする付記１２記載のデータ転送方法。
（付記１４）
前記記憶装置はさらに、
前記連続データのうち、最後に転送される最終データを指定する最終データ計数情報を保持し、
前記入出力装置転送制御部は、
前記データバッファ部間と前記入出力装置間で、前記第１及び第２のデータの転送情報と前記最終データ計数情報を用いて決定される所定のデータ転送量毎に、前記連続データから前記最終データを除いたデータを分割して転送することを特徴とする付記１２又は１３記載のデータ転送方法。
（付記１５）
前記入出力装置転送制御部は、
前記連続データから前記最終データを除いたデータを分割して転送した後、前記データバッファ部間と前記入出力装置間で、前記最終データを転送することを特徴とする付記１４記載のデータ転送方法。
【図面の簡単な説明】
【００７８】
【図１】本実施形態における情報処理システムの構成を示す図である。
【図２】本実施形態の情報処理システムを簡略化して示した概略図である。
【図３】本実施形態におけるチャネル装置の構成例を示す図である。
【図４】チェインデータ処理によってデータを転送する、本実施形態の転送方式を示す図である。
【図５】最後にＩＯ装置に転送するチェインデータの区切りを明確にして転送する場合の転送方式を示す図である。
【図６】最後にＩＯ装置に転送するチェインデータ以外のデータが、一度で転送できなかった場合を示す図である。
【図７】本実施形態のチェインデータ制御部の構成を他のデータ転送制御部の構成を含めて示すブロック図である。
【図８】データ転送時のチャネル装置の動作処理を示すフローチャートである。
【図９】チェインデータ処理によってデータを転送する、従来技術のチャネル装置内の転送方式を示す図である。
【図１０】従来のチェインデータ処理を実現するチャネル装置の構成例を示す図である。
【符号の説明】
【００７９】
１    情報処理装置
２    システムボード
３    ＩＯユニット
４    システムバス
５    ＩＯ装置
２１    ＣＰＵ
２２    メモリ
２３    ドライバ
３１    ハードディスクドライブ
３２    チャネル装置
４１    システム制御
５１    ＰＣＩバス制御部
５２    チャネル制御部
５３    データ転送制御部
５４    ＩＯ制御部
６１    ＤＬＷ制御部
６２    転送制御部
６３    チェインデータ制御部
６４    メモリ転送制御部
６５    データバッファ部
６６    ＩＯ転送制御部
【図２】
0005226341.tif 000002
【図３】
0005226341.tif 000003
【図４】
0005226341.tif 000004
【図５】
0005226341.tif 000005
【図６】
0005226341.tif 000006
【図７】
0005226341.tif 000007
【図９】
0005226341.tif 000008
【図１０】
0005226341.tif 000009
【図１】
0005226341.tif 000010
【図８】
0005226341.tif 000011