JPH0696007A - Dma transfer system - Google Patents

Dma transfer system

Info

Publication number
JPH0696007A
JPH0696007A JP24786292A JP24786292A JPH0696007A JP H0696007 A JPH0696007 A JP H0696007A JP 24786292 A JP24786292 A JP 24786292A JP 24786292 A JP24786292 A JP 24786292A JP H0696007 A JPH0696007 A JP H0696007A
Authority
JP
Japan
Prior art keywords
transfer
control information
dma
transfer control
read
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.)
Withdrawn
Application number
JP24786292A
Other languages
Japanese (ja)
Inventor
Hidetoshi Hanaoka
秀壽 花岡
Goji Mikami
剛司 三上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Fujitsu Electronics Inc
Original Assignee
Fujitsu Ltd
Fujitsu Electronics Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd, Fujitsu Electronics Inc filed Critical Fujitsu Ltd
Priority to JP24786292A priority Critical patent/JPH0696007A/en
Publication of JPH0696007A publication Critical patent/JPH0696007A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

PURPOSE:To shorten the read time of following transfer control information after DMA transfer based upon current transfer control information ends as to a DMA transfer system of descriptor constitution which performs the DMA transfer according to transfer control information in a memory. CONSTITUTION:Plural pieces of transfer control information are previously stored in a transfer control information storage means 18 and a DMA control means 14 reads the pieces of transfer control information in a storage means 16 for control individually; when a DMA transfer request is made, the DMA transfer system performs the DMA transfer on the basis of the pieces of transfer control information read in the storage means 16 for control. The DMA control means 14 reads the transfer control information following the current transfer control information, stored in the control storage means 16, in a prefetch means 17 previously from the transfer control information storage means 18, and fetches the following transfer control information in the control storage means from the prefetch means 17 when the DMA transfer based upon the current transfer control information ends.

Description

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

【0001】[0001]

【産業上の利用分野】本発明はDMA転送方式に係り、
特に、メモリ上の転送制御情報に従ってDMA(ダイレ
クトメモリアクセス)転送を行うディスクリプタ構成の
DMA転送方式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a DMA transfer system,
In particular, the present invention relates to a descriptor DMA transfer method that performs DMA (direct memory access) transfer according to transfer control information on a memory.

【0002】近年、コンピュータシステムの高速化に伴
い、データ転送を行う際のメモリアクセス時間の短縮
と、中央処理装置(CPU)の負荷軽減が要求されてい
る。このため、ディスクリプタ構成のDMA転送方式が
用いられているが、転送制御情報を読み込む時間の短縮
が必要とされている。
[0002] In recent years, as computer systems have become faster, there has been a demand for shortening the memory access time for data transfer and reducing the load on the central processing unit (CPU). For this reason, although the DMA transfer method of the descriptor structure is used, it is necessary to shorten the time for reading the transfer control information.

【0003】[0003]

【従来の技術】図8は、従来のDMA転送方式の構成図
を示す。図8に示すように、CPU11、入力出力装置
12、転送データを記憶するRAM28、DMA転送を
行うための転送制御情報を記憶するRAM29、及びD
MA転送の制御を行うDMA制御装置44が、データバ
ス1、アドレスバス2、コントロールバス3で接続され
ている。
2. Description of the Related Art FIG. 8 is a block diagram of a conventional DMA transfer system. As shown in FIG. 8, a CPU 11, an input / output device 12, a RAM 28 for storing transfer data, a RAM 29 for storing transfer control information for performing DMA transfer, and D.
A DMA controller 44 for controlling MA transfer is connected by a data bus 1, an address bus 2 and a control bus 3.

【0004】RAM29には、4バイトからなる転送制
御情報(ディスクリプタ)が、所定の番地(アドレス)
から連続して複数記憶される。図8では、番地“000
0”H(Hは16進表示を示す)から4バイトずつ連続
して記憶されている状態を示している。
Transfer control information (descriptor) consisting of 4 bytes is stored in the RAM 29 at a predetermined address.
Are continuously stored. In FIG. 8, the address "000
It shows a state in which 4 bytes are continuously stored from 0 "H (H indicates hexadecimal display).

【0005】DMA制御装置44は、転送制御情報をR
AM29から読み込む制御レジスタ46と、DMA転送
の制御、及び制御レジスタ46の制御を行うDMA制御
回路45とからなる。
The DMA controller 44 transfers the transfer control information to the R
The control register 46 is read from the AM 29, and the DMA control circuit 45 controls the DMA transfer and controls the control register 46.

【0006】次に図8のDMA転送方式のDMA制御装
置44の動作について説明する。図9はDMA制御装置
44のDMA制御回路45の動作フローチャートを示
す。このフローチャートは、RAM29に転送制御情報
が設定された後にスタートする。
Next, the operation of the DMA controller 44 of the DMA transfer system shown in FIG. 8 will be described. FIG. 9 shows an operation flowchart of the DMA control circuit 45 of the DMA control device 44. This flowchart starts after the transfer control information is set in the RAM 29.

【0007】ステップ301では、転送制御情報のアド
レスポインタであるIに先頭番地の“0000”Hを設
定する。次のステップ302では、RAM29のI番地
から転送制御情報4バイトを制御レジスタ46に読み込
む。
In step 301, the leading address "0000" H is set in I which is the address pointer of the transfer control information. In the next step 302, 4 bytes of transfer control information are read from the address I of the RAM 29 into the control register 46.

【0008】次のステップ303〜ステップ305で
は、ステップ302で制御レジスタ46に読み込んだ転
送制御情報に基づいて、DMA転送を行う。ステップ3
03では、CPU11、又は入出力装置12からDMA
転送要求が有るかを調べ、DMA転送要求が有るとき、
次のステップ304に進む。ステップ304では、CP
U11、又は入力出力装置12からDMA転送要求を受
けて、制御レジスタ46に保持している転送制御情報に
基づいて、入出力装置12とRAM28との間でDMA
転送を実行する。
In the next steps 303 to 305, DMA transfer is performed based on the transfer control information read in the control register 46 in step 302. Step 3
03, DMA from the CPU 11 or the input / output device 12
Check if there is a transfer request, and if there is a DMA transfer request,
Proceed to next step 304. In step 304, the CP
A DMA transfer request is received from U11 or the input / output device 12, and the DMA is transferred between the input / output device 12 and the RAM 28 based on the transfer control information held in the control register 46.
Perform the transfer.

【0009】次のステップ305では、制御レジスタ4
6に保持している転送制御情報に基づくDMA転送が全
て終了したかどうかを判断する。DMA転送が全て終了
したときは、ステップ306へ進み、終了しないとき
は、ステップ303へ戻り、DMA転送を続ける。
In the next step 305, the control register 4
It is determined whether or not all DMA transfers based on the transfer control information held in No. 6 are completed. When all the DMA transfers are completed, the process proceeds to step 306, and when not completed, the process returns to step 303 to continue the DMA transfer.

【0010】ステップ306では、RAM29のI番地
に転送終了後のステータスを書き出す。ステップ307
では、アドレスポインタIの値を4増やして、後続の転
送制御情報の先頭番地を示すようにする。
In step 306, the status after the transfer is written to the address I of the RAM 29. Step 307
Then, the value of the address pointer I is incremented by 4 so as to indicate the head address of the subsequent transfer control information.

【0011】ステップ307の終了後、ステップ302
へ戻り、次の転送制御情報に基づくDMA転送を行う。
DMA制御装置44は、全ての転送制御情報に基づくD
MA転送が終了するまで、このフローチャートに示す動
作を続ける。
After step 307, step 302
Then, the DMA transfer based on the next transfer control information is performed.
The DMA controller 44 uses the D based on all transfer control information.
The operation shown in this flowchart is continued until the MA transfer is completed.

【0012】図10はDMA制御装置44の動作タイミ
ングチャートを示す。図10(A)は転送制御情報を制
御レジスタ46に読み込むタイミングを示し、図10
(B)は転送終了後のステータスをRAM29に書き出
すタイミングを示す。また、図10(C)は、CPU、
又は入出力装置12からのDMA転送要求のタイミング
を示し、図10(D)はデータバス上に現れる有効なデ
ータのタイミングを示している。
FIG. 10 shows an operation timing chart of the DMA controller 44. FIG. 10A shows the timing of reading the transfer control information into the control register 46.
(B) shows the timing at which the status after the transfer is written to the RAM 29. In addition, FIG.
Alternatively, the timing of a DMA transfer request from the input / output device 12 is shown, and FIG. 10D shows the timing of valid data appearing on the data bus.

