JPH10116245A - Dma制御装置 - Google Patents

Dma制御装置

Info

Publication number
JPH10116245A
JPH10116245A JP27046296A JP27046296A JPH10116245A JP H10116245 A JPH10116245 A JP H10116245A JP 27046296 A JP27046296 A JP 27046296A JP 27046296 A JP27046296 A JP 27046296A JP H10116245 A JPH10116245 A JP H10116245A
Authority
JP
Japan
Prior art keywords
transfer
dma
data
information
bus
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
JP27046296A
Other languages
English (en)
Inventor
Rikiya Okamoto
力哉 岡本
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 JP27046296A priority Critical patent/JPH10116245A/ja
Publication of JPH10116245A publication Critical patent/JPH10116245A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【課題】DMA情報をもとに転送元から転送先へのデー
タ転送を制御するDMA制御装置に関し,データ転送速
度を低下させないようなDMA情報の獲得を可能にし,
また,一度のDMAの起動で二度のDMA転送を行う手
段を提供することにより,DMA転送の全体としての処
理時間の短縮を図る。 【解決手段】DMA情報獲得用の専用バスを用いること
により,またはデータ転送の途切れを利用してデータ転
送用のバスを獲得することにより,DMA情報獲得手段
1によって,一つのDMA情報によるデータ転送途中に
次のDMA情報を獲得する。また,通知手段6によりロ
ーカルバッファ5へのデータの準備/未準備を監視し,
転送元からローカルバッファ5へのDMAと,ローカル
バッファ5から転送先へのDMAの2回のDMAを一度
のDMA起動で制御する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は,計算機システム等
においてCPUを介さずにデータ転送を行うDMA制御
装置に関する。
【0002】DMA(Direct Memory Access)は,例え
ばメインメモリと入出力アダプタ等の間でCPUを介さ
ずに行うデータ転送である。DMAによれば効率的にデ
ータ転送を行うことができるが,本発明は,さらにDM
A情報も含めた全体としての転送処理時間の短縮を図る
ものである。
【0003】
【従来の技術】DMAを行うためには,転送元アドレ
ス,転送先アドレス,転送量等のDMA情報が必要であ
り,その情報によりDMAコントローラがデータ転送を
行う。このDMA情報は,レジスタに格納されたり,メ
モリに格納されたりするが,1回のDMA起動で複数の
DMA情報を獲得して複数回DMA転送を行うような場
合,すなわちDMA転送がチェーンで結ばれる場合に
は,DMA情報のデータ量がDMA転送の回数により変
化するため,メモリ上に置かれることが一般的である。
【0004】DMA転送は,以下の手順で行われる。 DMA情報を獲得する。 転送元アドレスから転送データを獲得する。通常は
データの転送に伴い転送元アドレスがインクリメントさ
れるが,転送元がFIFO等のように一定アドレスの場
合もある。
【0005】 転送先アドレスへ転送データを出力す
る。通常はデータの転送に伴い転送先アドレスがインク
リメントされるが,転送先がFIFO等のように一定ア
ドレスの場合もある。
【0006】DMA転送がチェーンで結ばれる場合に
は,上記の手順の後,再び手順から繰り返すことに
なる。
【0007】
【発明が解決しようとする課題】従来,DMA転送がチ
ェーンで結ばれる場合には,一つのDMA情報によるデ
ータ転送を行った後に,次のDMA情報の獲得を行な
い,同様に転送処理を繰り返していた。DMA情報の獲
得と実際のデータ転送とを交互に繰り返すため,DMA
情報を獲得するときにはデータの転送を行うことができ
ず,DMA情報の獲得に時間がかかると,全体としての
データ転送速度が低下するという問題があった。
【0008】また,公衆回線等の接続を行うネットワー
クアダプタ等においては,回線側の通信速度がIOバス
(入出力バス)の速度に比べてかなり遅く,また通常,
バイト単位の転送が発生するなどの理由により,IOバ
ス側の効率が悪くなるため,一度,転送データをローカ
ルバッファにためてから,まとめてIOバスに転送した
り(受信時),IOバスからまとめてローカルバッファ
にためたデータを少しずつ回線側に転送したり(送信
時)することが多い。
【0009】この場合には,ローカルバッファへのデー
タ転送とローカルバッファからのデータ転送という二度
の転送が発生することになるが,転送元からローカルバ
ッファへの転送終了後にローカルバッファから転送先へ
の転送が行われる必要があるため,CPUなどがローカ
ルバッファへの転送終了を割り込み等によって確認した
後,ローカルバッファから転送先へのDMAの起動をか
け直す必要があり,処理時間が多くかかっていた。
【0010】本発明は上記問題点の解決を図り,第一
に,データ転送速度を低下させないようなDMA情報獲
得手段を提供すること,第二に,ローカルバッファを使
用する場合でも一度のDMA起動で二度のDMA転送が
行われるような手段を提供することにより,DMA転送
の全体としての処理時間の短縮を可能にすることを目的
とする。
【0011】
【課題を解決するための手段】図1は,本発明の原理ブ
ロック図であり,図1(A)は,データ転送を低下させ
ないでDMA情報を獲得する構成例,図1(B)は,ロ
ーカルバッファを使用する場合でも一度のDMA起動に
よって転送を行うことができるようにした構成例を示し
ている。
【0012】図1(A)に示すDMA情報獲得手段1
は,一つのDMA情報によるデータ転送途中に次のDM
A情報を獲得する手段である。DMA情報保持手段2
は,複数のDMA情報を保持することができる記憶手段
である。転送制御手段3は,DMA情報保持手段2に保
持されたDMA情報をもとに転送元から転送先へのデー
タ転送を制御する手段であり,一つのDMA情報による
転送終了後に,DMA情報獲得手段1によって前もって
獲得した次のDMA情報によりデータ転送を続ける制御
を行う。
【0013】DMA情報獲得手段1の実現方法として,
例えば以下の二つの方法がある。一つは,DMAによる
データ転送用のバスとは別に,DMA情報獲得用の専用
バスを設け,この専用バスを利用して,DMAによるデ
ータ転送中に次のDMA情報を獲得できるようにする方
法である。このようにすると,図1(A1)に示すよう
に,1番目のDMA情報によるデータ転送中に,2番
目のDMA情報を獲得し,1番目のデータ転送が終了
すると,直ちに2番目のDMA情報によるデータ転送
を開始することができる。
【0014】もう一つは,図1(A2)に示すような方
法である。例えば,ネットワークアダプタ等へのデータ
転送では,回線側の通信速度はIOバスの通信速度に比
較して遅いため,データ転送とデータ転送の間隔が空い
てしまう。すなわち,1番目のDMA情報によるデー
タ転送において,図1(A2)に示すように,実際のデ
ータ転送とデータ転送との間に生じた空き時間を利用し
て,データ転送用のバスを用いることにより,次のDM
A情報を獲得する。
【0015】図1(B)に示す転送制御手段4は,DM
A情報を保持する記憶手段(図示省略)と,DMAデー
タ転送のためのローカルバッファ5と,このローカルバ
ッファ5上にDMA転送元のデータが準備できているか
否かを通知する通知手段6と,通知手段6によりデータ
が準備できていないことが通知されると,ローカルバッ
ファ5上から転送先へのDMA転送を停止する停止手段
7と,通知手段6によりデータが準備できていることが
通知されると,ローカルバッファ5上から転送先へのD
MA転送を再開する再開手段8とを備える。
【0016】DMA転送元からローカルバッファ5への
データ転送の終了を,直接,転送制御手段4が認識し,
データ転送が終了して転送元のデータが準備できるまで
は,ローカルバッファ5から転送先へのDMAを,停止
手段7によって停止させ,ローカルバッファ5上にデー
タが準備できると,転送先へのDMAを再開手段8によ
って再開する。このように制御することにより,一度の
DMA起動で2回のDMA転送を制御できることにな
る。
【0017】通知手段6は,例えば転送元データが準備
できたことを示す所定の制御情報保持手段(図示省略)
またはDMA情報の中に設けられた制御ビットをポーリ
ングにより確認することにより,転送元データがローカ
ルバッファ5上に準備できているか準備できていないか
を確認し,例えば割り込み信号によって停止手段7また
は再開手段8への通知を行う。
【0018】
【発明の実施の形態】図2は,本発明の適用システムの
例を示す。本発明は,もちろんこれに限られるわけでは
ないが,例えば図2に示すような計算機システムに適用
される。
【0019】中央処理装置(CPU)100は,逐次,
命令をフェッチして実行する装置である。メインメモリ
101は,プログラムやデータを記憶する記憶装置であ
る。バスブリッジ102は,CPUバスとIOバス10
3とを接続するインタフェース装置である。IOバス1
03は,入出力用のデータを転送するためのバスであ
る。
【0020】ネットワークアダプタ104は,CPU1
00等の計算機をネットワークに接続するためのアダプ
タであって,IOバス103との間でデータを送受信す
るIOバス制御部105,ローカルメモリ107,通信
回線110に対するデータ送受信のための回線制御を行
うネットワーク制御部109,これらを接続する内部バ
ス108を持つ。
【0021】本発明は,IOバス制御部105が持つD
MA制御回路106等に係り,メインメモリ101から
ネットワークアダプタ104内のローカルメモリ107
へのデータ転送,もしくはローカルメモリ107からメ
インメモリ101へのデータ転送におけるDMA制御,
またはメインメモリ101とネットワーク制御部109
間のローカルメモリ107を介したデータ転送のDMA
制御を効率よく行うものである。
【0022】[DMA制御回路の第1の実施の形態]図
3は,DMA制御回路の構成を示すブロック図である。
DMA情報保持部11は,転送元アドレス,転送先アド
レス,転送量(転送するデータのサイズ),次のDMA
情報がある場合にそのDMA情報をチェーンするための
DMA情報アドレスなどからなるDMA情報を保持す
る。DMA情報保持部11は,例えば図2に示すメイン
メモリ101内に設けられる。
【0023】次DMA情報獲得制御回路10は,DMA
情報保持部11へアドレスと読み出しの制御信号を送
り,チェーンされたDMA情報を事前に獲得するための
制御回路である。読み出されたDMA情報は,専用バス
23を介して,次転送元アドレスレジスタ12(転送元
アドレス),次転送カウンタ13(転送量),次転送先
アドレスレジスタ14(転送先アドレス),次DMA情
報アドレスレジスタ15(チェーン情報)にセットされ
る。
【0024】次転送元アドレスレジスタ12内の転送元
アドレス,次転送カウンタ13内の転送量,次転送先ア
ドレスレジスタ14内の転送先アドレス,次DMA情報
アドレスレジスタ15内のチェーン情報は,次のDMA
データ転送の開始時に,それぞれ転送元アドレスレジス
タ16,転送カウンタ17,転送先アドレスレジスタ1
8,DMA情報アドレスレジスタ19へ送られ,一つの
DMA情報によるデータ転送が開始される。
【0025】DMA情報アドレスレジスタ19の内容
は,次DMA情報獲得制御回路10へ送られ,次のDM
A情報が存在すれば,その獲得に用いられる。転送元制
御回路20は,転送元アドレスレジスタ16から転送元
アドレスと,転送カウンタ17から転送量とを読み出
し,その転送元アドレスとデータの転送を要求する制御
系信号とを転送元へ送り,バス上に送られてきた転送元
データを,ライト制御により内部のバッファ22に書き
込む。書き込みが終了すると,転送先制御回路21へデ
ータの取込み完了を通知する。
【0026】転送先制御回路21は,転送元制御回路2
0からの取込み完了の通知により転送先アドレスレジス
タ18から読み出した転送先アドレスと,データ転送の
制御系信号を転送先へ送り,リード制御によってバッフ
ァ22から読み出したデータを転送先へ送る。その転送
完了を転送元制御回路20と次DMA情報獲得制御回路
10へ通知する。
【0027】一つのDMA情報により転送カウンタ17
に設定された転送量分のデータ転送が完了すると,既に
次DMA情報獲得制御回路10によって次のDMA情報
が,次転送元アドレスレジスタ12,次転送カウンタ1
3,次転送先アドレスレジスタ14,次DMA情報アド
レスレジスタ15に設定されているので,それらを転送
元アドレスレジスタ16,転送カウンタ17,転送先ア
ドレスレジスタ18,DMA情報アドレスレジスタ19
へ移し,転送元制御回路20は,直ちに次のDMA情報
によるデータ転送を開始する。以下,同様にDMAデー
タ転送を続ける。
【0028】図4は,図3に示す転送元制御回路のブロ
ック図である。図4において,転送アドレスカウンタ3
0は,図3に示す転送元アドレスレジスタ16からのア
ドレス値が設定されるカウンタである。転送アドレスカ
ウンタ30の保持するアドレス値は,転送元からのデー
タの取込みごとに,そのデータ取込み単位分ずつインク
リメントされる。
【0029】転送カウンタ31は,図3に示す転送カウ
ンタ17からの転送量が設定されるカウンタであり,転
送元からのデータの取込みが行われると,そのデータ取
込み単位分ずつデクリメントされる。
【0030】転送量判定回路32は,1回のバースト転
送で転送するデータ量を決定する回路であり,テンポラ
リのバッファ量と,転送カウンタ31が示す残り転送量
と,転送元バースト長とにより転送量を決定し,転送ア
ドレスカウンタ30のインクリメント量と転送カウンタ
31のデクリメント量を制御するとともに,転送元バス
制御回路34および図3に示す転送先制御回路21に転
送量を通知する。
【0031】転送元バス獲得回路33は,CPU等から
のDMA起動指示によるスタート信号により,転送アド
レスカウンタ30,転送カウンタ31へのカウンタロー
ドタイミング信号を出力し,また,データを取り込むた
めのバス獲得を要求するバスリクエスト信号を出力す
る。バスリクエスト信号に対して,バスの使用許可を示
すバスグラント信号が届くと,その旨を転送元バス制御
回路34へ通知する。
【0032】転送元バス制御回路34は,転送アドレス
カウンタ30からの転送元アドレスと,データ・サイズ
と,ストローブ信号とを転送元へ送り,また転送アドレ
スカウンタ30のインクリメントタイミング信号および
転送カウンタ31のデクリメントタイミング信号を出力
する。バス上にデータが送られたことを示すアクノリッ
ジ信号が到着すると,バッファ制御回路35へ通知す
る。
【0033】バッファ制御回路35は,図3に示すバッ
ファ22に対して,ライトタイミング信号とライトアド
レスとを出力し,バッファ22へのバス上のデータの書
き込みを制御する。バッファ制御回路35は,バッファ
22へのデータの取込みが終了すると,図3に示す転送
先制御回路21へのスタート信号を出力する。
【0034】図5は,図3に示す転送先制御回路のブロ
ック図である。図5において,転送アドレスカウンタ4
0は,図3に示す転送先アドレスレジスタ14からのア
ドレス値が設定されるカウンタである。転送アドレスカ
ウンタ40の保持するアドレス値は,転送先へのデータ
転送ごとに,そのデータ転送量分ずつインクリメントさ
れる。
【0035】転送カウンタ41は,図4に示す転送元制
御回路の転送量判定回路32から送られた転送先データ
転送量が設定されるカウンタであり,転送先へのデータ
の転送が行われると,そのデータ転送量分ずつデクリメ
ントされる。
【0036】転送量判定回路42は,1回のバースト転
送で転送するデータ量を決定する回路であり,転送元制
御回路20からの転送量と,転送先バースト長とにより
転送量を決定し,転送アドレスカウンタ40のインクリ
メント量と転送カウンタ41のデクリメント量を制御す
るとともに,転送先バス制御回路44に転送量を通知す
る。
【0037】転送先バス獲得回路43は,図3に示す転
送元制御回路のバッファ制御回路35からのスタート信
号により,転送アドレスカウンタ40,転送カウンタ4
1へのカウンタロードタイミング信号を出力し,また,
データを転送するためのバス獲得を要求するバスリクエ
スト信号を出力する。バスリクエスト信号に対して,バ
スの使用許可を示すバスグラント信号が届くと,その旨
を転送先バス制御回路44へ通知する。
【0038】転送先バス制御回路44は,転送アドレス
カウンタ40からの転送先アドレスと,データ・サイズ
と,ストローブ信号とをバスへ出力し,これに伴い,バ
ッファ制御回路45は,図3に示すバッファ22に対し
て,リードタイミング信号とリードアドレスとを出力す
ることにより,バッファ22からデータを読み出して転
送先へのデータ転送を制御する。バッファ制御回路45
は,バッファ22からのデータ転送が終了すると,図3
に示す転送元制御回路20へのスタート信号を出力す
る。
【0039】また,転送先バス制御回路44は,転送ア
ドレスカウンタ40のインクリメントタイミング信号お
よび転送カウンタ41のデクリメントタイミング信号を
出力する。
【0040】図6は,図3に示す次DMA情報獲得制御
回路のブロック図である。図5において,DMA情報先
頭アドレスレジスタ46は,DMAの起動前に,あらか
じめDMA情報の先頭アドレス(図3に示すDMA情報
保持部11のアドレス)が設定されるレジスタであり,
最初のDMA転送に用いるDMA情報を獲得する場合に
用いられる。DMA情報アドレスレジスタ19は,図3
に示すDMA情報アドレスレジスタ19であり,最初の
DMA情報以外のチェーンされたDMA情報の獲得に用
いられる。
【0041】DMA情報保持部制御回路47は,図3に
示すDMA情報保持部11からのDMA情報の読み出し
を制御する回路であり,DMAスタート信号により,最
初はDMA情報先頭アドレスレジスタ46から,2回目
以降はDMA情報アドレスレジスタ19からのアドレス
をロードし,そのアドレスとストローブ信号とリードイ
ネーブル信号とを出力することにより,DMA情報の読
み出しを制御する。
【0042】アドレスレジスタ制御回路48は,図3に
示す次転送元アドレスレジスタ12,次転送カウンタ1
3,次転送先アドレスレジスタ14,次DMA情報アド
レスレジスタ15の内容を,転送元アドレスレジスタ1
6,転送カウンタ17,転送先アドレスレジスタ18,
DMA情報アドレスレジスタ19へ移すアドレスレジス
タセットタイミング信号を出力するとともに,DMA情
報保持部11から読み出したDMA情報を,次転送元ア
ドレスレジスタ12,次転送カウンタ13,次転送先ア
ドレスレジスタ14,次DMA情報アドレスレジスタ1
5にそれぞれセットする次アドレスレジスタセットタイ
ミング信号を出力する。その後,図3に示す転送元制御
回路20へのスタート信号を出力する。
【0043】図7は,以上の各回路の動作を示すタイミ
ングチャートである。図7の(a)は各回路の動作タイ
ミングを制御するクロック信号のクロックエッジを示し
ている。(b)〜(v)はそれぞれ前述した説明におけ
る次のような信号である。
【0044】(b):DMAスタート信号 (c):DMA情報ストローブ等の信号 (d):次アドレスレジスタセットタイミング信号 (e):アドレスレジスタセットタイミング信号 (f):転送元制御回路スタート信号 (g):転送元カウンタロードタイミング信号 (h):転送元バスリクエスト信号 (i):転送元バスグラント信号 (j):転送元バスストローブ等の信号 (k):転送元バスアクノリッジ信号 (l):バッファライト信号等 (m):転送元カウンタデクリメント/インクリメント
タイミング信号 (n):転送先制御回路スタート信号 (o):転送先カウンタロードタイミング信号 (p):転送先バスリクエスト信号 (q):転送先バスグラント信号 (r):転送先バスストローブ等の信号 (s):転送先バスアクノリッジ信号 (t):バッファリード信号等 (u):転送先カウンタデクリメント/インクリメント
タイミング信号 (v):転送元制御回路スタート信号 図7のタイミングチャートに示すように,(o)の転送
先カウンタロードタイミング信号の出力によって,図3
に示す転送元アドレスレジスタ16〜DMA情報アドレ
スレジスタ19が空きになるので,次転送元アドレスレ
ジスタ12〜次DMA情報アドレスレジスタ15の値を
移すことができるようになる。そこで,(e)のアドレ
スレジスタセットタイミング信号,(c)のDMA情報
ストローブ等の信号をONにし,続いて(d)の次アド
レスレジスタセットタイミング信号をONにする。これ
によってDMAによるデータ転送と,次のDMA情報の
読み出しとが,時間的に並列に実行される。
【0045】[DMA制御回路の第2の実施の形態]図
8は,DMA制御回路の他の構成を示すブロック図であ
る。次DMA情報獲得制御回路50によって,一つのD
MA情報によるデータ転送途中に次のDMA情報を獲得
する点については,図3に示すDMA制御回路と同じで
ある。
【0046】しかし,図3に示すDMA制御回路では,
DMA情報の獲得に専用バス23を用いていたのに対
し,図8に示すDMA制御回路では,DMA情報の獲得
にデータ転送用のバスを用い,バスをDMA情報の獲得
とデータ転送とで共用する点が異なる。ただし,一つの
DMA情報によるデータ転送が完了する前に,次のDM
A情報を獲得するため,図1(A2)に示すように,実
際のデータ転送の途切れによるバスの空き時間を利用し
て,次のDMA情報の獲得を行う。
【0047】これは,図2に示すようなシステムにおい
て,ネットワーク制御部109側の通信速度は,CPU
100側のIOバス103の通信速度に比較して遅いた
め,IOバス103を用いたデータ転送とデータ転送の
間隔が空いてしまうことに着目し,その空き時間を次の
DMA情報の獲得に用いるようにしたものである。
【0048】そのため,転送元制御回路59と転送先制
御回路60との間でデータの取込み完了,転送完了の通
知を行い,取込み完了によってバスに空きが生じたとき
に,次DMA情報獲得制御回路50に対して,次のDM
A情報の獲得が可能であることを通知する。次DMA情
報獲得制御回路50は,これによって,バスリクエスト
信号を出力し,バスの使用許可(バスグラント)を得た
後,次のDMA情報を読み出す。読み出したDMA情報
は,次転送元アドレスレジスタ51,次転送カウンタ5
2,次転送先アドレスレジスタ53,次DMA情報アド
レスレジスタ54にセットする。
【0049】他の構成部分については,図3のDMA制
御回路と同様であるので,説明の繰り返しを省略する。 [DMA制御回路の第3の実施の形態]図9は,DMA
制御回路の他の構成を示すブロック図である。
【0050】図9において,ローカルバッファ76は,
例えば図2に示すネットワークアダプタ104内のロー
カルメモリ107に相当し,通信回線110へのデータ
送信時には,転送元DMA制御部70は,図2のメイン
メモリ101からローカルメモリ107(ローカルバッ
ファ76)へのデータ転送を制御し,転送先DMA制御
部80は,ローカルメモリ107からネットワーク制御
部109の内部バッファへのデータ転送を制御する。な
お,データ転送がネットワーク制御部109側からCP
U100側へ行われるような逆方向の場合も,以下に説
明する基本的動作等は同様である。
【0051】図9に示すDMA制御回路では,メインメ
モリ101からローカルバッファ76へのDMAデータ
転送と,ローカルバッファ76からネットワーク制御部
109等へのDMAデータ転送の二度のDMAを,CP
U100からの一度のDMA起動によって行うことがで
きるようになっている。
【0052】このため,転送元DMA制御部70は,転
送元データを書き込むためのローカルバッファ76のア
ドレスを保持する転送元ローカルバッファアドレスレジ
スタ71と,転送元のメインメモリ101(図2)のア
ドレスを保持する転送元アドレスレジスタ72と,転送
量をカウントするための転送元転送カウンタ73と,転
送元からのデータの取込みを制御する転送元制御回路7
4とを持つ。
【0053】一方,転送先DMA制御部80は,ローカ
ルバッファ76からデータを読み出すためのアドレスを
保持する転送先ローカルバッファアドレスレジスタ81
と,転送先の例えばネットワーク制御部109が持つバ
ッファのアドレスを保持する転送先アドレスレジスタ8
2と,転送量をカウントするための転送先転送カウンタ
83と,転送先へのデータの転送を制御する転送先制御
回路84とを持つ。
【0054】他に,転送先制御回路84は,ローカルバ
ッファ76上から転送先へのDMA転送の停止を制御す
る停止制御回路85と,ローカルバッファ76上から転
送先へのDMA転送の再開を制御する再開制御回路86
とを持つ。
【0055】本発明は,転送先制御回路84が停止制御
回路85と再開制御回路86とを持つことと,これらを
動作させるための通知手段75を持つことが,従来技術
と特に異なる。
【0056】転送元制御回路74は,転送元ローカルバ
ッファアドレスレジスタ71と,転送元アドレスレジス
タ72と,転送元転送カウンタ73の値をもとに,転送
元アドレスとデータ取込みのための制御信号を転送元へ
送り,転送元から送られてきたデータをローカルバッフ
ァ76に書き込む。
【0057】通知手段75は,ローカルバッファ76上
にDMA転送元のデータが準備できているか否かを,例
えば特定の制御ビットをポーリングすることによって監
視し,その情報を停止制御回路85および再開制御回路
86へ通知する。これにより,停止制御回路85および
再開制御回路86は,転送先制御回路84に対し,それ
ぞれDMA転送の停止/再開の指示を出す。
【0058】転送先制御回路84は,転送先ローカルバ
ッファアドレスレジスタ81と,転送先アドレスレジス
タ82と,転送先転送カウンタ83の値をもとに,転送
先アドレスとデータ転送のための制御信号を転送先へ送
り,ローカルバッファ76から転送先データを読み出し
て,転送先へ送る。
【0059】図10は,本実施の形態に用いるDMA情
報のデータ構造の例を示す。DMA転送に用いるDMA
情報は,例えば図10に示すように,転送元アドレスと
転送先アドレスと転送量と各種制御情報とからなる。制
御情報は,次のDMA情報のチェーンの有無,チェーン
のためのアドレス情報,転送終了をDMA転送の要求元
へ割り込みによって通知するか否かなどの情報を持つ。
他に,本実施の形態では,DMA転送の作業用制御ビッ
トとして,この制御情報内に準備/未準備制御ビット8
8が設けられる。準備/未準備制御ビット88は,初期
値は“0”であり,ローカルバッファ76内にデータが
未準備であることを示す。転送元制御回路74がローカ
ルバッファ76内にデータを書き込むと,“1”にな
り,データが準備できたことを示す。
【0060】この例では,DMA転送時にはあらかじめ
ローカルバッファ76に,DMA情報が用意されるよう
になっており,転送元DMA制御部70はそのDMA情
報の先頭アドレスを保持している。転送元制御回路74
が,ローカルバッファ76内へのデータの取込みに伴
い,準備/未準備制御ビット88を“1”にセットし,
これによって,通知手段75はローカルバッファ76上
にデータが準備できたことを知る。なお,DMA情報内
の制御ビットを作業フラグとして用いる代わりに,あら
かじめ定められたローカルバッファ76内の特定アドレ
スのビットを用いるようにしてもよい。
【0061】このように,通知手段75が介在して,転
送元から転送先へのDMA転送の引き継ぎを行うので,
CPU100からの一度のDMA起動で2回のDMA転
送を制御することが可能になる。
【0062】[DMA制御回路の第4の実施の形態]図
11は,DMA制御回路のさらに他の構成を示すブロッ
ク図である。図11に示すDMA制御回路の各部の基本
的動作は図9に示すDMA制御回路とほぼ同様である。
【0063】図11に示すDMA制御回路の図9に示す
回路との大きな違いは,通知手段90であり,図9の通
知手段75がDMA情報の制御ビットをポーリングによ
り監視していたのに対し,本実施の形態による通知手段
90は,転送元制御回路74から転送終了の通知を受
け,それを割り込み信号によって転送先DMA制御部8
0の停止制御回路85,再開制御回路86に通知する点
が異なる。
【0064】本実施の形態によっても,CPU100か
らの一度のDMA起動で2回のDMA転送を制御するこ
とが可能になる。
【0065】
【発明の効果】以上説明したように,本発明によれば,
データ転送速度を低下させることなく,チェーンでつな
がれたDMA情報を獲得し,DMA転送の全体としての
処理時間を短縮させることが可能になる。また,一度の
DMA起動によって2回のDMA転送を制御することが
できるので,効率のよい通信が可能になる。
【図面の簡単な説明】
【図1】本発明の原理ブロック図である。
【図2】本発明の適用システムの例を示す図である。
【図3】DMA制御回路の構成を示すブロック図であ
る。
【図4】図3に示す転送元制御回路のブロック図であ
る。
【図5】図3に示す転送先制御回路のブロック図であ
る。
【図6】図3に示す次DMA情報獲得制御回路のブロッ
ク図である。
【図7】回路の動作を示すタイミングチャートである。
【図8】DMA制御回路の他の構成を示すブロック図で
ある。
【図9】DMA制御回路の他の構成を示すブロック図で
ある。
【図10】DMA情報のデータ構造の例を示す図であ
る。
【図11】DMA制御回路のさらに他の構成を示すブロ
ック図である。
【符号の説明】
1 DMA情報獲得手段 2 DMA情報保持手段 3 転送制御手段 4 転送制御手段 5 ローカルバッファ 6 通知手段 7 停止手段 8 再開手段

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 複数のDMA情報を保持する記憶手段を
    持ち,保持されたDMA情報をもとに転送元から転送先
    へのデータ転送を制御するDMA制御装置であって,一
    つのDMA情報によるデータ転送途中に次のDMA情報
    を獲得するDMA情報獲得手段と,一つのDMA情報に
    よる転送終了後に,前もって獲得した次のDMA情報に
    よってデータ転送を続ける制御手段とを備えることを特
    徴とするDMA制御装置。
  2. 【請求項2】 請求項1記載のDMA制御装置におい
    て,前記DMA情報獲得手段は,DMAによるデータ転
    送用のバスとは別に,DMA情報獲得用の専用バスを持
    つことを特徴とするDMA制御装置。
  3. 【請求項3】 請求項1記載のDMA制御装置におい
    て,前記DMA情報獲得手段は,DMAによるデータ転
    送用のバスをDMA情報の獲得のために使用し,一つの
    DMA情報によるデータ転送における,部分的な転送と
    部分的な転送との間に生じた空いた時間にデータ転送用
    バスを用いて次のDMA情報を獲得するようにしたこと
    を特徴とするDMA制御装置。
  4. 【請求項4】 DMA情報を保持する記憶手段とDMA
    データ転送のためのローカルバッファとを持ち,保持さ
    れたDMA情報をもとに転送元から転送先へのデータ転
    送を制御するDMA制御装置であって,前記ローカルバ
    ッファ上にDMA転送元のデータが準備できているか否
    かを通知する通知手段と,前記通知手段によりデータが
    準備できていないことが通知されると,前記ローカルバ
    ッファ上から転送先へのDMA転送を停止する停止手段
    と,前記通知手段によりデータが準備できていることが
    通知されると,前記ローカルバッファ上から転送先への
    DMA転送を再開する再開手段とを備えることを特徴と
    するDMA制御装置。
  5. 【請求項5】 請求項4記載のDMA制御装置におい
    て,前記通知手段は,転送元データが準備できたことを
    示す所定の制御情報保持手段またはDMA情報の中に設
    けられた制御情報をポーリングにより確認することによ
    り,転送元データが前記ローカルバッファ上に準備でき
    ているか準備できていないかを確認する手段であること
    を特徴とするDMA制御装置。
  6. 【請求項6】 請求項4記載のDMA制御装置におい
    て,前記通知手段は,転送元データが準備できたことを
    割り込み信号によって通知する手段であることを特徴と
    するDMA制御装置。
