JPH01261763A - Dma転送制御装置 - Google Patents

Dma転送制御装置

Info

Publication number
JPH01261763A
JPH01261763A JP63090942A JP9094288A JPH01261763A JP H01261763 A JPH01261763 A JP H01261763A JP 63090942 A JP63090942 A JP 63090942A JP 9094288 A JP9094288 A JP 9094288A JP H01261763 A JPH01261763 A JP H01261763A
Authority
JP
Japan
Prior art keywords
transfer
data
control device
block
cpu
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
Application number
JP63090942A
Other languages
English (en)
Other versions
JP2594611B2 (ja
Inventor
Atsushi Fujihira
藤平 淳
Kokichi Taniai
谷合 高吉
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=14012509&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JPH01261763(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP63090942A priority Critical patent/JP2594611B2/ja
Priority to US07/318,283 priority patent/US5077664A/en
Priority to EP89104032A priority patent/EP0332151B1/en
Priority to DE68925048T priority patent/DE68925048D1/de
Priority to KR1019890002811A priority patent/KR920007950B1/ko
Publication of JPH01261763A publication Critical patent/JPH01261763A/ja
Application granted granted Critical
Publication of JP2594611B2 publication Critical patent/JP2594611B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔目次〕 概要 産業上の利用分野 従来の技術 発明が解決しようとする課題 課題を解決するための手段 作用 実施例 本発明の一実施例  (第1.2図) 発明の効果 [概要] DMA転送制御装置に関し、 転送の途中で終了させられても処理可能なりMA転送制
御装置を提供することを目的とし、記憶装置に格納され
た転送情報に基づき複数のデータを転送するDMA転送
制御装置において、データ転送終了時に転送情報を記憶
装置の所定の位置に出力する転送手段を設け、前記デー
タ転送終了時に前記データの転送状況を認識できるよう
にするとともに、 また、データ転送終了時に転送情報を記憶装置の所定の
位置に出力するか否かを決定する決定手段を設け、前記
データ転送終了時に前記記憶装置に前記転送情報を出力
させるか否かを任意に設定可能とするように構成する。
〔産業上の利用分野〕
本発明は、DMA転送制御装置に関し、詳細には、ブロ
ック転送の終了状況をメモリエリアに書き出すDMA転
送制御装置に関する。
近時、コンピュータシステムでは扱うことのできるデー
タ量の増加に伴い、例えば磁気ディスク装置等補助記憶
装置との間の入出力、あるいは画像データ処理等非常に
多量のデータを高速に扱う必要があり、これらに対応し
てCPUを介さずにデータ転送を行ういわゆるDMA転
送が行われている。すなわち、通常のデータ転送はCP
Uを介して行われていることから、データ転送の処理速
度はCPUの処理速度が支配的であり、CPUの処理速
度が追いつかないような高速なデータ転送を行うことは
不可能である。また、さほど高速ではないデータ転送で
あってもその量が多い場合には転送処理に時間がかかる
。そこで、DMA転送制御装置を用いて処理速度の遅い
CPUを介さずに外部の周辺装置とメモリあるいはメモ
リ同志でデータ転送を直接行うことにより、データ転送
速度の高速化を図って高速あるいは多量のデータ転送を
効率よく処理している。
〔従来の技術〕
DMA転送制御装置(以下、DMAコントローラ: D
MACという)は前述のようなコンピュータシステムの
一部であり、通常はCPUがシステム内部のバスを専有
してデータ転送を行っている。
すなわち、バスの専有権は通常CPUが保有しており、
−i的に一つのシステム内ではCPUの専有権が最も高
い。
DMA転送の要求が発生すると、CPUはバスの専有権
をDMACに譲ってバスをDMACに開放し、DMAC
がCPUに代わってバスを専有し、DMA転送を行う、
この場合、DMA転送の方法には大別してレジスタダイ
レクトとディスクリブタチエインの二つがあり、前者は
転送開始以前にCPUによりDMAC内のレジスタに書
き込まれた情報、例えば、転送元のアドレス(ソースア
ドレス)、転送先のアドレス(ディストネーションアド
レス)、転送データの量(バイトカウント)等転送に必
要な転送情報に基づきDMA転送を行う。後者はCPU
がDMA転送に先立ってシステム内のメモリに登録する
テーブル化された転送情報(ディスクリブタ)をDMA
Cが順次読み出して内部のレジスタに格納し、該レジス
タの情報に基づいてDMA転送を行う。ディスクリブタ
チエインによるDMA転送では一組のディスクリブタで
示されるブロック、すなわち、ソースあるいはディスト
ネーションの各アドレスとバイトカウントで示されるメ
モリ内の連続したエリアのデータの転送が終了すると、
次のディスクリブタを読み込むことで複数のブロック転
送が連続的に行われる。
具体的には、DMACによるDMA転送に先立ってCP
Uはディスクリブタをテーブル化してメモリに書き込む
゛とともに、DMAC内のディスクリブタアドレスレジ
スタ(DSR)にブロック転送の先頭ブロックのディス
クリブタが格納されているアドレス(以下、ディスクリ
ブタアドレスという)を書き込む、転送要求が発生する
と、DMACはDSRに示されるアドレスからディスク
リブタを内部のメモリアドレスレジスタ(MAR)およ
びバイトカウントレジスタ(BCR)に登録し、MAR
およびBCRに示される1つのデータブロックのDMA
転送を開始する。1つのブロックのDMA転送が終了す
ると、DMACは内部のマイクロプログラムに従ってD
SRの値を更新するとともに、次のディスクリブタを読
み込んで内部のMARおよびBCRに登録し、次のデー
タブロックの転送を開始する。このように、次に転送す
るデータブロックのディスクリブタを順次読み込むこと
によって複数のデータブロックのDMA転送が行われる
〔発明が解決しようとする課題〕
しかしながら、このような従来のDMA転送装置にあっ
ては、複数のブロックのデータ転送を行うとき、1つの
ブロックのデータ転送が終了する毎に次のディスクリブ
タを内部に格納して更新する構成となっていたため、次
のような問題点があった。
すなわち、DMACが転送を終了する場合、入出力制御
装置(以下、IOCという)からの転送終了要求による
終了、転送するデータのバイトカウント値が零になった
ことによる終了あるいはバスエラー等の致命的なエラー
による終了等があるが、致命的なエラーによる終了時は
次のディスクリブタを読み込むことがないので、CPU
はDMAC内部のレジスタを読むことによって今回の終
了状況を知ることができる。ところが、通常の転送終了
時は該情報が次のディスクリブタを読み込むことによっ
て消滅するので、DMACが転送を終了したときの終了
状況をCPUは知ることができない。例えば、転送が終
了した場合、既に転送されたデータが格納されていたメ
モリエリアが不明であるため、有効なデータが、どこか
ら、どこのアドレスに入っているのかわからなくなり、
システム処理が困難になる。
そこで本発明は、ブロック転送の終了状況を必要に応じ
てメモリに書き出すことにより、CPUがブロック転送
の終了状況を知ることができるようにして、転送を途中
で総了させても、処理可能なりMA転送制御装置を提供
することを目的としている。
〔課題を解決するための手段〕
本発明によるDMA転送制御装置は上記目的達成のため
、記憶装置に格納された転送情報に基づき複数のデータ
を転送するDMA転送制御装置において、データ転送終
了時に転送情報を記憶装置の所定の位置に出力する転送
手段を設け、前記データ転送終了時に前記データの転送
状況を認識できるようにしている。
また、データ転送終了時に転送情報を記憶装置の所定の
位置に出力するか否かを決定する決定手段を設け、前記
データ転送終了時に前記記憶装置に前記転送情報を出力
させるか否かを任意に設定可能としている。
〔作用] 本発明では、ブロック転送を終了すると、転送終了時の
レジスタの値がシステム内の所定のメモリエリアに転送
される。
したがって、ブロック転送が終了してバス権がCPUに
返還されると同時に転送終了時の情報がCPUのテリト
リ−に移行し、CPUによってブロック転送の終了状況
がシステムのアプリケーションに応じて確認される。
〔実施例〕
以下、本発明の実施例を図面に基いて説明する。
第1.2図は本発明に係るDMA転送制御装置の一実施
例を示す図である。
まず、構成を説明するが、説明の都合上、システムのメ
モリとシステム外部の装置間でブロック転送を行うもの
として以下にこれを述べる。
第1図において、1はDMACであり、DMAC1はデ
ータ制御ユニット(以下、Dユニットという)2、マイ
クロシーケンス制御ユニット(以下、Mユニットという
)3および転送要求制御ユニット(以下、Rユニットと
いう)4を有し、各ユニット2.3.4はDMACl内
部のデータバス5およびアドレスバス6を介して相互に
接続される。DMAC1は第2図に示すように、システ
ムのデータバス7、アドレスバス8およびコントロール
バス9を介してRAMl01IOCIIおよびCPU1
9等と接続される。Dユニット2はデータバス7、アド
レスバス8・およびコントロールバス9に接続されてお
り、主にDMAClの入出力デ−夕を制御する。Rユニ
ット4は行うべき処理の決定を行っ・ており、例えば、
転送要求信号REQや転送終了要求信号DONEを受は
付け、次に行うべき処理を決定する。Mユニット3はR
ユニット4の決定した処理に従って、転送制御情報の操
作を行い、必要な制御情報をDユニット2に出力する。
CPU19はDMA転送開始の指示に先立ってRAMl
0の所定のエリアにディスクリブタをテーブル化したデ
ィスクリブタテーブル13を書込み、DMACl内部の
ディスクリブタアドレスレジスタDSR15にディスク
リブタテーブル13の先頭アドレスを、ディスクリブタ
テーブルの更新を指示するレジスタDTU20にディス
クリブタテーブルを更新するかどうかを書き込む0本実
施例においては1つのデータブロックに対応するディス
クリブタテーブルはメモリアドレスMAnとバイトカウ
ントBCn (nは自然数)の2ワードで構成され、デ
ィスクリブタテーブルは転送が実行される順番に連続し
たメモリ領域に格納されるものとする。
CPU19によってDMA転送開始が指示され、l0C
IIから転送要求信号REQが出力されると、Rユニッ
ト4は転送要求信号REQを受は付け、転送要求が発生
していることをMユニット3内のマイクロシーケンスコ
ントローラ(以下、MCユニットというH2およびDユ
ニット2に通知する。
転送要求の発生を受けるとDユニット2はCPU19に
対してバスの専有権を要求するホールド要求信号HRE
Qを送出し、CPU19はバスの解放が可能ならばホー
ルド許可信号HACKをDユニット2に返送し、Dユニ
ット2はホールド許可信号HACKを受けて、バスあ専
有権を獲得したことをMユニット3に通知する。バスの
専有権を獲得するとMユニット3のMCユニット12は
内部に格納されたマイクロプログラムに従ってD M 
A転送を行うために必要な制御情報をDユニット2に出
力する。このとき、DMAC1はシステムのデータバス
7、アドレスバス8およびコントロールバス9を介して
DMA転送を開始する。
なお、第2図に示すDMAClにおいては、データバス
7、アドレスバス8、コントロールバス9が伝達する各
情報とDSR15、MAR16、BCR17、DSRW
lBおよびDTU20からなるレジスタ群14の関係を
明確にするため、レジスタ群14のみを示して他は省略
しである。
前記Dユニット2、データバス5、アドレスバス6、M
Cユニット12、DSR15およびDSRWlBは転送
手段を構成するとともに、MCユニット12およびDT
U20は決定手段を構成しており、MCユニット12が
格納している前記マイクロプログラムに従って所定の機
能を発揮するものであるが、詳細は後述する。
次に、作用を説明する。
DMAClがDMA転送を開始すると、MCユニット1
2によってDSR15の内容がD S RW2Bに転送
されるとともに、Dユニット2によってDSR15に示
されるRAMl0のアドレスがアクセスされる。アクセ
スされたRAMl0のアドレスには先頭のデータブロッ
クに対応するディスクリブタ、すなわち、メモリアドレ
スMAR,およびバイトカウントBCR+が書き込まれ
ており、該ディスクリブタはディスクリブタテーブル1
3から読み出されてそれぞれMAR16およびBCR1
7に保持され、DSR15は読み込んだディスクリブタ
のワード数だけ更新される。そして、MCユニット12
に格納されたマイクロプログラムに基づくMユニット3
の指示によってMAR16およびBCR17に示される
RAMl0とloCII間の転送がDユニットにより行
われ、MCユニット12によって転送されたバイト数づ
つMAR16およびBCR17が更新される0例えば、
RAMl0からl0CIIにDMA転送を行う場合、デ
ータバス7、アドレスバス8およびコントロールバス9
を介してMAR16およびBCR17に示されるメモリ
エリアのデータブロックが読み出され、l0CIIに転
送される。1つのデータブロックの転送が終了すると、
MCユニット12によってDTU20が参照され、ディ
スクリブタテーブルの更新が指示されている時はDSR
15とDSRWlBの内容が交換され、DSR15に示
されるRAMl0のアドレスにMAR16およびBCR
17の内容が書き込まれ、その後再びDSR15とDS
RWlBの内容が交換される。すなわち、ディスクリブ
タが読み出されたアドレスに、DMA転送によって更新
されたディスクリブタの値が書き込まれる。ディスクリ
ブタテーブルの更新が指示されていない時は更新された
ディスクリブタのメモリへの書込みは行われない。ここ
でMCユニット12によって、予め指示されている転送
終了条件の成立の有無が確認され、転送終了条件が成立
していないときは、更新されているDSR15に示され
る、次のブロックに対応するディスクリブタが読み込ま
れる。転送終了条件は、例えば、予め決められた個数の
データブロックの転送が行われる、等である。以後、転
送終了条件が成立するまでディスクリブタテーブル13
から順次ディスクリブタが読み込すれRAM10とl0
CII(7)間−i?DMA転送が行われるとともに、
1つのデータブロックの転送が終了する毎に、DTU2
0にディスクリブタテーブルの更新が指示されている時
は、更新されたディスクリブタが、それが読み出された
RAM10のアドレスに書き込まれる。
DTU20にディスクリブタテーブルの更新が指示され
ている場合は、全てのデータブロックの転送が終了した
後に、CPU19はRAMl0のディスクリブタテーブ
ル13を読み出すことによって各データブロックの終了
状態を知ることができる。すなわち、バイトカウント値
が零になって終了したブロックのディスクリブタテーブ
ルはバイトカウントが零であり、転送終了要求信号DO
NEが入力されて終了したブロックのディスクリブタテ
ーブルのバイトカウントは初期に設定された値から転送
されたバイト数を引し)た値、すなわち転送されなかっ
たバイト数をしめしている。
また、DTU20を参照してからディスクリブタテーブ
ルの更新を行うか否かをMCユニット12が判断するよ
うにしているので、ブロック転送のみならず同じテーブ
ルを用いて一連のデータ転送を繰返し行うような場合に
も速やかに対応することができる。
なお、本実施例ではRAMl0に対するディスクリブタ
の転送をマイクロプログラムを用いて実現しているが、
本発明の適用はこれに限られるものではな(、例えば、
ハードウェアにより実現することも可能である。
また、本実施例ではDSR15に加えてDSRWlBを
設けてディスクリブタアドレスを保持してお(ようにし
たが、各ディスクリブタのアドレスが連続している場合
、DSRWlBに換えてDSR15の値を1つのデータ
ブロックの転送が終了する毎に2ワードに対応するバイ
ト数ずつディクリメントしてカウントするようにしても
よい。
[効果] 本発明によれば、ブロック転送を終了すると、転送終了
時のレジスタの値を所定のメモリエリアに転送する転送
制御手段を設け、ブロック転送が終了してバス権がCP
Uに返還されると同時に転送終了時の情報をCPUのテ
リトリ−に移行させているので、CPUはブロック転送
の終了状況をシステムのアプリケーションに応じて確認
することができ、転送の途中で終了させられても処理可
能なりMA転送制御装置を得ることができる。
【図面の簡単な説明】
第1.2図は本発明に係るDMA転送制御装置の一実施
例を示す図であり、 第1図はその全体構成を示すブロック図、第2図はその
システムを示す要部構成図、である。 1・・・・・・DMAC。

Claims (2)

    【特許請求の範囲】
  1. (1)記憶装置に格納された転送情報に基づき複数のデ
    ータを転送するDMA転送制御装置において、データ転
    送終了時に転送情報を記憶装置の所定の位置に出力する
    転送手段を設け、前記データ転送終了時に前記データの
    転送状況を認識できるようにしたことを特徴とするDM
    A転送制御装置。
  2. (2)データ転送終了時に転送情報を記憶装置の所定の
    位置に出力するか否かを決定する決定手段を設け、前記
    データ転送終了時に前記記憶装置に前記転送情報を出力
    させるか否かを任意に設定可能とした請求項第1項記載
    のDMA転送制御装置。
JP63090942A 1988-03-08 1988-04-13 Dma転送制御装置 Expired - Fee Related JP2594611B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP63090942A JP2594611B2 (ja) 1988-04-13 1988-04-13 Dma転送制御装置
US07/318,283 US5077664A (en) 1988-03-08 1989-03-03 Direct memory access controller
EP89104032A EP0332151B1 (en) 1988-03-08 1989-03-07 Direct memory access controller
DE68925048T DE68925048D1 (de) 1988-03-08 1989-03-07 Direktspeicherzugriffssteuerung
KR1019890002811A KR920007950B1 (ko) 1988-03-08 1989-03-07 다이렉트 메모리 액세스 제어장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63090942A JP2594611B2 (ja) 1988-04-13 1988-04-13 Dma転送制御装置

Publications (2)

Publication Number Publication Date
JPH01261763A true JPH01261763A (ja) 1989-10-18
JP2594611B2 JP2594611B2 (ja) 1997-03-26

Family

ID=14012509

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63090942A Expired - Fee Related JP2594611B2 (ja) 1988-03-08 1988-04-13 Dma転送制御装置

Country Status (1)

Country Link
JP (1) JP2594611B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005078596A (ja) * 2003-09-03 2005-03-24 Hitachi Ltd データ転送装置の制御方法、データ転送装置、チャネル制御装置、及び記憶デバイス制御装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55154623A (en) * 1979-05-23 1980-12-02 Hitachi Ltd Input and output control system
JPS56108121A (en) * 1980-01-31 1981-08-27 Nec Corp Reporting system for end of dma data transfer

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55154623A (en) * 1979-05-23 1980-12-02 Hitachi Ltd Input and output control system
JPS56108121A (en) * 1980-01-31 1981-08-27 Nec Corp Reporting system for end of dma data transfer

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005078596A (ja) * 2003-09-03 2005-03-24 Hitachi Ltd データ転送装置の制御方法、データ転送装置、チャネル制御装置、及び記憶デバイス制御装置

Also Published As

Publication number Publication date
JP2594611B2 (ja) 1997-03-26

Similar Documents

Publication Publication Date Title
US5201040A (en) Multiprocessor system having subsystems which are loosely coupled through a random access storage and which each include a tightly coupled multiprocessor
US5287471A (en) Data transfer controller using direct memory access method
JPS6375955A (ja) プログラムモ−ド・アクセス制御方式
JP3266470B2 (ja) 強制順序で行う要求毎ライト・スルー・キャッシュを有するデータ処理システム
JPH01269142A (ja) 計算機システム
JP2591502B2 (ja) 情報処理システムおよびそのバス調停方式
JPH01261763A (ja) Dma転送制御装置
JP2522412B2 (ja) プログラマブルコントロ―ラと入出力装置の間の通信方法
JPH05165761A (ja) Dmaコントローラ
JP2963696B2 (ja) データ転送制御システム
JP2679440B2 (ja) 情報処理装置
JPS6019816B2 (ja) マイクロプログラム制御アダプタ
JPH0736806A (ja) Dma方式
JPH01263858A (ja) マルチプロセッサシステム
JPH08328995A (ja) Dma転送方式およびdma転送方法
JPH07111711B2 (ja) 処理終了割込制御システム
JPS6174045A (ja) マルチプロセツサシステムにおけるチヤネル制御方式
JPS6336021B2 (ja)
JPH058459B2 (ja)
JPH03246741A (ja) 同期制御装置
JPH01158554A (ja) Dma装置を備えたデータ処理システム
JPH01250163A (ja) バス制御装置
JPH0690711B2 (ja) メモリアクセス制御方式
JPH0424733B2 (ja)
JPH02257356A (ja) マルチプロセッサシステムのデータ転送方法

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees