JPH09223102A - ダイレクトメモリアクセスコントローラ - Google Patents

ダイレクトメモリアクセスコントローラ

Info

Publication number
JPH09223102A
JPH09223102A JP1861296A JP1861296A JPH09223102A JP H09223102 A JPH09223102 A JP H09223102A JP 1861296 A JP1861296 A JP 1861296A JP 1861296 A JP1861296 A JP 1861296A JP H09223102 A JPH09223102 A JP H09223102A
Authority
JP
Japan
Prior art keywords
data
transfer
direct
transfers
executed
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
JP1861296A
Other languages
English (en)
Inventor
Masayuki Ishigami
正之 石上
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.)
Ricoh Co Ltd
Original Assignee
Ricoh 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP1861296A priority Critical patent/JPH09223102A/ja
Publication of JPH09223102A publication Critical patent/JPH09223102A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【課題】 複数のDMA転送を連続して実行する場合の
全体的な処理効率を向上させる。 【解決手段】 複数のDMA転送の制御データをデータ
保持手段12〜16に設定すると共に、複数のDMA転
送の優先度を優先度保持手段27に保持させ、転送制御
手段25の制御により優先度の順番で複数のDMA転送
を実行させる。複数のDMA転送を所望の順番に実行す
ることにより、全体的な処理効率を向上させる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ダイレクト転送を
実行するダイレクトメモリアクセスコントローラに関す
る。
【0002】
【従来の技術】現在、データバスに複数のデバイスを接
続したデータ処理装置において、ダイレクト転送である
DMA(Direct Memory Access)転送によりデータ転送を
高速化すると共にプロセッサの負担を軽減することが行
なわれている。このような処理動作を実現するダイレク
トメモリアクセスコントローラであるDMAC(DMAC
ontroller)は、各種データを伝送するデータバスによ
り、各種データを記憶するメモリと各種データを入出力
する入出力装置と各種のデータ処理を実行するプロセッ
サとに接続される。そして、ダイレクト転送の制御デー
タが設定されると、データバスを占有してプロセッサを
介在させることなくメモリと入出力装置との間で各種デ
ータをダイレクト転送させる。
【0003】このようなDMACは、上述のように制御
データに対応してダイレクト転送を実行するが、これは
一個の入出力装置とメモリとの間で行なう一回に制限さ
れ、複数のダイレクト転送を連続して実行することがで
きなかった。このような課題を解決するため、特開平3-
156554号公報に開示されたDMACは、制御データであ
る入出力装置とメモリとのアドレスを保持するレジスタ
を複数組設け、複数のダイレクト転送を連続して実行す
る。
【0004】このようなDMACを備えたデータ処理装
置の一従来例を図5及び図6に基づいて以下に説明す
る。まず、このデータ処理装置1は、システムバス2を
有している。このシステムバス2には、RAM(Random
Access Memory)等のメインメモリ3、プロセッサである
CPU(Central Processing Unit)4、ダイレクトメモ
リアクセスコントローラであるDMAC5が接続されて
おり、このDMAC5にも、前記システムバス2と別体
の複数の外部バス6により、複数の入出力装置であるI
/O(Input/Output)7が接続されている。
【0005】前記システムバス2は、データバスとアド
レスバスとコントロールバスとを有しており、前記デー
タバスにより各種データを転送し、前記アドレスバスに
より転送データのアドレスを転送し、前記コントロール
バスにより、リードやライト等の各種の制御データを転
送する。つまり、各種データのDMA転送も前記データ
バスにより実行し、DMA転送の要求信号や応答信号も
前記コントロールバスにより転送する。
【0006】前記メインメモリ3は、各種データを書換
自在に一時記憶するので、DMA転送する各種データの
入力や出力も実行する。前記CPU4は、各種のデータ
処理を実行するので、その一つとしてダイレクト転送の
制御データを前記DMAC5に設定することも実行す
る。前記I/O7は、各種データを入出力するデバイス
からなり、例えば、前記メインメモリ3に画像データを
出力するイメージスキャナ、前記メインメモリ3から画
像データを入力するディスプレイ、前記メインメモリ3
と画像データを入出力するHDD(Hard Disk Drive)、
等からなる。
【0007】前記DMAC5は、DMA転送を実行する
コントローラであり、図6に示すように、内部バス11
を有している。この内部バス11には、複数の転送カウ
ンタ12、複数のI/Oアドレスレジスタ13、複数の
メモリアドレスレジスタ14、データ保持手段であるコ
ントロールレジスタ15、ステイタスレジスタ16、外
部バスI/F制御回路17、複数のバッファ18等が接
続されており、前記外部バスI/F制御回路17に前記
システムバス2が接続され、複数の前記バッファ18に
前記I/O7が各々接続されている。
【0008】前記転送カウンタ12は、実行されるDM
A転送のデータ数をカウントするので、ここでは複数の
DMA転送に対応した複数である。前記メモリアドレス
レジスタ14は、DMA転送の制御データの一部として
前記メインメモリ3のアドレスが設定され、前記I/O
アドレスレジスタ13は、DMA転送の制御データの一
部として前記I/O7のアドレスが設定される。これら
のアドレスは一方が転送元の場合に他方が転送先として
設定され、前記レジスタ13,14も、複数のDMA転
送に対応した複数である。
【0009】前記コントロールレジスタ15は、DMA
転送の動作モードや起動要求等が制御データの一部とし
て設定され、前記ステイタスレジスタ16は、実行中の
DMA転送の動作状態をステータスとして保持する。前
記外部バスI/F制御回路17は、前記CPU4や前記
メインメモリ3との各種のデータ通信を仲介し、前記バ
ッファ18は、前記I/O7との各種のデータ通信を仲
介する。
【0010】上述のような構造のデータ処理装置1で
は、例えば、I/O7がバス調停回路(図示せず)にD
MA転送を要求し、このバス調停回路がDMAC5にバ
ス使用権を与えると、このDMAC5は、システムバス
2をCPU4から切り離して占有し、メインメモリ3と
I/O7との間で各種データのDMA転送を実行する。
【0011】このようにDMA転送を実行する場合、そ
の制御データの一部であるメインメモリ3とI/O7と
のアドレスは、DMAC5のレジスタ13,14に保持
されるが、これらのレジスタ13,14が複数組設けら
れているので、DMAC5は複数のDMA転送を連続し
て実行することができる。
【0012】なお、このようなDMAC5によるDMA
転送の実行中、CPU4はシステムバス2を使用できな
いが、DMA転送の開始以前に処理命令や処理データを
保持していれば、そのデータ処理を内部で実行すること
ができる。つまり、CPU4が関与することなくメイン
メモリ3とI/O7との間でデータ転送が高速に実行さ
れ、これと並行にCPU4によるデータ処理が実行され
るので、CPU4の負担を増加させることなくデータ処
理とデータ転送とが高速に実行される。
【0013】
【発明が解決しようとする課題】上述したデータ処理装
置1は、DMA転送によりデータ転送とデータ処理とを
高速化することができ、特に複数のDMA転送を連続し
て実行することができる。
【0014】しかし、この複数のDMA転送は、最初に
設定された順番で実行されるので、複数のDMA転送が
最適な順番で実行されず、重要なDMA転送の開始が遅
滞することも発生する。これを防止するためには、最初
に複数のDMA転送を最適な順番に設定することが想定
できるが、これを実現する手段は特開平3-156554号公報
には開示されていない。
【0015】しかも、複数のDMA転送を連続して実行
する場合、これが終了するまで新規のDMA転送を設定
できないので、複数のDMA転送を連続して実行してい
る最中に、より重要なDMA転送の必要が発生しても、
これを迅速に開始することができない。
【0016】同様に、複数のDMA転送を連続して実行
する場合、これが終了するまでCPU4はシステムバス
2を使用することができないので、CPU4が内部処理
を完了して重要なデータ処理の開始を要望しても、これ
を迅速に開始することができない。
【0017】つまり、上述したデータ処理装置1は、複
数のDMA転送を連続して実行することはできるが、全
体的な作業効率を向上させることは困難である。
【0018】
【課題を解決するための手段】請求項1記載の発明は、
各種データを伝送するデータバスにより各種データを記
憶するメモリと各種データを入出力する入出力装置と各
種のデータ処理を実行するプロセッサとに接続され、ダ
イレクト転送の制御データが設定されると前記データバ
スを占有して前記プロセッサを介在させることなく前記
メモリと前記入出力装置との間で各種データをダイレク
ト転送させるダイレクトメモリアクセスコントローラに
おいて、複数のダイレクト転送の制御データが設定され
るデータ保持手段を設け、設定された制御データによる
複数のダイレクト転送の優先度を保持する優先度保持手
段を設け、保持された優先度に従って複数のダイレクト
転送の順番を制御する転送制御手段を設けた。従って、
複数のダイレクト転送の制御データがデータ保持手段に
設定されると、この制御データによる複数のダイレクト
転送の優先度を優先度保持手段が保持する。この優先度
に従って転送制御手段が複数のダイレクト転送の順番を
制御するので、複数のダイレクト転送が所望の順番に実
行される。
【0019】請求項2記載の発明では、請求項1記載の
発明において、データ保持手段は、ダイレクト転送の実
行中も新規の制御データの設定を受け付け、優先度保持
手段は、ダイレクト転送の実行中に新規の制御データが
設定されると、実行中のダイレクト転送も含めて優先度
を保持し、転送制御手段は、実行中のダイレクト転送も
含めて優先度に従って複数のダイレクト転送の順番を制
御する。従って、ダイレクト転送の実行中に新規のダイ
レクト転送がデータ保持手段に設定されると、実行中の
ダイレクト転送も含んで全部のダイレクト転送の優先度
が優先度保持手段により保持される。このように保持さ
れた優先度に従って複数のダイレクト転送の順番が転送
制御手段により制御されるので、新規に設定されたダイ
レクト転送の優先度が待機中のダイレクト転送より高い
と、待機中のダイレクト転送の順番が更新される。特
に、新規に設定されたダイレクト転送の優先度が実行中
のダイレクト転送より高いと、実行中のダイレクト転送
が一時中止されて新規のダイレクト転送が優先的に実行
される。
【0020】請求項3記載の発明では、請求項1記載の
発明において、ダイレクト転送の一時中止の要求度を保
持する要求度保持手段を設け、転送制御手段は、複数の
ダイレクト転送を連続して実行する場合に、次のダイレ
クト転送の優先度が一時中止の要求度より低いと、その
開始を一時中止してデータバスをプロセッサに一時開放
する。従って、連続して実行される複数のダイレクト転
送の優先度が基準値より低下すると、その時点で転送制
御手段は複数のダイレクト転送の連続の実行を一時中止
してデータバスをプロセッサに一時開放する。複数のダ
イレクト転送を優先度の順番で連続して実行する場合で
も、優先度が低いダイレクト転送よりプロセッサのデー
タ処理が優先的に実行される。
【0021】請求項4記載の発明は、各種データを伝送
するデータバスにより各種データを記憶するメモリと各
種データを入出力する入出力装置と各種のデータ処理を
実行するプロセッサとに接続され、ダイレクト転送の制
御データが設定されると前記データバスを占有して前記
プロセッサを介在させることなく前記メモリと前記入出
力装置との間で各種データをダイレクト転送させるダイ
レクトメモリアクセスコントローラにおいて、複数のダ
イレクト転送の制御データが設定されるデータ保持手段
を設け、設定された制御データに従って複数のダイレク
ト転送を順番に実行させる転送制御手段を設け、連続し
て実行される複数のダイレクト転送のデータ数をカウン
トする転送カウント手段を設け、複数個の前記入出力装
置に対して順番に実行したダイレクト転送のデータ数と
所定の基準値とを比較するデータ比較手段を設け、基準
値をデータ数が超過していると次の前記入出力装置のダ
イレクト転送の開始を一時中止して占有した前記データ
バスを前記プロセッサに一時開放する中止制御手段を設
けた。従って、複数のダイレクト転送の制御データがデ
ータ保持手段に設定されると、この制御データに従って
転送制御手段が複数のダイレクト転送を順番に実行させ
る。このように連続して実行される複数のダイレクト転
送のデータ数を転送カウント手段がカウントし、複数個
の入出力装置に対して順番に実行したダイレクト転送の
データ数と所定の基準値とをデータ比較手段が比較し、
基準値をデータ数が超過していると、中止制御手段が次
の入出力装置のダイレクト転送の開始を一時中止して占
有したデータバスをプロセッサに一時開放する。複数の
ダイレクト転送を連続して実行する場合でも、そのデー
タ数が基準値を超過した時点で次のダイレクト転送が一
時中止されるので、プロセッサは定期的に一時開放され
るデータバスによりデータ処理を実行できる。
【0022】請求項5記載の発明では、請求項4記載の
発明において、データ比較手段は、実行中のダイレクト
転送も含めてデータ数と所定の基準値とを比較し、中止
制御手段は、基準値にデータ数が到達すると実行中のダ
イレクト転送も一時中止する。従って、複数の制御デー
タに従って複数のダイレクト転送が順番に実行される
際、そのデータ数がカウントされてデータ比較手段によ
り基準値と比較されるが、これが実行中のダイレクト転
送も含めてリアルタイムに実行される。このリアルタイ
ムの処理で基準値にデータ数が到達すると、中止制御手
段は実行中のダイレクト転送でも一時中止する。複数の
入出力装置のダイレクト転送を連続して実行する場合で
も、そのデータ数が基準値に到達した時点で実行中のダ
イレクト転送まで一時中止されるので、プロセッサは定
期的に一時開放されるデータバスによりデータ処理を実
行できる。
【0023】請求項6記載の発明は、各種データを伝送
するデータバスにより各種データを記憶するメモリと各
種データを入出力する入出力装置と各種のデータ処理を
実行するプロセッサとに接続され、ダイレクト転送の制
御データが設定されると前記データバスを占有して前記
プロセッサを介在させることなく前記メモリと前記入出
力装置との間で各種データをダイレクト転送させるダイ
レクトメモリアクセスコントローラにおいて、複数のダ
イレクト転送の制御データが設定されるデータ保持手段
を設け、設定された制御データに従って複数のダイレク
ト転送を順番に実行させる転送制御手段を設け、これか
ら連続して実行される複数のダイレクト転送のデータ数
を検出する転送検出手段を設け、複数個の前記入出力装
置に対して順番に実行するダイレクト転送のデータ数と
所定の基準値とを比較するデータ比較手段を設け、基準
値をデータ数が超過しない単位に複数のダイレクト転送
を分割する転送分割手段を設け、連続して実行される複
数のダイレクト転送を分割の単位で一時中止して前記デ
ータバスを前記プロセッサに一時開放する中止制御手段
を設けた。従って、複数のダイレクト転送の制御データ
がデータ保持手段に設定されると、この制御データに従
って転送制御手段が複数のダイレクト転送を順番に実行
させる。この時、これから連続して実行される複数のダ
イレクト転送のデータ数を転送検出手段が検出し、複数
個の入出力装置に対して順番に実行するダイレクト転送
のデータ数と所定の基準値とをデータ比較手段が比較す
る。基準値をデータ数が超過しない単位に転送分割手段
が複数のダイレクト転送を分割し、連続して実行される
複数のダイレクト転送を中止制御手段が分割の単位で一
時中止してデータバスをプロセッサに一時開放する。こ
れから連続して実行される複数のダイレクト転送のデー
タ数が一時中止の要求度を超過していると、これが基準
値を超過しない単位に分割されてから順番に実行され、
その合間にダイレクト転送が一時中止されるので、プロ
セッサは定期的に一時開放されるデータバスによりデー
タ処理を実行できる。
【0024】
【発明の実施の形態】本発明の実施の一形態を図1及び
図2に基づいて以下に説明する。なお、本実施の形態で
示すデータ処理装置21に関し、一従来例として前述し
たデータ処理装置1と同一の部分は、同一の名称及び符
号を利用して詳細な説明は省略する。
【0025】まず、本実施の形態のデータ処理装置21
も、図2に示すように、ダイレクトメモリアクセスコン
トローラであるDMAC22を一部としているが、この
DMAC22とプロセッサであるCPU4とがシステム
バス2だけでなく専用のアクセスライン23によっても
接続されている。このアクセスライン23は、CPU4
がDMAC22の各部12〜16にアクセスするため
の、アドレス、データ、制御信号、を転送すると共に、
ダイレクト転送であるDMA転送の終了を通知するため
の、割込信号、要求信号、応答信号、を転送する。この
ようにDMAC22の各部12〜16には、DMA転送
の制御データが設定されるので、ここにデータ保持手段
が設けられている。
【0026】本実施の形態のDMAC22は、上述のよ
うに通常のシステムバス2の他に前記アクセスライン2
3も接続されているので、図1に示すように、通常の内
部バス11の他にCPU4のアクセス専用の内部バス2
4も有している。このDMAC22の内部では、複数の
メモリアドレスレジスタ14と複数のI/Oアドレスレ
ジスタ13とは、前記内部バス11,24の両方に接続
されており、外部バスI/F制御回路17と複数のバッ
ファ18とは、前記内部バス11のみに接続されてい
る。複数の転送カウンタ12とコントロールレジスタ1
5とステイタスレジスタ16とは、前記内部バス24の
みに接続されており、この内部バス24には、転送制御
手段であるCPUI/F制御回路25も接続されてい
る。このCPUI/F制御回路25には、前記アクセス
ライン23とタイマ回路26とが接続されており、前記
レジスタ15,16には優先度保持手段となるDMA待
機レジスタ27が接続されている。
【0027】前記アクセスライン23はDMAC22の
前記内部バス24に接続されており、この内部バス24
に前記各部12〜16が接続されているので、前述のよ
うにCPU4はDMA転送の最中でもDMAC22の各
部12〜16にアクセスすることができる。この時、D
MAC22の前記CPUI/F制御回路25は、CPU
I/FとしてCPU4とのデータ通信を仲介する他、制
御回路としてDMAC22の内部処理を統括的に制御す
る。
【0028】前記タイマ回路26は、現在の時間を常時
検出し、これを前記CPUI/F制御回路25に通知す
る。前記DMA待機レジスタ27は、コントロールレジ
スタ15に複数のDMA転送の制御データが設定される
と、この複数のダイレクト転送の優先度を保持する。よ
り詳細には、CPU4やI/O7からDMAC22にD
MA転送の制御データが入力されると、その時刻を前記
CPUI/F制御回路25が前記タイマ回路26により
検出し、この時刻の順番として複数のDMA転送の優先
度が前記DMA待機レジスタ27に設定される。このよ
うに複数のDMA転送の優先度が前記DMA待機レジス
タ27に保持されると、前記CPUI/F制御回路25
は、保持された優先度に従って複数のDMA転送の順番
を制御するので、複数のDMA転送は設定された順番に
実行される。
【0029】このような構成において、例えば、CPU
4やI/O7からDMA転送の制御データがDMAC2
2に設定されると、このDMAC22は、システムバス
2をCPU4から切り離して占有し、メインメモリ3と
I/O7との間で各種データのDMA転送を実行する。
この時、DMAC22には、DMA転送の制御データで
あるアドレスを保持するレジスタ13,14が複数組設
けられているので、複数のDMA転送を連続して実行す
ることができる。
【0030】例えば、本実施の形態のデータ処理装置2
1をカラープリンタの一部として設け、各色の複数のイ
メージデータをメインメモリ3から複数のI/O7に順
番にDMA転送するようなことができる。このように複
数のDMA転送を実行する場合、本実施の形態のDMA
C22は、複数のDMA転送を制御データが設定された
順番に実行するので、複数のDMA転送は整然と実行さ
れる。
【0031】このようにDMA転送が実行される場合、
CPU4はシステムバス2を使用できないが、そのデー
タ処理を内部で実行することはできるので、CPU4の
負担を増加させることなくデータ処理とデータ転送とが
高速に実行される。このようにDMA転送と並列にデー
タ処理を完了したCPU4は、例えば、そのデータ処理
の結果に対応して新規のDMA転送を実行したい場合も
ある。
【0032】このような場合、CPU4は、DMA転送
の実行中でもアクセスライン23によりDMAC22に
新規のDMA転送の制御データを設定することができ、
このDMAC22は複数のDMA転送を制御データが設
定された順番に実行するので、新規のDMA転送も迅速
に実行される。
【0033】例えば、上述のようにデータ処理装置21
をカラープリンタの一部として設け、複数のI/O7に
順番にDMA転送する複数のイメージデータがメインメ
モリ3に順番に展開されるならば、最初のイメージデー
タがメインメモリ3に展開された時点でDMA転送を開
始することができ、このDMA転送の実行中に以後のイ
メージデータを展開してDMA転送を設定することがで
きるので、全体的な処理効率を向上させることができ
る。
【0034】本実施の形態のデータ処理装置21は、C
PU4とDMAC22とが専用のアクセスライン23に
より接続されているので、例えば、DMA転送の実行中
にCPU4がDMAC22にDMA転送の中止を要求す
ることもできる。
【0035】なお、本発明は上記方式に限定されるもの
ではなく、各種の変形を許容する。例えば、上述したD
MAC22では、複数のDMA転送の優先度を制御デー
タが設定された順番により規定することを例示したが、
このような優先度をI/O7の重要度に対応して設定し
ておくことも可能である。この場合、DMAC22がD
MA転送を実行している最中に、重要なI/O7から新
規のDMA転送の制御データがDMAC22に設定され
ると、このDMA転送が優先的に実行される。
【0036】また、上記した実施の形態では、DMA転
送の実行中に新規のDMA転送が設定されると、実行中
のDMA転送が完了してから待機中のDMA転送を優先
度の順番に実行することを例示したが、実行中のDMA
転送も含めて優先度に従って複数のDMA転送の順番を
制御することも可能である。
【0037】この場合、DMA転送の実行中に新規のD
MA転送の制御データが各部12〜16に設定される
と、実行中のDMA転送も含んで全部のDMA転送の優
先度がDMA待機レジスタ27により保持される。この
ように保持された優先度に従って複数のDMA転送の順
番がCPUI/F制御回路25により制御されるので、
新規に設定されたDMA転送の優先度が待機中のDMA
転送より高いと、その優先度に従って待機中のDMA転
送の順番が更新される。特に、新規に設定されたDMA
転送の優先度が実行中のDMA転送より高いと、実行中
のDMA転送が一時中止されて新規のDMA転送が優先
的に実行される。
【0038】つまり、実行中のDMA転送より重要なD
MA転送を新規に設定すれば、実行中のDMA転送は中
止されて重要なDMA転送が即座に開始されるので、重
要なデータ処理を迅速に実行することができ、選択的な
処理効率を向上させることができる。
【0039】また、上記した実施の形態では、DMAC
22がシステムバス2を占有して複数のDMA転送を連
続して実行する場合でも、CPU4が要求すればDMA
C22はDMA転送を一時中止してシステムバス2を一
時開放するが、ある一定データ数DMA転送を実行しな
いで中断するとI/O7が正常に機能しない場合もあ
る。これが問題となる場合には、図3に示すように、D
MAC22に中止制御手段として中止制御回路31を付
加し、連続する複数のDMA転送の一時中止を適正に制
御することが好ましい。
【0040】この中止制御回路31は、要求度保持手段
である中断カウンタ32、データ比較手段である比較回
路33、実転送カウンタ34、要求転送カウンタ35、
を有しており、例えば、コントロールレジスタ15の一
部として内部バス24に接続されている。連続して実行
する複数のDMA転送の優先度が実転送カウンタ34に
保持され、CPU4によるDMA転送の一時中止の要求
度が中断カウンタ32に保持される。これらのカウンタ
32,34に保持された要求度と優先度とが比較回路3
3に比較され、次のDMA転送の優先度が一時中止の要
求度より低いと、その開始が一時中止されてシステムバ
ス2がCPU4に一時開放される。
【0041】このため、CPU4がDMA転送の一時中
止を要求度によりDMAC22に設定すると、このDM
AC22は順番に実行する複数のDMA転送の優先度が
要求度より低下した時点で、DMA転送を一時中止して
システムバス2をCPU4に一時開放する。このため、
複数のDMA転送を優先度の順番で連続して実行する場
合でも、優先度が高いDMA転送は連続して実行され、
優先度が低いDMA転送よりCPU4のデータ処理が優
先的に実行される。なお、ここではCPU4が一時中止
の要求度をDMAC22に可変自在に設定することを例
示したが、このような要求度を所定の基準値としてDM
AC22に固定的に設定しておくことも可能である。
【0042】また、上述のような中止制御回路31の動
作内容を変更し、連続して実行される複数のDMA転送
を、そのデータ数に対応して定期的に一時中止すること
も可能である。このような場合、実転送カウンタ34を
転送カウント手段として、連続して実行される複数のD
MA転送のデータ数をカウントし、中断カウンタ32に
は、所定のデータ数に相当する基準値を予め設定してお
く。このような状態で、比較回路33により、実行した
DMA転送のデータ数と所定の基準値とを比較し、基準
値をデータ数が超過していると次のI/O7のDMA転
送の開始を一時中止し、占有したシステムバス2をCP
U4に一時開放する。
【0043】この場合、実行したDMA転送のデータ数
が基準値を超過すると、複数のDMA転送の連続の実行
が一時中止されてCPU4にシステムバス2が一時開放
されるので、CPU4は定期的にシステムバス2を利用
することができる。なお、ここではDMA転送を一時中
止させる基準値を固定的に設定しておくことを例示した
が、これをCPU4が一時中止の要求度として可変自在
に設定することも可能である。
【0044】また、ここでは複数のI/O7に対して順
番に実行するDMA転送を一時中止する際、そのI/O
7に対するDMA転送が完了してから一時中止を実行す
るので、一個のI/O7に対するDMA転送が中断され
ることがない。しかし、このような実行中のDMA転送
も含めてデータ数と所定の基準値とを比較し、基準値に
データ数が到達すると実行中のDMA転送も一時中止す
ることも可能である。この場合、データ数が基準値に到
達した時点で実行中のDMA転送でも一時中止されるの
で、システムバス2を確実なタイミングでCPU4に提
供することができる。
【0045】さらに、ここでは複数のDMA転送を順番
に実行する過程で一時中止を起動することを例示した
が、複数のDMA転送が設定された時点で一時中止のタ
イミングを設定することも可能である。この場合、図4
に示すように、中止制御手段となる中止制御回路41
に、転送検出手段である転送カウンタ42、最大転送レ
ジスタ43、データ比較手段である比較演算回路44、
転送分割手段である有効転送カウンタ45、を設け、複
数のDMA転送の制御データが設定された時点で、その
データ数を転送カウンタ42によりカウントして検出す
る。CPU4が要求する所定の基準値を最大転送レジス
タ43に保持させ、複数のDMA転送のデータ数と所定
の基準値とを比較演算回路44により比較する。
【0046】この比較の結果、データ数が基準値を超過
しない場合には、そのまま複数のDMA転送を連続して
実行するが、データ数が基準値を超過した場合には、こ
の基準値をデータ数が超過しない単位に複数のDMA転
送を分割する。この演算処理は、比較演算回路44によ
りデータ数から基準値を繰り返し減算することにより実
行され、この演算結果がデータ数として有効転送カウン
タ45に設定されるので、この有効転送カウンタ45に
設定されたデータ数に対応して複数のDMA転送が分割
される。この場合も、連続して実行する複数のDMA転
送を定期的に一時中止してCPU4にシステムバス2を
一時開放することができ、このタイミングがDMA転送
の設定の時点で設定されるので、リアルタイムのデータ
処理を軽減することができる。
【0047】
【発明の効果】請求項1記載の発明は、複数のダイレク
ト転送の制御データが設定されるデータ保持手段を設
け、設定された制御データによる複数のダイレクト転送
の優先度を保持する優先度保持手段を設け、保持された
優先度に従って複数のダイレクト転送の順番を制御する
転送制御手段を設けたことにより、複数のダイレクト転
送を優先度に従って順番に実行することができるので、
複数のダイレクト転送を所望の順番に実行することがで
き、全体的な処理効率を向上させることができる。
【0048】請求項2記載の発明では、データ保持手段
は、ダイレクト転送の実行中も新規の制御データの設定
を受け付け、優先度保持手段は、ダイレクト転送の実行
中に新規の制御データが設定されると、実行中のダイレ
クト転送も含めて優先度を保持し、転送制御手段は、実
行中のダイレクト転送も含めて優先度に従って複数のダ
イレクト転送の順番を制御することにより、ダイレクト
転送の実行中でも優先度が高いダイレクト転送を新規に
設定すれば、実行中のダイレクト転送が一時中止されて
新規のダイレクト転送が優先的に実行されるので、優先
度が高いダイレクト転送を即座に開始することができ、
全体的な処理効率を向上させることができる。
【0049】請求項3記載の発明では、ダイレクト転送
の一時中止の要求度を保持する要求度保持手段を設け、
転送制御手段は、複数のダイレクト転送を連続して実行
する場合に、次のダイレクト転送の優先度が一時中止の
要求度より低いと、その開始を一時中止してデータバス
をプロセッサに一時開放することにより、複数のダイレ
クト転送を優先度の順番で連続して実行する場合でも、
優先度が低いダイレクト転送よりプロセッサのデータ処
理を優先的に実行することができ、全体的な処理効率を
向上させることができる。
【0050】請求項4記載の発明は、複数のダイレクト
転送の制御データが設定されるデータ保持手段を設け、
設定された制御データに従って複数のダイレクト転送を
順番に実行させる転送制御手段を設け、連続して実行さ
れる複数のダイレクト転送のデータ数をカウントする転
送カウント手段を設け、複数個の入出力装置に対して順
番に実行したダイレクト転送のデータ数と所定の基準値
とを比較するデータ比較手段を設け、基準値をデータ数
が超過していると次の入出力装置のダイレクト転送の開
始を一時中止して占有したデータバスをプロセッサに一
時開放する中止制御手段を設けたことにより、複数のダ
イレクト転送を連続して実行する場合でも、そのデータ
数が基準値を超過した時点で次のダイレクト転送が一時
中止されるので、プロセッサは定期的に一時開放される
データバスによりデータ処理を実行することができ、全
体的な処理効率を向上させることができる。
【0051】請求項5記載の発明では、データ比較手段
は、実行中のダイレクト転送も含めてデータ数と所定の
基準値とを比較し、中止制御手段は、基準値にデータ数
が到達すると実行中のダイレクト転送も一時中止するこ
とにより、複数の入出力装置のダイレクト転送を連続し
て実行する場合でも、そのデータ数が基準値に到達した
時点で実行中のダイレクト転送まで一時中止されるの
で、プロセッサは定期的に一時開放されるデータバスに
よりデータ処理を実行することができ、全体的な処理効
率を向上させることができる。
【0052】請求項6記載の発明は、複数のダイレクト
転送の制御データが設定されるデータ保持手段を設け、
設定された制御データに従って複数のダイレクト転送を
順番に実行させる転送制御手段を設け、これから連続し
て実行される複数のダイレクト転送のデータ数を検出す
る転送検出手段を設け、複数個の入出力装置に対して順
番に実行するダイレクト転送のデータ数と所定の基準値
とを比較するデータ比較手段を設け、基準値をデータ数
が超過しない単位に複数のダイレクト転送を分割する転
送分割手段を設け、連続して実行される複数のダイレク
ト転送を分割の単位で一時中止してデータバスをプロセ
ッサに一時開放する中止制御手段を設けたことにより、
これから連続して実行される複数のダイレクト転送のデ
ータ数が所定の基準値を超過していると、これが基準値
を超過しない単位に分割されてから順番に実行され、そ
の合間にダイレクト転送が一時中止されるので、プロセ
ッサは定期的に一時開放されるデータバスによりデータ
処理を実行することができ、全体的な処理効率を向上さ
せることができる。
【図面の簡単な説明】
【図1】本発明の実施の一形態のダイレクトメモリアク
セスコントローラであるDMACを示すブロック図であ
る。
【図2】DMACを一部とするデータ処理装置を示すブ
ロック図である。
【図3】一変形例の中止制御手段である中止制御回路を
示すブロック図である。
【図4】他の変形例の中止制御手段である中止制御回路
を示すブロック図である。
【図5】一従来例のデータ処理装置を示すブロック図で
ある。
【図6】一従来例のDMACを示すブロック図である。
【符号の説明】
2 システムバス 3 メモリ 4 プロセッサ 7 入出力装置 12〜16 データ保持手段 22 ダイレクトメモリアクセスコントローラ 25 転送制御手段 27 優先度保持手段 32 要求度保持手段 33 データ比較手段 34 転送カウント手段 42 転送検出手段 45 転送分割手段

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 各種データを伝送するデータバスにより
    各種データを記憶するメモリと各種データを入出力する
    入出力装置と各種のデータ処理を実行するプロセッサと
    に接続され、ダイレクト転送の制御データが設定される
    と前記データバスを占有して前記プロセッサを介在させ
    ることなく前記メモリと前記入出力装置との間で各種デ
    ータをダイレクト転送させるダイレクトメモリアクセス
    コントローラにおいて、複数のダイレクト転送の制御デ
    ータが設定されるデータ保持手段を設け、設定された制
    御データによる複数のダイレクト転送の優先度を保持す
    る優先度保持手段を設け、保持された優先度に従って複
    数のダイレクト転送の順番を制御する転送制御手段を設
    けたことを特徴とするダイレクトメモリアクセスコント
    ローラ。
  2. 【請求項2】 データ保持手段は、ダイレクト転送の実
    行中も新規の制御データの設定を受け付け、優先度保持
    手段は、ダイレクト転送の実行中に新規の制御データが
    設定されると、実行中のダイレクト転送も含めて優先度
    を保持し、転送制御手段は、実行中のダイレクト転送も
    含めて優先度に従って複数のダイレクト転送の順番を制
    御することを特徴とする請求項1記載のダイレクトメモ
    リアクセスコントローラ。
  3. 【請求項3】 ダイレクト転送の一時中止の要求度を保
    持する要求度保持手段を設け、転送制御手段は、複数の
    ダイレクト転送を連続して実行する場合に、次のダイレ
    クト転送の優先度が一時中止の要求度より低いと、その
    開始を一時中止してデータバスをプロセッサに一時開放
    することを特徴とする請求項1記載のダイレクトメモリ
    アクセスコントローラ。
  4. 【請求項4】 各種データを伝送するデータバスにより
    各種データを記憶するメモリと各種データを入出力する
    入出力装置と各種のデータ処理を実行するプロセッサと
    に接続され、ダイレクト転送の制御データが設定される
    と前記データバスを占有して前記プロセッサを介在させ
    ることなく前記メモリと前記入出力装置との間で各種デ
    ータをダイレクト転送させるダイレクトメモリアクセス
    コントローラにおいて、複数のダイレクト転送の制御デ
    ータが設定されるデータ保持手段を設け、設定された制
    御データに従って複数のダイレクト転送を順番に実行さ
    せる転送制御手段を設け、連続して実行される複数のダ
    イレクト転送のデータ数をカウントする転送カウント手
    段を設け、複数個の前記入出力装置に対して順番に実行
    したダイレクト転送のデータ数と所定の基準値とを比較
    するデータ比較手段を設け、基準値をデータ数が超過し
    ていると次の前記入出力装置のダイレクト転送の開始を
    一時中止して占有した前記データバスを前記プロセッサ
    に一時開放する中止制御手段を設けたことを特徴とする
    ダイレクトメモリアクセスコントローラ。
  5. 【請求項5】 データ比較手段は、実行中のダイレクト
    転送も含めてデータ数と所定の基準値とを比較し、中止
    制御手段は、基準値にデータ数が到達すると実行中のダ
    イレクト転送も一時中止することを特徴とする請求項4
    記載のダイレクトメモリアクセスコントローラ。
  6. 【請求項6】 各種データを伝送するデータバスにより
    各種データを記憶するメモリと各種データを入出力する
    入出力装置と各種のデータ処理を実行するプロセッサと
    に接続され、ダイレクト転送の制御データが設定される
    と前記データバスを占有して前記プロセッサを介在させ
    ることなく前記メモリと前記入出力装置との間で各種デ
    ータをダイレクト転送させるダイレクトメモリアクセス
    コントローラにおいて、複数のダイレクト転送の制御デ
    ータが設定されるデータ保持手段を設け、設定された制
    御データに従って複数のダイレクト転送を順番に実行さ
    せる転送制御手段を設け、これから連続して実行される
    複数のダイレクト転送のデータ数を検出する転送検出手
    段を設け、複数個の前記入出力装置に対して順番に実行
    するダイレクト転送のデータ数と所定の基準値とを比較
    するデータ比較手段を設け、基準値をデータ数が超過し
    ない単位に複数のダイレクト転送を分割する転送分割手
    段を設け、連続して実行される複数のダイレクト転送を
    分割の単位で一時中止して前記データバスを前記プロセ
    ッサに一時開放する中止制御手段を設けたことを特徴と
    するダイレクトメモリアクセスコントローラ。
JP1861296A 1995-12-14 1996-02-05 ダイレクトメモリアクセスコントローラ Pending JPH09223102A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1861296A JPH09223102A (ja) 1995-12-14 1996-02-05 ダイレクトメモリアクセスコントローラ

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP7-325318 1995-12-14
JP32531895 1995-12-14
JP1861296A JPH09223102A (ja) 1995-12-14 1996-02-05 ダイレクトメモリアクセスコントローラ

Publications (1)

Publication Number Publication Date
JPH09223102A true JPH09223102A (ja) 1997-08-26

Family

ID=26355314

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1861296A Pending JPH09223102A (ja) 1995-12-14 1996-02-05 ダイレクトメモリアクセスコントローラ

Country Status (1)

Country Link
JP (1) JPH09223102A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6775716B2 (en) 2000-05-19 2004-08-10 Matsushita Electric Industrial Co., Ltd. High-performance DMA controller
EP1503292A3 (en) * 2003-08-01 2005-03-23 Matsushita Electric Industrial Co., Ltd. DMA controller with bus occupation time limitation and sets of DMA parameters for a plurality of logical processors
US7038737B1 (en) 1998-11-26 2006-05-02 Matsushita Electric Industrial Co., Ltd. Image processing device
JP2006119824A (ja) * 2004-10-20 2006-05-11 Canon Inc ダイレクトメモリアクセス装置及びその制御方法
JP2008176482A (ja) * 2007-01-17 2008-07-31 Hitachi Ltd 仮想計算機システム
US7506114B2 (en) 2005-05-09 2009-03-17 Kabushiki Kaisha Toshiba Data transfer device which executes DMA transfer, semiconductor integrated circuit device and data transfer method
US9965825B2 (en) 2014-10-31 2018-05-08 Samsung Electronics Co., Ltd. Image processing circuit and methods for processing image on-the-fly and devices including the same
EP3544247B1 (en) * 2018-03-20 2023-05-24 Kabushiki Kaisha Toshiba Transfer control device, transfer control method and computer-readable medium

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7038737B1 (en) 1998-11-26 2006-05-02 Matsushita Electric Industrial Co., Ltd. Image processing device
US6775716B2 (en) 2000-05-19 2004-08-10 Matsushita Electric Industrial Co., Ltd. High-performance DMA controller
EP1503292A3 (en) * 2003-08-01 2005-03-23 Matsushita Electric Industrial Co., Ltd. DMA controller with bus occupation time limitation and sets of DMA parameters for a plurality of logical processors
US7305499B2 (en) 2003-08-01 2007-12-04 Matsushita Electric Industrial Co., Ltd. DMA controller for controlling and measuring the bus occupation time value for a plurality of DMA transfers
JP2006119824A (ja) * 2004-10-20 2006-05-11 Canon Inc ダイレクトメモリアクセス装置及びその制御方法
US7506114B2 (en) 2005-05-09 2009-03-17 Kabushiki Kaisha Toshiba Data transfer device which executes DMA transfer, semiconductor integrated circuit device and data transfer method
JP2008176482A (ja) * 2007-01-17 2008-07-31 Hitachi Ltd 仮想計算機システム
US9965825B2 (en) 2014-10-31 2018-05-08 Samsung Electronics Co., Ltd. Image processing circuit and methods for processing image on-the-fly and devices including the same
EP3544247B1 (en) * 2018-03-20 2023-05-24 Kabushiki Kaisha Toshiba Transfer control device, transfer control method and computer-readable medium

