(57)【特許請求の範囲】
【請求項１】
複数の入出力装置に複数の入出力バスを介して接続される入出力処理装置と、前記複数の入出力バスと前記入出力処理装置とを介して前記複数の入出力装置への入出力処理を行う中央処理装置とを含む入出力処理システムであって、
前記複数の入出力バス毎にそれぞれ対応する入出力バスへのアクセスコマンド群／処理終了情報を含むコマンド情報を蓄積するコマンドキューを有し、
前記入出力処理装置が前記コマンドキューから自律的に前記コマンド情報を引取って実施するよう構成し、
前記コマンドキューへの前記コマンド情報の設定を行う手段と、前記コマンド情報の設定を前記入出力処理装置に通知する手段とを前記中央処理装置に含み、
前記コマンドキューが設けられたメモリ領域に、前記入出力バス毎に前記コマンドキューエリアと前記入出力処理装置のコマンド制御レジスタとを設け、
前記入出力処理装置に通知する手段は、前記入出力バスに対応するコマンド制御レジスタに対して、実行すべきコマンド情報が設定されているキュー番号と前記コマンドキューの先頭アドレスとを書込むことで、前記コマンド情報の設定を前記入出力処理装置に通知することを特徴とする入出力処理システム。
【請求項２】
前記コマンド情報の実施結果を前記コマンドキューの該当エリアに設定する手段を前記入出力処理装置に含むことを特徴とする請求項１記載の入出力処理システム。
【請求項３】
複数の入出力装置に複数の入出力バスを介して接続される入出力処理装置と、前記複数の入出力バスと前記入出力処理装置とを介して前記複数の入出力装置への入出力処理を行う中央処理装置とを含む入出力処理システムのＣＰＵ処理停滞回避方式であって、
前記複数の入出力バス毎にそれぞれ対応する入出力バスへのアクセスコマンド群／処理終了情報を含むコマンド情報を蓄積するコマンドキューから自律的に前記コマンド情報を引取って実施するステップを前記入出力処理装置に有し、
前記コマンドキューへの前記コマンド情報の設定を行うステップと、前記コマンド情報の設定を前記入出力処理装置に通知するステップとを前記中央処理装置に含み、
前記コマンドキューが設けられたメモリ領域に、前記入出力バス毎に前記コマンドキューエリアと前記入出力処理装置のコマンド制御レジスタとを設け、
前記入出力処理装置に通知するステップは、前記入出力バスに対応するコマンド制御レジスタに対して、実行すべきコマンド情報が設定されているキュー番号と前記コマンドキューの先頭アドレスとを書込むことで、前記コマンド情報の設定を前記入出力処理装置に通知することを特徴とするＣＰＵ処理停滞回避方式。
【請求項４】
前記コマンド情報の実施結果を前記コマンドキューの該当エリアに設定するステップを前記入出力処理装置に含むことを特徴とする請求項３記載のＣＰＵ処理停滞回避方式。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は入出力処理システム及びそれに用いるＣＰＵ処理停滞回避方式に関し、特にＩ／Ｏ（入出力）バスアクセスに伴うＣＰＵ（中央処理装置）の処理停滞を回避する方式に関する。
【０００２】
【従来の技術】
従来、入出力処理システムとしては、図４に示すように、ＣＰＵ１１とＬＳＩ（大規模集積回路）（入出力処理装置）１２とがＰＣＩ（ＰｅｒｉｐｈｅｒａｌＣｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バス３００を介して接続され、ＬＳＩ１２にＩ／Ｏ（入出力）バス３２１〜３２ｎを介して図示せぬＩ／Ｏ装置が接続されるシステムがある。
【０００３】
この構成においては、ＣＰＵ１１がＬＳＩ１２に接続されているＰＣＩバス３００上にあるＩ／Ｏバス３２１領域にダイレクトアクセスを行う際に、このアクセスをＬＳＩ１２が検知すると、Ｉ／Ｏバス３２１へのアクセスを行っている。
【０００４】
ＬＳＩ１２における該当のコマンド処理が完了すると、ＬＳＩ１２からＰＣＩバス３００を介してＣＰＵ１１へデータが転送され、ＣＰＵ１１における処理が終了する。
【０００５】
【発明が解決しようとする課題】
しかしながら、上述した従来の入出力処理システムでは、ＣＰＵがＩ／Ｏバスへアクセスする場合、そのアクセス結果がＣＰＵに返却されるまで、ＣＰＵが占有されてしまうため、ＣＰＵが他の処理を行えない状態になるという問題がある。
【０００６】
また、あるＩ／ＯバスへのアクセスにＣＰＵが占有されてしまうため、他のＩ／Ｏバスが空いている場合でも、そのＩ／Ｏバスに対する処理が行えないという問題もある。
【０００７】
そこで、本発明の目的は上記の問題点を解消し、Ｉ／Ｏバスへのアクセスに伴うＣＰＵの占有時間を短縮することができ、ＬＳＩがＩ／Ｏバス毎に並列処理を行うことができる入出力処理システム及びそれに用いるＣＰＵ処理停滞回避方式を提供することにある。
【０００８】
【課題を解決するための手段】
本発明による入出力処理システムは、複数の入出力装置に複数の入出力バスを介して接続される入出力処理装置と、前記複数の入出力バスと前記入出力処理装置とを介して前記複数の入出力装置への入出力処理を行う中央処理装置とを含む入出力処理システムであって、
前記複数の入出力バス毎にそれぞれ対応する入出力バスへのアクセスコマンド群／処理終了情報を含むコマンド情報を蓄積するコマンドキューを備え、
前記入出力処理装置が前記コマンドキューから自律的に前記コマンド情報を引取って実施するよう構成し、
前記コマンドキューへの前記コマンド情報の設定を行う手段と、前記コマンド情報の設定を前記入出力処理装置に通知する手段とを前記中央処理装置に含み、
前記コマンドキューが設けられたメモリ領域に、前記入出力バス毎に前記コマンドキューエリアと前記入出力処理装置のコマンド制御レジスタとを設け、
前記入出力処理装置に通知する手段は、前記入出力バスに対応するコマンド制御レジスタに対して、実行すべきコマンド情報が設定されているキュー番号と前記コマンドキューの先頭アドレスとを書込むことで、前記コマンド情報の設定を前記入出力処理装置に通知している。
【０００９】
本発明によるＣＰＵ処理停滞回避方式は、複数の入出力装置に複数の入出力バスを介して接続される入出力処理装置と、前記複数の入出力バスと前記入出力処理装置とを介して前記複数の入出力装置への入出力処理を行う中央処理装置とを含む入出力処理システムのＣＰＵ処理停滞回避方式であって、
前記複数の入出力バス毎にそれぞれ対応する入出力バスへのアクセスコマンド群／処理終了情報を含むコマンド情報を蓄積するコマンドキューから自律的に前記コマンド情報を引取って実施するステップを前記入出力処理装置に備え、
前記コマンドキューへの前記コマンド情報の設定を行うステップと、前記コマンド情報の設定を前記入出力処理装置に通知するステップとを前記中央処理装置に具備し、
前記コマンドキューが設けられたメモリ領域に、前記入出力バス毎に前記コマンドキューエリアと前記入出力処理装置のコマンド制御レジスタとを設け、
前記入出力処理装置に通知するステップは、前記入出力バスに対応するコマンド制御レジスタに対して、実行すべきコマンド情報が設定されているキュー番号と前記コマンドキューの先頭アドレスとを書込むことで、前記コマンド情報の設定を前記入出力処理装置に通知している。
【００１０】
すなわち、本発明のＣＰＵ処理停滞回避方式は、ＣＰＵと、ＰＣＩバスと、ＬＳＩ（入出力処理装置）と、Ｉ／Ｏバスとから構成されるシステムにおいて、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等のメモリ領域にＩ／Ｏバスへのコマンド情報を設定／読出しが自在なコマンドキューエリア（Ｉ／Ｏバス毎）を設け、ＣＰＵがその領域へのコマンド情報の設定及びＬＳＩへの通知を行う手段と、ＬＳＩが自律的にそのメモリ領域からコマンド情報を引取ってコマンド実施する手段と、実施した結果を該当コマンドキューのメモリ領域に設定する手段とを有している。
【００１１】
これによって、コマンドキューを設けることで、ＣＰＵがＩ／Ｏバスへのアクセスに際して、コマンドキューへの情報設定及びＬＳＩのコマンド制御レジスタへの通知処理にて占有されるのみで、その後の処理で、通知を受けたＬＳＩが自律的にメモリ上のコマンドキューに設定されている情報を引取り、その情報を基にＩ／Ｏバスに対する処理を行うことが可能となるので、Ｉ／Ｏバスへのアクセスに伴うＣＰＵの占有時間を短縮させることが可能となる。
【００１２】
また、Ｉ／Ｏバス毎にメモリ上のコマンドキューエリア、ＬＳＩのコマンド制御レジスタを設けることで、各コマンド制御レジスタがＩ／Ｏバスへの処理を独立して行うことが可能となるので、ＬＳＩがＩ／Ｏバス毎に並列処理を行うことが可能となる。
【００１３】
【発明の実施の形態】
次に、本発明の一実施例について図面を参照して説明する。図１は本発明の一実施例による入出力処理システムの構成を示すブロック図である。図１において、本発明の一実施例による入出力処理システムはプログラム制御によって動作するＣＰＵ（中央処理装置）１と、Ｉ／Ｏ（入出力）バス１２０〜１２ｎ毎にＩ／Ｏバス１２０〜１２ｎへのアクセスコマンド群／処理終了情報を含むコマンド情報を保持する図示せぬメモリ上のコマンドキュー２と、コマンドキュー２からコマンド情報を引取ってコマンド処理を実施しかつその実施結果をメモリ領域（図示せず）に書込むコマンド制御レジスタ（図示せず）を保持するＬＳＩ（大規模集積回路）（入出力処理装置）３と、ＣＰＵ１とメモリとＬＳＩ３とを接続するＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バス１００と、ＬＳＩ３と複数のＩ／Ｏ装置（図示せず）とを接続する複数のＩ／Ｏバス１２０〜１２ｎとから構成されている。
【００１４】
図２は本発明の一実施例による入出力処理システムにおける信号の流れを示す図であり、図３は本発明の一実施例による入出力処理システムの動作を示すフローチャートである。これら図１〜図３を参照して本発明の一実施例による入出力処理システムの動作について説明する。
【００１５】
まず、ＣＰＵ１はメモリ上に設けられたコマンドキュー２にＩ／Ｏバス１２０〜１２ｎへのアクセスコマンド群の情報を設定する（図２の信号２００参照）（図３ステップＳ１）。
【００１６】
その後、ＣＰＵ１はコマンドキュー２に設定したコマンドが実行可能であるか、既に実行中である場合に終了情報が設定されているかを確認する（図２の信号２１０参照）（図３ステップＳ２）。
【００１７】
ＣＰＵ１は実行可能であれば（図３ステップＳ３）、ＬＳＩ３の該当Ｉ／Ｏバス１２０のコマンド制御レジスタに対して、実行すべきコマンド情報が設定されているキュー番号（ＣＭＤＱ＃０〜ＣＭＤＱ＃ｎ）とコマンドキューの先頭アドレスとを書込むことで、ＬＳＩ３へ通知する（図２の信号２２０参照）（図３ステップＳ４）。
【００１８】
このＬＳＩ３への通知によって、ＣＰＵ１の占有は終了する。尚、ＣＰＵ１は実行不可能であれば（図３ステップＳ３）、ＬＳＩ３への通知待ちとなる（図３ステップＳ５）。
【００１９】
ＬＳＩ３はＣＰＵ１からコマンドキュー番号と先頭アドレスとの通知を受けると、該当のメモリ領域のアクセスコマンド群の情報を引取り、それらを一時的に記憶して順次実行する（図２の信号２３０参照）（図３ステップＳ１１，Ｓ１２）。
【００２０】
ＬＳＩ３はＩ／Ｏバス１２０〜１２ｎへの読出しコマンドであれば、該当のＩ／Ｏバス１２０〜１２ｎへのリード処理を行い、読出した情報をキュー番号の指すコマンドキュー２へ設定する。ＬＳＩ３はＩ／Ｏバス１２０〜１２ｎへの書込みコマンドであれば、コマンドキュー２から読出した情報を該当のＩ／Ｏバス１２０〜１２ｎへライトアクセスする。
【００２１】
その後、ＬＳＩ３はコマンドキュー２から引取ったアクセスコマンド群全ての実行が完了すると、コマンドキュー２の該当キュー番号（ＣＭＤＱ＃０〜ＣＭＤＱ＃ｎ）のエリアに終了情報を設定し、ＣＰＵ１へその旨の報告を行う（図２の信号２３０参照）（図３ステップＳ１３）。
【００２２】
このように、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等のメモリ領域においてＩ／Ｏバス１２０〜１２ｎ毎に、Ｉ／Ｏバス１２０〜１２ｎへのコマンド情報を設定／読出しが自在なコマンドキュー２を設けることで、ＣＰＵ１がＩ／Ｏバス１２０〜１２ｎへのアクセスに際して、コマンドキュー２への情報設定及びＬＳＩ３のコマンド制御レジスタへの通知処理にて占有されるのみで、その後の処理が、通知を受けたＬＳＩ３が自律的にメモリ上のコマンドキュー２に設定されている情報を引取り、その情報を基にＩ／Ｏバス１２０〜１２ｎに対する処理となるため、Ｉ／Ｏバス１２０〜１２ｎへのアクセスに伴うＣＰＵ１の占有時間を短縮することができる。
【００２３】
また、Ｉ／Ｏバス１２０〜１２ｎ毎に、メモリ上のコマンドキュー２及びＬＳＩ３のコマンド制御レジスタを設けることで、各コマンド制御レジスタによってＩ／Ｏバス１２０〜１２ｎへの処理を独立して行うことができるので、ＬＳＩ３がＩ／Ｏバス１２０〜１２ｎ毎に並列処理を行うことができる。
【００２４】
【発明の効果】
以上説明したように本発明の入出力処理システムによれば、複数の入出力装置に複数の入出力バスを介して接続される入出力処理装置と、複数の入出力バスと入出力処理装置とを介して複数の入出力装置への入出力処理を行う中央処理装置とを含む入出力処理システムにおいて、複数の入出力バス毎に対応する入出力バスへのコマンド情報を蓄積するコマンドキューを設け、入出力処理装置がコマンドキューから自律的にコマンド情報を引取って実施することによって、入出力バスへのアクセスに伴う中央処理装置の占有時間を短縮することができ、入出力処理装置が入出力バス毎に並列処理を行うことができるという効果がある。
【図面の簡単な説明】
【図１】本発明の一実施例による入出力処理システムの構成を示すブロック図である。
【図２】本発明の一実施例による入出力処理システムにおける信号の流れを示す図である。
【図３】本発明の一実施例による入出力処理システムの動作を示すフローチャートである。
【図４】従来例による入出力処理システムの構成を示すブロック図である。
【符号の説明】
１  ＣＰＵ
２  コマンドキュー
３  ＬＳＩ
１００  ＰＣＩバス
１２０〜１２ｎ  Ｉ／Ｏバス
【図１】
0003687525.tif 000002
【図２】
0003687525.tif 000003
【図３】
0003687525.tif 000004
【図４】
0003687525.tif 000005