(57)【要約】【課題】  磁気ディスク装置に対する入出力経路を選択して入出力処理を制御する入出力処理装置を提供する。【解決手段】  演算処理装置よりデータ転送指示を受けた処理部５０１１は主記憶装置より転送指示のＣＭＤを読み出す。データ転送指示が主記憶装置から磁気ディスク装置への出力転送か磁気ディスク装置から主記憶装置への入力転送かを判断する。出力転送の場合、出力手段５０１２１は、ＣＲＣが付加されたデータの転送で磁気ディスク装置からの報告がＣＲＣ検証の異常終了の場合、演算処理装置に第１入出力処理装置５０１の閉塞を報告する。入力転送の場合、入力手段５０１２２は、ＣＲＣが付加されたデータの転送で磁気ディスク装置からの報告が正常終了の場合はデータのＣＲＣ検証を行い、ＣＲＣ検証が異常の場合は演算処理装置に第１入出力処理装置５０１の閉塞を報告する。【選択図】      図１
2005266898.tif 000002
【特許請求の範囲】
【請求項１】
主記憶装置と補助記憶装置との間に位置し上位装置からの指示により前記主記憶装置と前記補助記憶装置との間のデータ転送を行う入出力処理装置であって、
転送データの異常を検出したときに自己の閉塞を前記上位装置に報告する手段を備える、
ことを特徴とする入出力処理装置。
【請求項２】
主記憶装置と補助記憶装置との間に位置し上位装置からの指示により前記主記憶装置と前記補助記憶装置との間のデータ転送を行う入出力処理装置であって、
前記主記憶装置から前記補助記憶装置へデータを転送したときに前記補助記憶装置から終了通知を受け取る手段と、
前記終了通知がＣＲＣ(Cyclical Redundancy Check)検証の異常の場合に自己の閉塞を前記上位装置に報告する手段とを備える、
ことを特徴とする入出力処理装置。
【請求項３】
主記憶装置と補助記憶装置との間に位置し上位装置からの指示により前記主記憶装置と前記補助記憶装置との間のデータ転送を行う入出力処理装置であって、
前記補助記憶装置から前記主記憶装置へデータを転送したときに転送データのＣＲＣ検証を行う手段と、
前記ＣＲＣ検証の結果が異常の場合に自己の閉塞を前記上位装置に報告する手段とを備える、
ことを特徴とする入出力処理装置。
【請求項４】
入出力処理装置に、
上位装置からの指示により主記憶装置と補助記憶装置との間でデータ転送を行う機能、
転送データの異常を検出したときに自己の閉塞を前記上位装置に報告する機能、
を実現させるためのプログラム。
【請求項５】
入出力処理装置に、
上位装置からの指示により主記憶装置と補助記憶装置との間でデータ転送を行う機能、
前記主記憶装置から前記補助記憶装置へデータを転送したときに前記補助記憶装置から終了通知を受け取る機能、
前記終了通知がＣＲＣ検証の異常の場合に自己の閉塞を前記上位装置に報告する機能、
を実現させるためのプログラム。
【請求項６】
入出力処理装置に、
上位装置からの指示により主記憶装置と補助記憶装置との間でデータ転送を行う機能、
前記補助記憶装置から前記主記憶装置へデータを転送したときに転送データのＣＲＣの検証を行う機能、
前記ＣＲＣ検証が異常の場合に自己の閉塞を前記上位装置に報告する機能、
を実現させるためのプログラム。
【請求項７】
主記憶装置と演算処理装置と入出力処理装置と補助記憶装置とを含み前記主記憶装置と前記補助記憶装置との間でデータの転送を行う情報処理方式であって、
前記主記憶装置は、
転送データに対するＣＲＣ付加の有無を示す情報，データ転送対象の補助記憶装置番号およびデータの転送方向を示す情報を含む転送指示を記憶し、
前記演算処理装置は、
前記主記憶装置から前記転送指示を読み出す手段と、
入出力処理装置の状態を示すテーブル並びに入出力処理装置と補助記憶装置との接続関係を示すテーブルを検索して前記転送指示に示されるデータ転送対象の補助記憶装置に接続される入出力処理装置を見つける手段と、
前記入出力処理装置にデータ転送指示を出す手段と、
入出力処理装置から自己の閉塞報告を受け取る手段と、
入出力処理装置の状態を示すテーブル上の前記入出力処理装置を利用不能に設定する手段とを備え、
前記入出力処理装置は、
前記データの転送方向が主記憶装置から補助記憶装置の場合には出力転送処理を実行する手段と、
前記データの転送方向が補助記憶装置から主記憶装置の場合には入力転送処理を実行する手段と、
前記出力転送処理あるいは前記入力転送処理でＣＲＣ検証異常を検出したときに自己の閉塞を前記演算処理装置に報告する手段とを備える、
ことを特徴とする情報処理方式。
【請求項８】
前記入出力処理装置は、
前記出力転送処理のデータ転送が終了したときに前記補助記憶装置から転送終了報告を受信する手段と、
前記受信した転送終了報告を解析する手段と、
データ転送がＣＲＣ付きで且つ受信した転送終了報告がＣＲＣ異常終了の場合にＣＲＣ検証異常を検出する手段とを備える、
ことを特徴とする請求項７記載の情報処理方式。
【請求項９】
前記入出力処理装置は、
前記入力転送処理のデータ転送が終了したときに前記補助記憶装置から転送終了報告を受信する手段と、
前記受信した転送終了報告を解析する手段と、
前記転送終了報告が正常終了で且つＣＲＣ付きの場合にＣＲＣ検証器の検証結果を読み出す手段と、
前記検証結果が異常の場合にＣＲＣ検証異常を検出する手段とを備える、
ことを特徴とする請求項７記載の情報処理方式。
【請求項１０】
主記憶装置と演算処理装置と入出力処理装置と補助記憶装置とを含み前記主記憶装置と前記補助記憶装置との間でデータの転送を行う情報処理方法であって、
前記演算処理装置は、
転送データに対するＣＲＣ付加の有無を示す情報，データ転送対象の補助記憶装置番号およびデータの転送方向を示す情報を含む転送指示を前記主記憶装置から読み出し、
入出力処理装置の状態を示すテーブル並びに入出力処理装置と補助記憶装置との接続関係を示すテーブルを検索して前記転送指示に示されるデータ転送対象の補助記憶装置に接続される入出力処理装置を見つけ、
前記入出力処理装置にデータ転送指示を出し、
前記入出力処理装置は、
データの転送方向が前記主記憶装置から前記補助記憶装置の場合には出力転送処理を実行し、
データの転送方向が前記補助記憶装置から前記主記憶装置の場合には入力転送処理を実行し、
前記出力転送処理あるいは前記入力転送処理でＣＲＣ検証異常を検出したときに自己の閉塞を前記演算処理装置に報告し、
前記演算処理装置は、
前記入出力処理装置から自己の閉塞報告を受け、
入出力処理装置の状態を示すテーブル上の前記入出力処理装置を利用不能に設定する、
ことを特徴とする情報処理方法。
【請求項１１】
前記入出力処理装置は、
前記出力転送処理のデータ転送が終わると前記補助記憶装置から転送終了報告を受信し、
前記受信した転送終了報告を解析し、
データ転送がＣＲＣ付きで且つ受信した転送終了報告がＣＲＣ異常終了の場合にＣＲＣ検証異常を検出する、
ことを特徴とする請求項１０記載の情報処理方法。
【請求項１２】
前記入出力処理装置は、
前記入力転送処理のデータ転送が終わると前記補助記憶装置から転送終了報告を受信し、
前記受信した転送終了報告を解析し、
前記転送終了報告が正常終了で且つＣＲＣ付きの場合にＣＲＣ検証器の検証結果を読み出し、
前記検証結果が異常の場合にＣＲＣ検証異常を検出する、
ことを特徴とする請求項１０記載の情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入出力処理装置およびプログラムならびに情報処理方式および方法に関し、特に、補助記憶装置に対する入出力経路を選択して入出力処理を制御する入出力処理装置およびプログラムならびに情報処理方式および方法に関する。
【背景技術】
【０００２】
転送データのデータチェック方法について、従来例が以下に記載されている。
【０００３】
特許文献１に記載のデータチェック方式では、メモリバス上に演算処理装置と主記憶装置とが接続され、入出力バス上に複数の入出力装置が接続されている。両バスを接続しているバスインターフェース装置は、受け取ったデータからチェックコードを計算して受け取ったチェックコードと比較する機能、受け取ったデータとチェックコードからシンドロームを生成する機能を有する。上記よりエラーを検出するとエラー信号を出力している。
【０００４】
また、特許文献２に記載の外部記憶装置のデータ保証方法では、外部記憶制御部が外部記憶部からのリードデータを上位に転送し、上位からのライトデータを外部記憶部に転送する。外部記憶制御部は、上位からのライトデータに対し、外部記憶部のライトする位置に固有な情報を含むチェックデータを付加して、外部記憶部に転送して、書き込ませる。上位ヘのデータ転送に対しては、外部記憶部からのリードデータに含まれる該チェックデータをチェックしている。
【０００５】
【特許文献１】特開平５−２２４９６８号公報
【特許文献２】特開平５−２２４８３３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した背景技術では、以下のような問題点がある。
【０００７】
すなわち、データのチェックエラーを検出するとデータ転送をリトライするが、再度同じ経路でデータ転送を行うのでデータ誤りが発生してしまう可能性が高いことである。その理由は、磁気ディスク装置までの経路を選択できないからである。
【０００８】
本発明の目的は、上記の問題点を解決し、補助記憶装置に対する入出力経路を選択して入出力処理を制御する入出力処理装置およびプログラムならびに情報処理方式および方法を提供することにある。
【課題を解決するための手段】
【０００９】
本願第１の発明の入出力処理装置は、主記憶装置と補助記憶装置との間に位置し上位装置からの指示により前記主記憶装置と前記補助記憶装置との間のデータ転送を行う入出力処理装置であって、転送データの異常を検出したときに自己の閉塞を前記上位装置に報告する手段を備える。
【００１０】
本願第２の発明の入出力処理装置は、主記憶装置と補助記憶装置との間に位置し上位装置からの指示により前記主記憶装置と前記補助記憶装置との間のデータ転送を行う入出力処理装置であって、前記主記憶装置から前記補助記憶装置へデータを転送したときに前記補助記憶装置から終了通知を受け取る手段と、前記終了通知がＣＲＣ(Cyclical Redundancy Check)検証の異常の場合に自己の閉塞を前記上位装置に報告する手段とを備える。
【００１１】
本願第３の発明の入出力処理装置は、主記憶装置と補助記憶装置との間に位置し上位装置からの指示により前記主記憶装置と前記補助記憶装置との間のデータ転送を行う入出力処理装置であって、前記補助記憶装置から前記主記憶装置へデータを転送したときに転送データのＣＲＣ検証を行う手段と、前記ＣＲＣ検証の結果が異常の場合に自己の閉塞を前記上位装置に報告する手段とを備える。
【００１２】
本願第４の発明のプログラムは、入出力処理装置に、上位装置からの指示により主記憶装置と補助記憶装置との間でデータ転送を行う機能、転送データの異常を検出したときに自己の閉塞を前記上位装置に報告する機能、を実現させる。
【００１３】
本願第５の発明のプログラムは、入出力処理装置に、上位装置からの指示により主記憶装置と補助記憶装置との間でデータ転送を行う機能、前記主記憶装置から前記補助記憶装置へデータを転送したときに前記補助記憶装置から終了通知を受け取る機能、前記終了通知がＣＲＣ検証の異常の場合に自己の閉塞を前記上位装置に報告する機能、を実現させる。
【００１４】
本願第６の発明のプログラムは、入出力処理装置に、上位装置からの指示により主記憶装置と補助記憶装置との間でデータ転送を行う機能、前記補助記憶装置から前記主記憶装置へデータを転送したときに転送データのＣＲＣの検証を行う機能、前記ＣＲＣ検証が異常の場合に自己の閉塞を前記上位装置に報告する機能、を実現させる。
【００１５】
本願第７の発明の情報処理方式は、主記憶装置と演算処理装置と入出力処理装置と補助記憶装置とを含み前記主記憶装置と前記補助記憶装置との間でデータの転送を行う情報処理方式であって、前記主記憶装置は、転送対象データと、上位が設定した、転送データに対するＣＲＣ付加の有無を示す情報，データ転送対象の補助記憶装置番号およびデータの転送方向を示す情報を含む転送指示とを記憶し、前記演算処理装置は、前記主記憶装置から前記転送指示を読み出す手段と、入出力処理装置の状態を示すテーブル並びに入出力処理装置と補助記憶装置との接続関係を示すテーブルを検索して前記転送指示に示されるデータ転送対象の補助記憶装置に接続される入出力処理装置を見つける手段と、前記入出力処理装置にデータ転送指示を出す手段と、入出力処理装置から自己の閉塞報告を受け取る手段と、入出力処理装置の状態を示すテーブル上の前記入出力処理装置を利用不能に設定する手段とを備え、前記入出力処理装置は、前記データの転送方向が主記憶装置から補助記憶装置の場合には出力転送処理を実行する手段と、前記データの転送方向が補助記憶装置から主記憶装置の場合には入力転送処理を実行する手段と、前記出力転送処理あるいは前記入力転送処理でＣＲＣ検証異常を検出したときに自己の閉塞を前記演算処理装置に報告する手段とを備える。
【００１６】
本願第８の発明の情報処理方式は、第７の発明において前記入出力処理装置は、前記出力転送処理のデータ転送が終了したときに前記補助記憶装置から転送終了報告を受信する手段と、前記受信した転送終了報告を解析する手段と、データ転送がＣＲＣ付きで且つ受信した転送終了報告がＣＲＣ異常終了の場合にＣＲＣ検証異常を検出する手段とを備える。
【００１７】
本願第９の発明の情報処理方式は、第７の発明において前記入出力処理装置は、前記入力転送処理のデータ転送が終了したときに前記補助記憶装置から転送終了報告を受信する手段と、前記受信した転送終了報告を解析する手段と、前記転送終了報告が正常終了で且つＣＲＣ付きの場合にＣＲＣ検証器の検証結果を読み出す手段と、前記検証結果が異常の場合にＣＲＣ検証異常を検出する手段とを備える。
【００１８】
本願第１０の発明の情報処理方法は、主記憶装置と演算処理装置と入出力処理装置と補助記憶装置とを含み前記主記憶装置と前記補助記憶装置との間でデータの転送を行う情報処理方法であって、前記演算処理装置は、転送データに対するＣＲＣ付加の有無を示す情報，データ転送対象の補助記憶装置番号およびデータの転送方向を示す情報を含む転送指示を前記主記憶装置から読み出し、入出力処理装置の状態を示すテーブル並びに入出力処理装置と補助記憶装置との接続関係を示すテーブルを検索して前記転送指示に示されるデータ転送対象の補助記憶装置に接続される入出力処理装置を見つけ、前記入出力処理装置にデータ転送指示を出し、前記入出力処理装置は、データの転送方向が前記主記憶装置から前記補助記憶装置の場合には出力転送処理を実行し、データの転送方向が前記補助記憶装置から前記主記憶装置の場合には入力転送処理を実行し、前記出力転送処理あるいは前記入力転送処理でＣＲＣ検証異常を検出したときに自己の閉塞を前記演算処理装置に報告し、前記演算処理装置は、前記入出力処理装置から自己の閉塞報告を受け、入出力処理装置の状態を示すテーブル上の前記入出力処理装置を利用不能に設定する、ことを特徴とする。
【００１９】
本願第１１の発明の情報処理方法は、第１０の発明において前記入出力処理装置は、前記出力転送処理のデータ転送が終わると前記補助記憶装置から転送終了報告を受信し、前記受信した転送終了報告を解析し、データ転送がＣＲＣ付きで且つ受信した転送終了報告がＣＲＣ異常終了の場合にＣＲＣ検証異常を検出する、ことを特徴とする。
【００２０】
本願第１２の発明の情報処理方法は、第１０の発明において前記入出力処理装置は、前記入力転送処理のデータ転送が終わると前記補助記憶装置から転送終了報告を受信し、前記受信した転送終了報告を解析し、前記転送終了報告が正常終了で且つＣＲＣ付きの場合にＣＲＣ検証器の検証結果を読み出し、前記検証結果が異常の場合にＣＲＣ検証異常を検出する、ことを特徴とする。
【発明の効果】
【００２１】
本発明の効果は、データ転送のリトライの確実性（成功率）が向上することである。
【００２２】
その理由は、データ誤りが発生した経路を閉塞する手段を設けたからである。
【発明を実施するための最良の形態】
【００２３】
本発明の特徴について説明する。
【００２４】
ソフトウェアはデータにＣＲＣ(Cyclical Redundancy Check)を付加したデータ転送を主記憶装置と磁気ディスク装置との間で行う。このとき、ある経路でデータ誤りが発生すると入出力処理装置はそれを検出し、入出力処理装置の閉塞を演算処理装置に通知する。演算処理装置は該当経路を閉塞する。ソフトウェアが異常を検出してデータ転送のリトライを行うときには、データ誤りが発生した該当経路を使用しないで他の経路を選択してデータ転送を行う。
【００２５】
次に、本発明を実施するための最良の形態について、図面を参照して説明する。
図１は入出力処理装置の構成例を示す図である。
図２は本発明の一実施例である情報処理方式の構成例を示す図である。
図３は転送指示の例を示す図である。
図４は転送結果の例を示す図である。
図５はステータステーブルの例を示す図である。
図６はＩＯＰ・ディスク接続関係テーブルの例を示す図である。
図７はＣＨ・ディスク接続関係テーブルの例を示す図である。
【００２６】
先ず、図２を参照して、本発明における情報処理方式の構成について説明する。
【００２７】
システム制御装置４００は、上位方向と下位方向との間のデータの流れを制御する。システム制御装置４００は、上位方向に、演算処理装置２００とバス２０１で、主記憶装置３００とバス３０１で接続している。また、システム制御装置４００は、下位方向に、複数の入出力処理装置（第１入出力処理装置５０１〜第ｎ入出力処理装置５０ｎ）とそれぞれバス（バス５１〜バス５ｎ）によって接続している。以降、入出力処理装置（第１入出力処理装置５０１〜第ｎ入出力処理装置５０ｎ）を入出力処理装置５０１〜５０ｎと略して記す。
【００２８】
入出力処理装置５０１〜５０ｎは、主記憶装置３００と磁気ディスク装置（第１磁気ディスク装置７１〜第ｐ磁気ディスク装置７ｐ）との間に位置し、主記憶装置３００と磁気ディスク装置（第１磁気ディスク装置７１〜第ｐ磁気ディスク装置７ｐ）との間のデータ転送を制御する。入出力処理装置５０１〜５０ｎは、４台のチャネル装置（第１ＣＨ６１１〜第４ＣＨ６ｎ４）とバス（バス５１１〜バス５ｎ４）で接続している。なお、本例では、入出力処理装置に接続するチャネル装置を４台としたが、４台に限定されるものではない。以降、磁気ディスク装置（第１磁気ディスク装置７１〜第ｐ磁気ディスク装置７ｐ）を磁気ディスク装置７１〜７ｐと略して記す。また、チャネル装置（第１ＣＨ６１１〜第４ＣＨ６ｎ４）をＣＨ６１１〜６ｎ４と略して記す。
【００２９】
ＣＨ６１１〜６ｎ４は、入出力処理装置と磁気ディスク装置とのインタフェースである。ＣＨ６１１〜６ｎ４は、複数の磁気ディスク装置７１〜７ｐの中の１台の磁気ディスク装置とケーブル（ケーブル１１１１〜ケーブル１ｎ４ｐ）によって接続している。
【００３０】
磁気ディスク装置７１〜７ｐは、ソフトウェア１００からの入出力の対象となるデータを記憶する補助記憶装置である。磁気ディスク装置７１〜７ｐは、主記憶装置３００との経路を多重化するため、複数の異なる入出力処理装置５０１〜５０ｎの配下のＣＨ６１１〜６ｎ４とケーブル（ケーブル１１１１〜ケーブル１ｎ４ｐ）により接続している。
【００３１】
演算処理装置２００では、ソフトウェア１００が動作する。
【００３２】
ソフトウェア１００は、演算処理装置２００に指示することにより主記憶装置３００と磁気ディスク装置７１〜７ｐとの間でデータ転送を行う。
【００３３】
ソフトウェア１００は、演算処理装置２００に主記憶装置３００と磁気ディスク装置７１〜７ｐとの間のデータ転送を指示する。ソフトウェア１００は、データ転送を指示するとき、主記憶装置３００の特定の位置に格納する図３に示す転送指示９１０に、データ転送に必要な情報を設定、格納する。
【００３４】
転送指示９１０には、データ転送対象である磁気ディスク装置７１〜７ｐの番号や主記憶装置３００における位置などが設定、格納される。図３のＴＹＰＥ９１１は、転送データにＣＲＣが付加しているかどうかを示すものである。ソフトウェア１００は、転送データにＣＲＣを付加するかどうかに従ってＴＹＰＥ９１１を設定する。また、図３のＣＭＤ９１２は、主記憶装置３００から磁気ディスク装置７１〜７ｐへの転送か或いは磁気ディスク装置７１〜７ｐから主記憶装置３００への転送かを示すものである。ソフトウェア１００は、転送方向に従ってＣＭＤ９１２を設定する。
【００３５】
演算処理装置２００は、主記憶装置３００のソフトウェア１００から可視でない位置に、入出力処理装置５０１〜５０ｎが利用可能かどうかを示すステータステーブル９３０（図５を参照）を有する。また、演算処理装置２００は、入出力処理装置５０１〜５０ｎに、どの磁気ディスク装置７１〜７ｐが接続しているかを示すＩＯＰ・ディスク接続関係テーブル９４０（図６を参照）を有する。演算処理装置２００は、入出力処理装置５０１〜５０ｎと磁気ディスク装置７１〜７ｐを番号で管理している。例えば、第ｎ入出力処理装置５０ｎの場合は入出力処理装置の番号はｎとなり、第ｐ磁気ディスク装置７ｐの場合は磁気ディスク装置の番号はｐとなる。
【００３６】
入出力処理装置のステータスを示すステータステーブル９３０は、入出力処理装置５０１〜５０ｎの番号ごとにエントリ９３１〜９３ｎを持っている。各エントリ９３１〜９３ｎは、その入出力処理装置５０１〜５０ｎが利用可能かどうかを示している。演算処理装置２００は、入出力処理装置５０１〜５０ｎからの閉塞報告により、その入出力処理装置５０１〜５０ｎのエントリ９３１〜９３ｎを利用不能に設定する。
【００３７】
また、入出力処理装置と磁気ディスク装置の接続関係を示すＩＯＰ・ディスク接続関係テーブル９４０は、入出力処理装置５０１〜５０ｎの番号ごと４つのエントリ９４ｎ１〜９４ｎ４を持っている。各エントリ９４ｎ１〜９４ｎ４には、その入出力処理装置５０１〜５０ｎに接続されている磁気ディスク装置７１〜７ｐの番号が格納されている。
【００３８】
演算処理装置２００は、ソフトウェア１００よりデータ転送の指示を受けたとき、主記憶装置３００の特定の位置の転送指示９１０よりデータ転送対象である磁気ディスク装置７１〜７ｐの番号を読み出す。そして、ＩＯＰ・ディスク接続関係テーブル９４０を用いて対象となる磁気ディスク装置７１〜７ｐが接続されている利用可能な入出力処理装置５０１〜５０ｎの１つにデータ転送指示を出す。
【００３９】
なお、ソフトウェア１００が、転送指示９１０に格納する磁気ディスク装置７１〜７ｐの番号とＩＯＰ・ディスク接続関係テーブル９４０の磁気ディスク装置７１〜７ｐの番号は同じである。
【００４０】
次に、本発明における入出力処理装置の構成について説明する。
【００４１】
図１を参照すると、入出力処理装置は、処理部５０１１と、ＤＭＡＣ(Direct Memory Access Controller)５０１４と、ローカルメモリ５０１６と、通信バッファ５０１３とを備えている。これらは、それぞれバスによって接続されている。
【００４２】
処理部５０１１は、ファームウェア５０１２を内蔵する。処理部５０１１は、ファームウェア５０１２を実行することにより、演算処理装置２００から指示された主記憶装置３００と磁気ディスク装置７１〜７ｐとの間のデータ転送を制御する。
【００４３】
ファームウェア５０１２は、主記憶装置３００と磁気ディスク装置７１〜７ｐとの間のデータ転送を実行するプログラムである。ファームウェア５０１２は、主記憶装置３００から磁気ディスク装置７１〜７ｐへのデータ転送の場合に実行する出力手段５０１２１と、磁気ディスク装置７１〜７ｐから主記憶装置３００へのデータ転送の場合に実行する入力手段５０１２２とを含んでいる。
【００４４】
出力手段５０１２１は、ＣＲＣが付加されていないデータの転送ではデータのＣＲＣ検証を行わずデータ転送を行う。そして、磁気ディスク装置からの正常終了または異常終了に従って演算処理装置２００に正常終了または異常終了を報告する。また、出力手段５０１２１は、ＣＲＣが付加されたデータの転送ではデータのＣＲＣ検証を行わずデータ転送を行う。そして、磁気ディスク装置からの報告が正常終了の場合は、演算処理装置２００に正常終了を報告する。異常終了の場合は、ＣＲＣ検証の異常によるものかを判断し、ＣＲＣ検証の異常でない場合は演算処理装置２００に異常終了を報告し、ＣＲＣ検証の異常の場合は演算処理装置２００に入出力処理装置の閉塞を報告する。
【００４５】
入力手段５０１２２は、ＣＲＣが付加されていないデータの転送ではデータのＣＲＣ検証を行わずデータ転送を行う。そして、磁気ディスク装置からの正常終了または異常終了に従って演算処理装置２００に正常終了または異常終了を報告する。また、入力手段５０１２２は、ＣＲＣが付加されたデータの転送では磁気ディスク装置からの報告が異常終了の場合は、演算処理装置２００に異常終了を報告する。正常終了の場合はデータのＣＲＣ検証を行い、正常の場合は演算処理装置２００に正常終了を報告し、異常の場合は演算処理装置２００に入出力処理装置の閉塞を報告する。
【００４６】
ＤＭＡＣ５０１４は、処理部５０１１からの指示により主記憶装置３００と磁気ディスク装置７１〜７ｐとの間でデータ転送を行う。ＤＭＡＣ５０１４は、ＣＲＣ検証器５０１５を有している。
【００４７】
ＣＲＣ検証器５０１５は、主記憶装置３００と磁気ディスク装置７１〜７ｐとの間でデータ転送を行っているときに転送データに付加されたＣＲＣを検証する。また、ＣＲＣ検証器５０１５は、ＣＲＣ検証動作を有効または無効にする機能を持っている。処理部５０１１の出力手段５０１２１および入力手段５０１２２は、ＤＭＡＣ５０１４にデータ転送を指示する際に、ＣＲＣ検証動作の有効または無効を設定することによって転送データのＣＲＣ検証の実施／未実施を切替えることができる。また、ＣＲＣ検証器５０１５は、検証結果を表示する機能を持っている。処理部５０１１の入力手段５０１２２は、表示結果を確認することによってＣＲＣ検証の結果を判断することができる。
【００４８】
通信バッファ５０１３は、磁気ディスク装置７１〜７ｐのデータ転送結果を格納するために使用する。すなわち、磁気ディスク装置７１〜７ｐは、ＣＨ６１１〜６１４を介して通信バッファ５０１３に図４に示す転送結果９２０を格納し、処理部５０１１にデータ転送終了を報告する。処理部５０１１の出力手段５０１２１および入力手段５０１２２は、転送終了の報告を受けたとき、通信バッファ５０１３の転送結果９２０の内容を確認することによってデータ転送の結果を確認することができる。図４のＳＴＡＴＵＳ９２１には、データ転送の結果である正常終了または異常終了を示す値が格納される。図４の詳細ＳＴＡＴＵＳ９２２には、ＳＴＡＴＵＳ９２１が異常終了を示していた場合の原因を示す値が格納される。処理部５０１１の出力手段５０１２１はＳＴＡＴＵＳ９２１が異常終了を示していたとき、詳細ＳＴＡＴＵＳ９２２を解析することによって磁気ディスク装置７１〜７ｐがＣＲＣ異常を検出したかどうかを判断することができる。
【００４９】
ローカルメモリ５０１６は、処理部５０１１がデータ転送の制御で必要な情報を記憶するためのメモリである。例えば、ＣＨ６１１〜６１４に接続されている磁気ディスク装置７１〜７ｐの番号を示す図７のＣＨ・ディスク接続関係テーブル９５０が格納される。処理部５０１１のファームウェア５０１２は、転送指示９１０で指定された磁気ディスク装置７１〜７ｐとデータ転送を行うとき、ＣＨ・ディスク接続関係テーブル９５０を参照することにより、どのＣＨ６１１〜６１４を使用すればよいかを判断する。
【００５０】
次に、本発明を実施するための最良の形態の動作について、図１〜図９を参照して説明する。
図８は出力手段の動作の流れを示す図である。
図９は入力手段の動作の流れを示す図である。
【００５１】
図２の情報処理方式において、ソフトウェア１００は演算処理装置２００に主記憶装置３００と磁気ディスク装置７１〜７ｐとの間のデータ転送を指示するとき、ソフトウェア１００は主記憶装置３００の特定の位置の図３の転送指示９１０にデータ転送に必要な情報すなわちデータ転送対象の磁気ディスク装置７１〜７ｐを示す番号や主記憶装置３００における位置などを格納して演算処理装置２００にデータ転送の指示を出す。本例では、データ転送対象の磁気ディスク装置として第１磁気ディスク装置７１が指定されたものとして説明を続ける。
【００５２】
このとき、ソフトウェア１００は、転送データにＣＲＣを付加しているかどうかを入出力処理装置に伝えるため、ＴＹＰＥ９１１にＣＲＣの有無を設定する。
【００５３】
また、ソフトウェア１００は、主記憶装置３００から第１磁気ディスク装置７１への転送なのか或いは第１磁気ディスク装置７１から主記憶装置３００への転送なのかを入出力処理装置に伝えるため、ＣＭＤ９１２に転送方向を設定する。
【００５４】
演算処理装置２００は、ソフトウェア１００よりデータ転送指示を受けると、主記憶装置３００の特定の位置より転送指示９１０を読み出す。そして、データ転送対象である磁気ディスク装置７１〜７ｐを判断し（本例では、第１磁気ディスク装置７１と判断される）、第１磁気ディスク装置７１が接続されている利用可能な入出力処理装置５０１〜５０ｎの１つをステータステーブル９３０およびＩＯＰ・ディスク接続関係テーブル９４０より見つけ、その入出力処理装置にデータ転送指示を出す。本例では、第１入出力処理装置５０１にデータ転送指示が出されたものとして説明を続ける。
【００５５】
第１入出力処理装置５０１は、演算処理装置２００よりデータ転送指示を受ける。
【００５６】
処理部５０１１は、主記憶装置３００の特定の位置より転送指示９１０のＣＭＤ９１２を読み出す。そして、ＣＭＤ９１２を解析することによって、指示されたデータ転送が主記憶装置３００から第１磁気ディスク装置７１への出力転送なのか或いは第１磁気ディスク装置７１から主記憶装置３００への入力転送なのかを判断する。そして、処理部５０１１は、出力転送の場合は出力手段５０１２１を、入力転送の場合は入力手段５０１２２を実行する。
【００５７】
次に、図８を参照して、出力転送が指示されたときの出力手段５０１２１の動作の流れを説明する。
【００５８】
出力転送が指示されたとき、出力手段５０１２１は、ＤＭＡＣ５０１４のＣＲＣ検証器５０１５を無効に設定し、データ転送でＣＲＣ検証を行わないようにする（ステップＪ０１）。
【００５９】
出力手段５０１２１は、主記憶装置３００の特定の位置より転送指示９１０を読み出す。そして、ＣＨ・ディスク接続関係テーブル９５０よりデータ転送対象である第１磁気ディスク装置７１が接続されたＣＨ６１１〜６１４を見つける（本例では、第１ＣＨ６１１であるものとする）。そして、ＤＭＡＣ５０１４と第１ＣＨ６１１と第１磁気ディスク装置７１を設定し、主記憶装置３００から第１磁気ディスク装置７１へのデータ転送を起動する（ステップＪ０２）。
【００６０】
データ転送が終わると、ＤＭＡＣ５０１４と第１磁気ディスク装置７１は転送終了を報告するので、出力手段５０１２１は、その報告を待ち合わせる（ステップＪ０３）。
【００６１】
出力手段５０１２１は、転送終了の報告を受信すると、通信バッファ５０１３に格納された転送結果９２０のＳＴＡＴＵＳ９２１を読み出して解析する（ステップＪ０４）。
【００６２】
出力手段５０１２１は、第１磁気ディスク装置７１が正常終了または異常終了のどちらを報告しているのか判断する（ステップＪ０５）。
【００６３】
正常終了と判断した場合、出力手段５０１２１は、演算処理装置２００に正常終了を報告し処理を終える（ステップＪ０６）。
【００６４】
異常終了と判断した場合、出力手段５０１２１は、主記憶装置３００の特定の位置より転送指示９１０のＴＹＰＥ９１１を読み出して解析する（ステップＪ１６）。
【００６５】
指示されたデータ転送がＣＲＣ付きかどうかを判断する（ステップＪ１７）。
【００６６】
ＣＲＣ付きでない場合は、演算処理装置２００に異常終了を報告し処理を終える（ステップＪ１８）。
【００６７】
ＣＲＣ付きの場合は、通信バッファ５０１３に格納された転送結果９２０の詳細ＳＴＡＴＵＳ９２２を読み出して解析する（ステップＪ２８）。
【００６８】
ＣＲＣ異常によるものかを判断する（ステップＪ２９）。
【００６９】
ＣＲＣ異常によるものでない場合は、演算処理装置２００に異常終了を報告し処理を終える（ステップＪ２Ａ）。
【００７０】
ＣＲＣ異常によるものの場合は、演算処理装置２００に第１入出力処理装置５０１の閉塞を報告し処理を終える（ステップＪ３Ａ）。
【００７１】
次に、図９を参照して、入力転送が指示されたときの入力手段５０１２２の動作の流れを説明する。
【００７２】
入力転送が指示されたとき、入力手段５０１２２は、主記憶装置３００の特定の位置より転送指示９１０のＴＹＰＥ９１１を読み出し解析する（ステップＫ０１）。
【００７３】
指示されたデータ転送がＣＲＣ付きかどうかを判断する（ステップＫ０２）。
【００７４】
ＣＲＣ付きでない場合は、ＤＭＡＣ５０１４のＣＲＣ検証器５０１５を無効に設定する（ステップＫ０３）。
【００７５】
ＣＲＣ付きの場合は、ＤＭＡＣ５０１４）のＣＲＣ検証器５０１５を有効に設定する（ステップＫ１３）。
【００７６】
入力手段５０１２２は、主記憶装置３００の特定の位置より転送指示９１０を読み出し、ＣＨ・ディスク接続関係テーブル９５０よりデータ転送対象である第１磁気ディスク装置７１が接続されたＣＨ６１１〜６１４を見つける（本例では、第１ＣＨ６１１であるものとする）。そして、ＤＭＡＣ５０１４と第１ＣＨ６１１と第１磁気ディスク装置７１を設定し、第１磁気ディスク装置７１から主記憶装置３００へのデータ転送を起動する（ステップＫ０４）。
【００７７】
データ転送が終わると、ＤＭＡＣ５０１４と第１磁気ディスク装置７１は処理部５０１１に転送終了を報告するので、入力手段５０１２２はその報告を待ち合わせる（ステップＫ０５）。
【００７８】
入力手段５０１２２は、転送終了の報告を受信すると、通信バッファ５０１３に格納される転送結果９２０のＳＴＡＴＵＳ９２１を読み出して解析する（ステップＫ０６）。
【００７９】
第１磁気ディスク装置７１が正常終了または異常終了のどちらを報告しているかを判断する（ステップＫ０７）。
【００８０】
異常終了と判断した場合、入力手段５０１２２は、演算処理装置２００に異常終了を報告して処理を終える（ステップＫ０Ａ）。
【００８１】
正常終了と判断した場合、入力手段５０１２２は、主記憶装置３００の特定の位置より転送指示９１０のＴＹＰＥ９１１を読み出して解析する（ステップＫ１８）。
【００８２】
ＣＲＣ付きのデータ転送かどうかを判断する（ステップＫ１９）。
【００８３】
ＣＲＣ付きではないと判断した場合、入力手段５０１２２は、演算処理装置２００に正常終了を報告し処理を終える（ステップＫ１Ａ）。
【００８４】
ＣＲＣ付きと判断した場合は、入力手段５０１２２は、ＤＭＡＣ５０１４のＣＲＣ検証器５０１５の検証結果を読み出す（ステップＫ２Ａ）。
【００８５】
ＣＲＣが正常かどうかを判断する（ステップＫ２Ｂ）。
【００８６】
正常であれば、演算処理装置２００に正常終了を報告して処理を終える（ステップＫ２Ｃ）。
【００８７】
異常であれば、演算処理装置２００に第１入出力処理装置５０１の閉塞を報告し処理を終える（ステップＫ３Ｃ）。
【００８８】
演算処理装置２００は、第１入出力処理装置５０１より第１入出力処理装置５０１の閉塞の報告を受けると、ステータステーブル９３０上の第１入出力処理装置５０１を利用不能に設定する（入出力処理装置を論理的に切り離す）。そして、ソフトウェア１００に異常終了を報告する。
【００８９】
また、演算処理装置２００は、第１入出力処理装置５０１より正常終了あるいは異常終了の報告を受け取ると、報告に従ってソフトウェア１００に正常終了あるいは異常終了を報告する。
【００９０】
上記説明したように、ソフトウェアがデータにＣＲＣを付加したデータ転送を主記憶装置と磁気ディスク装置との間で行ったとき、入出力処理装置でＣＲＣの検証及び結果確認を行う。ＣＲＣが異常の場合は、入出力処理装置がそれを検出し、入出力処理装置の閉塞を演算処理装置に通知することにより該当経路を閉塞する。そして、ソフトウェアが異常を検出しデータ転送のリトライを行うときにはデータ誤りが発生した該当経路を使用しないで他の経路を選択してデータ転送を行う。そのため、データ転送のリトライの確実性（成功率）が向上するという効果を奏する。
【図面の簡単な説明】
【００９１】
【図１】入出力処理装置の構成例を示す図
【図２】情報処理方式の構成例を示す図
【図３】転送指示の例を示す図
【図４】転送結果の例を示す図
【図５】ステータステーブルの例を示す図
【図６】ＩＯＰ・ディスク接続関係テーブルの例を示す図
【図７】ＣＨ・ディスク接続関係テーブルの例を示す図
【図８】出力手段の動作の流れを示す図
【図９】入力手段の動作の流れを示す図
【符号の説明】
【００９２】
５１    バス
５ｎ    バス
７１    第１磁気ディスク装置
７ｐ    第ｐ磁気ディスク装置
１００    ソフトウェア
２００    演算処理装置
２０１    バス
３００    主記憶装置
３０１    バス
４００    システム制御装置
５０１    第１入出力処理装置
５０ｎ    第ｎ入出力処理装置
５１１    バス
６１１    第１ＣＨ
９１０    転送指示
９１１    ＴＹＰＥ
９１２    ＣＭＤ
９２０    転送結果
９２１    ＳＴＡＴＵＳ
９２２    詳細ＳＴＡＴＵＳ
９３０    ステータステーブル
９４０    ＩＯＰ・ディスク接続関係テーブル
９５０    ＣＨ・ディスク接続関係テーブル
１１１１    ケーブル
５０１１    処理部
５０１２    ファームウェア
５０１３    通信バッファ
５０１４    ＤＭＡＣ
５０１５    ＣＲＣ検証器
５０１６    ローカルメモリ
５０１２１    出力手段
５０１２２    入力手段
【図１】
2005266898.tif 000003
【図２】
2005266898.tif 000004
【図３】
2005266898.tif 000005
【図４】
2005266898.tif 000006
【図５】
2005266898.tif 000007
【図６】
2005266898.tif 000008
【図７】
2005266898.tif 000009
【図８】
2005266898.tif 000010
【図９】
2005266898.tif 000011