【0013】このタイミングチャートは、RAM29に
転送制御情報が設定されて、図9のフローチャートの初
めからスタートした場合の一例を示している。状態
(1)では、RAM29の“0000”H番地からの4
バイトの転送制御情報を制御レジスタ46に読み込んで
いる。
This timing chart shows an example in which the transfer control information is set in the RAM 29 and the operation is started from the beginning of the flowchart of FIG. In the state (1), 4 from the "0000" H address of the RAM 29
The byte transfer control information is read into the control register 46.

【0014】次の状態(2)では、DMA転送要求が生
じるのを待っている。次の状態(3)では、DMA転送
要求により入出力装置12とRAM28との間の1回目
のDMA転送を行う。同様に状態(5)では2回目のD
MA転送、状態(7)では3回目のDMA転送を行う。
また、状態(4)、状態(6)では、状態(2)と同様
に、DMA転送要求が生じるのを待っている。
In the next state (2), it waits for a DMA transfer request to occur. In the next state (3), the first DMA transfer between the input / output device 12 and the RAM 28 is performed by the DMA transfer request. Similarly, in state (5), the second D
In the MA transfer, state (7), the third DMA transfer is performed.
Further, in the state (4) and the state (6), similarly to the state (2), it waits for a DMA transfer request to occur.

【0015】“0000”H番地からの転送制御情報に
よるDMA転送は、状態(7)の3回目で終了し、状態
(8)では、転送終了後のステータスをRAM29の
“0000”H番地 に書き出している。
The DMA transfer by the transfer control information from the address "0000" H is completed at the third time of the state (7), and in the state (8), the status after the transfer is written to the address "0000" H of the RAM 29. ing.

【0016】次の状態(9)では、“0004”H番地
からの4バイトの転送制御情報を制御レジスタ46に読
み込んでいる。このとき、すでにDMA転送要求が生じ
ているが、転送制御情報を制御レジスタ44に読み込み
中なので、DMA転送は行えない。
In the next state (9), the 4-byte transfer control information from the address "0004" H is read into the control register 46. At this time, although a DMA transfer request has already occurred, DMA transfer cannot be performed because the transfer control information is being read into the control register 44.

【0017】次の状態(10)では、生じているDMA
転送要求により、制御レジスタ46に保持されている転
送制御情報に基づいてDMA転送を行う。状態(10)
では、1回のDMA転送でDMA転送が終了している。
次の状態(11)では、DMA転送終了後のステータス
をRAM29の“0004”H番地 に書き出してい
る。
In the next state (10), the DMA that is occurring
In response to the transfer request, the DMA transfer is performed based on the transfer control information held in the control register 46. State (10)
Then, the DMA transfer is completed by one DMA transfer.
In the next state (11), the status after completion of the DMA transfer is written to the address “0004” H of the RAM 29.

【0018】[0018]

【発明が解決しようとする課題】しかるに、従来のDM
A転送方式では、上記のように、現在の転送制御情報に
基づくDMA転送が終了しないと、後続の転送制御情報
をDMA制御装置に読み込みことができず、転送制御情
報をDMA制御装置に読み込む時間が必ず必要となり、
DMA転送の時間短縮の妨げとなるという問題点があっ
た。
DISCLOSURE OF THE INVENTION Problems to be Solved by the Invention
In the A transfer method, as described above, if the DMA transfer based on the current transfer control information is not completed, the subsequent transfer control information cannot be read into the DMA control device, and the time required to read the transfer control information into the DMA control device. Is always required,
There is a problem that it becomes an obstacle to shortening the time for DMA transfer.

【0019】本発明は、上記の点に鑑みてなされたもの
で、現在の転送制御情報に基づくDMA転送が終了後
の、後続の転送制御情報の読み込み時間の短縮ができる
DMA転送方式を提供することを目的とする。
The present invention has been made in view of the above points, and provides a DMA transfer method capable of shortening the read time of subsequent transfer control information after the completion of the DMA transfer based on the current transfer control information. The purpose is to

【0020】[0020]

【課題を解決するための手段】図1は本発明の原理構成
図を示す。同図中、複数の転送制御情報を転送制御情報
記憶手段18の連続する番地に予め記憶しておき、DM
A制御手段14が制御用記憶手段16に上記転送制御情
報を個別に読み込み、DMA転送要求が発生したとき、
上記制御用記憶手段16に読み込んだ転送制御情報に基
づいてDMA転送を行う。
FIG. 1 is a block diagram showing the principle of the present invention. In the figure, a plurality of transfer control information are stored in advance in consecutive addresses of the transfer control information storage means 18, and DM
When the A control means 14 individually reads the transfer control information into the control storage means 16 and a DMA transfer request is generated,
DMA transfer is performed based on the transfer control information read into the control storage means 16.

【0021】DMA制御手段14に設けられたプリフェ
ッチ手段17には、上記制御用記憶手段16に記憶され
ている現在の転送制御情報の後続の転送制御情報が、転
送制御情報記憶手段18から前もって読み込まれる。現
在の転送制御情報に基づくDMA転送が終了したとき
に、上記後続の転送制御情報を上記プリフェッチ手段1
7から上記制御用記憶手段16に取り込む。
In the prefetch means 17 provided in the DMA control means 14, the transfer control information subsequent to the current transfer control information stored in the control storage means 16 is read in advance from the transfer control information storage means 18. Be done. When the DMA transfer based on the current transfer control information is completed, the subsequent transfer control information is transferred to the prefetch means 1.
It is loaded into the control storage means 16 from 7.

【0022】[0022]

【作用】本発明のDMA制御手段14は、制御用記憶手
段16に記憶されている現在の転送制御情報の後続の転
送制御情報を前もってプリフェッチ手段17に読み込
み、現在の転送制御情報に基づくDMA転送が終了した
ときに、前もって読み込んだ後続の転送制御情報を制御
用記憶手段16に取り込む。このため、後続の転送制御
情報の読み込み時間の短縮を可能とする。
The DMA control means 14 of the present invention reads the subsequent transfer control information of the current transfer control information stored in the control storage means 16 into the prefetch means 17 in advance, and performs the DMA transfer based on the current transfer control information. When the above is completed, the subsequent transfer control information read in advance is taken into the control storage means 16. Therefore, it is possible to shorten the read time of the subsequent transfer control information.

【0023】[0023]

【実施例】図2は本発明の第1実施例の構成図を示す。
同図中、図8と同一構成部分には同一符号を付し、適宜
説明を省略する。図2に示すように、CPU11、入力
出力装置12、転送データ記憶手段13であるRAM2
8、転送制御情報記憶手段18であるRAM29、及び
DMA制御手段14であるDMA制御装置24が、デー
タバス1、アドレスバス2、コントロールバス3で接続
されている。
FIG. 2 is a block diagram of the first embodiment of the present invention.
8, those parts that are the same as those corresponding parts in FIG. 8 are designated by the same reference numerals, and a description thereof will be omitted. As shown in FIG. 2, a CPU 11, an input / output device 12, and a RAM 2 which is a transfer data storage unit 13.
8, a RAM 29 which is the transfer control information storage means 18, and a DMA control device 24 which is the DMA control means 14 are connected by a data bus 1, an address bus 2 and a control bus 3.

【0024】RAM29には、4バイトからなる転送制
御情報(ディスクリプタ)が、所定の番地(アドレス)
から連続して複数記憶される。図2では、番地“000
0”Hから4バイトずつ連続して記憶されている状態を
示している。
Transfer control information (descriptor) consisting of 4 bytes is stored in the RAM 29 at a predetermined address.
Are continuously stored. In FIG. 2, the address "000
It shows a state in which 4 bytes are continuously stored from 0 "H.

