[go: up one dir, main page]

JP2003256353A - DMA control device and DMA control method - Google Patents

DMA control device and DMA control method

Info

Publication number
JP2003256353A
JP2003256353A JP2002054307A JP2002054307A JP2003256353A JP 2003256353 A JP2003256353 A JP 2003256353A JP 2002054307 A JP2002054307 A JP 2002054307A JP 2002054307 A JP2002054307 A JP 2002054307A JP 2003256353 A JP2003256353 A JP 2003256353A
Authority
JP
Japan
Prior art keywords
dma
controller
request signal
signal
level
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
JP2002054307A
Other languages
Japanese (ja)
Inventor
Satoshi Watanabe
諭 渡辺
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer 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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2002054307A priority Critical patent/JP2003256353A/en
Publication of JP2003256353A publication Critical patent/JP2003256353A/en
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【課題】多少実行が遅れても支障のないDMA処理に関
しては、ある程度CPUの処理を優先して実行させる。 【解決手段】メモリ13と、このメモリ13を用いて処理を
実行するCPU12と、このCPU12を介さずに上記メモ
リ13を用いて直接処理を実行する複数のDMAコントロ
ーラ21〜24と、上記CPU12と複数のDMAコントロー
ラ21〜24との間で上記メモリ13へのアクセス権を調停す
るアービタ25と、上記複数のDMAコントローラ21〜24
中のDMAコントローラ23,24に対して設けられ、上記
アービタ25へ出力するDMA要求信号を一時的に抑制す
る抑制回路33,34とを備える。
(57) [Summary] For a DMA process that does not hinder even a slight delay in execution, the process of the CPU is executed with some priority. A memory, a CPU for executing processing using the memory, a plurality of DMA controllers for directly executing processing using the memory without passing through the CPU; An arbiter 25 for arbitrating access to the memory 13 with the plurality of DMA controllers 21 to 24;
Suppression circuits 33 and 34 are provided for the DMA controllers 23 and 24 inside, and temporarily suppress the DMA request signal output to the arbiter 25.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、CPUを介さずに
メモリと直接データの送受を行なうDMA転送制御装置
及びDMA制御方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a DMA transfer control device and a DMA control method for directly transmitting / receiving data to / from a memory without going through a CPU.

【0002】[0002]

【従来の技術】従来より一般的なコンピュータシステム
で用いられていたDMA(Direct Memory
Access)制御回路の構成の一例について図10
に示す。
2. Description of the Related Art DMA (Direct Memory) that has been conventionally used in general computer systems.
FIG. 10 shows an example of the configuration of the access control circuit.
Shown in.

【0003】同図で、DMA統括コントローラ11と、
このシステム全体の動作制御を行なうCPU(MPU)
12、及びこのCPU12のワークメモリであるメモリ
13が、アドレス(ADRS)バス、データ(DAT
A)バス、及びコントロール(CONTROL)バスに
より相互接続されている。
In FIG. 1, a DMA controller 11 and
CPU (MPU) that controls the operation of the entire system
12 and a memory 13, which is a work memory of the CPU 12, include an address (ADRS) bus and a data (DAT).
A) Interconnected by a bus and a control (CONTROL) bus.

【0004】DMA統括コントローラ11は、第1乃至
第4のDMAコントローラ(DMAC1〜4)21〜2
4とアービタ25とを有している。
The DMA controller 11 includes first to fourth DMA controllers (DMAC1 to 4) 21 to 2
4 and an arbiter 25.

【0005】第1乃至第4のDMAコントローラ21〜
24はそれぞれ、上記アドレスバス、データバス、及び
コントロールバスと接続されて上記メモリ13との間で
DMAを実施するものであり、その実施に際しては予め
アービタ25に対して要求信号REQn(n=1〜4)
を送信し、これに対してアービタ25から肯定応答信号
ACKnが得られるとDMAを開始する。
First to fourth DMA controllers 21 to 21
Reference numerals 24 are each connected to the address bus, the data bus, and the control bus to carry out the DMA with the memory 13. At the time of carrying out the DMA, the request signal REQn (n = 1) is sent to the arbiter 25 in advance. ~ 4)
, And when the arbiter 25 receives an acknowledgment signal ACKn, DMA is started.

【0006】アービタ25は、上記第1乃至第4のDM
Aコントローラ21〜24の調停動作を行なうハードウ
ェア回路であり、第1乃至第4のDMAコントローラ2
1〜24の少なくとも一つから要求信号REQnが入力
されると、その優先順位を勘案した上でCPU12に対
してDMAに伴なうバス権の要求を行なう信号BUSR
EQを送出し、これに対してCPU12から該要求に対
する肯定応答の信号BUSACKが送られてくると、該
当する第nのDMAコントローラ2nに対して肯定応答
信号ACKnを出力する。
The arbiter 25 is the first to fourth DMs.
A first to fourth DMA controller 2 is a hardware circuit that performs an arbitration operation for the A controllers 21 to 24.
When the request signal REQn is input from at least one of 1 to 24, a signal BUSR for requesting the bus right accompanying the DMA to the CPU 12 in consideration of the priority order thereof.
When the EQ is sent and the CPU 12 sends a positive response signal BUSACK to the request, the positive response signal ACKn is output to the corresponding nth DMA controller 2n.

【0007】上記のような回路構成にあって、次にその
動作について説明する。図11は、主としてDMA統括
コントローラ11のアービタ25によるDMA転送制御
の処理内容を示すものである。
In the circuit configuration as described above, its operation will be described next. FIG. 11 mainly shows the processing contents of the DMA transfer control by the arbiter 25 of the DMA general controller 11.

【0008】ここでは、例えば第1乃至第4のDMAコ
ントローラ21〜24の出力する要求信号REQ1〜4
に関して、 REQ1>REQ2>REQ3>REQ4 となる優先順位を設定するものとする。
Here, the request signals REQ1 to REQ4 output from the first to fourth DMA controllers 21 to 24, for example.
With respect to, the priority order of REQ1>REQ2>REQ3> REQ4 is set.

【0009】その処理当初にアービタ25は、第1乃至
第4のDMAコントローラ21〜24から要求信号RE
Q1〜4の少なくとも一つが入力されるのを待機し(ス
テップA01)、入力があったと判断した時点で、次に
CPU12へのバス権の要求を行なう信号BUSREQ
のレベルを“1(H)”とし(ステップA02)、これ
に対してCPU12から送られてくる肯定応答の信号B
USACKのレベルが“1”となるのを待機する(ステ
ップA03)。
At the beginning of the processing, the arbiter 25 receives the request signal RE from the first to fourth DMA controllers 21 to 24.
It waits for at least one of Q1 to Q4 to be input (step A01), and when it is determined that there is an input, a signal BUSREQ for requesting the bus right to the CPU 12 next.
Is set to "1 (H)" (step A02), and in response thereto, an affirmative response signal B sent from the CPU 12
It waits until the USACK level becomes "1" (step A03).

【0010】そして、CPU12からの信号BUSAC
Kのレベルが“1”となったと判断した時点で、上述し
た優先順位に従って第1のDMAコントローラ21から
の要求信号REQ1のレベルが“1”となっているか否
か(ステップA04)、第2のDMAコントローラ22
からの要求信号REQ2のレベルが“1”となっている
か否か(ステップA07)、第3のDMAコントローラ
23からの要求信号REQ3のレベルが“1”となって
いるか否か(ステップA10)を順次判断する。
Then, a signal BUSAC from the CPU 12
When it is determined that the K level has become "1", whether the level of the request signal REQ1 from the first DMA controller 21 is "1" according to the above-described priority order (step A04), the second DMA controller 22
Whether the level of the request signal REQ2 from the third DMA controller 23 is "1" (step A07) or the level of the request signal REQ3 from the third DMA controller 23 is "1" (step A10). Judge sequentially.

【0011】ステップA04で最も優先順位の高い第1
のDMAコントローラ21からの要求信号REQ1のレ
ベルが“1”となっていると判断した場合、この第1の
DMAコントローラ21に対する肯定応答信号ACK1
へのレベルを“1”とし(ステップA05)、アドレス
バス、データバス、及びコントロールバスを使用しての
メモリ13に対するDMA動作を開始させ、その動作が
終了して第1のDMAコントローラ21からの要求信号
REQ1のレベルが“0(L)”となるのを待機する
(ステップA06)。
The first highest priority in step A04
If it is determined that the level of the request signal REQ1 from the first DMA controller 21 is “1”, the positive acknowledgment signal ACK1 to the first DMA controller 21.
Is set to "1" (step A05), the DMA operation for the memory 13 using the address bus, the data bus, and the control bus is started, and when the operation is completed, the first DMA controller 21 It waits until the level of the request signal REQ1 becomes "0 (L)" (step A06).

【0012】そして、第1のDMAコントローラ21か
らの要求信号REQ1のレベルが“0”となったと判断
した時点で、第1のDMAコントローラ21によるメモ
リ13へのDMA動作が終了したものとして、CPU1
2に対するバス権の要求を行なう信号BUSREQのレ
ベルを“0”とし(ステップA15)、これに対してC
PU12から送られてくる肯定応答の信号BUSACK
のレベルも“0”となるのを待機する(ステップA1
6)。
When it is determined that the level of the request signal REQ1 from the first DMA controller 21 has become "0", it is determined that the DMA operation to the memory 13 by the first DMA controller 21 is completed and the CPU1
The level of the signal BUSREQ for requesting the bus right for 2 is set to "0" (step A15), and C
Acknowledgment signal BUSACK sent from PU12
Waits for the level to become "0" (step A1)
6).

【0013】CPU12からの信号BUSACKのレベ
ルが“0”となると、あらためて各第1乃至第4のDM
Aコントローラ21〜24に対する肯定応答信号ACK
1〜4のレベルを一括して“0”とし(ステップA1
7)、以上で一連の処理を終了して、再び次のDMA要
求に備えるべく上記ステップA01からの処理に戻る。
When the level of the signal BUSACK from the CPU 12 becomes "0", the first to fourth DMs are newly set.
Acknowledgment signal ACK to the A controllers 21 to 24
Levels 1 to 4 are collectively set to "0" (step A1
7) Then, the series of processing is ended, and the processing is returned from step A01 to prepare for the next DMA request again.

【0014】また、ステップA04で最も優先順位の高
い第1のDMAコントローラ21からの要求信号REQ
1のレベルが“1”となっておらず、且つ上記ステップ
A07で2番目に優先順位の高い第2のDMAコントロ
ーラ22からの要求信号REQ2のレベルが“1”とな
っていると判断した場合、この第2のDMAコントロー
ラ22に対する肯定応答信号ACK2へのレベルを
“1”とし(ステップA08)、アドレスバス、データ
バス、及びコントロールバスを使用してのメモリ13に
対するDMA動作を開始させ、その動作が終了して第2
のDMAコントローラ22からの要求信号REQ2のレ
ベルが“0”となるのを待機する(ステップA09)。
In step A04, the request signal REQ from the first DMA controller 21 having the highest priority is sent.
When the level of 1 is not "1" and it is determined in step A07 that the level of the request signal REQ2 from the second DMA controller 22 having the second highest priority is "1" , The level to the acknowledge signal ACK2 for the second DMA controller 22 is set to "1" (step A08), and the DMA operation for the memory 13 using the address bus, the data bus and the control bus is started, and Second after the operation is completed
It waits until the level of the request signal REQ2 from the DMA controller 22 becomes 0 (step A09).

【0015】そして、第2のDMAコントローラ22か
らの要求信号REQ2のレベルが“0”となったと判断
した時点で、第2のDMAコントローラ22によるメモ
リ13へのDMA動作が終了したものとして、上記ステ
ップA15以下の処理を実行する。
When it is determined that the level of the request signal REQ2 from the second DMA controller 22 has become "0", it is assumed that the DMA operation to the memory 13 by the second DMA controller 22 is completed. The processing from step A15 is executed.

【0016】さらに、ステップA04,A07で優先順
位の高い第1及び第2のDMAコントローラ21,22
からの要求信号REQ1,2のレベルが共に“1”とな
っておらず、且つ上記ステップA10で3番目に優先順
位の高い第3のDMAコントローラ23からの要求信号
REQ3のレベルが“1”となっていると判断した場
合、この第3のDMAコントローラ23に対する肯定応
答信号ACK3へのレベルを“1”とし(ステップA1
1)、アドレスバス、データバス、及びコントロールバ
スを使用してのメモリ13に対するDMA動作を開始さ
せ、その動作が終了して第3のDMAコントローラ23
からの要求信号REQ3のレベルが“0”となるのを待
機する(ステップA12)。
Furthermore, in steps A04 and A07, the first and second DMA controllers 21 and 22 having a high priority order.
The level of the request signals REQ1 and REQ2 from the third DMA controller 23 having the third highest priority in step A10 is "1". If it is determined that the level of the acknowledgment signal ACK3 to the third DMA controller 23 is "1" (step A1).
1), the DMA operation for the memory 13 using the address bus, the data bus, and the control bus is started, and the operation is completed, and the third DMA controller 23
It waits until the level of the request signal REQ3 from the signal becomes "0" (step A12).

【0017】そして、第3のDMAコントローラ23か
らの要求信号REQ3のレベルが“0”となったと判断
した時点で、第3のDMAコントローラ23によるメモ
リ13へのDMA動作が終了したものとして、上記ステ
ップA15以下の処理を実行する。
Then, when it is determined that the level of the request signal REQ3 from the third DMA controller 23 becomes "0", it is assumed that the DMA operation to the memory 13 by the third DMA controller 23 is completed. The processing from step A15 is executed.

【0018】また、ステップA04,A07,A10で
優先順位の高い第1乃至第3のDMAコントローラ21
〜23からの要求信号REQ1〜3のレベルがいずれも
“1”となっていないと判断した場合には、判断するま
でもなく、優先順位が最も低い第4のDMAコントロー
ラ24からの要求信号REQ4のレベルが“1”となっ
ていることになるので、この第4のDMAコントローラ
24に対する肯定応答信号ACK4へのレベルを“1”
とし(ステップA13)、アドレスバス、データバス、
及びコントロールバスを使用してのメモリ13に対する
DMA動作を開始させ、その動作が終了して第4のDM
Aコントローラ24からの要求信号REQ4のレベルが
“0”となるのを待機する(ステップA14)。
Further, in steps A04, A07, and A10, the first to third DMA controllers 21 having a high priority are assigned.
If it is determined that none of the levels of the request signals REQ1 to REQ3 sent from the first DMA controller 24 to the first request signal REQ3 are "1", the request signal REQ4 from the fourth DMA controller 24 having the lowest priority is needless to say. Is "1", the level to the acknowledgment signal ACK4 for the fourth DMA controller 24 is set to "1".
(Step A13), address bus, data bus,
And the DMA operation for the memory 13 using the control bus is started, and the operation is completed, and the fourth DM
It waits until the level of the request signal REQ4 from the A controller 24 becomes "0" (step A14).

【0019】そして、第4のDMAコントローラ24か
らの要求信号REQ4のレベルが“0”となったと判断
した時点で、第4のDMAコントローラ24によるメモ
リ13へのDMA動作が終了したものとして、上記ステ
ップA15以下の処理を実行する。
Then, when it is determined that the level of the request signal REQ4 from the fourth DMA controller 24 has become "0", it is assumed that the DMA operation to the memory 13 by the fourth DMA controller 24 is completed. The processing from step A15 is executed.

【0020】図12は、第1のDMAコントローラ21
と第3のDMAコントローラ23とがアービタ25に対
して要求信号REQ1,3を送出した場合の各信号の動
作タイミングを例示するものである。
FIG. 12 shows the first DMA controller 21.
And the third DMA controller 23 exemplify the operation timing of each signal when the request signals REQ1 and REQ3 are sent to the arbiter 25.

【0021】図12(1)に示す第1のDMAコントロ
ーラ21からの要求信号REQ1と図12(3)に示す
第3のDMAコントローラ23からの要求信号REQ3
とが異なるタイミングで共に“1”レベルとなってい
る。
The request signal REQ1 from the first DMA controller 21 shown in FIG. 12 (1) and the request signal REQ3 from the third DMA controller 23 shown in FIG. 12 (3).
And are at the "1" level at different timings.

【0022】アービタ25は、先に“1”レベルとなっ
た第1のDMAコントローラ21からの要求信号REQ
1の入力に対応して、図12(5)に示すようにCPU
12へのバス権の要求を行なう信号BUSREQのレベ
ルを“1”とする。
The arbiter 25 requests the request signal REQ from the first DMA controller 21 which has become "1" level earlier.
Corresponding to the input of 1, CPU as shown in FIG. 12 (5)
The level of the signal BUSREQ for requesting the bus right to 12 is set to "1".

【0023】その後、図12(7)に示すタイミングt
1においてCPU12がバス権を一時的に開放し、図1
2(6)に示すアービタ25への肯定応答の信号BUS
ACKのレベルを“1”とする。
Thereafter, the timing t shown in FIG.
1, the CPU 12 temporarily releases the bus right, and FIG.
Signal BUS of the positive response to the arbiter 25 shown in 2 (6)
The ACK level is set to "1".

【0024】このとき、アービタ25は優先順位に応じ
て第1のDMAコントローラ21からの要求信号REQ
1が“1”となっていると判断し、図12(2)に示す
ように第1のDMAコントローラ21に対する肯定応答
信号ACK1へのレベルを“1”として、バス権を第1
のDMAコントローラ21に与え、要求していたDMA
処理を実行させる。
At this time, the arbiter 25 requests the request signal REQ from the first DMA controller 21 according to the priority.
1 is "1", the level of the acknowledge signal ACK1 to the first DMA controller 21 is set to "1" as shown in FIG.
DMA requesting to the DMA controller 21 of
Let the process run.

【0025】その後、第1のDMAコントローラ21に
よるDMA処理が終了し、図12(1)で示す第1のD
MAコントローラ21からの要求信号REQ1のレベル
が“0”となると、アービタ25は図12(5)に示す
CPU12への信号BUSREQのレベルを“0”とす
る。
Thereafter, the DMA processing by the first DMA controller 21 is completed, and the first D shown in FIG.
When the level of the request signal REQ1 from the MA controller 21 becomes "0", the arbiter 25 sets the level of the signal BUSREQ to the CPU 12 shown in FIG. 12 (5) to "0".

【0026】これに対して図12(6)に示すCPU1
2からの肯定応答の信号BUSACKのレベルも“0”
となると、図12(2)にもその一部を示すように第1
乃至第4のDMAコントローラ21〜24に対する肯定
応答信号ACK1〜4のレベルを一括して“0”とす
る。
On the other hand, the CPU 1 shown in FIG. 12 (6)
The level of the signal BUSACK of the positive response from 2 is also “0”
Then, as shown in FIG.
The levels of the acknowledgment signals ACK1 to ACK4 to the fourth DMA controllers 21 to 24 are collectively set to "0".

【0027】その後、図12(3)に示す第3のDMA
コントローラ23からの要求信号REQ3が“1”レベ
ルとなっていることから再びCPU12へのバス権の要
求を行なう信号BUSREQのレベルを“1”とした
後、CPU12からの肯定応答の信号BUSACKのレ
ベルが“1”となるのを待機する。
After that, the third DMA shown in FIG.
Since the request signal REQ3 from the controller 23 is at "1" level, the level of the signal BUSREQ for requesting the bus right to the CPU 12 is set to "1" again, and then the level of the signal BUSACK of the affirmative response from the CPU 12 is set. Waits for "1".

【0028】そして、タイミングt2においてCPU1
2がバス権を一時的に開放し、図12(6)に示すアー
ビタ25への肯定応答の信号BUSACKのレベルを
“1”とすると、アービタ25はこれにより第3のDM
Aコントローラ23からの要求信号REQ3が“1”と
なっていることから、図12(4)に示すように第3の
DMAコントローラ23に対する肯定応答信号ACK3
へのレベルを“1”として、バス権を第3のDMAコン
トローラ23に与え、要求していたDMA処理を実行さ
せる。
Then, at the timing t2, the CPU1
2 temporarily releases the bus right and sets the level of the signal BUSACK of the positive response to the arbiter 25 shown in FIG. 12 (6) to "1", the arbiter 25 thereby receives the third DM signal.
Since the request signal REQ3 from the A controller 23 is "1", the acknowledgment signal ACK3 to the third DMA controller 23 as shown in FIG.
Is set to "1", the bus right is given to the third DMA controller 23, and the requested DMA processing is executed.

【0029】その後、第3のDMAコントローラ23に
よるDMA処理が終了し、図12(3)で示す第3のD
MAコントローラ23からの要求信号REQ3のレベル
が“0”となると、アービタ25は図12(5)に示す
CPU12への信号BUSREQのレベルを“0”とす
る。
Thereafter, the DMA processing by the third DMA controller 23 is completed, and the third D shown in FIG.
When the level of the request signal REQ3 from the MA controller 23 becomes "0", the arbiter 25 sets the level of the signal BUSREQ to the CPU 12 shown in FIG. 12 (5) to "0".

【0030】これに対して図12(6)に示すCPU1
2からの肯定応答の信号BUSACKのレベルも“0”
となると、図12(4)にもその一部を示すように第1
乃至第4のDMAコントローラ21〜24に対する肯定
応答信号ACK1〜4のレベルを一括して“0”とす
る。
On the other hand, the CPU 1 shown in FIG.
The level of the signal BUSACK of the positive response from 2 is also “0”
Then, as shown in FIG.
The levels of the acknowledgment signals ACK1 to ACK4 to the fourth DMA controllers 21 to 24 are collectively set to "0".

【0031】このようにアービタ25は、第1乃至第4
のDMAコントローラ21〜24の少なくとも一つから
の要求があった場合にCPU12に対して要求を行な
い、CPU12からの応答が得られた時点で、優先順位
にしたがって要求を送ってきたものに応答を返して、D
MA処理を実行させる。
As described above, the arbiter 25 includes the first to fourth parts.
When at least one of the DMA controllers 21 to 24 makes a request to the CPU 12, and when a response from the CPU 12 is obtained, a response is sent to the one that has sent the request according to the priority order. Return, D
The MA process is executed.

【0032】[0032]

【発明が解決しようとする課題】上述したDMA統括コ
ントローラ11の制御内容では、アービタ25が第1乃
至第4のDMAコントローラ21〜24の少なくとも一
つから非同期で出力される要求に対応してその優先順位
に関係なく無条件にCPU12に要求を送達する。
In the above-mentioned control contents of the DMA general controller 11, the arbiter 25 responds to a request asynchronously output from at least one of the first to fourth DMA controllers 21 to 24. The request is unconditionally delivered to the CPU 12 regardless of the priority.

【0033】したがって、第1乃至第4のDMAコント
ローラ21〜24から高い頻度で要求がある場合には、
CPU12は最小限の処理を行なう毎に一時的にバス権
をDMA統括コントローラ11側に委ねることになり、
CPU12が連続した長い時間にわたってバス権を保持
することができなくなるため、一つの処理を行なうため
に多くの時間を要することもあり得る。
Therefore, when there is a high frequency of requests from the first to fourth DMA controllers 21 to 24,
The CPU 12 temporarily entrusts the bus right to the DMA general controller 11 side each time the minimum processing is performed.
Since the CPU 12 cannot hold the bus right for a long continuous time, it may take a lot of time to perform one processing.

【0034】本発明は上記のような実情に鑑みてなされ
たもので、その目的とするところは、多少実行が遅れて
も支障のないDMA処理に関しては、ある程度CPUの
処理を優先して実行させることが可能なDMA制御装置
及びDMA制御方法を提供することにある。
The present invention has been made in view of the above situation, and an object of the present invention is to give priority to the CPU processing to some extent to execute the DMA processing which does not cause any trouble even if the execution is delayed. It is to provide a DMA control device and a DMA control method capable of performing the same.