Similar Documents

Publication Publication Date Title
JP3055917B2 (ja) データ転送制御装置
JP3525518B2 (ja) データ転送装置
US6115767A (en) Apparatus and method of partially transferring data through bus and bus master control device
JP2005293427A (ja) データ転送処理装置及びデータ転送処理方法
JPS6115260A (ja) デ−タ処理装置
JP2865131B2 (ja) データ転送方式
JP2018106583A (ja) 半導体装置
JPH08171528A (ja) データ処理装置
JPH05282242A (ja) バス制御方式
JPH07219887A (ja) Dma転送制御装置
JPH08137703A (ja) タスク切替装置
JPH08249269A (ja) Dma転送制御方法及びdma転送制御装置
JPH0340150A (ja) ジョブのプライオリティに応じたスワップ領域確保制御方式
JP2005215953A (ja) 情報処理装置
JPH05282243A (ja) バスマスター装置及び該装置を用いた電子機器
JPH05134980A (ja) バスシステム
JP2000315187A (ja) メモリ制御装置とメモリ制御方法とその記録媒体
JP3678537B2 (ja) データ転送方法及び装置
JPS62245462A (ja) メモリアクセス制御装置
JPH10116245A (ja) Dma制御装置
JPH02219157A (ja) コンピュータシステム内のバスアービタ
JPH09297730A (ja) バスを介したデータ転送方法およびバスマスタ制御装置
JPS60100251A (ja) ダイレクトメモリアクセス制御方式
JPH09204409A (ja) ロック転送制御方式
JPH0773136A (ja) コンピュータシステムの動作方法