JPH03100751A - 入出力処理装置 - Google Patents
入出力処理装置Info
- Publication number
- JPH03100751A JPH03100751A JP23804389A JP23804389A JPH03100751A JP H03100751 A JPH03100751 A JP H03100751A JP 23804389 A JP23804389 A JP 23804389A JP 23804389 A JP23804389 A JP 23804389A JP H03100751 A JPH03100751 A JP H03100751A
- Authority
- JP
- Japan
- Prior art keywords
- data
- output
- transfer
- input
- bytes
- 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.)
- Granted
Links
Landscapes
- Information Transfer Systems (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
技術分野
本発明は入出力処理装置に関し、特に主記憶装置と入出
力装置との間のデータ転送を制御する入出力処理装置と
主記憶装置との間のデータ転送方式に関する。 従来技術 従来、主記憶装置と入出力装置との間のデータ転送にお
いては、人力転送の場合、入出力装置から受信したデー
タが一定のバイト数に達したときに該データを所定のバ
イト数単位(通常は1ワ一ド単位)でメモリに書込み、
出力転送の場合、データバッファ内に貯えられたデータ
が入出力装置に送られてデータバッファ内に一定のバイ
ト数の空きができたときに所定のバイト数(通常は1ワ
ード)のデータを主記憶装置から読出してデータバッフ
ァに補充するという方式がとられている。 このような従来のデータ転送では、出力転送の開始時な
どにデータバッファが空きまたは空きに近い状態のとき
に、主記憶装置にデータの0(給能力があっても、1回
のメモリアクセスではデータバッファにデータを充分供
給することができず、メモリアクセスを数回繰返さなけ
ればならない。 また、入力転送の場合においても、データバッファに詰
まったデータを主記憶装置に書込むために数回のメモリ
アクセスが必要であり、結果的にデータオーバランが発
生しやすいという欠点がある。 さらに、1回のメモリアクセスで常に数ワードのデータ
の読出しまたは書込みを行うブロック転送方式では、デ
ータバッファから主記憶装置への書込みまたは主記憶装
置からデータバッファへの読出しのときに時間を要し、
データ転送が一時的に中断する可能性が高いという欠点
がある。 発明の目的 本発明は上記のような従来のものの欠点を除去すべくな
されたもので、入出力装置の転送速度に応じたデータ転
送を行うことができ、データ転送開始時に効率のよいメ
モリアクセスを行うことができる入出力処理装置の提供
を目的とする。 発明の構成 本発明による入出力処理装置は、主記憶装置と入出力装
置との間で転送されるデータを一時保持するデータバッ
ファを有する入出力処理装置であって、前記データバッ
ファに保持されたデータ量を計数する計数手段と、前記
計数手段の計数値に応じて1回のアクセスで転送される
前記主記憶装置との間のデータ転送量を決定する決定手
段と、前記決定手段により決定された前記データ転送量
に応じて前記主記憶装置に対する読出し書込みを制御す
る制御手段とを有することを特徴とする。 実施例 次に、本発明の一実施例について
力装置との間のデータ転送を制御する入出力処理装置と
主記憶装置との間のデータ転送方式に関する。 従来技術 従来、主記憶装置と入出力装置との間のデータ転送にお
いては、人力転送の場合、入出力装置から受信したデー
タが一定のバイト数に達したときに該データを所定のバ
イト数単位(通常は1ワ一ド単位)でメモリに書込み、
出力転送の場合、データバッファ内に貯えられたデータ
が入出力装置に送られてデータバッファ内に一定のバイ
ト数の空きができたときに所定のバイト数(通常は1ワ
ード)のデータを主記憶装置から読出してデータバッフ
ァに補充するという方式がとられている。 このような従来のデータ転送では、出力転送の開始時な
どにデータバッファが空きまたは空きに近い状態のとき
に、主記憶装置にデータの0(給能力があっても、1回
のメモリアクセスではデータバッファにデータを充分供
給することができず、メモリアクセスを数回繰返さなけ
ればならない。 また、入力転送の場合においても、データバッファに詰
まったデータを主記憶装置に書込むために数回のメモリ
アクセスが必要であり、結果的にデータオーバランが発
生しやすいという欠点がある。 さらに、1回のメモリアクセスで常に数ワードのデータ
の読出しまたは書込みを行うブロック転送方式では、デ
ータバッファから主記憶装置への書込みまたは主記憶装
置からデータバッファへの読出しのときに時間を要し、
データ転送が一時的に中断する可能性が高いという欠点
がある。 発明の目的 本発明は上記のような従来のものの欠点を除去すべくな
されたもので、入出力装置の転送速度に応じたデータ転
送を行うことができ、データ転送開始時に効率のよいメ
モリアクセスを行うことができる入出力処理装置の提供
を目的とする。 発明の構成 本発明による入出力処理装置は、主記憶装置と入出力装
置との間で転送されるデータを一時保持するデータバッ
ファを有する入出力処理装置であって、前記データバッ
ファに保持されたデータ量を計数する計数手段と、前記
計数手段の計数値に応じて1回のアクセスで転送される
前記主記憶装置との間のデータ転送量を決定する決定手
段と、前記決定手段により決定された前記データ転送量
に応じて前記主記憶装置に対する読出し書込みを制御す
る制御手段とを有することを特徴とする。 実施例 次に、本発明の一実施例について
【!!1面を参照して
説明する。 第1図は本発明の一実施例の構成を示すブロック図であ
り、第2図は本発明の一実施例のシステム構成を示すブ
ロック図である。これらの図において、入出力装置3は
共通部1と入出力ボート部2−1〜2−4とから構成さ
れ、共通部1は中央処理装置5に接続されている主記憶
装置4と接続され、入出力ボート部2−1〜2−4各々
は!10インタフェース100を介して入出力装置6−
1〜6−4と接続されている。 ここで、主記憶装置4は1回のアクセスにより4バイト
(1ワード)、8バイト (2ワード)。 12バイト (3ワード)、16バイト (4ワード)
の読出しまたは書込みが可能となっている。 共通部1のデータ転送制御部10はメモリアドレスやデ
ータ長の保持更新、メモリ・インタフェース制御、人出
力ボート部2−1〜2−4とのインタフェース制御、デ
ータ転送シーケンス制御を行う。 また、データ転送制御部10は入出力処理装置3を制御
するマイクロプロセッサ(【カポせず)とインタフェー
スを介して接続されているが、本図においてはそのイン
タフェースを図示していない。 人力データレジスタ(IB)11は内部データバス13
を介して人出力ボート部2−1のデータバッファ21お
よび他の入出力ボート部2−2〜2−4から受取ったデ
ータ、すなわち主記憶装置4に書込むデータを一時的に
格納する。 出力データレジスタ(OB)12は主記憶装置4から読
出したデータを一時的に格納し、内部データバス14を
介して入出力ボート部2−1のデータバッファ21およ
び他の人出力ボート部2−2〜2−4に出力する。 優先判定回路15は入出力ボート部2−1の人出力ボー
ト制御部20および他の入出力ボート部2−2〜2−4
の人出力ボート制御部(図示せず)からのメモリリクエ
ストに対して最優先のものに許可を与え、該入出力ボー
ト部2−1〜2−4からのメモリリクエストをデータ転
送制御部10に送出するとともに、該入出力ボート部2
−1〜2−4からのアクセスバイトコードおよびその出
力データ転送フラグを選択回路16.17を介してデー
タ転送制御部10に送出するよう制御する。 人出力ボート制御部20は入出力ボート部2−1を制御
し、データ転送シーケンス制御や入出力インタフェース
制御を行う。 メモリポインタ(MP)22は主記憶装置4とのデータ
転送を制御する4ビツトのポインタである。 出力転送の場合、メモリポインタ22の値は主記憶装置
4から読出したデータを書込むべきデータバッファ21
の先頭アドレスを示し、入力転送の場合、メモリポイン
タ22の値はデータバッファ21内に格納されているデ
ータを主記憶装置4に書込むとき、データバッファ21
から読出すデータの先頭アドレスを保持し、主記憶装置
4とのデータ転送の進行に伴って更新される。 人出力インタフェースポインタ(PP)23はI10イ
ンタフェース100上のデータ転送を制御する5ビツト
のポインタである。 出力転送の場合、入出力インタフェースポインタ23の
値は入Lil力装置6−1にデータを送出するときにデ
ータバッファ21から読出すデータのアドレスを示し、
入力転送の場合、人出力インタフェースポインタ23の
値は入出力装置6−1から受I5シたデータを書込むべ
きデータバッファ21のアドレスを示し、入出力装置6
−1とのデータ転送の実行に伴って逐次更新される。 データバッファ21は16バイトからなっており、出力
データレジスタ12を介して人力される主記憶装置4か
らのデータを選択回路27を介して1バイトずつ受取り
、入出力装置6−1に出力するデータを選択回路28を
介して1バイトずつデータアウトレジスタ(DTO)3
0に出力する。 また、データバッファ21から読出されたデータはドラ
イバ29および内部データバス13を介して人力データ
レジスタ11に出力される。 データアウトレジスタ301.:i3納されたデータバ
ッファ2]からの1バイトのデータは、ドライバ32お
よびI10インタフェース+00を介して入出力装置6
−1に送出される。 チー9インLi’)ス9 (DT 1 ) 31 ニハ
I 10インタフエース100およびレシーバ33を介
して受信した入出力装置6−1からの1バイトのデータ
が格納され、そのデータは選択回路27を介してデータ
バッファ21に書込まれる。 減算器24はメモリポインタ22の値と入出力インタフ
ェースポインタ23の値との差を計算し、その計算結果
は差分ポインタ(DP)25に格納される。差分ポイン
タ25の値は入出力ボート制御部20および変換回路2
6に出力される。 人出力ボート制御部2oは差分ポインタ25の値と人出
力インタフェースポインタ23の最上位ビットの値とか
らデータバッファ21に空きがあるか否か、または格納
されているデータがあるか否かを判断し、空きがあれば
、または格納されているデータがあればメモリリクエス
トを優先判定回路15に出力して主記憶装置4に対する
データの読出しまたは書込みを要求するとともに、出力
データ転送フラグを選択回路17を介してデータ転送制
御部】0に出力する。 変換回路26は差分ポインタ25の値を2ビツトの情報
にエンコードし、該情報をアクセスバイトコードとして
選択回路16を介してデータ転送制御部10に出力する
。 上述の主記憶装W4とデータバッファ21との間のデー
タ転送は4バイトの整数倍(但し、最大16バイト)を
1単位として行われ、入出力装置6−1とデータバッフ
ァ21との間のデータ転送は1バイト単位で行われる。 尚、第1図においては入出力ボート部2−1の各回路の
みを図示しており、他の人出力ボート部2−2〜2−4
の各回路は図示していないが、他の人出カボート部2−
2〜2−4の構成は入出力ポート部2−1の構成と同じ
であり、その動作も同様である。 第3図は第1図の差分ポインタ25の値とデータバッフ
ァ21のデータ量およびアクセスバイトコードとの関係
を示す図である。図において、差分ポインタ25の値が
“0000”のときに出力転送であればデータバッファ
21のデータ量は15バイトであり、人力転送であれば
データバッファ21のデータ量は1バイトである。 差分ポインタ25の航が“0001”のときに出力転送
であればデータバッファ21のデータ量は14バイトで
あり、人力転送であればデータバッファ21のデータ量
は2バイトである。 差分ポインタ25の値が“001O”のときに出力転送
であればデータバッファ21のデータ量は13バイトで
あり、入力転送であればデータバッファ21のデータ量
は3バイトである。 上記の場合、出力転送であれば入出力1ニ一ト制御部2
0によりデータバッファ21に空きがないと14断され
、人力転送であれば入出力ポート制御部20によりデー
タバッファ21にデータが充分に格納されていないと判
断されるので、メモリリクエストの出力が抑止される。 差分ポインタ25の値が’0011”のときに出力転送
であればデータバッファ21のデータ量は12バイトで
あり、入力転送であればデータ量くツファ21のデータ
量は4バイトである。 差分ポインタ25の値が“0100”のときに出力転送
であればデータバッファ21のデータ量は11バイトで
あり、入力転送であればデータ量くツファ21のデータ
量は5バイトである。 差分ポインタ25の値が“0101“のときに出力転送
であればデータバッファ21のデータ量は10バ・fト
であり、入力転送であればデータ量(ツファ21のデー
タ量は6バイトである。 差分ポインタ25の値が“011O”のときに出力転送
であればデータバッファ21のデータ量は9バイトであ
り、入力転送であればデータ量(ツファ21のデータ量
は7バイトである。 上記の場合、出力転送であれば入出力ボート制御部20
によりデータバッファ21に空きがあると判断され、入
力転送であれば入出力ボート制御部20によりデータバ
ッファ21に充分にデータが格納されていると判断され
るので、メモリリクエストが出力されるとともに、変換
回路26からアクセスバイトコードとして“00mが出
力される。 アクセスバイトコードが′002のとき、出力転送であ
れば主記憶装置4からの4バイトのデータの読出しを示
し、入力転送であれば主記憶装置4への4バイトのデー
タの書込みを示す。 差分ポインタ25の値が“0111°のときに出力転送
であればデータバッファ21のデータ量は8バイトであ
り、入力転送であればデータバッファ21のデータ量は
8バイトである。 差分ポインタ25の値が1000”のときに出力転送で
あればデータバッファ21のデータ量は7バイトであり
、入力転送であればデータバッファ21のデータ量は9
バイトである。 差分ポインタ25の値が“1001”のときに出力転送
であればデータバッファ21のデータ量は6バイトであ
り、人力転送であればデータバッファ21のデータ量は
10バイトである。 差分ポインタ25の値が“1010”のときに出力転送
であればデータバッファ21のデータ量は5バイトであ
り、入力転送であればデータバッファ21のデータ量は
11バイトである。 上記の場合、出力転送であれば人出力ボート制御部20
によりデータバッファ21に空きがあると判断され、入
力転送であれば入出力ボート制御部20によりデータバ
ッファ21に充分にデータが格納されていると判断され
るので、メモリリクエストが出力されるとともに、変換
回路26からアクセスバイトコードとして“01°が出
力される。 アクセスバイトコードが′012のとき、出力転送であ
れば主記憶装置4からの8バイトのデータの読出しを示
し、人力転送であれば主記憶装置4への8バイトのデー
タの書込みを示す。 差分ポインタ25の値が’1011”のときに出力転送
であればデータバッファ21のデータ量は4バイトであ
り、入力転送であればデータバッファ21のデータ量は
12バイトである。 差分ポインタ25の値が’ 1100”のときに出力転
送であればデータバッファ21のデータ量は3バイトで
あり、入力転送であればデータバッファ21のデータ量
は13バイトである。 差分ポインタ25の値が“1101″のときに出力転送
であればデータバッファ21のデータ量は2バイトであ
り、入力転送であればデータバッファ21のデータ量は
14バイトである。 差分ポインタ25の値が’ 1110”のときに出力転
送であればデータバッファ21のデータ量は1バイトで
あり、入力転送であればデータバッファ21のデータ量
は15バイトである。 上記の場合、出力転送であれば人出力ボート制御部20
によりデータバッファ21に空きがあると判断され、入
力転送であれば人出力ボート制御部20によりデータバ
ッファ21に充分にデータが格納されていると判断され
るので、メモリリクエストが出力されるとともに、変換
回路26からアクセスバイトコードとして“10”が出
力される。 アクセスバイトコードが10″′のとき、出力転送であ
れば主記憶装置4からの12バイトのデータの読出しを
示し、入力転送であれば主記憶装置4への12バイトの
データの書込みを示す。 差分ポインタ25の値が“1111”で、入出力インタ
フェースポインタ23の最上位ビットが“0゜のときに
、出力転送であればデータバッファ21のデータ量は0
バイトであり、入力転送であればデータバッファ21の
データ量は16バイトである。 この場合、出力転送であれば入出力ポート制御部20に
よりデータバッファ21が空であると判断され、入力転
送であれば入出力ボート制御部20によりデータバッフ
ァ21すべてにデータが格納されていると判断されるの
で、メモリリクエストが出力されるとともに、変換「1
路26からアクセスバイトコードとして“11°が出力
される。 アクセスバイトコードが“11”のとき、出力転送であ
れば主記憶装置4からの16バイトのデータの読出しを
示し、人力転送であれば主記憶装置4への16バイトの
データの書込みを示す。 差分ポインタ25の値が“1111°で、人出力インタ
フェースポインタ23の最上位ビットが“1”のときに
、出力転送であればデータバッファ21のデータ量は1
6バイトであり、入力転送であればデータバッファ21
のデータ量は0バイトである。 この場合、出力転送であれば入出力ボート制御部20に
よりデータバッファ21ずべてにデータが格納されてい
ると判断され、入力転送であれば入出力ボート制御部2
0によりデータバッファ21が空であると判断されるの
で、メモリリクエストの出力が抑止される。 これら第1図〜第3図を用いて本発明の一実施例の動作
について説明する。 出力転送を起動しようとする場合、データ転送制御部1
0にはマイクロプログラムによりデータ長および主記憶
装置4上のアドレス(データ転送の開始アドレス)が設
定される。尚、第1図にはその設定手段を図示していな
い。 その後に、転送対象である入出力装置6−1が接続され
ている入出力ポート部2−1の人出力ボート制御部20
内の出力データ転送フラグ(図示せず)に“1”がセッ
トされるとともに、メモリポインタ22および入出力イ
ンタフェースポインタ23の全ビットに“0°がセット
される。 メモリポインタ22および入出力インタフェースポイン
タ23の全ビットに“01がセットされると、減算器2
4によりメモリポインタ22の値と人出力インタフェー
スポインタ23の値との差カリ1算され、差分ポインタ
25に“+111”がセットされる。 ここで、減算器24では「入出力、インタフェースポイ
ンタ23の下位4ビツト+メモリポインタ22の全ビッ
トの反転値」の計算が行われており、上記の場合には[
“0000”+“1111“」の計算が行われ、その計
算結果“1111”が差分ポインタ25にセットされる
。 人出力ボート制御部20は差分ボ、fシタ25の値“+
111”と、人出力インタフェースポインタ23の最上
位ビットの値“0”とからデータバッファ21が空であ
ると判断し、メモリリフニスI・を優先判定回路15に
出力して主起tα装置4がらのデータの読出しを要求す
る。 このとき、入出力ボート制御部2oがらデータ転送制御
部10に出力データ転送フラグの値“1“が出力される
とともに、差分ポインタ25の値“1111が変換回路
26でエンコードされ、アクセスバイトコードとして“
11°がデータ転送制御部10に出力される。この場合
、アクセスバイトコードが“11”なので16バイトの
データの読出しを示す。 優先判定回路15は人出力ボート制御部20がらのメモ
リリクエストが最優先のものと判定すると、該メモリリ
クエストに許可を与え、人出カポート制御部20からの
メモリリクエストをデータ転送制御部]0に伝えるとと
もに、人出力ボート部2−1からのアクセスバイトコー
ドおよびその出力データ転送フラグを選択回路1’6.
17を介してデータ転送制御部10に伝える。 データ転送制御部10は入出力ポート制御部20からの
メモリリクエストに応じて、主記憶装置4・\のメそり
リクエストを′1mとし、16バイトリードを指示する
コマンドとアドレスとを出力して主記憶装置4をアクセ
スする。 主記憶装置4は該メモリリクエストが受付は可能であれ
ば、データ転送制御部10・\のアクセプトを“1”と
し、その後に出力データレジスタ12に16バイトのデ
ータのうち最初の4バイトのデータを送出するとともに
、データ転送制御部10へのリプライを“1”としてデ
ータの受取りを指示する。 入出力処理装置3は主記憶装置4からのデータを出力デ
ータレジスタ12に一時格納し、該データを内部データ
バス14を介して選択回路27に供給する。 選択回路27は出力転送の場合に内部データバス14側
を選択出力するので、主記憶装置4からの4バイトのデ
ータがデータバッファ21に書込まれるとともに、メモ
リポインタ22の値が加算器22aにより+4され−る
。 主記憶装置4からは4バイトのデータが1マシンザイク
ル毎に次々と出力されており、この主記憶装置if4か
らの4バイトのデータがデータバッファ21に書込まれ
ると同時に、出力データレジスタ12には主記憶装置4
からの次の4バイトのデータが格納される。 以後、上述の処理動作が3回繰返され、主記憶装置4か
らの16バイトのデータがデータバッファ21に書込ま
れる。この間に主記憶装置4で異常が検出されると、主
記憶装置4からデータ転送制御部10にエラー信号が通
知される。 上記の処理動作により、主記憶装置4からの16バイト
のデータが順次データバッファ21に書込まれるとき、
メモリポインタ22は0゛から’4’、’8°、 °C
°と更新され、再び“0゜に戻る。 メモリポインタ22の値がC°から °0°に変化する
とき、入出力インタフェースポインタ23の最上位ビッ
トが“0”から“1°に反転し、差分ポインタ25の値
も再び“1111”となる。 人出力ボート制御部20は入出力インタフェースボ、イ
ンタ23の最上位ビット“1”と、差分ポインタ25の
値“+111”とからデータバッファ21ずべてにデー
タが格納されていると判断し、次のメモリリクエストの
出力を抑止する。 一方、データバッファ21にデータが格納されると、デ
ータバッファ21からのデータの読出しが行われて最初
の1バイトがデータアウトレジスタ′う0に格納され、
I10インタフェース100を介して入出力袋[6−1
への転送が開始される。 このデータバッファ21からのデータの読出しが行われ
る毎に、人出力インタフェースポインタ23の値が加算
器23aにより+1ずつされていく。 データバッファ21から4バイトのデータが入出力装置
6−1に転送されたとき、入出力インクフェースポイン
タ23の値は“10100°となるが、メモリポインタ
22の値は0゛のままなので、差分ポインタ25の値が
“0011”となる。 よって、入出力ボート制御部20はデータバッファ21
内に4バイトの空きを検出し、その4バイトのデータを
補充するためにメモリリクエストを再び優先判定回路1
5に送出する。但し、このときのアクセスバイトコード
は“00:となり、4バイトのデータの読出しを示す。 人出力ボート制御部20からのメモリリクエストは上述
の処理動作と同様に、優先判定回路15を介してデータ
転送制御部10に送られ、データ転送制御部10から4
バイトリードを指示するコマンドとアドレスとが出力さ
れて主記憶装置4がアクセスされる。 これにより、主記憶装置4から4バイトのデータが読出
されてデータバッファ21に書込まれるとともに、メモ
リポインタ22の値が加算器22aにより+4される。 よって、メモリポインタ22の値が“0100”となる
ので、差分ポインタ25の値が再び“1111”となり
、入出力ボート制御部20は再びデータバッファ21す
べてにデータが格納されていると判断し、次のメモリリ
クエストの出力を抑止する。 以上のようにしてデータ転送が実行されると、データ転
送制御部10に設定されたデータ長およびメモリアドレ
スが1回のメモリアクセス毎にアクセスバイトに応じた
値に更新され、データ長が尽きるとデータ転送が終了す
る。 人力転送の場合にも上述の処理と同様に、メモリポイン
タ22および入出力インタフェースポインタ23の全ビ
ットに“0”がセットされてデータ転送が開始され、転
送対象の入出力装置6−1からのデータがレシーバ33
およびデータインレジスタ31を介して選択回路27に
供給される。 選択回路27は人力転送の場合にデータインレジスタ3
1側を選択出力するので、入出力装置6−1からの最初
のデータがデータバッファ21の0番地に書込まれると
ともに、入出力インタフェースポインタ23の値が加算
器23aにより+1される。 この入出力装置6−1からのデータが4バイトに達する
と、入出力インタフェースポインタ23の値が“oot
oo ”となるので、差分ポインタ25の値が“001
1”となり、入出力ボート制御部20はデータバッファ
21内に格納された4バイトのデータを主記憶装置4に
書込むためにメモリリクエストを優先判定回路15に送
出する。このとき、データ転送制御部10へのアクセス
バイトコードは00”となり、4バイトのデータの書込
みを示す。 よって、メモリポインタ22が示すデータバッファ21
のアドレスから4バイトのデータが読出され、そのデー
タがドライバ29および内部データバス13を介して人
力データレジスタ11に一時格納されてから主記憶装置
4に書込まれる。 第4図は第1図の主記憶装置4の(R成を示すブロック
図であり、WS5図は第4図に示す主記憶袋W4の動作
を示すタイムチャートである。これら第4図および第5
図を用いて主起tα装置4に入出力装置6−1から送ら
れてきた16バイトのデータが書込まれる場合について
説明する。 入出力処理装置3を介して送られてきた入出力装置6−
1からの16バイトのデータを主記憶装置4に書込む場
合、入出力処理装置3からのリクエストバンク番号がリ
クエスト判定回路40に入力されると、リクエスト判定
回路40は該リクエストバンク番号に対するメモリリク
エストが受付は可能であるか否かを判断する。 ノクエスト判定回路40は該リクエストバンク番号に対
するメモリリクエストが受付は可能であれば、その旨を
制御回路49に通知するとともに、該リクエストバンク
番号をバンク番号レジスタ(BKN)42にセットする
。 このとき、入出力処理装置3から送られてきたアドレス
、コマンド、ライトマスク、ライトデータが夫々選択回
路41を介してアドレスレジスタ(ADR)45とコマ
ンドレジスタ(CM D R)46とライトマスクレジ
スタ(WMI047とライトデータレジスタ(WDR)
48とにセットされる。 制御回路49はリクエスト判定回路40からの通知と、
バンク番号レジスタ42からバンク番号レジスタ43を
介して入力されるリクエストバンク番号と、コマンドレ
ジスタ46およびライトマスクレジスタ47からのコマ
ンドおよびライトマスクとによりメモリセル53への1
6バイトライトであることを知り、メモリセル53のバ
ンク(BANK)Oにライトデータの書込みを指示する
。 メモリセル53では制御回路49により指定されたバン
ク0の、アドレスレジスタ45がらアドレスレジスタ5
0を介して送られてきたアドレスに、ECC(誤り検出
訂正符号)発生回路51てECCビットが付与され、ラ
イトデータレジスタ52を介して入力された最初の4バ
・fトのライトデータが書込まれる。 次に、制御回路49はバンク番号レジスタ43から入力
され、加算器44によって11されたリクエストバンク
番号を受取ると、メモリセル53のバンク1へのライト
データの書込みを指示し、次のライトデータがメモリセ
ル53のバンク1に書込まれる。 上述の処理動作と同様にして、メモリセル53の連続ス
るバンク2,3へのライトデータの書込みが行われると
、メモリセル53への16バイトのデータの書込みが終
了する。 入出力処理装置3が主記憶装置4から16バイトのデー
タを読出す場合も上述の処理動作と同様にして、制御回
路49の制御により連続するバンクθ〜3から順次デー
タが読出され、選択回路54を介してリードデータレジ
スタ55にセットされ、ECC訂正回路56で誤りが訂
正された後にリードデータレジスタ57を介して入出力
処理装置″うに送出される。 ここで、選択回路54はバンク番号レジスタ43から供
給されるリクエストバンク番号に応じてバンク0〜3か
らのデータを選択する。 尚、中央処理装置5からの主記憶装置4に対する読出し
または書込みも、上述の処理動作と同様にして行われる
。 このように、データバッファの残データ量または空き領
域のバ・fト数に応じて1回のアクセスで転送される主
記憶装置4との間のデータ転送量、すなわち主記憶装置
4から読出すワード数または主記憶装置4に書込むワー
ド数を決定することによって、出力転送時に1回のメモ
リアクセスでデータバッファ21にデータを充分供給す
ることができる。 また、入力転送時にデータバッファ21に格納されたデ
ータ量に応じて1回のメモリアクセスで主記憶装置4へ
の書込みを行うことができるので、メモリアクセスを繰
返す必要がなくなるとともに、データオーバランの発生
を防止することができる。 よって、データ転送を一時的に中断することなく、入出
力装置6−1〜6−4の転送速度に応じたデータ転送を
行うことが可能になるとともに、データ転送開始時に効
率のよいメモリアクセスを行うことが可能となる。 発明の詳細 な説明したように本発明によれば、データバッファに保
持されたデータ量に応じて決定された1回のアクセスで
転送される主記憶装置との間のデータ転送量により主記
憶装置に対する読出し書込みを行うようにすることによ
って、入出力装置の転送速度に応じたデータ転送を行う
ことができ、データ転送開始時に効率のよいメモリアク
セスを行うことができるという効果がある。
説明する。 第1図は本発明の一実施例の構成を示すブロック図であ
り、第2図は本発明の一実施例のシステム構成を示すブ
ロック図である。これらの図において、入出力装置3は
共通部1と入出力ボート部2−1〜2−4とから構成さ
れ、共通部1は中央処理装置5に接続されている主記憶
装置4と接続され、入出力ボート部2−1〜2−4各々
は!10インタフェース100を介して入出力装置6−
1〜6−4と接続されている。 ここで、主記憶装置4は1回のアクセスにより4バイト
(1ワード)、8バイト (2ワード)。 12バイト (3ワード)、16バイト (4ワード)
の読出しまたは書込みが可能となっている。 共通部1のデータ転送制御部10はメモリアドレスやデ
ータ長の保持更新、メモリ・インタフェース制御、人出
力ボート部2−1〜2−4とのインタフェース制御、デ
ータ転送シーケンス制御を行う。 また、データ転送制御部10は入出力処理装置3を制御
するマイクロプロセッサ(【カポせず)とインタフェー
スを介して接続されているが、本図においてはそのイン
タフェースを図示していない。 人力データレジスタ(IB)11は内部データバス13
を介して人出力ボート部2−1のデータバッファ21お
よび他の入出力ボート部2−2〜2−4から受取ったデ
ータ、すなわち主記憶装置4に書込むデータを一時的に
格納する。 出力データレジスタ(OB)12は主記憶装置4から読
出したデータを一時的に格納し、内部データバス14を
介して入出力ボート部2−1のデータバッファ21およ
び他の人出力ボート部2−2〜2−4に出力する。 優先判定回路15は入出力ボート部2−1の人出力ボー
ト制御部20および他の入出力ボート部2−2〜2−4
の人出力ボート制御部(図示せず)からのメモリリクエ
ストに対して最優先のものに許可を与え、該入出力ボー
ト部2−1〜2−4からのメモリリクエストをデータ転
送制御部10に送出するとともに、該入出力ボート部2
−1〜2−4からのアクセスバイトコードおよびその出
力データ転送フラグを選択回路16.17を介してデー
タ転送制御部10に送出するよう制御する。 人出力ボート制御部20は入出力ボート部2−1を制御
し、データ転送シーケンス制御や入出力インタフェース
制御を行う。 メモリポインタ(MP)22は主記憶装置4とのデータ
転送を制御する4ビツトのポインタである。 出力転送の場合、メモリポインタ22の値は主記憶装置
4から読出したデータを書込むべきデータバッファ21
の先頭アドレスを示し、入力転送の場合、メモリポイン
タ22の値はデータバッファ21内に格納されているデ
ータを主記憶装置4に書込むとき、データバッファ21
から読出すデータの先頭アドレスを保持し、主記憶装置
4とのデータ転送の進行に伴って更新される。 人出力インタフェースポインタ(PP)23はI10イ
ンタフェース100上のデータ転送を制御する5ビツト
のポインタである。 出力転送の場合、入出力インタフェースポインタ23の
値は入Lil力装置6−1にデータを送出するときにデ
ータバッファ21から読出すデータのアドレスを示し、
入力転送の場合、人出力インタフェースポインタ23の
値は入出力装置6−1から受I5シたデータを書込むべ
きデータバッファ21のアドレスを示し、入出力装置6
−1とのデータ転送の実行に伴って逐次更新される。 データバッファ21は16バイトからなっており、出力
データレジスタ12を介して人力される主記憶装置4か
らのデータを選択回路27を介して1バイトずつ受取り
、入出力装置6−1に出力するデータを選択回路28を
介して1バイトずつデータアウトレジスタ(DTO)3
0に出力する。 また、データバッファ21から読出されたデータはドラ
イバ29および内部データバス13を介して人力データ
レジスタ11に出力される。 データアウトレジスタ301.:i3納されたデータバ
ッファ2]からの1バイトのデータは、ドライバ32お
よびI10インタフェース+00を介して入出力装置6
−1に送出される。 チー9インLi’)ス9 (DT 1 ) 31 ニハ
I 10インタフエース100およびレシーバ33を介
して受信した入出力装置6−1からの1バイトのデータ
が格納され、そのデータは選択回路27を介してデータ
バッファ21に書込まれる。 減算器24はメモリポインタ22の値と入出力インタフ
ェースポインタ23の値との差を計算し、その計算結果
は差分ポインタ(DP)25に格納される。差分ポイン
タ25の値は入出力ボート制御部20および変換回路2
6に出力される。 人出力ボート制御部2oは差分ポインタ25の値と人出
力インタフェースポインタ23の最上位ビットの値とか
らデータバッファ21に空きがあるか否か、または格納
されているデータがあるか否かを判断し、空きがあれば
、または格納されているデータがあればメモリリクエス
トを優先判定回路15に出力して主記憶装置4に対する
データの読出しまたは書込みを要求するとともに、出力
データ転送フラグを選択回路17を介してデータ転送制
御部】0に出力する。 変換回路26は差分ポインタ25の値を2ビツトの情報
にエンコードし、該情報をアクセスバイトコードとして
選択回路16を介してデータ転送制御部10に出力する
。 上述の主記憶装W4とデータバッファ21との間のデー
タ転送は4バイトの整数倍(但し、最大16バイト)を
1単位として行われ、入出力装置6−1とデータバッフ
ァ21との間のデータ転送は1バイト単位で行われる。 尚、第1図においては入出力ボート部2−1の各回路の
みを図示しており、他の人出力ボート部2−2〜2−4
の各回路は図示していないが、他の人出カボート部2−
2〜2−4の構成は入出力ポート部2−1の構成と同じ
であり、その動作も同様である。 第3図は第1図の差分ポインタ25の値とデータバッフ
ァ21のデータ量およびアクセスバイトコードとの関係
を示す図である。図において、差分ポインタ25の値が
“0000”のときに出力転送であればデータバッファ
21のデータ量は15バイトであり、人力転送であれば
データバッファ21のデータ量は1バイトである。 差分ポインタ25の航が“0001”のときに出力転送
であればデータバッファ21のデータ量は14バイトで
あり、人力転送であればデータバッファ21のデータ量
は2バイトである。 差分ポインタ25の値が“001O”のときに出力転送
であればデータバッファ21のデータ量は13バイトで
あり、入力転送であればデータバッファ21のデータ量
は3バイトである。 上記の場合、出力転送であれば入出力1ニ一ト制御部2
0によりデータバッファ21に空きがないと14断され
、人力転送であれば入出力ポート制御部20によりデー
タバッファ21にデータが充分に格納されていないと判
断されるので、メモリリクエストの出力が抑止される。 差分ポインタ25の値が’0011”のときに出力転送
であればデータバッファ21のデータ量は12バイトで
あり、入力転送であればデータ量くツファ21のデータ
量は4バイトである。 差分ポインタ25の値が“0100”のときに出力転送
であればデータバッファ21のデータ量は11バイトで
あり、入力転送であればデータ量くツファ21のデータ
量は5バイトである。 差分ポインタ25の値が“0101“のときに出力転送
であればデータバッファ21のデータ量は10バ・fト
であり、入力転送であればデータ量(ツファ21のデー
タ量は6バイトである。 差分ポインタ25の値が“011O”のときに出力転送
であればデータバッファ21のデータ量は9バイトであ
り、入力転送であればデータ量(ツファ21のデータ量
は7バイトである。 上記の場合、出力転送であれば入出力ボート制御部20
によりデータバッファ21に空きがあると判断され、入
力転送であれば入出力ボート制御部20によりデータバ
ッファ21に充分にデータが格納されていると判断され
るので、メモリリクエストが出力されるとともに、変換
回路26からアクセスバイトコードとして“00mが出
力される。 アクセスバイトコードが′002のとき、出力転送であ
れば主記憶装置4からの4バイトのデータの読出しを示
し、入力転送であれば主記憶装置4への4バイトのデー
タの書込みを示す。 差分ポインタ25の値が“0111°のときに出力転送
であればデータバッファ21のデータ量は8バイトであ
り、入力転送であればデータバッファ21のデータ量は
8バイトである。 差分ポインタ25の値が1000”のときに出力転送で
あればデータバッファ21のデータ量は7バイトであり
、入力転送であればデータバッファ21のデータ量は9
バイトである。 差分ポインタ25の値が“1001”のときに出力転送
であればデータバッファ21のデータ量は6バイトであ
り、人力転送であればデータバッファ21のデータ量は
10バイトである。 差分ポインタ25の値が“1010”のときに出力転送
であればデータバッファ21のデータ量は5バイトであ
り、入力転送であればデータバッファ21のデータ量は
11バイトである。 上記の場合、出力転送であれば人出力ボート制御部20
によりデータバッファ21に空きがあると判断され、入
力転送であれば入出力ボート制御部20によりデータバ
ッファ21に充分にデータが格納されていると判断され
るので、メモリリクエストが出力されるとともに、変換
回路26からアクセスバイトコードとして“01°が出
力される。 アクセスバイトコードが′012のとき、出力転送であ
れば主記憶装置4からの8バイトのデータの読出しを示
し、人力転送であれば主記憶装置4への8バイトのデー
タの書込みを示す。 差分ポインタ25の値が’1011”のときに出力転送
であればデータバッファ21のデータ量は4バイトであ
り、入力転送であればデータバッファ21のデータ量は
12バイトである。 差分ポインタ25の値が’ 1100”のときに出力転
送であればデータバッファ21のデータ量は3バイトで
あり、入力転送であればデータバッファ21のデータ量
は13バイトである。 差分ポインタ25の値が“1101″のときに出力転送
であればデータバッファ21のデータ量は2バイトであ
り、入力転送であればデータバッファ21のデータ量は
14バイトである。 差分ポインタ25の値が’ 1110”のときに出力転
送であればデータバッファ21のデータ量は1バイトで
あり、入力転送であればデータバッファ21のデータ量
は15バイトである。 上記の場合、出力転送であれば人出力ボート制御部20
によりデータバッファ21に空きがあると判断され、入
力転送であれば人出力ボート制御部20によりデータバ
ッファ21に充分にデータが格納されていると判断され
るので、メモリリクエストが出力されるとともに、変換
回路26からアクセスバイトコードとして“10”が出
力される。 アクセスバイトコードが10″′のとき、出力転送であ
れば主記憶装置4からの12バイトのデータの読出しを
示し、入力転送であれば主記憶装置4への12バイトの
データの書込みを示す。 差分ポインタ25の値が“1111”で、入出力インタ
フェースポインタ23の最上位ビットが“0゜のときに
、出力転送であればデータバッファ21のデータ量は0
バイトであり、入力転送であればデータバッファ21の
データ量は16バイトである。 この場合、出力転送であれば入出力ポート制御部20に
よりデータバッファ21が空であると判断され、入力転
送であれば入出力ボート制御部20によりデータバッフ
ァ21すべてにデータが格納されていると判断されるの
で、メモリリクエストが出力されるとともに、変換「1
路26からアクセスバイトコードとして“11°が出力
される。 アクセスバイトコードが“11”のとき、出力転送であ
れば主記憶装置4からの16バイトのデータの読出しを
示し、人力転送であれば主記憶装置4への16バイトの
データの書込みを示す。 差分ポインタ25の値が“1111°で、人出力インタ
フェースポインタ23の最上位ビットが“1”のときに
、出力転送であればデータバッファ21のデータ量は1
6バイトであり、入力転送であればデータバッファ21
のデータ量は0バイトである。 この場合、出力転送であれば入出力ボート制御部20に
よりデータバッファ21ずべてにデータが格納されてい
ると判断され、入力転送であれば入出力ボート制御部2
0によりデータバッファ21が空であると判断されるの
で、メモリリクエストの出力が抑止される。 これら第1図〜第3図を用いて本発明の一実施例の動作
について説明する。 出力転送を起動しようとする場合、データ転送制御部1
0にはマイクロプログラムによりデータ長および主記憶
装置4上のアドレス(データ転送の開始アドレス)が設
定される。尚、第1図にはその設定手段を図示していな
い。 その後に、転送対象である入出力装置6−1が接続され
ている入出力ポート部2−1の人出力ボート制御部20
内の出力データ転送フラグ(図示せず)に“1”がセッ
トされるとともに、メモリポインタ22および入出力イ
ンタフェースポインタ23の全ビットに“0°がセット
される。 メモリポインタ22および入出力インタフェースポイン
タ23の全ビットに“01がセットされると、減算器2
4によりメモリポインタ22の値と人出力インタフェー
スポインタ23の値との差カリ1算され、差分ポインタ
25に“+111”がセットされる。 ここで、減算器24では「入出力、インタフェースポイ
ンタ23の下位4ビツト+メモリポインタ22の全ビッ
トの反転値」の計算が行われており、上記の場合には[
“0000”+“1111“」の計算が行われ、その計
算結果“1111”が差分ポインタ25にセットされる
。 人出力ボート制御部20は差分ボ、fシタ25の値“+
111”と、人出力インタフェースポインタ23の最上
位ビットの値“0”とからデータバッファ21が空であ
ると判断し、メモリリフニスI・を優先判定回路15に
出力して主起tα装置4がらのデータの読出しを要求す
る。 このとき、入出力ボート制御部2oがらデータ転送制御
部10に出力データ転送フラグの値“1“が出力される
とともに、差分ポインタ25の値“1111が変換回路
26でエンコードされ、アクセスバイトコードとして“
11°がデータ転送制御部10に出力される。この場合
、アクセスバイトコードが“11”なので16バイトの
データの読出しを示す。 優先判定回路15は人出力ボート制御部20がらのメモ
リリクエストが最優先のものと判定すると、該メモリリ
クエストに許可を与え、人出カポート制御部20からの
メモリリクエストをデータ転送制御部]0に伝えるとと
もに、人出力ボート部2−1からのアクセスバイトコー
ドおよびその出力データ転送フラグを選択回路1’6.
17を介してデータ転送制御部10に伝える。 データ転送制御部10は入出力ポート制御部20からの
メモリリクエストに応じて、主記憶装置4・\のメそり
リクエストを′1mとし、16バイトリードを指示する
コマンドとアドレスとを出力して主記憶装置4をアクセ
スする。 主記憶装置4は該メモリリクエストが受付は可能であれ
ば、データ転送制御部10・\のアクセプトを“1”と
し、その後に出力データレジスタ12に16バイトのデ
ータのうち最初の4バイトのデータを送出するとともに
、データ転送制御部10へのリプライを“1”としてデ
ータの受取りを指示する。 入出力処理装置3は主記憶装置4からのデータを出力デ
ータレジスタ12に一時格納し、該データを内部データ
バス14を介して選択回路27に供給する。 選択回路27は出力転送の場合に内部データバス14側
を選択出力するので、主記憶装置4からの4バイトのデ
ータがデータバッファ21に書込まれるとともに、メモ
リポインタ22の値が加算器22aにより+4され−る
。 主記憶装置4からは4バイトのデータが1マシンザイク
ル毎に次々と出力されており、この主記憶装置if4か
らの4バイトのデータがデータバッファ21に書込まれ
ると同時に、出力データレジスタ12には主記憶装置4
からの次の4バイトのデータが格納される。 以後、上述の処理動作が3回繰返され、主記憶装置4か
らの16バイトのデータがデータバッファ21に書込ま
れる。この間に主記憶装置4で異常が検出されると、主
記憶装置4からデータ転送制御部10にエラー信号が通
知される。 上記の処理動作により、主記憶装置4からの16バイト
のデータが順次データバッファ21に書込まれるとき、
メモリポインタ22は0゛から’4’、’8°、 °C
°と更新され、再び“0゜に戻る。 メモリポインタ22の値がC°から °0°に変化する
とき、入出力インタフェースポインタ23の最上位ビッ
トが“0”から“1°に反転し、差分ポインタ25の値
も再び“1111”となる。 人出力ボート制御部20は入出力インタフェースボ、イ
ンタ23の最上位ビット“1”と、差分ポインタ25の
値“+111”とからデータバッファ21ずべてにデー
タが格納されていると判断し、次のメモリリクエストの
出力を抑止する。 一方、データバッファ21にデータが格納されると、デ
ータバッファ21からのデータの読出しが行われて最初
の1バイトがデータアウトレジスタ′う0に格納され、
I10インタフェース100を介して入出力袋[6−1
への転送が開始される。 このデータバッファ21からのデータの読出しが行われ
る毎に、人出力インタフェースポインタ23の値が加算
器23aにより+1ずつされていく。 データバッファ21から4バイトのデータが入出力装置
6−1に転送されたとき、入出力インクフェースポイン
タ23の値は“10100°となるが、メモリポインタ
22の値は0゛のままなので、差分ポインタ25の値が
“0011”となる。 よって、入出力ボート制御部20はデータバッファ21
内に4バイトの空きを検出し、その4バイトのデータを
補充するためにメモリリクエストを再び優先判定回路1
5に送出する。但し、このときのアクセスバイトコード
は“00:となり、4バイトのデータの読出しを示す。 人出力ボート制御部20からのメモリリクエストは上述
の処理動作と同様に、優先判定回路15を介してデータ
転送制御部10に送られ、データ転送制御部10から4
バイトリードを指示するコマンドとアドレスとが出力さ
れて主記憶装置4がアクセスされる。 これにより、主記憶装置4から4バイトのデータが読出
されてデータバッファ21に書込まれるとともに、メモ
リポインタ22の値が加算器22aにより+4される。 よって、メモリポインタ22の値が“0100”となる
ので、差分ポインタ25の値が再び“1111”となり
、入出力ボート制御部20は再びデータバッファ21す
べてにデータが格納されていると判断し、次のメモリリ
クエストの出力を抑止する。 以上のようにしてデータ転送が実行されると、データ転
送制御部10に設定されたデータ長およびメモリアドレ
スが1回のメモリアクセス毎にアクセスバイトに応じた
値に更新され、データ長が尽きるとデータ転送が終了す
る。 人力転送の場合にも上述の処理と同様に、メモリポイン
タ22および入出力インタフェースポインタ23の全ビ
ットに“0”がセットされてデータ転送が開始され、転
送対象の入出力装置6−1からのデータがレシーバ33
およびデータインレジスタ31を介して選択回路27に
供給される。 選択回路27は人力転送の場合にデータインレジスタ3
1側を選択出力するので、入出力装置6−1からの最初
のデータがデータバッファ21の0番地に書込まれると
ともに、入出力インタフェースポインタ23の値が加算
器23aにより+1される。 この入出力装置6−1からのデータが4バイトに達する
と、入出力インタフェースポインタ23の値が“oot
oo ”となるので、差分ポインタ25の値が“001
1”となり、入出力ボート制御部20はデータバッファ
21内に格納された4バイトのデータを主記憶装置4に
書込むためにメモリリクエストを優先判定回路15に送
出する。このとき、データ転送制御部10へのアクセス
バイトコードは00”となり、4バイトのデータの書込
みを示す。 よって、メモリポインタ22が示すデータバッファ21
のアドレスから4バイトのデータが読出され、そのデー
タがドライバ29および内部データバス13を介して人
力データレジスタ11に一時格納されてから主記憶装置
4に書込まれる。 第4図は第1図の主記憶装置4の(R成を示すブロック
図であり、WS5図は第4図に示す主記憶袋W4の動作
を示すタイムチャートである。これら第4図および第5
図を用いて主起tα装置4に入出力装置6−1から送ら
れてきた16バイトのデータが書込まれる場合について
説明する。 入出力処理装置3を介して送られてきた入出力装置6−
1からの16バイトのデータを主記憶装置4に書込む場
合、入出力処理装置3からのリクエストバンク番号がリ
クエスト判定回路40に入力されると、リクエスト判定
回路40は該リクエストバンク番号に対するメモリリク
エストが受付は可能であるか否かを判断する。 ノクエスト判定回路40は該リクエストバンク番号に対
するメモリリクエストが受付は可能であれば、その旨を
制御回路49に通知するとともに、該リクエストバンク
番号をバンク番号レジスタ(BKN)42にセットする
。 このとき、入出力処理装置3から送られてきたアドレス
、コマンド、ライトマスク、ライトデータが夫々選択回
路41を介してアドレスレジスタ(ADR)45とコマ
ンドレジスタ(CM D R)46とライトマスクレジ
スタ(WMI047とライトデータレジスタ(WDR)
48とにセットされる。 制御回路49はリクエスト判定回路40からの通知と、
バンク番号レジスタ42からバンク番号レジスタ43を
介して入力されるリクエストバンク番号と、コマンドレ
ジスタ46およびライトマスクレジスタ47からのコマ
ンドおよびライトマスクとによりメモリセル53への1
6バイトライトであることを知り、メモリセル53のバ
ンク(BANK)Oにライトデータの書込みを指示する
。 メモリセル53では制御回路49により指定されたバン
ク0の、アドレスレジスタ45がらアドレスレジスタ5
0を介して送られてきたアドレスに、ECC(誤り検出
訂正符号)発生回路51てECCビットが付与され、ラ
イトデータレジスタ52を介して入力された最初の4バ
・fトのライトデータが書込まれる。 次に、制御回路49はバンク番号レジスタ43から入力
され、加算器44によって11されたリクエストバンク
番号を受取ると、メモリセル53のバンク1へのライト
データの書込みを指示し、次のライトデータがメモリセ
ル53のバンク1に書込まれる。 上述の処理動作と同様にして、メモリセル53の連続ス
るバンク2,3へのライトデータの書込みが行われると
、メモリセル53への16バイトのデータの書込みが終
了する。 入出力処理装置3が主記憶装置4から16バイトのデー
タを読出す場合も上述の処理動作と同様にして、制御回
路49の制御により連続するバンクθ〜3から順次デー
タが読出され、選択回路54を介してリードデータレジ
スタ55にセットされ、ECC訂正回路56で誤りが訂
正された後にリードデータレジスタ57を介して入出力
処理装置″うに送出される。 ここで、選択回路54はバンク番号レジスタ43から供
給されるリクエストバンク番号に応じてバンク0〜3か
らのデータを選択する。 尚、中央処理装置5からの主記憶装置4に対する読出し
または書込みも、上述の処理動作と同様にして行われる
。 このように、データバッファの残データ量または空き領
域のバ・fト数に応じて1回のアクセスで転送される主
記憶装置4との間のデータ転送量、すなわち主記憶装置
4から読出すワード数または主記憶装置4に書込むワー
ド数を決定することによって、出力転送時に1回のメモ
リアクセスでデータバッファ21にデータを充分供給す
ることができる。 また、入力転送時にデータバッファ21に格納されたデ
ータ量に応じて1回のメモリアクセスで主記憶装置4へ
の書込みを行うことができるので、メモリアクセスを繰
返す必要がなくなるとともに、データオーバランの発生
を防止することができる。 よって、データ転送を一時的に中断することなく、入出
力装置6−1〜6−4の転送速度に応じたデータ転送を
行うことが可能になるとともに、データ転送開始時に効
率のよいメモリアクセスを行うことが可能となる。 発明の詳細 な説明したように本発明によれば、データバッファに保
持されたデータ量に応じて決定された1回のアクセスで
転送される主記憶装置との間のデータ転送量により主記
憶装置に対する読出し書込みを行うようにすることによ
って、入出力装置の転送速度に応じたデータ転送を行う
ことができ、データ転送開始時に効率のよいメモリアク
セスを行うことができるという効果がある。
第1図は本発明の一実施例の構成を示すブロック図、第
2図は本発明の一実施例のシステム構成を示すブロック
図、第3図は第1図の差分ポインタの6道とデータバッ
ファのデータ量およびアクセスバイトコードとの関係を
示す図、第4図は第1図の主記憶装置の構成を示すブロ
ック図、第5図は第4図に示す主記憶装置の動作を示す
タイムチャートである。 主要部分の符号の説明 1・・・・・・共通部 2−1〜2−4・・・・・・人出力ボート部3・・・・
・・入出力処理装置 4・・・・・・主記憶装置 6−1〜6−4・・・・・・入出力装置10・・・・・
・データ転送制御部 15・・・・・・優先判定回路 16.17゜ 27.28・・・・・・選択回路 20・・・・・・人出力ボート制御部 21・・・・・・データバッファ 22・・・・・・メモリポインタ 23・・・・・・入出力インタフェースポインタ24・
・・・・・減算器 25・・・・・・差分ポインタ 26・・・・・・変換回路
2図は本発明の一実施例のシステム構成を示すブロック
図、第3図は第1図の差分ポインタの6道とデータバッ
ファのデータ量およびアクセスバイトコードとの関係を
示す図、第4図は第1図の主記憶装置の構成を示すブロ
ック図、第5図は第4図に示す主記憶装置の動作を示す
タイムチャートである。 主要部分の符号の説明 1・・・・・・共通部 2−1〜2−4・・・・・・人出力ボート部3・・・・
・・入出力処理装置 4・・・・・・主記憶装置 6−1〜6−4・・・・・・入出力装置10・・・・・
・データ転送制御部 15・・・・・・優先判定回路 16.17゜ 27.28・・・・・・選択回路 20・・・・・・人出力ボート制御部 21・・・・・・データバッファ 22・・・・・・メモリポインタ 23・・・・・・入出力インタフェースポインタ24・
・・・・・減算器 25・・・・・・差分ポインタ 26・・・・・・変換回路
Claims (1)
- (1)主記憶装置と入出力装置との間で転送されるデー
タを一時保持するデータバッファを有する入出力処理装
置であって、前記データバッファに保持されたデータ量
を計数する計数手段と、前記計数手段の計数値に応じて
1回のアクセスで転送される前記主記憶装置との間のデ
ータ転送量を決定する決定手段と、前記決定手段により
決定された前記データ転送量に応じて前記主記憶装置に
対する読出し書込みを制御する制御手段とを有すること
を特徴とする入出力処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1238043A JPH0831076B2 (ja) | 1989-09-13 | 1989-09-13 | 入出力処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1238043A JPH0831076B2 (ja) | 1989-09-13 | 1989-09-13 | 入出力処理装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH03100751A true JPH03100751A (ja) | 1991-04-25 |
| JPH0831076B2 JPH0831076B2 (ja) | 1996-03-27 |
Family
ID=17024318
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1238043A Expired - Fee Related JPH0831076B2 (ja) | 1989-09-13 | 1989-09-13 | 入出力処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0831076B2 (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002073538A (ja) * | 2000-08-25 | 2002-03-12 | Canon Inc | データ処理回路及びそれを用いた電子機器並びに制御方法 |
| JP2011186918A (ja) * | 2010-03-10 | 2011-09-22 | Renesas Electronics Corp | データ転送回路及び方法 |
| JP2012150663A (ja) * | 2011-01-19 | 2012-08-09 | Fujitsu Semiconductor Ltd | データ転送装置及びデータ転送方法 |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH01284950A (ja) * | 1988-05-12 | 1989-11-16 | Mitsubishi Electric Corp | 入出力チャネル方式 |
-
1989
- 1989-09-13 JP JP1238043A patent/JPH0831076B2/ja not_active Expired - Fee Related
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH01284950A (ja) * | 1988-05-12 | 1989-11-16 | Mitsubishi Electric Corp | 入出力チャネル方式 |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002073538A (ja) * | 2000-08-25 | 2002-03-12 | Canon Inc | データ処理回路及びそれを用いた電子機器並びに制御方法 |
| JP2011186918A (ja) * | 2010-03-10 | 2011-09-22 | Renesas Electronics Corp | データ転送回路及び方法 |
| JP2012150663A (ja) * | 2011-01-19 | 2012-08-09 | Fujitsu Semiconductor Ltd | データ転送装置及びデータ転送方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0831076B2 (ja) | 1996-03-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5634099A (en) | Direct memory access unit for transferring data between processor memories in multiprocessing systems | |
| KR100337056B1 (ko) | 상이한 주파수로 동작하는 버스사이에 전송되는 데이터를버퍼링하는 디바이스 및 방법 | |
| JP3181515B2 (ja) | データ転送方法及びその方法を用いたデータ転送装置 | |
| JPH04367023A (ja) | 二重化ディスク制御装置 | |
| EP0315194A2 (en) | Microcomputer capable of accessing continuous addresses for a short time | |
| JPH03100751A (ja) | 入出力処理装置 | |
| US5946707A (en) | Interleaved burst XOR using a single memory pointer | |
| JPS6226055B2 (ja) | ||
| JP2716254B2 (ja) | リストベクトル処理装置 | |
| JPH11184761A (ja) | リードモディファイライト制御システム | |
| JPS59123913A (ja) | Dmaアクセス方式 | |
| JPH08328995A (ja) | Dma転送方式およびdma転送方法 | |
| JPS6155755A (ja) | メモリ制御装置 | |
| JPH10222460A (ja) | データ転送制御装置 | |
| JP2574821B2 (ja) | ダイレクトメモリアクセス・コントローラ | |
| JP2699482B2 (ja) | データ転送制御装置 | |
| JP2798492B2 (ja) | リストベクトル処理装置 | |
| JP3317819B2 (ja) | シングルポートramの2ポートアクセスの制御方式 | |
| JPH0133848B2 (ja) | ||
| JPH1063569A (ja) | 主メモリデータ書込み装置 | |
| JPS63223943A (ja) | ダイレクトメモリアクセス制御装置 | |
| JPS60123944A (ja) | 情報処理装置におけるバツフアメモリ制御方式 | |
| JPH051491B2 (ja) | ||
| JPH05165731A (ja) | 二重化記憶装置 | |
| JPH05298248A (ja) | データ転送制御方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |