JPH11143812A - Dma回路 - Google Patents

Dma回路

Info

Publication number
JPH11143812A
JPH11143812A JP30246197A JP30246197A JPH11143812A JP H11143812 A JPH11143812 A JP H11143812A JP 30246197 A JP30246197 A JP 30246197A JP 30246197 A JP30246197 A JP 30246197A JP H11143812 A JPH11143812 A JP H11143812A
Authority
JP
Japan
Prior art keywords
permission
transfer
dma
circuit
forced
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
JP30246197A
Other languages
English (en)
Inventor
Tadao Mizoguchi
督生 溝口
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP30246197A priority Critical patent/JPH11143812A/ja
Publication of JPH11143812A publication Critical patent/JPH11143812A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 複数のチャネルを平行に活性化するためのデ
ータ転送をDMA転送を用いて行う事を可能とし、場合
によっては特定のチャネルへ集中転送を可能とすること
で、パイプラインシステムでのデータ転送効率の向上を
図れるDMA回路を提供することを目的とする。 【解決手段】 複数のDMAコントローラ102,10
3と、複数のDMAコントローラ102,103に対し
て排他的な許可を与えるハードウェアで構成された許可
回路104とで構成される電子回路において、許可回路
104が任意のDMAコントローラ102,103に対
して転送実行中に既に与えてある許可を強制的に中断す
る強制許可中断手段と、強制許可中断を受けたDMAコ
ントローラ102,103が中断時の転送情報を保存す
る中断時情報保持手段を備えることで、許可回路104
による強制中断での転送中断を実現する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はメモリとデバイス間
のデータのやり取りを実行するDMA回路に関するもの
である。
【0002】
【従来の技術】CPU(中央演算処理装置)に代わっ
て、DRAM等のメモリと演算処理を事項するチャネル
との間のデータ転送を効果的に行うのにDMA(ダイレ
クト・メモリ・アクセス)がよく用いられる。
【0003】しかしながら、パイプライン処理により複
数の種類の演算処理を平行に実現する場合には、一つの
DMAコントローラによってチャネルをコントロールす
るだけでは、チャネルでの処理が終了するまで他のチャ
ネルをアクティブにはできないという問題がある。
【0004】この場合にはDMAコントローラを複数用
意して、チャネルをその複数のDMAコントローラによ
り制御すれば、平行したデータ転送が可能になる。しか
しながら、この場合でも複数のDMAコントローラへの
許可の切り替えにおいて、適切な制御ができないと一つ
の処理シーケンスがエラーのまま次のDMAコントロー
ラがデータ転送を行ってしまうことになる。つまりこの
様な場合に適切な中断、再開を実行するDMAコントロ
ーラでなければ前記の様な複数のチャネルを平行に活性
化することができないことになる。
【0005】
【発明が解決しようとする課題】以上のように並行処理
を目的とする複数のチャネルとのDMA転送は従来のD
MA回路ではできないという問題があった。更に、活性
化するDMAコントローラをただ切り替えるだけでは、
特定のチャネルへのデータの集中転送ができないという
問題もあった。
【0006】そこで本発明は、複数のチャネルを平行に
活性化するためのデータ転送をDMA転送を用いて行う
事を可能とし、場合よっては特定のチャネルへ集中転送
を可能とすることで、パイプラインシステムでのデータ
転送効率の向上を実現できるDMA回路を提供すること
を目的とする。
【0007】
【課題を解決するための手段】上記課題を解決するため
に本発明は、DRMA等のメモリと演算処理チャネルと
の間でデータのやり取りを行わせるDMA回路であっ
て、複数のDMAコントローラと、これらのDMAコン
トローラに対して排他的な許可を与えるハードウェアで
構成された許可回路とで構成され、許可回路が任意のD
MAコントローラに対して転送実行中に既に与えてある
許可を強制的に中断する強制許可中断手段と、強制許可
中断を受けたDMAコントローラが中断時の転送情報を
保存する中断時情報保持手段を備えることで、許可回路
による強制中断での転送中断を可能とする。
【0008】この構成により、パイプラインシステムで
のデータ転送効率の向上を実現できるDMA回路を得る
ことができる。
【0009】
【発明の実施の形態】請求項1の発明は、DRMA等の
メモリと演算処理チャネルとの間でデータのやり取りを
行わせるDMA回路であって、複数のDMAコントロー
ラと、これらのDMAコントローラに対して排他的な許
可を与えるハードウェアで構成された許可回路とで構成
され、許可回路が任意のDMAコントローラに対して転
送実行中に既に与えてある許可を強制的に中断する強制
許可中断手段と、強制許可中断を受けたDMAコントロ
ーラが中断時の転送情報を保存する中断時情報保持手段
を備えることで、許可回路による強制中断での転送中断
を可能とする。
【0010】請求項2の発明は、許可回路からの強制中
断を受けたDMAコントローラが、強制許可中断後一定
の時間許可回路に対して許可要求を出さない一定時間許
可不要求手段を手段を備えることで、許可回路がDMA
転送の権利を他のDMAコントローラに譲り渡す処理の
処理時間を担保する。
【0011】請求項3の発明は、DMAコントローラが
強制許可中断を受け一定時間後に許可要求を出す許可要
求手段と、許可要求を受けた許可回路がDMAコントロ
ーラに対して許可を出す許可付与手段と、許可を受けた
DMAコントローラが中断時の転送情報を基に転送を再
開する転送再開手段とを備えることで、一旦強制中断さ
れたDMA転送の再開を可能とする。
【0012】請求項4の発明は、前記強制中断と前記再
開を繰り返し複数のDMAコントローラを切り替えるこ
とで、複数のチャネルへのデータの転送を平行に行い、
複数のチャネルでの並行処理をする。
【0013】請求項5の発明は、強制許可中断を受けて
も転送中断しないモードであることを設定するモード設
定手段と、設定がされている場合に強制許可中断を受け
たDMAコントローラが転送中断を行わないことをハー
ドウェアで判断する判断手段と、判断の時には任意の期
間は許可中断後も転送を続行する転送続行手段とを備え
ることで特定のチャネルの集中転送を他よりも優先する
ことを対応可能にした。
【0014】上記構成により、複数のチャネルを平行に
活性化するためのデータ転送をDMA転送を用いて行う
事を可能とし、場合よっては特定のチャネルへ集中転送
を可能とすることで、パイプラインシステムでのデータ
転送効率の向上を実現できるDMA回路を得ることがで
きる。
【0015】(実施の形態1)図1は本発明の実施の形
態1のDMA回路の機能ブロック図、図2は同DMA回
路の動作のフローチャート、図3は同DMAコントロー
ラの回路図、図4は同許可回路とDMAコントローラと
の回路図、図5は同DMA回路のタイミングチャートで
ある。
【0016】図1において、101はDRAM等のメモ
リであり、データ転送の転送元、もしくは転送先にな
る。105〜108はDMAコントローラによってコン
トロールされるチャネルであり、チャネル105,10
6はDMAコントローラ102に、チャネル107,1
08はDMAコントローラ103にぶら下がっている。
これらのチャネルの切り分けは一つの共通したジャンル
毎で区分される。たとえば、チャネル105,106は
画像処理に関する演算チャネル群でありDMAコントロ
ーラ102でデータ転送が制御され、チャネル107,
108は音声処理に関する演算チャネル群であるといっ
た区分がなされる。DMA転送を制御するDMAコント
ローラ102,103は、本実施の形態では2つある
が、その数はシステムによって任意である。
【0017】104はDMAコントローラ102,10
3を制御する許可回路であり、各DMAコントーラ10
2,103からの転送開始要求信号111,112に従
い、転送開始許可信号113,114を与える。(それ
ぞれの信号は、REQ,ACKとする。)すなわち、各
DMAコントローラ102,103はCPU等の命令に
よりデータ転送が命じられてもそれだけでデータ転送を
開始するのではなく、転送設定されたことでまず転送開
始要求信号111,112を許可回路104に出力し、
許可回路104が転送許可の信号を与えてはじめてデー
タ転送を開始する。つまり、この許可回路からの転送開
始許可信号113,114がDMA転送の強制中断や、
再開を司る。以上が全体の機能ブロック図の説明であ
る。
【0018】次にDMAコントローラ102,103の
詳細を図3の回路図を用いて説明する。301はDMA
コントローラであり、転送を行うにはCPUがROM等
にかかれているプログラムをフェッチしてアドレスとデ
ータによるアクセスを行う。これらがCPUからのアド
レス信号(CPU_ADDRESS[15:0])であ
り、CPUからのデータ信号(CPU_DATA[1
5:0])である。302はこれらのCPUからのアド
レス信号に従って動作するアドレスデコーダであり、ア
ドレスデコードされたことを受け、CPUからのデータ
がCPU_DATAのバスより入力し、DMA転送に必
要な設定がなされる。まずメモリのスタートアドレスが
初期設定され、回線303(アドレスデータ)を通じて
レジスタ305に書き込まれる。同様に転送数が、回線
304(転送数データ)を通じてレジスタ306に書き
込まれる。これらのレジスタ305,306へはクロッ
クとリセットが供給される。アドレスは転送に従いイン
クリメント309され、転送数はディクリメント310
され残転送数としての表示となる。
【0019】さらにアドレスデコードによりメモリへの
アクセス信号が一旦内部信号として回線307(メモリ
アクセス)に示すように生成され、同じくチャネルへの
データの書き込み、もしくはデータ読み出しの為のイネ
ーブル信号の内部信号308が生成される。
【0020】これだけの設定がされたところで転送命令
がCPUから下されると、316に示すように許可回路
への転送開始要求信号316が生成され、そのままRE
Qとして出力される。またアドレスは314の論理積に
ACK315が入力することでメモリのアドレスとして
ADDRESSとなって出力される。
【0021】ACKによって転送がはじめるのであるか
ら、309,310のインクリメントとディクリメント
はACKが返ってはじめて動作開始である。動作が開始
し転送が続行されるが、ディクリメント310において
残転送数が0になったと判定されたら、転送は終了であ
るから、該終了状態が終了判定部311において判定さ
れ終了信号317が生成され、論理積(論理回路)31
2,313,314に入力する。この終了信号によりM
EMORY_ACCESS,ENABLE,ADDRE
SS,REQの出力が停止される。以上がDMAコント
ローラの説明である。
【0022】次に図4によって許可回路とDMAコント
ローラとの相関関係を示す。DMAコントローラからの
REQの入力がREQ処理部401に対してあり、RE
Q処理部401内部で判断した後に、スイッチ402に
おいてREQに対してのACKを切り替えて、DMAコ
ントローラ102へのACK1,DMAコントローラへ
のACK2として出力される。REQの処理にはいろい
ろな方法があるが、本発明での対象外なので説明は割愛
する。
【0023】以上のDMAコントローラと許可回路の基
本的な動きについては図2のフローチャートを用いて説
明する。回路動作のシーケンスを説明するためにフロー
チャートを用いる。まずCPU等により転送に必要な情
報を設定する。ST201〜ST203で示すように、
開始するメモリのアドレス、転送数、転送先あるいは転
送元であるチャネルの指定等が設定される。ST204
に示される状態のようにレジスタ書き込みなどでDMA
コントローラにDMA転送に必要な情報が設定される。
【0024】次いでこの情報をST205に示すように
DMAコントローラはストックしておき、この内容を基
にDMA転送を実行する。転送終了により該設定内容が
クリアされるまで設定条件は保持されるので、転送命令
の状態も終了時までは保持される。
【0025】転送命令の状態である場合にDMAコント
ローラはST206に示すように許可回路に対して転送
開始要求信号を出力する。111,112である。該要
求にしたがって許可回路はST207に示すように許可
信号を受信して、DMA転送を開始する。
【0026】まずST208に示すように、メモリアク
セスとメモリアドレスを出力し、メモリの中でのデータ
の取り出し位置、あるいは格納位置を指定する。次いで
ST209に示すようにチャネルへの入出力要求を出力
し、設定されたチャネルに対してのデータ転送を開始す
る。データ転送が始まるとメモリへのアドレス出力をイ
ンクリメントしていく。設定転送数分の処理が終わるま
でこれは継続され、データ転送が続行される。これがS
T210,ST211の状態である。
【0027】設定転送数分の処理が終了すれば、ST2
12に示すように終了処理を行う。終了処理は具体的に
は、内部設定のクリア、転送開始要求信号の立ち下げと
それに伴う転送開始許可信号の立ち下げ、転送実行の終
了である。以上がDMAコントローラの基本的な説明で
ある。
【0028】次に許可回路104による強制中断につい
て図5のタイミングチャートを用いて説明する。タイミ
ングチャートの上から順に、クロック(CLK)、転送
開始要求信号(REQ)、転送開始許可信号(AC
K)、残転送数、メモリアドレス(ADDRESS)、
チャネルへのイネーブル(ENABLE)、メモリへの
アクセス(MEMORY_ACCESS)、設定されて
いるDMA転送命令状態(DMA_START)、AC
Kのディレイ信号(ACK_DELAY)、REQのア
クティブ制御信号(REQ_DOWN)の信号である。
【0029】CPU等により設定が行われたことでDM
Aコントローラは許可回路に対して転送開始要求信号
(REQ)を出力する。これが501で示すタイミング
である。この転送開始要求を受けた許可回路はDMAコ
ントローラに対して状態が整っていれば転送開始許可信
号(ACK)を返す。これが502に示すタイミングで
ある。もちろんこのREQからACKまでにかかる時間
はシステムにより任意である。
【0030】このACKを受けたDMAコントローラは
データ転送を開始する。メモリアクセスをアクティブに
し、メモリアドレスを出力しインクリメントする。その
インクリメントに応じて残転送数をディクリメントし、
チャネルへのイネーブルはメモリアドレスが確定するタ
イミングでアクティブにされる。(システムの構成によ
るが本実施の形態ではチャネルへのイネーブルはメモリ
アクセスに比べて1クロック遅れる)これらが503〜
506に示すタイミングである。507で示す期間がア
クティブにされた任意のDMAコントローラが、設定さ
れているチャネルとメモリとのデータ転送を実行してい
る期間である。
【0031】しかしながら転送を実行している最中に、
他のDMAコントローラにより制御される他のチャネル
を活性化してデータ転送をしなければならない要因が起
こることがある。この場合には507で示す本DMAコ
ントローラでのデータ転送を強制的に中断する必要があ
る。
【0032】これを実現するのに、許可回路は強制的に
アクティブにしてあったACKを立ち下げる。512に
示すタイミングである。このACKの強制中断を受けた
DMAコントローラはそれ以上のデータ転送を続けるこ
とはできないのであるから、511に示すようにREQ
を下げ要求を落とす。さらに、再び許可が下りることを
期待して、該中断時の設定情報である残転送数や次にア
クセスするメモリアドレス等を保存する。レジスタ30
5,306等に情報を保存して置くことになる。513
で示すタイミングで残転送数を保存しており、514で
示すタイミングでアドレスのインクリメントを停止して
いる。
【0033】また、DMA転送を中断するのであるか
ら、516に示すようにメモリへのアクセスを停止し、
515に示すようにチャネルへのイネーブルも下げてメ
モリとチャネルとの接続をきる。これらの処理がされて
いる状態が517に示す中断期間である。
【0034】以上のように、許可回路からDMAコント
ローラへの転送開始許可信号を強制的に落とし、該強制
中断を受けたところで中断時の情報を保存し、メモリア
クセス、チャネルへのイネーブル、アドレスのインクリ
メント等を停止する処理を行うことで、許可回路による
強制中断でのDMA転送中断を可能とする。
【0035】(実施の形態2)実施の形態1によるDM
A回路であれば許可回路による任意のDMAコントロー
ラのデータ転送の強制中断を実現することが可能となっ
た。しかしながら強制中断ができたとしても、DMA回
路にはまだデータ転送の為の設定条件が残っており、D
MAコントローラ自体はまだ許可回路に対して転送開始
要求信号を出力しようとしてしまう。強制中断後にすぐ
さま転送開始要求を出力すると、許可回路はその転送開
始要求信号により他のDMAコントローラへの許可を出
せない状態になってしまう。そこで強制中断が入った場
合にはDMAコントローラは許可回路に対しての転送開
始要求信号の出力を一定時間止めることで、許可回路が
他のDMAコントローラをアクセスするための準備時間
を担保してやる。
【0036】図6は本発明の実施の形態2のDMAコン
トローラの回路図、図7は同一定時間許可不要求手段の
回路図である。図3と同一の要素には同一符号を付すこ
とにより説明は省略する。
【0037】601は一定時間許可不要求手段である。
602はアドレスデコードにおいてDMA転送命令が認
識された結果生成される内部信号でありDMA転送命令
状態であるDMA_START信号である。本来ならば
DMA_START==1であれば、そのままREQ信
号も1として出力される。
【0038】一定時間許可不要求手段601について図
7を用いて説明する。705はACK信号のディレイ信
号ACK_DELAYをつくるシフトレジスタであり、
本実施の形態2では3クロックのディレイを作ってい
る。701は論理積であり、(ACK==0)かつ(A
CK_DELAY==1)で真である。この出力信号7
04がREQ_DOWNであり、論理積702によって
示すようにREQ_DOWN==1の期間はDMA_S
TARTが1であってもREQが0出力となる。
【0039】タイミングチャート図5で説明する。図3
での512によってACKが強制的に下げられて強制中
断モードに入る。しかしながらこのACKの下がりは強
制的なもので、終了状態ではないため、該DMAコント
ローラ内部ではいまだ転送命令の設定が残っており、5
08に示すようにDMA_STARTはACKが下がっ
てもアクティブの状態である。そのため、ACKが下が
り、それを受けて511に示すようにREQが下がった
としても、次のクロックエッジでは該DMA_STAR
Tを基にREQ信号は再びアクティブになってしまう。
【0040】これだと許可回路の方ではREQが1クロ
ック期間未満しかノンアクティブではないので他のDM
Aコントローラに許可を切り替えるREQ処理部401
内部での処理が間に合わず、該REQに縛られて再び同
一のDMAコントローラに許可を与えてしまい、他のD
MAコントローラへの切り替えができない事になる。
【0041】そこでACKの立ち下げの後、該ACKの
任意サイクル幅のディレイ信号ACK_DELAYを内
部で生成し、(ACK==0)且つ(ACK_DELA
Y==1)の成立する期間を510に示すREQ_DO
WNという内部信号を作る。該REQ_DOWNがアク
ティブの期間はREQを落とし続けるとすれば、ACK
_DELAYで作ったディレイサイクルの期間はREQ
の出力がないという担保期間が作られる。511から5
18の間がREQの立たない担保期間である。
【0042】以上のようにACKの立ち下げによる強制
中断時に、内部信号REQ_DOWNを生成しREQの
アクティブ制御を行うことで、許可回路が他のDMAコ
ントローラに対しての許可切り替えを処理する時間を担
保することを可能とする。
【0043】(実施の形態3)図8は本発明の実施の形
態3のDMA回路のタイミングチャートである。タイミ
ングチャートの上から順に、クロック(CLK)転送開
始要求信号(REQ)、残転送数、メモリアドレス(A
DDRESS)、チャネルへのイネーブル(ENABL
E)、メモリへのアクセス(MEMORY_ACCES
S)、設定されているDMA転送命令状態(DMA_S
TART)の信号である。
【0044】801はACKの強制中断であり、これに
より実施の形態2で説明したREQ_DOWN802が
生成されREQの制御が行われる。REQは803で立
ち下がり、809で再びアクティブになる。803から
809の期間に許可回路は他のDMAコントローラへの
許可を受け渡す処理の時間を担保される。
【0045】801の強制中断を受けてDMAコントロ
ーラは実施の形態1で説明したように、中断処理を行
う。804〜807に示す内容である。ここでACKが
801で立ち下がっても、これは転送終了を受けたもの
ではないのでコントローラ内部での設定情報はクリアさ
れない。よって808に示すようにDMA_START
のアクティブ状態は維持される。
【0046】許可回路は強制中断の後、任意の時間後に
再び転送開始許可を本DMAコントローラに与える。8
10で示すものである。これを受けてDMAコントロー
ラは再びデータ転送を開始する。814で示すようにメ
モリへのアクセスを再開し、813に示すようにチャネ
ルへのイネーブルをアクティブにする。アドレスのイン
クリメントも再開させるが、中断時直前に出力したアド
レスに対応するデータのチャネルへの転送は担保されて
いないので、813に示すように先にチャネルへのイネ
ーブルをアクティブにし、中断直前に出力したアドレス
に対応するデータの転送を実行した後に、812で示す
タイミング改めて次のアドレスへインクリメントする。
残転送数のディクリメントも同様のタイミングである8
11から再開する。こうして中断時の続きとしてのデー
タ転送を再開する。
【0047】以上のように、一旦強制中断をされたDM
Aコントローラが任意時間後に転送開始要求を出し許可
を得て、中断時の情報を基に正確なタイミングでデータ
転送を再開する事で、強制中断されていたDMA転送の
再開が可能となる。
【0048】(実施の形態4)図9は本発明の実施の形
態4のDMA回路の機能ブロック図、図10は同DMA
回路の動作のフローチャートである。本実施の形態4で
はハッチングしてある105と107の2つのチャネル
を平行に動かすのにDMA転送を用いる事とする。実施
の形態1〜3で説明した各要素を総合して用いることで
複数のチャネルを並行に動かすためのデータ転送が可能
になる。この流れを図10のフローチャートにより説明
する。
【0049】まずDMAコントローラ102に転送設定
をする。ST1001の状態である。図には示していな
いが、設定に従いDMAコントローラ102の許可回路
に対して転送開始要求を出力する許可回路は該転送開始
要求を受けてDMAコントローラ102に対して転送開
始許可を与える。該許可に従ってDMAコントローラ1
02はチャネル105に対してDMA転送を開始する。
ST1002〜ST1004に示す状態である。この転
送中にDMAコントローラ103に対しての転送設定が
CPU等によりなされた場合には、DMAコントローラ
103も許可回路に対して転送開始要求を出す。ST1
005の状態である。許可回路はこれを見てDMAコン
トローラ103に対して許可を切り替えることを判断
し、ST1006に示すようにDMAコントローラ10
2に強制中断を与える。
【0050】この強制中断を受けたDMAコントローラ
102は実施の形態1で説明したように中断処理を行
う。チャネル105では転送されていたデータに対して
の処理を実行し、それが終われば新たにデータ転送がさ
れるまで待機する。ST1007の状態である。さらに
DMAコントローラ102は転送開始要求を一定期間下
げるので、その間に許可回路は処理を実行してDMAコ
ントローラ103に転送開始許可を与える。ST100
8に示す状態である。該許可を受けST1009に示す
ようにDMAコントローラ103はチャネル107に対
してデータ転送を開始する。これによりチャネル105
での処理が全て終了する前にチャネル107での処理開
始が可能になる。たとえばチャネル107がチャネル1
05の結果を受けて演算をする様な関係にある場合、チ
ャネル105での処理がパケットデータ全てに対して終
了するのを待たずしてチャネル107での処理をはじめ
たい場合などにこのような流れが起こる。
【0051】次いでチャネル105での処理を再びしな
ければいけない状態になれば、ST1010で示すよう
にDMAコントローラ103を強制中断し、ST101
1に示すように再びDMAコントローラ102に対して
再度の転送許可を与える。DMAコントローラ102は
実施の形態3での説明にあるようにDMA転送を再開す
る。ST1012である。
【0052】場合によってはST1012の状態の後、
ST1006からST1012の状態を繰り返す事も考
えられる。
【0053】このようにしてST1013に示すように
DMAコントローラ102によるチャネル105への転
送が終了し、再びDMAコントローラ103に転送許可
を与えてDMAコントローラ103によるDMA転送も
終了する。以上のように強制中断と、再開とを任意に繰
り返し複数のチャネルへのデータ転送を平行に行うこと
で、チャネルの並行活性が可能となる。
【0054】(実施の形態5)実施の形態1から実施の
形態4ではDMAコントローラを切り替えてデータ転送
を切り替えて実行する事を説明してきたが、場合によっ
ては特定のチャネルへ集中転送を実行したい場合があ
る。実施の形態5ではこの事について説明する。
【0055】図11は本発明の実施の形態5のDMAコ
ントローラの回路図、図12は同強制続行判断手段の回
路図、図13は同DMA回路のタイミングチャートであ
る。1101は強制中断が入っても集中転送を続行する
ための処理を行う強制続行判断手段である。1102は
アドレスデコーダでのデコード結果からの信号で、強制
続行を行うモード認識の為のモード信号(MODE)で
あり602は実施の形態2,3で説明したDMA転送命
令状態を示す信号であるDMA_STARTである。
【0056】許可回路からの転送開始許可信号ACKが
返答される事で転送が開始され、実施の形態1〜4で示
したようにACKが強制的に立ち下げられると転送を中
断するのだが、本実施の形態では、ACK信号が強制的
に下げられても、1101の強制続行判断手段において
判定された場合には、転送を強制続行する。1101で
強制続行が判断された強制続行の為のイネーブル出力は
KEEPという信号として出力され、312〜314の
論理積と、インクリメント309,ディクリメント31
0に入力する。
【0057】1101の強制続行手段については図1
2、図13を用いて説明する。図12は1101の回路
図である。アドレスデコーダ302からのMODE信号
とDMA_START信号がある。1102と602で
ある。1201は論理積であり、1103が論理積の出
力であり、強制続行を制御する信号KEEPである。生
成条件はACK==0かつMODE==1かつDMA_
START==1である。このKEEP信号はACKの
強制立ち下げがあった場合でもDMA転送を続行するた
めのイネーブル信号になる。
【0058】更にKEEPはDMA_STARTととも
に論理和1202に入力して、いずれか一方が真の時に
REQが1で出力される事になり強制立ち下げ時のRE
Qのアクティブ保持を行う。図11に示すようにこのK
EEP信号はインクリメント309、ディクリメント3
10、論理積312〜314に入力し、DMA転送の続
行を担保する。
【0059】続いて図13のタイミングチャートで説明
する。タイミングチャートの上から順に、クロック(C
LK)、転送開始要求信号(REQ)、転送開始許可信
号(ACK)、強制中断でも転送状態を保持する信号
(KEEP)、残転送数、メモリアドレス(ADDRE
SS)、チャネルへのイネーブル(ENABLE)、メ
モリへのアクセス(MEMORY_ACCESS)、集
中転送のモードを示す設定信号(MODE)の各信号で
ある。
【0060】DMA転送が実行されている間に1302
に示すように許可回路がACKを立ち下げて強制中断に
する。この時予め集中転送を命じる設定がなされてMO
DE信号が1308に示すようにアクティブ状態であり
続ける場合にはACKの下がりを受けてKEEP信号を
アクティブにする。1303のタイミングである。
【0061】このKEEP信号がアクティブである場合
には1301に示すようにREQを下げずに保持し、中
断処理も行わない。1304〜1307に示すようにア
ドレスのインクリメント、残転送数のディクリメント、
メモリアクセスの出力、チャネルへのイネーブルの出力
は転送状態と同じく続行する。この転送が解除されるの
はたとえば転送終了した場合や、チャネル側で転送オー
バーフローが起こりそうになって転送を中断した方がよ
い状況等が考えられる。
【0062】このように許可回路の強制中断が起こった
場合でも、集中転送の設定に従い内部信号による処理で
転送状態を続行することで、特定のチャネルへの集中転
送が可能になる。
【0063】
【発明の効果】本発明の実施の形態1のDMA回路によ
れば、許可回路からDMAコントローラへの転送開始許
可信号を強制的に落とし、該強制中断を受けたところで
中断時の情報を保存し、メモリアクセス、チャネルへの
イネーブル、アドレスのインクリメント等を停止する処
理を行うことで、許可回路による強制中断でのDMA転
送中断が可能となる効果を有する。
【0064】本発明の実施の形態2のDMA回路によれ
ば、ACKの立ち下げによる強制中断時に、内部信号を
生成し転送開始要求信号のアクティブ制御を行うこと
で、許可回路が他のDMAコントローラに対しての許可
切り替えを処理する時間を担保することを可能とする効
果を有する。
【0065】本発明の実施の形態3のDMA回路によれ
ば、一旦強制中断をされたDMAコントローラが任意時
間後に転送開始要求を出し許可を得て、中断時の情報を
基に正確なタイミングでデータ転送を再開する事で、強
制中断されていたDMA転送の再開が可能となる効果を
有する。
【0066】本発明の実施の形態4のDMA回路によれ
ば、強制中断と、再開とを任意に繰り返し複数のチャネ
ルへのデータ転送を平行に行うことで、チャネルでの並
行処理を可能にする効果を有する。
【0067】本発明の実施の形態5のDMA回路によれ
ば、許可回路の強制中断が起こった場合でも、集中転送
の設定に従い内部信号による処理で転送状態を続行する
ことで、特定のチャネルへの集中転送が可能になる。
【図面の簡単な説明】
【図1】本発明の実施の形態1のDMA回路の機能ブロ
ック図
【図2】本発明の実施の形態1のDMA回路の動作のフ
ローチャート
【図3】本発明の実施の形態1と2のDMAコントロー
ラの回路図
【図4】本発明の実施の形態1の許可回路とDMAコン
トローラとの回路図
【図5】本発明の実施の形態1と2のDMA回路のタイ
ミングチャート
【図6】本発明の実施の形態2のDMAコントローラの
回路図
【図7】本発明の実施の形態2の一定時間許可不要求手
段の回路図
【図8】本発明の実施の形態3のDMA回路のタイミン
グチャート
【図9】本発明の実施の形態4のDMA回路の機能ブロ
ック図
【図10】本発明の実施の形態4のDMA回路の動作の
フローチャート
【図11】本発明の実施の形態5のDMAコントローラ
の回路図
【図12】本発明の実施の形態5の強制続行判断手段の
回路図
【図13】本発明の実施の形態5のDMA回路のタイミ
ングチャート
【符号の説明】
101 メモリ 102 DMAコントローラ 103 DMAコントローラ 104 許可回路 105〜108 チャネル 109〜110 メモリアクセス、メモリアドレス 111〜112 転送開始要求信号 113〜114 転送開始許可信号 115 イネーブル信号 301 DMAコントローラ 302 アドレスデコーダ 303 アドレスデータ 304 転送数データ 305 レジスタ 306 レジスタ 307 メモリアクセス 308 イネーブル信号 309 インクリメント 310 ディクリメント 311 終了判定部 312 論理積 313 論理積 314 論理積 315 ACK信号 316 REQ信号 317 終了信号 401 REQ処理部 402 スイッチ 601 一定時間許可不要求手段 602 DMA_START信号 701 論理積 702 論理積 704 REQ_DOWN信号 705 シフトレジスタ 1101 強制続行判断手段 1102 MODE信号 1103 KEEP信号 1201 論理積 1202 論理和

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】DRMA等のメモリと演算処理チャネルと
    の間でデータのやり取りを行わせるDMA回路であっ
    て、複数のDMAコントローラと、これらのDMAコン
    トローラに対して排他的な許可を与えるハードウェアで
    構成された許可回路とで構成され、許可回路が任意のD
    MAコントローラに対して転送実行中に既に与えてある
    許可を強制的に中断する強制許可中断手段と、強制許可
    中断を受けたDMAコントローラが中断時の転送情報を
    保存する中断時情報保持手段を備えることで、許可回路
    による強制中断での転送中断を可能とすることを特徴と
    するDMA回路。
  2. 【請求項2】許可回路からの強制中断を受けたDMAコ
    ントローラが、強制許可中断後一定の時間許可回路に対
    して許可要求を出さない一定時間許可不要求手段を手段
    を備えることで、許可回路がDMA転送の権利を他のD
    MAコントローラに譲り渡す処理の処理時間を担保する
    ことを特徴とする請求項1記載のDMA回路。
  3. 【請求項3】DMAコントローラが強制許可中断を受け
    一定時間後に許可要求を出す許可要求手段と、許可要求
    を受けた許可回路がDMAコントローラに対して許可を
    出す許可付与手段と、許可を受けたDMAコントローラ
    が中断時の転送情報を基に転送を再開する転送再開手段
    とを備えることで、一旦強制中断されたDMA転送の再
    開を可能とすることを特徴とする請求項1または2記載
    のDMA回路。
  4. 【請求項4】前記強制中断と前記再開を繰り返し複数の
    DMAコントローラを切り替えることで、複数のチャネ
    ルへのデータの転送を平行に行い、複数のチャネルでの
    並行処理をすることを特徴とする請求項1から3の何れ
    かに記載のDMA回路。
  5. 【請求項5】強制許可中断を受けても転送中断しないモ
    ードであることを設定するモード設定手段と、設定がさ
    れている場合に強制許可中断を受けたDMAコントロー
    ラが転送中断を行わないことをハードウェアで判断する
    判断手段と、判断の時には任意の期間は許可中断後も転
    送を続行する転送続行手段とを備えることで特定のチャ
    ネルの集中転送を他よりも優先することを対応可能にし
    たことを特徴とする請求項1記載のDMA回路。
JP30246197A 1997-11-05 1997-11-05 Dma回路 Pending JPH11143812A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP30246197A JPH11143812A (ja) 1997-11-05 1997-11-05 Dma回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP30246197A JPH11143812A (ja) 1997-11-05 1997-11-05 Dma回路

Publications (1)

Publication Number Publication Date
JPH11143812A true JPH11143812A (ja) 1999-05-28

Family

ID=17909230

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30246197A Pending JPH11143812A (ja) 1997-11-05 1997-11-05 Dma回路

Country Status (1)

Country Link
JP (1) JPH11143812A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000031647A1 (fr) * 1998-11-26 2000-06-02 Matsushita Electric Industrial Co., Ltd. Dispositif de traitement d'image
JP2009277096A (ja) * 2008-05-15 2009-11-26 Fuji Xerox Co Ltd Dma制御システム、印刷装置、および転送指示プログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000031647A1 (fr) * 1998-11-26 2000-06-02 Matsushita Electric Industrial Co., Ltd. Dispositif de traitement d'image
US7038737B1 (en) 1998-11-26 2006-05-02 Matsushita Electric Industrial Co., Ltd. Image processing device
JP2009277096A (ja) * 2008-05-15 2009-11-26 Fuji Xerox Co Ltd Dma制御システム、印刷装置、および転送指示プログラム
US8065448B2 (en) 2008-05-15 2011-11-22 Fuji Xerox Co., Ltd. DMA control system, printing apparatus, transfer instruction method and computer readable medium