【0035】[0035]

【課題を解決するための手段】請求項1記載の発明は、
メモリと、このメモリを用いて処理を実行するメインコ
ントローラと、このメインコントローラを介さずに上記
メモリを用いて直接処理を実行するDMAコントローラ
と、上記DMAコントローラに対して設けられ、DMA
コントローラから上記メインコントローラへ出力される
上記メモリへのアクセス権を要求するDMA要求信号を
一時的に抑制する抑制手段とを具備したことを特徴とす
る。
The invention according to claim 1 is
A memory, a main controller that executes processing using the memory, a DMA controller that directly executes processing using the memory without going through the main controller, and a DMA controller provided for the DMA controller.
And a suppressing means for temporarily suppressing a DMA request signal output from the controller to the main controller and requesting an access right to the memory.

【0036】このような構成とすれば、優先順位が低
く、多少実行が遅れても支障のないDMA処理に関して
は、対応するDMAコントローラからのDMA要求信号
を一時的に抑制することで、その抑制を行なっている間
はメインコントローラの処理を優先して継続して実行さ
せることが可能となる。
With such a configuration, the DMA request signal from the corresponding DMA controller is temporarily suppressed by the DMA request signal from the corresponding DMA controller, because the priority is low and there is no problem even if the execution is delayed. While performing, the processing of the main controller can be preferentially and continuously executed.

【0037】請求項2記載の発明は、上記請求項1記載
の発明において、複数のDMAコントローラを備え、上
記抑制手段は、上記複数のDMAコントローラ中の少な
くとも一つに対して設けられることを特徴とする。
According to a second aspect of the present invention, in the first aspect of the present invention, a plurality of DMA controllers are provided, and the suppressing means is provided for at least one of the plurality of DMA controllers. And

【0038】このような構成とすれば、上記請求項1記
載の発明の作用に加えて、複数のDMAコントローラ個
々での抑制の有無により優先順位を設定して、効率的に
DMA制御を実行できる。
With such a configuration, in addition to the operation of the invention described in claim 1, it is possible to efficiently execute the DMA control by setting the priority order depending on the presence or absence of the suppression in each of the plurality of DMA controllers. .

【0039】請求項3記載の発明は、上記請求項2記載
の発明において、上記メインコントローラと複数のDM
Aコントローラとの間で上記メモリへのアクセス権を調
停するアービタ回路を備え、上記抑制手段は、DMAコ
ントローラから上記アービタ回路へ出力される上記DM
A要求信号を一時的に抑制することを特徴とする。
The invention according to claim 3 is the same as the invention according to claim 2, wherein the main controller and a plurality of DMs are provided.
An arbiter circuit that arbitrates the access right to the memory with the A controller is provided, and the suppressing means outputs the DM output from the DMA controller to the arbiter circuit.
It is characterized in that the A request signal is temporarily suppressed.

【0040】このような構成とすれば、上記請求項2記
載の発明の作用に加えて、アービタ回路によりメインコ
ントローラへの前段でDMA要求信号を統括管理するた
め、メインコントローラに負担をかけることなくDMA
制御を実行できる。
With such a configuration, in addition to the operation of the present invention described in claim 2, since the DMA request signal is centrally managed by the arbiter circuit before the main controller, the main controller is not burdened. DMA
Can exercise control.

【0041】請求項4記載の発明は、上記請求項1記載
の発明において、上記抑制手段は、DMAコントローラ
からのDMA要求信号を所定時間遅延して上記メインコ
ントローラへ出力することを特徴とする。
According to a fourth aspect of the present invention, in the above-mentioned first aspect, the suppressing means delays the DMA request signal from the DMA controller by a predetermined time and outputs the delayed signal to the main controller.

【0042】このような構成とすれば、上記請求項1記
載の発明の作用に加えて、簡単なタイマー回路の付与に
より実現できる。
With such a structure, in addition to the operation of the invention described in claim 1, it can be realized by adding a simple timer circuit.

【0043】請求項5記載の発明は、上記請求項3記載
の発明において、上記抑制手段は、抑制手段を介さずに
直接上記アービタ回路と接続されるDMAコントローラ
からのDMA要求信号が出力されていない状態をカウン
トし、このカウント値が所定値に達するまでDMA要求
信号の出力を遅延させることを特徴とする。
According to a fifth aspect of the present invention, in the above-mentioned third aspect, the suppressing means outputs a DMA request signal from a DMA controller directly connected to the arbiter circuit without passing through the suppressing means. The present invention is characterized by counting the number of non-existing states and delaying the output of the DMA request signal until the count value reaches a predetermined value.

【0044】このような構成とすれば、上記請求項3記
載の発明の作用に加えて、より優先順位の高い他のDM
Aコントローラが全てDMA処理を要求または実行して
いない時間をカウントしてそのDMAコントローラから
のDMA要求信号を所定時間遅延させるため、優先順位
が低く、多少実行が遅れても支障のないDMA処理を分
散させることで、メインコントローラに対して処理する
時間を適切に与えることができる。
According to this structure, in addition to the function of the invention described in claim 3, another DM having a higher priority is added.
Since the A controller counts the time when all DMA processing is not requested or executed and delays the DMA request signal from the DMA controller for a predetermined time, the priority order is low and the DMA processing that causes a slight delay in the execution of the DMA processing can be performed. By distributing, the processing time can be appropriately given to the main controller.

【0045】請求項6記載の発明は、上記請求項1記載
の発明において、上記抑制手段は、DMAコントローラ
から上記メインコントローラへ出力されるDMA要求信
号を上記メインコントローラからの信号に応じて一時的
に遮断することを特徴とする。
According to a sixth aspect of the present invention, in the first aspect of the invention, the suppressing means temporarily outputs the DMA request signal output from the DMA controller to the main controller in accordance with the signal from the main controller. It is characterized by shutting off.

【0046】このような構成とすれば、上記請求項1記
載の発明の作用に加えて、メインコントローラの負荷状
態に応じて、優先順位の低いDMA処理の即時実行の有
無を制御できるため、ソフトウェアを効率的且つ円滑に
処理することが可能となる。
With such a configuration, in addition to the operation of the invention described in claim 1, it is possible to control the presence / absence of immediate execution of the low priority DMA processing in accordance with the load state of the main controller. Can be efficiently and smoothly processed.

【0047】請求項7記載の発明は、上記請求項6記載
の発明において、上記抑制手段は、上記メインコントロ
ーラから信号が出力された時点でDMAコントローラか
らDMA要求信号が出力されている場合、DMA要求信
号の遮断を遅延させることを特徴とする。
According to a seventh aspect of the present invention, in the above-mentioned sixth aspect of the invention, when the suppressing means outputs the DMA request signal from the DMA controller at the time when the signal is output from the main controller, the DMA request signal is DMA. It is characterized in that the interruption of the request signal is delayed.

【0048】このような構成とすれば、上記請求項6記
載の発明の作用に加えて、メインコントローラは、連続
した処理が必要な状況で不要にDMAコントローラから
のDMA処理の要求が入力されるのを遮断しておき、処
理が終了した時点でDMA処理を許可できる。
With such a configuration, in addition to the operation of the invention described in claim 6, the main controller unnecessarily receives a request for DMA processing from the DMA controller in a situation where continuous processing is required. Can be blocked and the DMA processing can be permitted when the processing is completed.

【0049】請求項8記載の発明は、上記請求項3記載
の発明において、上記抑制手段と上記アービタ回路とを
一体化したハードウェア回路で構成することを特徴とす
る。
The invention described in claim 8 is the invention according to claim 3 characterized in that the suppressing means and the arbiter circuit are integrated into a hardware circuit.

【0050】このような構成とすれば、上記請求項3記
載の発明の作用に加えて、回路構成を簡素化することが
できる。
With this structure, in addition to the effect of the invention described in claim 3, the circuit structure can be simplified.

【0051】請求項9記載の発明は、メモリと、このメ
モリを用いて処理を実行するメインコントローラと、こ
のメインコントローラを介さずに上記メモリを用いて直
接処理を実行するDMAコントローラとを備えたDMA
制御装置におけるDMA制御方法であって、上記DMA
コントローラから上記メインコントローラへ出力される
上記メモリへのアクセス権を要求するDMA要求信号の
出力を一時的に抑制することを特徴とする。
According to a ninth aspect of the present invention, there is provided a memory, a main controller that executes processing using the memory, and a DMA controller that directly executes processing using the memory without going through the main controller. DMA
A DMA control method in a control device, comprising:
It is characterized in that the output of a DMA request signal for requesting an access right to the memory output from the controller to the main controller is temporarily suppressed.

【0052】このような方法とすれば、優先順位が低
く、多少実行が遅れても支障のないDMA処理に関して
は、対応するDMAコントローラからのDMA要求信号
を一時的に抑制することで、その抑制を行なっている間
はメインコントローラの処理を優先して継続して実行さ
せることが可能となる。
According to such a method, the DMA request signal from the corresponding DMA controller is temporarily suppressed by the DMA request signal from the corresponding DMA controller, because the priority is low and there is no problem even if the execution is slightly delayed. While performing, the processing of the main controller can be preferentially and continuously executed.

【0053】[0053]

【発明の実施の形態】(第1の実施の形態)以下本発明
をDMA制御回路に適用した第1の実施の形態について
図面を参照して説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS (First Embodiment) A first embodiment in which the present invention is applied to a DMA control circuit will be described below with reference to the drawings.

【0054】図1はその回路構成を示すもので、基本的
な構成は上記図10に示したものとほぼ同様であるの
で、同一部分には同一符号を付してその説明は省略す
る。
FIG. 1 shows the circuit configuration, and since the basic configuration is almost the same as that shown in FIG. 10, the same parts are designated by the same reference numerals and the description thereof will be omitted.

【0055】しかして、ここでも例えば第1乃至第4の
DMAコントローラ21〜24の出力する要求信号RE
Q1,2、REQ_ORG3,4に関して、 REQ1>REQ2>REQ_ORG3>REQ_OR
G4 となる優先順位を設定するものとし、DMA統括コント
ローラ11′内の特に第3及び第4のDMAコントロー
ラ23,24では多少実行が遅れても支障のないDMA
処理を行なうものとして、第3及び第4のDMAコント
ローラ23,24とアービタ25との間にそれぞれ抑制
回路33,34を設けるものとする。
However, also here, the request signal RE output from the first to fourth DMA controllers 21 to 24, for example.
Regarding Q1, Q2 and REQ_ORG3, 4, REQ1>REQ2>REQ_ORG3> REQ_OR
It is assumed that the priority order of G4 is set, and that there is no problem even if the execution is delayed a little especially in the third and fourth DMA controllers 23 and 24 in the DMA general controller 11 '.
Suppressing circuits 33 and 34 are provided between the third and fourth DMA controllers 23 and 24 and the arbiter 25, respectively, for processing.

【0056】すなわち、抑制回路33(34)は、図2
にも示すようにDMAコントローラ23(24)からの
要求信号REQ_ORG3(4)と上記第1及び第2の
DMAコントローラ21,22からの各要求信号REQ
1,2を入力し、その状態と内部カウンタの値とによっ
てアービタ25へ要求信号REQ3(4)を出力する。
That is, the suppression circuit 33 (34) is similar to that shown in FIG.
, The request signal REQ_ORG3 (4) from the DMA controller 23 (24) and the request signals REQ from the first and second DMA controllers 21 and 22.
1, 2 are input, and the request signal REQ3 (4) is output to the arbiter 25 according to the state and the value of the internal counter.

【0057】一方、アービタ25から送られてくる肯定
応答信号ACK3(4)を、そのまま図示する如くスル
ーパスして肯定応答信号ACK_ORG3(4)とし、
DMAコントローラ23(24)に与える。
On the other hand, the acknowledgment signal ACK3 (4) sent from the arbiter 25 is directly passed through as shown to form the acknowledgment signal ACK_ORG3 (4).
It is given to the DMA controller 23 (24).

【0058】次に上記実施の形態の動作について説明す
る。なお、アービタ25自体の処理動作の内容について
は、上記図11で説明した内容と同様であるので、ここ
ではその説明について省略するものとする。
Next, the operation of the above embodiment will be described. Note that the content of the processing operation of the arbiter 25 itself is the same as the content described in FIG. 11 above, and therefore the description thereof will be omitted here.

【0059】図3は、上記抑制回路33(34)内で実
行される、アービタ25への要求信号REQ3(4)の
出力に関する処理内容を示すものである。
FIG. 3 shows the processing contents relating to the output of the request signal REQ3 (4) to the arbiter 25, which is executed in the suppression circuit 33 (34).

【0060】その処理当初には、遅延時間をカウントす
るカウンタの値をクリアして「0」とし(ステップB0
1)、合わせてアービタ25への要求信号REQ3
(4)のレベルを“0”とした上で(ステップB0
2)、第3(第4)のDMAコントローラ23(24)
からの要求信号REQ_ORG3(4)が“1”となっ
たか否かを判断し(ステップB03)、なっていなけれ
ば再び上記ステップB01に戻る、という処理を繰返し
実行することで、抑制回路33(34)からの要求信号
REQ_ORG3(4)が“1”となるのを待機する。
At the beginning of the processing, the value of the counter for counting the delay time is cleared to "0" (step B0
1), and also request signal REQ3 to arbiter 25
After setting the level of (4) to "0" (step B0
2), the third (fourth) DMA controller 23 (24)
It is judged whether or not the request signal REQ_ORG3 (4) from (1) has become "1" (step B03), and if not, the process returns to the step B01 again, and the suppression circuit 33 (34) is repeatedly executed. ) From the request signal REQ_ORG3 (4) becomes "1".

【0061】そして、第3(第4)のDMAコントロー
ラ23(24)からの要求信号REQ_ORG3(4)
が“1”となるとステップB03でこれを判断し、次に
第1のDMAコントローラ21の出力する要求信号RE
Q1と第2のDMAコントローラ22の出力する要求信
号REQ2が共に“0”となるのを待機し(ステップB
04)、ともに“0”になったと判断した場合にのみ上
記カウンタの値を「+1」更新設定した上で(ステップ
B05)、その更新設定したカウント値が予め設定され
たリミット値となったか否かを判断し(ステップB0
6)、リミット値となっていなければさらに上記ステッ
プB04に戻る、という処理を繰返し実行することで、
第1、第2のDMAコントローラ21,22が共に要求
信号REQ1,2を出力していない状態が所定時間経過
するのを待機する。
Then, the request signal REQ_ORG3 (4) from the third (fourth) DMA controller 23 (24).
Becomes "1", this is judged in step B03, and then the request signal RE output from the first DMA controller 21.
It waits for both Q1 and the request signal REQ2 output from the second DMA controller 22 to become "0" (step B
04), the value of the above counter is updated and set to "+1" only when both are determined to be "0" (step B05), and whether or not the updated set count value has reached a preset limit value. Or not (step B0
6) If the limit value is not reached, the process returns to step B04, and the process is repeated,
The first and second DMA controllers 21 and 22 stand by until a predetermined time elapses when neither of the request signals REQ1 and REQ2 is output.

【0062】ステップB06でカウンタの値がリミッタ
値となったと判断すると、第1、第2のDMAコントロ
ーラ21,22が共に要求信号REQ1,2を出力して
いない状態が所定時間経過したものとして、あらためて
アービタ25への要求信号REQ3(4)のレベルを
“1”とし(ステップB07)、以後アービタ25から
の肯定応答信号ACK3(4)のレベルが“1”となっ
て、第3(第4)のDMAコントローラ23(24)が
要求していたDMA処理を実行して終了し、この第3
(第4)のDMAコントローラ23(24)からの要求
信号REQ_ORG3(4)が“0”となるのを待機す
る(ステップB08)。
When it is determined in step B06 that the counter value has reached the limiter value, it is assumed that the first and second DMA controllers 21 and 22 are not outputting the request signals REQ1 and REQ for a predetermined time. Again, the level of the request signal REQ3 (4) to the arbiter 25 is set to "1" (step B07), and thereafter, the level of the acknowledgment signal ACK3 (4) from the arbiter 25 becomes "1", and the third (fourth) ), The DMA processing requested by the DMA controller 23 (24) of FIG.
It waits until the request signal REQ_ORG3 (4) from the (fourth) DMA controller 23 (24) becomes "0" (step B08).

【0063】そして、このステップB08で第3(第
4)のDMAコントローラ23(24)からの要求信号
REQ_ORG3(4)が“0”となったと判断した時
点で、一連のDMA要求に関する処理を終了し、再び次
のDMA要求に備えるべくステップB01からの処理に
戻る。
When it is determined in step B08 that the request signal REQ_ORG3 (4) from the third (fourth) DMA controller 23 (24) has become "0", the series of processing relating to the DMA request is ended. Then, the process returns from step B01 to prepare for the next DMA request again.

【0064】図4は、第1のDMAコントローラ21と
第3のDMAコントローラ23とがアービタ25に対し
て要求信号REQ1,REQ_ORG3を送出した場合
の各信号の動作タイミングを例示するものである。
FIG. 4 exemplifies the operation timing of each signal when the first DMA controller 21 and the third DMA controller 23 send the request signals REQ1 and REQ_ORG3 to the arbiter 25.

【0065】図4(1)に示す第1のDMAコントロー
ラ21からの要求信号REQ1と図4(3)に示す第3
のDMAコントローラ23からの要求信号REQ_OR
G3とが異なるタイミングで共に“1”レベルとなる。
The request signal REQ1 from the first DMA controller 21 shown in FIG. 4 (1) and the third signal shown in FIG. 4 (3).
Request signal REQ_OR from the DMA controller 23 of
Both become "1" level at different timings from G3.

【0066】このとき抑制回路33では、第3のDMA
コントローラ23からの要求信号REQ_ORG3が
“1”となったことをステップB03で判断し、続くス
テップB04で第1のDMAコントローラ21の出力す
る要求信号REQ1と第2のDMAコントローラ22の
出力する要求信号REQ2が共に“0”となるのを待機
することとなる。
At this time, in the suppression circuit 33, the third DMA
It is determined in step B03 that the request signal REQ_ORG3 from the controller 23 has become “1”, and in the following step B04, the request signal REQ1 output from the first DMA controller 21 and the request signal output from the second DMA controller 22. It waits until both REQ2 become "0".

【0067】アービタ25は、先に“1”レベルとなっ
た第1のDMAコントローラ21からの要求信号REQ
1の入力に対応して、図4(7)に示すようにCPU1
2へのバス権の要求を行なう信号BUSREQのレベル
を“1”とする。
The arbiter 25 requests the request signal REQ from the first DMA controller 21 which has been set to "1" level.
Corresponding to the input of 1, the CPU 1 as shown in FIG.
The level of the signal BUSREQ for requesting the bus right to 2 is set to "1".

【0068】その後、タイミングt11においてCPU
12がバス権を一時的に開放し、図4(8)に示すアー
ビタ25への肯定応答の信号BUSACKのレベルを
“1”とする。
Then, at timing t11, the CPU
12 temporarily releases the bus right and sets the level of the signal BUSACK of the positive response to the arbiter 25 shown in FIG. 4 (8) to "1".

【0069】このとき、アービタ25は第1のDMAコ
ントローラ21からの要求信号REQ1が“1”となっ
ていると判断し、図4(2)に示すように第1のDMA
コントローラ21に対する肯定応答信号ACK1へのレ
ベルを“1”として、バス権を第1のDMAコントロー
ラ21に与え、要求していたDMA処理を実行させる。
At this time, the arbiter 25 determines that the request signal REQ1 from the first DMA controller 21 is "1", and as shown in FIG.
The level of the acknowledge signal ACK1 for the controller 21 is set to "1", and the bus right is given to the first DMA controller 21 to execute the requested DMA processing.

【0070】その後、第1のDMAコントローラ21に
よるDMA処理が終了し、図4(1)で示す第1のDM
Aコントローラ21からの要求信号REQ1のレベルが
“0”となると、アービタ25は図4(7)に示すCP
U12への信号BUSREQのレベルを“0”とする。
Thereafter, the DMA processing by the first DMA controller 21 is completed, and the first DM shown in FIG.
When the level of the request signal REQ1 from the A controller 21 becomes “0”, the arbiter 25 causes the CP shown in FIG.
The level of the signal BUSREQ to U12 is set to "0".

【0071】これに対して図4(8)に示すCPU12
からの肯定応答の信号BUSACKのレベルも“0”と
なると、アービタ25は図4(2)にもその一部を示す
ように第1及び第2のDMAコントローラ21,22、
抑制回路33,34に対する肯定応答信号ACK1〜4
のレベルを一括して“0”とする。
On the other hand, the CPU 12 shown in FIG.
When the level of the signal BUSACK of the acknowledgment from is also "0", the arbiter 25 causes the first and second DMA controllers 21 and 22, as shown in FIG.
Acknowledgment signals ACK1 to ACK4 to the suppression circuits 33 and 34
The levels of are collectively set to "0".

【0072】このとき抑制回路33では、ステップB0
4で第1のDMAコントローラ21の出力する要求信号
REQ1と第2のDMAコントローラ22の出力する要
求信号REQ2が共に“0”となったことを判断して、
以後ステップB04〜B06の処理を繰返し実行しなが
ら図4(5)に示すようにカウンタの値を順次「+1」
更新設定し続ける。
At this time, in the suppression circuit 33, step B0
In step 4, it is determined that both the request signal REQ1 output by the first DMA controller 21 and the request signal REQ2 output by the second DMA controller 22 are "0".
Thereafter, while repeatedly executing the processing of steps B04 to B06, the value of the counter is sequentially incremented by “+1” as shown in FIG.
Continue to update and set.

【0073】しかるに、図4(1)に示す第1のDMA
コントローラ21からの要求信号REQ1が再び“1”
となった時点で、上記抑制回路33は、カウンタのカウ
ント動作をステップB04での判断により一時中断す
る。
However, the first DMA shown in FIG.
The request signal REQ1 from the controller 21 is "1" again
At this point, the suppression circuit 33 suspends the counting operation of the counter based on the determination in step B04.

【0074】アービタ25は、第1のDMAコントロー
ラ21からの要求信号REQ1が“1”レベルとなった
ことで再び図4(7)に示すようにCPU12へのバス
権の要求を行なう信号BUSREQのレベルを“1”と
する。
When the request signal REQ1 from the first DMA controller 21 becomes "1" level, the arbiter 25 sends the signal BUSREQ for requesting the bus right to the CPU 12 again as shown in FIG. 4 (7). Set the level to "1".

【0075】その後、タイミングt12においてCPU
12がバス権を一時的に開放し、図4(8)に示すアー
ビタ25への肯定応答の信号BUSACKのレベルを
“1”とする。
Thereafter, at timing t12, the CPU
12 temporarily releases the bus right and sets the level of the signal BUSACK of the positive response to the arbiter 25 shown in FIG. 4 (8) to "1".

【0076】このとき、アービタ25は第1のDMAコ
ントローラ21からの要求信号REQ1が“1”となっ
ていると判断し、図4(2)に示すように第1のDMA
コントローラ21に対する肯定応答信号ACK1へのレ
ベルを“1”として、バス権を第1のDMAコントロー
ラ21に与え、要求していたDMA処理を実行させる。
At this time, the arbiter 25 determines that the request signal REQ1 from the first DMA controller 21 is "1", and as shown in FIG. 4B, the first DMA.
The level of the acknowledge signal ACK1 for the controller 21 is set to "1", and the bus right is given to the first DMA controller 21 to execute the requested DMA processing.

【0077】その後、第1のDMAコントローラ21に
よるDMA処理が終了し、図4(1)で示す第1のDM
Aコントローラ21からの要求信号REQ1のレベルが
“0”となると、アービタ25は図4(7)に示すCP
U12への信号BUSREQのレベルを“0”とする。
Thereafter, the DMA processing by the first DMA controller 21 is completed, and the first DM shown in FIG.
When the level of the request signal REQ1 from the A controller 21 becomes “0”, the arbiter 25 causes the CP shown in FIG.
The level of the signal BUSREQ to U12 is set to "0".

【0078】このとき抑制回路33では、ステップB0
4で第1のDMAコントローラ21の出力する要求信号
REQ1と第2のDMAコントローラ22の出力する要
求信号REQ2が再び共に“0”となったことを判断し
て、以後ステップB04〜B06の処理を繰返し実行し
ながら、図4(5)に示すようにそれまで中断していた
動作を再開し、カウンタの値を順次「+1」更新設定し
続ける。
At this time, in the suppression circuit 33, step B0
In step 4, it is judged that both the request signal REQ1 output from the first DMA controller 21 and the request signal REQ2 output from the second DMA controller 22 have become "0" again, and thereafter, the processing of steps B04 to B06 is performed. While repeatedly executing, as shown in FIG. 4 (5), the operation suspended until then is restarted and the value of the counter is continuously updated and set to "+1".

【0079】そして、抑制回路33のカウンタの値がリ
ミット値となるとステップB06でこれを判断し、図4
(4)に示すように抑制回路33からアービタ25への
要求信号REQ3を“1”レベルとする。
When the counter value of the suppression circuit 33 reaches the limit value, this is judged in step B06, and
As shown in (4), the request signal REQ3 from the suppression circuit 33 to the arbiter 25 is set to "1" level.

【0080】その後、アービタ25は図4(4)に示す
抑制回路33からの要求信号REQ3が“1”レベルと
なっていることから再び図4(7)に示すようにCPU
12へのバス権の要求を行なう信号BUSREQのレベ
ルを“1”とした後、CPU12からの肯定応答の信号
BUSACKのレベルが“1”となるのを待機する。
After that, since the request signal REQ3 from the suppressing circuit 33 shown in FIG. 4 (4) is at the "1" level, the arbiter 25 returns to the CPU as shown in FIG. 4 (7).
After the level of the signal BUSREQ for requesting the bus right to the bus 12 is set to "1", the CPU 12 waits until the level of the signal BUSACK of the affirmative response from the CPU 12 becomes "1".

【0081】そして、タイミングt13においてCPU
12がバス権を一時的に開放し、図4(8)に示すアー
ビタ25への肯定応答の信号BUSACKのレベルを
“1”とすると、アービタ25はこれにより抑制回路3
3からの要求信号REQ3が“1”となっていることか
ら、図4(6)に示すように抑制回路33に対する肯定
応答信号ACK3へのレベルを“1”として、バス権を
抑制回路33を介して第3のDMAコントローラ23に
与え、要求していたDMA処理を実行させる。
Then, at the timing t13, the CPU
12 temporarily releases the bus right, and when the level of the signal BUSACK of the positive response to the arbiter 25 shown in FIG. 4 (8) is set to "1", the arbiter 25 thereby causes the suppression circuit 3 to operate.
Since the request signal REQ3 from the signal No. 3 is "1", the level of the acknowledge signal ACK3 for the suppression circuit 33 is set to "1" as shown in FIG. To the third DMA controller 23 to execute the requested DMA processing.

【0082】その後、第3のDMAコントローラ23に
よるDMA処理が終了し、図4(3)で示す第3のDM
Aコントローラ23からの要求信号REQ_ORG3の
レベルが“0”となると、抑制回路33はこれを上記ス
テップB08で判断してステップB01からの処理に戻
り、ステップB01でカウンタの値をクリアして「0」
とした後にステップB02でアービタ25への要求信号
REQ3を“0”とする。
Thereafter, the DMA processing by the third DMA controller 23 is completed, and the third DM shown in FIG.
When the level of the request signal REQ_ORG3 from the A controller 23 becomes "0", the suppression circuit 33 judges this at step B08 and returns to the processing from step B01, and at step B01 the counter value is cleared to "0". "
After that, the request signal REQ3 to the arbiter 25 is set to "0" in step B02.

【0083】これに対してアービタ25は、図4(7)
に示すCPU12への信号BUSREQのレベルを
“0”とし、続いて図4(8)に示すCPU12からの
肯定応答の信号BUSACKのレベルも“0”となる
と、図4(6)にもその一部を示すように第1及び第2
のDMAコントローラ21,22、抑制回路33,34
に対する肯定応答信号ACK1〜4のレベルを一括して
“0”とする。
On the other hand, the arbiter 25 is shown in FIG.
When the level of the signal BUSREQ to the CPU 12 shown in FIG. 4 is set to “0” and the level of the signal BUSACK of the positive response from the CPU 12 shown in FIG. Parts as shown in the first and second
DMA controllers 21 and 22, suppression circuits 33 and 34
The levels of the positive acknowledgment signals ACK1 to ACK4 are collectively set to "0".

【0084】このように抑制回路33は、第3のDMA
コントローラ23からの要求信号REQ_ORG3が入
力された際に、より優先順位が高いものとして設定され
ている第1及び第2のDMAコントローラ21,22か
らの要求信号REQ1,2が共に入力されていない状態
をカウントすることで、その状態が所定時間経過するの
を待機し、該所定時間が経過してからアービタ25に対
してあらためてアービタ25への要求信号REQ3を出
力するようになる。
As described above, the suppression circuit 33 uses the third DMA.
When the request signal REQ_ORG3 from the controller 23 is input, the request signals REQ1 and REQ2 from the first and second DMA controllers 21 and 22, which are set to have higher priority, are not input. By waiting for the predetermined time to elapse, the request signal REQ3 to the arbiter 25 is newly output to the arbiter 25 after the predetermined time elapses.

【0085】したがって、優先順位が低く、多少実行が
遅れても支障のないDMA処理を抑制回路33での内部
処理により分散させることで、図4(9)に示すように
CPU12に対して処理する時間T1を与えることがで
きる。
Therefore, the DMA processing, which has a low priority and has no problem even if the execution is slightly delayed, is distributed to the CPU 12 as shown in FIG. 4 (9) by distributing it by the internal processing in the suppressing circuit 33. Time T1 can be given.

【0086】(第2の実施の形態)以下本発明をDMA
制御回路に適用した第2の実施の形態について図面を参
照して説明する。
(Second Embodiment) In the following, the present invention is DMA
A second embodiment applied to the control circuit will be described with reference to the drawings.

【0087】図5はその回路構成を示すもので、基本的
な構成は上記図10に示したものとほぼ同様であるの
で、同一部分には同一符号を付してその説明は省略す
る。
FIG. 5 shows the circuit configuration, and since the basic configuration is almost the same as that shown in FIG. 10, the same parts are designated by the same reference numerals and the description thereof will be omitted.

【0088】しかして、ここでも例えば第1乃至第4の
DMAコントローラ21〜24の出力する要求信号RE
Q1,2、REQ_ORG3,4に関して、REQ1>
REQ2>REQ_ORG3>REQ_ORG4となる
優先順位を設定するものとし、DMA統括コントローラ
11″内の特に第3及び第4のDMAコントローラ2
3,24では多少実行が遅れても支障のないDMA処理
を行なうものとして、第3及び第4のDMAコントロー
ラ23,24とアービタ25との間にそれぞれ抑制回路
43,44を設けるものとする。
However, also here, the request signal RE output from the first to fourth DMA controllers 21 to 24, for example.
Regarding Q1, 2, REQ_ORG3, 4, REQ1>
It is assumed that a priority order of REQ2>REQ_ORG3> REQ_ORG4 is set, and particularly the third and fourth DMA controllers 2 in the DMA integrated controller 11 ″ are set.
It is assumed that the third and fourth DMA controllers 23 and 24 and the arbiter 25 are provided with the suppression circuits 43 and 44, respectively, in order to perform the DMA processing without any problem even if the execution is delayed.

【0089】すなわち、抑制回路43(44)は、図6
にも示すようにDMAコントローラ23(24)からの
要求信号REQ_ORG3(4)とCPU12′からの
停止フラグを入力し、それらの状態と内部で生成するマ
スク信号とによってアービタ25へ要求信号REQ3
(4)を出力する。
That is, the suppression circuit 43 (44) is similar to that shown in FIG.
As also shown in FIG. 3, the request signal REQ_ORG3 (4) from the DMA controller 23 (24) and the stop flag from the CPU 12 'are input, and the request signal REQ3 is sent to the arbiter 25 according to the states and the mask signal generated internally.
Output (4).

【0090】図7は、上記抑制回路43(44)内に設
けられ、DMAコントローラ23(24)からの要求信
号REQ_ORG3(4)と上述したマスク信号とによ
ってアービタ25へ出力する要求信号REQ3(4)を
生成する論理回路の構成を示すものである。
FIG. 7 shows a request signal REQ3 (4) provided in the suppression circuit 43 (44) and output to the arbiter 25 by the request signal REQ_ORG3 (4) from the DMA controller 23 (24) and the mask signal described above. 2) shows the configuration of a logic circuit for generating

【0091】図示する如く、要求信号REQ_ORG3
(4)がアンド回路51に直接入力される一方、マスク
信号がインバータ52で反転された後にアンド回路51
に入力され、このアンド回路51の出力が要求信号RE
Q3(4)としてアービタ25へ送出される。
As shown, the request signal REQ_ORG3
(4) is directly input to the AND circuit 51, while the mask signal is inverted by the inverter 52 and then the AND circuit 51
Is input to the request signal RE.
It is sent to the arbiter 25 as Q3 (4).

【0092】一方、アービタ25から送られてくる肯定
応答信号ACK3(4)は、そのまま図示する如くスル
ーパスして肯定応答信号ACK_ORG3(4)とし、
DMAコントローラ23(24)に与えられる。
On the other hand, the acknowledgment signal ACK3 (4) sent from the arbiter 25 is passed through as it is as an acknowledgment signal ACK_ORG3 (4),
It is given to the DMA controller 23 (24).

【0093】次に上記実施の形態の動作について説明す
る。なお、アービタ25自体の処理動作の内容について
は、上記図11で説明した内容と同様であるので、ここ
ではその説明について省略するものとする。
Next, the operation of the above embodiment will be described. Note that the content of the processing operation of the arbiter 25 itself is the same as the content described in FIG. 11 above, and therefore the description thereof will be omitted here.

【0094】図8は、上記抑制回路33(34)内部で
処理するマスク信号を生成する際の処理内容を示すもの
である。
FIG. 8 shows the processing contents when the mask signal to be processed inside the suppression circuit 33 (34) is generated.

【0095】その処理当初には、マスク信号のレベルを
“0”とし(ステップC01)、CPU12′からの停
止フラグのレベルが“1”となったか否かを判断し(ス
テップC02)、なっていなければ再び上記ステップC
01に戻る、という処理を繰返し実行することで、CP
U12′からの停止フラグのレベルが“1”となるのを
待機する。
At the beginning of the processing, the level of the mask signal is set to "0" (step C01), and it is judged whether or not the level of the stop flag from the CPU 12 'is "1" (step C02). If not, repeat step C above.
By repeating the process of returning to 01, the CP
It waits until the level of the stop flag from U12 'becomes "1".

【0096】そして、CPU12′からの停止フラグの
レベルが“1”となるとステップC02でこれを判断
し、次に第3(第4)のDMAコントローラ23(2
4)からの要求信号REQ_ORG3(4)のレベルが
“0”であるか否かを判断する(ステップC03)。
Then, when the level of the stop flag from the CPU 12 'becomes "1", this is judged in the step C02, and then the third (fourth) DMA controller 23 (2
It is determined whether the level of the request signal REQ_ORG3 (4) from 4) is "0" (step C03).

【0097】ここで、第3のDMAコントローラ23か
らの要求信号REQ_ORG3(4)のレベルが“0”
ではなく“1”である場合、すなわち第3(第4)のD
MAコントローラ23(24)がDMA処理の要求を行
なっている状態では再びステップC01からの処理に戻
る。
Here, the level of the request signal REQ_ORG3 (4) from the third DMA controller 23 is "0".
Not "1", that is, the third (fourth) D
In the state where the MA controller 23 (24) is requesting the DMA processing, the processing is returned to step C01 again.

【0098】また、ステップC03で第3(第4)のD
MAコントローラ23(24)からの要求信号REQ_
ORG3(4)のレベルが“0”であると判断した場合
にはマスク信号のレベルを“1”として、上記図7に示
す如く第3(第4)のDMAコントローラ23(24)
からの要求信号REQ_ORG3(4)がアービタ25
へ出力されるのを遮断する(ステップC04)。
In step C03, the third (fourth) D
Request signal REQ_ from MA controller 23 (24)
When it is determined that the level of ORG3 (4) is "0", the level of the mask signal is set to "1", and the third (fourth) DMA controller 23 (24) is set as shown in FIG.
The request signal REQ_ORG3 (4) from the arbiter 25
It is blocked from being output to (step C04).

【0099】その後、CPU12′から送られてくる停
止フラグのレベルが“0”となるのを待機し(ステップ
C05)、“0”となった時点で上記ステップC01か
らの処理に戻る。
After that, the CPU 12 'waits until the level of the stop flag sent from the CPU 12' becomes "0" (step C05), and when it becomes "0", the process returns from the step C01.

【0100】このように、CPU12′からの停止フラ
グのレベルが“1”となった際に第3(第4)のDMA
コントローラ23(24)からの要求信号REQ_OR
G3(4)が“1”レベルとなっていればその要求に対
応して最後までDMA処理を実行させ、その次に第3
(第4)のDMAコントローラ23(24)からの要求
信号REQ_ORG3(4)が“0”レベルとなるとマ
スク信号を“1”レベルとしてDMA処理の実行を待機
させる。
As described above, when the level of the stop flag from the CPU 12 'becomes "1", the third (fourth) DMA is executed.
Request signal REQ_OR from controller 23 (24)
If G3 (4) is at "1" level, the DMA processing is executed to the end in response to the request, and then the third processing is performed.
When the request signal REQ_ORG3 (4) from the (fourth) DMA controller 23 (24) becomes the "0" level, the mask signal is set to the "1" level and the execution of the DMA processing is waited.

【0101】CPU12′は、連続した処理が必要な状
況で停止フラグのレベルを“1”とすることにより、不
要に第3(第4)のDMAコントローラ23(24)か
らのDMA処理の要求が入力されるのを遮断しておき、
処理が終了した時点で停止フラグのレベルを“0”に解
除することで、DMA処理を許可できる。
The CPU 12 'unnecessarily requests the DMA processing from the third (fourth) DMA controller 23 (24) by setting the level of the stop flag to "1" when continuous processing is required. Block the input,
The DMA processing can be permitted by releasing the level of the stop flag to "0" when the processing is completed.

【0102】図9は、第1のDMAコントローラ21と
第3のDMAコントローラ23とがアービタ25に対し
て要求信号REQ1,REQ_ORG3を送出した場合
の各信号の動作タイミングを例示するものである。
FIG. 9 exemplifies the operation timing of each signal when the first DMA controller 21 and the third DMA controller 23 send the request signals REQ1 and REQ_ORG3 to the arbiter 25.

【0103】図9(1)に示す第1のDMAコントロー
ラ21からの要求信号REQ1と図9(3)に示す第3
のDMAコントローラ23からの要求信号REQ_OR
G3とが異なるタイミングで共に“1”レベルとなる。
The request signal REQ1 from the first DMA controller 21 shown in FIG. 9 (1) and the third signal shown in FIG. 9 (3).
Request signal REQ_OR from the DMA controller 23 of
Both become "1" level at different timings from G3.

【0104】このとき抑制回路43では、図9(5)に
示すCPU12′からの停止フラグが“0”となってい
るため、ステップC01,C02の処理を繰返してマス
ク信号を“0”とし、第3のDMAコントローラ23か
らの要求信号REQ_ORG3をそのまま図9(4)に
示すように要求信号REQ3としてアービタ25へ出力
している。
At this time, in the suppression circuit 43, since the stop flag from the CPU 12 'shown in FIG. 9 (5) is "0", the processing of steps C01 and C02 is repeated to set the mask signal to "0", The request signal REQ_ORG3 from the third DMA controller 23 is directly output to the arbiter 25 as the request signal REQ3 as shown in FIG. 9 (4).

【0105】アービタ25は、先に“1”レベルとなっ
た第1のDMAコントローラ21からの要求信号REQ
1の入力に対応して、図9(8)に示すようにCPU1
2′へのバス権の要求を行なう信号BUSREQのレベ
ルを“1”とする。
The arbiter 25 requests the request signal REQ from the first DMA controller 21, which has become the "1" level earlier.
Corresponding to the input of 1, the CPU 1 as shown in FIG.
The level of the signal BUSREQ for requesting the bus right to 2'is set to "1".

【0106】その後、タイミングt21においてCPU
12′がバス権を一時的に開放し、図9(9)に示すア
ービタ25への肯定応答の信号BUSACKのレベルを
“1”とする。
Thereafter, at timing t21, the CPU
12 'temporarily releases the bus right, and sets the level of the signal BUSACK of the positive response to the arbiter 25 shown in FIG. 9 (9) to "1".

【0107】このとき、アービタ25は第1のDMAコ
ントローラ21からの要求信号REQ1が“1”となっ
ていると判断し、図9(2)に示すように第1のDMA
コントローラ21に対する肯定応答信号ACK1へのレ
ベルを“1”として、バス権を第1のDMAコントロー
ラ21に与え、要求していたDMA処理を実行させる。
At this time, the arbiter 25 determines that the request signal REQ1 from the first DMA controller 21 is "1", and as shown in FIG.
The level of the acknowledge signal ACK1 for the controller 21 is set to "1", and the bus right is given to the first DMA controller 21 to execute the requested DMA processing.

【0108】この間に図9(5)に示すCPU12′か
らの停止フラグのレベルが“1”となると、抑制回路4
3はステップC01〜C03の処理を繰返してマスク信
号を“0”とし、第3のDMAコントローラ23からの
要求信号REQ_ORG3をそのまま図9(4)に示す
ように要求信号REQ3としてアービタ25へ出力しな
がら、同要求信号REQ_ORG3が“0”レベルとな
るのを待機する。
During this time, if the level of the stop flag from the CPU 12 'shown in FIG. 9 (5) becomes "1", the suppression circuit 4
3 repeats the processing of steps C01 to C03 to set the mask signal to "0", and outputs the request signal REQ_ORG3 from the third DMA controller 23 as it is to the arbiter 25 as the request signal REQ3 as shown in FIG. 9 (4). On the other hand, it waits for the request signal REQ_ORG3 to become "0" level.

【0109】その後、第1のDMAコントローラ21に
よるDMA処理が終了し、図9(1)で示す第1のDM
Aコントローラ21からの要求信号REQ1のレベルが
“0”となると、アービタ25は図9(8)に示すCP
U12′への信号BUSREQのレベルを一時的に
“0”とする。
Thereafter, the DMA processing by the first DMA controller 21 is completed, and the first DM shown in FIG.
When the level of the request signal REQ1 from the A controller 21 becomes "0", the arbiter 25 causes the CP shown in FIG.
The level of the signal BUSREQ to U12 'is temporarily set to "0".

【0110】これに対して図9(9)に示すCPU1
2′からの肯定応答の信号BUSACKのレベルも
“0”となると、アービタ25は図9(2)にもその一
部を示すように第1及び第2のDMAコントローラ2
1,22、抑制回路43,44に対する肯定応答信号A
CK1〜4のレベルを一括して“0”とする。
On the other hand, the CPU 1 shown in FIG. 9 (9)
When the level of the signal BUSACK of the positive response from 2'becomes also "0", the arbiter 25 causes the first and second DMA controllers 2 to operate as shown in FIG.
1, 22 and the acknowledge signal A to the suppression circuits 43 and 44
The levels of CK1 to CK4 are collectively set to "0".

【0111】このとき抑制回路43は、依然として第3
のDMAコントローラ23からの要求信号REQ_OR
G3をそのまま要求信号REQ3としてアービタ25へ
出力している。
At this time, the suppression circuit 43 is still in the third state.
Request signal REQ_OR from the DMA controller 23 of
G3 is output as it is to the arbiter 25 as the request signal REQ3.

【0112】アービタ25は、この要求信号REQ3に
より再びCPU12′への信号BUSREQのレベルを
“1”とし、CPU12′からの肯定応答の信号BUS
ACKのレベルが“1”となるのを待機する。
The arbiter 25 sets the level of the signal BUSREQ to the CPU 12 'to "1" again by the request signal REQ3, and the signal BUS of the affirmative response from the CPU 12'.
It waits until the ACK level becomes “1”.

【0113】CPU12′での処理が一旦終了し、肯定
応答の信号BUSACKのレベルが“1”となった時点
でアービタ25は、抑制回路43からの要求信号REQ
3が“1”となっていることから、図9(7)に示すよ
うに抑制回路43に対する肯定応答信号ACK3へのレ
ベルを“1”として、バス権を抑制回路43を介して第
3のDMAコントローラ23に与え、要求していたDM
A処理を実行させる。
When the processing in the CPU 12 'is once finished and the level of the signal BUSACK of the affirmative response becomes "1", the arbiter 25 determines that the request signal REQ from the suppression circuit 43 is reached.
Since 3 is "1", the level of the acknowledgment signal ACK3 to the suppression circuit 43 is set to "1" as shown in FIG. DM given to DMA controller 23 and requested
A process is executed.

【0114】その後、第3のDMAコントローラ23に
よるDMA処理が終了し、図9(3)で示す第3のDM
Aコントローラ23からの要求信号REQ_ORG3の
レベルが“0”となると、抑制回路43はこれを上記ス
テップC03で判断して図9(6)に示すマスク信号の
レベルを“1”とする。
Thereafter, the DMA processing by the third DMA controller 23 is completed, and the third DM shown in FIG. 9C is generated.
When the level of the request signal REQ_ORG3 from the A controller 23 becomes "0", the suppression circuit 43 judges this in step C03 and sets the level of the mask signal shown in FIG. 9 (6) to "1".

【0115】したがって、アンド回路51の出力である
アービタ25への要求信号REQ3も“0”となり、ア
ービタ25は図9(8)に示すCPU12′への信号B
USREQのレベルを“0”とし、続いて図9(9)に
示すCPU12′からの肯定応答の信号BUSACKの
レベルも“0”となると、図9(7)にもその一部を示
すように第1及び第2のDMAコントローラ21,2
2、抑制回路43,44に対する肯定応答信号ACK1
〜4のレベルを一括して“0”とする。
Therefore, the request signal REQ3 to the arbiter 25, which is the output of the AND circuit 51, becomes "0", and the arbiter 25 outputs the signal B to the CPU 12 'shown in FIG. 9 (8).
When the level of USREQ is set to "0" and then the level of the signal BUSACK of the positive response from the CPU 12 'shown in FIG. 9 (9) also becomes "0", a part thereof is also shown in FIG. 9 (7). First and second DMA controllers 21,2
2. Acknowledgment signal ACK1 to the suppression circuits 43 and 44
The levels of 4 to 4 are collectively set to "0".

【0116】このとき抑制回路43では、マスク信号を
“1”レベルとしてDMA処理の実行を一時的に停止し
ながら、CPU12′からの停止フラグのレベルが
“0”となるのを待機している。
At this time, the suppression circuit 43 waits for the level of the stop flag from the CPU 12 'to become "0" while temporarily stopping the execution of the DMA processing by setting the mask signal to "1" level. .

【0117】その後、第3のDMAコントローラ23か
らの要求信号REQ_ORG3が再び“1”となるが、
抑制回路43ではマスク信号が“1”となっており、ア
ービタ25への要求信号REQ3は依然として“0”の
ままとなる。
After that, the request signal REQ_ORG3 from the third DMA controller 23 becomes "1" again,
In the suppression circuit 43, the mask signal is "1", and the request signal REQ3 to the arbiter 25 is still "0".

【0118】そして、図9(5)に示すCPU12′か
らの停止フラグが“0”となると、抑制回路43ではこ
れをステップC05で判断してステップC01に進み、
再びマスク信号を“0”とさせる。
When the stop flag from the CPU 12 'shown in FIG. 9 (5) becomes "0", the suppressing circuit 43 judges this at step C05 and proceeds to step C01.
The mask signal is set to "0" again.

【0119】これにより第3のDMAコントローラ23
からの要求信号REQ_ORG3がそのまま要求信号R
EQ3としてアービタ25へ送達されることとなり、ア
ービタ25はCPU12′への信号BUSREQのレベ
ルを“1”とする。
As a result, the third DMA controller 23
The request signal REQ_ORG3 from the request signal R
It is delivered to the arbiter 25 as EQ3, and the arbiter 25 sets the level of the signal BUSREQ to the CPU 12 'to "1".

【0120】その後、タイミングt22においてCPU
12′がバス権を一時的に開放し、図9(9)に示すア
ービタ25への肯定応答の信号BUSACKのレベルを
“1”とする。
Thereafter, at timing t22, the CPU
12 'temporarily releases the bus right, and sets the level of the signal BUSACK of the positive response to the arbiter 25 shown in FIG. 9 (9) to "1".

【0121】このとき、アービタ25は抑制回路43か
らの要求信号REQ3が“1”となっていることから、
図9(7)に示すように抑制回路43に対する肯定応答
信号ACK3へのレベルを“1”として、バス権を抑制
回路43を介して第3のDMAコントローラ23に与
え、要求していたDMA処理を実行させる。
At this time, the arbiter 25 determines that the request signal REQ3 from the suppressing circuit 43 is "1".
As shown in FIG. 9 (7), the level of the acknowledgment signal ACK3 to the suppression circuit 43 is set to "1", the bus right is given to the third DMA controller 23 via the suppression circuit 43, and the requested DMA processing is performed. To execute.

【0122】その後、第3のDMAコントローラ23に
よるDMA処理が終了し、図9(3)で示す第3のDM
Aコントローラ23からの要求信号REQ_ORG3の
レベルが“0”となると、アービタ25への要求信号R
EQ3も“0”となり、アービタ25は図9(8)に示
すCPU12′への信号BUSREQのレベルを“0”
とし、続いて図9(9)に示すCPU12′からの肯定
応答の信号BUSACKのレベルも“0”となると、図
9(7)にもその一部を示すように第1及び第2のDM
Aコントローラ21,22、抑制回路43,44に対す
る肯定応答信号ACK1〜4のレベルを一括して“0”
とする。
Thereafter, the DMA processing by the third DMA controller 23 is completed, and the third DM shown in FIG. 9C is generated.
When the level of the request signal REQ_ORG3 from the A controller 23 becomes “0”, the request signal R to the arbiter 25
EQ3 also becomes "0", and the arbiter 25 sets the level of the signal BUSREQ to the CPU 12 'shown in FIG. 9 (8) to "0".
Then, when the level of the signal BUSACK of the affirmative response from the CPU 12 'shown in FIG. 9 (9) also becomes "0", the first and second DMs are also partially shown in FIG. 9 (7).
The levels of the positive acknowledgment signals ACK1 to ACK4 to the A controllers 21 and 22 and the suppression circuits 43 and 44 are collectively "0".
And

【0123】このように優先順位が低く、多少実行が遅
れても支障のないDMA処理を実行する第3のDMAコ
ントローラ23に対して、上記CPU12′からの停止
フラグが“1”となる前に要求信号REQ_ORG3を
出力した場合には、図9(10)中にタイミングT2で
示すようにDMA処理を許可する一方、上記CPU1
2′からの停止フラグが“1”となった後に要求信号R
EQ_ORG3を出力した場合には、図9(10)中に
タイミングT3で示すようにDMA処理を許可せず、C
PU12′が優先的にメモリ13を使用しての処理を実
行するように抑制回路43が制御している。
As described above, before the stop flag from the CPU 12 'becomes "1" for the third DMA controller 23 which executes the DMA processing having the low priority and having no trouble even if the execution is slightly delayed. When the request signal REQ_ORG3 is output, the DMA processing is permitted as shown at timing T2 in FIG.
Request signal R after the stop flag from 2'becomes "1"
When EQ_ORG3 is output, the DMA process is not permitted as indicated by timing T3 in FIG. 9 (10), and C
The suppression circuit 43 controls so that the PU 12 ′ preferentially executes the processing using the memory 13.

【0124】そのため、CPU12′の負荷の状態に応
じて、優先順位の低い第3(第4)のDMAコントロー
ラ23(24)からの要求を一時的に遮断するように制
御できるため、CPU12′がソフトウェアを効率的且
つ円滑に処理することが可能となる。
Therefore, it is possible to control so that the request from the third (fourth) DMA controller 23 (24) having a lower priority order is temporarily cut off according to the load state of the CPU 12 '. The software can be processed efficiently and smoothly.

【0125】なお、上記第1及び第2の実施の形態で
は、抑制回路33,34,43,44をアービタ25と
第3及び第4のDMAコントローラ23,24の間に配
設するものとした。
In the first and second embodiments, the suppression circuits 33, 34, 43 and 44 are arranged between the arbiter 25 and the third and fourth DMA controllers 23 and 24. .

【0126】これにより、アービタ25自体は上記図1
0でも示したような一般的な構成のものをそのまま使用
することができるものであるが、あえて抑制回路33,
34,43,44の機能をアービタ25内に一体にして
持たせるものとしてもよく、そうすることで、DMA制
御に関する全体の回路構成をより簡素化することができ
る。
As a result, the arbiter 25 itself is the same as that shown in FIG.
Although it is possible to use a general configuration as shown in 0, the suppression circuit 33,
The functions of 34, 43, and 44 may be integrally provided in the arbiter 25, and by doing so, the entire circuit configuration regarding the DMA control can be further simplified.

