JPH0260015B2 - - Google Patents

Info

Publication number
JPH0260015B2
JPH0260015B2 JP26038285A JP26038285A JPH0260015B2 JP H0260015 B2 JPH0260015 B2 JP H0260015B2 JP 26038285 A JP26038285 A JP 26038285A JP 26038285 A JP26038285 A JP 26038285A JP H0260015 B2 JPH0260015 B2 JP H0260015B2
Authority
JP
Japan
Prior art keywords
descriptor
chain
final
descriptors
dma
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
Application number
JP26038285A
Other languages
English (en)
Other versions
JPS62119657A (ja
Inventor
Yutaka Kawato
Takashi Nara
Takashi Hatano
Miharu Kato
Sumie Okada
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
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP26038285A priority Critical patent/JPS62119657A/ja
Publication of JPS62119657A publication Critical patent/JPS62119657A/ja
Publication of JPH0260015B2 publication Critical patent/JPH0260015B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Description

【発明の詳細な説明】 〔概要) チエインされたデイスクリプタを参照して制御
を行うDMAチエイン制御方式において、追加し
ようとする新たなデイスクリプタを準備し、チヤ
ネルに対して発行されたチエインリスタートコマ
ンドを契機として、処理を実行中の場合には、当
該新たなデイスクリプタを処理し、一方待機中の
場合には、最終ポイントレジスタによつてポイン
トされているデイスクリプタ内に設けたチエイン
ビツトが“1”であることを確認した後、新たに
設けたデイスクリプタによつて指示される処理を
実行するようにすることが開示されている。
〔産業上の利用分野〕
本発明は、チヤネルに最終デイスクリプタをポ
イントする最終ポインタを設けると共に、追加し
ようとする新たなデイスクリプタを準備し、通知
されたチエインリスタートコマンドを契機とし
て、新たにチエインしたデイスクリプタを実行す
るよう制御するDMAチエイン制御方式に関する
ものである。
〔従来の技術〕
従来、チヤネルにおける制御方式として、第4
図に示すように、デイスクリプタ(チヤネル制御
部の行うべき動作を示す記述子)をチエイン状に
構成し、DMA処理を行うものがある。この種の
制御方式は、あるデイスクリプタ例えばデイスク
リプタ1,14−1中のDMAデイスクリプタ1
3−1によつてポイントされるバツフア1に格納
されているデータをI/O機器に転送した後、当
該デイスクリプタ1,14−1内に設けたチエイ
ンビツト12−1が“1”であれば、次デイスク
リプタ11−1によつてポイントされるデイスク
リプタ14−2によつて指示される処理を実行す
るものである。
〔発明が解決しようとする問題点〕
この際、第4図に示すデイスクリプタ2,14
−2によつて指示されるDMA処理を実行した
後、更に追加した新たなデイスクリプタ3,14
−3によつて指示されるDMA処理を実行しよう
とする場合、ホスト18がDMAC(DMA制御部)
17の動作状態を調べ、最終デイスクリプタ(デ
イスクリプタ2,14−2)の処理が終了してい
れば、新たにデイスクリプタ3,14−3を最後
のデイスクリプタとしてDMAC17に登録し、
DMACをスタートさせなければならないという
問題点があつた。また、最終デイスクリプタに対
する処理がまだ終了していなければ、DMAC1
7とホスト(CPU)18との間の競合を避ける
ために、ホスト18がDMAC17の動作を一旦
停止させ、デイスクリプタ2,14−2内に設け
た次デイスクリプタ11−2に新たなデイスクリ
プタ3,14−3をポイントするアドレスを書き
込むと共にチエインビツト12−2を“1”にセ
ツトし、DMAC17を再スタートさせなければ
ならないという問題点があつた。
〔問題点を解決するための手段〕
本発明は、前記問題点を解決するために、チヤ
ネルに最終デイスクリプタをポイントする最終ポ
インタを設けると共に、追加しようとする新たな
デイスクリプタを準備し、通知されたチエインリ
スタートコマンドを契機として、チエインしたデ
イスクリプタによつて指示される処理を実行中の
場合には、当該チエインリスタートコマンドを無
視し、当該新たなデイスクリプタを処理し、一方
最終ポイントレジスタによつてポイントされてい
るデイスクリプタの位置に待機中の場合には、最
終ポイントレジスタによつてポイントされている
最終デイスクリプタ内に設けたチエインビツトが
“1”であることを確認した後、新たに設けたデ
イスクリプタによつて指示される処理を実行する
よう制御することにより、チエインされたデイス
クリプタに対して新たなデイスクリプタを追加す
ることを簡単に行ない得るようにしている。
第1図に示す本発明の1実施例構成を用いて問
題点を解決するための手段を説明する。
第1図において、メモリ6内に設けたデイスク
リプタ1,4−1は、次デイスクリプタ1−1、
チエインビツト2−1、およびDMAデイスクリ
プタ3−1から構成されている。デイスクリプタ
2,4−2も同様である。また、デイスクリプタ
3,4−3は、新たに追加しようとするものであ
る。これらの各デイスクリプタ1,4−1ないし
4−3内に設けたDMAデイスクリプタ3−1,
3−2,3−3によつてポイントされるバツフア
1,2,3に格納されているデータが例えばI/
O機器にDMA転送される。
次デイスクリプタ1−1,1−2,1−3は、
次に実行すべきものをポイントするアドレスが
夫々格納されている。
チエインビツト2−1,2−2,2−3は、次
デイスクリプタ1−1,1−2,1−3によつて
ポイントされるものを処理すべきか否かの状態を
夫々表している。
最終ポイントレジスタ5は、最後に実行するデ
イスクリプタをポイントするものである。
DMAC7は、各種DMA制御に関する処理を実
行するものである。
〔作用〕
第1図を用いて説明した構成を採用し、ホスト
(CPU)8が新たなデイスクリプタを追加しよう
とする場合、第1に、例えば第1図に示すデイス
クリプタ3,4−3をメモリ6中に準備する。
第2に、新たに設けたデイスクリプタ3,4−
3をポイントするアドレスを、最終ポイントレジ
スタ5によつてポイントされる最終デイスクリプ
タ2,4−2内の次デイスクリプタ1−2に格納
する。
第3に、最終デイスクリプタ2,4−2内に設
けたチエインビツト2−2を“1”にセツトす
る。
第4に、ホスト8は、DMAC7に対してチエ
インリスタートコマンドを発行する。
第5に、チエインリスタートコマンドの通知を
受けたDMAC7は、最終デイスクリプタあるい
はそれ以前のチエインによつて連結されているデ
イスクリプタによつて指定される処理を実行中の
場合には、当該発行されたチエインリスタートコ
マンドを無視する。これは、未だ最終デイスクリ
プタ例えばデイスクリプタ2,4−2の処理が終
了していないので、この最終デイスクリプタ2,
4−2を単に書き替えるのみで、追加されたデイ
スクリプタ3,4−3が最終デイスクリプタ2,
4−2の次に処理されるからである。一方、最終
デイスクリプタ2,4−2によつて指定される処
理が終了し、待機中の場合には、最終ポイントレ
ジスタ5が最終デイスクリプタ2,4−2のアド
レスを保持しているので、この最終ポイントレジ
スタ5によつてポイントされる最終デイスクリプ
タ2,4−2内に設けたチエインビツト2−2が
“1”であることを確認した後、次デイスクリプ
タ1−2に格納されているアドレスにつてポイン
トされるデイスクリプタ3,4−3によつて指定
される処理を実行する。
以上説明したステツプにより、新たなデイスク
リプタを容易に追加することが可能となる。
〔実施例〕
第1図は本発明の1実施例構成図、第2図およ
び第3図は本発明の動作フローチヤートを示す。
第2図および第3図図示フローチヤートを用い
て第1図図示構成の動作を詳細に説明する。
第2図図中は、新しいデイスクリプタを用意
する状態を示す。これは、第1図に示すメモリ6
中にチエインに追加しようとする新たなデイスク
リプタ例えばデイスクリプタ3,4−3を図示の
ように用意することを意味している。
図中は、最終デイスクリプタの次のデイスク
リプタのアドレスフイールドを新しいデイスクリ
プタのアドレスとする状態を示す。これは、第1
図図中最後のデイスクリプタ2,4−2内に設け
た次デイスクリプタ1−2によつてポイントされ
るアドレスにデイスクリプタ3,4−を設けるこ
とを意味している。
図中は、最終デイスクリプタのチエインビツ
トをONとする状態を示す。これは、最終デイス
クリプタ2,4−2内に設けたチエインビツト2
−2に“1”をセツトする状態を示す。
図中は、DMAC7に対してホスト8が、チ
エインリスタートコマンドを発行する状態を示
す。
第3図図中は、第2図図中ないしの処理
が終了した状態を示す。
図中は、最終デイスクリプタのチエインビツ
トはONか否かを判別する状態を示す。これは、
第1図図中デイスクリプタ2,4−2内に設けた
チエインビツト2−2がONか否かを判別するこ
とを意味している。YESの場合には、図中を
実行する。尚、最終デイスクリプタがチエインビ
ツトがONか否かを調べる理由は、ホスト8が
DMAC7に対してチエインリスタートコマンド
を発行するのが遅れ、デイスクリプタ3,4−3
まで処理が進み、最終ポイントレジスタ5がデイ
スクリプタ3,4−3をポイントしている時に誤
つてチエインを行う可能性があるためである(こ
の場合、デイスクリプタ3,4−3内に設けたチ
エインビツト2−3がOFFであれば、DMA処理
は停止する)。
図中は、デイスクリプタ2,4−2内に設け
た次デイスクリプタ1−2のフイールドに格納さ
れた内容を読む状態を示す。これは、最終デイス
クリプタ2,4−2の次に追加された新たなデイ
スクリプタ3,4−3をポイントするアドレスを
読み出すことを意味している。
図中は、次デイスクリプタに対する処理を行
う状態を示す。これは、新たに追加したデイスク
リプタ3,4−3によつて指定される処理を実行
することを意味している。
図中は、チヤネルがチエインリスタートコマ
ンドを待機している状態を示す。
図中は、チヤネルにチエインリスタートコマ
ンドが通知された状態を示す。そして、図中以
下を繰り返し実行する。
以上説明したように、最終デイスクリプタをポ
イントする最終ポイントレジスタ5を設け、追加
しようとするデイスクリプタを準備しかつ最後の
デイスクリプタが当該追加したデイスクリプタを
ポイントするようにアドレスをセツトすると共に
チエインビツトをONにセツトした後、ホスト8
がDMAC17に対してチエインリスタートコマ
ンドを発行するのみで、DMAC7は、追加した
新たなデイスクリプタを処理することができる。
〔発明の効果〕
以上説明したように、本発明によれば、チヤネ
ルに最終デイスクリプタをポイントする最終ポイ
ンタを設けると共に、追加しようとする新たなデ
イスクリプタを準備し、通知されたチエインリス
タートコマンドを契機として、チエインしたデイ
スクリプタによつて指示される処理を実行中の場
合には、当該チエインリスタートコマンドを無視
し、当該新たなデイスクリプタを処理し、一方最
終ポイントレジスタによつてポイントされている
デイスクリプタの位置に待機中の場合には、最終
ポイントレジスタによつてポイントされている最
終デイスクリプタ内に設けたチエインビツトが
“1”であることを確認した後、新たに設けたデ
イスクリプタによつて指示される処理を実行する
よう制御しているため、チエインされたDMAコ
マンドに対するコマンド追加をチヤネルの状態に
依存せず、単一かつ簡単な手順を用いて行うこと
ができる。
【図面の簡単な説明】
第1図は本発明の1実施例構成図、第2図およ
び第3図は本発明の動作フローチヤート、第4図
は従来のDMAチエイン制御方式の動作説明図を
示す。 図中、1−1ないし1−3は次デイスクリプ
タ、2−1ないし2−3はチエインビツト、3−
1ないし3−3はDMAデイスクリプタ、4−1
ないし4−3はデイスクリプタ、5は最終ポイン
トレジスタ、6はメモリ、7はDMAC、8はホ
スト(CPU)を表す。

