JP3364751B2 - Data transfer system - Google Patents

Data transfer system

Info

Publication number
JP3364751B2
JP3364751B2 JP03352592A JP3352592A JP3364751B2 JP 3364751 B2 JP3364751 B2 JP 3364751B2 JP 03352592 A JP03352592 A JP 03352592A JP 3352592 A JP3352592 A JP 3352592A JP 3364751 B2 JP3364751 B2 JP 3364751B2
Authority
JP
Japan
Prior art keywords
data
data buffer
input
prefetch
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP03352592A
Other languages
Japanese (ja)
Other versions
JPH05233482A (en
Inventor
眞 岡島
Original Assignee
日本電気エンジニアリング株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気エンジニアリング株式会社 filed Critical 日本電気エンジニアリング株式会社
Priority to JP03352592A priority Critical patent/JP3364751B2/en
Publication of JPH05233482A publication Critical patent/JPH05233482A/en
Application granted granted Critical
Publication of JP3364751B2 publication Critical patent/JP3364751B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】 【0001】 【産業上の利用分野】本発明は、入出力装置がそれぞれ
接続された複数のチャネル装置と、記憶装置から読出さ
れたメモリリプライデータを、データ転送を指示する入
出力命令で指定された転送先入出力装置へ転送させるチ
ャネル制御装置とを有するデータ転送システムに関す
る。 【0002】 【従来の技術】従来のデータ転送システムについて図3
を参照して説明する。 【0003】図3に示すデータ転送システムは、チャネ
ル制御装置800の配下に、n個のチャネル装置900
1 〜900n を接続した構成のものであり、各チャネル
装置9001 〜900n にはそれぞれ、入出力装置10
001 〜1000n が接続されている。 【0004】前記各チャネル装置9001 〜900n
は、何れも同様な構成であり、それぞれ主記憶装置70
0からのリプライデータが格納される、容量固定の先取
りデータバッファ9031 〜903n を備えている。 【0005】このようなデータ転送装置において、主記
憶装置700と各入出力装置10001 〜1000n
の間でデータ転送を行なう場合、中央処理装置600か
ら入出力命令が発せられ、該入出力命令を受けたチャネ
ル制御装置は、該入出力命令で指定される入出力装置が
接続されているチャネル装置900に対し、データ転送
の実行を指示する。データ転送の実行を指示されたチャ
ネル装置900は、先取りデータバッファ903の容量
の範囲内でメモリリクエストを行ない、入出力装置10
00へ転送する転送データを用意する。データ転送を開
始するのに十分な転送データが先取りデータバッファ9
03に用意できると、I/Oインタフェース制御回路9
04が入出力装置1000へ転送データを転送する。デ
ータ転送が終了すると、チャネル装置900はチャネル
制御装置800へ通知し、通知を受けたチャネル制御装
置800は、中央処理装置600に対し、入出力命令に
関るデータ転送の終了を示す終了報告を送出してチャネ
ル制御装置800の動作を終了する。 【0006】 【発明が解決しようとする課題】しかしながら、上述し
た従来のデータ転送システムでは、各チャネル装置内部
に設けた先取りデータバッファが大きさ固定のものであ
り、チャネル装置配下に転送性能の異なる入出力装置を
接続した場合には、高い転送性能の入出力装置によるデ
ータ転送に必要な先取りデータバッファを用意すること
になるので、低い転送性能の入出力装置に対してデータ
転送を行なう際、先取りデータバッファに無駄が生じて
しまうという問題点がある。また、近年のデータ転送シ
ステムは益々高速化が進み転送性能の高い入出力装置と
低い入出力装置の組合せが避けられない現状なので、先
取りデータバッファの無駄も増大しているという問題点
がある。さらに、チャネル装置の先取りデータバッファ
に障害が生じると、そのチャネル装置は使用不可能とな
ってしまうという問題点がある。 【0007】本発明は、上記従来の技術が有する問題点
に鑑みてなされたもので、先取りデータバッファを効率
的に使用でき、信頼性の高いデータ転送を行ない得る、
データ転送システムを提供することを目的としている。 【0008】 【課題を解決するための手段】本発明は、入出力装置が
それぞれ接続された複数のチャネル装置と、記憶装置か
ら読出されたメモリリプライデータを、データ転送を指
示する入出力命令で指定された転送先入出力装置へ転送
させるチャネル制御装置とを有するデータ転送システム
において、前記チャネル制御装置が、データ保持領域が
複数の単位領域に分割され、障害発生時用の予備単位領
域が設けられた先取りデータバッファと、前記先取りデ
ータバッファの各単位領域に対応して、該単位領域に前
記メモリリプライデータが格納されているか否かを示す
使用中情報と、前記単位領域に格納されているメモリリ
プライデータの転送先入出力装置を示す入出力情報と、
前記単位領域における障害の発生時に、該単位領域の使
用禁止を示す障害情報とが記録される、複数のデータバ
ッファ管理フラグからなるデータバッファ管理フラグ群
と、前記各入出力装置のデータ転送性能が予め格納され
る転送性能テーブルと、前記入出力命令が発せられた
際、前記転送先入出力装置に対応するデータ転送性能を
前記転送性能テーブルから抽出して、該データ転送性能
に応じた、前記先取りデータバッファのデータ保持領域
に相当するデータバッファ管理フラグに使用中ビットお
よび入出力装置情報をセットし、使用中の前記先取りデ
ータバッファ単位領域に障害が発生した際、前記予備単
位領域のデータバッファ管理フラグに、使用中ビットお
よび入出力装置情報をセットするチャネル制御回路と、
前記データバッファ管理フラグ群を参照して、メモリリ
プライデータの転送先入出力装置について使用中ビット
がセットされているデータバッファ管理フラグに関る前
記先取りデータバッファの単位領域を示すアドレスを、
前記メモリリプライデータの、前記先取りデータバッフ
ァに対する書込みアドレスとして指定するとともに、既
に、前記先取りデータバッファが保持しているメモリリ
プライデータを読出す読出しアドレスを指定する先取り
データバッファ制御回路と、前記先取りデータバッファ
から読出されたメモリリプライデータ参照して、該メモ
リリプライデータが正常か否かを調べ、エラーが発生し
ている場合、該メモリリプライデータが読出された読出
しアドレスに対応する前記単位領域に関るデータバッフ
ァ管理フラグに前記障害情報を記録するエラー検出回路
と、を有するものであり、前記チャネル制御装置のデー
タバッファ管理フラグ群の各データバッファ管理フラグ
それぞれに、先取りデータバッファの単位領域における
障害の発生時に、該単位領域の使用禁止を示す障害情報
がセットされる障害ビットが設けられており、さらに、
前記チャネル制御装置は、前記先取りデータバッファか
ら読出されたメモリリプライデータを参照して、該メモ
リリプライデータが正常か否かを調べ、エラーが発生し
ている場合、該メモリリプライデータが読出された読出
しアドレスに対応する前記単位領域に関るデータバッフ
ァ管理フラグに前記障害情報をセットするエラー検出回
路を有する場合と、前記チャネル制御装置の先取りデー
タバッファに、障害発生時用の予備単位領域が設けられ
ており、前記チャネル制御装置のチャネル制御回路は、
使用中の前記先取りデータバッファ単位領域に障害が発
生した際、前記予備単位領域のデータバッファ管理フラ
グに、使用中ビットおよび入出力装置情報をセットする
場合とがある。 【0009】 【作用】本発明のデータ転送システムによれば、チャネ
ル制御装置に設けた先取りデータバッファのデータ保持
領域を分割し、データ転送を行なう入出力装置の転送性
能に応じた使用量で使用して複数の入出力装置で共用す
るので、転送性能に差がある入出力装置が混在するシス
テムにおいても、効率的に前記先取りデータバッファを
使用することができる。 【0010】 【実施例】次に、本発明の実施例について図面を参照し
て説明する。 【0011】図1は本発明のデータ転送システムの一実
施例を示すブロック図である。 【0012】本実施例のデータ転送システムは、中央処
理装置100と、主記憶装置200と、チャネル制御装
置300と、入出力装置5001 〜500n がそれぞれ
接続されたn個のチャネル装置4001 〜400n とを
備えており、前記主記憶装置200と入出力装置500
1 〜500n との間でデータ転送を行なう。 【0013】中央処理装置100は、演算処理を行なう
装置で、入出力処理を行なうときにチャネル制御装置3
00に対して入出力命令1を発行する。また、チャネル
制御装置300の初期設定時に、チャネル制御装置30
0の配下に接続されている全ての入出力装置についての
転送性能情報17をチャネル制御装置300に与える。 【0014】主記憶装置200は、中央処理装置100
とチャネル制御装置300とに接続されており、チャネ
ル制御装置300から発行される一回のメモリリクエス
ト3に対し、1ワードのメモリリプライ4を送出する。 【0015】チャネル制御装置300は、中央処理装置
100の発行する入出力命令1にしたがって各チャネル
装置4001 〜400n を制御し、主記憶装置200と
入出力装置5001 〜500n との間のデータ転送を行
なう装置である。 【0016】チャネル装置4001 〜400n は、入出
力装置5001 〜500n とのインタフェースを制御す
る装置で、チャネル制御装置300の指示で主記憶装置
200と入出力装置5001 〜500n との間のデータ
転送を行なう。 【0017】ここで、チャネル制御装置300の構成に
ついて説明する。 【0018】本実施例のチャネル制御装置300は、チ
ャネル制御回路301と先取りデータバッファ302と
先取りデータバッファ制御回路303とデータ転送制御
回路304とデータバッファ管理フラグ群305とデー
タ入力レジスタ306とデータ出力レジスタ307と入
出力装置転送性能テーブル308とエラー検出回路30
9とを備えている。 【0019】入出力装置転送性能テーブル308は、初
期設定時に中央処理装置100から転送される入出力装
置5001 〜500n それぞれの転送性能情報17が格
納される。 【0020】先取りデータバッファ302は、データの
転送に先立って主記憶装置200から読出した転送デー
タが格納されるバッファで、先取りデータバッファ制御
回路303が発する読出しアドレス15、書込みアドレ
ス16で指定される単位領域に対して転送データの読出
し、書込みが行なわれる。 【0021】データバッファ管理フラグ群305は、前
記先取りデータバッファ302の単位領域当りに1つの
先取りデータバッファ管理フラグを対応させたものであ
る。ここで、データバッファ管理フラグ群305の各先
取りデータバッファ管理フラグについて、図2を参照し
て説明する。 【0022】図2は、先取りデータバッファ管理フラグ
と先取りデータバッファ302の単位領域との関係を示
す図である。 【0023】本実施例の先取りデータバッファ管理フラ
グは、先取りデータバッファ302の単位領域に障害が
あるか否かを示す障害ビットと、単位領域を使用中であ
るか否かを示す使用中ビットと、使用中のチャネル装置
を示すチャネル装置番号とで構成されている。 【0024】障害ビットと使用中ビットが共に“0”の
とき、対応する、先取りデータバッファ302の単位領
域が使用可能の状態であることを示す。また、先取りデ
ータバッファ302は、障害発生時のための予備の単位
領域を備えており、その予備単位領域は、障害が発生し
たときに使用するために、通常、使用中ビットが“1”
(使用不可状態)にセットされている。また、障害ビッ
トには、先取りデータバッファ302の単位領域に障害
が発生したとき、エラー検出回路309によってエラー
検出情報20(“1”)がセットされる。この障害ビッ
トは、一度セットされるとリセットされないフラグであ
る。 【0025】チャネル制御回路301は、中央処理装置
100からの入出力命令1を解読して処理する回路であ
り、該入出力命令1にて指定される入出力装置を示す指
定入出力装置情報18に基づいて該入出力装置の転送性
能情報19を入出力装置転送性能テーブル308から読
出し、その転送性能に応じて先取りデータバッファ30
2の使用単位領域を確保する。 【0026】この先取りデータバッファ302の使用単
位領域の確保については、チャネル制御回路301は、
前記データバッファ管理フラグ群305を参照して先取
りデータバッファ302の使用状況(使用状況表示信号
10)を監視しており、前記入出力命令1の実行に際
し、必要な先取りデータのワード数から先取りデータバ
ッファ302の単位領域の必要数を割出す。そして、必
要な単位領域に対応する先取りデータバッファ管理フラ
グに、使用するチャネル装置のチャネル装置番号と使用
中ビットをセットする。また、チャネル制御回路301
は、データ転送制御回路304にデータ転送指示8を与
える。さらに、前記先取りデータバッファ302の使用
単位領域を確保した後、対応するチャネル装置に対して
転送開始指示9を送出し、入出力命令1で指定された転
送量のデータ転送が終了すると、中央処理装置100に
対して終了報告2を送出する。 【0027】先取りデータバッファ制御回路303は、
前記データバッファ管理フラグ群305を参照して、使
用できる単位領域に応じて、先取りデータバッファ30
2に対して読出しアドレス15、書込みアドレス16を
指定する。読出しアドレス15、書込みアドレス16
は、データ入力レジスタ306からメモリリプライ受信
信号21を受信した後送出される。さらに、データを転
送する入出力装置に対応するチャネル装置、すなわち使
用中のデータバッファ管理フラグに記録されているチャ
ネル装置番号をチャネル装置番号情報11としてデータ
出力レジスタ307へ送出する。また、前記使用状況表
示信号10にて、データを転送する入出力装置に割当て
られた先取りデータバッファ302の単位領域が一杯に
なったことが示されると、データ転送制御回路304に
リクエスト抑止信号13を出力する。 【0028】データ転送制御回路304は、チャネル制
御回路301からのデータ転送指示8にしたがって主記
憶装置200をアクセスする回路で、先取りデータバッ
ファ制御回路303からチャネル装置毎のリクエスト抑
止信号13が出力されるまで、前記主記憶装置200に
対して各チャネル装置毎のメモリリクエスト3を送出し
つづける。また、メモリリクエスト3を1回送出する毎
にチャネル装置毎のリクエスト送出信号14を先取りデ
ータバッファ制御回路303へ送信する。 【0029】データ入力レジスタ306は、主記憶装置
200からのメモリリプライデータ4を先取りデータバ
ッファ302に書込むためのレジスタであり、該メモリ
リプライデータ4を受信した際、先取りデータバッファ
制御回路303に対してメモリリプライ受信信号21を
送出する。 【0030】データ出力レジスタ307は、先取りデー
タバッファ302から読出したデータを、先取りデータ
バッファ制御回路303からのチャネル装置番号情報1
1で指定されたチャネル装置へ送出するためのレジスタ
であり、データ送出が完了した際、データ送出完了信号
12を前記先取りデータバッファ制御回路303へ送出
する。 【0031】エラー検出回路309は、先取りデータバ
ッファ302から読出された読出しデータ6を参照して
障害を検出する回路で、一度障害を検出すると、読出し
アドレス15から先取りデータバッファ302の障害発
生領域を判定し、エラー検出信号20を発して障害発生
領域に対応したデータバッファ管理フラグ群305の障
害ビットに“1”をセットする。また、障害発生時に、
中央処理装置100に対してエラー発生報告23を送出
し、チャネル装置4001 〜400n に対してデータ転
送中止信号22を送出する。 【0032】次に、本実施例の動作について説明する。 【0033】まず、中央処理装置100が、初期設定時
にチャネル制御装置300の配下に接続される入出力装
置の全ての転送性能をチャネル制御装置300に与え
る。 【0034】その後、中央処理装置100から入出力命
令が発行されると、チャネル制御装置300は入出力命
令1をチャネル制御回路301で解読してデータ転送を
行なう入出力装置を認識し、該入出力装置の転送性能を
確認する。つづいて、チャネル制御回路301が先取り
データバッファ管理フラグ群305の使用中ビットと障
害ビットを参照して、先取りデータバッファ302の使
用状況から、入出力命令1を実行するために使用可能な
単位領域が空いているか否か判定する。その結果、も
し、入出力命令1を実行するのに必要な先取りデータバ
ッファ302の使用単位領域が足りない場合は、中央処
理装置100に対し先取りバッファ・BUSYのため実
行不可能を知らせる。 【0035】一方、入出力命令1を実行可能な場合は、
チャネル制御回路301が先取りデータバッファ管理フ
ラグ群305にチャネル装置番号と使用中ビット“1”
をセットし、入出力命令1の実行に必要な先取りデータ
バッファ302の使用単位領域を確保する。そして、チ
ャネル制御回路301は入出力命令1で指定された入出
力装置が接続されているチャネル装置に対して転送開始
指示9を発するとともに、データ転送制御回路304に
データ転送指示8を与え、メモリアクセスを開始させ
る。 【0036】データ転送指示8を受けたデータ転送制御
回路304は、メモリリクエスト3の送出を開始し、1
回メモリリクエストを行なう毎に先取りデータバッファ
制御回路303へリクエスト送出信号14を送る。 【0037】リクエスト送出信号14を受けた先取りデ
ータバッファ制御回路303は、先取りデータバッファ
管理フラグ群305を参照して、データ転送中の入出力
装置のメモリリクエストに対するメモリリプライデータ
が入出力装置に割当てられた、先取りデータバッファ3
02の使用単位領域一杯になると、データ転送制御回路
304に対しリクエスト抑止信号13を出力する。この
リクエスト抑止信号13を受信したデータ転送制御回路
304は、メモリリクエスト3の送出を一時停止する。 【0038】一方、メモリリクエスト3が受付けられる
と、前記メモリリクエスト3に対する主記憶装置200
からのメモリリプライ4がデータ入力レジスタ306に
て受信され、そのとき、該データ入力レジスタ306か
ら、先取りデータバッファ制御回路303に対してメモ
リリプライ受信信号21が送出される。 【0039】先取りデータバッファ制御回路303はメ
モリリプライ受信信号21を受信すると、先取りデータ
バッファ302に対して読出しアドレス15および書込
みアドレス16を送出し、それによって、前記メモリリ
プライ4がメモリリプライデータ5として、前記書込み
アドレス16で指定された領域へ格納されるとともに、
読出しアドレス15にて指定された領域のデータ(読出
しデータ6)が読出されて、データ出力レジスタ307
に格納される。 【0040】データ出力レジスタ307は、読出しデー
タ6を受信すると、先取りデータバッファ制御回路30
3からのチャネル装置番号情報11で指定されるチャネ
ル装置へ転送データ7として送出し、その送出が完了す
ると先取りデータバッファ制御回路303に対して、デ
ータ出力の完了を知らせるデータ送出完了信号12を送
出する。 【0041】また、先取りデータバッファ制御回路30
3がリクエスト抑止信号13を発している状態で、デー
タ出力レジスタ307からデータ送出完了信号12を受
信してデータ転送中の入出力装置に割当てられた先取り
データバッファ302の使用単位領域に空きができる
と、リクエスト抑止信号13の送出を止め、データ転送
制御回路304にメモリリクエスト3の送出を再開させ
る。 【0042】以上の動作を入出力命令1で指定された転
送量が完了するまで繰り返してデータ転送が終了する
と、チャネル制御回路301は中央処理装置100に対
し入出力命令1の終了報告2を出力してチャネル制御装
置300の動作を終了する。また、データ転送中にエラ
ー検出回路309が、先取りデータバッファ302の読
出しデータ6においてエラーを検出すると、該読出しデ
ータ6についての読出しアドレス15から、障害が生じ
たと考えられる先取りデータバッファ302の単位領域
を判定し、対応するバッファ管理フラグ群305の障害
ビットをセットする。さらに、同時に、障害発生時に使
用する予備の単位領域のフラグの使用中ビットをリセッ
トする。また、チャネル制御装置300の配下の全ての
チャネル装置4001 〜400n に対してエラーによる
「データ転送の中止」を示すデータ転送中止信号22を
発するとともに、中央処理装置100に先取りデータバ
ッファ302でのエラーの検出を示すエラー発生報告2
3を通知する。 【0043】このエラー発生報告23を受けた中央処理
装置100は、チャネル制御装置300に対し、再度初
期設定を行ない、データ転送を中止した全ての入出力命
令1の発行を再度行なう。この場合、チャネル制御装置
300が先取りデータバッファ302に使用単位領域を
確保する際、データバッファ管理フラグ群305の障害
ビットがセットされている単位領域をBUSY状態のと
きと同様に使用できなくし、代わりに予備の先取りデー
タバッファ302の領域を使用する。予備の単位領域の
フラグをセットすることにより、障害領域を使用しない
で予備の先取りデータバッファ302の単位領域を使用
して再割付けを行なう。 【0044】 【発明の効果】以上説明したように本発明によれば下記
のような効果を奏する。 【0045】(1)転送能力の異なる入出力装置が接続
されている複数のチャネル装置が先取りデータバッファ
を共用し、転送動作を行なう入出力装置の転送能力に応
じて先取りデータバッファの使用量が設定できるので、
転送性能の異なる入出力装置についても前記先取りデー
タバッファを効率よく共用できるとともに、ハードウェ
アを大幅に削減できる。 【0046】(2)近年の入出力装置は益々高速化が進
み転送性能の高い入出力装置と、低い入出力装置の競合
が増大しているが、一つの入出力装置の転送動作に割当
てる先取りデータバッファのデータ保持領域の大きさが
可変なので、高速転送対応のチャネル装置を用意してお
けば、チャネル装置の転送性能を意識することなく、転
送性能の高い入出力装置と低い入出力装置を自由に接続
でき、先取りデータバッファにも無駄ができない。 【0047】(3)先取りデータバッファの一部に障害
が生じても、その場でチャネル装置の使用が不可能にな
るということが防げるので、装置の信頼性が向上する。
Description: BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a plurality of channel devices to which input / output devices are respectively connected, and an instruction for data transfer of memory reply data read from a storage device. And a channel control device for transferring the data to a transfer destination input / output device specified by the input / output command. 2. Description of the Related Art FIG. 3 shows a conventional data transfer system.
This will be described with reference to FIG. The data transfer system shown in FIG. 3 has n channel devices 900 under the control of a channel control device 800.
1 to 900 n are those of structure were connected, respectively to each channel unit 900 1 to 900 n, input-output device 10
00 1 ~1000 n is connected. Each of the channel devices 900 1 to 900 n
Have the same configuration, and each has a main storage device 70.
0 reply data from is stored, and a prefetch data buffer 903 1 ~903 n fixed-size. In such a data transfer device, when data is transferred between the main storage device 700 and each of the input / output devices 1000 1 to 1000 n , an input / output command is issued from the central processing unit 600 and the input / output command is issued. The channel control device that received the command instructs the channel device 900 to which the input / output device specified by the input / output command is connected to execute data transfer. The channel device 900 instructed to execute the data transfer makes a memory request within the capacity of the prefetch data buffer 903, and the input / output device 10
Prepare transfer data to be transferred to 00. Transfer data sufficient to start data transfer is stored in the prefetch data buffer 9.
03, the I / O interface control circuit 9
04 transfers the transfer data to the input / output device 1000. When the data transfer is completed, the channel device 900 notifies the channel controller 800, and the channel controller 800 having received the notification notifies the central processing unit 600 of an end report indicating the end of the data transfer related to the input / output command. Then, the operation of the channel control device 800 ends. However, in the conventional data transfer system described above, the prefetch data buffer provided inside each channel device is of a fixed size, and the transfer performance differs under the channel device. When an I / O device is connected, a prefetch data buffer necessary for data transfer by an I / O device with high transfer performance is prepared, so when performing data transfer to an I / O device with low transfer performance, There is a problem that the prefetch data buffer is wasted. Further, in recent data transfer systems, the speed has been further increased and the combination of an input / output device having a high transfer performance and an input / output device having a low transfer performance cannot be avoided. Therefore, there is a problem that the waste of the prefetched data buffer is also increasing. Further, when a failure occurs in the prefetch data buffer of the channel device, the channel device becomes unusable. SUMMARY OF THE INVENTION The present invention has been made in view of the above-mentioned problems of the related art, and can efficiently use a prefetch data buffer and perform highly reliable data transfer.
It is intended to provide a data transfer system. According to the present invention, a plurality of channel devices to which input / output devices are respectively connected, and memory reply data read from a storage device are input / output instructions for inputting data. In a data transfer system having a channel control device for transferring data to a designated transfer destination input / output device, the channel control device has a data holding area divided into a plurality of unit areas, and a spare unit area for occurrence of a failure is provided. Corresponding to each unit area of the prefetch data buffer, in-use information indicating whether or not the memory reply data is stored in the unit area, and a memory stored in the unit area. Input / output information indicating a destination input / output device of reply data,
When a failure occurs in the unit area, failure information indicating use prohibition of the unit area is recorded. A data buffer management flag group including a plurality of data buffer management flags, and the data transfer performance of each of the input / output devices is A transfer performance table stored in advance and, when the input / output instruction is issued, extracting a data transfer performance corresponding to the transfer destination input / output device from the transfer performance table, and performing the prefetch according to the data transfer performance. The in-use bit and the input / output device information are set in the data buffer management flag corresponding to the data holding area of the data buffer, and when a failure occurs in the used prefetch data buffer unit area, the data buffer management of the spare unit area is performed. A channel control circuit for setting a used bit and input / output device information to a flag;
Referring to the data buffer management flag group, the address indicating the unit area of the prefetch data buffer related to the data buffer management flag for which the busy bit is set for the transfer destination input / output device of the memory reply data,
A prefetch data buffer control circuit for designating a write address of the memory reply data to the prefetch data buffer and designating a read address for reading the memory reply data already held in the prefetch data buffer; Referring to the memory reply data read from the buffer, it is checked whether or not the memory reply data is normal. If an error has occurred, the memory reply data is read from the unit area corresponding to the read address from which the memory reply data was read. An error detection circuit that records the failure information in a data buffer management flag, wherein each of the data buffer management flags in the data buffer management flag group of the channel control device has a failure in a unit area of the prefetched data buffer. At the occurrence of Fault information indicating the disabling of the unit region is fault bit is provided to be set, further,
The channel control device refers to the memory reply data read from the prefetch data buffer, checks whether the memory reply data is normal, and when an error occurs, the memory reply data is read. An error detection circuit for setting the fault information in a data buffer management flag relating to the unit area corresponding to the read address is provided, and a spare unit area for occurrence of a fault is provided in the prefetch data buffer of the channel control device. The channel control circuit of the channel control device,
When a failure occurs in the used prefetch data buffer unit area, a used bit and input / output device information may be set in the data buffer management flag of the spare unit area. According to the data transfer system of the present invention, the data holding area of the prefetch data buffer provided in the channel control device is divided and used in an amount corresponding to the transfer performance of the input / output device for performing data transfer. Therefore, the prefetch data buffer can be used efficiently even in a system where input / output devices having different transfer performances coexist. Next, an embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing one embodiment of the data transfer system of the present invention. The data transfer system according to the present embodiment includes a central processing unit 100, a main storage device 200, a channel control device 300, and n channel devices 400 1 to which input / output devices 500 1 to 500 n are connected. and a to 400 n, input-output device and the main storage device 200 500
Data transfer is performed between 1 and 500 n . The central processing unit 100 performs arithmetic processing, and performs a channel control unit 3 when performing input / output processing.
Issue input / output instruction 1 for 00. In addition, when the channel control device 300 is initialized, the channel control device 30
The transfer performance information 17 about all the input / output devices connected under 0 is given to the channel control device 300. The main storage device 200 stores the central processing unit 100
And a channel control device 300, and sends a one-word memory reply 4 for one memory request 3 issued from the channel control device 300. The channel control device 300 controls each of the channel devices 400 1 to 400 n in accordance with the input / output command 1 issued by the central processing unit 100, and connects the main storage device 200 with the input / output devices 500 1 to 500 n. Is a device for transferring data. The channel device 400 1 to 400 n is a device for controlling an interface with input and output devices 500 1 to 500 n, at the direction of the channel control unit 300 and the main storage device 200 output device 500 1 and to 500 n Is performed during the data transfer. Here, the configuration of the channel control device 300 will be described. The channel control device 300 of this embodiment includes a channel control circuit 301, a prefetch data buffer 302, a prefetch data buffer control circuit 303, a data transfer control circuit 304, a data buffer management flag group 305, a data input register 306, and a data output. Register 307, input / output device transfer performance table 308, and error detection circuit 30
9 is provided. The input / output device transfer performance table 308 stores transfer performance information 17 of each of the input / output devices 500 1 to 500 n transferred from the central processing unit 100 at the time of initialization. The prefetch data buffer 302 is a buffer for storing transfer data read from the main storage device 200 prior to data transfer, and is designated by a read address 15 and a write address 16 issued by the prefetch data buffer control circuit 303. Reading and writing of transfer data are performed on the unit area. The data buffer management flag group 305 corresponds to one prefetch data buffer management flag per unit area of the prefetch data buffer 302. Here, each prefetch data buffer management flag of the data buffer management flag group 305 will be described with reference to FIG. FIG. 2 is a diagram showing the relationship between the prefetch data buffer management flag and the unit area of the prefetch data buffer 302. The prefetch data buffer management flag of the present embodiment includes a failure bit indicating whether or not a unit area of the prefetch data buffer 302 has a fault, and a busy bit indicating whether or not the unit area is being used. , A channel device number indicating the channel device in use. When both the failure bit and the busy bit are "0", it indicates that the corresponding unit area of the prefetch data buffer 302 is available. The prefetch data buffer 302 has a spare unit area for the occurrence of a failure, and the spare unit area usually has a busy bit of “1” for use when a failure occurs.
(Unusable state). When a failure occurs in the unit area of the prefetch data buffer 302, the error detection circuit 309 sets the error detection information 20 ("1") in the failure bit. This fault bit is a flag that is not reset once set. The channel control circuit 301 is a circuit that decodes and processes the input / output command 1 from the central processing unit 100. The designated input / output device information 18 indicating the input / output device specified by the input / output command 1 The transfer performance information 19 of the input / output device is read from the input / output device transfer performance table 308 based on the
2 Use unit area is secured. For securing the unit area to be used in the prefetch data buffer 302, the channel control circuit 301
The use status (use status display signal 10) of the prefetch data buffer 302 is monitored with reference to the data buffer management flag group 305, and when executing the input / output instruction 1, the prefetch data is calculated from the number of words of the prefetch data required. The required number of unit areas of the buffer 302 is determined. Then, the channel device number of the channel device to be used and the busy bit are set in the prefetch data buffer management flag corresponding to the required unit area. Also, the channel control circuit 301
Supplies a data transfer instruction 8 to the data transfer control circuit 304. Further, after the use unit area of the prefetch data buffer 302 is secured, a transfer start instruction 9 is sent to the corresponding channel device, and when the data transfer of the transfer amount specified by the input / output instruction 1 is completed, the central processing An end report 2 is sent to the device 100. The prefetch data buffer control circuit 303
Referring to the data buffer management flag group 305, the prefetch data buffer 30
A read address 15 and a write address 16 are designated for 2. Read address 15, write address 16
Is transmitted after receiving the memory reply reception signal 21 from the data input register 306. Further, a channel device corresponding to the input / output device to which data is transferred, that is, the channel device number recorded in the data buffer management flag in use is transmitted to the data output register 307 as channel device number information 11. When the use status display signal 10 indicates that the unit area of the prefetch data buffer 302 assigned to the input / output device for transferring data is full, the data transfer control circuit 304 sends a request inhibition signal 13 Is output. The data transfer control circuit 304 accesses the main storage device 200 in accordance with the data transfer instruction 8 from the channel control circuit 301. The prefetch data buffer control circuit 303 outputs the request suppression signal 13 for each channel device. The memory request 3 for each channel device is continuously transmitted to the main storage device 200 until the main storage device 200 is transmitted. Further, each time the memory request 3 is transmitted once, the request transmission signal 14 for each channel device is transmitted to the prefetch data buffer control circuit 303. The data input register 306 is a register for writing the memory reply data 4 from the main storage device 200 into the prefetch data buffer 302. When the memory reply data 4 is received, the prefetch data buffer control circuit 303 A memory reply reception signal 21 is sent out. The data output register 307 stores the data read from the prefetch data buffer 302 in the channel device number information 1 from the prefetch data buffer control circuit 303.
This is a register for sending to the channel device designated by 1. When the data sending is completed, it sends a data sending completion signal 12 to the prefetch data buffer control circuit 303. The error detection circuit 309 detects a failure by referring to the read data 6 read from the prefetch data buffer 302. If a failure is detected once, the error occurrence area of the prefetch data buffer 302 is read from the read address 15. Judgment is made, and an error detection signal 20 is issued to set “1” to the failure bit of the data buffer management flag group 305 corresponding to the failure occurrence area. Also, when a failure occurs,
It sends an error report 23 to the central processing unit 100, and sends the data transfer interruption signal 22 to the channel device 400 1 to 400 n. Next, the operation of this embodiment will be described. First, the central processing unit 100 gives the channel control device 300 all the transfer performances of the input / output devices connected under the channel control device 300 at the time of initialization. Thereafter, when an input / output command is issued from the central processing unit 100, the channel control device 300 decodes the input / output command 1 by the channel control circuit 301 and recognizes the input / output device which performs data transfer. Check the transfer performance of the output device. Subsequently, the channel control circuit 301 refers to the in-use bit and the failure bit of the prefetch data buffer management flag group 305 and determines the unit area available for executing the input / output instruction 1 based on the use status of the prefetch data buffer 302. It is determined whether or not is empty. As a result, if the used unit area of the prefetch data buffer 302 necessary for executing the input / output instruction 1 is insufficient, the central processing unit 100 is notified that the execution is impossible due to the prefetch buffer BUSY. On the other hand, when the input / output instruction 1 can be executed,
The channel control circuit 301 sets the channel device number and the used bit “1” in the prefetch data buffer management flag group 305.
Is set, and a unit area for use of the prefetch data buffer 302 necessary for executing the input / output instruction 1 is secured. Then, the channel control circuit 301 issues a transfer start instruction 9 to the channel device to which the input / output device specified by the input / output instruction 1 is connected, and gives the data transfer instruction 8 to the data transfer control circuit 304, Start access. The data transfer control circuit 304 receiving the data transfer instruction 8 starts sending the memory request 3 and
Each time a memory request is made, a request sending signal 14 is sent to the prefetch data buffer control circuit 303. The prefetch data buffer control circuit 303, having received the request transmission signal 14, refers to the prefetch data buffer management flag group 305 and allocates memory reply data for the memory request of the input / output device during data transfer to the input / output device. Prefetched data buffer 3
When the use unit area 02 becomes full, the request suppression signal 13 is output to the data transfer control circuit 304. The data transfer control circuit 304 that has received the request suppression signal 13 temporarily stops sending the memory request 3. On the other hand, when the memory request 3 is accepted, the main memory 200 for the memory request 3 is received.
Is received by the data input register 306. At this time, the memory reply reception signal 21 is transmitted from the data input register 306 to the prefetch data buffer control circuit 303. When the prefetch data buffer control circuit 303 receives the memory reply reception signal 21, the prefetch data buffer control circuit 303 sends the read address 15 and the write address 16 to the prefetch data buffer 302, whereby the memory reply 4 becomes the memory reply data 5. Is stored in the area specified by the write address 16,
Data (read data 6) in the area designated by read address 15 is read, and data output register 307 is read.
Is stored in When the data output register 307 receives the read data 6, the prefetch data buffer control circuit 30
3 is transmitted as transfer data 7 to the channel device specified by the channel device number information 11 and, when the transmission is completed, a data transmission completion signal 12 for notifying completion of data output is transmitted to the prefetch data buffer control circuit 303. I do. The prefetch data buffer control circuit 30
3 is transmitting the request suppression signal 13, and receives the data transmission completion signal 12 from the data output register 307 to create a free space in the use unit area of the prefetch data buffer 302 allocated to the input / output device during data transfer. Then, the transmission of the request suppression signal 13 is stopped, and the data transfer control circuit 304 restarts the transmission of the memory request 3. When the above operation is repeated until the transfer amount specified by the input / output instruction 1 is completed, and the data transfer is completed, the channel control circuit 301 outputs the end report 2 of the input / output instruction 1 to the central processing unit 100. Then, the operation of the channel control device 300 ends. When the error detection circuit 309 detects an error in the read data 6 of the prefetch data buffer 302 during the data transfer, the unit area of the prefetch data buffer 302 in which a failure is considered to have occurred from the read address 15 of the read data 6 Is determined, and the failure bit of the corresponding buffer management flag group 305 is set. At the same time, the in-use bit of the flag of the spare unit area used when a failure occurs is reset. Also, a data transfer stop signal 22 indicating “stop data transfer” due to an error is issued to all the channel devices 400 1 to 400 n under the control of the channel control device 300, and the prefetch data buffer 302 sends the data to the central processing unit 100. Error report 2 indicating the detection of an error
Notify 3. The central processing unit 100 which has received the error occurrence report 23 resets the channel control unit 300 again and issues all the input / output instructions 1 whose data transfer has been stopped again. In this case, when the channel control device 300 secures a unit area to be used in the prefetch data buffer 302, the unit area in which the failure bit of the data buffer management flag group 305 is set cannot be used as in the BUSY state. The area of the spare prefetch data buffer 302 is used. By setting the flag of the spare unit area, reallocation is performed using the unit area of the spare prefetch data buffer 302 without using the fault area. As described above, according to the present invention, the following effects can be obtained. (1) A plurality of channel devices to which input / output devices having different transfer capacities are connected share a prefetch data buffer, and the amount of use of the prefetch data buffer depends on the transfer capability of the input / output device performing the transfer operation. Can be set,
The prefetch data buffer can be efficiently shared between input / output devices having different transfer performances, and the hardware can be significantly reduced. (2) In recent years, input / output devices have been increasingly speeded up and competition between input / output devices having high transfer performance and input / output devices having low transfer performance has increased. Because the size of the data holding area of the data buffer is variable, if a channel device that supports high-speed transfer is prepared, I / O devices with high transfer performance and low I / O devices can be used without being aware of the transfer performance of the channel device. It can be connected freely, and there is no waste in the prefetch data buffer. (3) Even if a failure occurs in a part of the prefetch data buffer, it is possible to prevent the channel device from being disabled on the spot, thereby improving the reliability of the device.

【図面の簡単な説明】 【図1】本発明のデータ転送システムの一実施例を示す
ブロック図である。 【図2】データバッファ管理フラグ群の一例を示す図で
ある。 【図3】従来のデータ転送システムの一例を示すブロッ
ク図である。 【符号の説明】 100 中央処理装置 200 主記憶装置 300 チャネル制御装置 301 チャネル制御回路 302 先取りデータバッファ 303 先取りデータバッファ制御回路 304 データ転送制御回路 305 データバッファ管理フラグ群 306 データ入力レジスタ 307 データ出力レジスタ 308 入出力装置転送性能テーブル 309 エラー検出回路 400 チャネル装置 500 入出力装置
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram showing one embodiment of a data transfer system of the present invention. FIG. 2 is a diagram illustrating an example of a data buffer management flag group. FIG. 3 is a block diagram illustrating an example of a conventional data transfer system. DESCRIPTION OF SYMBOLS 100 Central processing unit 200 Main storage unit 300 Channel control unit 301 Channel control circuit 302 Prefetch data buffer 303 Prefetch data buffer control circuit 304 Data transfer control circuit 305 Data buffer management flag group 306 Data input register 307 Data output register 308 I / O device transfer performance table 309 Error detection circuit 400 Channel device 500 I / O device

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭62−208153(JP,A) 特開 昭63−20647(JP,A) 特開 昭63−20648(JP,A) 特開 平2−100739(JP,A) 特開 平4−361348(JP,A) 特開 平4−364556(JP,A) 特開 平5−151138(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 13/00 G06F 13/12 G06F 13/38 G06F 5/06 ──────────────────────────────────────────────────続 き Continuation of the front page (56) References JP-A-62-208153 (JP, A) JP-A-63-20647 (JP, A) JP-A-63-20648 (JP, A) JP-A-2-2 100739 (JP, A) JP-A-4-361348 (JP, A) JP-A-4-364556 (JP, A) JP-A-5-151138 (JP, A) (58) Fields investigated (Int. Cl. 7, DB name) G06F 13/00 G06F 13/12 G06F 13/38 G06F 5/06

Claims (1)

(57)【特許請求の範囲】 【請求項1】 入出力装置がそれぞれ接続された複数の
チャネル装置と、記憶装置から読出されたメモリリプラ
イデータを、データ転送を指示する入出力命令で指定さ
れた転送先入出力装置へ転送させるチャネル制御装置と
を有するデータ転送システムにおいて、 前記チャネル制御装置が、 データ保持領域が複数の単位領域に分割され、障害発生
時用の予備単位領域が設けられた先取りデータバッファ
と、 前記先取りデータバッファの各単位領域に対応して、該
単位領域に前記メモリリプライデータが格納されている
か否かを示す使用中情報と、前記単位領域に格納されて
いるメモリリプライデータの転送先入出力装置を示す入
出力情報と、前記単位領域における障害の発生時に、該
単位領域の使用禁止を示す障害情報とが記録される、複
数のデータバッファ管理フラグからなるデータバッファ
管理フラグ群と、 前記各入出力装置のデータ転送性能が予め格納される転
送性能テーブルと、 前記入出力命令が発せられた際、前記転送先入出力装置
に対応するデータ転送性能を前記転送性能テーブルから
抽出して、該データ転送性能に応じた、前記先取りデー
タバッファのデータ保持領域に相当するデータバッファ
管理フラグに使用中ビットおよび入出力装置情報をセッ
トし、使用中の前記先取りデータバッファ単位領域に障
害が発生した際、前記予備単位領域のデータバッファ管
理フラグに、使用中ビットおよび入出力装置情報をセッ
トするチャネル制御回路と、 前記データバッファ管理フラグ群を参照して、メモリリ
プライデータの転送先入出力装置について使用中ビット
がセットされているデータバッファ管理フラグに関る前
記先取りデータバッファの単位領域を示すアドレスを、
前記メモリリプライデータの、前記先取りデータバッフ
ァに対する書込みアドレスとして指定するとともに、既
に、前記先取りデータバッファが保持しているメモリリ
プライデータを読出す読出しアドレスを指定する先取り
データバッファ制御回路と、 前記先取りデータバッファから読出されたメモリリプラ
イデータを参照して、該メモリリプライデータが正常か
否かを調べ、エラーが発生している場合、該メモリリプ
ライデータが読出された読出しアドレスに対応する前記
単位領域に関るデータバッファ管理フラグに前記障害情
報を記録するエラー検出回路とを有することを特徴とす
るデータ転送システム。
(57) Claims 1. A plurality of channel devices to which input / output devices are respectively connected and memory reply data read from a storage device are designated by an input / output command instructing data transfer. A channel control device for transferring data to a transfer destination input / output device, the channel control device comprising: a prefetch device in which a data holding area is divided into a plurality of unit areas, and a spare unit area for use when a failure occurs is provided. A data buffer, corresponding to each unit area of the prefetch data buffer, in-use information indicating whether the memory reply data is stored in the unit area, and memory reply data stored in the unit area. Input / output information indicating the transfer destination input / output device, and fault information indicating that use of the unit area is prohibited when a fault occurs in the unit area. Are recorded, a data buffer management flag group consisting of a plurality of data buffer management flags, a transfer performance table in which the data transfer performance of each of the input / output devices is stored in advance, and when the input / output command is issued, A data transfer performance corresponding to the transfer destination input / output device is extracted from the transfer performance table, and a busy bit and an input bit are set in a data buffer management flag corresponding to the data holding area of the prefetch data buffer according to the data transfer performance. A channel control circuit that sets output device information and sets a busy bit and input / output device information to a data buffer management flag of the spare unit region when a failure occurs in the prefetched data buffer unit region in use; With reference to the data buffer management flag group, the destination input / output device of the memory reply data is An address of a unit area of Sekiru the prefetch data buffer in the data buffer management flag in use bit is set Te,
A prefetch data buffer control circuit that designates a write address of the memory reply data to the prefetch data buffer and specifies a read address for reading the memory reply data already held in the prefetch data buffer; Referring to the memory reply data read from the buffer, it is checked whether or not the memory reply data is normal. If an error has occurred, the memory reply data is stored in the unit area corresponding to the read address from which the memory reply data was read. And an error detection circuit for recording the failure information in a related data buffer management flag.
JP03352592A 1992-02-20 1992-02-20 Data transfer system Expired - Fee Related JP3364751B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP03352592A JP3364751B2 (en) 1992-02-20 1992-02-20 Data transfer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP03352592A JP3364751B2 (en) 1992-02-20 1992-02-20 Data transfer system

Publications (2)

Publication Number Publication Date
JPH05233482A JPH05233482A (en) 1993-09-10
JP3364751B2 true JP3364751B2 (en) 2003-01-08

Family

ID=12388965

Family Applications (1)

Application Number Title Priority Date Filing Date
JP03352592A Expired - Fee Related JP3364751B2 (en) 1992-02-20 1992-02-20 Data transfer system

Country Status (1)

Country Link
JP (1) JP3364751B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005084907A (en) 2003-09-08 2005-03-31 Sony Corp Memory band control unit

Also Published As

Publication number Publication date
JPH05233482A (en) 1993-09-10

Similar Documents

Publication Publication Date Title
US8028127B2 (en) Automated on-line capacity expansion method for storage device
EP0136560B1 (en) Loosely coupled multiprocessor system capable of transferring a control signal set by the use of a common memory
EP0075688A2 (en) Data processing apparatus including a selectively resettable peripheral system
US4523275A (en) Cache/disk subsystem with floating entry
JPH07104817B2 (en) Data record transfer method
JPS6120006B2 (en)
JP3364751B2 (en) Data transfer system
JP2807010B2 (en) Tape drive control unit for interconnection between host computer and tape drive and method of operating the same
US5404549A (en) Method for efficient access of data stored in a nexus table using queue tag indexes in a table portion
EP0169909B1 (en) Auxiliary memory device
JP3425355B2 (en) Multiple write storage
JP2752834B2 (en) Data transfer device
JP3273191B2 (en) Data transfer device
JP2826780B2 (en) Data transfer method
EP0358224A2 (en) Semiconductor disk device useful in transaction processing system
JP2003131944A (en) Memory system with clusters
JP2604056B2 (en) System bus expansion unit
JPH0131224B2 (en)
JP2003345515A (en) Disk controller, storage system, and method for controlling the same
JPH09114598A (en) Disk cache device
JPH06295268A (en) Bus interface circuit
JPS61256421A (en) Initialization system for transfer buffer of auxiliary storage device
JPH07306840A (en) Computer system
JPH07121447A (en) Load distributed paging system
JPH0584537B2 (en)

Legal Events

Date Code Title Description
S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081101

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081101

Year of fee payment: 6

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081101

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees