(57)【特許請求の範囲】
【請求項１】
複数のチャネル装置とバスを介して接続され、かつ主記憶装置と接続され、マイクロプログラム制御部、メモリリクエストに対する前記主記憶装置からのメモリリプライデータを格納するレジスタ、前記レジスタからのメモリリプライデータを格納する一時保持レジスタ、ビジーフラグ、動作指示レジスタ、チャネル番号レジスタ、前記チャネル番号レジスタからのチャネル番号と前記レジスタからのメモリリプライデータに含まれるチャネル番号とを比較する比較器、タイマ、優先順位判定回路、および、前記優先順位判定回路からの選択指示により前記動作レジスタ、前記レジスタ、前記一時保持レジスタのいずれかを選択するセレクタを備え、前記マイクロプログラム制御装置が前記チャネル装置に動作指示を発行する場合、前記動作指示に対応するタイマ値を前記タイマに設定しカウントを開始させ、前記ビジーフラグにビジーを示す値を設定し、前記動作指示レジスタに前記動作指示を設定し、前記チャネル番号レジスタに前記動作指示を発行する対象のチャネル装置を示すチャネル番号を設定し、前記主記憶装置から第１の前記チャネル装置に連続するメモリリプライデータが送出されると、毎サイクルごとに前記連続するメモリリプライデータを毎サイクルごとに順次前記レジスタに格納し、前記セレクタで前記レジスタからの前記連続するメモリリプライデータを順次選択して、前記メモリリプライデータに含まれる第１のチャネル番号で指定された前記第１の前記チャネル装置に順次送出するチャネルコントロール装置であって、
前記マイクロプログラム制御部は、第２の前記チャネル装置への動作指示を発行し、前記動作レジスタに前記第２の前記チャネル装置への動作指示を格納し、前記チャネル番号レジスタに前記第２の前記チャネル装置を示す第２のチャネル番号を格納し、前記ビジーフラグにビジーを示す値を設定し、前記第２の前記チャネル装置への動作指示に対応するタイマ値を前記タイマに設定し、カウントを開始させる制御を行い、
前記レジスタにメモリリプライデータがあり前記動作指示レジスタに動作指示が存在せず前記ビジーフラグがビジーを示さない場合、または、前記レジスタにメモリリプライデータがあり前記動作指示レジスタに動作指示が存在し前記ビジーフラグがビジーを示し前記タイマのカウントが尽きていない場合、または、前記レジスタにメモリリプライデータがあり前記動作指示レジスタに動作指示が存在し前記ビジーフラグがビジーを示し前記タイマのカウントが尽きており、前記比較器で前記第１のチャネル番号と前記第２のチャネル番号との比較結果が不一致の場合のいずれかであれば、前記優先順位判定回路は、前記レジスタからの前記メモリリプライデータを選択させる選択指示を前記セレクタに出力し、
前記動作指示レジスタに動作指示が存在し前記ビジーフラグがビジーを示し前記タイマのカウントが尽きており、前記比較器で前記第１のチャネル番号と前記第２のチャネル番号との比較結果が一致の場合には、前記優先順位判定回路は、前記動作指示レジスタからの動作指示を選択させる選択指示を前記セレクタに出力し、
前記動作指示を選択させる選択指示を出力した次のサイクルでは、前記一時保持レジスタからの前記メモリリプライデータを選択させる選択指示を出力し、
前記セレクタは、前記優先順位判定回路の選択指示にしたがい、前記動作指示レジスタからの前記動作指示、前記レジスタからの前記メモリリプライデータ、または、前記一時保持レジスタからの前記メモリリプライデータのいずれかを選択し前記第１または第２のチャネル番号で示された前記第１のチャネル装置、または、前記第２のチャネル装置に前記バスを介し出力する、
ことを特徴とするチャネルコントロール装置。
【請求項２】
前記主記憶装置と、複数の前記チャネル装置と、請求項１記載の前記チャネルコントロール装置とを有することを特徴とするデータ転送装置。
【請求項３】
複数のチャネル装置とバスを介して接続され、かつ主記憶装置と接続され、マイクロプログラム制御部、メモリリクエストに対する前記主記憶装置からのメモリリプライデータを格納するレジスタ、前記レジスタからのメモリリプライデータを格納する一時保持レジスタ、ビジーフラグ、動作指示レジスタ、チャネル番号レジスタ、前記チャネル番号レジスタからのチャネル番号と前記レジスタからのメモリリプライデータに含まれるチャネル番号とを比較する比較器、タイマ、優先順位判定回路、および、前記優先順位判定回路からの選択指示により前記動作レジスタ、前記レジスタ、前記一時保持レジスタのいずれかを選択するセレクタを備え、前記マイクロプログラム制御装置が前記チャネル装置に動作指示を発行する場合、前記動作指示に対応するタイマ値を前記タイマに設定しカウントを開始させ、前記ビジーフラグにビジーを示す値を設定し、前記動作指示レジスタに前記動作指示を設定し、前記チャネル番号レジスタに前記動作指示を発行する対象のチャネル装置を示すチャネル番号を設定し、前記主記憶装置から第１の前記チャネル装置に連続するメモリリプライデータが送出されると、毎サイクルごとに前記連続するメモリリプライデータを毎サイクルごとに順次前記レジスタに格納し、前記セレクタで前記レジスタからの前記連続するメモリリプライデータを順次選択して、前記メモリリプライデータに含まれる第１のチャネル番号で指定された前記第１の前記チャネル装置に順次送出するチャネルコントロール装置におけるチャネルコントロール方法であって、
前記マイクロプログラム制御部が、第２の前記チャネル装置への動作指示を発行し、前記動作レジスタに前記第２の前記チャネル装置への動作指示を格納し、前記チャネル番号レジスタに前記第２の前記チャネル装置を示す第２のチャネル番号を格納し、前記ビジーフラグにビジーを示す値を設定し、前記第２の前記チャネル装置への動作指示に対応するタイマ値を前記タイマに設定し、カウントを開始させる制御を行うステップと、
前記レジスタにメモリリプライデータがあり前記動作指示レジスタに動作指示が存在せず前記ビジーフラグがビジーを示さない場合、または、前記レジスタにメモリリプライデータがあり前記動作指示レジスタに動作指示が存在し前記ビジーフラグがビジーを示し前記タイマのカウントが尽きていない場合、または、前記レジスタにメモリリプライデータがあり前記動作指示レジスタに動作指示が存在し前記ビジーフラグがビジーを示し前記タイマのカウントが尽きており、前記比較器で前記第１のチャネル番号と前記第２のチャネル番号との比較結果が不一致の場合のいずれかであれば、前記優先順位判定回路が、前記レジスタからの前記メモリリプライデータを選択させる選択指示を前記セレクタに出力し、
前記動作指示レジスタに動作指示が存在し前記ビジーフラグがビジーを示し前記タイマのカウントが尽きており、前記比較器で前記第１のチャネル番号と前記第２のチャネル番号との比較結果が一致の場合には、前記優先順位判定回路は、前記動作指示レジスタからの動作指示を選択させる選択指示を前記セレクタに出力し、
前記動作指示を選択させる選択指示を出力した次のサイクルでは、前記一時保持レジスタからの前記メモリリプライデータを選択させる選択指示を出力するステップと、
前記セレクタが、前記優先順位判定回路の選択指示にしたがい、前記動作指示レジスタからの前記動作指示、前記レジスタからの前記メモリリプライデータ、または、前記一時保持レジスタからの前記メモリリプライデータのいずれかを選択し前記第１または第２のチャネル番号で示された前記第１のチャネル装置、または、前記第２のチャネル装置に前記バスを介し出力するステップと、
を含むことを特徴とするチャネルコントロール方法。
【請求項４】
複数のチャネル装置とバスを介して接続され、かつ主記憶装置と接続され、マイクロプログラム制御部、メモリリクエストに対する前記主記憶装置からのメモリリプライデータを格納するレジスタ、前記レジスタからのメモリリプライデータを格納する一時保持レジスタ、ビジーフラグ、動作指示レジスタ、チャネル番号レジスタ、前記チャネル番号レジスタからのチャネル番号と前記レジスタからのメモリリプライデータに含まれるチャネル番号とを比較する比較器、タイマ、優先順位判定回路、および、前記優先順位判定回路からの選択指示により前記動作レジスタ、前記レジスタ、前記一時保持レジスタのいずれかを選択するセレクタを備え、前記マイクロプログラム制御装置が前記チャネル装置に動作指示を発行する場合、前記動作指示に対応するタイマ値を前記タイマに設定しカウントを開始させ、前記ビジーフラグにビジーを示す値を設定し、前記動作指示レジスタに前記動作指示を設定し、前記チャネル番号レジスタに前記動作指示を発行する対象のチャネル装置を示すチャネル番号を設定し、前記主記憶装置から第１の前記チャネル装置に連続するメモリリプライデータが送出されると、毎サイクルごとに前記連続するメモリリプライデータを毎サイクルごとに順次前記レジスタに格納し、前記セレクタで前記レジスタからの前記連続するメモリリプライデータを順次選択して、前記メモリリプライデータに含まれる第１のチャネル番号で指定された前記第１の前記チャネル装置に順次送出するチャネルコントロール装置におけるチャネルコントロールプログラムであって、
第２の前記チャネル装置への動作指示を発行し、前記動作レジスタに前記第２の前記チャネル装置への動作指示を格納し、前記チャネル番号レジスタに前記第２の前記チャネル装置を示す第２のチャネル番号を格納し、前記ビジーフラグにビジーを示す値を設定し、前記第２の前記チャネル装置への動作指示に対応するタイマ値を前記タイマに設定し、カウントを開始させる制御を行うステップを前記マイクロプログラム制御部に実行させ、
前記レジスタにメモリリプライデータがあり前記動作指示レジスタに動作指示が存在せず前記ビジーフラグがビジーを示さない場合、または、前記レジスタにメモリリプライデータがあり前記動作指示レジスタに動作指示が存在し前記ビジーフラグがビジーを示し前記タイマのカウントが尽きていない場合、または、前記レジスタにメモリリプライデータがあり前記動作指示レジスタに動作指示が存在し前記ビジーフラグがビジーを示し前記タイマのカウントが尽きており、前記比較器で前記第１のチャネル番号と前記第２のチャネル番号との比較結果が不一致の場合のいずれかであれば、
前記レジスタからの前記メモリリプライデータを選択させる選択指示を前記セレクタに出力し、
前記動作指示レジスタに動作指示が存在し前記ビジーフラグがビジーを示し前記タイマのカウントが尽きており、前記比較器で前記第１のチャネル番号と前記第２のチャネル番号との比較結果が一致の場合には、前記優先順位判定回路は、前記動作指示レジスタからの動作指示を選択させる選択指示を前記セレクタに出力し、
前記動作指示を選択させる選択指示を出力した次のサイクルでは、前記一時保持レジスタからの前記メモリリプライデータを選択させる選択指示を出力するステップと、を前記優先順位判定回路に実行させ、
前記優先順位判定回路の選択指示にしたがい、前記動作指示レジスタからの前記動作指示、前記レジスタからの前記メモリリプライデータ、または、前記一時保持レジスタからの前記メモリリプライデータのいずれかを選択し前記第１または第２のチャネル番号で示された前記第１のチャネル装置、または、前記第２のチャネル装置に前記バスを介し出力するステップと、
を前記セレクタに実行させることを特徴とするチャネルコントロールプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、チャネルコントロール装置の動作指示と、主記憶装置のメモリリプライデータと、をチャネル装置に転送するデータ転送装置に関し、特に、メモリリプライデータの転送によって、動作指示の転送が遅らされることを防止するデータ転送装置に関する。
【０００２】
【従来の技術】
従来のデータ転送装置２を図２を参照して説明する。主記憶装置１０からのメモリリプライデータがチャネルコントロール装置６０の作用により、レジスタ６２に格納され、セレクタ６８及びダウンデータバス４０を介してチャネル装置５１乃至５ｎにデータ転送される。このデータ転送中に、マイクロプログラム制御部６１がチャネル装置５１に動作指示を発行する場合、該動作指示をレジスタ６４に格納して、ビジーフラグ６３をオンにセットする。優先順位判定回路６７は、レジスタ６２のメモリリプライデータと、レジスタ６４の動作指示と、が競合した場合、メモリリプライデータを優先してデータ転送する指示をセレクタ６８に出す。このため、メモリリプライデータが連続して転送している間は、動作指示がレジスタ６４で待ち合わせさせられる。この待ち合わせ中は、ビジーフラグ６３はオンのままである。
【０００３】
上述の説明のように、従来のチャネルコントロール装置６０においては、メモリリプライデータが連続している間は、チャネル装置５１への動作指示が待ち合わせさせられる結果、データのオーバランといった事象が生じる問題がある（例えば、特許文献１参照）。
【０００４】
【特許文献１】
特開２０００−４７９７３号公報（図３及び従来技術の説明）。
【０００５】
【発明が解決しようとする課題】
上述の課題を解決するため、データ転送装置で、チャネル装置への動作指示と、データ転送と、が競合して動作指示が待ち合わせさせられているとき、予め、マイクロプログラム制御部から初期値を設定したカウントダウンタイマを起動し、当該タイマの値が「０」となったとき、主記憶装置からのメモリリプライデータが予めマイクロプログラム制御部が指定したチャネル装置へのものであれば、動作指示の優先順位を上げて、強制的にメモリリプライデータの転送に割り込ませて転送することにより、動作指示の待ち合わせ時間を低減する。
【０００６】
この発明目的は、マイクロプログラム制御部が発行した動作指示がメモリリプライデータと競合し、動作指示が待ち合わせさせられて、一定時間経過した場合、メモリプライデータと、該動作指示と、の優先順位を変更することにより、動作指示発行の待ち合わせ時間を短縮して転送し、オーバーランなどの事象が発生することを防止する。
【０００７】
【課題を解決するための手段】
そのため、この発明の、チャネルコントロール装置が、自身が発行する動作指示と、主記憶装置のメモリリプライデータと、をチャネル装置にダウンデータバスを介してデータ転送するデータ転送装置において、前記メモリリプライデータの転送と、前記動作指示の転送と、が競合して前記チャネル装置に対する前記動作指示が遅らされるとき、前記動作指示を、前記メモリリプライデータの転送に所定の遅れ以内に割り込ませ、前記チャネル装置に送出するチャネルコントロール装置を有することを特徴とする。
【０００８】
更に、前記動作指示は、送出先のチャネル装置のチャネル番号を含んで発行されることを特徴とする。
【０００９】
更に、前記メモリリプライデータは、送出先のチャネル装置のチャネル番号と、メモリリプライデータ自身が有効である示す有効データと、転送するデータと、を含むことを特徴とする。
【００１０】
更に、前記チャネルコントロール装置は、前記主記憶装置のメモリリプライデータを受け取って、一時記憶するレジスタと、前記レジスタのメモリリプライデータを移送して保持する一時保持レジスタと、前記チャネル装置に動作指示を発行するマイクロプログラム制御部と、前記動作指示を保持する動作指示レジスタと、前記動作指示が発行されたことを示すビジーフラグと、前記動作指示対象のチャネル装置のチャネル番号を保持するチャネル番号レジスタと、前記レジスタのチャネル番号と、前記チャネル番号レジスタのチャネル番号と、を比較し一致を検出する比較器と、前記マイクロプログラム制御部が動作指示発行から、所定の経過時間を検出するタイマと、前記タイマが所定時間の経過の検出出力と、ビジーフラグの出力と、前記比較器のチャネル番号一致出力と、前記レジスタの有効データ出力と、によって、前記動作指示を前記メモリリプライデータより優先して選択し、前記ビジーフラグをオフする優先順位判定回路と、前記優先順位判定回路の優先順位出力によって、前記動作指示レジスタの動作指示と、前記レジスタのメモリリプライデータと、前記一時保持レジスタのメモリリプライデータと、から一つを選択し、前記チャネル装置に送出するセレクタと、を備えることを特徴とする。
【００１１】
更に、前記優先順出力は、前記ビジーフラグの出力がないとき、前記レジスタのメモリリプライデータを選択し、前記ビジーフラグの出力があり、かつタイマ出力及び前記比較器出力並びに前記レジスタの有効データ出力があるとき、前記動作指示レジスタの動作指示を選択し、前記動作指示が選択された次のサイクルでは、前記一時保持レジスタのメモリリプライデータを選択することを特徴とする。
【００１２】
更に、前記セレクタは、前記優先順位出力によって、前記レジスタのメモリリプライデータの連続する転送出力に前記動作指示を割り込ませて転送出力させ、前記動作指示の割り込み転送出力によって、保留されたメモリリプライデータを前記一時保持レジスタから転送出力させ、以後は前記レジスタのメモリリプライデータを転送出力させる切り替えを行うことを特徴とする。
【００１３】
【発明の実施の形態】
この発明について、図面を参照して説明する。発明の実施の一形態を示す図１を参照すると、データ転送装置１は、主記憶装置１０と、チャネルコントロール装置２０と、ダウンデータバス４０と、複数のチャネル装置５１乃至５ｎと、を備え、チャネルコントロール装置２０に、主記憶装置１０と、ダウンデータバス４０と、を直接接続し、ダウンデータバス４０を介してチャネル装置５１乃至５ｎを接続している。
【００１４】
チャネルコントロール装置２０は、マイクロプログラム制御部２１と、レジスタ２２と、ビジーフラグ２３と、動作指示レジスタ２４と、一時保持レジスタ２５と、タイマ２６と、優先順位判定回路２７と、セレクタ２８と、チャネル番号レジスタ２９と、比較器３０と、を含む。各チャネル装置５１乃至５ｎからのメモリリクエストは、図示しないパスを介してチャネルコントロール装置２０で優先順位がとられて主記憶装置１０に送出される。
【００１５】
メモリリクエストに対する主記憶装置１０からのメモリリプライデータは、レジスタ２２に格納された後、セレクタ２８とレジスタ２５に送出される。レジスタ２５は、レジスタ２２のデータを移送した同一のデータである。セレクタ２８は、優先順位判定回路２７の指示により、動作指示レジスタ２４、レジスタ２２、一時保持レジスタ２５の内から、いずれか一つを選択しチャネル装置に送出する。
【００１６】
マイクロプログラム制御部２１は、チャネル装置５１乃至５ｎに動作指示を発行する場合、その動作指示に対応するタイマ値をタイマ２６に設定し、ビジーフラグ７を「１」にセットするとともに動作指示レジスタ２４に、動作指示を格納する。動作指示レジスタ２４に格納された動作指示は、セレクタ２８で、動作指示レジスタ２４が選択されてチャネル装置５１乃至５ｎに送出されるまで、動作指示レジスタ２４に保持される。
【００１７】
セレクタ２８で動作指示レジスタ２４が選択されると、優先順位判定回路２７によって、ビジーフラグ２３が「０」にリセットされる。ビジーフラグ２３が「１」となると、タイマ２６は、カウントダウンを開始して値が「０」になると、優先順位判定回路２７に通知する。チャネル番号レジスタ２９には、マイクロプログラム制御部２１から動作指示を発行する対象のチャネル番号が書き込まれ、主記憶装置１０からのメモリリプライデータがレジスタ２２に格納される度に、比較器３０がチャネル番号レジスタ２９のチャネル番号と、メモリリプライデータ内に保持されている対象のチャネル装置５１乃至５ｎのチャネル番号と、を比較し、両者のチャネル番号が一致すると、同一のチャネル装置５１に対して競合が生じたことになり、優先順位判定回路２７に該競合を通知する。
【００１８】
優先順位判定回路２７は、動作指示レジスタ２４の動作指示と、レジスタ２２のメモリリプライデータと、が競合した場合、通常で有ればレジスタ６のメモリリプライデータを優先させるが、動作指示レジスタ２４に動作指示が格納されており、かつビジーフラグ２３が「１」で、タイマ２６の値が「０」で、かつ比較器１４でチャネル番号を比較した結果が一致した場合、セレクタ２８に動作指示レジスタ２４を選択させ、ビジーフラグ２３を「０」にリセットする。その後、優先順位判定回路２８はセレクタ２８に、一時保持レジスタ２５を選択させ、送出が保留させられていたメモリリプライデータを送出する。
【００１９】
次に、この実施の形態の動作について説明する。各チャネル装置５１乃至５ｎからの主記憶装置１０へのメモリリクエストに対するメモリリプライデータは、主記憶装置１０からレジスタ２２に送出される。メモリリプライデータには、メモリリクエストを発行し、メモリリプライデータを受け取るべきチャネル装置５１のチャネル番号２２１と、該メモリリプライデータが有効であることを示す有効データ２２２と、を含んでいる。主記憶装置１０からチャネル装置５1に連続して、メモリリプライデータが送出されている場合、毎サイクルごとにレジスタ２２にメモリリプライデータが順次に格納される。このため、この間に、マイクロプログラム制御部２１からチャネル装置５１への動作指示がレジスタ２４に発行され、ビジーフラグ２３が「１」にセットされたとき、セレクタ２８で、優先順位はレジスタ２２のメモリリプライデータを通常高くしているため、動作指示がレジスタ２４で待ち合わせさせられる。タイマ２６は、動作指示に対応してマイクロプログラム制御部２１から設定された値をカウントダウンし、カウントが尽きて値が「０」になると、優先順位判定回路２７に通知する。
【００２０】
比較器３０は、マイクロプログラム制御部２１から、動作指示に対応するチャネル番号レジスタ２９のチャネル番号と、レジスタ２２の主記憶装置１０からのメモリリプライデータのチャネル番号を示す部分と、を比較し、両者の値が一致した場合は、優先順位判定回路２７へ通知する。セレクタ２８は、優先順位判定回路２７からの指示により、レジスタ２２にリプライデータがある場合で、マイクロプログラム制御部２１からのチャネル装置５１への動作指示が動作指示レジスタ２４に存在せず、かつビジーフラグ２４が「０」の場合と、前記動作指示が動作指示レジスタ２４に格納発行されていて、ビジーフラグ７が「１」であるが、タイマ２６の値が「０」でない場合と、前述の場合で、タイマ２６の値が「０」であるが、比較器３０でのチャネル番号の比較結果が不一致の場合は、レジスタ２２のメモリリプライデータを選択し、メモリリプライデータをダウンデータバス４０へ送出する。また、セレクタ２８は、優先順位判定回路２７からの指示により、ビジーフラグ２３が「１」で、タイマ２６の値が「０」で、かつ、比較器３０でのチャネル番号の比較結果が一致した場合は、セレクタ１２での動作指示レジスタ２４の優先順位をあげ、セレクタ２８にレジスタ２４を選択させるとともに、ビジーフラグ２３をリセットする。セレクタ２８で選択された動作指示レジスタ２４の動作指示は、ダウンデータバス４０を介して指定のチャネル装置５１へ送出される。
【００２１】
優先順位判定回路２７は、前記の動作指示レジスタ２４を選択した次のサイクルでは、一時保持レジスタ２５の保留されていたメモリリプライデータをセレクタ２８に選択させ、ダウンデータバス４０を介して指定のチャネル装置５１へ送出する。
【００２２】
【発明の効果】
以上説明したように、この発明の効果は、動作指示の発行待ち合わせが一定時間を越えたとき、競合するメモリリプライデータを保留して、動作指示の発行を優先させて、待ち合わせる時間を短縮することができるので、データ転送におけるオーバーランを防止できる。
【図面の簡単な説明】
【図１】この発明の実施の一形態を示す図である。
【図２】従来技術による構成を例示する図である。
【符号の説明】
１    データ転送装置
１０    主記憶装置
２０    チャネルコントロール装置
２１    マイクロプログラム制御部
２２    レジスタ
２３    ビジーフラグ
２４    動作指示レジスタ
２５    一時保持レジスタ
２６    タイマ
２７    優先順位判定回路
２８    セレクタ
２９    チャネル番号レジスタ
３０    比較器
４０    ダウンデータバス
５１乃至５ｎ    チャネル装置
【図１】
0004151449.tif 000002
【図２】
0004151449.tif 000003