【0127】なお、上記各実施の形態においては、第1
乃至第4のDMAコントローラ2121〜24とCPU
12(12′)との間にアービタ25を設けるものとし
て説明したが、アービタ25を設けずに直接各DMAコ
ントローラ21〜24とCPU12(12′)の間で信
号の授受を行なうようにしてもよい。
In each of the above embodiments, the first
To fourth DMA controllers 2121 to 24 and CPU
Although the arbiter 25 is provided between the CPU 12 (12 ') and the 12 (12'), a signal may be directly transmitted and received between each of the DMA controllers 21 to 24 and the CPU 12 (12 ') without providing the arbiter 25. Good.

【0128】また、DMAコントローラを複数設けるの
ではなく、1つだけ設けて、このDMAコントローラに
対して抑制回路を設けるようにしてもよい。
Further, instead of providing a plurality of DMA controllers, only one may be provided and the suppressing circuit may be provided for this DMA controller.

【0129】さらに、DMAコントローラを複数備え、
全てのDMAコントローラが多少実行が遅れても支障の
ないものである場合には、それら全てのDMAコントロ
ーラに対して抑制回路を設けるようにしてもよい。
Further, a plurality of DMA controllers are provided,
If all DMA controllers have no problem even if the execution is delayed to some extent, suppression circuits may be provided for all the DMA controllers.

【0130】その他、本発明は上記実施の形態に限ら
ず、その要旨を逸脱しない範囲内で種々変形して実施す
ることが可能であるものとする。
In addition, the present invention is not limited to the above-described embodiment, and various modifications can be carried out without departing from the scope of the invention.

【0131】さらに、上記実施の形態には種々の段階の
発明が含まれており、開示される複数の構成要件におけ
る適宜な組合わせにより種々の発明が抽出され得る。例
えば、実施の形態に示される全構成要件からいくつかの
構成要件が削除されても、発明が解決しようとする課題
の欄で述べた課題の少なくとも1つが解決でき、発明の
効果の欄で述べられている効果の少なくとも1つが得ら
れる場合には、この構成要件が削除された構成が発明と
して抽出され得る。
Furthermore, the above-described embodiments include inventions at various stages, and various inventions can be extracted by appropriately combining a plurality of disclosed constituent elements. For example, even if some constituent elements are deleted from all the constituent elements shown in the embodiments, at least one of the problems described in the section of the problem to be solved by the invention can be solved, and it is described in the section of the effect of the invention. When at least one of the effects described above is obtained, a configuration in which this constituent element is deleted can be extracted as an invention.

【0132】[0132]

【発明の効果】請求項1記載の発明によれば、優先順位
が低く、多少実行が遅れても支障のないDMA処理に関
しては、対応するDMAコントローラからのDMA要求
信号を一時的に抑制することで、その抑制を行なってい
る間はメインコントローラの処理を優先して継続して実
行させることが可能となる。
According to the first aspect of the present invention, the DMA request signal from the corresponding DMA controller is temporarily suppressed for the DMA processing which has a low priority and has no problem even if the execution is slightly delayed. Thus, while the suppression is being performed, the processing of the main controller can be prioritized and continuously executed.

【0133】請求項2記載の発明によれば、上記請求項
1記載の発明の効果に加えて、複数のDMAコントロー
ラ個々での抑制の有無により優先順位を設定して、効率
的にDMA制御を実行できる。
According to the invention described in claim 2, in addition to the effect of the invention described in claim 1, the priority order is set depending on the presence / absence of suppression in each of the plurality of DMA controllers to efficiently perform the DMA control. I can do it.

【0134】請求項3記載の発明によれば、上記請求項
2記載の発明の効果に加えて、アービタ回路によりメイ
ンコントローラへの前段でDMA要求信号を統括管理す
るため、メインコントローラに負担をかけることなくD
MA制御を実行できる。
According to the invention described in claim 3, in addition to the effect of the invention described in claim 2, since the DMA request signal is centrally managed by the arbiter circuit before the main controller, a load is imposed on the main controller. Without D
MA control can be performed.

【0135】請求項4記載の発明によれば、上記請求項
1記載の発明の効果に加えて、簡単なタイマー回路の付
与により実現できる。
According to the invention described in claim 4, in addition to the effect of the invention described in claim 1, it can be realized by adding a simple timer circuit.

【0136】請求項5記載の発明によれば、上記請求項
3記載の発明の効果に加えて、より優先順位の高い他の
DMAコントローラが全てDMA処理を要求または実行
していない時間をカウントしてそのDMAコントローラ
からのDMA要求信号を所定時間遅延させるため、優先
順位が低く、多少実行が遅れても支障のないDMA処理
を分散させることで、メインコントローラに対して処理
する時間を適切に与えることができる。
According to the invention described in claim 5, in addition to the effect of the invention described in claim 3, the time during which no other DMA controller having a higher priority requests or executes DMA processing is counted. Since the DMA request signal from the DMA controller is delayed by a predetermined time, the DMA processing having a low priority and having no problem even if the execution is slightly delayed is dispersed, thereby giving the main controller an appropriate processing time. be able to.

【0137】請求項6記載の発明によれば、上記請求項
1記載の発明の効果に加えて、メインコントローラの負
荷状態に応じて、優先順位の低いDMA処理の即時実行
の有無を制御できるため、ソフトウェアを効率的且つ円
滑に処理することが可能となる。
According to the invention described in claim 6, in addition to the effect of the invention described in claim 1, it is possible to control the presence / absence of immediate execution of the DMA processing having a low priority in accordance with the load state of the main controller. Therefore, the software can be processed efficiently and smoothly.

【0138】請求項7記載の発明によれば、上記請求項
6記載の発明の効果に加えて、メインコントローラは、
連続した処理が必要な状況で不要にDMAコントローラ
からのDMA処理の要求が入力されるのを遮断してお
き、処理が終了した時点でDMA処理を許可できる。
According to the invention of claim 7, in addition to the effect of the invention of claim 6, the main controller is
In a situation where continuous processing is required, unnecessary DMA processing requests from the DMA controller are blocked, and DMA processing can be permitted when the processing is completed.

【0139】請求項8記載の発明によれば、上記請求項
3記載の発明の効果に加えて、回路構成を簡素化するこ
とができる。
According to the invention described in claim 8, in addition to the effect of the invention described in claim 3, the circuit configuration can be simplified.

【0140】請求項9記載の発明によれば、優先順位が
低く、多少実行が遅れても支障のないDMA処理に関し
ては、対応するDMAコントローラからのDMA要求信
号を一時的に抑制することで、その抑制を行なっている
間はメインコントローラの処理を優先して継続して実行
させることが可能となる。
According to the ninth aspect of the present invention, for the DMA processing having a low priority and having no problem even if the execution is delayed, the DMA request signal from the corresponding DMA controller is temporarily suppressed. While the suppression is being performed, the processing of the main controller can be prioritized and continuously executed.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の第1の実施の形態に係るDMA制御回
路の構成を示すブロック図。
FIG. 1 is a block diagram showing a configuration of a DMA control circuit according to a first embodiment of the present invention.

【図2】図1の抑制回路に入出力する各信号と一部の伝
達経路を示す図。
FIG. 2 is a diagram showing each signal input to and output from the suppression circuit of FIG. 1 and a part of a transmission path.

【図3】同実施の形態に係る抑制回路での処理内容を示
すフローチャート。
FIG. 3 is a flowchart showing processing contents in the suppression circuit according to the same embodiment.

【図4】同実施の形態に係る各信号の動作内容を例示す
るタイミングチャート。
FIG. 4 is a timing chart illustrating an operation content of each signal according to the same embodiment.

【図5】本発明の第2の実施の形態に係るDMA制御回
路の構成を示すブロック図。
FIG. 5 is a block diagram showing a configuration of a DMA control circuit according to a second embodiment of the present invention.

【図6】図5の抑制回路に入出力する各信号と一部の伝
達経路を示す図。
FIG. 6 is a diagram showing each signal input to and output from the suppression circuit of FIG. 5 and a part of a transmission path.

【図7】図6の抑制回路内に設けられる論理回路の構成
を示す図。
7 is a diagram showing the configuration of a logic circuit provided in the suppression circuit of FIG.

【図8】同実施の形態に係る抑制回路での処理内容を示
すフローチャート。
FIG. 8 is a flowchart showing processing contents in the suppression circuit according to the same embodiment.

【図9】同実施の形態に係る各信号の動作内容を例示す
るタイミングチャート。
FIG. 9 is a timing chart illustrating the operation content of each signal according to the same embodiment.

【図10】一般的なDMA制御回路の構成を例示するブ
ロック図。
FIG. 10 is a block diagram illustrating the configuration of a general DMA control circuit.

【図11】図10のアービタが実行するDMA制御の処
理内容を示すフローチャート。
11 is a flowchart showing the processing contents of DMA control executed by the arbiter of FIG.

【図12】図10の回路で送受される各信号の動作内容
を例示するタイミングチャート。
12 is a timing chart illustrating the operation content of each signal transmitted and received by the circuit of FIG.

【符号の説明】[Explanation of symbols]

11,11′,11″…DMA統括コントローラ 12,12′…CPU 13…メモリ 21〜24…DMAコントローラ 25…アービタ 33,34…抑制回路 43,44…抑制回路 51…アンド回路 52…インバータ 11, 11 ', 11 "... DMA integrated controller 12, 12 '... CPU 13 ... Memory 21-24 ... DMA controller 25 ... Arbiter 33, 34 ... Suppression circuit 43, 44 ... Suppression circuit 51 ... AND circuit 52 ... Inverter

Claims (9)

【特許請求の範囲】[Claims] 【請求項1】メモリと、 このメモリを用いて処理を実行するメインコントローラ
と、 このメインコントローラを介さずに上記メモリを用いて
直接処理を実行するDMAコントローラと、 上記DMAコントローラに対して設けられ、DMAコン
トローラから上記メインコントローラへ出力される上記
メモリへのアクセス権を要求するDMA要求信号を一時
的に抑制する抑制手段とを具備したことを特徴とするD
MA制御装置。
1. A memory, a main controller that executes processing using the memory, a DMA controller that directly executes processing using the memory without going through the main controller, and a DMA controller provided for the DMA controller. , Suppressing means for temporarily suppressing a DMA request signal output from the DMA controller to the main controller and requesting an access right to the memory.
MA controller.
【請求項2】複数のDMAコントローラを備え、 上記抑制手段は、上記複数のDMAコントローラ中の少
なくとも一つに対して設けられることを特徴とする請求
項1記載のDMA制御装置。
2. The DMA controller according to claim 1, further comprising a plurality of DMA controllers, wherein the suppressing means is provided for at least one of the plurality of DMA controllers.
【請求項3】上記メインコントローラと複数のDMAコ
ントローラとの間で上記メモリへのアクセス権を調停す
るアービタ回路を備え、 上記抑制手段は、DMAコントローラから上記アービタ
回路へ出力される上記DMA要求信号を一時的に抑制す
ることを特徴とする請求項2記載のDMA制御装置。
3. An arbiter circuit for arbitrating access rights to the memory between the main controller and a plurality of DMA controllers, wherein the suppressing means outputs the DMA request signal output from the DMA controller to the arbiter circuit. 3. The DMA control device according to claim 2, wherein the DMA controller is temporarily suppressed.
【請求項4】上記抑制手段は、DMAコントローラから
のDMA要求信号を所定時間遅延して上記メインコント
ローラへ出力することを特徴とする請求項1記載のDM
A制御装置。
4. The DM according to claim 1, wherein the suppressing means delays the DMA request signal from the DMA controller by a predetermined time and outputs it to the main controller.
A control device.
【請求項5】上記抑制手段は、抑制手段を介さずに直接
上記アービタ回路と接続されるDMAコントローラから
のDMA要求信号が出力されていない状態をカウント
し、このカウント値が所定値に達するまでDMA要求信
号の出力を遅延させるすることを特徴とする請求項3記
載のDMA制御装置。
5. The suppressing means counts a state in which a DMA request signal is not output from a DMA controller directly connected to the arbiter circuit without passing through the suppressing means, until the count value reaches a predetermined value. 4. The DMA control device according to claim 3, wherein the output of the DMA request signal is delayed.
【請求項6】上記抑制手段は、DMAコントローラから
上記メインコントローラへ出力されるDMA要求信号を
上記メインコントローラからの信号に応じて一時的に遮
断することを特徴とする請求項1記載のDMA制御装
置。
6. The DMA control according to claim 1, wherein the suppressing means temporarily blocks a DMA request signal output from the DMA controller to the main controller in response to a signal from the main controller. apparatus.
【請求項7】上記抑制手段は、上記メインコントローラ
から信号が出力された時点でDMAコントローラからD
MA要求信号が出力されている場合、DMA要求信号の
遮断を遅延させることを特徴とする請求項6記載のDM
A制御装置。
7. The suppressing means outputs D from the DMA controller when a signal is output from the main controller.
7. The DM according to claim 6, wherein the interruption of the DMA request signal is delayed when the MA request signal is output.
A control device.
【請求項8】上記抑制手段と上記アービタ回路とを一体
化したハードウェア回路で構成することを特徴とする請
求項3記載のDMA制御装置。
8. The DMA controller according to claim 3, wherein the suppressing means and the arbiter circuit are integrated into a hardware circuit.
【請求項9】メモリと、このメモリを用いて処理を実行
するメインコントローラと、このメインコントローラを
介さずに上記メモリを用いて直接処理を実行するDMA
コントローラとを備えたDMA制御装置におけるDMA
制御方法であって、 上記DMAコントローラから上記メインコントローラへ
出力される上記メモリへのアクセス権を要求するDMA
要求信号の出力を一時的に抑制することを特徴とするD
MA制御方法。
9. A memory, a main controller that executes a process using the memory, and a DMA that directly executes the process using the memory without going through the main controller.
DMA in DMA controller with controller
A control method, wherein a DMA requesting an access right to the memory output from the DMA controller to the main controller
D characterized by temporarily suppressing the output of the request signal
MA control method.
JP2002054307A 2002-02-28 2002-02-28 DMA control device and DMA control method Pending JP2003256353A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002054307A JP2003256353A (en) 2002-02-28 2002-02-28 DMA control device and DMA control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002054307A JP2003256353A (en) 2002-02-28 2002-02-28 DMA control device and DMA control method

Publications (1)

Publication Number Publication Date
JP2003256353A true JP2003256353A (en) 2003-09-12

Family

ID=28665497

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002054307A Pending JP2003256353A (en) 2002-02-28 2002-02-28 DMA control device and DMA control method

Country Status (1)

Country Link
JP (1) JP2003256353A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013027261A1 (en) * 2011-08-23 2013-02-28 富士通株式会社 Information processing apparatus and scheduling method
US9152519B2 (en) 2010-10-14 2015-10-06 Fujitsu Limited Storage control apparatus, method of setting reference time, and computer-readable storage medium storing reference time setting program

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9152519B2 (en) 2010-10-14 2015-10-06 Fujitsu Limited Storage control apparatus, method of setting reference time, and computer-readable storage medium storing reference time setting program
WO2013027261A1 (en) * 2011-08-23 2013-02-28 富士通株式会社 Information processing apparatus and scheduling method
CN103765394A (en) * 2011-08-23 2014-04-30 富士通株式会社 Information processing apparatus and scheduling method
JP5668858B2 (en) * 2011-08-23 2015-02-12 富士通株式会社 Information processing apparatus and scheduling method
US9329998B2 (en) 2011-08-23 2016-05-03 Fujitsu Limited Information processing apparatus and scheduling method

Similar Documents

Publication Publication Date Title
US8370552B2 (en) Priority based bus arbiters avoiding deadlock and starvation on buses that support retrying of transactions
JP5829890B2 (en) Semiconductor data processing apparatus, time trigger communication system, and communication system
US7962678B2 (en) Bus arbitration apparatus and method
JP5565204B2 (en) Data transfer apparatus, data transfer method and program, and image forming apparatus
US7007138B2 (en) Apparatus, method, and computer program for resource request arbitration
JP2002366507A (en) Multi-channel DMA controller and processor system
US7467245B2 (en) PCI arbiter
JP2001014243A (en) Reception interrupt processor
JP2003256353A (en) DMA control device and DMA control method
US20050223135A1 (en) Data transfer processing device and data transfer processing method
JP2005085079A (en) Data transfer controller
JP2000194683A (en) Arbitration circuit and method for shared memory
JP2004078508A (en) Bus arbitration circuit, bus arbitration method, and its program
US6105082A (en) Data processor used in a data transfer system which includes a detection circuit for detecting whether processor uses bus in a forthcoming cycle
JP4151362B2 (en) Bus arbitration method, data transfer device, and bus arbitration method
JP2004194014A (en) Bus controller and information processing system
CN113711192A (en) Information processing apparatus
JP4633290B2 (en) Data processing apparatus and access arbitration method in the apparatus
JP2004005589A (en) Resource request adjustment device, resource request adjustment method, and computer program
JP2025011399A (en) Data Transmission Systems
JPH1165818A (en) Method and device for data transfer and method and device for threshold adjustment
KR100902506B1 (en) Direct memory access method based on remaining data transfer amount and direct memory access control apparatus using same
JPH05250308A (en) Arbitration system of electronic computer
JP2002259203A (en) Device and method for arbitrating transaction
JP2012181790A (en) Interruption controller and time-division interruption generation method