【0025】DMA制御装置24は、制御用記憶手段1
6である制御レジスタ26、プリフェッチ手段17であ
るフェッチ回路27、及び制御部15であるDMA制御
回路25とからなる。なお、制御レジスタ26、フェッ
チ回路27は、共に4バイトの記憶容量を持つ。また、
DMA制御回路25はDMA転送の制御、制御レジスタ
26、及びフェッチ回路27の制御を行う。
The DMA controller 24 is a storage means for control 1
6, a control register 26, a fetch circuit 27 that is the prefetch means 17, and a DMA control circuit 25 that is the control unit 15. The control register 26 and the fetch circuit 27 both have a storage capacity of 4 bytes. Also,
The DMA control circuit 25 controls DMA transfer, and controls the control register 26 and the fetch circuit 27.

【0026】次に図2のDMA転送方式のDMA制御装
置24の動作について説明する。図3はDMA制御装置
24のDMA制御回路25の動作フローチャートを示
す。このフローチャートは、RAM29に転送制御情報
が設定された後にスタートする。
Next, the operation of the DMA controller 24 of the DMA transfer system of FIG. 2 will be described. FIG. 3 shows an operation flowchart of the DMA control circuit 25 of the DMA control device 24. This flowchart starts after the transfer control information is set in the RAM 29.

【0027】ステップ101では、転送制御情報のアド
レスポインタであるIに先頭番地の“0000”Hを設
定する。次のステップ102〜ステップ104では、制
御レジスタ26に転送制御情報の4バイトを読み込む。
ステップ102では、フェッチ回路27に次に読み込む
べき転送制御情報が保持されているかどうかを調べ、転
送制御情報が保持されておらず、フェッチ回路が空の場
合は、ステップ103へ進み、転送制御情報が保持され
ている場合は、ステップ104へ進む。
In step 101, the head address "0000" H is set in I which is the address pointer of the transfer control information. In the next steps 102 to 104, 4 bytes of the transfer control information are read into the control register 26.
In step 102, it is checked whether or not the transfer control information to be read next is held in the fetch circuit 27. If the transfer control information is not held and the fetch circuit is empty, the process proceeds to step 103 to transfer control information. If is held, the process proceeds to step 104.

【0028】ステップ103では、RAM29のI番地
から、次に読み込むべき後続の転送制御情報4バイトを
制御レジスタ26に読み込む。ステップ104では、フ
ェッチ回路27から、次に読み込むべき転送制御情報4
バイトを制御レジスタ26に取り込む。
In step 103, the subsequent transfer control information of 4 bytes to be read next is read from the address I of the RAM 29 into the control register 26. In step 104, the transfer control information 4 to be read next from the fetch circuit 27.
The byte is taken into the control register 26.

【0029】このフェッチ回路27から制御レジスタ2
6への転送制御情報の取り込みに掛かる時間は、RAM
29から制御レジスタ26に転送制御情報を読み込む時
間に比べて極めて短い。従って、前もってフェッチ回路
27に次に読み込みべき転送制御情報を保持しておくこ
とで、転送制御情報の制御レジスタ26への読み込み時
間を短縮することができる。
From the fetch circuit 27 to the control register 2
The time required to fetch the transfer control information to RAM 6 is RAM
It is extremely short compared with the time required to read the transfer control information from 29 to the control register 26. Therefore, by holding the transfer control information to be read next in the fetch circuit 27 in advance, the time required to read the transfer control information into the control register 26 can be shortened.

【0030】次のステップ105〜ステップ109で
は、ステップ103、又はステップ104で制御レジス
タ26に読み込んだ転送制御情報に基づいて、DMA転
送を行い、且つ、DMA要求が無いときに、フェッチ回
路27に、後続の転送制御情報を読み込む。
In the next steps 105 to 109, DMA transfer is performed based on the transfer control information read in the control register 26 in step 103 or step 104, and when there is no DMA request, the fetch circuit 27 is instructed. , Read the subsequent transfer control information.

【0031】ステップ105では、CPU11、又は入
出力装置12からDMA転送要求が有るかを調べ、DM
A転送要求が有るとき、次のステップ108に進み、D
MA転送要求が無いときは、ステップ106へ進む。
In step 105, it is checked whether there is a DMA transfer request from the CPU 11 or the input / output device 12, and DM
When there is an A transfer request, the process proceeds to the next step 108, and D
If there is no MA transfer request, the process proceeds to step 106.

【0032】ステップ108では、CPU11、又は入
力出力装置12からDMA転送要求を受けて、制御レジ
スタ26に保持している転送制御情報に基づいて、入出
力装置12とRAM28との間でDMA転送を実行す
る。
In step 108, a DMA transfer request is received from the CPU 11 or the input / output device 12, and DMA transfer is performed between the input / output device 12 and the RAM 28 based on the transfer control information held in the control register 26. Run.

【0033】次のステップ109では、制御レジスタ2
6に保持している転送制御情報に基づくDMA転送が全
て終了したかどうかを判断する。DMA転送が全て終了
したときは、ステップ110へ進み、終了しないとき
は、ステップ105へ戻り、DMA転送を続ける。
In the next step 109, the control register 2
It is determined whether or not all DMA transfers based on the transfer control information held in No. 6 are completed. If all the DMA transfers are completed, the process proceeds to step 110. If not completed, the process returns to step 105 to continue the DMA transfer.

【0034】ステップ105でDMA転送要求が無いと
きは、ステップ106でフェッチ回路27に転送制御情
報を読み込む空きがあるかどうかを調べる。フェッチ回
路27に空きが無いときはステップ105へ戻り、DM
A転送要求を待つ。
When there is no DMA transfer request in step 105, it is checked in step 106 whether the fetch circuit 27 has a space for reading the transfer control information. When the fetch circuit 27 has no free space, the process returns to step 105 and DM
A Wait for transfer request.

【0035】フェッチ回路27に空きがあるときは、ス
テップ107で、RAM29のI+4番地から記憶され
ている後続の転送制御情報をフェッチ回路27に読み込
む。この際、転送制御情報4バイト全部を必ずしも一度
に読み込まず、DMA転送要求の無い時間で読み込める
バイト数の転送制御情報を読み込み、読み込めなかった
分は、次の機会に読み込む。ステップ107が終わる
と、ステップ105へ戻る。
When the fetch circuit 27 has a free space, the subsequent transfer control information stored from the address I + 4 of the RAM 29 is read into the fetch circuit 27 in step 107. At this time, the entire 4 bytes of the transfer control information are not necessarily read at one time, the transfer control information having the number of bytes that can be read in the time when there is no DMA transfer request is read, and the portion that cannot be read is read at the next opportunity. When step 107 ends, the process returns to step 105.

【0036】ステップ110では、RAM29のI番地
に転送終了後のステータスを書き出す。ステップ111
では、アドレスポインタIの値を4増やして、後続の転
送制御情報の先頭番地を示すようにする。
In step 110, the status after the transfer is completed is written in the address I of the RAM 29. Step 111
Then, the value of the address pointer I is incremented by 4 so as to indicate the head address of the subsequent transfer control information.

【0037】ステップ111の終了後、ステップ102
へ戻り、次の転送制御情報に基づくDMA転送を行う。
DMA制御装置24は、全ての転送制御情報に基づくD
MA転送が終了するまで、このフローチャートに示す動
作を続ける。
After completion of step 111, step 102
Then, the DMA transfer based on the next transfer control information is performed.
The DMA controller 24 uses the D based on all transfer control information.
The operation shown in this flowchart is continued until the MA transfer is completed.

【0038】上記のように、DMA転送要求がないと
き、ステップ106、ステップ107で、前もって後続
の転送制御情報をRAM29からフェッチ回路27に読
み込んでおき、ステップ104で、フェッチ回路27か
ら制御レジスタ26に、上記後続の転送制御情報を極め
て短時間で取り込むため、転送制御情報を制御レジスタ
26に読み込む時間を大幅に短縮することができる。
As described above, when there is no DMA transfer request, the subsequent transfer control information is read from the RAM 29 into the fetch circuit 27 in advance in steps 106 and 107, and in step 104, the fetch circuit 27 controls the control register 26. Moreover, since the subsequent transfer control information is fetched in an extremely short time, the time required to read the transfer control information into the control register 26 can be greatly shortened.

【0039】図4はDMA制御装置24の動作タイミン
グチャートを示す。図4(A)は転送制御情報を制御レ
ジスタ26に読み込むタイミングを示し、図4(B)は
転送終了後のステータスをRAM29に書き出すタイミ
ングを示す。また、図4(C)は、フェッチ回路27に
後続の転送制御情報を読み込む空きが有るかどうかを示
し、図4(D)は、CPU11、又は入出力装置12か
らのDMA転送要求のタイミングを示す。また、図4
(E)はデータバス1上に現れる有効なデータのタイミ
ングを示している。
FIG. 4 shows an operation timing chart of the DMA controller 24. 4A shows the timing of reading the transfer control information into the control register 26, and FIG. 4B shows the timing of writing the status after the transfer is completed to the RAM 29. Further, FIG. 4C shows whether or not the fetch circuit 27 has a space to read the subsequent transfer control information, and FIG. 4D shows the timing of the DMA transfer request from the CPU 11 or the input / output device 12. Show. Also, FIG.
(E) shows the timing of valid data appearing on the data bus 1.

【0040】このタイミングチャートは、RAM29に
転送制御情報が設定されて、図3のフローチャートの初
めからスタートした場合の一例を示している。状態
(1)では、RAM29の“0000”H番地からの4
バイトの転送制御情報を制御レジスタ26に読み込む次
の状態(2)では、DMA転送要求が無いので、RAM
29の“0004”H番地からの後続の転送制御情報4
バイトのうちの2バイトを、フェッチ回路27に読み込
む。次の状態(3)では、DMA転送要求により、“0
000”H番地からの4バイトの転送制御情報に基づ
き、入出力装置12とRAM28との間の1回目のDM
A転送を行う。
This timing chart shows an example in which the transfer control information is set in the RAM 29 and the operation is started from the beginning of the flowchart of FIG. In the state (1), 4 from the "0000" H address of the RAM 29
In the next state (2) of reading the byte transfer control information into the control register 26, there is no DMA transfer request, so the RAM
Subsequent transfer control information 4 from address "0004" H of 29
Two of the bytes are read into the fetch circuit 27. In the next state (3), "0" is issued by a DMA transfer request.
The first DM between the input / output device 12 and the RAM 28 based on the 4-byte transfer control information from the address 000 "H.
A transfer is performed.

【0041】次の状態(4)では、DMA転送要求が無
いので、RAM29の“0004”H番地からの4バイ
トの転送制御情報のうち、状態(2)で読み込めなかっ
た残りの2バイトを、フェッチ回路27に読み込む。こ
の読み込みで、フェッチ回路27には、4バイトの転送
制御情報が記憶されて、空きがなくなる。
In the next state (4), since there is no DMA transfer request, of the 4-byte transfer control information from the address "0004" H of the RAM 29, the remaining 2 bytes that could not be read in the state (2) are It is read into the fetch circuit 27. By this reading, 4-byte transfer control information is stored in the fetch circuit 27, and there is no space.

【0042】次の状態(5)では“0000”H番地か
らの4バイトの転送制御情報に基づく2回目のDMA転
送、状態(7)では3回目のDMA転送を行う。また、
状態(6)では、DMA転送要求が生じるのを待ってい
る。
In the next state (5), the second DMA transfer based on the 4-byte transfer control information from the address "0000" H is performed, and in the state (7) the third DMA transfer is performed. Also,
In state (6), it waits for a DMA transfer request to occur.

【0043】“0000”H番地からの転送制御情報4
バイトに基づくDMA転送は、状態(7)の3回目で終
了し、状態(8)では、転送終了後のステータスをRA
M29の“0000”H番地 に書き出している。
Transfer control information 4 from address "0000" H
The byte-based DMA transfer ends at the third time in the state (7), and in the state (8), the status after the transfer is RA
It is written in the address "0000" of M29.

【0044】次の状態(9)では、状態(2)、及び
(4)でフェッチ回路27に読み込み保持してある後続
の転送制御情報4バイトを、制御レジスタ26に取り込
む。RAM29から転送制御情報を制御レジスタ26に
読み込むのに比べて、フェッチ回路27から制御レジス
タ26への転送制御情報の取り込みは、極めて短時間で
行える。
In the next state (9), the following 4 bytes of transfer control information read and held by the fetch circuit 27 in the states (2) and (4) are fetched into the control register 26. Compared to reading the transfer control information from the RAM 29 into the control register 26, the transfer control information can be fetched from the fetch circuit 27 into the control register 26 in an extremely short time.

【0045】次の状態(10)では、生じているDMA
転送要求により、制御レジスタ26に保持されている
“0004”H番地からの転送制御情報4バイトに基づ
いてDMA転送を行う。状態(10)では、1回のDM
A転送でDMA転送が終了している。次の状態(11)
では、DMA転送終了後のステータスをRAM29の
“0004”H番地 に書き出している。
In the next state (10), the DMA that has occurred
In response to the transfer request, DMA transfer is performed based on 4 bytes of transfer control information from the address "0004" H held in the control register 26. In state (10), one DM
The DMA transfer is completed by the A transfer. Next state (11)
Then, the status after the completion of the DMA transfer is written in the address “0004” H of the RAM 29.

【0046】上記のように、第1実施例のDMA転送方
式では、DMA転送要求が無いときに、フェッチ回路2
7に前もって後続の転送制御情報を読み込んでおき、現
在の転送制御情報に基づくDMA転送の終了後に、フェ
ッチ回路27から制御レジスタ26に、この前もって読
み込んだ後続の転送制御情報を取り込む。このため、転
送制御情報を制御レジスタ26に読み込む時間を大幅に
短縮することができる。従って、DMA転送の所要時間
を短縮することができる。
As described above, in the DMA transfer system of the first embodiment, when there is no DMA transfer request, the fetch circuit 2
In step 7, the subsequent transfer control information is read in advance, and after the DMA transfer based on the current transfer control information is completed, the fetch circuit 27 loads the previously read subsequent transfer control information into the control register 26. Therefore, the time required to read the transfer control information into the control register 26 can be significantly reduced. Therefore, the time required for the DMA transfer can be shortened.

【0047】なお、フェッチ回路27の記憶容量は、第
1実施例の値に限られず、より大きな記憶容量とするこ
とも可能である。
The storage capacity of the fetch circuit 27 is not limited to the value of the first embodiment, and a larger storage capacity can be used.

【0048】図5は本発明の第2実施例の構成図を示
す。同図中、図2と同一構成部分には同一符号を付し、
適宜説明を省略する。図5に示すように、CPU11、
入力出力装置12、転送データ記憶手段13であるRA
M28、転送制御情報記憶手段18であるRAM29、
及びDMA制御手段であるDMA制御装置34が、デー
タバス1、アドレスバス2、コントロールバス3で接続
されている。
FIG. 5 shows a block diagram of the second embodiment of the present invention. In the figure, the same components as those in FIG.
Description is omitted as appropriate. As shown in FIG. 5, the CPU 11,
RA which is the input / output device 12 and the transfer data storage means 13.
M28, RAM 29 which is the transfer control information storage means 18,
A DMA control device 34, which is a DMA control means, is connected to the data bus 1, the address bus 2, and the control bus 3.

【0049】RAM29には、4バイトからなる転送制
御情報(ディスクリプタ)が、所定の番地(アドレス)
から連続して複数記憶される。図5では、番地“000
0”Hから4バイトずつ連続して記憶されている状態を
示している。
Transfer control information (descriptor) consisting of 4 bytes is stored in the RAM 29 at a predetermined address.
Are continuously stored. In FIG. 5, the address "000
It shows a state in which 4 bytes are continuously stored from 0 "H.

【0050】DMA制御装置34は、制御用記憶手段1
6である制御レジスタ36、プリフェッチ手段17を構
成するフェッチ回路37とFIFO(ファーストインフ
ァーストアウト)38、及び制御部15であるDMA制
御回路35とからなる。なお、制御レジスタ36、フェ
ッチ回路37は、共に4バイトの記憶容量を持ち、FI
FO38は8バイトの記憶容量を持つ。また、DMA制
御回路35はDMA転送の制御、制御レジスタ36、フ
ェッチ回路37、及びFIFO38の制御を行う。
The DMA control device 34 includes the control storage means 1
6, a control register 36, a fetch circuit 37 and a FIFO (first-in first-out) 38 that form the prefetch means 17, and a DMA control circuit 35 that is the control unit 15. The control register 36 and the fetch circuit 37 both have a storage capacity of 4 bytes, and
The FO 38 has a storage capacity of 8 bytes. The DMA control circuit 35 also controls DMA transfer, and controls the control register 36, the fetch circuit 37, and the FIFO 38.

【0051】次に図5のDMA転送方式のDMA制御装
置34の動作について説明する。図6はDMA制御装置
34のDMA制御回路35の動作フローチャートを示
す。このフローチャートは、RAM29に転送制御情報
が設定された後にスタートする。
Next, the operation of the DMA controller 34 of the DMA transfer system of FIG. 5 will be described. FIG. 6 shows an operation flowchart of the DMA control circuit 35 of the DMA control device 34. This flowchart starts after the transfer control information is set in the RAM 29.

【0052】第2実施例のDMA制御装置34では、I
とJの2つのアドレスポインタを持っており、Iは現在
の転送制御情報の番地を示し、Jは次にFIFO38に
読み込むべき転送制御情報の番地を示す。
In the DMA controller 34 of the second embodiment, I
It has two address pointers, J and J, I indicates the address of the current transfer control information, and J indicates the address of the transfer control information to be read into the FIFO 38 next.

【0053】ステップ201では、転送制御情報のアド
レスポインタであるIに先頭番地の“0000”Hを設
定し、アドレスポインタJに後続の転送制御情報の番地
の“0004”Hを設定する。次のステップ202〜ス
テップ206では、制御レジスタ36に転送制御情報の
4バイトを読み込む。
In step 201, the leading address "0000" H is set in I, which is the address pointer of the transfer control information, and the address "0004" H, which is the address of the subsequent transfer control information, is set in the address pointer J. In the next steps 202 to 206, 4 bytes of the transfer control information are read into the control register 36.

【0054】ステップ202では、フェッチ回路37に
次に読み込むべき後続の転送制御情報が保持されている
かどうかを調べ、転送制御情報が保持されておらず、フ
ェッチ回路が空の場合は、ステップ203へ進み、転送
制御情報が保持されている場合は、ステップ205へ進
む。
In step 202, it is checked whether or not the subsequent transfer control information to be read next is held in the fetch circuit 37. If the transfer control information is not held and the fetch circuit is empty, go to step 203. If the transfer control information is held, the process proceeds to step 205.

【0055】ステップ203では、FIFO38に次に
読み込むべき後続の転送制御情報が保持されているかど
うかを調べ、転送制御情報が保持されておらず、FIF
O38が空の場合は、ステップ206へ進み、転送制御
情報が保持されている場合は、ステップ204へ進む。
In step 203, it is checked whether or not the subsequent transfer control information to be read next is held in the FIFO 38, and the transfer control information is not held,
If O38 is empty, the process proceeds to step 206, and if the transfer control information is held, the process proceeds to step 204.

【0056】フェッチ回路37、FIFO38が共に空
のときは、ステップ206で、RAM29のI番地か
ら、次に読み込むべき後続の転送制御情報4バイトを制
御レジスタ26に読み込む。
When both the fetch circuit 37 and the FIFO 38 are empty, the subsequent transfer control information 4 bytes to be read next from the address I of the RAM 29 is read into the control register 26 in step 206.

【0057】フェッチ回路37に転送制御情報が保持さ
れている場合は、ステップ205で、フェッチ回路37
から次に読み込むべき後続の転送制御情報4バイトを制
御レジスタ36に取り込む。
If the transfer control information is held in the fetch circuit 37, in step 205, the fetch circuit 37.
4 bytes of subsequent transfer control information to be read next are fetched into the control register 36.

【0058】FIFO38に後続の転送制御情報が保持
されている場合は、ステップ204で、FIFO38か
ら次に読み込むべき後続の転送制御情報4バイトをフェ
ッチ回路37に取り込み、その後、ステップ205で、
フェッチ回路37から上記後続の転送制御情報4バイト
を制御レジスタ36に取り込む。
If the subsequent transfer control information is held in the FIFO 38, in step 204, the subsequent transfer control information of 4 bytes to be read next from the FIFO 38 is fetched into the fetch circuit 37, and then in step 205,
The subsequent transfer control information of 4 bytes is fetched from the fetch circuit 37 into the control register 36.

【0059】FIFO38からフェッチ回路37への転
送制御情報の取り込みに掛かる時間、及び、フェッチ回
路27から制御レジスタ26への転送制御情報の取り込
みに掛かる時間は、RAM29から制御レジスタ26に
転送制御情報を読み込む時間に比べて極めて短い。従っ
て、前もって、FIFO38、フェッチ回路27に次に
読み込みべき後続の転送制御情報を保持しておくこと
で、転送制御情報の制御レジスタ36への読み込み時間
を短縮することができる。
The transfer control information is transferred from the RAM 29 to the control register 26 for the time required to fetch the transfer control information from the FIFO 38 to the fetch circuit 37 and the time required to fetch the transfer control information from the fetch circuit 27 to the control register 26. It is extremely short compared to the reading time. Therefore, by holding the subsequent transfer control information to be read next in the FIFO 38 and the fetch circuit 27 in advance, the time required to read the transfer control information into the control register 36 can be shortened.

【0060】次のステップ207〜ステップ215で
は、ステップ206、又はステップ205で制御レジス
タ36に読み込んだ転送制御情報に基づいて、DMA転
送を行う。且つ、DMA要求が無いときに、FIFO3
8に、後続の転送制御情報を読み込み、フェッチ回路3
7が空のときは、FIFO38に保持している転送制御
情報をフェッチ回路37に取り込む。
In the next steps 207 to 215, DMA transfer is performed based on the transfer control information read in the control register 36 in step 206 or step 205. In addition, when there is no DMA request, FIFO3
8, the subsequent transfer control information is read, and the fetch circuit 3
When 7 is empty, the transfer control information held in the FIFO 38 is fetched in the fetch circuit 37.

【0061】ステップ207では、CPU11、又は入
出力装置12からDMA転送要求が有るかを調べ、DM
A転送要求が有るとき、次のステップ214に進み、D
MA転送要求が無いときは、ステップ208へ進む。
At step 207, it is checked whether there is a DMA transfer request from the CPU 11 or the input / output device 12, and DM
When there is an A transfer request, the process proceeds to the next step 214, and D
If there is no MA transfer request, the process proceeds to step 208.

【0062】ステップ214では、CPU11、又は入
力出力装置12からDMA転送要求を受けて、制御レジ
スタ36に保持している転送制御情報に基づいて、入出
力装置12とRAM28との間でDMA転送を実行す
る。
In step 214, the DMA transfer request is received from the CPU 11 or the input / output device 12, and the DMA transfer is performed between the input / output device 12 and the RAM 28 based on the transfer control information held in the control register 36. Run.

【0063】次のステップ215では、制御レジスタ3
6に保持している転送制御情報に基づくDMA転送が全
て終了したかどうかを判断する。DMA転送が全て終了
したときは、ステップ216へ進み、終了しないとき
は、ステップ207へ戻り、DMA転送を続ける。
In the next step 215, the control register 3
It is determined whether or not all DMA transfers based on the transfer control information held in No. 6 are completed. If all the DMA transfers are completed, the process proceeds to step 216. If not completed, the process returns to step 207 to continue the DMA transfer.

【0064】ステップ207でDMA転送要求が無いと
きは、ステップ208でFIFO38に後続の転送制御
情報を読み込む空きがあるかどうかを調べる。FIFO
38に空きが無いときはステップ207へ戻り、DMA
転送要求を待つ。
If there is no DMA transfer request in step 207, it is checked in step 208 whether the FIFO 38 has a space for reading the subsequent transfer control information. FIFO
When there is no space in 38, the process returns to step 207 and DMA
Wait for transfer request.

【0065】FIFO38に空きがあるときは、ステッ
プ209で、RAM29のJ番地から記憶されている、
次にFIFO38に読み込むべき後続の転送制御情報を
FIFO38に読み込む。この際、転送制御情報4バイ
ト全部を必ずしも一度に読み込まず、DMA転送要求の
無い時間で読み込めるバイト数の転送制御情報を読み込
み、読み込めなかった分は、次の機会に読み込む。ステ
ップ209が終わると、ステップ210へ進む。
When the FIFO 38 has a free space, it is stored from the address J of the RAM 29 in step 209.
Next, the subsequent transfer control information to be read into the FIFO 38 is read into the FIFO 38. At this time, the entire 4 bytes of the transfer control information are not necessarily read at one time, but the transfer control information of the number of bytes that can be read in the time when there is no DMA transfer request is read. When step 209 ends, the process proceeds to step 210.