Claims (1)

  1. 【特許請求の範囲】 1 チエインされたデイスクリプタを参照して制
    御を行うDMAチエイン制御方式において、 次に実行すべきデイスクリプタをポイントする
    次デイスクリプタポインタ1、次のデイスクリプ
    タにチエインしているか否かを表すチエインビツ
    ト2、および処理すべき情報を記述したDMAデ
    イスクリプタ3を備えた夫々のデイスクリプタ4
    と、 最終デイスクリプタをポイントする最終ポイン
    トレジスタ5とを備え、 追加しようとする新たなデイスクリプタ4を準
    備し、この新たなデイスクリプタ4をチエインし
    ようとする最終デイスクリプタ内に設けた次デイ
    スクリプタポインタ1を当該新たなデイスクリプ
    タ4をポイントするようにセツトすると共にチエ
    インビツト2を“1”にセツトし、チヤネルに対
    して発行されたチエインリスタートコマンドを契
    機として、いずれかのチエインしたデイスクリプ
    タによつて指示される処理を実行中の場合には、
    当該チエインリスタートコマンドを無視し、当該
    新たなデイスクリプタを処理し、一方最終ポイン
    トレジスタ5によつてポイントされているデイス
    クリプタの位置に待機中の場合には、最終ポイン
    トレジスタ5によつてポイントされているデイス
    クリプタ4内に設けたチエインビツト2が“1”
    であることを確認した後、新たに設けたデイスク
    リプタによつて指示される処理を実行するよう制
    御することを特徴とするDMAチエイン制御方
    式。