JP27046296A 1996-10-14 1996-10-14 Dma制御装置 Pending JPH10116245A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27046296A JPH10116245A (ja) 1996-10-14 1996-10-14 Dma制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27046296A JPH10116245A (ja) 1996-10-14 1996-10-14 Dma制御装置

Publications (1)

Publication Number Publication Date
JPH10116245A true JPH10116245A (ja) 1998-05-06

Family

ID=17486641

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27046296A Pending JPH10116245A (ja) 1996-10-14 1996-10-14 Dma制御装置

Country Status (1)

Country Link
JP (1) JPH10116245A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013246778A (ja) * 2012-05-29 2013-12-09 Nec Corp Dma転送装置、dma転送方法及びdma転送プログラム
US9727504B2 (en) 2012-02-29 2017-08-08 Mitsubishi Electric Corporation Data transfer apparatus, data transfer method, and data transfer program
WO2019229063A1 (en) * 2018-05-30 2019-12-05 Nordic Semiconductor Asa Direct memory access controller

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9727504B2 (en) 2012-02-29 2017-08-08 Mitsubishi Electric Corporation Data transfer apparatus, data transfer method, and data transfer program
JP2013246778A (ja) * 2012-05-29 2013-12-09 Nec Corp Dma転送装置、dma転送方法及びdma転送プログラム
WO2019229063A1 (en) * 2018-05-30 2019-12-05 Nordic Semiconductor Asa Direct memory access controller
US11386029B2 (en) 2018-05-30 2022-07-12 Nordic Semiconductor Asa Direct memory access controller