【0066】ステップ210では、J番地からの転送制
御情報4バイトを全て読み込めたかどうかを判断し、全
て読み込めたときは、ステップ211で、アドレスポイ
ンタJが次に読み込むべき番地を示すようにアドレスポ
インタJを4進めた後、ステップ212へ進み、4バイ
ト読み込めていないときは、ステップ212へ進む。
At step 210, it is judged whether or not all 4 bytes of transfer control information from address J have been read. If all 4 bytes have been read, at step 211, the address pointer J indicates the address to be read next. After advancing J by 4, proceed to step 212 and proceed to step 212 when 4 bytes cannot be read.

【0067】ステップ212では、フェッチ回路37
に、次に制御レジスタ36に読み込むべき後続の転送制
御情報が保持されているかどうかを調べ、転送制御情報
が保持されている場合は、ステップ207へ戻り、転送
制御情報が保持されておらず、フェッチ回路が空の場合
は、ステップ213へ進む。
In step 212, the fetch circuit 37
Then, it is checked whether or not the subsequent transfer control information to be read in the control register 36 is held. If the transfer control information is held, the process returns to step 207, and the transfer control information is not held, If the fetch circuit is empty, the process proceeds to step 213.

【0068】ステップ213では、FIFO38に、4
バイトで1組の転送制御情報が1組以上保持されている
ときは、FIFO38からフェッチ回路37に後続の転
送制御情報4バイトを取り込む。ステップ213が終わ
ると、ステップ207へ戻る。
In step 213, the FIFO 38 is set to 4
When one or more sets of transfer control information are held in bytes, the subsequent transfer control information of 4 bytes is fetched from the FIFO 38 to the fetch circuit 37. When step 213 ends, the process returns to step 207.

【0069】ステップ216では、RAM29のI番地
に転送終了後のステータスを書き出す。ステップ217
では、アドレスポインタIの値を4増やして、後続の転
送制御情報の先頭番地を示すようにする。
At step 216, the status after the transfer is written to the address I of the RAM 29. Step 217
Then, the value of the address pointer I is incremented by 4 so as to indicate the head address of the subsequent transfer control information.

【0070】ステップ218では、次に制御レジスタ3
6に読み込むべき転送制御情報の番地を示すアドレスポ
インタのIと、次にFIFO38に読み込む転送制御情
報の番地を示すべきアドレスポインタJを比較する。
In step 218, the control register 3
The address pointer I indicating the address of the transfer control information to be read in 6 is compared with the address pointer J indicating the address of the transfer control information to be read next in the FIFO 38.

【0071】アドレスポインタJの値がアドレスポイン
タIの値より大きいときは、Jは正しい番地を示してい
るので、そのままステップ202へ戻り、アドレスポイ
ンタJの値がアドレスポインタIの値以下のときは、ス
テップ219で、アドレスポインタJの値をI+4とし
て正しい番地を示すようにした後、ステップ202へ戻
る。
When the value of the address pointer J is larger than the value of the address pointer I, J indicates the correct address. Therefore, the process directly returns to step 202, and when the value of the address pointer J is equal to or less than the value of the address pointer I. In step 219, the value of the address pointer J is set to I + 4 to indicate the correct address, and then the process returns to step 202.

【0072】ステップ218、又は219の終了後、ス
テップ202へ戻り、後続の転送制御情報に基づくDM
A転送を行う。DMA制御装置34は、全ての転送制御
情報に基づくDMA転送が終了するまで、このフローチ
ャートに示す動作を続ける。
After completion of step 218 or 219, the process returns to step 202, and DM based on the subsequent transfer control information is executed.
A transfer is performed. The DMA control device 34 continues the operation shown in this flowchart until the DMA transfer based on all the transfer control information is completed.

【0073】上記のように、DMA転送要求がないとき
に、制御レジスタ36に記憶されている現在の転送制御
情報の後続の転送制御情報を、前もってステップ209
で、RAM29からFIFO38に読み込んでおく。
As described above, when there is no DMA transfer request, the transfer control information subsequent to the current transfer control information stored in the control register 36 is set in advance in step 209.
Then, it is read from the RAM 29 to the FIFO 38.

【0074】この後、ステップ213、又はステップ2
04で、FIFO38に読み込んだ転送制御情報をフェ
ッチ回路37に取り込む。そしてこの後、ステップ20
5で、フェッチ回路37から制御レジスタ36に、上記
後続の転送制御情報を極めて短時間で取り込むため、転
送制御情報を制御レジスタ36に読み込む時間を大幅に
短縮することができる。
After this, step 213 or step 2
In 04, the transfer control information read in the FIFO 38 is fetched in the fetch circuit 37. And after this, step 20
In step 5, since the subsequent transfer control information is fetched from the fetch circuit 37 to the control register 36 in an extremely short time, the time required to read the transfer control information into the control register 36 can be greatly shortened.

【0075】図7はDMA制御装置34の動作タイミン
グチャートを示す。図7(A)は転送制御情報を制御レ
ジスタ36に読み込むタイミングを示し、図7(B)は
転送終了後のステータスをRAM29に書き出すタイミ
ングを示す。また、図7(C)は、フェッチ回路37が
空で空いており、後続の転送制御情報をFIFO38か
ら取り込めるかどうかを示し、図7(D)は、FIFO
38に、後続の転送制御情報をRAM29より読み込
む、空きの領域が有るかどうかを示している。また、図
7(E)は、CPU11、又は入出力装置12からのD
MA転送要求のタイミングを示し、図7(F)はデータ
バス1上に現れる有効なデータのタイミングを示してい
る。
FIG. 7 shows an operation timing chart of the DMA controller 34. 7A shows the timing of reading the transfer control information into the control register 36, and FIG. 7B shows the timing of writing the status after the transfer is completed to the RAM 29. Further, FIG. 7C shows whether or not the fetch circuit 37 is empty and can fetch the subsequent transfer control information from the FIFO 38, and FIG. 7D shows the FIFO.
38 shows whether or not there is an empty area in which the subsequent transfer control information is read from the RAM 29. Further, FIG. 7E shows D from the CPU 11 or the input / output device 12.
The timing of the MA transfer request is shown, and FIG. 7 (F) shows the timing of valid data appearing on the data bus 1.

【0076】このタイミングチャートは、RAM29に
転送制御情報が設定されて、図6のフローチャートの初
めからスタートした場合の一例を示している。状態
(1)では、RAM29の“0000”H番地からの4
バイトの転送制御情報を制御レジスタ36に読み込む 次の状態(2)では、DMA転送要求が無いので、RA
M29の“0004”H番地からの後続の転送制御情報
4バイトを、FIFO38に読み込み、この後、すぐ
に、FIFO38に読み込んだ転送制御情報をフェッチ
回路37に取り込む。FIFO38からフェッチ回路3
7に、この転送制御情報を取り込んだ時点で、フェッチ
回路37は空き無しとなる。
This timing chart shows an example in which the transfer control information is set in the RAM 29 and the process starts from the beginning of the flowchart of FIG. In the state (1), 4 from the "0000" H address of the RAM 29
Read the byte transfer control information into the control register 36. In the next state (2), since there is no DMA transfer request, RA
The subsequent 4 bytes of transfer control information from the address "0004" H of M29 are read into the FIFO 38, and immediately thereafter, the transfer control information read into the FIFO 38 is fetched into the fetch circuit 37. Fetch circuit 3 from FIFO 38
At the time when this transfer control information is fetched in 7, the fetch circuit 37 becomes empty.

【0077】次の状態(3)では、DMA転送要求によ
り、制御レジスタ36に記憶された“0000”H番地
からの4バイトの転送制御情報に基づき、入出力装置1
2とRAM28との間の1回目のDMA転送を行う。次
の状態(4)では、DMA転送要求が無いので、RAM
29の“0008”H番地からの4バイトの転送制御情
報のうち、2バイトを、FIFO38に読み込む。
In the next state (3), the I / O device 1 is requested by the DMA transfer request based on the 4-byte transfer control information from the address "0000" H stored in the control register 36.
The first DMA transfer between the RAM 2 and the RAM 28 is performed. In the next state (4), since there is no DMA transfer request, the RAM
Of the 4-byte transfer control information from the address “0008” H of 29, 2 bytes are read into the FIFO 38.

