JPH0668021A - データ転送装置 - Google Patents

データ転送装置

Info

Publication number
JPH0668021A
JPH0668021A JP24279992A JP24279992A JPH0668021A JP H0668021 A JPH0668021 A JP H0668021A JP 24279992 A JP24279992 A JP 24279992A JP 24279992 A JP24279992 A JP 24279992A JP H0668021 A JPH0668021 A JP H0668021A
Authority
JP
Japan
Prior art keywords
data
holding means
address
input
transfer
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.)
Pending
Application number
JP24279992A
Other languages
English (en)
Inventor
Yasunori Sugano
泰則 菅野
Yutaka Ishikawa
裕 石川
Kazuyoshi Suzuki
一義 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP24279992A priority Critical patent/JPH0668021A/ja
Publication of JPH0668021A publication Critical patent/JPH0668021A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【目的】 データ転送要求が不定時期に発生し、データ
転送量も不定であるDMAC動作に適するデータ転送装
置を提供する。 【構成】 入出力モジュール10からメインメモリ11
に対しデータを転送する場合、そのデータを一旦データ
保持手段22に保持する。単位データがシステムバス1
4のバス幅分保持された時、一括してシステムバス14
に向け転送する。アクセスアドレスに連続性があればこ
の動作が続けられ、連続性がなければ端数の単位データ
の転送処理を後処理として実行する。データ保持手段2
2の中の単位データの有効性は有効性識別手段23によ
り判断する。逆方向の転送にもデータ保持手段22が使
用される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、計算機システムにおい
て、ダイレクトメモリアクセスコントローラを用いて入
出力モジュールとメインメモリとの間でデータ転送を行
なうためのデータ転送装置に関する。
【0002】
【従来の技術】計算機システムにおいては、データ転送
の高速化とプロセッサの負担軽減を目的として、ダイレ
クトメモリアクセスコントロール制御が行なわれる。図
2にそのような制御を行なう一般の計算機システムブロ
ック図を示す。図のシステムは、プロセッサ101とメ
インメモリ102がシステムバス103に接続された構
成となっている。このシステムバス103には入出力装
置104が接続されている。この入出力装置104は、
例えば通信制御装置や磁気ディスク装置等から構成され
る。ダイレクトメモリアクセスコントロール制御は、こ
のメインメモリ102に格納されたデータを入出力装置
104に向け転送する場合及びその逆方向の転送に採用
される。
【0003】図3に従来の入出力装置内部ブロック図を
示す。この図は、図2に示した入出力装置104の内部
構成を明らかにしたものである。図のシステムバス10
3は、アドレスバス105とデータバス106及びコン
トロールバス107から構成される。アドレスバス10
5はシステムバス103を介してアクセスが行なわれる
場合のアクセスアドレスを伝送する。また、データバス
106はそのデータを伝送する。コントロールバス10
7は各種のバス制御信号を伝送する。例えばこの例で
は、アドレスバス105及びデータバス106は、それ
ぞれ32ビット構成とする。入出力装置104には、ア
ドレスバッファ108、データバッファ109、コント
ロールバッファ110、BANK(アドレス拡張レジス
タ)111とBUF(データバス幅変換バッファ)11
2とバスコントローラ113と、入出力モジュール11
8が設けられている。アドレスバッファ108はシステ
ムバス103のアドレスバス105に接続され、所定の
タイミングでアドレス信号を一時格納するメモリであ
る。データバッファ109はシステムバス103のデー
タバス106に接続され所定のタイミングでデータを一
時格納するメモリである。コントロールバッファ110
はシステムバス103のコントロールバス107に接続
され、コントロール信号を一時格納するメモリである。
【0004】入出力モジュール118の中にはDMAC
(ダイレクトメモリアクセスコントローラ)118−1
が設けられている。また、データバッファ109とBU
F112とは32ビット構成のデータバス119により
接続されており、BUF112と入出力モジュール11
8との間は8ビット構成のデータバス120により接続
されている。本発明においては、このようにメインメモ
リに接続されたシステムバス103のバス幅が入出力モ
ジュール118に接続されたバス120のバス幅の整数
倍ある場合に、効率よくそのデータ転送を実行すること
が主要目的となっている。
【0005】ここで、図4を用いて一般のシステムバス
構成を具体的に説明する。図に示すように、アドレスバ
ス、データバスは、それぞれ先に説明したとおり32ビ
ット構成となっている。またコントロールバスは、シス
テムバス使用要求信号であるBRQ−N信号と、システ
ムバス使用許可信号であるBACK−N信号と、メモリ
アクセス要求信号であるSMRQ−N信号と、バスアク
セス終了信号であるSRDY−N信号と、メモリ選択信
号であるSMSEL−N信号と、入出力デバイス選択信
号であるSIOSEL−N信号と、図3に示したデータ
バッファ109のイネーブル制御を行なうSDEN−N
信号と、データリードサイクルの時アクティブになるS
RD−N信号(アクティブLOW)と、データライト時
アクティブになるSWR−N信号(アクティブLOW)
と、有効データバイトを示すSBE3−N〜SBE0−
N(アクティブLOW)から構成されている。
【0006】また、図3において、内部アドレスバス1
22はアドレスA31〜アドレスA20までの12ビッ
トがアドレス拡張レジスタBANK111に接続され、
アドレスA19〜アドレスA02までの17ビットが入
出力モジュール118に接続されている。また、アドレ
スA15〜アドレスA02までの14ビットは、入出力
デバイスの選択信号を生成するために、バスコントロー
ラ113に入力されている。また、内部データバス11
9は、データバス幅の変換を行なうBUF112に接続
される。BUF112の出力は、8ビット幅のデータバ
ス120を介して入出力モジュール118に接続され
る。内部コントロールバス114は、バスコントローラ
113に接続される。このバスコントローラ113は、
アドレスバッファ108、データバッファ109、コン
トロールバッファ110や入出力モジュール118の制
御及び、システムバス制御信号の生成を行なうために設
けられている。
【0007】図5に従来のバス幅変換バッファ内部ブロ
ック図を示す。図に示すように、バス幅変換バッファの
内部には、それぞれ8ビットのデータバッファ112−
1〜112−4が設けられている。32ビット幅のデー
タバス119は、それぞれ8ビット分ずつ分割されて、
これらのデータバッファ112−1〜112−4に接続
されている。このデータバッファ112−1〜112−
4は双方向のデータバッファで、図3に示したバスコン
トローラ113からのデータバッファ制御信号により制
御される。即ち制御信号DIRによってデータの出力方
向が切り替わり、DENB0−N〜DENB3−Nまで
の4種類の制御信号によって出力イネーブルが制御され
る。
【0008】データバッファ112−1〜112−4の
データバス119と反対の側は、全て一括して入出力モ
ジュール118の8ビット幅のデータバス120に接続
されている。データバッファ制御信号に含まれる制御信
号DENB0−N〜DENB3−Nは、いずれの方向に
データを転送する場合にも、それぞれ同時に2以上の制
御信号がアクティブになることがないというロジックに
なっており、データの衝突は生じない。
【0009】図6にこのようなデータバッファ制御信号
と、IOA01とIOA00の関係説明図を示す。図5
に示した装置は、システムバス側から32ビット幅のデ
ータを受け入れた時そのうちの有効な8ビットを選択し
て入出力モジュール118側に転送する。また逆に入出
力モジュール118側から8ビットのデータが入力した
時、これが一時的にデータバッファ112−1〜112
−4の何れかに格納され、システムバス側に転送され
る。32ビット構成のデータの中で、どの8ビット分の
データが有効かは、そのアドレス信号の最下位ビット2
ビットにより識別する。従って、その最下位ビットIO
A01とIOA00の内容によってデータバッファ制御
信号が生成され、さらにデータバス上の有効なデータを
示すバイトイネーブル信号が生成される。このバイトイ
ネーブル信号の内容は、図4の中で説明した通りのもの
である。
【0010】図7に図4の装置のメモリマッピング説明
図を示す。図に示すように、メインメモリはデータバス
幅が32ビット構成で、1回のアクセスで最大4バイト
分のデータアクセスが可能である。一方、入出力モジュ
ールのDMACはデータバス幅が8ビット構成で、1回
のアクセスで1バイト分のアクセスしかできない構成に
なっている。また、DMACが出力できるアドレスは2
0ビット(IOA19〜IOA00)であり、メインメ
モリのメモリ空間をアクセスするためには、不足分のア
ドレス31〜20をDMACの外部回路で補うようにす
る必要がある。図3に示したBANK111はこのため
に設けられたものであり、このBANK111の内部
に、必要な不足分のアドレス信号が格納されている。な
おこのBANK111はプロセッサの入出力アクセスに
より書き換えられる。
【0011】図8に図3の装置の入出力モジュール入出
力信号説明図を示す。図に示すように、IOA19〜0
0は、入出力モジュール118の出力するアドレス信号
で、IOD07〜00は、8ビット構成のデータであ
る。またIORD−N信号は、入出力モジュール118
に対しメインメモリからデータを転送する場合に、アク
ティブとなる信号線である(アクティブLOW)。また
IOWR−N信号は、入出力モジュール118からメイ
ンメモリにデータを転送する場合にアクティブになる信
号である(アクティブLOW)。またIOHOLD信号
は、ダイレクトメモリアクセスコントローラがメインメ
モリをアクセスするためにバス使用権を要求する際アク
ティブとなる信号である(アクティブHIGH)。IO
HLDA信号は、バス許可信号をダイレクトメモリアク
セスコントローラに通知するための信号である(アクテ
ィブHIGH)。IOIOSEL−N信号は、プロセッ
サが入出力モジュールへのアクセスを行なう場合にアク
ティブとなる信号である(アクティブLOW)。IOR
DY−Nは、ダイレクトメモリアクセスコントローラが
メインメモリへのアクセスを行なう場合にアクセス終了
を通知するための信号である(アクティブLOW)。
【0012】図9は従来装置のバスコントローラ入出力
信号説明図である。BRQ−N信号は、DMACがメイ
ンメモリをアクセスする場合にアクティブになる信号で
システムバスに出力される(アクティブLOW)。BA
CK−N信号はシステムバスがBRQ−N信号により要
求のあったモジュールに対し、システムバス使用許可を
発行する場合にアクティブとなる信号である(アクティ
ブLOW)。SMRQ−N信号は、メインメモリに対し
メモリアクセスを要求する場合にアクティブになる信号
である(アクティブLOW)。SRDY−N信号はアク
セス終了時アクティブとなる信号線であり、メインメモ
リがアクセス終了をDMACに通知するためのものであ
る(アクティブLOW)。SMSEL−N信号はプロセ
ッサが入出力装置内のメモリにアクセスする場合にアク
ティブとなる信号である(アクティブLOW)。但しこ
の例ではこの信号は使用されていない。SIOSEL−
N信号はプロセッサの入出力装置内の入出力デバイスに
アクセスする場合にアクティブとなる信号である(アク
ティブLOW)。SRD−N信号は実行サイクルがリー
ドサイクルの場合アクティブとなる信号であり、DMA
Cがメインメモリをリードする場合システムバスに出力
される(アクティブLOW)。
【0013】SWR−N信号は実行サイクルがライトサ
イクルの場合アクティブとなる信号であり、DMACが
メインメモリにデータを書き込む場合システムバスに出
力される(アクティブLOW)。SBE3−N〜SBE
0−N信号は32ビットのデータバスの有効バイトを示
す信号であり、DMACがメインメモリをアクセスする
場合に使用される(アクティブLOW)。このSBE3
−Nはデータバスのビット31〜ビット24が有効であ
る場合にアクティブとなり、SBE2−Nはデータバス
のビット23〜16が有効の場合にアクティブとなり、
SBE1−Nはデータバスのビット15〜8が有効であ
る場合にアクティブとなり、SBE0−Nはデータバス
のビット7〜0が有効である場合にアクティブとなる。
SDEN−N信号はデータバス上のデータを有効にする
場合にアクティブとなる信号で、DMACがメインメモ
リにアクセスする場合システムバスに出力される。AE
NB−N信号は入出力装置内のアドレスバッファの出力
を制御する信号である。ADIR信号は入出力装置内の
アドレスバッファの出力方向を制御する信号で、プロセ
ッサが入出力装置内の入出力デバイスをアクセスする場
合HIGHとなり、DMACがメインメモリをアクセス
する場合LOWとなる。
【0014】DENB3−N〜DENB0−N信号は入
出力装置内のデータバスの有効バイトを示す信号であ
り、バス幅変換バッファ112に入力される(アクティ
ブLOW)。DDIR信号は入出力装置内データバスの
方向性を制御するための信号で、データをシステムバス
に出力する場合LOWになりデータをシステムバスから
入力する場合HIGHとなる。IOA15〜IOA02
信号は、入出力装置内のアドレスで、プロセッサが入出
力装置内の入出力デバイスをアクセスする場合のアクセ
ス先選択信号生成に使用する。IOH0LD信号、IO
HLDA信号、IORD−N信号、IOWR−N信号、
IOSEL−N信号、IORDY−N信号は、それぞれ
入出力モジュールとのインタフェース信号である。BA
NKSEL−N信号はプロセッサがBANKレジスタの
データを書き換える場合にアクティブとなる信号である
(アクティブLOW)。BANKWR−N信号はプロセ
ッサがBANKレジスタのデータを読み込む場合にアク
ティブとなる信号である(アクティブLOW)。
【0015】以下、上記の装置の具体的な動作をタイム
チャートを用いて説明する。図10は従来装置のライト
サイクルタイムチャートである。この図は、DMACが
メインメモリに対しデータを転送する場合のタイムチャ
ートである。図において、DMAC118−1は、デー
タ転送要求が内部で発生するとIOHOLD信号をアク
ティブにする。バスコントローラ113は、IOHOL
D信号がアクティブとなるとBRQ−N信号をアクティ
ブにする。システムバス103は複数のシステムバス要
求信号の調停を行い、1つの要求元に対しBACK−N
信号をアクティブにして応答する。バスコントローラ1
13は、BACK−N信号がアクティブとなったことに
より、DMAC118−1に対し出力する、IOHLD
A信号をアクティブにすると同時に、AENB−N信号
とADIR信号をアクティブにする。AENS−N信号
がアクティブとなると、IOA19〜IOA02及びB
ANKレジスタ出力のIOA31〜IOA21までの値
がシステムバス103に出力される。DMAC118−
1はIOHLDA信号がアクティブとなったことを認識
すると、IOA19〜IOA00及びIOD07〜IO
D00を出力し、IOWR−N信号をアクティブにす
る。バスコントローラ113はNRQ−N信号とSWR
−N信号をアクティブにするとともに、IOA01、I
OA00の値によりSBE3−N〜SBE0−Nの1つ
をアクティブにする。
【0016】この例の場合、A01が“0”、A00が
“0”であるため、SBE0−NがLOWとなる。SB
E0−Nをアクティブにすると同時にSDEN−Nをア
クティブにする。また、IOA01、IOA00の値に
よりDENB3−N〜DENB0−Nの中の1つをアク
ティブにする。この例の場合、A01が“0”、A00
が“0”であるから、DENB0−NがLOWとなる。
DENB0−Nをアクティブにするとほぼ同時にDDI
Rを出力する。このDDIRはライト時はLOW、リー
ド時はHIGHとなる信号である。ここでDMAC11
8−1のアクセスデータがシステムバス上の該当バイト
位置に出力される。メインメモリはMRQ−NとSWR
−N信号を受信すると、メモリライト動作を行い、メモ
リライトが完了するとSRDY−N信号をアクティブに
する。SRDY−Nがアクティブとなると、バスコント
ローラ113はIORDY−N信号をアクティブにし、
DMAC118−1にメモリアクセス終了を通知する。
同時にAENB−N信号、ADIR信号をともにインア
クティブにし、MRQ−N信号もインアクティブにす
る。
【0017】DMAC118−1はIORDY−N信号
がアクティブとなったことを認識すると、IOWR−N
信号をインアクティブにする。バスコントローラ113
はIOWR−N信号がインアクティブとなると、SWR
−N信号、SBEO−N信号、SDEN−N信号、DE
NB0−N信号、DDIR信号をインアクティブにす
る。DMAC118−1は、続いてデータ転送要求が発
生しなければ、IOHOLD信号をインアクティブとす
る。バスコントローラ113はIOHOLD信号がイン
アクティブとなるとBRQ−N信号をインアクティブに
する。システムバスはBRQ−N信号がインアクティブ
となるとBACK−N信号及びSRDY−N信号をイン
アクティブにする。
【0018】バスコントローラ113はBACK−N信
号がインアクティブとなるとDMAC118−1へのI
OHLDA信号をインアクティブにする。またSRDY
−N信号がインアクティブとなるとDMAC118−1
へのIORDY−Nがインアクティブとなる。以上のシ
ーケンスによってDMAC118−1がメインメモリに
対しデータの書き込みを実行する。図11は従来装置の
リードサイクルタイムチャートである。これはDMAC
118−1がメインメモリからデータをリードする場合
のタイムチャートであるが、その動作内容はライト時の
ものとほぼ同様であり、具体的な説明は省略する。
【0019】
【発明が解決しようとする課題】ところで、上記の構成
の装置は、データバス幅が8ビットであるDMACを用
いて、8ビット幅の入出力バスと32ビット幅のシステ
ムバス間のデータ転送を実行している。その動作は実際
には、1システムバスサイクルで1バイトのデータを読
み出し、あるいは書き込みするような内容となってい
る。従って、1バイトの転送ごとにシステムバスが占有
され、データ転送効率が低下するという問題があった。
また、入出力装置が通信制御装置であるような場合に
は、データ転送効率が低下すると、通信制御装置がメイ
ンメモリにデータを転送する場合のバスのデータ転送レ
ートが小さくなるため、オーバーランやアンダーランエ
ラーが発生するおそれがある。
【0020】さらに、このようなバス幅の小さいDMA
Cが動作した場合、実質的にシステムバスの使用効率が
低下するために、DMACの動作中はシステム全体の性
能が低下してしまうという問題があった。このような欠
点を解決するために、従来、システムバスをDMACが
一定メモリサイクルの間占有し、データをバースト転送
するといった方式も採用されていた。しかしながら、D
MACが通信制御装置の送受信データ転送用として設け
られているような場合、送受信時のデータ転送量は一定
でないため、1回のシステムバスサイクルでバースト転
送するデータ転送量を予め決めることができないという
問題があった。
【0021】また、システムバスの占有時間をタイマに
よる時間監視で決定する方式も採用できる。しかしなが
ら、データ転送量が少ない場合、これもシステムバスの
使用効率を低下させてしまうという問題があった。本発
明は以上の点に着目してなされたもので、データ転送要
求が不定時期に発生し、さらにデータ転送量も不定であ
るような場合における、ダイレクトメモリアクセスコン
トローラの動作に適する、データ転送装置を提供するこ
とを目的とするものである。
【0022】
【課題を解決するための手段】本発明の第1発明は、ダ
イレクトメモリアクセスコントローラを用いて、入出力
モジュールとメインメモリとの間でデータ転送を行う場
合に、前記メインメモリの接続されたシステムバスのバ
ス幅が、前記入出力モジュールの接続された入出力バス
のバス幅の整数倍であるものにおいて、前記入出力モジ
ュールと前記メインメモリとの間を転送されるデータを
一時的に保持するデータ保持手段と、前記ダイレクトメ
モリアクセスコントローラの出力するデータアクセスの
ためのアドレスを一時的に保持するアドレス保持手段
と、前記データ保持手段に保持されたデータについて、
前記入出力バス幅に相当する単位データごとにデータの
有効性を表示する有効性識別手段と、前記ダイレクトメ
モリアクセスコントローラがデータ転送動作を実行する
とき、前記データ保持手段と前記アドレス保持手段と前
記有効性識別手段を使用して、その転送動作を制御する
格納制御手段とを備え、前記データの入出力モジュール
からメインメモリへの転送時、前記格納制御手段は、前
記有効性識別手段が、データ保持手段に保持された全て
の単位データを無効と表示しているとき、データ保持手
段へその単位データの一時保持を指示し、前記有効性識
別手段が、データ保持手段に保持された一部の単位デー
タが有効と表示しているとき、前記アドレス保持手段を
参照して、アドレスの連続性があれば、データ保持手段
へ新たにその単位データの一時保持を指示し、アドレス
の連続性がなければ、データ保持手段に保持された有効
な単位データのみを一括してメインメモリに転送し、前
記データ保持手段が一杯になったとき、そこに保持され
た全ての単位データを一括して前記メインメモリに転送
することを特徴とするデータ転送装置に関する。
【0023】第2発明は、ダイレクトメモリアクセスコ
ントローラを用いて、入出力モジュールとメインメモリ
との間でデータ転送を行う場合に、前記メインメモリの
接続されたシステムバスのバス幅が、前記入出力モジュ
ールの接続された入出力バスのバス幅の整数倍であるも
のにおいて、前記入出力モジュールと前記メインメモリ
との間を転送されるデータを一時的に保持するデータ保
持手段と、前記ダイレクトメモリアクセスコントローラ
が出力するデータアクセスのためのアドレスを一時的に
保持するアドレス保持手段と、前記データ保持手段に保
持されたデータについて、全データの有効性を表示する
有効性識別手段と、前記ダイレクトメモリアクセスコン
トローラがデータ転送動作を実行するとき、前記データ
保持手段と前記アドレス保持手段と前記有効性識別手段
を使用して、その転送動作を制御する格納制御手段とを
備え、前記データのメインメモリから入出力モジュール
への転送時、前記格納制御手段は、前記有効性識別手段
が、データ保持手段に保持された全てのデータを無効と
表示しているとき、メインメモリからデータを転送し、
更にデータ保持手段へそのデータの一時保持を指示し、
前記有効性識別手段が、データ保持手段に保持されたデ
ータが有効と表示しているとき、前記アドレス保持手段
を参照して、アドレスの連続性があれば前記ダイレクト
メモリアクセスコントローラに対して、前記データ保持
手段に保持されたデータを前記入出力バス幅に相当する
単位データに分割して、入出力モジュールへ転送するよ
う指示することを特徴とするデータ転送装置に関する。
【0024】第3発明は、メインメモリ上の所定の領域
にダイレクトメモリアクセスコントローラの動作制御コ
ードを格納し、ダイレクトメモリアクセスコントローラ
がデータ転送動作を開始するときと終了するときに、そ
の動作制御コードをアクセスするものにおいて、このダ
イレクトメモリアクセスコントローラによるメインメモ
リのアクセスを検出するアクセス検出手段を設け、前記
データの入出力モジュールからメインメモリへの転送
時、前記アクセス検出手段が前記ダイレクトメモリアク
セスコントローラによるデータ転送動作終了時のアクセ
スを検出した場合、格納制御手段は、有効性識別手段が
データ保持手段に保持された少なくとも一部の単位デー
タを有効と表示している場合、前記データ転送動作終了
前に、有効な単位データをメインメモリに転送する指示
を行い、その後前記有効性識別手段の表示を無効とする
ことを特徴とする第1発明記載のデータ転送装置に関す
る。
【0025】第4発明は、メインメモリ上の所定の領域
にダイレクトメモリアクセスコントローラの動作制御コ
ードを格納し、ダイレクトメモリアクセスコントローラ
がデータ転送動作を開始するときと終了するときに、そ
の動作制御コードをアクセスするものにおいて、このダ
イレクトメモリアクセスコントローラによるメインメモ
リのアクセスを検出するアクセス検出手段を設け、前記
データのメインメモリから入出力モジュールへの転送
時、前記アクセス検出手段が前記ダイレクトメモリアク
セスコントローラによるデータ転送動作終了時のアクセ
スを検出した場合、格納制御手段は、有効性識別手段が
データ保持手段に保持されたデータを有効と表示してい
る場合、前記データ転送動作終了前に、その表示を無効
とすることを特徴とする第2発明記載のデータ転送装置
に関する。
【0026】第5発明は、データ保持手段とアドレス保
持手段とを複数組設け、複数のデータ群の転送動作を並
行処理する場合において、前記データの入出力モジュー
ルからメインメモリへの転送時、単位データの転送動作
ごとに、全てのアドレス保持手段を参照し、アドレスの
連続性があるものを検出した場合には、対応するデータ
保持手段に新たにその単位データの一時保持を指示する
ことを特徴とする第1発明記載のデータ転送装置。
【0027】第6発明は、データ保持手段とアドレス保
持手段とを複数組設け、複数のデータ群の転送動作を並
行処理する場合において、前記データのメインメモリか
ら入出力モジュールへの転送時、データの転送動作ごと
に、全てのアドレス保持手段を参照し、アドレスの連続
性があるものを検出した場合には、ダイレクトメモリア
クセスコントローラに対して、対応するデータ保持手段
に保持されたデータを入出力バス幅に相当する単位デー
タに分割して、入力出力モジュールへ転送するよう指示
することを特徴とする第2発明記載のデータ転送装置に
関する。
【0028】第7発明は、データ保持手段とアドレス保
持手段とを複数組設け、複数のデータ群の転送動作を並
行処理する場合において、ダイレクトメモリアクセスコ
ントローラの出力するデータアクセスのためのアドレス
空間を、前記データ保持手段とアドレス保持手段の組ご
とに区別して割当て、前記格納制御手段は、前記アドレ
スを参照して転送データを一時保持するデータ保持手段
を決定することを特徴とする第1発明記載のデータ転送
装置に関する。
【0029】第8発明は、データ保持手段とアドレス保
持手段とを複数組設け、複数のデータ群の転送動作を並
行処理する場合において、ダイレクトメモリアクセスコ
ントローラの出力するデータアクセスのためのアドレス
空間を、前記データ保持手段とアドレス保持手段の組ご
とに区別して割当て、前記格納制御手段は、前記アドレ
スを参照して転送データを一時保持するデータ保持手段
を決定することを特徴とする第2発明記載のデータ転送
装置に関する。
【0030】
【作用】本発明の装置の作用を図1を用いて説明する。
この装置は、入出力モジュール10からメインメモリ1
1に対しデータを転送する場合、そのデータを一旦デー
タ保持手段22に保持する。そして、単位データがシス
テムバス14のバス幅分保持された時、一括してシステ
ムバス14に向けこれらの単位データを転送する。アク
セスアドレスに連続性があればこの動作が繰り返され、
連続性がなければ残りの端数の単位データの転送処理を
後処理として実行する。この後処理は、DMACのメイ
ンメモリに対する動作制御コードのアクセスをトリガと
する。データ保持手段22の中の単位データの有効性
は、有効性識別手段23により判断する。逆方向の転送
の場合は、データ保持手段21中のデータの有効性は一
括して判断される。複数のデータ群の転送動作を並行処
理する場合は、複数のデータ保持手段を設け、アドレス
の連続性があるものを、1つのデータ保持手段にまとめ
て保持する。DMACの出力するデータアクセスのため
のアドレス空間を、データ保持手段とアドレス保持手段
の組ごとに区別して割り当てると、各データをどのデー
タ保持手段に格納すべきかの判断が容易になる。
【0031】
【実施例】以下、本発明を図の実施例を用いて詳細に説
明する。図1は本発明の装置の実施例を示すブロック図
である。このブロック図を用いて本発明の装置の概略構
成を説明する。なお、この実施例は、データを入出力モ
ジュールからメインメモリへ転送する場合の装置の構成
を示す。本発明の装置は、このようなデータの入出力モ
ジュールからメインメモリへの転送とその逆方向の転送
を実行するが、前者はDMAC0により実行され、後者
はDMAC1により実行される。従って、それぞれの場
合について、ケースごとに実施例の説明を行なう。
【0032】図の装置は、入出力モジュール10が入出
力バス15を介してDMAC12−0に接続され、この
DMAC12−0はデータバッファ部13−0及びシス
テムバス14を介してメインメモリ11に接続される構
成となっている。この入出力バス15は例えば8ビット
構成で、システムバス14の32ビット構成の4分の1
となっているものとする。データバッファ部13−0に
は、アドレス保持手段21と、データ保持手段22と、
有効性識別手段23と、格納制御手段24及びアクセス
検出手段25が設けられている。データ保持手段22
は、例えばシステムバス14のバス幅と同様の容量を持
つメモリから構成され、ここには8ビット幅の単位デー
タが4個保持される構成となっている。また、アドレス
保持手段21は、DMAC12−0の出力するデータア
クセスのためのアドレスを一時的に保持するためのレジ
スタから構成される。有効性識別手段23は、この例で
はデータ保持手段22の中に保持された少なくとも3個
分の単位データについて、これらが有効かどうかを示す
フラグを格納するレジスタから構成される。格納制御手
段24は、アドレス保持手段21及び有効性識別手段2
3の内容を参照しながら、データ保持手段22からメイ
ンメモリ11へのデータ転送指示を行なう回路である。
アクセス検出手段25は、DMAC12−0がデータ転
送を開始する際及び終了する際に、メインメモリ11に
格納された動作制御コード11−1の読み取り又は書き
込み動作を検出するための回路である。
【0033】本発明の装置は、特にDMAC12−0が
メインメモリ11に対しデータ転送を行なう場合に、そ
のデータ幅を全く意識することなく、順次データ転送処
理を実行し、データバッファ部13−0がそのデータを
可能な限りデータ保持手段22に保持し、システムバス
14の幅に単位データがまとまった場合に、メインメモ
リ11に対して自動的に転送する構成となっている。な
お、この場合に、DMAC12−0が必ずしも連続した
アドレスへ転送すべき単位データを転送処理するとは限
らない。従って、アドレス保持手段21によってアドレ
スの連続性を監視しつつ上記の動作を実行する。
【0034】また、メインメモリ11へ転送すべきデー
タの数は、必ずしもデータ保持手段22にいっぱいに保
持された単位データを整数回一括転送することを繰り返
すことにより転送を終了できる数とは限らない。即ち、
転送終了の際には端数の単位データがデータ保持手段2
2に残る場合がある。このような場合の残り分の処理を
誤りなく実行させるために、有効性識別手段23及びア
クセス検出手段25が設けられている。また、有効性識
別手段23は、データ保持手段22に順次単位データが
保持され、所定のタイミングで一括してメインメモリ1
1に転送できるように制御するためにも使用される。格
納制御手段24は、これらの動作を制御するためのもの
である。
【0035】図12に本発明の第2発明の装置の実施例
ブロック図を示す。この装置は、図1に示したものとち
ょうど反対に、データのメインメモリ11から入出力モ
ジュール10への転送用に構成されたものである。図1
の装置と図12の装置とが一体化される場合には、有効
性識別手段33以外はほぼ共用されることになる。即
ち、図の装置は、入出力モジュール10とDMAC12
−1と、データバッファ部13−1と、メインメモリ1
1から構成されている。DMAC12−1と入出力モジ
ュール10は、入出力バス15により接続され、メイン
メモリ11とデータバッファ部13−1はシステムバス
14により接続されている。データバッファ部13−1
には、アドレス保持手段31と、データ保持手段32
と、有効性識別手段33及び格納制御手段34とアクセ
ス検出手段35が設けられている。この装置において
は、有効性識別手段33は、データ保持手段32に格納
された全てのデータが有効かどうかを一括して表示する
構成となっている。その他の部分の構成及び機能は、図
1に示したものと同様であり重複する説明を省略する。
【0036】上記のような構成の装置は、具体的には次
のような構造とされる。図13に本発明の具体的な実施
例を示す主要部ブロック図を図示した。図の装置は、シ
ステムバス103に接続された入出力装置の例として、
通信制御装置1を使用したものである。この通信制御装
置1の中に、データバッファ部8及び回線制御部7が設
けられている。この回線制御部7が入出力モジュールに
該当する。また、通信制御装置1が接続されたシステム
バス103は、アドレスバス105、データバス106
及びコントロールバス107から構成される。データバ
ッファ部8には、アドレスバッファ108、データバッ
ファ109、コントロールバッファ110が設けられて
いる。アドレスバッファ108はアドレスバス105に
接続され、データバッファ109はデータバス106に
接続され、コントロールバッファ110はコントロール
バス107に接続されている。
【0037】また、回線制御部7には、受信用のダイレ
クトアクセスメモリコントローラ(DMAC0)7−1
と送信用のダイレクトメモリアクセスコントローラ(D
MAC1)7−2が設けられ、これらは、通信プロトコ
ルのレイヤ1の処理を行なうSIU(シリアルインタフ
ェースユニット)6に接続されている。これにより、受
信用DMAC0は、SIU6に接続された回線から受信
データをメインメモリに転送し、送信用のDMAC1は
メインメモリからSIU6に接続された通信回線へデー
タを転送する構成となっている。
【0038】一方、データバファ部8には、さらに、バ
ッファコントローラ2と、バスコントローラ3と、アド
レスラッチ4−1、4−2と、データラッチ5−1、5
−2が設けられている。また、この他に、BANK0レ
ジスタ111−1及びBANK1レジスタ111−2が
設けられている。回線制御部7の出力するアドレスIO
A17からIOA02は、アドレスラッチ回路4−1及
び4−2に入力されている。さらにIOA19からIO
A00はバッファコントローラ2に入力されている。回
線制御部7のデータバスIOD07からIOD00は、
データラッチ5−1及び5−2に接続されている。回線
制御部7のコントロール線7−3は、バッファコントロ
ーラ2及びバスコントローラ3に接続されている。
【0039】DMACによるデータ転送時、システムバ
スに出力されるアドレスは、DMAC0が動作する場合
には、BANK0レジスタ111−1の出力とアドレス
ラッチ回路4−1の出力がアドレスバッファ108で合
成される。一方、DMAC1が動作する場合は、BAN
K1レジスタ111−2の出力とアドレスラッチ回路4
−2の出力がアドレスバッファ108で合成される。デ
ータラッチ回路5−1及び5−2のデータは、データバ
ッファ109を介してシステムバスに出力される。デー
タラッチ5−1は、DMAC0のデータ保持手段であ
り、データラッチ5−2は、DMAC1用のデータ保持
手段である。
【0040】図14にDMAC制御メモリ構造説明図を
示す。この実施例では、DMAC0及びDMAC1は、
何れもメインメモリ上に設けられた所定の領域に格納さ
れた動作制御コードを読み取って転送動作を実行する。
DMACの内部には、それぞれ図に示すようなDMAC
内部レジスタ41、42が設けられており、ここに起動
命令及びディスクリプタ格納アドレスが書き込まれてい
る。このディスクリプタというのは、メインメモリ上に
設けられた動作制御コード格納のための領域である。
【0041】DMACはこの内部レジスタを読み取るこ
とによって、DMAC0ディスクリプタ43あるいはD
MAC1ディスクリプタ44を読み取る。ここには制御
コード43−1、44−1あるいはバッファアドレス4
3−2、44−2が格納されている。これによって、デ
ータバッファ45あるいはデータバッファ46のアクセ
スアドレスが認識され、転送動作が実行される。上記の
ようなディスクリプタは、DMACの各チャネルごとに
存在し、この実施例では2チャネル分設けられている。
そして、起動時には、DMACがこのディスクリプタを
読み取り、データ転送終了時には、そのステータスがデ
ィスクリプタに書き込まれる。バッファアドレス43−
2及び44−2は何れもデータ転送先の先頭アドレスを
示す。
【0042】図15は、上記のような装置の具体的なデ
ータ転送動作フローチャートを示す。まず、システムバ
スに接続されたプロセッサ(MP)は、ステップS1に
おいて上記DMACディスクリプタ制御コードをセット
する。次にステップS2において、BANK0レジスタ
に、DMAC0用のディスクリプタのベースアドレスを
セットする。次にDMAC0の内部レジスタDMADR
EGに対し、ディスクリプタが格納されているメモリア
ドレスのオフセット分を設定する(ステップS3)。そ
してDMAC0を起動し(ステップS4)。さらにSI
Uを起動する(ステップS5)。
【0043】DMACの処理が開始されると、ステップ
S6において、DMAディスクリプタ制御コードのリー
ド処理が行なわれる。この場合、先に説明した制御コー
ド及びバッファアドレスが読み込まれる(ステップS
6)。そして、SIUからのDMA転送要求をステップ
S7において受け取ると、データバッファエリアに対し
受信データを転送する(ステップS8)。またSIUか
らDMA転送終了指示があるまで、このデータ転送を続
ける(ステップS9)。ここでDMA転送終了指示があ
ると、データ転送終了結果のステータス情報をディスク
リプタに書き込む(ステップS10)。なお、このステ
ータス情報は、エラー発生の有無等を含む情報である。
このDMAディスクリプタ制御コードのライト処理が完
了すると、プロセッサに対し割り込みをかける。
【0044】一方、SIUはステップS5の起動処理に
よって処理を開始すると、回線からデータを受信できる
状態になり、回線からデータを受信した場合DMACに
対しDMA転送要求を発行する(ステップS11)。ス
テップS12で回線から1ブロックのデータを受信し終
わったと判断するとDMACに対しDMA転送終了を指
示する。これら一連の処理が終了し、プロセッサに対し
ステップS13においてDMACから割り込みが発生す
ると、DMAC0のディスクリプタの内容を確認した上
で、プロセッサの通常処理が開始される。即ち、DMA
C0が転送を行なった転送先のデータバッファを参照
し、所定の受信データの処理をプロセッサが実行するこ
とになる。上記のような処理によって通信回線からデー
タがプロセッサに引き渡される。送信時の処理方法はデ
ータの引渡し方向が逆になるだけであって、実質的に図
15のフローチャートと同様になるため説明を省略す
る。
【0045】図16は動作制御コードに着目したメモリ
空間マッピングを示す。メインメモリのメモリ空間は図
に示すように、例えば4ギガバイト構成とする。その所
定の領域に、図に示すようにDMAC0用ディスクリプ
タ領域と、DMAC0用データバッファ領域が設けられ
る。また、別の領域にDMAC1用ディスクリプタ領域
とDMAC1用データバッファ領域が設けられる。一
方、DMACメモリ空間は例えば1メガバイト設けられ
る。そして、このアドレスを4分の1に区分し、それぞ
れDMAC0用ディスクリプタ領域、DMAC0用デー
タバッファ領域、DMAC1用ディスクリプタ領域、D
MAC1用データバッファ領域とし、メインメモリから
読み取ったこれらの動作制御コードを転記する。
【0046】図17にアドレス生成方式説明図を示す。
この図は、通信制御装置内のDMACが出力するアドレ
スと、通信制御装置内のBANKレジスタと、システム
バスに出力されるメインメモリアクセスアドレスとの関
係を示すものである。図のように、DMACの出力アド
レス中、A17からA02とBANKレジスタに格納さ
れているアドレスA31からA18がシステムバスのア
クセス用として出力される。ここでDMAC出力アドレ
スA19はDMACチャネル識別用に使用し、A18は
ディスクリプタとデータバッファの識別に使用する。
【0047】図18に識別用信号の内容説明図示す。図
に示すように、DMACを制御する場合、DMAC0用
のディスクリプタは、A19が“0”、A18が“0”
とし、DMAC1用のディスクリプタは、A19が
“1”、A18が“0”とし、DMAC0用のデータバ
ッファ領域は、A19が“0”、A18が“1”とし、
DMAC1用のデータバッファ領域はA19が“1”、
A18が“1”としてDMACに対しアドレスを与えて
いる。これによってDMAC外部ハードウエアでDMA
C出力アドレスを監視することにより、どのDMACチ
ャネルからのデータ転送が実行されているかを判別する
ことが可能になる。
【0048】図19は、図13を用いて説明したデータ
ラッチ5−1あるいは5−2の回路ブロック図である。
これらは本発明におけるデータ保持手段を構成する。こ
の回路は、図13に示すバッファコントローラ2の制御
信号により、データのラッチ及びデータの出力を行な
う。即ち、システムバス側には、2個1組で全部で4組
のフリップフロップ50−1〜50−8が設けられてい
る。また、入力バス側には、同様に2個1組で全部で8
個のフリップフロップ51−1〜51−8が設けられて
いる。各フリップフロップに書き込まれた矢印は、デー
タの出力方向を示す。また、各フリップフロップは、*
印の端子に制御信号が入力し、これがアクティブになっ
た場合には出力側にデータが出力され、インアクティブ
になった場合にはハイインピーダンス状態になるように
動作する。なお、各フリップフロップは何れも、それぞ
れ8ビット即ち単位データ1個を格納する構成のものと
する。また、図中、パルス記号の書き込まれたフリップ
フロップは、データラッチ用のパルスが入力すると入力
端子に送り込まれたデータをラッチするよう動作する。
【0049】以上の構成によって、このデータラッチ回
路は、システムバス側から32ビットのデータが入力す
ると、一斉に左側のフリップフロップ50−1〜50−
8にデータがラッチされ、その後制御によって何れかの
フリップフロップから順に単位データ分ずつ入出力バス
側に出力されるよう動作する。また、入力バス側から8
ビットのデータが入力すると、右側のフリップフロップ
51−1〜51−8の何れかに順にそのデータが保持さ
れる。そして、単位データを3個保持し4個目の単位デ
ータが入力すると、一括してシステムバス側にこれらの
データが出力されるよう動作する。
【0050】図20にDMAC0用(受信用)バッファ
コントローラのブロック図を示す。これは、入出力モジ
ュールからメインメモリへのデータ転送の際に、DMA
Cの転送データを制御する格納制御手段のブロック図で
ある。コンパレータ61は、図13のアドレスラッチ4
−1即ちアドレス保持手段に格納されたアドレスと、次
にアクセスするデータのアドレスを比較して、両者が一
致するかどうかを判断するための回路である。両者が一
致した場合にはコンパレータ61の出力はアクティブ即
ちHIGHとなる。また、このバッファコントローラ6
2には、有効性識別手段としてVBIT63が設けられ
ている。この実施例では、図19で説明したようにデー
タ保持手段に保持される単位データは3個でよい。即ち
3個の単位データを保持し、4個目の単位データが入力
するとその4個目の単位データをこれまで保持していた
3個の単位データとともに一括してシステムバス側へ転
送すればよい。
【0051】従って、単位データは3個保持できればよ
い。そのため有効性識別手段は3個設けるようにしてい
る。その他にこのバッファコントロール部には、IOR
D−N信号、IOWR−N信号、バスコントローラから
のMRDY−N信号が入力され、データラッチ回路及び
アドレスラッチ回路に制御信号を出力する構成となって
いる。またバスコントローラ3に対しメモリアクセス要
求信号MRDO−N、MWRO−N、MRD1−N、M
WR1−Nを出力する構成とされ、更にDMACに対し
IORDY−N信号を出力する構成とされている。
【0052】図21にDMAC1用(送信用)バッファ
コントローラのブロック図を示す。このバッファコント
ローラは、メインメモリから入出力モジュールに対しデ
ータを転送する場合に使用される格納制御手段のブロッ
ク図である。この格納制御手段にもアドレスを比較する
コンパレータ64が設けられている。またバッファコン
トローラ本体65には、データの有効性識別手段66が
設けられている。この有効性識別手段66は、図13に
示すデータラッチ5−2に格納された32ビットのデー
タが有効であるかどうかを表示する構成となっている。
その他の信号の構成は図20に示すバッファコントロー
ラと同様であるため説明を省略する。
【0053】図22(a)は、論理ORゲートのブロッ
ク図である。この論理ORゲートは、図20に示すバッ
ファコントローラと図21に示すバッファコントローラ
の出力するIORDYO−N信号とIORDY1−Nの
信号について、その論理和をとって信号IORDY−N
を出力する回路である。図22の(b)には論理ORゲ
ートの真理値説明図を示す。図に示すように、図(a)
に示す論理ORゲートは、入力信号A、Bが共にHIG
Hの場合に出力YをHIGHにする。
【0054】図23にアドレスラッチ部ブロック図を示
す。このアドレスラッチ部はアドレス保持手段として機
能する。図の右側からDMACの出力するアドレス信号
が入力し、左側にシステムバス側に対し出力されるべき
アドレス信号が得られる。BANK0レジスタ111−
1及びBANK1レジスタ111−2は、先に説明した
DMACの出力するアドレス信号に付加される信号を格
納するレジスタである。また、アドレスラッチ4−1
は、3個のフリップフロップ4−11、4−12及び4
−13から構成される。これらによって、DMACの出
力するアドレス信号IOA17〜02が保持される。ま
たアドレスラッチ4−2にも3個のフリップフロップ4
−21、4−22及び4−23が設けられている。そし
て、図に示すような制御信号によって、DMAC出力ア
ドレスのラッチ及びラッチアドレスのシステムバスへの
出力が制御される。これらの制御信号は何れも先に説明
したバッファコントローラ3から出力される。
【0055】図24はDMAC0用の有効性識別手段動
作説明図を示す。先に説明したバッファコントローラ2
に設けられた有効性識別手段は、VBIT#0とVBI
T#1とVBIT#2の3個のビットで構成される。こ
れらはそれぞれデータラッチ回路にラッチされた各単位
データが有効か否かを示す。即ち、“0”の場合は無
効、“1”の場合は有効であることを示す。VBIT#
0はラッチデータのビット7〜ビット0に対応し、VB
IT#1はラッチデータのビット15〜ビット8に対応
し、VBIT#2はラッチデータのビット23〜ビット
16に対応している。そして、図に示す矢印のように各
ビットの内容が変化する。矢印の中間に示した[1]〜
[10]の番号は、それぞれ後で図26、図27に示す
ような動作状態となることを表わしている。
【0056】図25にDMAC1用の有効性識別手段動
作説明図を示す。DMAC1用の場合、VBITは1個
でよく、データラッチ回路にラッチされたデータが無効
の場合“0”、有効の場合“1”となる。その状態は矢
印のように遷移し、各状態における動作は、図28にお
いて対応する[1]〜[3]の記述で説明する。図26
はDMAC0の動作遷移トリガ条件の[1]〜[7]ま
での場合を示す。また、図27には[8]〜[10]ま
での状態を示す。この図に示すように、例えば[1]に
おいては、VBIT即ち、有効性識別手段の内容が、全
て“0”の場合であって、アドレスIOA01とIOA
00が“0”であり、更にアドレスIOA18が“1”
の場合でIOWRがLOWである場合には、BUFライ
トの処理が実行される。この具体的な動作は、図29以
下で説明するが、図に示したような各条件がそろうと、
それぞれ所定のデータの移動が発生することになる。
【0057】図28にDMAC1による動作遷移トリガ
条件を示す。ここではそれぞれ図25の[1]〜[3]
までの条件が揃った場合のデータの移動を示している。
各動作内容は図28の下部に示したとおりである。図2
9〜図39には入出力モジュールからメインメモリへの
データ転送の際の、上記本発明の装置の、考えられる全
ての具体的な動作を図解して表わしている。例えば図2
9の先頭部分に示すように、DMAC0の出力するアド
レスADRがA1は“0”、A0が“0”であって、D
MAC0の出力するデータがAの場合、全てのVBIT
が0となっていても、データAはメインメモリへ8ビッ
ト分直接ライトされる。即ち、図29、30で、データ
A、B、C、Dが入力した場合には、直接メインメモリ
へそのままデータを書き込む従来と同様の処理が実行さ
れている。
【0058】ここで、図30に示すようにデータZが入
力した場合には、この実施例では、バッファ即ちデータ
保持手段に対しそのデータZが一時保持される。この場
合、VBIT#0がその内容を0から1に変化させ、こ
の部分の単位データが有効であることを示している。ま
た、同様の構成で表わした図32において、データZに
続いてデータYが入力した場合、そのデータYはデータ
保持手段であるバッファに保持され、同時にVBIT#
1が0から1に切り替わる。なお、この動作は、データ
ZとデータYとのアクセスアドレスに連続性がある場合
に実行され、連続性がない場合には、図31と図32に
示したデータA、B、C、Dについての処理が実行さ
れ、これらのデータについてはそれぞれメインメモリに
従来どおりの方法で単独で書き込まれる。
【0059】また、図33において、データ転送の終了
直前に、バッファに対しデータZのみが格納されている
場合には、このデータは最後にメインメモリに対し書き
込まれ、VBIT#0が1から0に切り替わる。また、
バッファに対し、データY及びZが格納されている場合
には、これらが一括してメインメモリに格納される。次
のデータX、Y、Zが保持されている場合も同様であ
る。図35に示すようにデータZ、Yに続いてデータX
が入力した場合には、VBIT#2が0から1に切り替
わり、バッファに3個の単位データX、Y、Zが保持さ
れる。そして図37において、これらとアドレスの連続
するデータWが入力した場合には、バッファから単位デ
ータX、Y、Zが、今入力したデータWとともにシステ
ムバスに送り出され、BUFライト動作が実行される。
これが本発明で最も効果的な動作となる。これによっ
て、従来、システムバスに対し4回のアクセスを行なっ
ていたものについて、1回のアクセスでこれらのデータ
の書き込みができることになる。
【0060】図40〜図44は、メインメモリから入出
力モジュールに対しデータの転送を行なう場合に考えら
れる全てのデータ転送形態を示したものである。例えば
図40の先頭に示された例は、メインメモリからW、
X、Y、Zの4個の単位データが一括して転送された場
合、バッファにW、X、Yのデータが格納され、Zのデ
ータはそのまま入出力モジュールに転送される。その後
はバッファに格納されたデータY、X、Wが順に入出力
モジュールに転送される。VBITは、1個でも単位デ
ータがバッファに格納されている場合、データが有効で
ある旨の表示を行なう。他の図は、それぞれメインメモ
リから転送された何れかの単位データを選択して、まず
入出力モジュールに転送し、その後別のデータを送るケ
ースを表わしている。図45には、図13に示したバス
コントローラ3の入出力信号を示すブロック図を図示し
た。これによってシステムバスに対するタイミングの生
成が行なわれる。
【0061】図46から図49までは、本発明の第5発
明以下の実施例を示す。この説明は後で行なう。図50
〜図53には受信ディスクリプタリードサイクルタイム
チャートを示す。また、図54〜図56には受信バッフ
ァライトサイクルタイムチャートを示す。更に図57〜
図59には受信ディスクリプタライトサイクルタイムチ
ャートを示す。また、図60〜図63には送信ディスク
リプタリードサイクルタイムチャートを示す。また、図
64〜図67には送信バッファリードサイクルタイムチ
ャートを示す。そして、図68〜図71には送信ディス
クリプタライトサイクルタイムチャートを示す。
【0062】上記のような図を用いて、回線からデータ
を受信した場合の具体的な動作について説明する。ま
ず、システムバスに接続されたプロセッサは、図15に
示した処理フローチャート及び図16に示したメモリマ
ッピングに従ってDMAC0即ち受信用DMAC7−1
のディスクリプタを100000番地から設定する。な
おこのアドレスは512キロバイト単位で任意である
が、本実施例では例えば100000(H)に設定す
る。図13に示したBANK0レジスタ111−1に
は、上位ビットである1を設定する。またディスクリプ
タ内のデータバッファアドレスには40000(H)を
設定する。またディスクリプタ内の制御コードにDMA
イネーブルを意味するコードを書き込む。更にDMAD
REG0にディスクリプタの先頭アドレスを設定する。
なお、これにはBANK0レジスタ111−1で与えら
れるアドレス以外のアドレスを設定することにする。こ
の実施例では00000(H)となる。
【0063】次にDMAC0を起動する。これはDMA
C7−1をイネーブル状態にすることを意味する。更に
SIU6を受信可能状態にする。これも受信イネーブル
状態にすることを意味する。ここでDMAC7−1をイ
ネーブル状態にすると、DMAC7−1はDMAディス
クリプタをメモリからリードする。その時の出力アドレ
スは00000(H)から開始され、6バイト分リード
される。なおリードするバイト数は使用するDMACに
より任意の数であるが、この実施例では6バイトとし
た。
【0064】図13に示すDMAC7−1の出力アドレ
スは、アドレスラッチ回路4−1とバッファコントロー
ラ3に入力される。バッファコントローラ3ではDMA
C7−1の出力からアドレスを識別し、図26から図2
7に示す動作遷移トリガ条件により、VBIT#2〜V
BIT#0の動作遷移を行なう。VBIT#2〜VBI
T#0は、初期状態で全て0である。本実施例の場合
は、VBIT#2は0、VBIT#1は0、VBIT#
0は0、アドレスIOA01は0、IOA00は0、I
OA18は0、IORDがLOWであるため、図26の
[5]の条件を満足する。これはカレントアドレス即ち
DMAC出力アドレスによるメインメモリリードを示し
ている。
【0065】バッファコントローラ2はVBIT#2〜
VBIT#0を0にセットし、即ちこれを変化させずに
バスコントローラ3にメインメモリリードタイミングの
生成を指示する。バスコントローラ3はバッファコント
ローラ2からメインメモリリードの指示を受けると、図
50〜図53に示すタイミングによってシステムバスを
介し、メインメモリからデータをリードする。同様のシ
ーケンスにより6バイトの受信後DMAC0のディスク
リプタを、図50〜図53に示すタイミングによりリー
ドする。リードするとDMAC0は受信可能状態とな
る。回線からデータを受信すると、SIU6は、受信D
MAC7−1即ちDMAC0に対しDMA転送要求を出
力する。DMAC0はDMA転送要求を受けると、バッ
ファコントローラ2に図54〜図56に示すタイミング
でアドレスデータ及び制御信号を出力する。
【0066】バッファコントローラ2では図24及び図
26、27に示すVBIT動作遷移に従い、VBIT#
〜VBIT#0を変化させる。この実施例ではDMAC
0に対する受信バッファアドレスを40000(H)と
しているため、DMAC0からの出力アドレスはVBI
T#2は0、VBIT#0は0、IOA01は0、IO
A00は0、IOA18は1、IOWRはLOWとなり
図26の[1]の条件を満足する。 これはDMAC7
−1から出力されるデータをデータラッチ回路にラッチ
することを示している。バッファコントローラ2はDM
AC0からのデータがIOAO=0、IOA1=0であ
るという条件に従いDLACHO#0信号を出力する。
DLACHO#0信号が出力されると、データラッチ回
路5−1の該当バイトにデータがラッチされる。この実
施例では、DBUS07からDBUS00に対応したバ
イトとなる。このラッチ終了でIORDYO−Nを出力
し、DMAC0に本サイクルの終了を通知する。
【0067】DMAC0はIORDY−Nを受信する
と、続いてSIU6からのデータ転送要求があればデー
タ受信中と判断し、IOWR−N信号を再びアクティブ
とする。アクセスアドレスはプラス1されたアドレスが
出力される。バッファコントローラ2は最初のアクセス
時と同様に図24及び26、27に従い、データラッチ
回路にデータをラッチするかメインメモリに対しアクセ
スするかを決定する。この実施例ではバッファにライト
を行なう。VBIT#2〜VBIT#0はVBIT#2
は0、VBIT#1は1、VBIT#0は1となってい
る。従って同様にVBIT#2は1、VBIT#1は1
となるまでDMA転送が行なわれる。図26における
[4]の条件がそろうと、バスコントローラはバッファ
へのライトを行なわずシステムバスに対しアクセスを行
い、バッファに格納されているデータと合わせてメイン
メモリに書き込みを行なう。本実施例では4バイトの転
送が行なわれる。
【0068】このような受信データの転送タイミングは
図50〜図53に示している。DMAC0は受信データ
転送終了の指示をSIU6から受信すると、ディスクリ
プタにDMA転送時のステータス書き込みを行なう。バ
ッファコントローラ2はディスクリプタへのライトアク
セスをIOWR−N信号とIOA18により認識し、V
BIT#2〜VBIT#0の状態により、有効データが
データラッチ回路5−1にラッチされれているか否かを
識別する。そして有効データが格納されている場合に
は、そのデータをメインメモリに書き込み、その後ディ
スクリプタへの書き込みを行なう。DMAC0のディス
クリプタライトのタイミングは図57〜59に示してい
る。
【0069】以上により回線からのデータ受信時のデー
タ転送が完了する。同様にして送信時のデータ転送も行
なわれる。その時のVBITの遷移とバッファへの書き
込みタイミングや、メインメモリからのデータリードの
タイミングは図25、図28、図34〜37及び図60
〜図71に示す。送信用DMAC7−2の動作タイミン
グと受信用DMAC7−1の動作タイミングの違いは、
送信データのリード時、メインメモリからのデータリー
ドを4バイトリードし、データラッチ回路5−2に格納
し、連続アドレスへのアクセス時はメインメモリからの
リードを行なわず、データラッチ5−2からのデータを
リードすることにより行なうようにした点にある。また
DMA転送終了時の検出方法は、DMAC7−1と同様
に行い、その時の処理方法がVBITのリセットのみで
ある点で異なる。その他のタイミングはほぼDMAC7
−1と同様の動作となる。従ってDMAC7−2の動作
の詳細については重複する説明を省略する。
【0070】図46は第5発明の装置実施例ブロック図
である。第1発明から第4発明までの装置は、DMAC
12−0がメインメモリをアクセスする場合のアドレス
が連続している時その効果を発揮する。一方、複数DM
Aチャネルを内蔵したDMACを使用した場合、DMA
Cが出力するデータバッファアドレスの切り替えが頻繁
に発生するようなケースもある。その場合、図1や図1
3の実施例のみでは効果が低下する。即ち端数のデータ
が頻発し、その転送処理が多くなるとデータの転送効率
が低下する。
【0071】第5発明はこのような場合に適するもの
で、予めデータ保持手段22とアドレス保持手段22の
組を複数組持つようにしている。即ち、入出力モジュー
ル10とメインメモリ11との間のデータ転送をDMA
コントローラ12−0により行なう場合において、デー
タバッファ部13−2には、アドレス保持手段21−1
〜21−3、データ保持手段22−1〜22−3、有効
性識別手段23−3〜23−3というように3組の転送
制御用の回路が設けられている。
【0072】このような構成にすると、例えば、DMA
コントローラ12−0がメインメモリ11に対しデータ
を転送する場合、メインメモリ11のそれぞれ異なる領
域11−10〜11−30に書き込まれるデータについ
て、DMAコントローラ12−0が転送動作の並行処理
を行なう場合、アドレスの連続性を監視し、アドレスが
連続するには、同一のデータ保持手段に順に単位データ
を保持し、アドレスが不連続の場合には、他のアドレス
保持手段を参照し、アドレスの連続性のあるデータ保持
手段にそのデータを保持する。このように転送データを
振り分けることによって、転送データが、DMAコント
ローラ12−0によって比較的ばらばらにアクセスされ
たような場合においても、データ保持手段21−1〜2
1−3を効率的に使用して、システムバスのアクセス回
数を減少させることができる。
【0073】図47は、第6発明の装置実施例ブロック
図である。この構成は、図46に示すものとほぼ同様で
あって、データ転送方向が異なるのみであるため、具体
的な説明は省略するが、やはりメインメモリ11に格納
された転送用データのアクセスアドレスが動作DMAチ
ャネルが切り替わる事によって頻繁に切り替えられるよ
うな場合に有効である。図48に第7発明のアドレス空
間説明図を示す。図46及び図47に示す装置の場合、
アクセスされるアドレスと各アドレス保持手段21−1
〜21−3の中に格納されたアドレスとを、その都度全
て比較し、どのデータ保持手段22−1〜22−3にデ
ータを保持するかを決定する処理が必要となる。図48
に示すものは、このような処理をできるだけ簡潔に高速
に行なうために工夫されたものである。この場合、DM
ACの出力するアドレスが1対1で、各アドレス保持手
段21−1〜21−3、データ保持手段22−1〜22
−3及び有効性識別手段23−1〜23−3の組に対応
づけられる。即ち、下位ビットは同一のアドレスであっ
て上位ビットによってどの組に属するデータかが判別で
きる。従って、DMACの出力するアドレス信号を見れ
ば、直ちにどの組のデータ保持手段22−1〜22−3
に保持させるべきデータかが判別でき、アドレス保持手
段21−1〜21−3の参照をその都度必要としない。
第8発明も同様である。
【0074】図49に、第5発明の装置の具体例ブロッ
ク図を示す。この装置は、具体的には回線制御部7とシ
ステムバス103の間にn組のデータバッファ部8−1
〜8−nが挿入されている。これらはデータバッファコ
ントローラ9により動作を制御される。例えばこのよう
な結線によって第5発明が実施される。即ち、まず、デ
ータバッファ部8−1に対し、既に説明した第1発明の
装置と同様のデータ転送を行なう。データバッファコン
トローラ9は、例えばデータバッファ部8−1にラッチ
されているアドレスをラッチしており、DMACからの
出力アドレスと比較を行なっている。比較の結果、上位
アドレスが同じアドレスであれば、データバッファ部8
−1に継続動作を指示する。継続動作の指示を受けたデ
ータバッファ部8−1は既に説明したとおりのデータ転
送やデータ保持動作を継続する。
【0075】ここで動作DMAチャネルが切り替わる
と、データ転送アドレスの連続性が損なわれる。従っ
て、データバッファコントローラ9はデータバッファ部
8−1に対しデータ転送動作の中止を指示する。データ
バッファ部8−1はこの動作中止指示を受信するといっ
たん動作を中断する。そして、この時データバッファ部
8−1は、データ転送動作の再開が可能な状態で動作を
中断する。データバッファコントローラ9は、切り替わ
ったDMAチャネルの出力アドレスをラッチしているデ
ータバッファ部を捜す。そしてもしラッチしているデー
タバッファ部があればそのデータバッファ部にデータ転
送の再開を指示する。データ転送の再開指示を受信した
データバッファ部は、再び通常の転送動作を再開する。
【0076】しかし、切り替わったDMAチャネルの出
力アドレスがどのデータバッファ部にもラッチされてい
ないような場合には、データバッファ部の任意のバッフ
ァに対し選択信号を出力し、そのバッファの使用が開始
される。選択されたデータバッファ部は、既に説明した
データ転送やデータ保持の動作を実行する。何れのアド
レス保持部ともアドレスが一致しない場合には、やはり
任意のデータバッファ部に対し選択信号を出力して、そ
のデータバッファ部をデータ転送に使用することにな
る。それ以外の動作は既に説明した実施例と同様であ
る。
【0077】以上の本発明の装置の動作をまとめると次
のようになる。まず基本的には、入出力モジュールから
メインメモリに対しデータを転送する場合、単位データ
を3個データ保持手段に順に保持し、4個目の単位デー
タがデータ保持手段に入力すると同時にそのデータは一
括されて、1回のシステムバスアクセスによりメインメ
モリに転送される。これらはデータのアクセスアドレス
に連続性のある場合に実行され、その制御のトリガはア
ドレス保持手段や有効性識別手段の出力による。
【0078】また、最後に端数の単位データが残った場
合、有効性識別手段の出力によりこれを認識し、格納制
御手段が最後までその単位データをメインメモリに転送
制御する。この場合、DMACは特にそのような動作を
意識せずに通常の転送動作を行なうことができる。なお
このような後処理のトリガは、DMACが転送動作終了
時に、メインメモリに対し動作制御コードのアクセスを
するのを、アクセス検知手段が検知することにより得ら
れる。
【0079】逆に、メインメモリから入出力モジュール
にデータを転送する場合、メインメモリは常に一括して
単位データ4個分のデータを出力するから、これがいっ
たんデータ保持手段に保持され、単位データ分ずつ順に
入出力モジュール側へ転送される。これらの制御タイミ
ングもやはりアドレス保持手段とデータ有効性識別手段
等の出力信号に基づく。
【0080】本発明は以上の実施例に限定されない。入
出力モジュールは通信制御用のものに限らず記憶装置そ
の他各種の機能を持つモジュールであってよい。また、
メインメモリはシステムバスに接続された大容量メモリ
であればよく、また複数のメインメモリが設けられてい
るようなシステムにも本発明の適用が可能である。ま
た、アドレス保持手段、有効性識別手段、格納制御手段
等は、それぞれ上記機能を備えた異なる構成の回路ブロ
ックに置き換えて差し支えなく、これらは別々に設けら
れてもよいし、また一括してメモリ上に構成されるもの
であってもよい。もちろん、入出力バスのバス幅やシス
テムバスのバス幅等は自由に拡大縮小して差し支えな
い。
【0081】
【発明の効果】以上説明した本発明のデータ転送装置
は、入出力バスのバス幅の整数倍のバス幅を持つシステ
ムバスに対しデータ転送を行なう場合に、そのデータを
データ保持手段に一時的に保持し、DMACの出力する
データアクセスのためのアドレスをアドレス保持手段に
一時的に保持し、有効性識別手段によってデータ保持手
段中の各単位データごとのデータの有効性を表示し、格
納制御手段がアドレス保持手段と有効性識別手段とを参
照しながら、連続性のある単位データのメインメモリへ
の転送を制御するようにしたので、DMACはシステム
バスのバス幅を意識することなくデータ転送ができ、ま
たシステムバスは、単位データをシステムバスのバス幅
分だけ集めてからアクセスされるので、転送効率が著し
く向上する。
【0082】逆方向の転送の場合にも同様である。ま
た、メインメモリ上の所定の領域にDMACの動作制御
コードを格納し、DMACがその動作制御コードの内容
に従ってデータ転送動作の開始と終了を実行する場合
に、アクセス検出手段がDMACによるデータ転送終了
時のアクセスを検出したとき、データ保持手段に保持さ
れた有効な単位データを転送処理するようにしたので、
単位データのデータ量がシステムバスのバス幅の整数倍
分だけなくても、半端になる単位データの転送処理が確
実に行える。
【0083】さらに、データ保持手段とアドレス保持手
段とを複数組設け、複数のデータ群の転送動作を並行処
理する場合、各データの転送動作ごとに全てのアドレス
保持手段を参照してアドレスの連続性があるものを検出
し、対応するデータ保持手段にその単位データの一時保
持を指示するようにしたので、DMACによって単位デ
ータが不連続に取り込まれてメインメモリに転送されよ
うとする場合に、その転送効率を高めることができる。
この場合に、DMACの出力するデータアクセスのため
のアドレス空間をデータ保持手段とアドレス保持手段の
組ごとに区別して割り当てることにより、データ一時保
持のためのデータ保持手段選択動作を容易に高速に行な
うことができる。
【図面の簡単な説明】
【図1】第1発明の装置実施例ブロック図である。
【図2】一般の計算機システムブロック図である。
【図3】従来の入出力装置内部ブロック図である。
【図4】一般のシステムバス構成説明図である。
【図5】従来のバス幅変換バッファ内部ブロック図であ
る。
【図6】図4のデータバッファ制御信号とIOA01、
IOA00の関係説明図である。
【図7】図4の装置のメモリマッピング説明図である。
【図8】図3の装置の入出力モジュール入出力信号説明
図である。
【図9】従来装置のバスコントローラ入出力信号説明図
である。
【図10】従来装置のライトサイクルタイムチャートで
ある。
【図11】従来装置のリードサイクルタイムチャートで
ある。
【図12】第2発明の装置の実施例ブロック図である。
【図13】本発明の具体的な実施例を示す主要部ブロッ
ク図である。
【図14】DMAC制御メモリ構造説明図である。
【図15】データ転送動作フローチャートである。
【図16】動作制御コードに着目したメモリ空間マップ
説明図である。
【図17】アドレス生成方式説明図である。
【図18】識別用信号内容説明図である。
【図19】データラッチ回路(データ保持手段)ブロッ
ク図である。
【図20】DMAC0用(受信用)バッファコントロー
ラのブロック図である。
【図21】DMAC1用(送信用)バッファコントロー
ラのブロック図である。
【図22】論理ORゲートの説明図で、(a)はブロッ
ク図、(b)は真理値である。
【図23】アドレスラッチ部(アドレス保持手段)のブ
ロック図である。
【図24】DMAC0用の有効性識別手段動作説明図で
ある。
【図25】DMAC1用の有効性識別手段動作説明図で
ある。
【図26】DMAC0の動作遷移トリガ条件説明図(そ
の1)である。
【図27】DMAC0の動作遷移トリガ条件説明図(そ
の2)である。
【図28】DMAC1の動作遷移トリガ条件説明図であ
る。
【図29】DMAC0データ転送状態(その1)であ
る。
【図30】DMAC0データ転送状態(その2)であ
る。
【図31】DMAC0データ転送状態(その3)であ
る。
【図32】DMAC0データ転送状態(その4)であ
る。
【図33】DMAC0データ転送状態(その5)であ
る。
【図34】DMAC0データ転送状態(その6)であ
る。
【図35】DMAC0データ転送状態(その7)であ
る。
【図36】DMAC0データ転送状態(その8)であ
る。
【図37】DMAC0データ転送状態(その9)であ
る。
【図38】DMAC0データ転送状態(その10)であ
る。
【図39】DMAC0データ転送状態(その11)であ
る。
【図40】DMAC1データ転送状態(その1)であ
る。
【図41】DMAC1データ転送状態(その2)であ
る。
【図42】DMAC1データ転送状態(その3)であ
る。
【図43】DMAC1データ転送状態(その4)であ
る。
【図44】DMAC1データ転送状態(その5)であ
る。
【図45】バスコントローラブロック図である。
【図46】第5発明の装置実施例ブロック図である。
【図47】第6発明の装置実施例ブロック図である。
【図48】第7発明のアドレス空間説明図である。
【図49】第5発明の装置の具体例ブロック図である。
【図50】受信ディスクリプタリードサイクルタイムチ
ャート(その1)である。
【図51】受信ディスクリプタリードサイクルタイムチ
ャート(その2)である。
【図52】受信ディスクリプタリードサイクルタイムチ
ャート(その3)である。
【図53】受信ディスクリプタリードサイクルタイムチ
ャート(その4)である。
【図54】受信バッファライトサイクルタイムチャート
(その1)である。
【図55】受信バッファライトサイクルタイムチャート
(その2)である。
【図56】受信バッファライトサイクルタイムチャート
(その3)である。
【図57】受信ディスクリプタライトサイクルタイムチ
ャート(その1)である。
【図58】受信ディスクリプタライトサイクルタイムチ
ャート(その2)である。
【図59】受信ディスクリプタライトサイクルタイムチ
ャート(その3)である。
【図60】送信ディスクリプタリードサイクルタイムチ
ャート(その1)である。
【図61】送信ディスクリプタリードサイクルタイムチ
ャート(その2)である。
【図62】送信ディスクリプタリードサイクルタイムチ
ャート(その3)である。
【図63】送信ディスクリプタリードサイクルタイムチ
ャート(その4)である。
【図64】送信バッファリードサイクルタイムチャート
(その1)である。
【図65】送信バッファリードサイクルタイムチャート
(その2)である。
【図66】送信バッファリードサイクルタイムチャート
(その3)である。
【図67】送信バッファリードサイクルタイムチャート
(その4)である。
【図68】送信ディスクリプタライトサイクルタイムチ
ャート(その1)である。
【図69】送信ディスクリプタライトサイクルタイムチ
ャート(その2)である。
【図70】送信ディスクリプタライトサイクルタイムチ
ャート(その3)である。
【図71】送信ディスクリプタライトサイクルタイムチ
ャート(その4)である。
【符号の説明】
10 入出力モジュール 11 メインメモリ 12−0 DMAC(ダイレクトメモリアクセスコント
ローラ) 13−0 データバッファ部 14 システムバス 15 入出力バス 21 アドレス保持手段 22 データ保持手段 23 有効性識別手段 24 格納制御手段 25 アクセス検出手段

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 ダイレクトメモリアクセスコントローラ
    を用いて、入出力モジュールとメインメモリとの間でデ
    ータ転送を行う場合に、 前記メインメモリの接続されたシステムバスのバス幅
    が、前記入出力モジュールの接続された入出力バスのバ
    ス幅の整数倍であるものにおいて、 前記入出力モジュールと前記メインメモリとの間を転送
    されるデータを一時的に保持するデータ保持手段と、 前記ダイレクトメモリアクセスコントローラの出力する
    データアクセスのためのアドレスを一時的に保持するア
    ドレス保持手段と、 前記データ保持手段に保持されたデータについて、前記
    入出力バス幅に相当する単位データごとにデータの有効
    性を表示する有効性識別手段と、 前記ダイレクトメモリアクセスコントローラがデータ転
    送動作を実行するとき、前記データ保持手段と前記アド
    レス保持手段と前記有効性識別手段を使用して、その転
    送動作を制御する格納制御手段とを備え、 前記データの入出力モジュールからメインメモリへの転
    送時、 前記格納制御手段は、 前記有効性識別手段が、データ保持手段に保持された全
    ての単位データを無効と表示しているとき、データ保持
    手段へその単位データの一時保持を指示し、 前記有効性識別手段が、データ保持手段に保持された一
    部の単位データが有効と表示しているとき、前記アドレ
    ス保持手段を参照して、アドレスの連続性があれば、デ
    ータ保持手段へ新たにその単位データの一時保持を指示
    し、 アドレスの連続性がなければ、データ保持手段に保持さ
    れた有効な単位データのみを一括してメインメモリに転
    送し、 前記データ保持手段が一杯になったとき、そこに保持さ
    れた全ての単位データを一括して前記メインメモリに転
    送することを特徴とするデータ転送装置。
  2. 【請求項2】 ダイレクトメモリアクセスコントローラ
    を用いて、入出力モジュールとメインメモリとの間でデ
    ータ転送を行う場合に、 前記メインメモリの接続されたシステムバスのバス幅
    が、前記入出力モジュールの接続された入出力バスのバ
    ス幅の整数倍であるものにおいて、 前記入出力モジュールと前記メインメモリとの間を転送
    されるデータを一時的に保持するデータ保持手段と、 前記ダイレクトメモリアクセスコントローラが出力する
    データアクセスのためのアドレスを一時的に保持するア
    ドレス保持手段と、 前記データ保持手段に保持されたデータについて、全デ
    ータの有効性を表示する有効性識別手段と、 前記ダイレクトメモリアクセスコントローラがデータ転
    送動作を実行するとき、前記データ保持手段と前記アド
    レス保持手段と前記有効性識別手段を使用して、その転
    送動作を制御する格納制御手段とを備え、 前記データのメインメモリから入出力モジュールへの転
    送時、 前記格納制御手段は、 前記有効性識別手段が、データ保持手段に保持された全
    てのデータを無効と表示しているとき、メインメモリか
    らデータを転送し、更にデータ保持手段へそのデータの
    一時保持を指示し、 前記有効性識別手段が、データ保持手段に保持されたデ
    ータが有効と表示しているとき、前記アドレス保持手段
    を参照して、アドレスの連続性があれば、 前記ダイレクトメモリアクセスコントローラに対して、
    前記データ保持手段に保持されたデータを前記入出力バ
    ス幅に相当する単位データに分割して、入出力モジュー
    ルへ転送するよう指示することを特徴とするデータ転送
    装置。
  3. 【請求項3】 メインメモリ上の所定の領域にダイレク
    トメモリアクセスコントローラの動作制御コードを格納
    し、ダイレクトメモリアクセスコントローラがデータ転
    送動作を開始するときと終了するときに、その動作制御
    コードをアクセスするものにおいて、 このダイレクトメモリアクセスコントローラによるメイ
    ンメモリのアクセスを検出するアクセス検出手段を設
    け、 前記データの入出力モジュールからメインメモリへの転
    送時、 前記アクセス検出手段が前記ダイレクトメモリアクセス
    コントローラによるデータ転送動作終了時のアクセスを
    検出した場合、 格納制御手段は、 有効性識別手段がデータ保持手段に保持された少なくと
    も一部の単位データを有効と表示している場合、前記デ
    ータ転送動作終了前に、有効な単位データをメインメモ
    リに転送する指示を行い、その後前記有効性識別手段の
    表示を無効とすることを特徴とする請求項1記載のデー
    タ転送装置。
  4. 【請求項4】 メインメモリ上の所定の領域にダイレク
    トメモリアクセスコントローラの動作制御コードを格納
    し、ダイレクトメモリアクセスコントローラがデータ転
    送動作を開始するときと終了するときに、その動作制御
    コードをアクセスするものにおいて、 このダイレクトメモリアクセスコントローラによるメイ
    ンメモリのアクセスを検出するアクセス検出手段を設
    け、 前記データのメインメモリから入出力モジュールへの転
    送時、 前記アクセス検出手段が前記ダイレクトメモリアクセス
    コントローラによるデータ転送動作終了時のアクセスを
    検出した場合、 格納制御手段は、 有効性識別手段がデータ保持手段に保持されたデータを
    有効と表示している場合、前記データ転送動作終了前
    に、その表示を無効とすることを特徴とする請求項2記
    載のデータ転送装置。
  5. 【請求項5】 データ保持手段とアドレス保持手段とを
    複数組設け、複数のデータ群の転送動作を並行処理する
    場合において、 前記データの入出力モジュールからメインメモリへの転
    送時、 単位データの転送動作ごとに、全てのアドレス保持手段
    を参照し、アドレスの連続性があるものを検出した場合
    には、対応するデータ保持手段に新たにその単位データ
    の一時保持を指示することを特徴とする請求項1記載の
    データ転送装置。
  6. 【請求項6】 データ保持手段とアドレス保持手段とを
    複数組設け、複数のデータ群の転送動作を並行処理する
    場合において、 前記データのメインメモリから入出力モジュールへの転
    送時、 データの転送動作ごとに、全てのアドレス保持手段を参
    照し、アドレスの連続性があるものを検出した場合に
    は、ダイレクトメモリアクセスコントローラに対して、
    対応するデータ保持手段に保持されたデータを入出力バ
    ス幅に相当する単位データに分割して、入力出力モジュ
    ールへ転送するよう指示することを特徴とする請求項2
    記載のデータ転送装置。
  7. 【請求項7】 データ保持手段とアドレス保持手段とを
    複数組設け、複数のデータ群の転送動作を並行処理する
    場合において、 ダイレクトメモリアクセスコントローラの出力するデー
    タアクセスのためのアドレス空間を、前記データ保持手
    段とアドレス保持手段の組ごとに区別して割当て、 前記格納制御手段は、 前記アドレスを参照して転送データを一時保持するデー
    タ保持手段を決定することを特徴とする請求項1記載の
    データ転送装置。
  8. 【請求項8】 データ保持手段とアドレス保持手段とを
    複数組設け、複数のデータ群の転送動作を並行処理する
    場合において、 ダイレクトメモリアクセスコントローラの出力するデー
    タアクセスのためのアドレス空間を、前記データ保持手
    段とアドレス保持手段の組ごとに区別して割当て、 前記格納制御手段は、 前記アドレスを参照して転送データを一時保持するデー
    タ保持手段を決定することを特徴とする請求項2記載の
    データ転送装置。
JP24279992A 1992-08-19 1992-08-19 データ転送装置 Pending JPH0668021A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24279992A JPH0668021A (ja) 1992-08-19 1992-08-19 データ転送装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24279992A JPH0668021A (ja) 1992-08-19 1992-08-19 データ転送装置

Publications (1)

Publication Number Publication Date
JPH0668021A true JPH0668021A (ja) 1994-03-11

Family

ID=17094464

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24279992A Pending JPH0668021A (ja) 1992-08-19 1992-08-19 データ転送装置

Country Status (1)

Country Link
JP (1) JPH0668021A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6157482A (en) * 1999-01-08 2000-12-05 Olympus Optical Co., Ltd. Binoculars capable of quickly moving lens covers to a retracted position when in use
JP2007248246A (ja) * 2006-03-15 2007-09-27 Omron Corp レゾルバ信号処理装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6157482A (en) * 1999-01-08 2000-12-05 Olympus Optical Co., Ltd. Binoculars capable of quickly moving lens covers to a retracted position when in use
JP2007248246A (ja) * 2006-03-15 2007-09-27 Omron Corp レゾルバ信号処理装置

Similar Documents

Publication Publication Date Title
US6772237B2 (en) Host controller interface descriptor fetching unit
CN100555257C (zh) 处理页面复制期间的dma操作的存储控制器和方法
CA2143951C (en) A device with host indication combination
US20220107904A1 (en) System bus transaction queue reallocation
JP3336816B2 (ja) マルチメディア通信装置及び方法
EP0682791B1 (en) Network adapter with host interrupt and indication management
US20030126320A1 (en) Supercharge message exchanger
US6487628B1 (en) Peripheral component interface with multiple data channels and reduced latency over a system area network
JP2001142842A (ja) Dmaハンドシェークプロトコル
WO1994002900A1 (en) Network adapter with host indication optimization
WO1994009436A1 (en) Disk array controller having advanced internal bus protocol
KR20220103931A (ko) 메모리와 분산된 계산 어레이 간의 데이터 전송
US9015272B2 (en) Microcomputer
US7529857B2 (en) Data processing apparatus and data transfer control method
CN116107697B (zh) 一种不同操作系统之间互相通信的方法及系统
JPH0668021A (ja) データ転送装置
US6961837B2 (en) Method and apparatus for address translation pre-fetch
JPH11232213A (ja) 入出力装置におけるデータ転送方式
JP3357920B2 (ja) バス制御方式及びそのシステム
KR100215572B1 (ko) 인터페이스 버퍼 제어 방법 및 장치
JP3141948B2 (ja) 計算機システム
JP2001056793A (ja) 情報処理装置
JP3206580B2 (ja) Dmaデータ転送制御方法及び入出力処理装置
JP2000215154A (ja) Dmaコントロ―ラ
JPH1011387A (ja) 情報処理装置