Similar Documents

Publication Publication Date Title
US5794072A (en) Timing method and apparatus for interleaving PIO and DMA data transfers
US6356963B1 (en) Long latency interrupt handling and input/output write posting
JP2010181989A (ja) データ処理装置
JP2012008919A (ja) 情報処理装置
JP2996183B2 (ja) Dma機能を備えたデータ処理装置
JP4642531B2 (ja) データ要求のアービトレーション
JP2729343B2 (ja) 複数個の処理装置を有する情報処理システムおよびこの情報処理システムにおいて用いられる制御装置ならびに処理装置
JPH0844559A (ja) データ処理装置およびそのオペレーション方法
JPH11143812A (ja) Dma回路
JP2005303718A (ja) マトリックス状バス接続システム
JP2005165592A (ja) データ転送装置
JP4335327B2 (ja) 調停装置および方法
JP2000132503A (ja) データ転送装置
US20050060475A1 (en) Data transfer apparatus and data transfer method
US20050060453A1 (en) Instruction supply control unit and semiconductor device
JP2522412B2 (ja) プログラマブルコントロ―ラと入出力装置の間の通信方法
JP2002175265A (ja) 直接メモリ・アクセス・コントローラを有するディジタル信号プロセッサにおける複数の構成素子間での信号群交換装置および方法
JP2000347989A (ja) データ転送方式
KR20010050234A (ko) 메모리(mem)와 결합한 데이터 처리용 디바이스
JP2004227484A (ja) 情報処理装置およびメモリアクセス調停方法
JPH05134980A (ja) バスシステム
JP2004220309A (ja) マルチプロセッサシステム
JP2001117862A (ja) マイクロコンピュータ
JPH09218859A (ja) マルチプロセッサ制御システム
JP2004021713A (ja) 半導体記憶装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Effective date: 20040622

Free format text: JAPANESE INTERMEDIATE CODE: A971007

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040629

A521 Written amendment

Effective date: 20040712

Free format text: JAPANESE INTERMEDIATE CODE: A523

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050308