【0078】次の状態(5)では、“0000”H番地
からの4バイトの転送制御情報に基づく2回目のDMA
転送を行う。次の状態(6)では、DMA転送要求が無
いので、RAM29の“0008”H番地からの4バイ
トの転送制御情報のうち、状態(4)で読み込めなかっ
た残りの2バイトを、FIFO38に読み込む。
In the next state (5), the second DMA based on the 4-byte transfer control information from the address "0000" H.
Transfer. In the next state (6), since there is no DMA transfer request, the remaining 2 bytes that could not be read in the state (4) of the 4-byte transfer control information from the address “0008” H of the RAM 29 are read into the FIFO 38. .

【0079】次の状態(7)では、“0000”H番地
からの4バイトの転送制御情報に基づく3回目のDMA
転送を行う。次の状態(8)では、DMA転送要求が無
いので、RAM29の“000C”H番地からの4バイ
トの転送制御情報のうち、2バイトを、FIFO38に
読み込む。
In the next state (7), the third DMA based on the 4-byte transfer control information from the address "0000" H.
Transfer. In the next state (8), since there is no DMA transfer request, 2 bytes of the 4-byte transfer control information from the address “000C” H of the RAM 29 are read into the FIFO 38.

【0080】次の状態(9)では、“0000”H番地
からの4バイトの転送制御情報に基づく4回目のDMA
転送を行う。次の状態(10)では、DMA転送要求が
無いので、RAM29の“000C”H番地からの4バ
イトの転送制御情報のうち、状態(8)で読み込めなか
った残りの2バイトを、FIFO38に読み込む。この
読み込み終了時点で、FIFOには後続2組の転送制御
情報8バイトが記憶されて、FIFO38には、空きの
領域がなくなる。
In the next state (9), the fourth DMA based on the 4-byte transfer control information from the address "0000" H.
Transfer. In the next state (10), since there is no DMA transfer request, the remaining 2 bytes, which cannot be read in the state (8), of the 4-byte transfer control information from the address “000C” H of the RAM 29 are read into the FIFO 38. . At the end of this reading, the subsequent two sets of transfer control information of 8 bytes are stored in the FIFO, and the FIFO 38 has no free area.

【0081】次の状態(11)では、“0000”H番
地からの4バイトの転送制御情報に基づく5回目のDM
A転送を行う。“0000”H番地からの転送制御情報
4バイトに基づくDMA転送は、状態(11)の5回目
で終了し、状態(12)では、転送終了後のステータス
をRAM29の“0000”H番地 に書き出してい
る。
In the next state (11), the fifth DM based on the 4-byte transfer control information from the address "0000" H.
A transfer is performed. The DMA transfer based on 4 bytes of the transfer control information from the address "0000" H ends at the fifth time in the state (11). In the state (12), the status after the transfer is written to the address "0000" H in the RAM 29. ing.

【0082】次の状態(13)では、状態(2)でフェ
ッチ回路37に取り込み保持してある後続の転送制御情
報4バイトを、制御レジスタ36に取り込む。RAM2
9から転送制御情報を制御レジスタ36に読み込むのに
比べて、フェッチ回路37から制御レジスタ36への転
送制御情報の取り込みは、極めて短時間で行える。
In the next state (13), the subsequent 4 bytes of transfer control information fetched and held in the fetch circuit 37 in the state (2) are fetched in the control register 36. RAM2
The transfer control information can be fetched from the fetch circuit 37 to the control register 36 in an extremely short time, as compared with the case where the transfer control information is read into the control register 36 from 9.

【0083】次の状態(14)では、DMA転送要求が
生じるのを待っている。次の状態(15)では、生じた
DMA転送要求により、制御レジスタ36に保持されて
いる転送制御情報(“0004”H番地からの転送制御
情報4バイト)に基づいてDMA転送を行う。状態(1
5)では、1回のDMA転送でDMA転送が終了してい
る。次の状態(16)では、DMA転送終了後のステー
タスをRAM29の“0004”H番地 に書き出して
いる。
In the next state (14), it waits for a DMA transfer request. In the next state (15), the generated DMA transfer request causes the DMA transfer based on the transfer control information (4 bytes of transfer control information from the address “0004” H) held in the control register 36. State (1
In 5), the DMA transfer is completed with one DMA transfer. In the next state (16), the status after the completion of the DMA transfer is written to the address “0004” H of the RAM 29.

【0084】次の状態(17)では、FIFO38に保
持してある後続の転送制御情報(“0008”H番地か
らの転送制御情報4バイト)をフェッチ回路37に取り
込み、その直後にフェッチ回路37の転送制御情報を制
御レジスタ36に取り込む。従って、次に制御レジスタ
36に読み込むべき、“0008”H番地からの転送制
御情報4バイトが、極めて短時間に制御レジスタ36に
読み込める。
In the next state (17), the subsequent transfer control information (4 bytes of transfer control information from the address "0008" H) held in the FIFO 38 is fetched into the fetch circuit 37 and immediately thereafter. The transfer control information is fetched in the control register 36. Therefore, the transfer control information of 4 bytes from the address “0008” H, which should be read into the control register 36 next, can be read into the control register 36 in an extremely short time.

【0085】上記のように、第2実施例のDMA転送方
式では、DMA転送要求が無いときに、現在制御レジス
タ36に記憶されている転送制御情報の後続の転送制御
情報を、FIFO38に前もって読み込んでおき、その
後、FIFO38に読み込んだ転送制御情報をフェッチ
回路37に取り込む。
As described above, in the DMA transfer method of the second embodiment, when there is no DMA transfer request, the transfer control information subsequent to the transfer control information currently stored in the control register 36 is read into the FIFO 38 in advance. Then, the transfer control information read in the FIFO 38 is fetched in the fetch circuit 37.

【0086】その後、現在の転送制御情報に基づくDM
A転送の終了後に、フェッチ回路37から制御レジスタ
36に、この前もって読み込んだ転送制御情報を極めて
短時間で取り込む。このため、転送制御情報を制御レジ
スタ36に読み込む時間を大幅に短縮することができ
る。従って、DMA転送の所要時間を短縮することがで
きる。
Then, DM based on the current transfer control information
After the A transfer is completed, the transfer control information read in advance is fetched from the fetch circuit 37 to the control register 36 in an extremely short time. Therefore, the time required to read the transfer control information into the control register 36 can be greatly shortened. Therefore, the time required for the DMA transfer can be shortened.

【0087】なお、フェッチ回路37、FIFO38の
記憶容量は、第2実施例での記憶容量に限られず、より
大きな記憶容量とすることも可能である。
The storage capacities of the fetch circuit 37 and the FIFO 38 are not limited to the storage capacities of the second embodiment, and larger storage capacities can be used.

【0088】[0088]

【発明の効果】上述の如く、本発明によれば、DMA制
御手段は、制御用記憶手段に記憶されている現在の転送
制御情報の後続の転送制御情報を前もってプリフェッチ
手段に読み込み、現在の転送制御情報に基づくDMA転
送が終了したときに、前もって読み込んだ後続の転送制
御情報を制御用記憶手段に取り込むため、現在の転送制
御情報に基づくDMA転送が終了後の、後続の転送制御
情報の読み込み時間の短縮ができる等の特長を有する。
As described above, according to the present invention, the DMA control means reads in advance the transfer control information subsequent to the current transfer control information stored in the control storage means to the prefetch means, and transfers the current transfer. When the DMA transfer based on the control information is completed, the subsequent transfer control information read in advance is loaded into the control storage means, so that the subsequent transfer control information is read after the DMA transfer based on the current transfer control information is completed. It has features such as reduced time.

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

【図1】本発明の原理構成図である。FIG. 1 is a principle configuration diagram of the present invention.

【図2】本発明の第1実施例の構成図である。FIG. 2 is a configuration diagram of a first embodiment of the present invention.

【図3】第1実施例のDMA制御装置の動作フローチャ
ートである。
FIG. 3 is an operation flowchart of the DMA control device of the first embodiment.

【図4】第1実施例のDMA制御装置のタイミングチャ
ートである。
FIG. 4 is a timing chart of the DMA control device of the first embodiment.

【図5】本発明の第2実施例の構成図である。FIG. 5 is a configuration diagram of a second embodiment of the present invention.

