(57)【要約】  データ転送制御装置１０６１は、データ転送の終了が認識されるとローカルリードポインタ保持部５００７が保持するローカルリードポインタ（第１のローカルリードポインタ）ＲＰｌ１が示すディスクリプタＤ３０１０ａの読出し順序が、他のデータ転送制御装置１０６２，１０６３が保持するローカルリードポインタ（第２のローカルリードポインタ）ＲＰｌ２，ＲＰｌ３が示すディスクリプタＤ３０１０ｂ，Ｄ３０１０ｃの読み出し順序よりも前方であれば、グローバルリードポインタＲＰｇの値をローカルリードポインタＲＰｌ１の値で更新するリードポインタ更新部５００４を備える。
2011155096.tif 000002
【特許請求の範囲】
【請求項１】
所定の読み出し順序で読み出される複数の転送制御情報と所定の読み出し順序を管理する管理情報とを保持する転送制御情報管理手段から１つの転送制御情報を読み出し、当該転送制御情報に基づいて複数のデータ転送チャネルのいずれか１つで行われるデータ転送を制御するデータ転送制御装置であって、
前記転送制御情報管理手段から前記転送制御情報を読み出す転送制御情報読出手段と、
前記転送制御情報読出手段により読み出された前記転送制御情報の読み出し順序を示す順序情報を保持する順序情報保持手段と、
前記転送制御情報に基づいたデータ転送が終了したことを認識する転送終了認識手段と、
他のデータ転送制御装置それぞれが保持する順序情報を他のデータ転送制御装置から取得する順序情報取得手段と、
自らが保持する順序情報が示す読み出し順序と、他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序との前後関係を判別する前後関係判別手段と、
前記転送終了認識手段により前記データ転送が終了したことが認識され、且つ前記前後関係判別手段により前記自らが保持する順序情報が示す読出し順序が前記他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序よりも前方と判別されると、前記管理情報を更新する管理情報更新手段と
を備えることを特徴とするデータ転送制御装置。
【請求項２】
前記管理情報は、前記自らが保持する順序情報および前記他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序の中で最も前方の読み出し順序よりも前方の読み出し順序を示す実行済み順序情報を含んで構成され、
前記管理情報更新手段は、前記前後関係判別手段により前記自らが保持する順序情報が示す読出し順序が前記他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序よりも前方と判別されると、前記自らが保持する順序情報を用いて前記実行済み順序情報を更新する
ことを特徴とする請求項１記載のデータ転送制御装置。
【請求項３】
前記管理情報更新手段は、前記前後関係判別手段により前記自らが保持する順序情報が示す読み出し順序が前記他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序よりも前方ではないと判別されると、前記実行済み順序情報を前記自らが保持する順序情報を用いて更新しないこと
を特徴とする請求項２に記載のデータ転送制御装置。
【請求項４】
前記自らが保持する順序情報および前記他のデータ転送制御装置それぞれが保持する順序情報の中で最後の読み出し順序を示す最新順序情報を抽出する最新順序情報抽出手段を備え、
前記転送制御情報読出手段は、前記転送終了認識手段により前記データ転送の終了が認識されると、前記転送制御情報管理手段から前記最新順序情報が示す読み出し順序で読み出される前記転送制御情報の次に読み出される前記転送制御情報を取得する
ことを特徴とする請求項２に記載のデータ転送制御装置。
【請求項５】
前記管理情報は、前記転送制御情報管理手段に最後に格納された転送制御情報の読み出し順序を示す最終順序情報を含んで構成され、
前記最終順序情報を取得する最終順序情報取得手段と、
前記最終順序情報と前記最新順序情報抽出手段により抽出される前記最新順序情報とを比較する最終順序比較手段と
を備え、
前記転送制御情報読出手段は、前記最終順序比較手段により前記最終順序情報が示す読み出し順序と前記最新順序情報が示す読み出し順序とが等しいと判定されると、前記転送制御情報管理手段から前記最新順序情報が示す前記転送制御情報の次に読み出される前記転送制御情報を取得する動作を行わない
ことを特徴とする請求項４記載のデータ転送制御装置。
【請求項６】
前記最終順序情報の更新を検出する最終順序情報更新検出手段を備え、
前記転送制御情報読出手段は、前記前後関係判別手段が、前記最新順序情報が示す読み出し順序と前記最終順序情報が示す読み出し順序とが等しいと判別した場合において、前記最終順序情報更新検出手段により前記最終順序情報の更新が検出されると、前記転送制御情報管理手段から前記最新順序情報が示す読み出し順序で読み出される転送制御情報の次に読み出される前記転送制御情報を取得する動作を行う
ことを特徴とする請求項５記載のデータ転送制御装置。
【請求項７】
前記自らが保持する順序情報は、自らが読み出す前記転送制御情報の格納領域のアドレスを示す自らが保持するローカルリードポインタであり、
前記他のデータ転送制御装置それぞれが保持する順序情報は、他のデータ転送制御装置が読み出す前記転送制御情報の格納領域のアドレスを示す他のデータ転送制御装置それぞれが保持するローカルリードポインタであり、
前記管理情報は、前記転送制御情報管理手段に最後に格納された転送制御情報の格納領域のアドレスを示すライトポインタと、前記自らが保持するローカルリードポインタが示すアドレスと前記他のデータ転送制御装置それぞれが保持するローカルリードポインタが示すアドレスの中で最も読み出し順序が前方の前記転送制御情報よりも読み出し順序が前方の前記転送制御情報が格納された格納領域のアドレスを示すグローバルリードポインタとを含んで構成される
ことを特徴とする請求項２記載のデータ転送制御装置。
【請求項８】
前記転送制御情報管理手段は、リングバッファにより構成され、
前記管理情報は、前記ライトポインタの値を更新する際、更新前のライトポインタの値が更新後のライトポインタの値よりも大きいとイネーブル状態に設定され、前記リードポインタを更新する際、更新前のグローバルリードポインタの値が更新後のグローバルリードポインタの値よりも大きいとディセーブル状態に設定されるオーバラップフラグを含んで構成される
ことを特徴とする請求項７記載のデータ転送制御装置。
【請求項９】
前記前後関係判別手段は、前記ライトポインタの値と、前記自らが保持するローカルリードポインタの値および前記他のデータ転送制御装置それぞれが保持するローカルリードポインタの値との大小関係を比較し、前記自らが保持するローカルリードポインタの示すアドレスの格納領域に格納された前記転送制御情報の読み出し順序と、前記他のデータ転送制御装置それぞれが保持するローカルリードポインタが示すアドレスの格納領域に格納された前記転送制御情報の読出し順序との前後関係を判別する
ことを特徴とする請求項８記載のデータ転送制御装置。
【請求項１０】
前記管理情報更新手段は、前記グローバルリードポインタの値を更新する場合、更新前の前記グローバルリードポインタの値が、更新後の前記グローバルリードポインタの値よりも大きいと前記オーバラップフラグをディセーブル状態に設定する
ことを特徴とする請求項８に記載のデータ転送制御装置。
【請求項１１】
前記転送制御情報管理手段は、アドレスが連続した複数の格納領域にアドレスの小さい格納領域から順番に転送制御情報が格納されてなるバッファから構成される
ことを特徴とする請求項７に記載のデータ転送制御装置。
【請求項１２】
前記前後関係判別手段は、前記自らが保持するローカルリードポインタの値が、前記他のデータ転送制御装置が保持するローカルリードポインタの値よりも小さい場合、前記自らが保持するローカルリードポインタが示すアドレスの格納領域に格納された前記転送制御情報の読み出し順序が前記他のデータ転送制御装置それぞれが保持するローカルリードポインタが示すアドレスの格納領域に格納された前記転送制御情報の読み出し順序よりも前方と判別する
ことを特徴とする請求項１１に記載のデータ転送制御装置。
【請求項１３】
前記管理情報更新手段は、前記前後関係判別手段により前記自らが保持するローカルリードポインタが示すアドレスの格納領域に格納された前記転送制御情報の読み出し順序が前記他のデータ転送制御装置それぞれが保持するローカルリードポインタが示すアドレスの格納領域に格納された前記転送制御情報の読出し順序よりも前方と判別されると、前記グローバルリードポインタの値を前記自らが保持するローカルリードポインタの値を用いて更新する
ことを特徴とする請求項１１に記載のデータ転送制御装置。
【請求項１４】
前記最新順序情報抽出手段は、前記自らが保持するローカルリードポインタおよび前記他のデータ転送制御装置それぞれが保持するローカルリードポインタの中から、読み出し順序が最後の転送制御情報が格納された格納領域のアドレスを示す最新リードポインタを抽出するものであって、
所定の閾値と前記最新リードポインタの値とを比較する閾値比較手段を備え、
前記転送制御情報読出手段は、前記閾値比較手段により前記所定の閾値と前記最新リードポインタの値とが等しいと判定されると、前記最新リードポインタの示すアドレスの格納領域に格納された前記転送制御情報の次に読み出される前記転送制御情報を取得する動作を行わない
ことを特徴とする請求項７記載のデータ転送制御装置。
【請求項１５】
前記所定の閾値は、前記グローバルリードポインタの値に対して予め定められた一定の値を加算してなる
ことを特徴とする請求項１４記載のデータ転送制御装置。
【請求項１６】
前記所定の閾値は、前記ライトポインタの値に対して予め定められた一定の値を減算してなる
ことを特徴とする請求項１４記載のデータ転送制御装置。
【請求項１７】
前記転送制御情報は、少なくともデータ転送の転送先アドレスおよび転送するデータのサイズを含む
ことを特徴とする請求項１に記載のデータ転送制御装置。
【請求項１８】
前記転送制御情報読出手段による前記転送制御情報の取得が完了すると転送制御情報取得完了信号を送出する転送制御情報取得完了通知手段を備える
ことを特徴とする請求項１に記載のデータ転送制御装置。
【請求項１９】
前記転送終了認識手段は、前記データ転送が正常終了したか異常終了したかを認識し、
前記転送制御情報読出手段は、前記転送終了認識手段により前記データ転送が正常終了したと認識されると新たに前記転送制御情報を取得する動作を行い、前記転送終了認識手段により前記データ転送が異常終了したと認識されると新たに前記転送制御情報を取得する動作を行わない
ことを特徴とする請求項１記載のデータ転送制御装置。
【請求項２０】
所定の読み出し順序で読み出される複数の転送制御情報と所定の読み出し順序を管理する管理情報とを保持する転送制御情報管理手段から１つの転送制御情報を読み出し、当該転送制御情報に基づいて複数のデータ転送チャネルのいずれか１つで行われるデータ転送を制御するデータ転送制御装置であって、
前記転送制御情報管理手段から転送制御情報を読み出す転送制御情報読出手段と、
前記転送制御情報読出手段が読み出す前記転送制御情報の読み出し順序を示す順序情報を保持する順序情報保持手段と、
前記転送制御情報に基づいたデータ転送が終了したことを認識する転送終了認識手段と、
前記転送制御情報に基づいたデータ転送が終了したか否かを示すデータ転送終了フラグを保持するフラグ保持手段と、
前記転送終了認識手段により前記データ転送の終了が認識されると、前記データ転送終了フラグを更新するフラグ更新手段よりなる
ことを特徴とするデータ転送制御装置。
【請求項２１】
複数のデータ転送チャネルを介して並列に実行される複数のデータ転送のうちいずれか１つのデータ転送を対応する転送制御情報に基づいて制御する複数のデータ転送制御装置に共通に接続され且つ少なくとも１つのデータ転送制御装置に対して当該データ転送制御装置が制御するデータ転送が終了したことを通知するデータ転送終了通知装置であって、
少なくとも１つのデータ転送の終了を検知する転送終了検知手段と、
転送終了検知手段が少なくとも１つのデータ転送の終了を検知すると、対応するデータ転送制御装置に対して所定のタイミングで転送終了通知信号を送出する転送終了通知手段と
を備えることを特徴とするデータ転送終了通知装置。
【請求項２２】
複数の前記データ転送チャネルが、予め優先度が設定されてなり、
前記転送終了検知手段が複数のデータ転送の終了を同時に検知したときに、転送終了通知手段に対して、最も優先度の高い前記データ転送チャネルに対応する前記データ転送制御装置のみに対して前記転送終了通知信号を送出させる優先度判断部を備える
ことを特徴とする請求項２１記載のデータ転送終了通知装置。
【請求項２３】
前記データ転送制御装置から前記転送制御情報の取得が完了したことを認識する転送制御情報取得完了認識手段を備え、
前記転送終了通知手段は、前記転送制御情報取得完了認識手段により一のデータ転送制御装置において前記転送制御情報の取得が完了したことが認識されるまで、他のデータ転送制御装置に対して前記転送終了通知信号を送出しない
ことを特徴とする請求項２１記載のデータ転送終了通知装置。
【請求項２４】
前記転送終了検知手段は、前記データ転送が正常終了したか異常終了したかを検知し、対応する前記データ転送制御装置に対して終了結果通知信号を送出する終了結果検知手段を備える
ことを特徴とする請求項２１に記載のデータ転送終了通知装置。
【請求項２５】
前記終了結果検知手段は、転送されるデータにチェックサムエラーが発生すると、データ転送が異常終了したと検知する
ことを特徴とする請求項２４記載のデータ転送終了通知装置。
【請求項２６】
所定の読み出し順序で読み出される複数の転送制御情報と所定の読み出し順序を管理する管理情報とを保持する転送制御情報管理手段から１つの転送制御情報を読み出し、当該転送制御情報に基づいて複数のデータ転送チャネルのいずれか１つで行われるデータ転送を制御するデータ転送制御用集積回路であって、
前記転送制御情報管理手段から前記転送制御情報を読み出す転送制御情報読出手段と、
前記転送制御情報読出手段が読み出す前記転送制御情報の読み出し順序を示す順序情報を保持する順序情報保持手段と、
前記転送制御情報に基づいたデータ転送が終了したことを認識する転送終了認識手段と、
他のデータ転送制御装置それぞれが保持する第２の順序情報を他のデータ転送制御装置から取得する順序情報取得手段と、
自らが保持する順序情報が示す読み出し順序と、他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序との前後関係を判別する前後関係判別手段と、
前記転送終了認識手段により前記データ転送が終了したことが認識され、且つ前記前後関係判別手段により前記自らが保持する順序情報が示す読出し順序が前記他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序よりも前方と判別されると、前記管理情報を更新する管理情報更新手段と
を備えることを特徴とするデータ転送制御用集積回路。
【請求項２７】
所定の読み出し順序で読み出される複数の転送制御情報と所定の読み出し順序を管理する管理情報とを保持する転送制御情報管理手段から１つの転送制御情報を読み出し、当該転送制御情報に基づいて複数のデータ転送チャネルのいずれか１つで行われるデータ転送を制御するデータ転送制御方法であって、
前記転送制御情報管理手段から前記転送制御情報を読み出す転送制御情報読出ステップと、
前記転送制御情報読出手段が読み出す前記転送制御情報の読み出し順序を示す順序情報を保持する順序情報保持ステップと、
前記転送制御情報に基づいたデータ転送が終了したことを認識する転送終了認識手段と、
他のデータ転送制御装置それぞれが保持する順序情報を他のデータ転送制御装置から取得する順序情報取得ステップと、
自らが保持する順序情報が示す読み出し順序と、他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序との前後関係を判別する前後関係判別ステップと、
前記転送終了認識手段により前記データ転送が終了したことが認識され、且つ前記前後関係判別手段により前記自らが保持する順序情報が示す読出し順序が前記他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序よりも前方と判別されると、前記管理情報を更新する管理情報更新ステップと
を含むことを特徴とするデータ転送制御方法。
【請求項２８】
複数のデータ転送チャネルを介して並列に実行される複数のデータ転送のうちいずれか１つのデータ転送を対応する転送制御情報に基づいて制御する複数のデータ転送制御装置に共通に接続され且つ少なくとも１つのデータ転送制御装置に対して当該データ転送制御装置が制御するデータ転送が終了したことを通知するデータ転送終了通知用集積回路であって、
少なくとも１つのデータ転送の終了を検知する転送終了検知手段と、
前記転送終了検知手段が少なくとも１つのデータ転送の終了を検知すると、対応する前記データ転送制御装置に対して転送終了通知信号を送出する転送終了通知手段と
を備えることを特徴とするデータ転送終了通知用集積回路。
【請求項２９】
複数のデータ転送チャネルを介して並列に実行される複数のデータ転送のうちいずれか１つのデータ転送を対応する転送制御情報に基づいて制御する複数のデータ転送制御装置に共通に接続され且つ少なくとも１つのデータ転送制御装置に対して当該データ転送制御装置が制御するデータ転送が終了したことを通知するデータ転送終了通知方法であって、
少なくとも１つのデータ転送の終了を検知する転送終了検知ステップと、
前記転送終了検知手段が少なくとも１つのデータ転送の終了を検知すると、対応する前記データ転送制御装置に対して転送終了通知信号を送出する転送終了通知ステップと
を含むことを特徴とするデータ転送終了通知方法。
【請求項３０】
所定の読み出し順序で読み出される複数の転送制御情報と所定の読み出し順序を管理する管理情報とを保持する転送制御情報管理手段から１つの転送制御情報を読み出し、当該転送制御情報に基づいて複数のデータ転送チャネルのいずれか１つで行われるデータ転送を制御するデータ転送制御装置と、複数のデータ転送制御装置に共通に接続され且つ少なくとも１つのデータ転送制御装置に対して当該データ転送制御装置が制御するデータ転送が終了したことを通知するデータ転送終了通知装置とから構成されるデータ転送制御システムであって、
前記転送制御情報管理手段から前記転送制御情報を読み出す転送制御情報読出手段と、
前記転送制御情報読出手段が読み出す前記転送制御情報の読み出し順序を示す順序情報を保持する順序情報保持手段と、
前記転送制御情報に基づいたデータ転送が終了したことを認識する転送終了認識手段と、
他のデータ転送制御装置それぞれが保持する順序情報を他のデータ転送制御装置から取得する順序情報取得手段と、
自らが保持する順序情報が示す読み出し順序と、他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序との前後関係を判別する前後関係判別手段と、
前記転送終了認識手段により前記データ転送が終了したことが認識され、且つ前記前後関係判別手段により前記自らが保持する順序情報が示す読出し順序が前記他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序よりも前方と判別されると、前記管理情報を更新する管理情報更新手段と
を有するデータ転送制御装置と、
少なくとも１つのデータ転送の終了を検知する転送終了検知手段と、
前記転送終了検知手段が少なくとも１つのデータ転送の終了を検知すると、対応する前記データ転送制御装置に対して転送終了通知信号を送出する転送終了通知手段と
を有するデータ転送終了通知装置と
を備えることを特徴とするデータ転送制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のデータ転送の制御に関する。
【背景技術】
【０００２】
従来から、ＳＤＸＣやＵＳＢ、ＳＡＴＡ等の高速ＩＯインターフェースと主記憶装置へのとの間で複数のチャネルを用いて並列にＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）転送を行う情報処理装置が提供されている。これにより、ＤＭＡ転送のスループットの低下を抑制している。【０００３】
複数のデータ転送を並列に行う装置として、複数のディスク装置が一定時間毎に交互にデータ転送を行うディクスアレイ装置が提案されている（特許文献１参照）。【０００４】
特許文献１に記載された技術をＤＭＡ転送に適用して、例えば、図２６に示すように、３つのチャネルＣＨ１，ＣＨ２，ＣＨ３が一定時間毎に交互にデータ転送を行う構成とすることで、オーバヘッド（ＤＭＡ設定処理、ＤＭＡ終端処理）の影響を除去し、ＤＭＡ転送のスループットの低下を抑制することができる。【０００５】
ところが、特許文献１に記載された技術を適用したＤＭＡ転送の場合、図２７に示すように、転送されるデータのサイズが転送機会毎に異なると、いずれかのＤＭＡチャネルＣＨ１，ＣＨ２，ＣＨ３で、ＤＭＡ転送期間終了後に待ち時間が発生してしまいスループットが低下するおそれがあった。【０００６】
これに対して、従来から、３つのＤＭＡチャネルＣＨ１，ＣＨ２，ＣＨ３が互いに無関係にＤＭＡ転送を連続して行う構成が提供されている。【０００７】
このような構成として、例えば、図２８に示すように、ＤＭＡコントローラ１０３０が、各ＤＭＡチャネルＣＨ１，ＣＨ２，ＣＨ３毎に、バッファ６０５０に格納されているディスクリプタ（転送制御情報）Ｄ１，Ｄ２，Ｄ３，Ｄ４を読み出してデータ転送を行う構成がある。【０００８】
ここで、バッファ６０５０には、アドレスの小さい格納領域から順番にディスクリプタＤ１，Ｄ２，Ｄ３，Ｄ４，・・・が格納されており、ディスクリプタＤ１，Ｄ２，Ｄ３，Ｄ４，・・・は、リードポインタＲＰの値に従ってアドレスの小さい格納領域に格納されたものから順番に読み出されていく。また、ＤＭＡコントローラ１０３０は、例えば、ディスクリプタＤ３に基づくデータ転送が終了すると、バッファ６０５０のリードポインタＲＰの値をディスクリプタＤ４が格納されている格納領域のアドレス（ｘ０００４）で更新する。次に、ＤＭＡコントローラ１０３０は、リードポインタＲＰが示すアドレスの格納領域に格納されているディスクリプタＤ４を取得してディスクリプタＤ４に基づくデータ転送を開始する。【０００９】
そして、ＣＰＵ１０００は、バッファ６０５０のリードポインタＲＰの値を参照して全てのデータが転送されたか否かを確認する。例えば、図２９に示す場合、ＣＰＵ１０００は、時刻Ｔｄにリードポインタの値がディスクリプタＤ４の格納領域のアドレスに更新されたことをもって、ディスクリプタＤ１乃至Ｄ４に基づくＤＭＡ転送が完了したと認識する。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開平４−２３８５２７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、図３０に示す場合、ＣＰＵ１０００は、時刻Ｔｄにリードポインタの値がディスクリプタＤ４の格納領域のアドレスに更新されたことをもって、ディスクリプタＤ１，Ｄ２，Ｄ３，Ｄ４に基づく全てのＤＭＡ転送が完了したものと認識してしまう。そうすると、ＣＰＵ１０００は、ディスクリプタＤ３に基づくＤＭＡ転送が完了していないにも関わらず、ディスクリプタＤ１，Ｄ２，Ｄ３，Ｄ４全てに基づくＤＭＡ転送が完了したと認識して処理を開始することで、誤動作するおそれがあった。【００１２】
本構成は上記事由に鑑みてなされたものであり、データ転送のスループットの大幅な向上を実現しつつ、複数のデータの転送終了を認識してから当該複数のデータを用いて処理を行う処理装置の誤動作を防止することを目的とする。
【課題を解決するための手段】
【００１３】
上記課題を解決するために、本発明に係るデータ転送制御装置は、所定の読み出し順序で読み出される複数の転送制御情報と所定の読み出し順序を管理する管理情報とを保持する転送制御情報管理手段から１つの転送制御情報を読み出し、当該転送制御情報に基づいて複数のデータ転送チャネルのいずれか１つで行われるデータ転送を制御するデータ転送制御装置であって、転送制御情報管理手段から転送制御情報を読み出す転送制御情報読出手段と、転送制御情報読出手段により読み出された転送制御情報の読み出し順序を示す順序情報を保持する順序情報保持手段と、転送制御情報に基づいたデータ転送が終了したことを認識する転送終了認識手段と、他のデータ転送制御装置それぞれが保持する順序情報を他のデータ転送制御装置から取得する順序情報取得手段と、自らが保持する順序情報が示す読み出し順序と他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序との前後関係を判別する前後関係判別手段と、転送終了認識手段によりデータ転送が終了したことが認識され、且つ前後関係判別手段により自らが保持する順序情報が示す読出し順序が他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序よりも前方と判別されると、管理情報を更新する管理情報更新手段とを備える。
【発明の効果】
【００１４】
上記構成によれば、転送終了認識手段によりデータ転送が終了したことが認識され、且つ前後関係判別手段により自らの保持する順序情報が示す読出し順序が他のデータ転送装置それぞれが保持する順序情報が示す読み出し順序よりも前方と判別されると、管理情報を更新する管理情報更新手段を備えることにより、各データ転送制御装置が、他のデータ転送制御装置とは独立して順次データ転送を実行でき、転送待ち時間の発生を防止しながらも、管理情報に基づいて所定の読み出し順序を参照して複数のデータの転送が終了したか否かを認識できるので、データ転送のスループットの大幅な向上を実現するとともに、複数のデータ全ての転送終了を認識してから当該複数のデータを用いて処理を行う処理装置の誤動作を防止することができる。【００１５】
また、本発明に係るデータ転送制御装置は、管理情報が、自らが保持する順序情報および他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序の中で最も前方の読み出し順序よりも前方の読み出し順序を示す実行済み順序情報を含んで構成され、管理情報更新手段が、前後関係判別手段により自らが保持する順序情報が示す読出し順序が他のデータ転送制御装置が保持する順序情報が示す読み出し順序よりも前方と判別されると、自らが保持する順序情報を用いて実行済み順序情報を更新するものであってもよい。【００１６】
本構成によれば、管理情報が、自らが保持する順序情報および他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序の中で最も前方の読み出し順序よりも前方の読み出し順序を示す実行済み順序情報を含んで構成され、管理情報更新手段が、自らが保持する順序情報を用いて実行済み順序情報を更新することにより、最初から実行済み順序情報が示す読み出し順序までの間の順序で読み出された転送制御情報の中に、まだ実行が終了していないデータ転送に対応する転送制御情報が混在することを防止できるので、最初のデータ転送から実行済み順序情報に対応するデータ転送まで確実に完了していることが保証されるので、実行済み順序情報のみに基づいて処理を行う処理装置の誤動作を防止することができる。【００１７】
また、本発明に係るデータ転送制御装置は、管理情報更新手段が、前後関係判別手段により自らが保持する順序情報が示す読み出し順序が他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序よりも前方ではないと判別されると、実行済み順序情報を自らが保持する順序情報を用いて更新しないものであってもよい。【００１８】
本構成によれば、実行済み順序情報が、まだ実行完了されていない転送制御情報に対応する順序情報を追い越してしまうことを防止できる。【００１９】
また、本発明に係るデータ転送制御装置は、自らが保持する順序情報および他のデータ転送制御装置それぞれが保持する順序情報の中で最後の読み出し順序を示す最新順序情報を抽出する最新順序情報抽出手段を備え、転送制御情報読出手段が、転送終了認識手段によりデータ転送の終了が認識されると、転送制御情報管理手段から最新順序情報が示す読み出し順序で読み出される転送制御情報の次に読み出される転送制御情報を取得するものであってもよい。【００２０】
本構成によれば、自らが保持する自らが保持する順序情報および他のデータ転送制御装置から取得する他のデータ転送制御装置それぞれが保持する順序情報の中で最後の読み出し順序を示す順序情報である最新順序情報を抽出する最新順序情報抽出手段を備え、転送制御情報読出手段が、転送終了認識手段によりデータ転送の終了が認識されると、転送制御情報管理手段から最新順序情報が示す読み出し順序で読み出される転送制御情報の次に読み出される転送制御情報を取得することにより、転送制御情報読出手段が、実行が終了したデータ転送に対応した転送制御情報を誤って読み出すことを防止することができるので、無駄なデータ転送の発生を防止することができる。【００２１】
また、本発明に係るデータ転送制御装置は、管理情報が、転送制御情報管理手段に最後に格納された転送制御情報の読み出し順序を示す最終順序情報を含んで構成され、最終順序情報を取得する最終順序情報取得手段と、最終順序情報と最新順序情報抽出手段により抽出される最新順序情報とを比較する最終順序比較手段とを備え、転送制御情報読出手段が、最終順序比較手段により最終順序情報が示す読み出し順序と最新順序情報が示す読み出し順序とが等しいと判定されると、転送制御情報管理手段から最新順序情報が示す転送制御情報の次に読み出される転送制御情報を取得する動作を行わないものであってもよい。【００２２】
本構成によれば、転送制御情報読出手段が、新たな転送制御情報が転送制御情報管理手段に格納されていないにも関わらず、転送制御情報を読み出す動作を行うことを防止することができるので、無駄な処理や誤った転送制御情報を取得してしまうことを防止することができる。【００２３】
また、本発明に係るデータ転送制御装置は、最終順序情報の更新を検出する最終順序情報更新検出手段を備え、転送制御情報読出手段は、前後関係判別手段が最新順序情報が示す読み出し順序と最終順序情報が示す読み出し順序とが等しいと判別した場合において、最終順序情報更新検出手段により最終順序情報の更新が検出されると、転送制御情報管理手段から最新順序情報が示す読み出し順序で読み出される転送制御情報の次に読み出される前記転送制御情報を取得する動作を行うものであってもよい。【００２４】
本構成によれば、転送制御情報読出手段は、前後関係判別手段が最新順序情報が示す読み出し順序と最終順序情報が示す読み出し順序とが等しいと判別した場合において、最終順序情報更新検出手段により最終順序情報の更新が検出されると、転送制御情報管理手段から最新順序情報が示す読み出し順序で読み出される転送制御情報の次に読み出される前記転送制御情報を取得する動作を行うことにより、転送制御情報読出手段が、新たな転送制御情報が格納されると直ちに当該転送制御情報を取得する動作を行うことができるので、データ転送の効率を向上させることができる。【００２５】
また、本発明に係るデータ転送制御装置は、自らが保持する順序情報が、自らが読み出す転送制御情報の格納領域のアドレスを示し自らが保持するローカルリードポインタであり、他のデータ転送制御装置それぞれが保持する順序情報が、他のデータ転送制御装置が読み出す転送制御情報の格納領域のアドレスを示し他のデータ転送制御装置それぞれが保持するローカルリードポインタであり、管理情報が、転送制御情報管理手段に最後に格納された転送制御情報の格納領域のアドレスを示すライトポインタと、自らの保持するローカルリードポインタが示すアドレスと他のデータ転送制御装置それぞれが保持するローカルリードポインタが示すアドレスの中で最も前方のアドレスの転送制御情報よりも読み出し順序が前方の転送制御情報が格納された格納領域のアドレスを示すグローバルリードポインタとを含んで構成されるものであってもよい。【００２６】
本構成によれば、前後関係判別手段が、自らの保持するローカルリードポインタの値と、他のデータ転送制御装置それぞれが保持するローカルリードポインタの値に従って転送制御情報の読み出し順序の前後関係を判断することができる。【００２７】
また、本発明に係るデータ転送制御装置は、転送制御情報管理手段が、リングバッファにより構成され、管理情報は、ライトポインタの値を更新する際、更新前のライトポインタの値が更新後のライトポインタの値よりも大きいとイネーブル状態に設定され、リードポインタを更新する際、更新前のグローバルリードポインタの値が更新後のグローバルリードポインタの値よりも大きいとディセーブル状態に設定されるオーバラップフラグを含んで構成されるものであってもよい。【００２８】
また、本発明に係るデータ転送制御装置は、前後関係判別手段は、前後関係判別手段は、ライトポインタの値と、自らが保持するローカルリードポインタの値および他のデータ転送制御装置それぞれが保持するローカルリードポインタの値との大小関係を比較し、自らが保持するローカルリードポインタの示すアドレスの格納領域に格納された転送制御情報の読み出し順序と、他のデータ転送制御装置それぞれが保持するローカルリードポインタが示すアドレスの格納領域に格納された転送制御情報の読出し順序との前後関係を判別するものであってもよい。【００２９】
本構成によれば、転送制御情報管理手段として、リングバッファを使用することができる。また、自らの保持するローカルリードポインタが示す読み出し順序と、他のデータ転送制御装置それぞれが保持するローカルリードポインタが示す読み出し順序との前後関係の判別を適切に行うことができる。【００３０】
また、本発明に係るデータ転送制御装置は、管理情報更新手段が、グローバルリードポインタの値を更新する場合、更新前のグローバルリードポインタの値が、更新後のグローバルリードポインタの値よりも大きいとオーバラップフラグをディセーブル状態に設定するものであってもよい。【００３１】
本構成によれば、転送制御情報管理手段として、リングバッファを使用することができる。また、リングバッファ上でのグローバルリードポインタの更新を適切に行うことができる。【００３２】
また、本発明に係るデータ転送制御装置は、転送制御情報管理手段が、アドレスが連続した複数の格納領域にアドレスの小さい格納領域から順番に転送制御情報が格納されてなるバッファから構成されるものであってもよい。【００３３】
本構成によれば、転送制御情報管理手段の構成を簡単にすることができる。【００３４】
また、本発明に係るデータ転送制御装置は、前後関係判別手段が、自らの保持するローカルリードポインタの値が、他のデータ転送制御装置それぞれが保持するローカルリードポインタの値よりも小さい場合、自らの保持するローカルリードポインタが示すアドレスの格納領域に格納された転送制御情報の読み出し順序が他のデータ転送制御装置それぞれが保持するローカルリードポインタが示すアドレスの格納領域に格納された転送制御情報の読み出し順序よりも前方と判別するものであってもよい。【００３５】
本構成によれば、前後関係判別手段で行われる処理を簡素化することができる。【００３６】
また、本発明に係るデータ転送制御装置は、管理情報更新手段が、前後関係判別手段により自らの保持するローカルリードポインタが示すアドレスの格納領域に格納された転送制御情報の読み出し順序が他のデータ転送制御装置それぞれが保持するローカルリードポインタが示すアドレスの格納領域に格納された転送制御情報の読出し順序よりも前方と判別されると、グローバルリードポインタの値を自らの保持するローカルリードポインタの値を用いて更新するものであってもよい。【００３７】
本構成によれば、バッファ上でのグローバルリードポインタを更新を適切に行うことができる。【００３８】
また、本発明に係るデータ転送制御装置は、最新順序情報抽出手段が、自らの保持するローカルリードポインタおよび他のデータ転送制御装置それぞれが保持するローカルリードポインタの中から、読み出し順序が最後の転送制御情報が格納された格納領域のアドレスを示す最新リードポインタを抽出するものであって、所定の閾値と最新リードポインタの値とを比較する閾値比較手段を備え、転送制御情報読出手段が、閾値比較手段により所定の閾値と最新リードポインタの値とが等しいと判定されると、最新リードポインタの示すアドレスの格納領域に格納された転送制御情報の次に読み出される転送制御情報を取得する動作を行わないものであってもよい。【００３９】
本構成によれば、最新リードポインタの示すアドレスがライトポインタの示すアドレスに一致するまで転送制御情報が読み出されるのを待つまでもなく、所定の閾値に到達した時点で、データ転送を停止することができる。【００４０】
また、本発明のデータ転送制御装置は、所定の閾値が、グローバルリードポインタの値に対して予め定められた一定の値を加算してなるものであってもよい。【００４１】
本構成によれば、所定の閾値に等しい数の転送制御情報が読み出されるごとにデータ転送を停止することができる。【００４２】
また、本発明のデータ転送制御装置は、所定の閾値が、ライトポインタの値に対して予め定められた一定の値を減算してなるものであってもよい。【００４３】
本構成によれば、未実行の転送制御情報数が所定の閾値に到達した時点でデータ転送を停止することができる。【００４４】
また、本発明に係るデータ転送制御装置は、転送制御情報が、少なくともデータ転送の転送先アドレスおよび転送するデータのサイズを含むものであってもよい。【００４５】
本構成によれば、データ転送先のアドレス指定してデータ転送を行うことができるので、転送先をより細かく指定することができる。【００４６】
また、本発明に係るデータ転送制御装置は、転送制御情報読出手段による転送制御情報の取得が完了すると転送制御情報取得完了信号を送出する転送制御情報取得完了通知手段を備えるものであってもよい。【００４７】
本構成によれば、転送制御情報読出手段が転送制御情報を取得したことを確認してからデータ転送を行うことができるので、誤動作を抑制することができる。【００４８】
また、本発明に係るデータ転送制御装置は、転送終了認識手段が、データ転送が正常終了したか異常終了したかを認識し、転送制御情報読出手段が、転送終了認識手段によりデータ転送が正常終了したと認識されると新たに転送制御情報を取得する動作を行い、転送終了認識手段によりデータ転送が異常終了したと認識されると新たに転送制御情報を取得する動作を行わないものであってもよい。【００４９】
本構成によれば、データ転送が異常終了した場合であって、当該データ転送に対応する転送制御情報に基づくデータ転送を再度行う必要が生じた場合に対応することができる。【００５０】
また、本発明に係るデータ転送制御装置は、所定の読み出し順序で読み出される複数の転送制御情報と所定の読み出し順序を管理する管理情報とを保持する転送制御情報管理手段から１つの転送制御情報を読み出し、当該転送制御情報に基づいて複数のデータ転送チャネルを介した複数のデータ転送のいずれか１つを制御するデータ転送制御装置であって、転送制御情報管理手段から転送制御情報を読み出す転送制御情報読出手段と、転送制御情報読出手段が読み出す転送制御情報の読み出し順序を示す順序情報を保持する順序情報保持手段と、転送制御情報に基づいたデータ転送が終了したことを認識する転送終了認識手段と、転送制御情報に基づいたデータ転送が終了したか否かを示すデータ転送終了フラグを保持するフラグ保持手段と、転送終了認識手段によりデータ転送の終了が認識されると、データ転送終了フラグを更新するフラグ更新手段を備えるものであってもよい。【００５１】
本構成によれば、転送制御情報に基づいたデータ転送が終了したか否かを示すデータ転送終了フラグを保持するフラグ保持手段と、転送終了認識手段によりデータ転送の終了が認識されると、データ転送終了フラグを更新するフラグ更新手段を備えることにより、データ転送終了フラグを確認すれば、実行が終了したデータ転送を把握することができる。【００５２】
また、本発明に係るデータ転送終了通知装置は、複数のデータ転送チャネルを介して並列に実行される複数のデータ転送のうちいずれか１つのデータ転送を対応する転送制御情報に基づいて制御する複数のデータ転送制御装置に共通に接続され且つ少なくとも１つのデータ転送制御装置に対して当該データ転送制御装置が制御するデータ転送が終了したことを通知するデータ転送終了通知装置であって、少なくとも１つのデータ転送の終了を検知する転送終了検知手段と、転送終了検知手段が少なくとも１つのデータ転送の終了を検知すると、対応するデータ転送制御装置に対して所定のタイミングで転送終了通知信号を送出する転送終了通知手段とを備えるものであってもよい。【００５３】
本構成によれば、転送終了検知手段が少なくとも１つのデータ転送の終了を検知すると、対応するデータ転送制御装置に対して所定のタイミングで転送終了通知信号を送出することにより、転送終了通知信号を送出するタイミングを適宜設定して、複数のデータ転送制御装置における転送制御情報の取得動作が互いに排他的に行われるようにすることができるので、複数のデータ転送制御装置により競合して１つの転送制御情報を取得する動作が行われることを防止できる。【００５４】
また、本発明に係るデータ転送終了通知装置は、複数のデータ転送チャネルが、予め優先度が設定されてなり、転送終了検知手段が複数のデータ転送の終了を同時に検知したときに、転送終了通知手段に対して、最も優先度の高いデータ転送チャネルに対応するデータ転送制御装置のみに対して転送終了通知信号を送出させる優先度判断部を備えるものであってもよい。【００５５】
本構成によれば、複数のデータ転送チャネルが、予め優先度が設定されてなり、転送終了検知手段が複数のデータ転送の終了を同時に検知したときに、転送終了通知手段に対して、最も優先度の高いデータ転送チャネルに対応するデータ転送制御装置に対して転送終了通知信号を送出させる優先度判断部を備えることにより、複数のデータ転送制御装置における転送制御情報の取得動作が互いに排他的に行われるので、複数のデータ転送制御装置が競合して１つの転送制御情報を取得する動作を行うことを防止できる。【００５６】
また、本発明に係るデータ転送終了通知装置は、データ転送制御装置から転送制御情報の取得が完了したことを認識する転送制御情報取得完了認識手段を備え、転送終了通知手段が、転送制御情報取得完了認識手段により一のデータ転送制御装置において転送制御情報の取得が完了したことが認識されるまで、他のデータ転送制御装置に対して転送終了通知信号を送出しないものであってもよい。【００５７】
本構成によれば、一のデータ転送制御装置における転送制御情報の取得動作中に他のデータ転送制御装置により転送制御情報の取得動作がなされることを防止できるので、複数のデータ転送制御装置による転送制御情報の取得動作が競合することをより確実に防止することができる。【００５８】
また、本発明に係るデータ転送終了通知装置は、転送終了検知手段が、データ転送が正常終了したか異常終了したかを検知し、対応するデータ転送制御装置に対して終了結果通知信号を送出する終了結果検知手段を備えるものであってもよい。【００５９】
本構成によれば、データ転送が異常終了した場合に当該データ転送を再度実行することができる。【００６０】
また、本発明に係るデータ転送終了通知装置は、終了結果検知手段が、転送されるデータにチェックサムエラーが発生すると、データ転送が異常終了したと検知するものであってもよい。【００６１】
本構成によれば、簡単な方法でデータ転送が異常終了したことを検知できる。【００６２】
また、本発明は、所定の読み出し順序で読み出される複数の転送制御情報と所定の読み出し順序を管理する管理情報とを保持する転送制御情報管理手段から１つの転送制御情報を読み出し、当該転送制御情報に基づいて複数のデータ転送チャネルのいずれか１つで行われるデータ転送を制御するデータ転送制御用集積回路であって、転送制御情報管理手段から転送制御情報を読み出す転送制御情報読出手段と、転送制御情報読出手段が読み出す転送制御情報の読み出し順序を示す自らが保持する順序情報を保持する順序情報保持手段と、転送制御情報に基づいたデータ転送が終了したことを認識する転送終了認識手段と、他のデータ転送制御装置それぞれが保持する他のデータ転送制御装置それぞれが保持する順序情報を他のデータ転送制御装置から取得する順序情報取得手段と、自らが保持する順序情報が示す読み出し順序と、他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序との前後関係を判別する前後関係判別手段と、転送終了認識手段によりデータ転送が終了したことが認識され、且つ前後関係判別手段により自らが保持する順序情報が示す読出し順序が他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序よりも前方と判別されると、管理情報を更新する管理情報更新手段とを備えるデータ転送制御用集積回路でもよい。【００６３】
本構成によれば、小型化を図ることができる。【００６４】
また、本発明は、所定の読み出し順序で読み出される複数の転送制御情報と所定の読み出し順序を管理する管理情報とを保持する転送制御情報管理手段から１つの転送制御情報を読み出し、当該転送制御情報に基づいて複数のデータ転送チャネルのいずれか１つで行われるデータ転送を制御するデータ転送制御方法であって、転送制御情報管理手段から転送制御情報を読み出す転送制御情報読出ステップと、転送制御情報読出手段が読み出す転送制御情報の読み出し順序を示す自らが保持する順序情報を保持する順序情報保持ステップと、転送制御情報に基づいたデータ転送が終了したことを認識する転送終了認識手段と、他のデータ転送制御装置それぞれが保持する他のデータ転送制御装置それぞれが保持する順序情報を他のデータ転送制御装置から取得する順序情報取得ステップと、自らが保持する順序情報が示す読み出し順序と、他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序との前後関係を判別する前後関係判別ステップと、転送終了認識手段によりデータ転送が終了したことが認識され、且つ前後関係判別手段により自らが保持する順序情報が示す読出し順序が他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序よりも前方と判別されると、管理情報を更新する管理情報更新ステップとを含むことを特徴とするデータ転送制御方法であってもよい。【００６５】
本構成によれば、各データ転送制御装置が、他のデータ転送制御装置とは独立して順次データ転送を実行でき、転送待ち時間の発生を防止しながらも、管理情報に基づいて所定の読み出し順序を参照して複数のデータ全ての転送が終了したか否かを認識できるので、データ転送のスループットの大幅な向上を実現するとともに、複数のデータ全ての転送終了を認識してから当該複数のデータを用いて処理を行う処理装置の誤動作を防止することができる。【００６６】
また、本発明は、複数のデータ転送チャネルを介して並列に実行される複数のデータ転送のうちいずれか１つのデータ転送を対応する転送制御情報に基づいて制御する複数のデータ転送制御装置に共通に接続され且つ少なくとも１つのデータ転送制御装置に対して当該データ転送制御装置が制御するデータ転送が終了したことを通知するデータ転送終了通知用集積回路であって、少なくとも１つのデータ転送の終了を検知する転送終了検知手段と、転送終了検知手段が少なくとも１つのデータ転送の終了を検知すると、対応するデータ転送制御装置に対して転送終了通知信号を送出する転送終了通知手段とを備えるデータ転送終了通知用集積回路でもよい。【００６７】
本構成によれば、小型化を図ることができる。【００６８】
また、本発明は、複数のデータ転送チャネルを介して並列に実行される複数のデータ転送のうちいずれか１つのデータ転送を対応する転送制御情報に基づいて制御する複数のデータ転送制御装置に共通に接続され且つ少なくとも１つのデータ転送制御装置に対して当該データ転送制御装置が制御するデータ転送が終了したことを通知するデータ転送終了通知方法であって、少なくとも１つのデータ転送の終了を検知する転送終了検知ステップと、転送終了検知手段が少なくとも１つのデータ転送の終了を検知すると、対応するデータ転送制御装置に対して転送終了通知信号を送出する転送終了通知ステップとを含むデータ転送終了通知方法であってもよい。【００６９】
本構成によれば、転送終了通知信号を送出するタイミングを適宜設定して、複数のデータ転送制御装置における転送制御情報の取得動作が互いに排他的に行われるようにすることができるので、複数のデータ転送制御装置により競合して１つの転送制御情報を取得する動作が行われることを防止できる。【００７０】
また、本発明は、所定の読み出し順序で読み出される複数の転送制御情報と所定の読み出し順序を管理する管理情報とを保持する転送制御情報管理手段から１つの転送制御情報を読み出し、当該転送制御情報に基づいて複数のデータ転送チャネルのいずれか１つで行われるデータ転送を制御するデータ転送制御装置と、複数のデータ転送制御装置に共通に接続され且つ少なくとも１つのデータ転送制御装置に対して当該データ転送制御装置が制御するデータ転送が終了したことを通知するデータ転送終了通知装置とから構成されるデータ転送制御システムであって、転送制御情報の読み出し順序を示す自らが保持する順序情報を保持する順序情報保持手段と、転送制御情報管理手段から自らが保持する順序情報が示す読み出し順序で転送制御情報を読み出す転送制御情報読出手段と、転送制御情報に基づいたデータ転送が終了したことを認識する転送終了認識手段と、他のデータ転送制御装置それぞれが保持する他のデータ転送制御装置それぞれが保持する順序情報を他のデータ転送制御装置から取得する順序情報取得手段と、自らが保持する順序情報が示す読み出し順序と、他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序との前後関係を判別する前後関係判別手段と、転送終了認識手段によりデータ転送が終了したことが認識され、且つ前後関係判別手段により自らが保持する順序情報が示す読出し順序が他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序よりも前方と判別されると、管理情報を更新する管理情報更新手段とを有するデータ転送制御装置と、少なくとも１つのデータ転送の終了を検知する転送終了検知手段と、転送終了検知手段が少なくとも１つのデータ転送の終了を検知すると、対応するデータ転送制御装置に対して転送終了通知信号を送出する転送終了通知手段とを有するデータ転送終了通知装置とを備えることを特徴とするデータ転送制御システムであってもよい。【００７１】
本構成によれば、各データ転送制御装置が、他のデータ転送制御装置とは独立して順次データ転送を実行でき、転送待ち時間の発生を防止しながらも、管理情報に基づいて所定の読み出し順序を参照して複数のデータ全ての転送が終了したか否かを認識できるので、データ転送のスループットの大幅な向上を実現するとともに、複数のデータ全ての転送終了を認識してから当該複数のデータを用いて処理を行う処理装置の誤動作を防止することができる。また、転送終了通知信号を送出するタイミングを適宜設定して、複数のデータ転送制御装置における転送制御情報の取得動作が互いに排他的に行われるようにすることができるので、複数のデータ転送制御装置により競合して１つの転送制御情報を取得する動作が行われることを防止できる。
【図面の簡単な説明】
【００７２】
【図１】実施の形態１に係るデータ転送制御装置で使用されるディスクリプタの概念図である。
【図２】実施の形態１に係る情報処理システムの構成図である。
【図３】実施の形態１に係るリングバッファの動作説明図である。
【図４】実施の形態１に係るリングバッファの管理情報の説明図である。
【図５】実施の形態１に係るライトポインタおよびオーバーラップフラグの動作説明図である。
【図６】実施の形態１に係るグローバルリードポインタおよびオーバーラップフラグの動作説明図である。
【図７】実施の形態１に係るデータ転送制御装置の構成図である。
【図８】実施の形態１に係る前後関係判別部の動作説明図である。
【図９】実施の形態１に係るローカルリードポインタおよびグローバルリードポインタの動作を説明する図である。
【図１０】実施の形態１に係るローカルリードポインタおよびグローバルリードポインタの動作を説明する図である。
【図１１】実施の形態１に係る最新リードポインタ抽出部の動作説明図である。
【図１２】実施の形態１に係るディスクリプタ取得部の動作説明図である。
【図１３】実施の形態１に係るデータ転送終了通知装置の構成図である。
【図１４】実施の形態１に係る情報処理システムの動作を示すシーケンス図である。
【図１５】実施の形態１に係るリングバッファの管理情報のタイムチャートである。
【図１６】実施の形態１に係るリングバッファの管理情報の変化を説明した図である。
【図１７】実施の形態１に係るデータ転送制御装置の動作に関するフローチャートである。
【図１８】実施の形態１に係るデータ転送終了通知装置の動作に関するフローチャートである。
【図１９】実施の形態２に係る情報処理システムの構成図である。
【図２０】実施の形態２に係るデータ転送制御装置の構成図である。
【図２１】実施の形態２に係る情報処理システムの動作を示すシーケンス図である。
【図２２】変形例に係る情報処理システムの構成図である。
【図２３】変形例に係るデータ転送終了通知装置の構成図である。
【図２４】変形例に係るバッファの構成図である。
【図２５】変形例に係るＬＳＩをセット製品へ展開した例のイメージ図である。
【図２６】従来例のＤＭＡ転送のタイムチャートである。
【図２７】従来例のＤＭＡ転送のタイムチャートである。
【図２８】他の従来例の情報処理システムの一部の構成図である。
【図２９】他の従来例のＤＭＡ転送のタイムチャートである。
【図３０】他の従来例のＤＭＡ転送のタイムチャートである。
【発明を実施するための形態】
【００７３】
＜実施の形態１＞
＜１＞データ
本実施の形態に係るデータ転送制御装置１０６１，１０６２，１０６３は、転送制御情報としてディスクリプタＤ３０１０を用いる。ディスクリプタＤ３０１０は、図１に示すように、転送元アドレスＤ３０１１、転送先アドレスＤ３０１２および転送するデータのサイズＤ３０１３より構成されている。転送元アドレスＤ３０１１および転送先アドレスＤ３０１２には、後述のＩＯバッファ１０７４または主記憶装置１０１０上のアドレスが設定される。転送するデータのサイズＤ３０１３には、バイト単位で表されたサイズ情報が設定されている。
＜２＞構成
＜２−１＞システム全体の構成
本実施の形態に係るデータ転送制御装置１０６１，１０６２，１０６３を含む情報処理システムのブロック図を図２に示す。
【００７４】
情報処理システムは、図２に示すように、ＳＤＸＣ対応のデバイス（以下、ＳＤＸＣデバイスと称す。）１０８０が接続されるＳＤＸＣインターフェース１０７０と、主記憶装置１０１０と、ＣＰＵ１０００と、ＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）転送を司る機構であるＤＭＡコントローラ１０３０と、メモリコントローラ１０２０と、複数（図２に示す例では３つ）のデータ転送制御装置１０６１，１０６２，１０６３と、データ転送終了通知装置１０４０と、各データ転送制御装置１０６１，１０６２，１０６３で使用するディスクリプタを保持するリングバッファ１０５０とを含んで構成される。
【００７５】
３つのデータ転送制御装置１０６１，１０６２，１０６３と、データ転送終了通知装置１０４０とからデータ転送制御システム１０６が構成されている。
【００７６】
ＳＤＸＣインターフェース１０７０は、ＳＤＸＣデバイス１０８０から入力されるデータ、或るいは、ＳＤＸＣデバイス１０８０に出力するデータを一時的に保存しておくためのＩＯバッファ１０７４を備える。ＳＤＸＣインターフェース１０７０は、ＩＯバッファ１０７４に保存されたデータをＤＭＡコントローラ１０３０に３つの論理チャネルＣＨ１，ＣＨ２，ＣＨ３を介して並列に転送できる。なお、ＳＤＸＣデバイス１０８０としては、例えばＷＬＡＮのような通信デバイスや、あるいはＳＤメモリカードのようなリムーバブルメディアがある。
【００７７】
ＤＭＡコントローラ１０３０は、ＩＯバッファから論理チャネルＣＨ１，ＣＨ２，ＣＨ３を介してメモリコントローラ１０２０にデータを転送する機能、およびメモリコントローラ１０２０から論理チャネルＣＨ１，ＣＨ２，ＣＨ３を介してＩＯバッファ１０７４にデータを転送する機能を有する。
【００７８】
ＤＭＡコントローラ１０３０は、論理チャネルＣＨ１，ＣＨ２，ＣＨ３毎にデータ転送の終了を検知し、データ転送終了通知装置１０４０に対してデータ転送が終了したことを通知する転送終了通知信号を送出する。転送終了通知信号には、データ転送が正常に終了したことを通知する正常終了通知信号と、データ転送に異常が発生したことを通知する異常終了通知信号とが含まれる。ＤＭＡコントローラ１０３０には、各論理チャネルＣＨ１，ＣＨ２，ＣＨ３毎に、転送されたデータのチェックサムを計算するチェックサム計算部（図示せず）が設けられており、チェックサム計算部による計算結果が転送されたデータに含まれるチェックサム期待値に一致しなかった場合（チェックサムエラーが発生した場合）には、異常終了通知信号をデータ転送終了信号に含ませる。
【００７９】
メモリコントローラ１０２０は、ＤＭＡコントローラ１０３０から３つの論理チャネルＣＨＳ１，ＣＨＳ２，ＣＨＳ３を介して並列に転送されてくる複数のデータを主記憶装置１０１０に書き込んでいく。また、メモリコントローラ１０２０は、主記憶装置１０１０から複数のデータを読み込み、論理チャネルＣＨＳ１，ＣＨＳ２，ＣＨＳ３を介してＤＭＡコントローラ１０３０に対して並列に転送する。
【００８０】
ＣＰＵ１０００は、後述のグローバルリードポインタＲＰｇの値から、処理に必要なデータが全て主記憶装置１０１０に転送されたことを認識すると、主記憶装置１０１０にアクセスして処理を実行する。ＣＰＵ１０００は、データの転送を制御するためのディスクリプタＤ３０１０を生成し、リングバッファ１０５０に格納する機能も有する。
＜２−２＞リングバッファの構成
リングバッファ１０５０はＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）やＳＲＡＭ（Ｓｔａｔｉｃ  ＲＡＭ）等のメモリにより実現されており、３つのデータ転送制御装置１０６１，１０６２，１０６３により読み出される複数のディスクリプタＤ３０１０を記憶する。リングバッファ１０５０は、図２に示すように、最大で１２個のディスクリプタＤ３０１０を記憶できる。なお、リングバッファ１０５０が、転送制御情報管理手段に相当する。
【００８１】
各ディスクリプタＤ３０１０は、ＦＩＦＯ方式で読み出し及び格納が行われる。
【００８２】
本実施の形態のリングバッファ１０５０では、ディスクリプタＤ３０１０が、ＣＰＵ１０００によりリングバッファ１０５０上におけるアドレスが最小の格納領域Ｍ５１から、よりアドレスの大きい格納領域Ｍ５２，Ｍ５３，・・・へ順番に格納されている。そして、アドレスが最小の格納領域Ｍ５１に格納されたディスクリプタＤ３０１０ａから、順番に読み出される。
【００８３】
また、本実施の形態のリングバッファ１０５０では、後述のライトポインタＷＰの示すアドレスが後述のローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３の示すアドレスのいずれよりも大きい場合、あるいは、後述のライトポインタＷＰの示すアドレスが後述のローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３の示すアドレスのいずれよりも小さい場合には、ローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３が示すアドレスの中で、アドレスの小さい格納領域に格納されているディスクリプタＤ３０１０ほど読み出し順序が前方となる。
【００８４】
一方、ローカルリードポインタＲＰｌｌの示すアドレスだけがライトポインタＷＰの示すアドレスよりも大きく、他のローカルリードポインタＲＰｌ２，ＲＰｌ３の示すアドレスがライトポインタＷＰの示すアドレスよりも小さい場合には、ローカルリードポインタＲＰｌ１の示すアドレスの格納領域に格納されているディスクリプタＤ３０１０の読み出し順序が前方になる。
【００８５】
つまり、ライトポインタの示すアドレスより大きいアドレスを示すローカルリードポインタが存在する場合は、ライトポインタの示すアドレスより大きいアドレスを示すローカルリードポインタの中で、最も小さいアドレスを示すローカルリードポインタの示すアドレスの格納領域に格納されているディスクリプタＤ３０１０の読み出し順序が最も前方になり、ライトポインタの示すアドレスより大きいアドレスを示すローカルリードポインタが存在しない場合は、全てのローカルリードポインタの中で、最も小さいアドレスを示すローカルリードポインタの示すアドレスに格納されているディスクリプタＤ３０１０の読み出し順序が最も前方になる。
【００８６】
図３（ａ）に示す例では、ＣＰＵ１０００により、初めに最小のアドレス“ｘ０００１”の格納領域Ｍ５１にディスクリプタＤ３０１０ａが格納され、その後、アドレス“ｘ０００２”の格納領域Ｍ５２、アドレス“ｘ０００３”の格納領域Ｍ５３、アドレス“ｘ０００４”の格納領域Ｍ５４の順番でディスクリプタＤ３０１０ｂ，Ｄ３０１０ｃ，Ｄ３０１０ｄが格納される。一方、図３（ｂ）に示すように、各データ転送制御装置１０６１，１０６２，１０６３は、最初に格納されたディスクリプタＤ３０１０ａから順番に読み出す。
＜２−２−１＞管理情報
リングバッファ１０５０は、管理情報として、ライトポインタＷＰとグローバルリードポインタＲＰｇとオーバーラップフラグＯＲＦとを保持する。ライトポインタＷＰ、グローバルリードポインタＲＰおよびオーバラップフラグＯＲＦは、メモリ上の変数や、レジスタにより実現されている。
【００８７】
ライトポインタＷＰは、リングバッファ１０５０へ新たなディスクリプタＤ３０１０が格納されると更新される。図４に示すように、格納領域Ｍ６１に新たなディスクリプタＤ３０１０ｄが格納されると、ライトポインタＷＰの値は、格納領域Ｍ６２のアドレス“ｘ００１１”に更新される。ライトポインタＷＰが示す値よりも大きいアドレスの格納領域Ｍ６２は、空き領域になっている。なお、ライトポインタＷＰは、最終順序情報に相当する。
【００８８】
グローバルリードポインタＲＰｇは、図４に示すように、後述のローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３のうち値が最小のローカルリードポインタ（図４ではＲＰｌ１）が示すディスクリプタＤ３０１０ａよりも読み出し順序が前方のディスクリプタＤ３０１０ｅが格納された格納領域Ｍ５２のアドレスを示す。
【００８９】
このグローバルリードポインタＲＰｇは、複数のデータ転送のうちどこまで確実に終了しているかを表すことになる。グローバルリードポインタＲＰｇが、ディスクリプタＤ３０１０ｅが格納された格納領域Ｍ５２のアドレスを示していれば、ディスクリプタｄ３０１０ｅの読み出し順序よりも読み出し順序が前方のディスクリプタＤ３０１０に基づくデータ転送が全て終了している。
【００９０】
オーバラップフラグＯＲＦは、図５に示すように、新たなディスクリプタＤ３０１０ｄが格納領域Ｍ５１に格納され、ライトポインタＷＰの値が更新される際、更新前のライトポインタＷＰの値（図５では、“ｘ００１２”）が更新後のライトポインタＷＰの値（図５では“ｘ０００１”）よりも大きいと、“１”（イネーブル状態）に設定される。
【００９１】
一方、図６に示すように、データ転送制御装置１０６１，１０６２，１０６３のいずれかにより、グローバルリードポインタＲＰｇが更新される際、更新前のリードポインタの値（図６では“ｘ００１２”）が更新後のリードポインタの値（図６では“ｘ０００１”）よりも大きいと、オーバラップフラグＯＲＦは、“０”（ディセーブル状態）に設定される。
＜２−３＞データ転送制御装置の構成
データ転送制御装置１０６１は、ＳＤＸＣインターフェース１０７０とＤＭＡコントローラ１０３０との間で論理チャネルＣＨ１を介したデータ転送を制御する。なお、データ転送制御装置１０６２，１０６３の構成は、データ転送制御装置１０６１の構成と同じなので説明を省略する。
【００９２】
データ転送制御装置１０６１は、図７に示すように、ディスクリプタ取得部５００８と、ローカルリードポインタ保持部５００７と、転送終了通知信号受信部５０００と、ローカルリードポインタ取得部５００１と、前後関係判別部５００３と、リードポインタ更新部５００４と、最新リードポインタ抽出部５００５と、ライトポインタ取得部５００２と、ライトポインタ更新確認部５００６と、ディスクリプタ取得完了通知部５００９と、データ転送制御装置１０６１，１０６２，１０６３は、転送終端部５０１１と、ディスクリプタ設定部５０１０と、データ転送起動要求受信部５０１２とを含んで構成される。
＜２−３−１＞ライトポインタ取得部
ライトポインタ取得部５００２は、リングバッファ１０５０からライトポインタＷＰの値を取得する。なお、ライトポインタ取得部５００２は、最終順序情報取得手段に相当する。
＜２−３−２＞ローカルリードポインタ保持部
ローカルリードポインタ保持部５００７は、図８（ａ），（ｂ）に示すように、当該ローカルリードポインタ保持部５００７が属するデータ転送制御装置１０６１が使用するディスクリプタＤ３０１０ａが格納されている格納領域Ｍ５１（Ｍ５７）を示すローカルリードポインタ（第１のローカルリードポインタ）ＲＰｌ１を保持する。なお、ローカルリードポインタ保持部５００７が、順序情報保持手段に相当する。
＜２−３−３＞転送終了通知信号受信部
転送終了通知信号受信部５０００は、データ転送終了通知装置１０４０から送出される転送終了通知信号を受信するとディスクリプタＤ３０１０ａに基づくデータ転送が終了したことを認識する。なお、転送終了通知信号受信部５０００は、転送終了認識手段に相当する。
【００９３】
更に、転送終了通知信号受信部５０００は、転送終了通知信号に含まれる異常終了信号または正常終了信号に基づいて、データ転送が正常終了したか異常終了したかを認識することができる。
【００９４】
転送終了通知信号受信部５０００は、受信したデータ転送終了通知信号に異常終了信号が含まれる場合、異常終了信号をディスクリプタ取得完了通知部５００９および転送終端部５０１１に対して出力し、一方、データ転送終了通知信号に正常終了信号が含まれる場合、正常終了信号をディスクリプタ取得完了通知部５００９、転送終端部５０１１およびローカルリードポインタ取得部５００１に対して出力する。
＜２−３−４＞ローカルリードポインタ取得部
ローカルリードポインタ取得部５００１は、他のデータ転送制御装置１０６２，１０６３が保持するローカルリードポインタ（第２のローカルリードポインタ）ＲＰｌ２，ＲＰｌ３の値を取得する。このローカルリードポインタＲＰｌ２，ＲＰｌ３は、他のデータ転送制御装置１０６２，１０６３それぞれが使用するディスクリプタＤ３０１０ｂ，Ｄ３０１０ｃが格納されている格納領域Ｍ５２，Ｍ５３を示す。なお、ローカルリードポインタ取得部５００１が、順序情報取得手段に相当する。
【００９５】
ローカルリードポインタ取得部５００１は、転送終了通知信号受信部５０００から正常終了信号を受信したときに、他のデータ転送制御装置１０６２，１０６３からローカルリードポインタＲＰｌ２，ＲＰｌ３の値を取得する。
＜２−３−５＞前後関係判別部
前後関係判別部５００３は、ローカルリードポインタＲＰｌ１の値とローカルリードポインタＲＰｌ２，ＲＰｌ３の値それぞれとを比較して、ディスクリプタＤ３０１０ａ，Ｄ３０１０ｂ，Ｄ３０１０ｃそれぞれの読み出し順序の前後関係を判別する。なお、前後関係判別部５００３は、前後関係判別手段に相当する。
【００９６】
また、前後関係判別部５００３は、ライトポインタＷＰの値と最新リードポインタ抽出部５００５（詳細を後述）により抽出される最新リードポインタの値とを比較する最終順序比較手段としても機能する。
【００９７】
ところで、前後関係判別部５００３は、まず、ライトポインタＷＰの値とローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３の値との大小関係を比較した後に、ローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３の値に基づいて、ローカルリードポインタＲＰｌ１が示すアドレスの格納領域に格納されたディスクリプタＤ３０１０ａの読み出し順序と、ローカルリードポインタＲＰｌ２，ＲＰｌ３それぞれが示すアドレスの格納領域に格納されたディスクリプタＤ３０１０ｂ，Ｄ３０１０ｃの読み出し順序の前後関係を判別する。
【００９８】
ここで、前後関係判別部５００３は、ライトポインタＷＰの値とローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３の値とを大小関係を比較して、ライトポインタＷＰの示すアドレスより大きいアドレスを示すローカルリードポインタが存在する場合は、ローカルリードポインタローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３が示すアドレスのうちライトポインタＷＰの示すアドレスより大きいアドレスの中で、最も小さいアドレスの格納領域に格納されているディスクリプタの読み出し順序を最も前方と判別する。
【００９９】
一方、ライトポインタＷＰの示すアドレスより大きいアドレスを示すローカルリードポインタが存在しない場合は、ローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３が示す全てのアドレスの中で最も小さいアドレスに格納されているディスクリプタＤ３０１０の読み出し順序が最も前方と判別する。
【０１００】
例えば、図８（ａ）に示すように、リングバッファ１０５０が、最大で１２個のディスクリプタＤ３０１０を格納できるだけの格納領域Ｍ５１，Ｍ５２，・・・，Ｍ６２を有するとする。この場合、ライトポインタＷＰの値が“ｘ０００５”、ローカルリードポインタＲＰｌ１の値が“ｘ０００１”、ローカルリードポインタＲＰｌ２の値が“ｘ０００２”、ローカルリードポインタＲＰｌ３の値が“ｘ０００４”であるとすると、ローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３の値はいずれもライトポインタＷＰの値よりも小さいので、ローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３の示すアドレスの中で最も小さいアドレス“ｘ０００１”に格納されたディスクリプタＤ３０１０ａの読み出し順序が最も前方と判別する。
【０１０１】
一方、図８（ｂ）に示すように、ライトポインタＷＰの値が“ｘ０００４”、ローカルリードポインタＲＰｌ１の値が“ｘ００１１”、ローカルリードポインタＲＰｌ２の値が“ｘ００１２”、ローカルリードポインタＲＰｌ３の値が“ｘ０００２”であるとすると、ローカルリードポインタＲＰｌ１，ＲＰｌ２の値がライトポインタＷＰの値よりも大きく、ローカルリードポインタＲＰｌ３の値がライトポインタＷＰの値よりも小さいので、ローカルリードポインタＲＰｌ１，ＲＰｌ２の示すアドレスの中で最も小さいアドレス“ｘ００１１”に格納されたディスクリプタＤ３０１０ａの読み出し順序が最も前方と判別する。
＜２−３−６＞リードポインタ更新部
リードポインタ更新部５００４は、転送終了通知信号受信部５０００によりディスクリプタＤ３０１０ａに基づくデータ転送の終了が認識されると、ローカルリードポインタＲＰｌ１が示すディスクリプタＤ３０１０ａの読出し順序が、他のデータ転送制御装置１０６２，１０６３それぞれが保持するローカルリードポインタＲＰｌ２，ＲＰｌ３が示すディスクリプタＤ３０１０ｂ，Ｄ３０１０ｃの読み出し順序よりも前方であれば、グローバルリードポインタＲＰｇの値をローカルリードポインタＲＰｌ１の値を用いて更新する。
【０１０２】
このことを図９で説明すると、ライトポインタＷＰの値が“ｘ０００５”、ローカルリードポインタＲＰｌ１の値が“ｘ０００１１”、ローカルリードポインタＲＰｌ２の値が“ｘ００１２”、ローカルリードポインタＲＰｌ３の値が“ｘ０００３”であるとする。この場合、ライトポインタＷＰの値とローカルリードポインタＲＰｌ１の値との差は、“６”であり、ライトポインタＷＰの値とローカルリードポインタＲＰｌ２の値との差は、“５”であり、ライトポインタＷＰの値とローカルリードポインタＲＰｌ３の値との差は、“２”となる。
【０１０３】
すると、前後関係判別部５００３は、ローカルリードポインタＲＰｌ１が示すディスクリプタＤ３０１０ａの読み出し順序がローカルリードポインタＲＰｌ２，ＲＰｌ３が示すディスクリプタＤ３０１０ｂ，Ｄ３０１０ｃの読出し順序よりも前方と判別する。
【０１０４】
このときリードポインタ更新部５００４は、ディスクリプタＤ３０１０ａに基づくデータ転送の終了が認識されると、グローバルリードポインタＲＰｇの値“ｘ００１０”をローカルリードポインタＲＰｌ１の値“ｘ００１１”を用いて更新する。
【０１０５】
一方、リードポインタ更新部５００４は、転送終了通知信号受信部５０００によりディスクリプタＤ３０１０ａに基づくデータ転送の終了が認識されたときにおいて、前後関係判別部５００３によりデータ転送制御装置１０６１が保持するディスクリプタＤ３０１０ａの読み出し順序が他のデータ転送制御装置１０６２，１０６３が保持するディスクリプタＤ３０１０ｂ，Ｄ３０１０ｃの読出し順序よりも前方ではないと判別された場合、グローバルリードポインタＲＰｇの値をローカルリードポインタＲＰｌ１の値を用いて更新をしない。
【０１０６】
このことを図１０で説明すると、ライトポインタＷＰの値が“ｘ０００５”、ローカルリードポインタＲＰｌ１の値が“ｘ０００４”、ローカルリードポインタＲＰｌ２の値が“ｘ００１２”、ローカルリードポインタＲＰｌ３の値が“ｘ０００３”であるとすると、ライトポインタＷＰの値とローカルリードポインタＲＰｌ１の値との差は、“１”であり、ライトポインタＷＰの値とローカルリードポインタＲＰｌ２の値との差は、“５”であり、ライトポインタＷＰの値とローカルリードポインタＲＰｌ３の値との差は、“２”となる。
【０１０７】
この場合、前後関係判別部５００３は、ローカルリードポインタＲＰｌ１が示すディスクリプタＤ３０１０ａの読み出し順序がローカルリードポインタＲＰｌ２，ＲＰｌ３が示すディスクリプタＤ３０１０ｂ，Ｄ３０１０ｃの読出し順序よりも前方ではないと判別するので、リードポインタ更新部５００４は、グローバルリードポインタＲＰｇの値“ｘ００１１”をローカルリードポインタＲＰｌ１の値“ｘ０００４”を用いて更新をしない。
【０１０８】
また、リードポインタ更新部５００４は、図６（ａ）（ｂ）に示すように、グローバルリードポインタＲＰｇの値を更新する際、更新前のグローバルリードポインタＲＰｇの値“ｘ００１２”が、更新後のグローバルリードポインタＲＰｇの値“ｘ０００１”よりも大きいとオーバラップフラグＯＲＦを“０”（ディセーブル状態）に設定する。
＜２−３−７＞最新リードポインタ抽出部
最新リードポインタ抽出部５００５は、ローカルリードポインタ保持部５００７が保持するローカルリードポインタＲＰｌ１の値、およびローカルリードポインタ取得部５００１が他のデータ転送制御装置１０６２，１０６３から取得するローカルリードポインタＲＰｌ２，ＲＰｌ３の値を比較するローカルリードポインタ比較手段（図示せず）を備え、ローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３の値同士を比較して、ローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３の中から、ライトポインタＷＰの値との差が最も小さいローカルリードポインタを最新リードポインタとして抽出する。
【０１０９】
このことを図１１（ａ）で説明すると、ライトポインタＷＰの値が“ｘ００１０”、ローカルリードポインタＲＰｌ１の値が“ｘ０００３”、ローカルリードポインタＲＰｌ２の値が“ｘ０００４”、ローカルリードポインタＲＰｌ３の値が“ｘ０００６”であるとすると、ライトポインタＷＰの値とローカルリードポインタＲＰｌ１の値との差は、“７”であり、ライトポインタＷＰの値とローカルリードポインタＲＰｌ２の値との差は、“６”であり、ライトポインタＷＰの値とローカルリードポインタＲＰｌ３の値との差は、“４”となる。
【０１１０】
この場合、ローカルリードポインタ比較手段は、ローカルリードポインタＲＰｌ３の値とライトポインタＷＰの値との相対的な差が最も小さいと判断するので、最新リードポインタ抽出部５００５は、ローカルリードポインタＲＰｌ３を最新リードポインタとして抽出する。
【０１１１】
また、図１１（ｂ）で説明すると、ライトポインタＷＰの値が“ｘ０００５”、ローカルリードポインタＲＰｌ１の値が“ｘ００１１”、ローカルリードポインタＲＰｌ２の値が“ｘ００１２”、ローカルリードポインタＲＰｌ３の値が“ｘ０００３”であるとすると、ライトポインタＷＰの値とローカルリードポインタＲＰｌ１の値との差は、“６”であり、ライトポインタＷＰの値とローカルリードポインタＲＰｌ２の値との差は、“５”であり、ライトポインタＷＰの値とローカルリードポインタＲＰｌ３の値との差は、“２”となる。
【０１１２】
この場合、ローカルリードポインタ比較手段は、ローカルリードポインタＲＰｌ３の値とライトポインタＷＰの値との相対的な差が最も小さいと判断するので、最新リードポインタ抽出部５００５は、ローカルリードポインタＲＰｌ３を最新リードポインタとして抽出する。
＜２−３−８＞ライトポインタ更新確認部
ライトポインタ更新確認部５００６は、リングバッファ１０５０に新たなディスクリプタＤ３０１０が格納されたときに生じるライトポインタＷＰの値の更新を検出する。なお、ライトポインタ更新確認部５００６は、最終順序情報更新検出手段に相当する。
＜２−３−９＞ディスクリプタ取得部
ディスクリプタ取得部５００８は、ローカルリードポインタ保持部５００７に保持されているローカルリードポインタＲＰｌ１の値に従って、リングバッファ１０５０上における当該ローカルリードポインタＲＰｌ１の示す格納領域に格納されているディスクリプタＤ３０１０ａ（図７参照）を取得する動作を行い、ディスクリプタＤ３０１０ａの取得が完了すると、ディスクリプタ取得完了信号をディスクリプタ取得完了通知部５００９に対して出力する。なお、ディスクリプタ取得部５００８は、転送制御情報読出手段に相当する。
【０１１３】
ディスクリプタ取得部５００８は、転送終了通知信号受信部５０００によりデータ転送が正常終了したと認識されると新たに第３のディスクリプタＤ３０１０を取得する動作を行い、転送終了通知信号受信部５０００によりデータ転送が異常終了したと認識されると、新たに第３のディスクリプタＤ３０１０を取得する動作を行わない。
【０１１４】
更に、ディスクリプタ取得部５００８は、前後関係判別部５００３によりライトポインタＷＰの値と最新リードポインタの値とが等しく、且つ、オーバーラップフラグＯＲＦが“０”（ディセーブル）に設定されていると判定されると、新たにディスクリプタＤ３０１０を取得する動作を行わない。
【０１１５】
このことを図１２（ａ）で説明すると、ディスクリプタＤ３０１０ｂに基づくデータ転送の終了が認識されたときであって、ライトポインタＷＰの値と最新リードポインタの値とが同じと判定された場合、最新リードポインタ抽出部５００５はローカルリードポインタ保持部５００７が保持するローカルリードポインタＲＰｌ２の値を更新せず、ディスクリプタ取得部５００８が、ディスクリプタＤ３０１０を取得する動作を行わないようにしている。このようにして、ディスクリプタ取得部５００８が、すでに実行が終了したデータ転送に対応するディスクリプタＤ３０１０を取得してしまうことを防止している。
【０１１６】
ライトポインタＷＰの値と最新リードポインタの値とが等しいと判定された後において、図１２（ｂ）に示すように、ＣＰＵ１０００から新たなディスクリプタＤ３０１０ｅが格納され、ライトポインタ更新確認部５００６がライトポインタＷＰの値の更新を検出すると、ディスクリプタ取得部５００８は、最新リードポインタであるローカルリードポインタＲＰｌ３が示す格納領域Ｍ５５に格納されたディスクリプタＤ３０１０ｃの次にリングバッファ１０５０から読み出される新たなディスクリプタＤ３０１０ｅを取得する動作が可能となる。
＜２−３−１０＞ディスクリプタ取得完了通知部
ディスクリプタ取得完了通知部５００９は、ディスクリプタ取得部５００８によるディスクリプタＤ３０１０ａの取得が完了し、ディスクリプタ取得部５００８からディスクリプタ取得完了信号が入力され、更に、ローカルリードポインタ保持部５００７が保持するローカルリードポインタＲＰｌ１の値が更新されると、転送制御情報取得完了信号であるディスクリプタ取得完了通知信号を送出する転送制御情報取得完了通知手段を構成する。
＜２−３−１１＞転送終端部
転送終端部５０１１は、ＤＭＡコントローラ１０３０とＳＤＸＣインターフェース１０７０との間で論理チャネルＣＨ１，ＣＨ２，ＣＨ３を介して行われるデータ転送の終端処理を行う。例えば、転送終端部５０１１は、ＤＭＡコントローラ１０３０が保持する制御レジスタのうち、データ転送制御を行うデータ転送が行われた論理チャネルＣＨ１，ＣＨ２，ＣＨ３に対応する制御レジスタにデータ転送の終了を示す規定値の書き込みや、ＣＰＵに対する転送終了割り込み処理を行う。
＜２−３−１２＞ディスクリプタ設定部
ディスクリプタ設定部５０１０は、データ転送起動要求受信部５０１２から起動要求信号を受信すると、ディスクリプタ取得部５００８が取得したディスクリプタＤ３０１０の示す情報に基づいて、ＤＭＡコントローラ１０３０およびＳＤＸＣインターフェース１０７０に対して、データ転送の設定を行い、ＤＭＡコントローラ１０３０にデータ転送を開始させる。
＜２−３−１３＞データ転送起動要求受信部
データ転送起動要求受信部５０１２は、ＤＭＡコントローラ１０３０、又はＳＤＸＣインターフェース１０７０から送出されるデータ転送起動要求信号を受信すると、ディスクリプタ設定部５０１０に対して起動要求信号を出力する。
＜２−４＞データ転送終了通知装置の構成
データ転送終了通知装置１０４０は、図１３に示すように、３つの論理チャネルＣＨ１，ＣＨ２，ＣＨ３を介して並列に実行される複数のデータ転送のうちいずれか１つのデータ転送を対応するディスクリプタＤ３０１０に基づいて制御する３つのデータ転送制御装置１０６１，１０６２，１０６３に共通に接続されている。ここで、データ転送終了通知装置１０４０は、ＤＭＡコントローラ１０３０からデータ転送が終了したことの通知を受けると、データ転送制御装置１０６１，１０６２，１０６３に対してデータ転送が終了したことを通知する。
【０１１７】
また、データ転送終了通知装置１０４０は、図１３に示すように、３つの論理チャネル転送終了検知部４０１１，４０１２，４０１３と、３つの論理チャネル転送終了通知部４０３１，４０３２，４０３３と、優先度判断部４０２０と、ディスクリプタ取得完了通知信号受信部４０４１，４０４２，４０４３とを含んで構成される。
【０１１８】
ここで、論理チャネル転送終了検知部４０１１、論理チャネル転送終了通知部４０３１およびディスクリプタ取得完了通知信号受信部４０４１は、論理チャネルＣＨ１を介したデータ転送の制御に関連する。また、論理チャネル転送終了検知部４０１２、論理チャネル転送終了通知部４０３２およびディスクリプタ取得完了通知信号受信部４０４２は、論理チャネルＣＨ２を介したデータ転送の制御に関連する。更に、論理チャネル転送終了検知部４０１３、論理チャネル転送終了通知部４０３３およびディスクリプタ取得完了通知信号受信部４０４３は、論理チャネルＣＨ３を介したデータ転送の制御に関連する。
＜２−４−１＞論理チャネル転送終了通知部
論理チャネル転送終了通知部４０３１は、論理チャネル転送終了検知部４０１１がＤＭＡコントローラ１０３０からデータ転送が終了した旨の通知を受けると、対応するデータ転送制御装置１０６１に対して転送終了通知信号を送出する転送終了通知手段を構成する。なお、論理チャネル転送終了通知部４０３２は、論理チャネル転送終了検知部４０１２がＤＭＡコントローラ１０３０からデータ転送が終了した旨の通知を受けると、対応するデータ転送制御装置１０６２に対して転送終了通知信号を送出し、論理チャネル転送終了通知部４０３３は、論理チャネル転送終了検知部４０１３がＤＭＡコントローラ１０３０からデータ転送が終了した旨の通知を受けると、対応するデータ転送制御装置１０６３に対して転送終了通知信号を送出する。
＜２−４−２＞ディスクリプタ取得完了通知信号受信部
ディスクリプタ取得完了通知信号受信部４０４１は、データ転送制御装置１０６１からディスクリプタ取得完了通知信号を受信すると、ディスクリプタＤ３０１０の取得が完了したことを認識する転送制御情報取得完了認識手段を構成する。なお、ディスクリプタ取得完了通知信号受信部４０４２は、データ転送制御装置１０６２からディスクリプタ取得完了通知信号を受信すると、ディスクリプタＤ３０１０の取得が完了したことを認識し、ディスクリプタ取得完了通知信号受信部４０４３は、データ転送制御装置１０６３からディスクリプタ取得完了通知信号を受信すると、ディスクリプタＤ３０１０の取得が完了したことを認識する。
＜２−４−３＞論理チャネル転送終了検知部
論理チャネル転送終了検知部４０１１，４０１２，４０１３は、ＤＭＡコントローラ１０３０から論理チャネルＣＨ１，ＣＨ２，ＣＨ３毎に送出されるデータ転送終了通知信号のうち少なくとも１つのデータ転送終了通知信号を受信することにより、少なくとも１つのデータ転送の終了を検知する転送終了検知手段を構成する。また、各論理チャネル転送終了検知部４０１１，４０１２，４０１３は、データ転送終了通知信号を受信すると、優先度判断部４０２０に対して当該データ転送終了通知信号を出力する。
【０１１９】
また、論理チャネル転送終了検知部４０１１，４０１２，４０１３は、データ転送が正常終了したか異常終了したかを検知し、論理チャネル転送終了通知部４０３１，４０３２，４０３３に対して、対応するデータ転送制御装置１０６１，１０６２，１０６３に終了結果通知信号を送出させる終了結果検知手段（図示せず）を備える。
【０１２０】
ここで、終了結果検知手段は、転送されるデータにチェックサムエラーが発生すると、データ転送が異常終了したと検知する。
＜２−４−４＞優先度判断部
優先度判断部４０２０は、３つの論理チャネル終了検知部４０１１，４０１２，４０１３において２以上のデータ転送の終了を同時に検知したときに、論理チャネル転送終了通知部４０３１，４０３２，４０３３に対して、最も優先度の高い論理チャネルＣＨ１，ＣＨ２，ＣＨ３に対応するデータ転送制御装置１０６１，１０６２，１０６３にのみ対して転送終了通知信号を送出させる。
【０１２１】
ここで、優先度判断部４０２０は、予め論理チャネルＣＨ１，ＣＨ２，ＣＨ３間での優先度に関する情報を保持しており、優先度判断部４０２０は、２つ以上の論理チャネルのデータ転送終了通知信号が同時に優先度判断部４０２０に入力された場合、自らが保持する優先度に従って、最も優先順位の高い論理チャネル（例えば、論理チャネルＣＨ１）に対応する論理チャネル転送終了通知部４０３１のみに転送終了通知信号を出力させる。ここにおいて、優先度判断部４０２０は、各論理チャネル転送終了検知部４０１１，４０１２，４０１３から入力されるデータ転送終了検知信号の有無を優先度の高い論理チャネルＣＨ１から順番に確認していき、データ転送終了検知信号の入力があったことが確認された時点で、当該データ転送終了検知信号を対応する論理チャネル転送終了通知部（例えば、論理チャネル転送終了通知部４０３１）に送出する。
【０１２２】
ここにおいて、優先度判断部４０２０は、例えば、論理チャネル転送終了通知部４０３１に対して、データ転送終了通知信号を出力した後、ディスクリプタ取得完了通知信号受信部４０４１からのディスクリプタ取得完了通知信号を受信するまで、他の論理チャネル転送終了通知部４０３２，４０３３に対してデータ転送終了通知信号を送出させないようになっている。
＜３＞動作
次に、本実施の形態に係る情報処理システムの中で、本実施の形態の特徴となるデータ転送制御装置およびデータ転送終了通知装置の動作について説明する。
＜３−１＞全体動作
ＤＭＡコントローラ１０３０、データ転送終了通知装置１０４０、リングバッファ１０５０および３つのデータ転送制御装置１０６１，１０６２，１０６３相互間のシーケンス図を図１４に示し、図１４に示すシーケンスで動作が行われた場合における各チャネルＣＨ１，ＣＨ２，ＣＨ３の状態、各データ転送制御装置１０６１，１０６２，１０６３が保持するローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３の値、およびグローバルリードポインタＲＰｇの値の経時変化を表すタイムチャートを図１５に示す。また、リングバッファ１０５０の状態を図１６に示す。以下、図１４から図１６に基づいて説明する。
【０１２３】
時刻Ｔ１で、ＤＭＡコントローラ１０３０からデータ転送終了通知装置１０４０に対してチャネルＣＨ２でのデータ転送が終了した旨が通知されると、データ転送終了通知装置１０４０は、データ転送制御装置１０６２に対して、転送終了通知信号を送出する。
【０１２４】
転送終了通知信号を受信したデータ転送制御装置１０６２は、データ転送制御装置１０６１からローカルリードポインタＲＰｌ１の値を取得し，データ転送制御装置１０６３からローカルリードポインタＲＰｌ３の値を取得する。
【０１２５】
そして、データ転送制御装置１０６２が備える前後関係判別部が、ローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３が示すディスクリプタＤ３０１０ａ１，Ｄ３０１０ｂ１，Ｄ３０１０ｃ１の読み出し順序の前後関係を判別する。図１５、図１６に示すように、時刻Ｔ１では、ローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３の値の中でローカルリードポインタＲＰｌ２の値が最小ではない。よって、データ転送装置１０６２が備えるリードポインタ更新部は、グローバルリードポインタＲＰｇの値を更新しない。
【０１２６】
次に、前後関係判別部が、最新リードポインタの値とライトポインタＷＰの値とを比較して、最新リードポインタの値とライトポインタＷＰの値とが一致していないことを確認すると、最新リードポインタ抽出部が、最新リードポインタであるローカルリードポインタＲＰｌ３が示すアドレス“ｘ０００７”の次のアドレス“ｘ０００８”で、ローカルリードポインタ保持部が保持するローカルリードポインタＲＰｌ２の値を更新する。その後、ディスクリプタ取得部は、ローカルリードポインタＲＰｌ２の示す値に従って、格納領域Ｍ５８に格納されているディスクリプタＤ３０１０ｂ２を取得する動作を行う。
【０１２７】
一方、前後関係判別部が、最新リードポインタの値とライトポインタＷＰの値とを比較して、最新リードポインタの値とライトポインタＷＰの値とが一致していることを確認すると、最新リードポインタ抽出部５００５は、ローカルリードポインタ保持部が保持するローカルリードポインタＲＰｌ２の値を更新しない。従って、ディスクリプタ取得部は、ディスクリプタを取得する動作を行わない。この場合、ディスクリプタ取得部は、ライトポインタＷＰの値の更新が確認された後に、ディスクリプタを取得する動作を行う。
【０１２８】
その後、ディスクリプタ取得部が、ディスクリプタＤ３０１０ｂ２の取得を完了すると、ディスクリプタ取得完了通知部が、ディスクリプタ取得完了通知信号をデータ転送終了通知装置１０４０に送出する。
【０１２９】
続いて、ディスクリプタ設定部が、取得したディスクリプタＤ３０１０ｂ２に基づいてＤＭＡコントローラ１０３０を設定する。
【０１３０】
時刻Ｔ２で、ＤＭＡコントローラ１０３０からデータ転送終了通知装置１０４０に対してチャネルＣＨ１でのデータ転送が終了した旨が通知されると、データ転送終了通知装置１０４０は、データ転送制御装置１０６１に対して、転送終了通知信号を送出する。
【０１３１】
転送終了通知信号を受信したデータ転送制御装置１０６１は、データ転送制御装置１０６２からローカルリードポインタＲＰｌ２の値“ｘ０００８”を取得し，データ転送制御装置１０６３からローカルリードポインタＲＰｌ３の値“ｘ０００７”を取得する。
【０１３２】
そして、前後関係判別部５００３が、ローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３が示すディスクリプタＤ３０１０ａ１，Ｄ３０１０ｂ２，Ｄ３０１０ｃ１の読み出し順序の前後関係を判別する。図１５、図１６に示すように、時刻Ｔ２では、ローカルリードポインタＲＰｌ１の値は、ローカルリードポインタＲＰｌ２、ＲＰｌ３の値のいずれよりも小さいので、グローバルリードポインタＲＰｇの値をローカルリードポインタＲＰｌ１の値“ｘ０００３”で更新する。
【０１３３】
次に、前後関係判別部５００３が、最新リードポインタの値とライトポインタＷＰの値とを比較して、最新リードポインタの値とライトポインタＷＰの値とが一致していないことを確認すると、最新リードポインタ抽出部５００５が、最新リードポインタであるローカルリードポインタＲＰｌ２が示すアドレス“ｘ０００８”の次のアドレス“ｘ０００９”で、ローカルリードポインタ保持部５００７が保持するローカルリードポインタＲＰｌ１の値を更新する。その後、ディスクリプタ取得部５００８は、ローカルリードポインタＲＰｌ１の示す値に従って、格納領域Ｍ５９に格納されているディスクリプタＤ３０１０ａ２を取得する動作を行う。
【０１３４】
一方、前後関係判別部５００３が、最新リードポインタの値とライトポインタＷＰの値とを比較して、最新リードポインタの値とライトポインタＷＰの値とが一致していることを確認すると、最新リードポインタ抽出部５００５は、ローカルリードポインタ保持部５００７が保持するローカルリードポインタＲＰｌ１の値を更新しない。従って、ディスクリプタ取得部５００８は、ディスクリプタを取得する動作を行わない。この場合、ディスクリプタ取得部５００８は、ライトポインタＷＰの値の更新が確認された後に、ディスクリプタを取得する動作を行う。
【０１３５】
その後、ディスクリプタ取得部５００８が、ディスクリプタＤ３０１０ａ２の取得を完了すると、ディスクリプタ取得完了通知部５００９が、ディスクリプタ取得完了通知信号をデータ転送終了通知装置１０４０に送出する。
【０１３６】
続いて、ディスクリプタ設定部５０１０が、取得したディスクリプタＤ３０１０ａ２に基づいてＤＭＡコントローラ１０３０を設定する。
【０１３７】
時刻Ｔ４で、ＤＭＡコントローラ１０３０からデータ転送終了通知装置１０４０に対してチャネルＣＨ３でのデータ転送が終了した旨が通知されると、データ転送終了通知装置１０４０は、データ転送制御装置１０６３に対して、転送終了通知信号を送出する。
【０１３８】
転送終了通知信号を受信したデータ転送制御装置１０６３は、データ転送制御装置１０６１からローカルリードポインタＲＰｌ１の値“ｘ０００９”を取得し，データ転送制御装置１０６２からローカルリードポインタＲＰｌ２の値“ｘ００１０”を取得する。
【０１３９】
そして、データ転送制御装置１０６３が備える前後関係判別手段が、ローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３が示すディスクリプタＤ３０１０ａ２，Ｄ３０１０ｂ３，Ｄ３０１０ｃ１の読み出し順序の前後関係を判別する。図１５、図１６に示すように、時刻Ｔ４では、ローカルリードポインタＲＰｌ３の値は、ローカルリードポインタＲＰｌ１、ＲＰｌ２の値のいずれよりも小さいので、グローバルリードポインタＲＰｇの値をローカルリードポインタＲＰｌ３の値“ｘ０００７”で更新する。
【０１４０】
次に、前後関係判別部が、最新リードポインタの値とライトポインタＷＰの値とを比較して、最新リードポインタの値とライトポインタＷＰの値とが一致していないことを確認すると、最新リードポインタ抽出部が、最新リードポインタであるローカルリードポインタＲＰｌ２が示すアドレス“ｘ００１０”の次のアドレス“ｘ００１１”で、ローカルリードポインタ保持部が保持するローカルリードポインタＲＰｌ３の値を更新する。その後、ディスクリプタ取得部は、ローカルリードポインタＲＰｌ３の示す値に従って、格納領域Ｍ６１に格納されているディスクリプタＤ３０１０ｃ２を取得する動作を行う。
【０１４１】
一方、前後関係判別部が、最新リードポインタの値とライトポインタＷＰの値とを比較して、最新リードポインタの値とライトポインタＷＰの値とが一致していることを確認すると、最新リードポインタ抽出部は、ローカルリードポインタ保持部が保持するローカルリードポインタＲＰｌ３の値を更新しない。従って、ディスクリプタ取得部は、ディスクリプタを取得する動作を行わない。この場合、ディスクリプタ取得部は、ライトポインタＷＰの値の更新が確認された後に、ディスクリプタを取得する動作を行う。
【０１４２】
その後、ディスクリプタ取得部が、ディスクリプタＤ３０１０ｃ２の取得を完了すると、ディスクリプタ取得完了通知部が、ディスクリプタ取得完了通知信号をデータ転送終了通知装置１０４０に送出する。
【０１４３】
続いて、ディスクリプタ設定部が、取得したディスクリプタＤ３０１０ｃ２に基づいてＤＭＡコントローラ１０３０を設定する。
＜３−２＞データ転送制御装置の動作
本実施の形態に係るデータ転送制御装置１０６１の動作について図１７に基づいて更に詳細に説明する。
【０１４４】
まず、転送終了通知信号受信部５０００が、データ転送終了通知装置１０４０から送出される転送終了通知信号を受信したか否かを判断し（ステップＳ７０１０）、転送終了通知信号の入力がない場合には、ステップＳ７０１０の直前の段階に移行する。一方、ステップＳ７０１０において、転送終了通知信号受信部５００が転送終了通知信号を受信すると、ステップＳ７０１１に移行する。
【０１４５】
次に、転送終了通知信号受信部５０００が、転送終了通知信号に正常終了信号および異常終了信号のいずれが含まれるかを判断し（ステップＳ７０１１）、異常終了信号が含まれる（正常終了しなかった）と判断すると、異常終了信号に係るデータ転送を再度行うために、ディスクリプタ取得完了通知部５００９に対して、当該異常終了信号に係るデータ転送に対応するディスクリプタＤ３０１０の取得が完了したことを通知するディスクリプタ取得完了通知信号を送出させる（ステップＳ７０２１）
一方、ステップＳ７０１１において、転送終了通知信号受信部５０００が、正常終了信号が含まれる（正常終了した）と判断すると、ローカルリードポインタ取得部５００１が、を他のデータ転送制御装置１０６２，１０６３それぞれからローカルリードポインタＲＰｌ２，ＲＰｌ３の値を取得するとともに（ステップＳ７０１２）、ライトポインタ取得部５００２が、ライトポインタＷＰの値を確認する（ステップＳ７０１３）。
【０１４６】
ここで、転送終端部５０１１は、ステップＳ７０１１においてデータ転送が正常終了したか異常終了したかを判別した後に、その判別結果に応じて、対応する論理チャネルＣＨ１を介して行われるデータ転送の終端処理を行う。
【０１４７】
その後、前後関係判別部５００３が、ライトポインタＷＰの値に対するローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３の値それぞれの差を互いに比較して、ローカルリードポインタＲＰｌ１が示すディスクリプタＤ３０１０の読み出し順序が、ローカルリードポインタＲＰｌ２，ＲＰｌ３が示すディスクリプタＤ３０１０の読み出し順序よりも前方であるか否かを判別する（ステップＳ７０１４）。
【０１４８】
ここで、ローカルリードポインタＲＰｌ１が示すディスクリプタＤ３０１０の読み出し順序が、ローカルリードポインタＲＰｌ２，ＲＰｌ３が示すディスクリプタＤ３０１０の読み出し順序よりも前方ではないと判別されると（ステップＳ７０１４：Ｎｏ）、ステップＳ７０１６に移行する。
【０１４９】
一方、ローカルリードポインタＲＰｌ１が示すディスクリプタＤ３０１０の読み出し順序が、ローカルリードポインタＲＰｌ２，ＲＰｌ３が示すディスクリプタＤ３０１０の読み出し順序よりも前方と判別されると（ステップＳ７０１４：Ｙｅｓ）、グローバルリードポインタＲＰｇの値をローカルリードポインタＲＰｌ１の値を用いて更新し（ステップＳ７０１５）、ステップＳ７０１６に移行する。
【０１５０】
ステップＳ７０１６では、最新リードポインタ抽出部５００５が、ローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３が示すディスクリプタＤ３０１０の中でリングバッファ１０５０から最後に読み出されたディスクリプタＤ３０１０が格納されていた格納領域を示すローカルリードポインタを最新リードポインタとして抽出する（ステップＳ７０１６。
【０１５１】
そして、前後関係判別部５００３が、ライトポインタＷＰの値と最新リードポインタの値とが等しいか否かを判別し（ここでは、オーバーラップフラグＯＲＦの状態も参照して判別が行われる）（ステップＳ７０１７）、ライトポインタＷＰの値と最新リードポインタの値とが等しくないと判断すると（ステップＳ７０１４：Ｎｏ）、最新リードポインタ抽出部５００５が、最新リードポインタの値が示すアドレスの次のアドレスをローカルリードポインタ保持部５００７に通知する。
【０１５２】
最新リードポインタの値が示すアドレスの次のアドレスの通知を受けたローカルリードポインタ保持部５００７は、自らが保持するローカルリードポインタＲＰｌ１の値を通知されたアドレスで更新する（ステップＳ７０１９）。
【０１５３】
一方、ステップＳ７０１７において、前後関係判別部５００３が、ライトポインタＷＰの値と最新リードポインタの値とが等しいと判断すると（ステップＳ７０１４：Ｙｅｓ）、ライトポインタ更新確認部５００６が、ライトポインタＷＰの値が更新されたか否かを判断し（ステップＳ７０１５）、ライトポインタＷＰの値が更新されていないと判断すると（Ｓ７０１５：Ｎｏ）、再び、ステップＳ７０１５の前段階に移行する。
【０１５４】
一方、ライトポインタ更新確認部５００６が、ライトポインタＷＰの値が更新されたと判断すると（Ｓ７０１５：Ｙｅｓ）、最新リードポインタ抽出部５００５が、最新リードポインタの値が示すアドレスの次のアドレスをローカルリードポインタ保持部５００７に通知する。
【０１５５】
最新リードポインタの値が示すアドレスの次のアドレスの通知を受けたローカルリードポインタ保持部５００７は、自らが保持するローカルリードポインタＲＰｌ１の値を通知されたアドレスで更新する（ステップＳ７０１９）。
【０１５６】
そして、ディスクリプタ取得部５００８が、ローカルリードポインタ保持部５００７が保持するローカルリードポインタＲＰｌ１の値に従って、新たなディスクリプタＤ３０１０を取得する（ステップＳ７０２０）。その後、ディスクリプタ取得完了通知部５００９が、データ転送終了通知装置１０４０に対してディスクリプタ取得が完了したことを通知するディスクリプタ取得完了通知信号を送出する（ステップＳ７０２１）。
【０１５７】
次に、データ転送起動要求受信部５０１２が、ＤＭＡコントローラ１０３０又はＳＤＸＣインターフェース１０７０から送出されるデータ転送起動要求信号を受信したか否かを判断し（ステップＳ７０２２）、データ転送起動要求信号を受信してないと判断すると（ステップＳ７０２２：Ｎｏ）、再び、ステップＳ７０２２の直前の段階に移行する。
【０１５８】
一方、データ転送起動要求受信部５０１２が、データ転送起動要求信号を受信したと判断すると（ステップＳ７０２２：Ｙｅｓ）、ディスクリプタ設定部５０１０が、ディスクリプタ取得部５００８が取得したディスクリプタＤ３０１０の内容に従って、ＤＭＡコントローラ１０３０およびＳＤＸＣインターフェース１０７０の制御レジスタにＤＭＡ転送を開始するための規定値を書き込むことで、対応する論理チャネルＣＨ１を介したデータ転送を開始させる。その後、ステップＳ７０１０から処理を再開する。
＜３−３＞データ転送終了通知装置の動作
本実施の形態に係るデータ転送終了通知装置１０４０の動作について図１８に基づいて更に詳細に説明する。ここでは、各論理チャネルＣＨ１，ＣＨ２，ＣＨ３間での優先度が、論理チャネルＣＨ１が最も高く、以降論理チャネルＣＨ２、論理チャネルＣＨ３の順番で低くなるものとして説明する。
【０１５９】
まず、優先度判断部４０２０は、論理チャネルＣＨ１について、データ転送終了通知信号の有無を確認するように設定される（ステップＳ６０１１）。
【０１６０】
次に、優先度判断部４０２０が、論理チャネル転送終了検知部４０１１から入力される論理チャネルＣＨ１に係るデータ転送終了検知信号の有無を判断し（ステップＳ６０１２）、論理チャネル転送終了検知部４０１１からデータ転送終了通知信号が入力されていないと判断すると（ステップＳ６０１１：Ｎｏ）、データ転送終了通知信号の有無を確認したのが優先度の最も低い論理チャネルＣＨ３であるか否かを判断する（ステップＳ６０１５）。
【０１６１】
ここでは、論理チャネルＣＨ１について確認したのであるから、データ転送終了通知信号の有無を確認したのが優先度の最も低い論理チャネルＣＨ３ではないと判断し（ステップＳ６０１５：Ｎｏ）、優先度判断部４０２０は、論理チャネルＣＨ１の次に優先度が高い論理チャネルＣＨ２について、データ転送終了通知信号の入力有無を確認するように設定される（ステップＳ６０１６）。その後、優先度判断部４０２０が、論理チャネルＣＨ２に係るデータ転送終了検知信号の有無を判断する（ステップＳ６０１２）。
【０１６２】
一方、ステップＳ６０１２において、優先度判断部４０２０が、論理チャネル転送終了検知部４０１１から論理チャネルＣＨ１に係るデータ転送終了検知信号が入力されていると判断すると（ステップＳ６０１２：Ｙｅｓ）、論理チャネル転送終了通知部４０３１に、データ転送制御装置１０６１へ転送終了通知信号を送出させる（ステップＳ６０１３）。
【０１６３】
その後、優先度判断部４０２０は、データ転送制御装置１０６１からディスクリプタ取得完了通知信号受信部４０４１を介してディスクリプタ取得完了通知信号が入力されたか否かを判断し（ステップＳ６０１４）、ディスクリプタ取得完了通知信号を受信していないと判断すると（ステップＳ６０１４：Ｎｏ）、再び、ステップＳ６０１４の直前の段階に移行する。
【０１６４】
一方、ディスクリプタ取得完了通知信号を受信したと判断すると（ステップＳ６０１４：Ｙｅｓ）、優先度判断部４０２０は、ディスクリプタ取得完了通知信号に対応する論理チャネルが最も優先度の低い論理チャネルＣＨ３であるか否かを判断し（ステップＳ６０１５）、該当しないと判断すれば、優先度判断部４０２０は、次に優先度の高い論理チャネルＣＨ２についてデータ転送終了通知信号の入力有無を確認するように設定される（ステップＳ６０１６）。
【０１６５】
以後、以下のフローを繰り返すことになる。
【０１６６】
優先度判断部４０２０が、論理チャネルＣＨ１（２または３）について、論理チャネル転送終了検知部４０１ｉ（ｉ＝２または３）へのデータ転送終了通知信号の入力有無を確認し（ステップＳ６０１２）、論理チャネル転送終了検知部４０１ｉからデータ転送終了通知信号が入力されていないと判断すると（ステップＳ６０１２：Ｎｏ）、データ転送終了通知信号の入力有無を確認した論理チャネルＣＨｉが最も優先度の低い論理チャネルＣＨ３に該当するか判断する（ステップＳ６０１５）。該当する場合は、処理を終了し、ステップＳ６０１１から処理を再開する。
【０１６７】
一方、該当しない場合、優先度判断部４０２０は、論理チャネルＣＨｉの次に優先度が高い論理チャネルＣＨｉ＋１について、論理チャネル転送終了検知部４０１（ｉ＋１）へのデータ転送終了通知信号の有無を確認するように設定される（ステップＳ６０１６）。
【０１６８】
ステップＳ６０１２において、優先度判断部４０２０が、論理チャネル転送終了検知部４０１１から論理チャネルＣＨ１に係るデータ転送終了検知信号が入力されていると判断すると（ステップＳ６０１２：Ｙｅｓ）、論理チャネル転送終了通知部４０３１に、データ転送制御装置１０６１へ転送終了通知信号を送出させる（ステップＳ６０１３）。
【０１６９】
その後、優先度判断部４０２０は、データ転送制御装置１０６１からディスクリプタ取得完了通知信号受信部４０４１を介してディスクリプタ取得完了通知信号が入力されたか否かを判断し（ステップＳ６０１４）、ディスクリプタ取得完了通知信号を受信していないと判断すると（ステップＳ６０１４：Ｎｏ）、再び、ステップＳ６０１４の直前の段階に移行する。
【０１７０】
一方、ディスクリプタ取得完了通知信号を受信したと判断すると（ステップＳ６０１４：Ｙｅｓ）、優先度判断部４０２０は、データ転送終了通知信号の入力があった論理チャネルＣＨｉが最も優先度の低い論理チャネルＣＨ３であるか否かを判断し（ステップＳ６０１５）、該当しないと判断すれば、優先度判断部４０２０は、次に優先度の高い論理チャネルＣＨｉ＋１についてデータ転送終了通知信号の入力有無を確認するように設定される（ステップＳ６０１６）。
＜実施の形態２＞
以下、本実施の形態について説明する。なお、動作は実施の形態１と同様なので説明を省略する。
＜１＞構成
本実施の形態に係るデータ転送制御装置２０６１，２０６２，２０６３を含む情報処理システムのブロック図を図１９に示す。情報処理システムは、図２に示す構成と略同じであり、図１９に示すように、データ転送制御装置２０６１，２０６２，２０６３それぞれが、データ転送終了フラグＦ１，Ｆ２，Ｆ３を保持している点、リングバッファ５０５０が、管理情報として、グローバルリードポインタＲＰｇを保持していない点が相違する。なお、図２と同様の構成については同一の符号を付して説明を省略する。
【０１７１】
ＣＰＵ１０００は、データ転送制御装置２０６１，２０６２，２０６３それぞれにアクセスして、各データ転送制御装置２０６１，２０６２，２０６３が保持するローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３の値と、データ転送終了フラグＦ１，Ｆ２，Ｆ３を取得する。そして、ＣＰＵ１０００は、リングバッファ５０５０上のローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３が示す格納領域に格納されたディスクリプタＤ３０１０に基づくデータ転送が終了しているか否かをデータ転送終了フラグＦ１，Ｆ２，Ｆ３の値で判断する。
＜１−１＞データ転送制御装置
データ転送制御装置１０６１は、ディスクリプタ取得部５００８と、ローカルリードポインタ保持部５００７と、転送終了通知信号受信部５０００と、データ転送終了フラグ保持部５２０４と、フラグ更新手段５２０５と、ローカルリードポインタ設定部５２０６とを含んで構成される。なお、ディスクリプタ取得部５００８、ローカルリードポインタ保持部５００７、転送終了通知信号受信部５０００、ローカルリードポインタ取得部５００１、前後関係判別部５００３、最新リードポインタ抽出部５００５、ライトポインタ取得部５００２、ライトポインタ更新確認部５００６、ディスクリプタ取得完了通知部５００９、ディスクリプタ設定部５０１０およびデータ転送起動要求受信部５０１２の構成は、前述の実施の形態と同様なので、説明を省略する。
【０１７２】
フラグ保持部５２０４は、データ転送終了フラグＦ１を保持する。フラグ保持部５２０４は、保持するデータ転送終了フラグＦ１の内容をＣＰＵ１０００により参照される。
【０１７３】
フラグ更新部５２０５は、転送終了通知信号受信部５０００によりローカルリードポインタＲＰｌ１が示す格納領域に格納されたディスクリプタＤ３０１０に基づくデータ転送が終了すると、データ転送終了フラグＦ１を更新する。
【０１７４】
ローカルリードポインタ設定部５２０６は、リングバッファ５０５０上に記憶されたディスクリプタＤ３０１０のうちまだ実行が終了していないディスクリプタＤ３０１０が格納された格納領域のアドレスを取得して、ローカルリードポインタＲＰｌ１の値を取得したアドレスの値に設定する。
＜２＞動作
次に、本実施の形態に係るデータ転送制御装置を含む情報処理システムの全体動作について説明する。
【０１７５】
ＣＰＵ１０００、ＤＭＡコントローラ１０３０、データ転送終了通知装置１０４０、リングバッファ１０５０および３つのデータ転送制御装置２０６１，２０６２，２０６３相互間のシーケンス図を図２１に示す。以下、図２１に基づいて説明する。
【０１７６】
時刻Ｔ２１で、ＤＭＡコントローラ１０３０からデータ転送終了通知装置１０４０に対してチャネルＣＨ１でのデータ転送が終了した旨が通知されると、データ転送終了通知装置１０４０は、データ転送制御装置２０６１に対して、転送終了通知信号を送出する。
【０１７７】
転送終了通知信号を受信したデータ転送制御装置２０６１は、データ転送終了フラグＦ１の値を“１”に設定する。
【０１７８】
そして、ＣＰＵ１０００が、データ転送制御装置２０６１から、ローカルリードポインタＲＰｌ１の値およびデータ転送終了フラグＦ１の値を取得する。また、データ転送制御装置２０６１は、リングバッファ５０５０からまだ実行が終了していないデータ転送に対応するディスクリプタＤ３０１０を取得する。
【０１７９】
その後、取得したディスクリプタＤ３０１０に基づいてＤＭＡコントローラ１０３０を設定する。
【０１８０】
時刻Ｔ２２で、ＤＭＡコントローラ１０３０からデータ転送終了通知装置１０４０に対してチャネルＣＨ２でのデータ転送が終了した旨が通知されると、データ転送終了通知装置１０４０は、データ転送制御装置２０６２に対して、転送終了通知信号を送出する。
【０１８１】
転送終了通知信号を受信したデータ転送制御装置２０６２は、データ転送終了フラグＦ２の値を“１”に設定する。
【０１８２】
そして、ＣＰＵ１０００が、データ転送制御装置２０６２から、ローカルリードポインタＲＰｌ１の値およびデータ転送終了フラグＦ２の値を取得する。また、データ転送制御装置２０６２は、リングバッファ５０５０からまだ実行が終了していないデータ転送に対応するディスクリプタＤ３０１０を取得する。
【０１８３】
その後、取得したディスクリプタＤ３０１０に基づいてＤＭＡコントローラ１０３０を設定する。
【０１８４】
時刻Ｔ２３で、ＤＭＡコントローラ１０３０からデータ転送終了通知装置１０４０に対してチャネルＣＨ３でのデータ転送が終了した旨が通知されると、データ転送終了通知装置１０４０は、データ転送制御装置２０６３に対して、転送終了通知信号を送出する。
【０１８５】
転送終了通知信号を受信したデータ転送制御装置２０６３は、データ転送終了フラグＦ３の値を“１”に設定する。
【０１８６】
そして、ＣＰＵ１０００が、データ転送制御装置２０６３から、ローカルリードポインタＲＰｌ１の値およびデータ転送終了フラグＦ１の値を取得する。また、データ転送制御装置２０６１は、リングバッファ５０５０からまだ実行が終了していないデータ転送に対応するディスクリプタＤ３０１０を取得する。
【０１８７】
その後、取得したディスクリプタＤ３０１０に基づいてＤＭＡコントローラ１０３０を設定する。
【０１８８】
ＣＰＵ１０００は、各データ転送終了フラグＦ１，Ｆ２，Ｆ３およびローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３の値に基づいて、必要なデータ転送が全て完了したことを認識すると、転送された複数のデータを用いて処理を開始する。このとき、ＣＰＵ１０００は、データ転送終了フラグＦ１，Ｆ２，Ｆ３の値全てを“０”に戻す。
＜変形例＞
（１）実施の形態１では、ＤＭＡコントローラ１０３０とＳＤＸＣインターフェース１０７０とが３つの論理チャネルＣＨ１，ＣＨ２，ＣＨ３により接続され、論理チャネルＣＨ１，ＣＨ２，ＣＨ３毎に３つのデータ転送制御装置１０６１，１０６２，１０６３を備える例について説明したが、これに限定されるものではなく、例えば、図２２に示すように、ＤＭＡコントローラ１０３０とＳＤＸＣインターフェース１０７０とが４つ以上の論理チャネルＣＨ１，ＣＨ２，・・・，ＣＨｎにより接続され、論理チャネルＣＨ１，ＣＨ２，・・・，ＣＨｎ毎に４つ以上のデータ転送制御装置１０６１，１０６２，・・・，１０６ｎを備えたものであってもよい。また、ＤＭＡコントローラ１０３０とＳＤＸＣインターフェース１０７０とが２つの論理チャネル（図示せず）により接続され、論理チャネル毎に２つのデータ転送制御装置（図示せず）を備えるものであってもよい。
（２）実施の形態１および２では、データ転送終了通知装置１０４０が、３つの論理チャネルＣＨ１，ＣＨ２，ＣＨ３を介して並列に実行される複数のデータ転送のうちいずれか１つのデータ転送を対応する転送制御情報に基づいて制御する複数のデータ転送制御装置に共通に接続されており、ＤＭＡコントローラ１０３０からデータ転送制御装置１０６１，１０６２，１０６３ｎのいずれかに対してデータ転送制御装置１０６１，１０６２，１０６３が制御するデータ転送が終了したことを通知する例について説明したが、これに限定されるものではなく、例えば、図２３に示すように、ＤＭＡコントローラ１０３０とＳＤＸＣインターフェース１０７０とが３つの論理チャネルＣＨ１，ＣＨ２，ＣＨ３により接続され、データ転送終了通知装置１０４０が、４つ以上のデータ転送制御装置に共通に接続され、ＤＭＡコントローラ１０３０からデータ転送制御装置１０６１，１０６２，・・・，１０６ｎのいずれかに対してデータ転送制御装置１０６１，１０６２，・・・，１０６ｎが制御するデータ転送が終了したことを通知するものであってもよい。また、ＤＭＡコントローラ１０３０とＳＤＸＣインターフェース１０７０とが２つの論理チャネル（図示せず）により接続され、データ転送終了通知装置１０４０が、２つのデータ転送制御装置（図示せず）に共通に接続され、ＤＭＡコントローラ１０３０から２つのデータ転送制御装置のいずれかに対してデータ転送制御装置が制御するデータ転送が終了したことを通知するものであってもよい。
（３）実施の形態１では、転送制御情報管理手段が、リングバッファ１０５０により構成される例について説明したが、これに限定されるものではなく、例えば、転送制御情報管理手段が、図２４に示すように、アドレス（ｘ０００１，ｘ０００２，・・・．ｘ００１４，・・・）が連続した複数の格納領域Ｍ２５１，Ｍ２５２，・・・，Ｍ２６４，・・・から構成されたバッファ２０５０よりなるものであってもよい。
【０１８９】
また、本変形例では、前後関係判別部５００３が、ローカルリードポインタＲＰｌ１の値が、ローカルリードポインタＲＰｌ２，ＲＰｌ３の値よりも小さい場合、ローカルリードポインタＲＰｌ１の示すディスクリプタＤ３０１０ａの読み出し順序が、ローカルリードポインタＲＰｌ２，ＲＰｌ３の示すディスクリプタＤ３０１０ｂ，Ｄ３０１０ｃの読み出し順序よりも前方と判別する。
【０１９０】
本変形例によれば、前後関係判別部５００３は、ローカルリードポインタＲＰｌ１が示すディスクリプタＤ３０１０の読み出し順序と、ローカルリードポインタＲＰｌ２が示すディスクリプタＤ３０１０の読み出し順序と、ローカルリードポインタＲＰｌ３が示すディスクリプタＤ３０１０の読み出し順序との間での前後関係の判別を、ローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３の値の大小関係のみから行うことができる。
【０１９１】
ローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３がインクリメントされていく場合、ローカルリードポインタＲＰｌ１の値よりもローカルリードポインタＲＰｌ２，ＲＰｌ３の値の方が大きいと、ローカルリードポインタＲＰｌ１の示すディスクリプタＤ３０１０の読み出し順序が、ローカルリードポインタＲＰｌ２，ＲＰｌ３の示すディスクリプタＤ３０１０ｂ，Ｄ３０１０ｃの読み出し順序よりも前方と判別される。
【０１９２】
一方、ローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３がデクリメントされていく場合、ローカルリードポインタＲＰｌ１の値よりもローカルリードポインタＲＰｌ２，ＲＰｌ３の値の方が小さいと、ローカルリードポインタＲＰｌ１の示すディスクリプタＤ３０１０ａの読み出し順序が、ローカルリードポインタＲＰｌ２，ＲＰｌ３の示すディスクリプタＤ３０１０ｂ，Ｄ３０１０ｃの読み出し順序よりも前方と判別される。
【０１９３】
つまり、本変形例によれば、前後関係判別部５００３は、ローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３それぞれが示すディスクリプタＤ３０１０ａ，Ｄ３０１０ｂ，Ｄ３０１０ｃの読み出し順序の前後関係の判別に当たって、ライトポインタＷＰを参酌する必要がなくなる。
【０１９４】
なお、本変形例では、転送制御情報管理手段として、格納領域Ｍ２５１，Ｍ２５２，・・・のアドレスが連続なバッファ２０５０を用いる例について説明したが、これに限定されず、Ｍ２５１，Ｍ２５２，・・・のアドレスが不連続なバッファでもよい。また、本変形例では、各データ転送制御装置１０６１，１０６２，１０６３が、バッファ２０５０の開始アドレスやサイズといったバッファ情報を格納したバッファ情報格納部を備えるものであってもよい。
【０１９５】
更に、本変形例では、格納領域Ｍ２５１，Ｍ２５２，・・・の中にアドレスが不連続なものを含むバッファ２０５０を用いるものであって、例えば、格納領域Ｍ２５１と格納領域Ｍ２５２との間のアドレスが不連続である場合に、格納領域Ｍ２５１にディスクリプタＤ３０１０をキューイングした際のライトポインタＷＰの移動位置を示すような機能を有するアドレスポインタを管理情報に含む構成であってもよい。
（４）実施の形態１では、ディスクリプタ取得部５００８が、ローカルリードポインタ保持部５００７に保持されているローカルリードポインタＲＰｌ１の値に従って、リングバッファ１０５０上における当該ローカルリードポインタＲＰｌ１の示す格納領域に格納されているディスクリプタＤ３０１０ａ（図７参照）を取得する動作を行う例について説明したが、これに限定されるものではなく、例えば、ディスクリプタ取得部５００８が、ディスクリプタＤ３０１０ａの取得を完了すると、取得したディスクリプタＤ３０１０の格納領域のアドレスでローカルリードポインタＲＰｌ１の値を更新するようにしてもよい。
【０１９６】
このとき、ディスクリプタ取得部５００８は、ライトポインタ取得部５００２から取得したライトポインタＷＰの値と、最新リードポインタ抽出部５００５により抽出される最新リードポインタの値とからリングバッファ２０５０上における取得すべきディスクリプタＤ３０１０の格納領域を特定するようにすればよい。
（４）実施の形態１では、最新リードポインタ抽出部５００５が、ローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３の値同士を比較して、ローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３の中から、ライトポインタＷＰの値との差が最も小さいローカルリードポインタを最新リードポインタとして抽出し、前後関係判別部５００３が、ライトポインタＷＰの値と最新リードポインタの値とが等しいと判定すると、ディスクリプタ取得部５００８が、新たにディスクリプタＤ３０１０を取得する動作を行わない例について説明したが。これに限定されるものではなく、例えば、所定の閾値と最新リードポインタの値とを比較する閾値比較手段（図示せず）を備え、ディスクリプタ取得部５００８が、閾値比較手段により所定の閾値と最新リードポインタの値とが等しいと判定されると、最新リードポインタの示すディスクリプタＤ３０１０の次に読み出される新たなディスクリプタＤ３０１０を取得する動作を行わないようにしてもよい。
【０１９７】
また、本変形例では、当該所定の閾値をデータ転送制御装置１０６１，１０６２，１０６３毎に別の値に設定してもよいし、或いは、全てのデータ転送制御装置１０６１，１０６２，１０６３で共通の値に設定してもよい。
【０１９８】
また、本変形例では、所定の閾値が、グローバルリードポインタＲＰｇの値に対して予め定められた一定の値を加算してなるものであってもよい。
【０１９９】
更に、本変形例では、所定の閾値が、ライトポインタＷＰの値に対して予め定められた一定の値を減算してなるものであってもよい。
【０２００】
なお、本変形例では、閾値比較手段が、最新リードポインタの値が当該所定の閾値と等しいことを検出すると、最新リードポインタの値と所定の閾値とが等しい状態であることをＣＰＵ１０００に通知してディスクリプタＤ３０１０のリングバッファ１０５０への格納を要求する格納要求部（図示せず）を備えるものであってもよい。
（５）実施の形態１および２では高速ＩＯインターフェースとしてＳＤＸＣインターフェース１０７０が用いられる例について説明したが、これに限定されず、例えば、ＵＳＢやＳＡＴＡなど、その他のＩＯインターフェースであってもよい。
（６）実施の形態１および２では、複数のデータ転送制御装置１０６１，１０６２，１０６３が、ＳＤＸＣインターフェース１０７０に設けられたＩＯバッファ１０７４と主記憶装置１０１０との間のデータ転送を制御する例について説明したが、これに限定されず、２つの一般的な格納領域（例えば、ＤＲＡＭ、ＳＲＡＭ等）の間でのデータ転送を制御するものであってもよい。
（７）実施の形態１および２では、ＳＤＸＣインターフェース１０７０に設けられたＩＯバッファ１０７４と主記憶装置１０１０との間で複数の論理チャネルＣＨ１，ＣＨ２，ＣＨ３を介して複数のデータ転送が並列に行われる例について説明したが、これに限定されるものではなく、例えば、複数の物理チャネル（図示せず）を介して複数のデータ転送が並列に行われるものであってもよい。
（８）実施の形態１および２ではディスクリプタＤ３０１０が、転送元アドレス、転送先アドレス、転送するデータのサイズを含んで構成される例について説明したが、転送元アドレス、転送先アドレス、転送サイズこれに限定されず、例えば、ディスクリプタＤ３０１０が転送元アドレスを含まないものであってもよい。
（９）実施の形態１および２では、ディスクリプタＤ３０１０が、更に、間欠転送を行うか否かを指定するための情報、間欠転送を行う場合における１回当たりの転送するデータのサイズおよび論理チャネルを用いたＤＭＡ転送を行うか否かを指定するための情報等からなる転送モード情報を含む構成であってもよい。
（１０）実施の形態１および２では、ディスクリプタＤ３０１０が、転送元アドレス、転送先アドレス、転送するデータのサイズを含んで構成される例について説明したが、これに限定されるものではなく、ディスクリプタＤ３０１０が、ＳＤＸＣデバイス１０８０に対して発行するＩＯコマンド種別やコマンドの引数を含んで構成されるものであってもよい。
（１１）実施の形態１および２では、リングバッファ１０５０，５０５０がメモリで実現される場合を例に説明したが、これに限定されず、例えばリングバッファ１０５０がレジスタファイルで構成されてなるものであってもよい。また、実施の形態１では、リングバッファ１０５０，５０５０が１２個のディスクリプタＤ３０１０を格納する例について説明したが、これに限定されるものではなく、１３個以上のディスクリプタＤ３０１０、或いは、１１個以下のディスクリプタＤ３０１０を格納するものであってもよい。
（１２）実施の形態１および２では、リングバッファ１０５０，５０５０へのディスクリプタＤ３０１０の格納がＣＰＵ１０００により行われる例について説明したが、これに限定されず、例えば、ＣＰＵ１０００がまずリングバッファ１０５０，５０５０以外の所定のバッファ（図示せず）に格納し、当該所定のバッファに格納されたディスクリプタＤ３０１０をリングバッファ１０５０，５０５０に転送する専用のモジュール（図示せず）を備えたものであってもよい。
（１３）実施の形態１では、ライトポインタＷＰ、グローバルリードポインタＲＰｇ、ローカルリードポインタＲＰｌ１，ＲＰｌ２がインクリメントされていく例について説明したが、これに限定されず、例えば、ライトポインタＷＰ、グローバルリードポインタＲＰｇおよびローカルリードポインタＲＰｌ１，ＲＰｌ２，ＲＰｌ３がデクリメントされていくものであってもよい。
（１４）実施の形態１では、ＤＭＡコントローラ１０３０に各論理チャネルＣＨ１，ＣＨ２，ＣＨ３毎に、転送されたデータのチェックサムを計算するチェックサム計算部（図示せず）が設けられ、チェックサム計算部による計算結果が転送されたデータに含まれるチェックサム期待値に一致しなかった場合（チェックサムエラーが発生した場合）に、異常終了通知信号をデータ転送終了信号に含ませる例について説明したが、これに限定されるものではなく、例えば、ＤＭＡコントローラ１０３０に転送されたデータのハッシュ値を計算するハッシュ値計算部（図示せず）が設けられ、ハッシュ計算部による計算結果が転送されたデータのハッシュ値の期待値と一致しなかった場合に、異常終了通知信号をデータ転送終了信号に含ませるものであってもよい。
【０２０１】
あるいは、各データ転送制御装置１０６１，１０６２，１０６３毎にデータ転送時間をカウントするタイマ（図示せず）が設けられ、転送終了通知信号受信部５０００が、データ転送が所定の時間内に終了しなかったときに、データ転送がタイムアウトエラーによる異常終了をしたと認識するものであってもよい。
（１５）実施の形態１および２では、各論理チャネルＣＨ１，ＣＨ２，ＣＨ３の優先度が予め定められてなる例について説明したが、これに限定されず、例えば、論理チャネルＣＨ１，ＣＨ２，ＣＨ３の優先度を設定するレジスタ等を設けて、当該レジスタをＣＰＵ１０００が、任意のタイミングで更新するものであってもよい。
（１６）実施の形態１および２では、データ転送終了通知装置１０４０が論理チャネルＣＨ１，ＣＨ２，ＣＨ３毎に対応する論理チャネル転送終了検知部４０１１，４０１２，４０１３を備え、論理チャネルＣＨ１，ＣＨ２，ＣＨ３毎に各別に転送終了通知信号を受信する例について説明したが、これに限定されず、例えば、データ転送終了通知装置１０４０が、各論理チャネルＣＨ１，ＣＨ２，ＣＨ３に対して、転送終了か転送中かをポーリングで順番に確認していく１つの論理チャネル転送終了検知部（図示せず）を備えたものであってもよい。
（１７）実施の形態１および２では、転送終端部５０１１が、各論理チャネルＣＨ１，ＣＨ２，ＣＨ３からの割り込みをクリアする例について説明したが、これに限定されず、例えば、転送終端部５０１１が、対応する論理チャネルＣＨ１，ＣＨ２，ＣＨ３に対してデータ転送の終了が確認された旨を通知するものであってもよい。
（１８）実施の形態１では、ディスクリプタ取得部５００８が、最新リードポインタの値がライトポインタＷＰの値と等しいと新たにディスクリプタＤ３０１０を取得する動作を行わない例について説明したが、更に、最新リードポインタの値とライトポインタＷＰの値が等しい状態であることをＣＰＵ１０００に通知してディスクリプタＤ３０１０のリングバッファ１０５０への格納を要求する格納要求部（図示せず）を備えるものであってもよい。
【０２０２】
これにより、ＣＰＵ１０００からリングバッファ１０５０へのディスクリプタＤ３０１０の格納待ち時間を縮小することができるから、情報処理システム全体の処理効率の向上を図ることができる。
（１９）前述の実施の形態１は、ＳＤＸＣインターフェース１０７０と、主記憶装置１０１０と、ＤＭＡコントローラ１０３０と、メモリコントローラ１０２０と、３つのデータ転送制御装置１０６１，１０６２，１０６３と、データ転送終了通知装置１０４０と、リングバッファ１０５０とが１つの半導体集積回路に集積されてなるＬＳＩとして実現してもよい。或いは、３つのデータ転送制御装置１０６１，１０６２，１０６３、データ転送終了通知装置１０４０を個別にＬＳＩで実現してもよい。
【０２０３】
本変形例に係るＬＳＩは、図２５に示すように、ＣＰＵ１０００とともに回路基盤９０１に搭載された形で、例えば、デジタルテレビ９１０、放送受信装置（蓄積再生装置）９１１、携帯電話機９１２、デジタルカメラ９１３、自動車９１５に搭載される車載端末９１４に適用される。
（２０）前述では、ＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
【０２０４】
また、集積回路化の手法はＬＳＩに限るものではなく、専用回路または汎用プロセッサで実現しても良い。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。
【０２０５】
さらには、半導体技術の進歩または派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行っても良い。バイオ技術の適応などが可能性として有り得る。
【産業上の利用可能性】
【０２０６】
本構成は、複数のデータ転送を実行する場合において効率的な転送制御が実現できる。特に、各データ転送において転送サイズが異なる場合や、転送異常が発生し、繰り返し同一転送を行う場合について、従来技術に比べてデータ転送待ち時間を大幅に短縮でき、データ転送スループットの飛躍的な向上に奏功する。従って、ＳＤＸＣやＵＳＢ、ＳＡＴＡなどに代表される高速ＩＯインターフェースと主記憶との間のデータ転送を行うような集積回路製品に有効である。その他、記憶領域間の複数のデータ転送を行うような集積回路製品、家電製品、パーソナルコンピュータ、および携帯電話などにも有効である。
【符号の説明】
【０２０７】
１０４０  データ転送終了通知装置
１０５０  リングバッファ
１０６１，１０６２，１０６３  データ転送制御装置
４０１１，４０１２，４０１３  論理チャネル転送終了検知部
４０２０  優先度判断部
４０３１，４０３２，４０３３  論理チャネル転送終了通知部
４０４１，４０４２，４０４３  ディスクリプタ取得完了通知信号受信部
５０００  転送終了通知信号受信部
５００１  ローカルリードポインタ取得部
５００２  ライトポインタ取得部
５００３  前後関係判別部
５００４  リードポインタ更新部
５００５  最新リードポインタ抽出部
５００６  ライトポインタ更新確認部
５００７  ローカルリードポインタ保持部
５００８  ディスクリプタ取得部
５００９  ディスクリプタ取得完了通知部
５０１０  ディスクリプタ設定部
５０１１  転送終端部
５０１２  データ転送起動要求受信部
Ｄ３０１０，Ｄ３０１０ａ，Ｄ３０１０ｂ，Ｄ３０１０ｃ，Ｄ３０１０ｄ，Ｄ３０１０ｅ  ディスクリプタ
Ｄ３０１１  転送元アドレス
Ｄ３０１２  転送先アドレス
Ｄ３０１４  転送サイズ
Ｍ５１，Ｍ５２，・・・，Ｍ５８，Ｍ２５１，Ｍ２５２，・・・，Ｍ２６４  格納領域
ＯＲＦ  オーバーラップフラグ
ＲＰｇ  グローバルリードポインタ
ＲＰｌ１  ローカルリードポインタ（第１のローカルリードポインタ）
ＲＰｌ２，ＲＰｌ３  ローカルリードポインタ（第２のローカルリードポインタ）
【図１】
2011155096.tif 000003
【図２】
2011155096.tif 000004
【図３】
2011155096.tif 000005
【図４】
2011155096.tif 000006
【図５】
2011155096.tif 000007
【図６】
2011155096.tif 000008
【図７】
2011155096.tif 000009
【図８】
2011155096.tif 000010
【図９】
2011155096.tif 000011
【図１０】
2011155096.tif 000012
【図１１】
2011155096.tif 000013
【図１２】
2011155096.tif 000014
【図１３】
2011155096.tif 000015
【図１４】
2011155096.tif 000016
【図１５】
2011155096.tif 000017
【図１６】
2011155096.tif 000018
【図１７】
2011155096.tif 000019
【図１８】
2011155096.tif 000020
【図１９】
2011155096.tif 000021
【図２０】
2011155096.tif 000022
【図２１】
2011155096.tif 000023
【図２２】
2011155096.tif 000024
【図２３】
2011155096.tif 000025
【図２４】
2011155096.tif 000026
【図２５】
2011155096.tif 000027
【図２６】
2011155096.tif 000028
【図２７】
2011155096.tif 000029
【図２８】
2011155096.tif 000030
【図２９】
2011155096.tif 000031
【図３０】
2011155096.tif 000032
【手続補正書】
【提出日】平成23年7月29日(2011.7.29)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のデータ転送チャネルで行われるデータ転送を制御するためにデータ転送チャネル毎に設けられた複数のデータ転送制御装置のうちの任意の１つのデータ転送制御装置であり、且つ、所定の読み出し順序で読み出される複数の転送制御情報と所定の読み出し順序を管理する管理情報とを保持する転送制御情報管理手段から１つの転送制御情報を読み出し、当該転送制御情報に基づいて１のデータ転送チャネルで行われるデータ転送を制御するデータ転送制御装置であって、
前記転送制御情報管理手段から前記転送制御情報を読み出す転送制御情報読出手段と、
前記転送制御情報読出手段により読み出された前記転送制御情報の読み出し順序を示す順序情報を保持する順序情報保持手段と、
前記転送制御情報に基づいたデータ転送が終了したことを認識する転送終了認識手段と、
他のデータ転送制御装置それぞれが保持する順序情報を他のデータ転送制御装置から取得する順序情報取得手段と、
自らが保持する順序情報が示す読み出し順序と、他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序との前後関係を判別する前後関係判別手段と、
前記転送終了認識手段により前記データ転送が終了したことが認識され、且つ前記前後関係判別手段により前記自らが保持する順序情報が示す読出し順序が前記他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序よりも前方と判別されると、前記管理情報を更新する管理情報更新手段とを備える
ことを特徴とするデータ転送制御装置。
【請求項２】
前記管理情報は、前記自らが保持する順序情報および前記他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序の中で最も前方の読み出し順序よりも前方の読み出し順序を示す実行済み順序情報を含んで構成され、
前記管理情報更新手段は、前記前後関係判別手段により前記自らが保持する順序情報が示す読出し順序が前記他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序よりも前方と判別されると、前記自らが保持する順序情報を用いて前記実行済み順序情報を更新する
ことを特徴とする請求項１記載のデータ転送制御装置。
【請求項３】
前記管理情報更新手段は、前記前後関係判別手段により前記自らが保持する順序情報が示す読み出し順序が前記他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序よりも前方ではないと判別されると、前記実行済み順序情報を前記自らが保持する順序情報を用いて更新しないこと
を特徴とする請求項２に記載のデータ転送制御装置。
【請求項４】
前記自らが保持する順序情報および前記他のデータ転送制御装置それぞれが保持する順序情報の中で最後の読み出し順序を示す最新順序情報を抽出する最新順序情報抽出手段を備え、
前記転送制御情報読出手段は、前記転送終了認識手段により前記データ転送の終了が認識されると、前記転送制御情報管理手段から前記最新順序情報が示す読み出し順序で読み出される前記転送制御情報の次に読み出される前記転送制御情報を取得する
ことを特徴とする請求項２に記載のデータ転送制御装置。
【請求項５】
前記管理情報は、前記転送制御情報管理手段に最後に格納された転送制御情報の読み出し順序を示す最終順序情報を含んで構成され、
前記最終順序情報を取得する最終順序情報取得手段と、
前記最終順序情報と前記最新順序情報抽出手段により抽出される前記最新順序情報とを比較する最終順序比較手段と
を備え、
前記転送制御情報読出手段は、前記最終順序比較手段により前記最終順序情報が示す読み出し順序と前記最新順序情報が示す読み出し順序とが等しいと判定されると、前記転送制御情報管理手段から前記最新順序情報が示す前記転送制御情報の次に読み出される前記転送制御情報を取得する動作を行わない
ことを特徴とする請求項４記載のデータ転送制御装置。
【請求項６】
前記最終順序情報の更新を検出する最終順序情報更新検出手段を備え、
前記転送制御情報読出手段は、前記前後関係判別手段が、前記最新順序情報が示す読み出し順序と前記最終順序情報が示す読み出し順序とが等しいと判別した場合において、前記最終順序情報更新検出手段により前記最終順序情報の更新が検出されると、前記転送制御情報管理手段から前記最新順序情報が示す読み出し順序で読み出される転送制御情報の次に読み出される前記転送制御情報を取得する動作を行う
ことを特徴とする請求項５記載のデータ転送制御装置。
【請求項７】
前記自らが保持する順序情報は、自らが読み出す前記転送制御情報の格納領域のアドレスを示す自らが保持するローカルリードポインタであり、
前記他のデータ転送制御装置それぞれが保持する順序情報は、他のデータ転送制御装置が読み出す前記転送制御情報の格納領域のアドレスを示す他のデータ転送制御装置それぞれが保持するローカルリードポインタであり、
前記管理情報は、前記転送制御情報管理手段に最後に格納された転送制御情報の格納領域のアドレスを示すライトポインタと、前記自らが保持するローカルリードポインタが示すアドレスと前記他のデータ転送制御装置それぞれが保持するローカルリードポインタが示すアドレスの中で最も読み出し順序が前方の前記転送制御情報よりも読み出し順序が前方の前記転送制御情報が格納された格納領域のアドレスを示すグローバルリードポインタとを含んで構成される
ことを特徴とする請求項２記載のデータ転送制御装置。
【請求項８】
前記転送制御情報管理手段は、リングバッファにより構成され、
前記管理情報は、前記ライトポインタの値を更新する際、更新前のライトポインタの値が更新後のライトポインタの値よりも大きいとイネーブル状態に設定され、前記リードポインタを更新する際、更新前のグローバルリードポインタの値が更新後のグローバルリードポインタの値よりも大きいとディセーブル状態に設定されるオーバラップフラグを含んで構成される
ことを特徴とする請求項７記載のデータ転送制御装置。
【請求項９】
前記前後関係判別手段は、前記ライトポインタの値と、前記自らが保持するローカルリードポインタの値および前記他のデータ転送制御装置それぞれが保持するローカルリードポインタの値との大小関係を比較し、前記自らが保持するローカルリードポインタの示すアドレスの格納領域に格納された前記転送制御情報の読み出し順序と、前記他のデータ転送制御装置それぞれが保持するローカルリードポインタが示すアドレスの格納領域に格納された前記転送制御情報の読出し順序との前後関係を判別する
ことを特徴とする請求項８記載のデータ転送制御装置。
【請求項１０】
前記管理情報更新手段は、前記グローバルリードポインタの値を更新する場合、更新前の前記グローバルリードポインタの値が、更新後の前記グローバルリードポインタの値よりも大きいと前記オーバラップフラグをディセーブル状態に設定する
ことを特徴とする請求項８に記載のデータ転送制御装置。
【請求項１１】
前記転送制御情報管理手段は、アドレスが連続した複数の格納領域にアドレスの小さい格納領域から順番に転送制御情報が格納されてなるバッファから構成される
ことを特徴とする請求項７に記載のデータ転送制御装置。
【請求項１２】
前記前後関係判別手段は、前記自らが保持するローカルリードポインタの値が、前記他のデータ転送制御装置が保持するローカルリードポインタの値よりも小さい場合、前記自らが保持するローカルリードポインタが示すアドレスの格納領域に格納された前記転送制御情報の読み出し順序が前記他のデータ転送制御装置それぞれが保持するローカルリードポインタが示すアドレスの格納領域に格納された前記転送制御情報の読み出し順序よりも前方と判別する
ことを特徴とする請求項１１に記載のデータ転送制御装置。
【請求項１３】
前記管理情報更新手段は、前記前後関係判別手段により前記自らが保持するローカルリードポインタが示すアドレスの格納領域に格納された前記転送制御情報の読み出し順序が前記他のデータ転送制御装置それぞれが保持するローカルリードポインタが示すアドレスの格納領域に格納された前記転送制御情報の読出し順序よりも前方と判別されると、前記グローバルリードポインタの値を前記自らが保持するローカルリードポインタの値を用いて更新する
ことを特徴とする請求項１１に記載のデータ転送制御装置。
【請求項１４】
前記最新順序情報抽出手段は、前記自らが保持するローカルリードポインタおよび前記他のデータ転送制御装置それぞれが保持するローカルリードポインタの中から、読み出し順序が最後の転送制御情報が格納された格納領域のアドレスを示す最新リードポインタを抽出するものであって、
所定の閾値と前記最新リードポインタの値とを比較する閾値比較手段を備え、
前記転送制御情報読出手段は、前記閾値比較手段により前記所定の閾値と前記最新リードポインタの値とが等しいと判定されると、前記最新リードポインタの示すアドレスの格納領域に格納された前記転送制御情報の次に読み出される前記転送制御情報を取得する動作を行わない
ことを特徴とする請求項７記載のデータ転送制御装置。
【請求項１５】
前記所定の閾値は、前記グローバルリードポインタの値に対して予め定められた一定の値を加算してなる
ことを特徴とする請求項１４記載のデータ転送制御装置。
【請求項１６】
前記所定の閾値は、前記ライトポインタの値に対して予め定められた一定の値を減算してなる
ことを特徴とする請求項１４記載のデータ転送制御装置。
【請求項１７】
前記転送制御情報は、少なくともデータ転送の転送先アドレスおよび転送するデータのサイズを含む
ことを特徴とする請求項１に記載のデータ転送制御装置。
【請求項１８】
前記転送制御情報読出手段による前記転送制御情報の取得が完了すると転送制御情報取得完了信号を送出する転送制御情報取得完了通知手段を備える
ことを特徴とする請求項１に記載のデータ転送制御装置。
【請求項１９】
前記転送終了認識手段は、前記データ転送が正常終了したか異常終了したかを認識し、
前記転送制御情報読出手段は、前記転送終了認識手段により前記データ転送が正常終了したと認識されると新たに前記転送制御情報を取得する動作を行い、前記転送終了認識手段により前記データ転送が異常終了したと認識されると新たに前記転送制御情報を取得する動作を行わない
ことを特徴とする請求項１記載のデータ転送制御装置。
【請求項２０】
複数のデータ転送チャネルで行われるデータ転送を制御するためにデータ転送チャネル毎に設けられた複数のデータ転送制御装置のうちの任意の１つのデータ転送制御装置であり、且つ、所定の読み出し順序で読み出される複数の転送制御情報と所定の読み出し順序を管理する管理情報とを保持する転送制御情報管理手段から１つの転送制御情報を読み出し、当該転送制御情報に基づいて１のデータ転送チャネルで行われるデータ転送を制御するデータ転送制御装置であって、
前記転送制御情報管理手段から転送制御情報を読み出す転送制御情報読出手段と、
前記転送制御情報読出手段が読み出す前記転送制御情報の読み出し順序を示す順序情報を保持する順序情報保持手段と、
前記転送制御情報に基づいたデータ転送が終了したことを認識する転送終了認識手段と、
前記転送制御情報に基づいたデータ転送が終了したか否かを示すデータ転送終了フラグを保持するフラグ保持手段と、
前記転送終了認識手段により前記データ転送の終了が認識されると、前記データ転送終了フラグを更新するフラグ更新手段よりなる
ことを特徴とするデータ転送制御装置。
【請求項２１】
複数のデータ転送チャネルを介して並列に実行される複数のデータ転送のうちいずれか１つのデータ転送を対応する転送制御情報に基づいて制御するデータ転送装置が複数あり、当該複数のデータ転送制御装置に共通に接続され且つ少なくとも１つのデータ転送制御装置に対して当該データ転送制御装置が制御するデータ転送が終了したことを通知するデータ転送終了通知装置であって、
少なくとも１つのデータ転送の終了を検知する転送終了検知手段と、
転送終了検知手段が少なくとも１つのデータ転送の終了を検知すると、対応するデータ転送制御装置に対して、他のデータ転送制御装置が制御するデータ転送が行われているか否かに関わらず、所定のタイミングで転送終了通知信号を送出する転送終了通知手段と
を備えることを特徴とするデータ転送終了通知装置。
【請求項２２】
複数の前記データ転送チャネルが、予め優先度が設定されてなり、
前記転送終了検知手段が複数のデータ転送の終了を同時に検知したときに、転送終了通知手段に対して、最も優先度の高い前記データ転送チャネルに対応する前記データ転送制御装置のみに対して前記転送終了通知信号を送出させる優先度判断部を備える
ことを特徴とする請求項２１記載のデータ転送終了通知装置。
【請求項２３】
前記データ転送制御装置から前記転送制御情報の取得が完了したことを認識する転送制御情報取得完了認識手段を備え、
前記転送終了通知手段は、前記転送制御情報取得完了認識手段により一のデータ転送制御装置において前記転送制御情報の取得が完了したことが認識されるまで、他のデータ転送制御装置に対して前記転送終了通知信号を送出しない
ことを特徴とする請求項２１記載のデータ転送終了通知装置。
【請求項２４】
前記転送終了検知手段は、前記データ転送が正常終了したか異常終了したかを検知し、対応する前記データ転送制御装置に対して終了結果通知信号を送出する終了結果検知手段を備える
ことを特徴とする請求項２１に記載のデータ転送終了通知装置。
【請求項２５】
前記終了結果検知手段は、転送されるデータにチェックサムエラーが発生すると、データ転送が異常終了したと検知する
ことを特徴とする請求項２４記載のデータ転送終了通知装置。
【請求項２６】
複数のデータ転送チャネルで行われるデータ転送を制御するためにデータ転送チャネル毎に設けられた複数のデータ転送制御装置のうちの任意の１つのデータ転送制御用集積回路であり、且つ、所定の読み出し順序で読み出される複数の転送制御情報と所定の読み出し順序を管理する管理情報とを保持する転送制御情報管理手段から１つの転送制御情報を読み出し、当該転送制御情報に基づいて１のデータ転送チャネルで行われるデータ転送を制御するデータ転送制御用集積回路であって、
前記転送制御情報管理手段から前記転送制御情報を読み出す転送制御情報読出手段と、
前記転送制御情報読出手段が読み出す前記転送制御情報の読み出し順序を示す順序情報を保持する順序情報保持手段と、
前記転送制御情報に基づいたデータ転送が終了したことを認識する転送終了認識手段と、
他のデータ転送制御装置それぞれが保持する第２の順序情報を他のデータ転送制御装置から取得する順序情報取得手段と、
自らが保持する順序情報が示す読み出し順序と、他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序との前後関係を判別する前後関係判別手段と、
前記転送終了認識手段により前記データ転送が終了したことが認識され、且つ前記前後関係判別手段により前記自らが保持する順序情報が示す読出し順序が前記他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序よりも前方と判別されると、前記管理情報を更新する管理情報更新手段とを備える
ことを特徴とするデータ転送制御用集積回路。
【請求項２７】
複数のデータ転送チャネルで行われるデータ転送を制御するためにデータ転送チャネル毎に設けられた複数のデータ転送制御装置のうちの任意の１つのデータ転送制御装置のデータ転送制御方法であり、且つ、所定の読み出し順序で読み出される複数の転送制御情報と所定の読み出し順序を管理する管理情報とを保持する転送制御情報管理手段から１つの転送制御情報を読み出し、当該転送制御情報に基づいて１のデータ転送チャネルで行われるデータ転送を制御するデータ転送制御方法であって、
前記転送制御情報管理手段から前記転送制御情報を読み出す転送制御情報読出ステップと、
前記転送制御情報読出手段が読み出す前記転送制御情報の読み出し順序を示す順序情報を保持する順序情報保持ステップと、
前記転送制御情報に基づいたデータ転送が終了したことを認識する転送終了認識手段と、他のデータ転送制御装置それぞれが保持する順序情報を他のデータ転送制御装置から取得する順序情報取得ステップと、
自らが保持する順序情報が示す読み出し順序と、他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序との前後関係を判別する前後関係判別ステップと、
前記転送終了認識手段により前記データ転送が終了したことが認識され、且つ前記前後関係判別手段により前記自らが保持する順序情報が示す読出し順序が前記他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序よりも前方と判別されると、前記管理情報を更新する管理情報更新ステップと
を含むことを特徴とするデータ転送制御方法。
【請求項２８】
複数のデータ転送チャネルを介して並列に実行される複数のデータ転送のうちいずれか１つのデータ転送を対応する転送制御情報に基づいて制御するデータ転送装置が複数あり、当該複数のデータ転送制御装置に共通に接続され且つ少なくとも１つのデータ転送制御装置に対して当該データ転送制御装置が制御するデータ転送が終了したことを通知するデータ転送終了通知用集積回路であって、
少なくとも１つのデータ転送の終了を検知する転送終了検知手段と、
前記転送終了検知手段が少なくとも１つのデータ転送の終了を検知すると、対応する前記データ転送制御装置に対して、他のデータ転送制御装置が制御するデータ転送が行われているか否かに関わらず、所定のタイミングで転送終了通知信号を送出する転送終了通知手段とを備える
ことを特徴とするデータ転送終了通知用集積回路。
【請求項２９】
複数のデータ転送チャネルを介して並列に実行される複数のデータ転送のうちいずれか１つのデータ転送を対応する転送制御情報に基づいて制御するデータ転送装置が複数あり、当該複数のデータ転送制御装置に共通に接続され且つ少なくとも１つのデータ転送制御装置に対して当該データ転送制御装置が制御するデータ転送が終了したことを通知するデータ転送終了通知方法であって、
少なくとも１つのデータ転送の終了を検知する転送終了検知ステップと、
前記転送終了検知手段が少なくとも１つのデータ転送の終了を検知すると、対応する前記データ転送制御装置に対して、他のデータ転送制御装置が制御するデータ転送が行われているか否かに関わらず、所定のタイミングで転送終了通知信号を送出する転送終了通知ステップとを含む
ことを特徴とするデータ転送終了通知方法。
【請求項３０】
複数のデータ転送チャネルで行われるデータ転送を制御するためにデータ転送チャネル毎に設けられた複数のデータ転送制御装置のうちの任意の１つのデータ転送制御装置であり、且つ、所定の読み出し順序で読み出される複数の転送制御情報と所定の読み出し順序を管理する管理情報とを保持する転送制御情報管理手段から１つの転送制御情報を読み出し、当該転送制御情報に基づいて１のデータ転送チャネルで行われるデータ転送を制御するデータ転送制御装置と、複数のデータ転送制御装置に共通に接続され且つ少なくとも１つのデータ転送制御装置に対して当該データ転送制御装置が制御するデータ転送が終了したことを通知するデータ転送終了通知装置とから構成されるデータ転送制御システムであって、
前記転送制御情報管理手段から前記転送制御情報を読み出す転送制御情報読出手段と、
前記転送制御情報読出手段が読み出す前記転送制御情報の読み出し順序を示す順序情報を保持する順序情報保持手段と、
前記転送制御情報に基づいたデータ転送が終了したことを認識する転送終了認識手段と、他のデータ転送制御装置それぞれが保持する順序情報を他のデータ転送制御装置から取得する順序情報取得手段と、
自らが保持する順序情報が示す読み出し順序と、他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序との前後関係を判別する前後関係判別手段と、
前記転送終了認識手段により前記データ転送が終了したことが認識され、且つ前記前後関係判別手段により前記自らが保持する順序情報が示す読出し順序が前記他のデータ転送制御装置それぞれが保持する順序情報が示す読み出し順序よりも前方と判別されると、前記管理情報を更新する管理情報更新手段とを有するデータ転送制御装置と、
少なくとも１つのデータ転送の終了を検知する転送終了検知手段と、
前記転送終了検知手段が少なくとも１つのデータ転送の終了を検知すると、対応する前記データ転送制御装置に対して、他のデータ転送制御装置が制御するデータ転送が行われているか否かに関わらず、所定のタイミングで転送終了通知信号を送出する転送終了通知手段とを有するデータ転送終了通知装置とを備える
ことを特徴とするデータ転送制御システム。
【国際調査報告】
2011155096.tif 000033
2011155096.tif 000034
2011155096.tif 000035
2011155096.tif 000036