JP26038285A 1985-11-20 1985-11-20 Dmaチエイン制御方式 Granted JPS62119657A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP26038285A JPS62119657A (ja) 1985-11-20 1985-11-20 Dmaチエイン制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP26038285A JPS62119657A (ja) 1985-11-20 1985-11-20 Dmaチエイン制御方式

Publications (2)

Publication Number Publication Date
JPS62119657A JPS62119657A (ja) 1987-05-30
JPH0260015B2 true JPH0260015B2 (ja) 1990-12-14

Family

ID=17347143

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26038285A Granted JPS62119657A (ja) 1985-11-20 1985-11-20 Dmaチエイン制御方式

Country Status (1)

Country Link
JP (1) JPS62119657A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7484016B2 (en) * 2004-06-30 2009-01-27 Intel Corporation Apparatus and method for high performance volatile disk drive memory access using an integrated DMA engine

Also Published As

Publication number Publication date
JPS62119657A (ja) 1987-05-30

Similar Documents

Publication Publication Date Title
US6317799B1 (en) Destination controlled remote DMA engine
US5794072A (en) Timing method and apparatus for interleaving PIO and DMA data transfers
US6889266B1 (en) Method for delivering packet boundary or other metadata to and from a device using direct memory controller
JPH07225727A (ja) 計算機システム
JPH0260015B2 (ja)
JPH06103225A (ja) チェーン式dma方式及びそのためのdmaコントローラ
JPS581454B2 (ja) 入出力制御方式
US5640598A (en) Data transfer processing system
JP2522412B2 (ja) プログラマブルコントロ―ラと入出力装置の間の通信方法
JP3259193B2 (ja) アダプタ制御方式
JP2581144B2 (ja) バス制御装置
JP2524620B2 (ja) 入出力制御方法
JPH0337220B2 (ja)
JPS6113617B2 (ja)
JPS638506B2 (ja)
JPH0318144A (ja) Lanアダプタ
JPH0424733B2 (ja)
JPS63113749A (ja) チヤネル装置
JPS6223342B2 (ja)
JPH03152647A (ja) 割込み制御方式
JPS62168246A (ja) メモリ書込み制御方式
JP2005078483A (ja) Fifoメモリ制御装置およびfifoメモリ装置の制御方法
JPH01234957A (ja) Dma制御方法及び装置
JPH04286799A (ja) Promプログラマ装置
JPS581455B2 (ja) 入出力制御方式