Similar Documents

Publication Publication Date Title
JPH10116245A (ja) Dma制御装置
JPH10334037A (ja) 通信dma装置
US5418744A (en) Data transfer apparatus
JP2800764B2 (ja) データ転送制御方式
JP3193155B2 (ja) Dma制御方式
JPH06332848A (ja) データ転送方式
JP2581041B2 (ja) デ−タ処理装置
JP2000010909A (ja) データ転送制御装置
JPS6019023B2 (ja) デ−タ処理装置
JPS61131154A (ja) デ−タ転送制御方式
JP2933039B2 (ja) 通信用コントローラ
JPH11134288A (ja) バスコントローラ
JPH04306754A (ja) Dmaコントローラ
JPH06149703A (ja) メッセージ転送制御装置
JPS61156454A (ja) デ−タ転送制御装置
JPH10133999A (ja) データ転送制御方式およびデータ転送制御方法
JPH0934831A (ja) バスアダプタのデータ転送方式
JP2001005742A (ja) データ転送方式
JPH07334453A (ja) メモリアクセスシステム
JPH07319802A (ja) データ転送方式
JPH06214947A (ja) 情報処理装置
JPH088941A (ja) 単方向ループ型伝送回路
JPH0728750A (ja) インターフェース変換装置
JPH04243459A (ja) ダブルバッファ制御方式
JPS6268346A (ja) デ−タ伝送システムにおける回線接続方式

Legal Events

Date Code Title Description
A977 Report on retrieval

Effective date: 20050913

Free format text: JAPANESE INTERMEDIATE CODE: A971007

A131 Notification of reasons for refusal

Effective date: 20051004

Free format text: JAPANESE INTERMEDIATE CODE: A131

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060117

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060314

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20061121