JP2000090045A - データ転送システム、ダイレクトメモリアクセス制御装置及び方法、並びに記録媒体 - Google Patents

データ転送システム、ダイレクトメモリアクセス制御装置及び方法、並びに記録媒体

Info

Publication number
JP2000090045A
JP2000090045A JP10254123A JP25412398A JP2000090045A JP 2000090045 A JP2000090045 A JP 2000090045A JP 10254123 A JP10254123 A JP 10254123A JP 25412398 A JP25412398 A JP 25412398A JP 2000090045 A JP2000090045 A JP 2000090045A
Authority
JP
Japan
Prior art keywords
bus
memory access
direct memory
state
data 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
JP10254123A
Other languages
English (en)
Inventor
Yoshihiro Yamashita
嘉弘 山下
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.)
NEC Engineering Ltd
Original Assignee
NEC Engineering 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 NEC Engineering Ltd filed Critical NEC Engineering Ltd
Priority to JP10254123A priority Critical patent/JP2000090045A/ja
Publication of JP2000090045A publication Critical patent/JP2000090045A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【課題】 データ転送を効率的に行うと共に、付加回路
を設けたりDMA転送周期をプログラムで考慮したりし
なくてもバスを独占することのなくDMA方式でのデー
タ転送を可能とする。 【解決手段】 インターバル・レジスタ9には、DMA
動作許可期間が記憶されており、この期間毎にDMA動
作イネーブル信号がON/OFFされる。DMAユニッ
ト制御部6は、CPU10からON状態のDMA転送要
求信号が供給されている間、DMA動作イネーブル信号
の状態を調べ、ON状態であればシステムバス14の使
用権をCPU10に対して要求し、メモリ11と入出力
装置12、13の間で複数のブロックを継続してデータ
転送させる。一方、DMAユニット制御部6は、DMA
動作イネーブル信号がOFF状態となると、DMA転送
中断信号によりデータ転送を中断すると共に、システム
バス14の使用権をCPU10に開放する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、主記憶装置と周辺
装置間のデータ転送をダイレクトメモリアクセス(Dire
ct Memory Access:DMA)方式で行うデータ転送シス
テム、ダイレクトメモリアクセス制御装置及び方法、並
びにダイレクトメモリアクセス制御のためのプログラム
を記録した記録媒体に関する。
【0002】
【従来の技術】パーソナルコンピュータやワークステー
ションなどに利用されているプロセッサでは、一般に、
主記憶装置と周辺装置との間のデータ転送にDMA方式
を用いている。DMA方式では、CPUはDMAコント
ローラにデータ転送要求を送れば、主記憶装置と周辺装
置との間のデータ転送はDMAコントローラが制御する
こととなり、CPUはデータ転送に介在する必要がな
く、他の処理を行うことができるものである。
【0003】DMA方式において、データ転送を高速化
するため、連続するメモリアドレスにわたって一連のデ
ータ転送を実行するバースト転送モードと呼ばれるもの
がある。ところが、DMA方式においては、CPUとD
MAコントローラとがバスを共有しており、通常、バス
の使用権の取得はCPUよりもDMAコントローラの方
が強いので、バースト転送モードによった場合には、D
MAコントローラがバスの使用権を独占してしまい、C
PUが割り込み処理にてデータ転送を行うことができ
ず、データを損失してしまうということが生じうる。
【0004】このようにバスの使用権をDMAコントロ
ーラが独占することを避けるため、DMA方式でのデー
タ転送には、シングル転送モードと呼ばれるものもあ
る。しかし、シングル転送モードでは、DMAコントロ
ーラは、1ブロックのデータの転送を終了する度に、C
PUにバスを開放するため、特にDMA転送するデータ
量が大きい場合には、主記憶装置と周辺装置間でのデー
タ転送を終了するまでに時間がかかり、データ転送を効
率的に行えないという問題がある。
【0005】そこで、バースト転送モードでデータ転送
を行いつつ、割り込み発生時にCPUにバスを開放する
ことができるDMAコントローラが、特開平4−306
745号公報にて提案されている。すなわち、このDM
Aコントローラは、データ転送中に割り込み信号が入る
と、DMAによるデータ転送を中断し、CPUに所定の
信号を送ってバスを開放する。これにより、CPUが直
ちに割り込み処理に取りかかることができる。
【0006】CPUが割り込み処理を行っている間、D
MAコントローラにおいて、DMA実行セットフラグを
セット状態のままとしておき、レングスカウンタ、ソー
スアドレス発生部、ディスティネーションアドレス発生
部は、データ転送の中断直前のデータ(パラメータ)を
保持し続ける。そして、割り込み処理が終了して、CP
UからDMA実行指令信号が与えられると、DMAコン
トローラの制御部はDMA実行フラグ(ここでは、セッ
ト状態)を参照し、このフラグの状態に従って中断直前
のパラメータを基に、データ転送を再開する。
【0007】
【発明が解決しようとする課題】しかしながら、上記公
報に記載のDMAコントローラには、次のような問題点
があった。例えば、センサが一定期間ONしたらとか、
複数の条件が真となったらとかいうイベント毎にCPU
による処理が必要な場合には、それを割り込み処理とし
て行うには、ハードウェアによる回路を設け、その回路
でイベントを認識し、割り込み信号としてCPU及びD
MAコントローラに入力する必要があった。このため、
回路が大型となり、高コストとなるという問題があっ
た。
【0008】また、割り込み処理をソフトウェアで処理
する場合には、イベントが起こる周期に合わせてDMA
転送回数を設定し、この転送回数でデータ転送を終了
し、バスをCPUに開放しなくてはならない。このた
め、プログラムの作成時に、これらの配慮が必要とな
り、そのプログラムを作成するプログラマに負担がかか
るという問題点があった。
【0009】本発明は、上記従来技術の問題点を解消す
るためになされたものであり、データ転送を効率的に行
うと共に、付加回路を設けたりDMA転送周期をプログ
ラムで考慮したりしなくてもバスを独占することなくD
MA方式でのデータ転送を可能とするデータ転送システ
ム、ダイレクトメモリアクセス制御装置及び方法、並び
にダイレクトメモリアクセス制御のためのプログラムを
記録した記録媒体を提供することを目的とする。
【0010】
【課題を解決するための手段】上記目的を達成するた
め、本発明の第1の観点にかかるデータ転送システム
は、バスにそれぞれ接続されたプロセッサと、主記憶装
置と、周辺装置と、前記プロセッサと前記バスの使用権
を競合し、前記主記憶装置と前記周辺装置との間の前記
バスを介したデータ転送を制御するダイレクトメモリア
クセス制御装置とを備え、前記ダイレクトメモリアクセ
ス制御装置は、所定の周期毎にオン状態とオフ状態とが
繰り返されるダイレクトメモリアクセスイネーブル信号
を発生するダイレクトメモリアクセスイネーブル信号発
生手段と、前記主記憶装置と前記周辺装置との間のダイ
レクトメモリアクセスによるデータ転送が外部から要求
されているときに、前記ダイレクトメモリアクセスイネ
ーブル信号の状態を判別する信号状態判別手段と、前記
信号状態判別手段が前記ダイレクトメモリアクセスイネ
ーブル信号がオン状態になったと判別しているときに、
前記バスの使用権を獲得するバス使用権獲得手段と、前
記バス使用権獲得手段が前記バスの使用権を獲得してい
るときに、前記主記憶装置と前記周辺装置との間で要求
に従ってデータ転送をさせるデータ転送手段と、前記信
号状態判別手段が前記ダイレクトメモリアクセスイネー
ブル信号がオフ状態になったと判別したときに、獲得し
ている前記バスの使用権を前記プロセッサに開放するバ
ス使用権開放手段とを備えることを特徴とする。
【0011】上記データ転送システムでは、ダイレクト
メモリアクセス制御装置は、ダイレクトメモリアクセス
イネーブル信号に従って、周期的にバスの使用権を獲得
し、プロセッサに開放する。データ転送手段は、ダイレ
クトメモリアクセスイネーブル信号がオン状態になって
いれば、バスの使用権を獲得し続け、複数ブロックのデ
ータ転送を継続して行うことも可能である。このため、
主記憶装置と周辺装置との間のデータ転送を効率的に行
うことができる。
【0012】また、ダイレクトメモリアクセスイネーブ
ル信号がオフ状態となれば、バスの使用権がプロセッサ
に開放されるため、一連のデータ転送の途中でプロセッ
サに割り込みが生じたとしても、一連のデータ転送の終
了を待つことなく、プロセッサがその割り込み処理を行
えることとなる。さらに、一連のデータ転送途中でのバ
スの使用権の開放のため、データ転送の周期を考慮する
必要もなく、プログラムの作成が容易になる。なお、ダ
イレクトメモリアクセス制御装置が有する各手段は、ソ
フトウェア的に実現することも可能である。
【0013】上記目的を達成するため、本発明の第2の
観点にかかるダイレクトメモリアクセス制御装置は、プ
ロセッサとバスの使用権を競合し、主記憶装置と周辺装
置との間の前記バスを介したデータ転送を制御するダイ
レクトメモリアクセス制御装置であって、所定の周期毎
にオン状態とオフ状態とが繰り返されるダイレクトメモ
リアクセスイネーブル信号を発生するダイレクトメモリ
アクセスイネーブル信号発生手段と、前記主記憶装置と
前記周辺装置との間のダイレクトメモリアクセスによる
データ転送が外部から要求されているときに、前記ダイ
レクトメモリアクセスイネーブル信号の状態を判別する
信号状態判別手段と、前記信号状態判別手段が前記ダイ
レクトメモリアクセスイネーブル信号がオン状態になっ
たと判別しているときに、前記バスの使用権を獲得する
バス使用権獲得手段と、前記バス使用権獲得手段が前記
バスの使用権を獲得しているときに、前記主記憶装置と
前記周辺装置との間で要求に従ってデータ転送をさせる
データ転送手段と、前記信号状態判別手段が前記ダイレ
クトメモリアクセスイネーブル信号がオフ状態になった
と判別したときに、獲得している前記バスの使用権を前
記プロセッサに開放するバス使用権開放手段とを備える
ことを特徴とする。
【0014】上記ダイレクトメモリアクセス制御装置に
おいて、前記ダイレクトメモリアクセスイネーブル信号
の所定の周期は、前記主記憶装置と前記周辺装置との間
で1ブロックのデータを転送するのに必要な期間の少な
くとも2倍あることを好適とする。この場合、前記デー
タ転送手段は、前記バス使用権獲得手段が前記バスの使
用権を獲得している間、複数のブロックのデータ転送を
継続して行わせることができる。
【0015】上記ダイレクトメモリアクセス制御装置
は、前記ダイレクトメモリアクセスイネーブル信号のオ
ン状態とオフ状態との繰り返し周期を外部から受け取る
周期受信手段と、前記周期受信手段が受信した前記繰り
返し周期を記憶する周期記憶手段とをさらに備えてもよ
い。この場合、前記ダイレクトメモリアクセスイネーブ
ル信号発生手段は、前記周期記憶手段に記憶されている
前記繰り返し周期に従ってオン状態とオフ状態とが繰り
返されるダイレクトメモリアクセスイネーブル信号を発
生するものとすることができる。
【0016】上記目的を達成するため、本発明の第3の
観点にかかるダイレクトメモリアクセス制御方法は、プ
ロセッサとバスの使用権を競合し、主記憶装置と周辺装
置との間の前記バスを介したデータ転送を制御するダイ
レクトメモリアクセス制御方法であって、所定の周期毎
にオン状態とオフ状態とが繰り返されるダイレクトメモ
リアクセスイネーブル信号を発生するダイレクトメモリ
アクセスイネーブル信号発生ステップと、前記主記憶装
置と前記周辺装置との間のダイレクトメモリアクセスに
よるデータ転送が外部から要求されているときに、前記
ダイレクトメモリアクセスイネーブル信号の状態を判別
する信号状態判別ステップと、前記信号状態判別ステッ
プで前記ダイレクトメモリアクセスイネーブル信号がオ
ン状態になったと判別しているときに、前記バスの使用
権を獲得するバス使用権獲得ステップと、前記バス使用
権獲得ステップで前記バスの使用権を獲得したときに、
前記主記憶装置と前記周辺装置との間で要求に従ってデ
ータ転送をさせるデータ転送ステップと、前記信号状態
判別ステップで前記ダイレクトメモリアクセスイネーブ
ル信号がオフ状態になったと判別したときに、獲得して
いる前記バスの使用権を前記プロセッサに開放するバス
使用権開放ステップとを含むことを特徴とする。
【0017】上記目的を達成するため、本発明の第4の
観点にかかるコンピュータ読み取り可能な記録媒体は、
プロセッサとバスの使用権を競合し、主記憶装置と周辺
装置との間の前記バスを介したデータ転送を制御するプ
ログラムを記録するものであって、所定の周期毎にオン
状態とオフ状態とが繰り返されるダイレクトメモリアク
セスイネーブル信号を発生するダイレクトメモリアクセ
スイネーブル信号発生ステップと、前記主記憶装置と前
記周辺装置との間のダイレクトメモリアクセスによるデ
ータ転送が外部から要求されているときに、前記ダイレ
クトメモリアクセスイネーブル信号の状態を判別する信
号状態判別ステップと、前記信号状態判別ステップで前
記ダイレクトメモリアクセスイネーブル信号がオン状態
になったと判別しているときに、前記バスの使用権を獲
得するバス使用権獲得ステップと、前記バス使用権獲得
ステップで前記バスの使用権を獲得したときに、前記主
記憶装置と前記周辺装置との間で要求に従ってデータ転
送をさせるデータ転送ステップと、前記信号状態判別ス
テップで前記ダイレクトメモリアクセスイネーブル信号
がオフ状態になったと判別したときに、獲得している前
記バスの使用権を前記プロセッサに開放するバス使用権
開放ステップとを実行するプログラムを記録することを
特徴とする。
【0018】
【発明の実施の形態】以下、添付図面を参照して、本発
明の実施の形態について説明する。
【0019】図1は、この実施の形態に適用されるコン
ピュータ装置の構成を示すブロック図である。図示する
ように、このコンピュータ装置は、システムバス14に
それぞれ接続された、CPU(Central Processing Uni
t)10と、メモリ11と、入出力装置(I/O)1
2、13と、DMAコントローラ15とから構成されて
いる。
【0020】CPU10は、システムバス14の使用権
をCPU10自身とDMAコントローラ15とのいずれ
に与えるかを調停する。CPU10は、また、メモリ1
1に格納されている命令の一部を格納するキャッシュメ
モリを有し、DMAコントローラ15がシステムバスの
使用権を獲得しているときでも、このキャッシュメモリ
中の命令を実行することができる。CPU10は、所定
の命令に実行或いはキャッシュミスなどによりシステム
バス14の使用権が必要となる。
【0021】メモリ11は、半導体メモリなどによって
構成され、CPU10が実行するプログラムやプログラ
ムの実行に必要となるデータを格納する。入出力装置1
2、13は、例えば、磁気ディスク装置、プリンタ、或
いは外部のネットワークとの通信を行う通信装置などに
よって構成される。
【0022】DMAコントローラ15は、メモリ11と
入出力装置12、13との間のDMAデータ転送を制御
するもので、それぞれ専用のハードウェアによって構成
されるバス・インタフェース部1と、アドレス制御部2
と、転送アドレス・レジスタ3と、カウント制御部4
と、転送回数・レジスタ5と、DMAユニット制御部6
と、制御・レジスタ7と、イネーブル制御部8と、イン
ターバル・レジスタ9とを備えている。
【0023】バス・インタフェース部1は、各レジスタ
3、5、7、9のデータをリード/ライトする。バス/
インタフェース部1は、アドレス制御部2から受け取っ
たアドレスへ転送すべきデータをリード/ライトするた
めの制御信号の出力し、このデータの転送時に、メモリ
11または入出力装置12、13から読み出したデータ
を保持し、このデータを出力してメモリ11または入出
力装置12、13に書き込む。
【0024】アドレス制御部2は、転送アドレス・レジ
スタ3に格納されているデータの転送元及び転送先のア
ドレスを、データのリード/ライト動作に合わせてバス
・インタフェース部1に出力する。アドレス制御部2
は、転送アドレス・レジスタ3に格納されているデータ
の転送元及び転送先のアドレスを、データの転送に合わ
せて変化(インクリメントまたはデクリメント)させる
【0025】転送アドレス・レジスタ3は、DMA転送
要求信号に先だってシステムバス14を介してCPU1
0から渡された、転送すべきデータの転送元のアドレス
(メモリ11及び入出力装置12、13のいずれか)と
転送先のアドレス(入出力装置12、13及びメモリ1
1のいずれか)とを格納する。
【0026】カウント制御部4は、リード/ライト動作
の回数、すなわち転送されたデータのブロックの個数を
カウントする。カウント制御部4は、カウントしたリー
ド/ライト動作の回数が転送回数・レジスタ5に格納さ
れている値と等しくなったときに、データの転送を終了
させ、DMA転送終了信号をCPU10に出力する。転
送回数・レジスタ5は、DMA転送要求信号に従ってシ
ステムバス14を介してCPU10から渡された、リー
ド/ライト動作の回数、すなわち転送すべきデータの個
数を格納する。
【0027】DMAユニット制御部6は、CPU10か
らのDMA転送要求信号を受け付け、制御・レジスタ7
に格納されている転送モードに従って、メモリ11と入
出力装置12、13との間のデータ転送を制御する。D
MAユニット制御部6は、後述するDMA動作イネーブ
ル信号の状態に従ってバス使用要求信号をON状態また
はOFF状態にしてCPU10に出力し、このバス使用
要求信号の状態によってデータ転送を行わせるために必
要となるシステムバス14の使用権の獲得をCPU10
に対して要求する。
【0028】制御レジスタ7は、DMA転送要求信号に
先だってシステムバス14を介してCPU10から渡さ
れた転送モード(シングル転送モードまたはバースト転
送モード)を格納する。
【0029】イネーブル制御部8は、インターバル・レ
ジスタ9に格納された周期及びDMA動作許可期間に応
じてDMA動作イネーブル信号をONにする。イネーブ
ル制御部8は、DMAイネーブル信号をDMAユニット
制御部6に供給し、DMA方式によるデータ転送の期間
に制限をかける。イネーブル制御部8は、イネーブル制
御ON/OFFビットがONで、インターバル・レジス
タ9に周期及びDMA動作許可期間が格納されていると
きに、DMA動作イネーブル信号をONにする。なお、
イネーブル制御ON/OFFビットがOFFの時は、D
MA動作イネーブル信号はON状態になる。
【0030】インターバル・レジスタ9は、イネーブル
制御部8によって参照されるイネーブル制御ON/OF
Fビットを有している。インターバル・レジスタ9は、
システムの初期化時などにシステムバス14を介してC
PU10から予め渡された周期及びDMA動作許可期間
を格納する。
【0031】以下、この実施の形態にかかるコンピュー
タ装置におけるDMAデータ転送のための動作につい
て、説明する。
【0032】CPU10は、キャッシュメモリに格納さ
れているプログラム中の入出力命令を実行すると、DM
Aコントローラ15のDMAユニット制御部6にDMA
転送要求信号(ON状態)を送る。そして、DMAコン
トローラ15は、DMAユニット制御部6がON状態の
DMA転送要求信号を受け取ったことによって、図3の
フローチャートに示す処理を開始する。
【0033】なお、DMAユニット制御部6にDMA転
送要求信号が送られるのに先だって、CPU10は転送
すべきデータの転送元と転送先のアドレス、リード/ラ
イト動作の回数及び転送モードをDMAコントローラ1
5に送る。こららのデータは、それぞれバス・インタフ
ェース部1によって、対応するレジスタ3、5、7に書
き込まれている。
【0034】処理が開始すると、DMAユニット制御部
6は、CPU10からのDMA転送要求信号を受け付け
ると、イネーブル制御部8から供給されるDMA動作イ
ネーブル信号の状態を調べる(ステップS1)。DMA
動作イネーブル信号がOFF状態である場合には、ステ
ップS1の処理を繰り返し、DMAイネーブル信号がO
N状態になるのを待機する。
【0035】一方、DMAイネーブル信号がON状態で
ある場合には、DMAユニット制御部6は、CPU10
に対してシステムバス10の使用権を要求する。そし
て、この要求に従ってCPU10がシステムバスの使用
権を調停することによって、DMAコントローラ15
は、システムバス14の使用権を獲得する(ステップS
2)。
【0036】次に、アドレス制御部2は、転送アドレス
・レジスタ3からデータの転送元及び転送先のアドレス
を読み出し、バスインタフェース部1に出力する(ステ
ップS3)。そして、バス・インタフェース部1は、メ
モリ11と入出力装置12、13のうちの転送元のアド
レスから1ブロック分のデータを、入出力装置12、1
3とメモリ11のうちの転送先のアドレスに転送させる
(ステップS4)。
【0037】そして、バス・インタフェース部1から1
ブロック分のデータ転送の終了が伝えられると、アドレ
ス制御部2は、転送アドレス・レジスタ3に格納されて
いる転送元及び転送先のアドレスを1ブロック分インク
リメント(場合によっては、デクリメント)させる。ま
た、カウント制御部4に、転送回数・レジスタ5に格納
されているリード/ライト動作の回数をカウントさせる
(ステップS5)。
【0038】次に、カウント制御部4は、カウントした
リード/ライト動作の回数と転送回数・レジスタ5に格
納されているリード/ライト動作の回数とが等しくなっ
たかどうか、或いは制御・レジスタ7に格納されている
モードがシングル転送モードであるかどうかを調べるこ
とによって、転送すべきデータをすべて転送終了したか
どうかを判定する(ステップS6)。
【0039】転送すべきデータをすべて転送終了してい
ない場合は、DMAユニット制御部6は、イネーブル制
御部8から供給されたDMA動作イネーブル信号の状態
を調べる(ステップS7)。DMA動作イネーブル信号
がON状態であれば、ステップS3に戻り、次のブロッ
クのデータの転送が行われる。
【0040】一方、DMA動作イネーブル信号がOFF
状態であれば、DMAユニット制御部6は、バス使用要
求信号をOFF状態にし、これによりCPU10は、シ
ステムバス14の使用権をDMAコントローラ15から
CPU10自身に開放する(ステップS8)。そして、
ステップS1に戻り、DMA動作イネーブル信号が再び
ON状態となるのを待機する。
【0041】また、ステップS6での判定において転送
すべきデータをすべて転送終了した場合は、カウント制
御部4は、DMA転送終了信号をCPU10に出力す
る。また、DMAユニット制御部6は、バス使用要求信
号をOFF状態にする。これによりCPU10は、シス
テムバス14の使用権をDMAコントローラ15からC
PU10自身に開放する(ステップS9)。そして、こ
のフローチャートの処理を終了する。
【0042】以下、上記のようにしてDMAコントロー
ラが動作することにより、システムバス14の使用権が
CPU10とDMAコントローラ15とのいずれに与え
られるかを、図3のタイミングチャートを参照して具体
的に説明する。
【0043】まず、DMA転送要求信号がOFF状態で
あるタイミングt1以前は、CPU10にシステムバス
14の使用権が割り当てられている。タイミングt1に
おいてDMA転送要求信号がON状態となり、DMAユ
ニット制御部6に入力されると、周期及びDMA動作許
可期間がインターバル・レジスタ9にセットされ、イネ
ーブル制御部8は、DMA動作イネーブル信号をON状
態にする。これにより、システムバス14の使用権がD
MAコントローラ15に割り当てられる。
【0044】次に、DMA動作許可期間が経過するタイ
ミングt2になると、イネーブル制御部8は、DMA動
作イネーブル信号をOFF状態にする。これにより、D
MAユニット制御部6は、バス使用要求信号をOFF状
態にしてデータ転送を中断すると共に、システムバスの
使用権がCPU10に割り当てられる。再びDMA動作
許可期間が経過するタイミングt3になると、イネーブ
ル制御部8は、DMAイネーブル信号をON状態にす
る。これにより、システムバスの使用権がDMAコント
ローラ15に割り当てられる。
【0045】同様にして、タイミングt3〜t4までは
DMAコントローラ15に、タイミングt4〜t5まで
はCPU10に、タイミングt5〜t6まではDMAコ
ントローラ15に、それぞれシステムバス14の使用権
が割り当てられる。そして、タイミングt6においてリ
ード/ライト動作の回数が規定回数に達すると、カウン
ト制御部4は、DMA転送終了信号をCPU10に出力
する。これにより、CPU10は、DMA転送要求信号
をOFF状態にする。また、DMAユニット制御部6か
らOFF状態のバス使用要求信号が供給されることで、
CPU10は、以降CPU10自身にシステムバス14
の使用権を割り当てる。
【0046】ここで、DMA方式でのデータ転送が行わ
れている期間であるタイミングt1〜t6までのいずれ
かのタイミングにおいて、例えば、キャッシュミスなど
によってCPU10にバス使用要因が発生したとする。
この場合、CPU10は、システムバス14の使用権が
割り当てられているタイミングt2〜t3、或いはタイ
ミングt4〜t5の間にキャッシュリプレースの処理を
行うことができる。
【0047】また、DMA動作許可期間を1ブロックの
データを転送するのに必要な時間の2倍以上に設定する
ことで、タイミングt1〜t2、タイミングt3〜t
4、或いはタイミングt5〜t6のそれぞれの間に複数
ブロックのデータを連続して転送することができる。
【0048】以上説明したように、この実施の形態のコ
ンピュータ装置では、ハードウェア的に付加回路を設け
なくても、また、ソフトウェア的にDMA転送周期を考
慮しなくても、DMAコントローラ15がメモリ11と
入出力装置12、13との間でデータをバースト転送し
ている間に、システムバス14の使用権をCPU10に
開放することができる。これにより、バーストモードで
のデータ転送の間にCPU10に割り込みなどのキャッ
シュ使用要因が発生したとしても、CPU10は、デー
タ転送の終了まで待機させられることなく、割り込み処
理などの処理を行うことができる。
【0049】また、DMA動作イネーブル信号がON状
態である間は、複数ブロックのデータを連続して転送す
ることが可能である。このため、シングル転送に比べ
て、システムバス14の使用権の獲得、開放に要する時
間を全体として短くすることができる。このため、メモ
リ11と入出力装置12、13との間のデータ転送を、
シングル転送よりも効率よく行うことができる。
【0050】本発明は、上記の実施の形態に限られず、
種々の変形、応用が可能である。以下、本発明に適用可
能な上記の実施の形態の変形態様について説明する。
【0051】上記の実施の形態では、DMA動作許可期
間は、DMA動作要求信号の入力に先立って、例えば、
システムの初期化時にCPU10からDMAコントロー
ラ15に送られ、インターバル・レジスタ9にセットさ
れるものとしていた。しかしながら、このDMA動作許
可期間は、予め所定の値を定めておき、DMAコントロ
ーラ15内のROM(Read Only Memory)などに保持さ
せておくものとしてもよい。また、DMA動作要求信号
が入力された後、1回ずつCPU10からDMAコント
ローラ15に送られるものとしてもよい。
【0052】上記の実施の形態では、システムバス14
の使用権の調停は、CPU10が行っていた。しかしな
がら、システムバス14の使用権の調停は、DMAコン
トローラ15、或いはCPU10とDMAコントローラ
15の両方が行える用にしてもよい。また、CPU10
とDMAコントローラ15とのいずれとも異なるバスア
ービタを設け、このバスアービタにシステムバス14の
使用権を調停させてもよい。
【0053】上記の実施の形態では、メモリ11と入出
力装置12、13との間におけるDMA転送に本発明を
適用した場合について説明した。しかしながら、本発明
は、メモリ−メモリ間のDMA転送にも適用することが
できる。
【0054】上記の実施の形態では、CPU10がDM
A転送要求を発行し、DMAコントローラ15に入力す
るものとしていた。しかしながら、入出力装置12、1
3がDMA転送要求を発行するものとしてもよく、この
場合にも本発明を適用することができる。なお、この場
合には、DMAコントローラ15が入出力装置12、1
3からCPU10を介さずにDMA転送要求を受け付け
ることができるようにするため、DMAコントローラ1
5と入出力装置12、13とを端子で直接接続すればよ
い。
【0055】上記の実施の形態では、DMAコントロー
ラ15の各部は、それぞれ専用のハードウェアによって
構成されるものとしていた。これに対して、DMAコン
トローラ15をCPU10とは独立に動作するサブプロ
セッサによって構成し、例えば、上記の各機能を実現す
るためのプログラムをROMなどの媒体に格納して配布
してもよい。これにより、同様にサブプロセッサによっ
て構成されたDMAコントローラのプログラムを記録し
たROMを交換することによって、上記のDMAコント
ローラ15の各部の機能を実現することも可能である。
【0056】
【発明の効果】以上説明したように、本発明によれば、
主記憶装置と周辺装置間のデータ転送を効率的に行うこ
とができると共に、付加回路を設けたりDMA転送周期
をプログラムで考慮したりしなくてもバスを独占するこ
となくDMA方式でデータ転送をすることが可能とな
る。
【図面の簡単な説明】
【図1】本発明の実施の形態に適用されるコンピュータ
装置の構成を示すブロック図である。
【図2】本発明の実施の形態におけるDMAコントロー
ラの動作を示すフローチャートである。
【図3】本発明の実施の形態におけるシステムバスの使
用権の割り当てを示すタイミングチャートである。
【符号の説明】
1 バス・インタフェース部 2 アドレス制御部 3 転送アドレス・レジスタ 4 カウント制御部 5 転送回数・レジスタ 6 DMAユニット制御部 7 制御・レジスタ 8 イネーブル制御部 9 インターバル・レジスタ 10 CPU 11 メモリ 12 入出力装置(I/O) 13 入出力装置(I/O) 14 システムバス 15 DMAコントローラ

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】バスにそれぞれ接続されたプロセッサと、
    主記憶装置と、周辺装置と、前記プロセッサと前記バス
    の使用権を競合し、前記主記憶装置と前記周辺装置との
    間の前記バスを介したデータ転送を制御するダイレクト
    メモリアクセス制御装置とを備えるデータ転送システム
    であって、 前記ダイレクトメモリアクセス制御装置は、 所定の周期毎にオン状態とオフ状態とが繰り返されるダ
    イレクトメモリアクセスイネーブル信号を発生するダイ
    レクトメモリアクセスイネーブル信号発生手段と、 前記主記憶装置と前記周辺装置との間のダイレクトメモ
    リアクセスによるデータ転送が外部から要求されている
    ときに、前記ダイレクトメモリアクセスイネーブル信号
    の状態を判別する信号状態判別手段と、 前記信号状態判別手段が前記ダイレクトメモリアクセス
    イネーブル信号がオン状態になったと判別しているとき
    に、前記バスの使用権を獲得するバス使用権獲得手段
    と、 前記バス使用権獲得手段が前記バスの使用権を獲得して
    いるときに、前記主記憶装置と前記周辺装置との間で要
    求に従ってデータ転送をさせるデータ転送手段と、 前記信号状態判別手段が前記ダイレクトメモリアクセス
    イネーブル信号がオフ状態になったと判別したときに、
    獲得している前記バスの使用権を前記プロセッサに開放
    するバス使用権開放手段とを備えることを特徴とするデ
    ータ転送システム。
  2. 【請求項2】プロセッサとバスの使用権を競合し、主記
    憶装置と周辺装置との間の前記バスを介したデータ転送
    を制御するダイレクトメモリアクセス制御装置であっ
    て、 所定の周期毎にオン状態とオフ状態とが繰り返されるダ
    イレクトメモリアクセスイネーブル信号を発生するダイ
    レクトメモリアクセスイネーブル信号発生手段と、 前記主記憶装置と前記周辺装置との間のダイレクトメモ
    リアクセスによるデータ転送が外部から要求されている
    ときに、前記ダイレクトメモリアクセスイネーブル信号
    の状態を判別する信号状態判別手段と、 前記信号状態判別手段が前記ダイレクトメモリアクセス
    イネーブル信号がオン状態になったと判別しているとき
    に、前記バスの使用権を獲得するバス使用権獲得手段
    と、 前記バス使用権獲得手段が前記バスの使用権を獲得して
    いるときに、前記主記憶装置と前記周辺装置との間で要
    求に従ってデータ転送をさせるデータ転送手段と、 前記信号状態判別手段が前記ダイレクトメモリアクセス
    イネーブル信号がオフ状態になったと判別したときに、
    獲得している前記バスの使用権を前記プロセッサに開放
    するバス使用権開放手段とを備えることを特徴とするダ
    イレクトメモリアクセス制御装置。
  3. 【請求項3】前記ダイレクトメモリアクセスイネーブル
    信号の所定の周期は、前記主記憶装置と前記周辺装置と
    の間で1ブロックのデータを転送するのに必要な期間の
    少なくとも2倍あり、 前記データ転送手段は、前記バス使用権獲得手段が前記
    バスの使用権を獲得している間、複数のブロックのデー
    タ転送を継続して行わせることを特徴とする請求項2に
    記載のダイレクトメモリアクセス制御装置。
  4. 【請求項4】前記ダイレクトメモリアクセスイネーブル
    信号のオン状態とオフ状態との繰り返し周期を外部から
    受け取る周期受信手段と、 前記周期受信手段が受信した前記繰り返し周期を記憶す
    る周期記憶手段とを備え、 前記ダイレクトメモリアクセスイネーブル信号発生手段
    は、前記周期記憶手段に記憶されている前記繰り返し周
    期に従ってオン状態とオフ状態とが繰り返されるダイレ
    クトメモリアクセスイネーブル信号を発生することを特
    徴とする請求項2または3に記載のダイレクトメモリア
    クセス制御装置。
  5. 【請求項5】プロセッサとバスの使用権を競合し、主記
    憶装置と周辺装置との間の前記バスを介したデータ転送
    を制御するダイレクトメモリアクセス制御方法であっ
    て、 所定の周期毎にオン状態とオフ状態とが繰り返されるダ
    イレクトメモリアクセスイネーブル信号を発生するダイ
    レクトメモリアクセスイネーブル信号発生ステップと、 前記主記憶装置と前記周辺装置との間のダイレクトメモ
    リアクセスによるデータ転送が外部から要求されている
    ときに、前記ダイレクトメモリアクセスイネーブル信号
    の状態を判別する信号状態判別ステップと、 前記信号状態判別ステップで前記ダイレクトメモリアク
    セスイネーブル信号がオン状態になったと判別している
    ときに、前記バスの使用権を獲得するバス使用権獲得ス
    テップと、 前記バス使用権獲得ステップで前記バスの使用権を獲得
    したときに、前記主記憶装置と前記周辺装置との間で要
    求に従ってデータ転送をさせるデータ転送ステップと、 前記信号状態判別ステップで前記ダイレクトメモリアク
    セスイネーブル信号がオフ状態になったと判別したとき
    に、獲得している前記バスの使用権を前記プロセッサに
    開放するバス使用権開放ステップとを含むことを特徴と
    するダイレクトメモリアクセス制御方法。
  6. 【請求項6】プロセッサとバスの使用権を競合し、主記
    憶装置と周辺装置との間の前記バスを介したデータ転送
    を制御するプログラムを記録する記録媒体であって、 所定の周期毎にオン状態とオフ状態とが繰り返されるダ
    イレクトメモリアクセスイネーブル信号を発生するダイ
    レクトメモリアクセスイネーブル信号発生ステップと、 前記主記憶装置と前記周辺装置との間のダイレクトメモ
    リアクセスによるデータ転送が外部から要求されている
    ときに、前記ダイレクトメモリアクセスイネーブル信号
    の状態を判別する信号状態判別ステップと、 前記信号状態判別ステップで前記ダイレクトメモリアク
    セスイネーブル信号がオン状態になったと判別している
    ときに、前記バスの使用権を獲得するバス使用権獲得ス
    テップと、 前記バス使用権獲得ステップで前記バスの使用権を獲得
    したときに、前記主記憶装置と前記周辺装置との間で要
    求に従ってデータ転送をさせるデータ転送ステップと、 前記信号状態判別ステップで前記ダイレクトメモリアク
    セスイネーブル信号がオフ状態になったと判別したとき
    に、獲得している前記バスの使用権を前記プロセッサに
    開放するバス使用権開放ステップとを実行するプログラ
    ムを記録することを特徴とするコンピュータ読み取り可
    能な記録媒体。
JP10254123A 1998-09-08 1998-09-08 データ転送システム、ダイレクトメモリアクセス制御装置及び方法、並びに記録媒体 Pending JP2000090045A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10254123A JP2000090045A (ja) 1998-09-08 1998-09-08 データ転送システム、ダイレクトメモリアクセス制御装置及び方法、並びに記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10254123A JP2000090045A (ja) 1998-09-08 1998-09-08 データ転送システム、ダイレクトメモリアクセス制御装置及び方法、並びに記録媒体

Publications (1)

Publication Number Publication Date
JP2000090045A true JP2000090045A (ja) 2000-03-31

Family

ID=17260556

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10254123A Pending JP2000090045A (ja) 1998-09-08 1998-09-08 データ転送システム、ダイレクトメモリアクセス制御装置及び方法、並びに記録媒体

Country Status (1)

Country Link
JP (1) JP2000090045A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013027261A1 (ja) 2011-08-23 2013-02-28 富士通株式会社 情報処理装置及びスケジューリング方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013027261A1 (ja) 2011-08-23 2013-02-28 富士通株式会社 情報処理装置及びスケジューリング方法
US9329998B2 (en) 2011-08-23 2016-05-03 Fujitsu Limited Information processing apparatus and scheduling method

Similar Documents

Publication Publication Date Title
US4737932A (en) Processor
US4602327A (en) Bus master capable of relinquishing bus on request and retrying bus cycle
EP0550164A1 (en) Method and apparatus for interleaving multiple-channel DMA operations
US6820152B2 (en) Memory control device and LSI
US5574868A (en) Bus grant prediction technique for a split transaction bus in a multiprocessor computer system
US5901295A (en) Address and data bus arbiter for pipelined transactions on a split bus
US5649209A (en) Bus coupling information processing system for multiple access to system bus
KR100708096B1 (ko) 버스 시스템 및 그 실행 순서 조정방법
JP2000047974A (ja) バス制御コントローラのバス調停方法、バス制御コントローラ及び電子機器のシステム
JP3455535B2 (ja) バス処理を行う装置および方法
USRE40261E1 (en) Apparatus and method of partially transferring data through bus and bus master control device
JP2002163228A (ja) 多重コアdsp装置のための外部バス裁定技術
JP2000090045A (ja) データ転送システム、ダイレクトメモリアクセス制御装置及び方法、並びに記録媒体
JP2005165508A (ja) ダイレクトメモリアクセスコントローラ
JPH05204833A (ja) ダイレクトメモリアクセス転送制御装置
JP4151362B2 (ja) バス調停方式、データ転送装置、及びバス調停方法
WO1992006432A1 (en) Device for controlling bus
JP3094944B2 (ja) アービトレーション方法及びその装置
JPH0844661A (ja) 情報処理装置
JPH0962640A (ja) 共有メモリのアクセス制御方法
JP2004038333A (ja) データ転送システム
JP2002278923A (ja) バスシステム,バス制御方式及びそのバス変換装置
JPH0830549A (ja) バス制御装置
JP3265582B2 (ja) マイクロコンピュータ
JP2002175270A (ja) バスの排他制御方式

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20050404

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050624

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050705

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20051101