【図6】第2実施例のDMA制御装置の動作フローチャ
ートである。
FIG. 6 is an operation flowchart of the DMA control device of the second embodiment.

【図7】第2実施例のDMA制御装置のタイミングチャ
ートである。
FIG. 7 is a timing chart of the DMA control device of the second embodiment.

【図8】従来のDMA転送方式の構成図である。FIG. 8 is a configuration diagram of a conventional DMA transfer method.

【図9】従来のDMA制御装置の動作フローチャートで
ある。
FIG. 9 is an operation flowchart of a conventional DMA control device.

【図10】従来のDMA制御装置のタイミングチャート
である。
FIG. 10 is a timing chart of a conventional DMA control device.

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

1 データバス 2 アドレスバス 3 コントロールバス 11 中央処理装置(CPU) 12 入出力装置 13 転送データ記憶手段 14 DMA制御手段 15 制御部 16 制御用記憶手段 17 プリフェッチ手段 18 転送制御情報記憶手段 24 DMA制御装置 25 DMA制御回路 26 制御レジスタ 27 フェッチ回路 28 RAM 29 RAM 34 DMA制御装置 35 DMA制御回路 36 制御レジスタ 37 フェッチ回路 38 FIFO 1 Data Bus 2 Address Bus 3 Control Bus 11 Central Processing Unit (CPU) 12 Input / Output Device 13 Transfer Data Storage Means 14 DMA Control Means 15 Control Unit 16 Control Storage Means 17 Prefetch Means 18 Transfer Control Information Storage Means 24 DMA Control Devices 25 DMA control circuit 26 Control register 27 Fetch circuit 28 RAM 29 RAM 34 DMA control device 35 DMA control circuit 36 Control register 37 Fetch circuit 38 FIFO

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 複数の転送制御情報を転送制御情報記憶
手段(18)の連続する番地に予め記憶しておき、DM
A制御手段(14)が制御用記憶手段(16)に上記転
送制御情報を個別に読み込み、DMA転送要求が発生し
たとき、上記制御用記憶手段(16)に読み込んだ転送
制御情報に基づいてDMA転送を行うDMA転送方式に
おいて、 DMA制御手段(14)は、上記制御用記憶手段(1
6)に記憶されている現在の転送制御情報の後続の転送
制御情報が転送制御情報記憶手段(18)から前もって
読み込まれるプリフェッチ手段(17)を有し、 現在の転送制御情報に基づくDMA転送が終了したとき
に、上記後続の転送制御情報を上記プリフェッチ手段
(17)から上記制御用記憶手段(16)に取り込む構
成としたことを特徴とするDMA転送方式。
1. A plurality of transfer control information is stored in advance in consecutive addresses of a transfer control information storage means (18), and DM
When the A control means (14) individually reads the transfer control information into the control storage means (16) and a DMA transfer request is generated, the DMA is performed based on the transfer control information read into the control storage means (16). In the DMA transfer method for transferring, the DMA control means (14) is the control storage means (1
The transfer control information subsequent to the current transfer control information stored in 6) has prefetch means (17) which is pre-read from the transfer control information storage means (18), and DMA transfer based on the current transfer control information is performed. A DMA transfer system, characterized in that, when completed, the subsequent transfer control information is fetched from the prefetch means (17) into the control storage means (16).
【請求項2】 前記プリフェッチ手段(17)は、複数
の転送制御情報を記憶することを特長とする請求項1記
載のDMA転送方式。
2. The DMA transfer system according to claim 1, wherein the prefetch means (17) stores a plurality of transfer control information.
【請求項3】 前記DMA制御手段(14)は、DMA
転送要求が発生しないときに、前記後続の転送制御情報
を転送制御情報記憶手段(18)から前もってプリフェ
ッチ手段(17)に読み込むことを特徴とする請求項1
記載のDMA転送方式。
3. The DMA control means (14) is a DMA controller.
2. A transfer control information storage means (18) which reads the subsequent transfer control information into a prefetch means (17) in advance when a transfer request is not generated.
The described DMA transfer method.
JP24786292A 1992-09-17 1992-09-17 Dma transfer system Withdrawn JPH0696007A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24786292A JPH0696007A (en) 1992-09-17 1992-09-17 Dma transfer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24786292A JPH0696007A (en) 1992-09-17 1992-09-17 Dma transfer system

Publications (1)

Publication Number Publication Date
JPH0696007A true JPH0696007A (en) 1994-04-08

Family

ID=17169749

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24786292A Withdrawn JPH0696007A (en) 1992-09-17 1992-09-17 Dma transfer system

Country Status (1)

Country Link
JP (1) JPH0696007A (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000031649A1 (en) * 1998-11-19 2000-06-02 Sun Microsystems, Inc. Host controller interface descriptor fetching unit
JP2007087086A (en) * 2005-09-21 2007-04-05 Nec Electronics Corp Dma transfer system
JP2008171426A (en) * 2007-01-10 2008-07-24 Internatl Business Mach Corp <Ibm> Method for direct memory access block movement using descriptor prefetch, direct memory access device, and data processing system
US7640374B2 (en) 2005-01-14 2009-12-29 Fujitsu Limited Data transfer apparatus by direct memory access controller
JP2010211322A (en) * 2009-03-06 2010-09-24 Renesas Electronics Corp Network processor, reception controller, and data reception processing method
JP2011204269A (en) * 2003-06-30 2011-10-13 Intel Corp Readdressable virtual dma control and status register
JP2012194828A (en) * 2011-03-17 2012-10-11 Pfu Ltd Dma device, information processing device, and data transfer method
US8589601B2 (en) 2009-01-30 2013-11-19 Fujitsu Limited I/O controller and descriptor transfer method

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000031649A1 (en) * 1998-11-19 2000-06-02 Sun Microsystems, Inc. Host controller interface descriptor fetching unit
JP2011204269A (en) * 2003-06-30 2011-10-13 Intel Corp Readdressable virtual dma control and status register
US7640374B2 (en) 2005-01-14 2009-12-29 Fujitsu Limited Data transfer apparatus by direct memory access controller
JP2007087086A (en) * 2005-09-21 2007-04-05 Nec Electronics Corp Dma transfer system
JP2008171426A (en) * 2007-01-10 2008-07-24 Internatl Business Mach Corp <Ibm> Method for direct memory access block movement using descriptor prefetch, direct memory access device, and data processing system
US8589601B2 (en) 2009-01-30 2013-11-19 Fujitsu Limited I/O controller and descriptor transfer method
JP2010211322A (en) * 2009-03-06 2010-09-24 Renesas Electronics Corp Network processor, reception controller, and data reception processing method
US8230137B2 (en) 2009-03-06 2012-07-24 Renesas Electronics Corporation Network processor, reception controller and data reception processing method performing direct memory access transfer
JP2012194828A (en) * 2011-03-17 2012-10-11 Pfu Ltd Dma device, information processing device, and data transfer method

Similar Documents

Publication Publication Date Title
US5644784A (en) Linear list based DMA control structure
EP1196842B1 (en) Method and apparatus for combining a plurality of memory access transactions
US20040107265A1 (en) Shared memory data transfer apparatus
US5287471A (en) Data transfer controller using direct memory access method
US6728797B2 (en) DMA controller
US6678755B1 (en) Method and apparatus for appending memory commands during a direct memory access operation
US6687763B2 (en) ATAPI command receiving method
JPH0696007A (en) Dma transfer system
JPH11194995A (en) Microprocessor with built-in dram and data transfer method therefor
US6278467B1 (en) Display memory control apparatus
JPH06103225A (en) Chain type dma system and dma controller therefor
JPH11232213A (en) Data transfer system for input/output device
EP0410382A2 (en) Data transfer controller using direct memory access method
JPH05189360A (en) Data transfer and storage system
JPH0962633A (en) Network control unit
JP2000215154A (en) Dma controller
JPH07319829A (en) Method for transferring data
JPH0736806A (en) Dma system
JP3168845B2 (en) Digital signal processor
JP2531209B2 (en) Channel device
JP2594567B2 (en) Memory access control device
JPH06301600A (en) Storage device
JPS63187349A (en) Memory device
JPH1091569A (en) Dma transfer controller, capture board, capture card and information processor
JPH03294951A (en) High speed data transfer system in personal computer system

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19991130