JPH03231347A - Dma controller - Google Patents
Dma controllerInfo
- Publication number
- JPH03231347A JPH03231347A JP2027636A JP2763690A JPH03231347A JP H03231347 A JPH03231347 A JP H03231347A JP 2027636 A JP2027636 A JP 2027636A JP 2763690 A JP2763690 A JP 2763690A JP H03231347 A JPH03231347 A JP H03231347A
- Authority
- JP
- Japan
- Prior art keywords
- data
- memory
- signal
- dma controller
- bus
- 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
Links
- 230000015654 memory Effects 0.000 claims abstract description 50
- 230000002093 peripheral effect Effects 0.000 claims abstract description 9
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 10
- 230000000694 effects Effects 0.000 description 3
- 238000000034 method Methods 0.000 description 2
- 230000002035 prolonged effect Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Landscapes
- Bus Control (AREA)
- Microcomputers (AREA)
Abstract
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はDMAコントローラに係り、特にマイクロコン
ピュータ応用システム中のDMAコントローラに関する
。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a DMA controller, and particularly to a DMA controller in a microcomputer application system.
第4図に示す従来のDMAコントローラを用いて、メモ
リから周辺I/Oへのデータ転送をマイク四コンピュー
タを用いたシステム上で実行する’Jt 合、CP U
はデータバス29、アドレスバス30の使用権をDMA
コントローラに譲り、データを1つ転送する度にDMA
コントローラが転送元となるメモリのアドレスから転送
データをデータバス29に出力させ、その後にメモリか
ら出力された転送データを周辺I10に直接書き出すサ
イクルをCPUによって設定された転送データ数のデー
タ転送が終了するまで繰り返す方法によってデータ転送
の高速化を実現していた。When the conventional DMA controller shown in Fig. 4 is used to transfer data from memory to peripheral I/O on a system using a four-microphone computer, the CPU
The right to use the data bus 29 and address bus 30 is transferred to DMA.
Gives over to the controller and uses DMA every time one piece of data is transferred.
A cycle in which the controller outputs the transfer data from the transfer source memory address to the data bus 29, and then directly writes the transfer data output from the memory to the peripheral I10, the data transfer for the number of transfer data set by the CPU is completed. The data transfer speed was achieved by repeating the process until the data transfer was completed.
このような従来のDMAコントローラの一例のブロック
図を第4図に示す。A block diagram of an example of such a conventional DMA controller is shown in FIG.
第4図において、従来のDMAコントローラ本体15は
、従来のDMAコントローラの動作制御部16と、従来
のD’MAコントローラの動作を指定する情報がCPU
から書き込まれるコントローラレジスタ(CR)17と
、従来のDMAコントローラの動作状況を示す情報が保
存されるステータスレジスタ(SR)18とを備えてい
る。In FIG. 4, a conventional DMA controller main body 15 includes a conventional DMA controller operation control section 16 and a CPU that stores information specifying the operation of the conventional D'MA controller.
The controller includes a controller register (CR) 17 to which data is written, and a status register (SR) 18 in which information indicating the operating status of a conventional DMA controller is stored.
ここで、動作制御部16は、ホールド・リクエスト()
lold Request)信号19.DMAクノウリ
ッジ(Acknowledge)信号22.メモリ・リ
ード(Memory Read)信号25.メモリ・ラ
イト(M−emory Write)信号26を出力し
、ホールドクノウリッジ(Acknowledge)信
号20.DMAリクエスト(Request)信号21
.I10リード(Read)信号23.I10ライト(
Write)信号24を入力する。Here, the operation control unit 16 sends a hold request ()
request) signal 19. DMA Acknowledge Signal 22. Memory Read signal 25. Outputs a memory write (M-emory Write) signal 26, and outputs a hold acknowledge signal 20. DMA request signal 21
.. I10 Read signal 23. I10 light (
Write) signal 24 is input.
一般にメモリからデータを読み出す場合、第5図に示す
ようにメモリデバイスの特性として、トemory R
ead信号25がアクティブになった直後にメモリがデ
ータを出力する事はできないので(信号線1,0)、デ
ータを読み出す側はMemoryRead信号25をア
クティブにしてから一定期間のウェイトWをおいてメモ
リがデータを出力するのを待つ動作が必要になる。Generally, when reading data from a memory, as shown in FIG.
Since the memory cannot output data immediately after the ead signal 25 becomes active (signal lines 1 and 0), the data reading side activates the MemoryRead signal 25 and waits a certain period of time W before outputting the data to the memory. It is necessary to wait for the data to be output.
このため、前述した従来のDMAコントローラの動作に
おいて、メモリからI/Oへの転送データが増大すると
データ読み出し時のウェイト回数が増加するので、DM
Aコントローラによるデータバス29.アドレスバス3
0の占有が長期化し、結果としてシステム全体の効率が
低下するという問題点があった。Therefore, in the operation of the conventional DMA controller described above, as the amount of data transferred from memory to I/O increases, the number of wait times when reading data increases.
Data bus 29 by A controller. address bus 3
There was a problem in that the occupation of 0 was prolonged, resulting in a decrease in the efficiency of the entire system.
そこで、本発明の目的は、前記欠点が解決され、メモリ
→I10転送時のメモリ読み出し時の不要。SUMMARY OF THE INVENTION Therefore, an object of the present invention is to solve the above-mentioned drawbacks and eliminate the need for memory read during memory->I10 transfer.
なウェイトを省略して、効率を向上させたD Dvi
Aコントローラを提供することにある。Dvi improves efficiency by omitting heavy weights
A.The purpose of this invention is to provide a controller.
本発明の構成は、コントロールレジスタとステータスレ
ジスタとDMA動作制御部とを備えたDMAコントロー
ラにおいて、一回のメモリからの転送データ読み出しサ
イクル内の周辺I/Oへのデータ転送回数をカウントす
る書き込み回数カウンタと、前記書き込み回数カウンタ
の値が出力されるデータセレクト信号の端子と、前記デ
ータセレクト信号が有効であるか無効であるかを示すス
テータス信号を発生させるステータス信号発生回路とを
備え、前記データセレクト信号と前記ステータス信号と
を用いてメモリから工/Oへのデータ転送を行うように
なしたことを特徴とする。According to the configuration of the present invention, in a DMA controller equipped with a control register, a status register, and a DMA operation control section, a write count is used to count the number of data transfers to peripheral I/O within one transfer data read cycle from memory. a counter, a data select signal terminal to which the value of the write count counter is output, and a status signal generation circuit to generate a status signal indicating whether the data select signal is valid or invalid; The present invention is characterized in that data is transferred from the memory to the I/O using the select signal and the status signal.
次に本発明について図面を参照して説明する。 Next, the present invention will be explained with reference to the drawings.
第1図は本発明の一実施例のDMAコントローラを示す
ブロック図である。FIG. 1 is a block diagram showing a DMA controller according to an embodiment of the present invention.
第2図は、第1図の実施例のDMAコントローラをデー
タバス8ビツト(Bit)のCPU13を採用し、イン
タリーブメモリ11から同時に連続した4アドレス32
Bi4のデータが読み出せるシステムへ応用した例を示
すブロック図である。In FIG. 2, the DMA controller of the embodiment shown in FIG.
FIG. 2 is a block diagram showing an example of application to a system in which Bi4 data can be read.
第3図は、第2図の応用例での動作タイミング図である
。各図において、同一の参照番号を付しであるものは、
同等の機能を持つことを示している。FIG. 3 is an operation timing diagram in the application example of FIG. 2. In each figure, the same reference numbers refer to
Indicates that they have equivalent functionality.
また、以下の説明文において()で示すアルファベット
記号は、第3図、第5図のタイミング図の参照記号と対
応している。Further, in the following explanation, the alphabetical symbols shown in parentheses correspond to the reference symbols in the timing diagrams of FIGS. 3 and 5.
第1図、第2図において、本実施例のDMAコントロー
ラ本体1は、DMAコントローラの動作制御部2と、D
MAコントローラの動作を指定する情報が中央処理ユニ
ツ) (CPU)13から書き込まれるコントロールレ
ジスタ(CR)3と、DMAコントローラの動作状況を
示す情報が保存されるステータスレジスタ(SR)4と
、1回のDMAサイクル内のデータ転送回数をカウント
する書き込み回数カウンタ5と、書き込み回数のクリア
信号6が入力し、書き込み回数の値が出力されるデータ
セレクト信号7を出力する書き込み回数カウンタ5と、
データセレクト信号7の有効。1 and 2, the DMA controller main body 1 of this embodiment includes an operation control section 2 of the DMA controller, and a D
Information specifying the operation of the MA controller is written to the control register (CR) 3 from the central processing unit (CPU) 13, and once to the status register (SR) 4 where information indicating the operation status of the DMA controller is stored. a write count counter 5 that counts the number of data transfers within a DMA cycle; a write count counter 5 that receives a write count clear signal 6 and outputs a data select signal 7 that outputs the write count value;
Data select signal 7 is valid.
無効を示すステータス信号9を発生させるステータス信
号発生回路8とを含み、構成される。and a status signal generation circuit 8 that generates a status signal 9 indicating invalidity.
入出力信号は、従来例を示す第4図と同様である。The input/output signals are the same as those shown in FIG. 4, which shows the conventional example.
以下に各部の説明を示す。データセレクト信号9は、D
MAコントローラ本体1内部の2ビツトの書き込み回数
カウンタ5の値が出力され、第3図に示すインタリーブ
メモリ11が出力する4バイトのデータ中のDMAコン
トコーラ本体lが要求する転送データの指定をする。イ
ンタリーブメモリ11は、データセレクタ10を介して
データバス29に接続され、アドレスバス30によって
指定されたアドレスと、それに続く3つのアドレスのデ
ータをインタリーブメモリ11のデータバス12を介し
て、データセレクタ10に出力する。An explanation of each part is shown below. The data select signal 9 is D
The value of the 2-bit write count counter 5 inside the MA controller main body 1 is output, and the transfer data requested by the DMA controller main body 1 is specified in the 4-byte data output by the interleave memory 11 shown in FIG. . The interleave memory 11 is connected to the data bus 29 via the data selector 10, and the data of the address specified by the address bus 30 and the following three addresses are transferred to the data selector 10 via the data bus 12 of the interleave memory 11. Output to.
データセレクタ10はステータス信号9がアクティブに
なっている期間はインタリーブメモリ11がインタリー
ブメモリデータバス12に出力している4バイトのデー
タの中からデータセレクト信号7が示す転送対象となる
データだけをデータバス29に出力するが、ステータス
信号9がインアクティブの場合はインタリーブメモリ1
1の出力するデータの選択動作はせず、CPU13とD
MAコントローラ本体1とはアドレスバス30で指定さ
れたメモリのアドレスだけに対するリード/ライト(R
ead/Wr i t e)動作ができる。During the period when the status signal 9 is active, the data selector 10 selects only the data to be transferred indicated by the data select signal 7 from among the 4-byte data that the interleave memory 11 outputs to the interleave memory data bus 12. Output to bus 29, but if status signal 9 is inactive, interleave memory 1
1 does not select the data to be output, but the CPU 13 and D
The MA controller body 1 is capable of reading/writing only the memory address specified by the address bus 30 (R
Able to perform ead/write operations.
以下に、第3図も参照して、各部の動作を示す。The operation of each part will be described below with reference also to FIG.
DMAコントローラ本体1は、周辺l1014からのD
MA転送要求によってデータバス29.アドレスバス3
0の使用権をCPU13に対して要求し、それが承認さ
れるとアドレスバス30に転送対象となるデータが格納
されているアドレスを出力しくa)、書き込み回数カウ
ンタ5を書き込み回数カウンタクリア信号6によって〔
0〕にクリアして、ステータス信号をアクティブにして
から(d)、メモリ・リード(Memory Read
)信号25をアクティブ状態に保持して(b)、アドレ
スバス30で指定されたアドレスから4アドレス32ビ
ツトのデータを1ウエイトで同時にインタリーブメモリ
11からインタリーブメモリデータバス12に出力させ
た状態に保持する(h、+、j、k)。その後、DMA
コントローラ本体1は書き込み回数カウンタ5のカウン
ト値をデータセレクタ10に出力しくe、f)、データ
セレクタ10はその値によって現在DMAコントローラ
1が要求している転送データをインタリーブメモリデー
タバス12から選択してデータバス29に出力しくg)
、その後にDMAコントローラ本体1がIlo Wr
ite信号24を発生して周辺l1014にデータバス
29に出力されているデータを書き込み(c)、書き込
み回数カウンタ5を1つインクリメントする。書き込み
回数カウンタ5のインクリメントにより、データセレク
ト信号7はその値が変化するので(e。The DMA controller main body 1 receives D from the peripheral l1014.
Data bus 29. by MA transfer request. address bus 3
0 is requested from the CPU 13, and when it is approved, the address where the data to be transferred is stored is output to the address bus 30.a) The write number counter 5 is set to the write number counter clear signal 6. by [
0] to activate the status signal (d), and then perform a memory read (Memory Read
) Hold the signal 25 in the active state (b) and hold the state in which 32-bit data of 4 addresses starting from the address specified on the address bus 30 are simultaneously output from the interleave memory 11 to the interleave memory data bus 12 in one wait. (h, +, j, k). After that, DMA
The controller body 1 outputs the count value of the write count counter 5 to the data selector 10 (e, f), and the data selector 10 selects the transfer data currently requested by the DMA controller 1 from the interleaved memory data bus 12 based on the value. Please output to data bus 29g)
, then the DMA controller main body 1 is Ilo Wr.
It generates the ite signal 24, writes the data output to the data bus 29 to the peripheral l1014 (c), and increments the write number counter 5 by one. As the write count counter 5 increments, the value of the data select signal 7 changes (e).
f)、データセレクタIOは次の転送データをデータバ
ス29に圧力する(g)。インタリーブメモリ11が出
力している第0バイトから第3バイトまでのデータ転送
が終了すると、DMAコントローラ1はMemory
Read信号25、ステータス信号9をインアクティブ
にして(b 、 d) 、現在アドレスバス30に圧力
しているアドレス値〔+4〕のアドレスをアドレスバス
30に出力し、以下同様の動作をCPU13によって設
定された転送データ量の転送が終了するまで繰り返す。f), the data selector IO forces the next transfer data onto the data bus 29 (g); When the data transfer from the 0th byte to the 3rd byte output by the interleave memory 11 is completed, the DMA controller 1
The Read signal 25 and the status signal 9 are made inactive (b, d), the address of the address value [+4] currently being applied to the address bus 30 is output to the address bus 30, and the same operation is set by the CPU 13 thereafter. This process is repeated until the amount of data transferred is completed.
以上説明した本実施例では、連続した4アドレス32B
itのメモリから周辺■/Oへのデータを転送する場合
、従来のDM−Aコントローラ15では4回のウェイト
が必要なところを(A 、m、n。In this embodiment described above, four consecutive addresses 32B
When transferring data from the IT memory to the peripheral ■/O, the conventional DM-A controller 15 requires four waits (A, m, n).
o)、DMAコントローラ本体1では、1回のウェイト
Wだけで4アドレス32Bitのデータ転送を可能とし
て(g、h、i、j、k)、システム全体の効率向上を
達成している。以上説明したように、本実施例は、複数
の連続したアドレスに対して同時にアクセス可能なイン
タリーブ構成を採用したインタリーブメモリと、書き込
み回数カウンタ、メモリステータス信号発生回路を有す
るDMAコントローラとを併用することで、メモリ→周
辺I10転送動作時に1回のDMAサイクルで複数のデ
ータ転送を可能とし、メモリからのデータ読み込み時の
(インタリーブメモリの出力データ幅−1)に相当する
ウェイトサイルルを省略する事で、DMA転送時のデー
タ転送の高速化、DMAコントローラによるデータバス
、アドレスバス占有時間の短縮、およびシステム全体の
効率の向上という効果がある。o) In the DMA controller body 1, it is possible to transfer 32 bits of data from 4 addresses (g, h, i, j, k) with just one wait W, thereby achieving an improvement in the efficiency of the entire system. As explained above, this embodiment uses an interleave memory that employs an interleave configuration that allows simultaneous access to multiple consecutive addresses, and a DMA controller that has a write count counter and a memory status signal generation circuit. , it is possible to transfer multiple data in one DMA cycle during memory to peripheral I10 transfer operation, and omit the wait cycle corresponding to (output data width of interleaved memory - 1) when reading data from memory. This has the effect of increasing the speed of data transfer during DMA transfer, shortening the time occupied by the data bus and address bus by the DMA controller, and improving the efficiency of the entire system.
以上説明したように、本発明は、メモリから工/Oへの
転送データが増加せず、データ読み出し時のウェイト回
数が一回で済み、データバス、アドレスバスの占有が短
期間で済み、システム全体の効率が向上するという効果
がある。As explained above, the present invention does not increase the amount of data transferred from the memory to the I/O, only requires one wait time when reading data, occupies the data bus and address bus for a short period of time, and provides system This has the effect of improving overall efficiency.
第1図は本発明の一実施例のDMAコントコーラのブロ
ック図、第2図は本発明のDMAコントローラの外部接
続を含んだ一例を示すブロック図、第3図は第3図の動
作タイミング図、第4図は従来のDMAコントローラの
ブロック図、第5図は従来のDMAコントローラの動作
タイミング図である。
l、15・・・・・・DMAコントローラ本体、2゜1
6・・・・・・DMAコントローラの動作制御部、3゜
17・・・・・・DMAコントローラのコントロールレ
ジスタ、4.18・・・・・・DMAコントローラのス
テータスレジスタ、5・・・・・・書き込み回数カウン
タ、6・・・・・・書き込み回数カウンタクリア信号、
7・・・・・・データセレクト信号、8・・・・・・ス
テータス信号発生回路、9・・・・・・ステータス信号
、10・・・・・・データセレクタ、11・・・・・・
インタリーブメモリ、12・・・・・・インタリーブメ
モリデータバス、13・・・・・・CPU。
14・・・・・・周辺I10.19−Ho1d Req
uest信号、20−−)1o1d Acknowle
dge信号、21 ・−・−D M A Re q u
e s を信号、22−DMA Acknow−1e
dge信号、23− I / ORead信号、24−
・・・−Ilo Write信号、25−−−−−−
Memory Read信号(DMA−C)、26−M
emory Write信号(DMA−C)、27−M
emory Read信号(CPU)、28−−Mem
ory Write信号(CPU)、29・・・・・・
データバス(Data Bus)、30・・・・・・ア
ドレスバス(Address Bus)、a、n−DM
A コントローラのアドレスバス、b、1・・・・・・
DMAコントローラのMemory Read信号、c
、m−−−DMAコントローラのIlo Write
信号、d・・・・・・ステータス信号、e・・・・・・
データセレクト信号(1)、f・・・・・・データセレ
クト信号(2)、g・・・・・・DMAコントローラの
データバス、h・・・・・・インタリーブメモリデータ
バス第0バイト比力、i・・・・・・インタリーブメモ
リデータバス第1バイト出力、j・・・・・・インタリ
ーブメモリデータバス第2バイト出力、k・・・・・・
インタリーブメモリデータバス第3バイト出力、0・・
・・・・DMAコントローラのデータバス。Fig. 1 is a block diagram of a DMA controller according to an embodiment of the present invention, Fig. 2 is a block diagram showing an example of the DMA controller of the present invention including external connections, and Fig. 3 is an operation timing diagram of Fig. 3. , FIG. 4 is a block diagram of a conventional DMA controller, and FIG. 5 is an operation timing diagram of the conventional DMA controller. l, 15... DMA controller body, 2゜1
6...Operation control unit of DMA controller, 3゜17...Control register of DMA controller, 4.18...Status register of DMA controller, 5...・Writing number counter, 6...Writing number counter clear signal,
7...Data select signal, 8...Status signal generation circuit, 9...Status signal, 10...Data selector, 11...
Interleaved memory, 12... Interleaved memory data bus, 13... CPU. 14... Surroundings I10.19-Ho1d Req
uest signal, 20--) 1o1d Acknowledgment
dge signal, 21 ・−・−DM A Req u
Signal e s, 22-DMA Acknowledgment-1e
dge signal, 23- I/ORead signal, 24-
...-Ilo Write signal, 25-----
Memory Read signal (DMA-C), 26-M
Memory Write signal (DMA-C), 27-M
memory Read signal (CPU), 28--Mem
ory Write signal (CPU), 29...
Data bus, 30...Address bus, a, n-DM
A Controller address bus, b, 1...
Memory Read signal of DMA controller, c
, m---DMA controller Ilo Write
Signal, d...Status signal, e...
Data select signal (1), f... Data select signal (2), g... DMA controller data bus, h... Interleaved memory data bus 0th byte specific power , i... Interleaved memory data bus 1st byte output, j... Interleaved memory data bus 2nd byte output, k...
Interleaved memory data bus third byte output, 0...
...DMA controller data bus.
Claims (1)
作制御部とを備えたDMAコントローラにおいて、一回
のメモリからの転送データ読み出しサイクル内の周辺I
/Oへのデータ転送回数をカウントする書き込み回数カ
ウンタと、前記書き込み回数カウンタの値が出力される
データセレクト信号の端子と、前記データセレクト信号
が有効であるか無効であるかを示すステータス信号を発
生させるステータス信号発生回路とを備え、前記データ
セレクト信号と前記ステータス信号とを用いてメモリか
らI/Oへのデータ転送を行うようになしたことを特徴
とするDMAコントローラ。In a DMA controller equipped with a control register, a status register, and a DMA operation control unit, peripheral I in one transfer data read cycle from memory
A write count counter that counts the number of data transfers to /O, a data select signal terminal to which the value of the write count counter is output, and a status signal that indicates whether the data select signal is valid or invalid. 1. A DMA controller, comprising: a status signal generation circuit for generating a status signal; and said data select signal and said status signal are used to transfer data from a memory to an I/O.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2027636A JPH03231347A (en) | 1990-02-06 | 1990-02-06 | Dma controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2027636A JPH03231347A (en) | 1990-02-06 | 1990-02-06 | Dma controller |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH03231347A true JPH03231347A (en) | 1991-10-15 |
Family
ID=12226434
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2027636A Pending JPH03231347A (en) | 1990-02-06 | 1990-02-06 | Dma controller |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH03231347A (en) |
-
1990
- 1990-02-06 JP JP2027636A patent/JPH03231347A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0523764A2 (en) | Computer system having direct bus attachment between processor and dynamic main memory, and having in-processor DMA control with respect to a plurality of data exchange means also connected to said bus, and central processor for use in such computer system | |
JP2004171209A (en) | Shared memory data transfer device | |
US5077664A (en) | Direct memory access controller | |
JP3703532B2 (en) | Computer system with multiplexed address bus | |
JPH03231347A (en) | Dma controller | |
JPH07271654A (en) | Controller | |
JPH0235551A (en) | Address conversion system for channel device | |
JP2003085125A (en) | Memory controller and memory control method | |
JP3201439B2 (en) | Direct memory access control circuit | |
JP2976443B2 (en) | Information processing device that exchanges data via system bus | |
JP2581144B2 (en) | Bus control device | |
JP3204297B2 (en) | DMA transfer control device | |
JP4642398B2 (en) | Shared bus arbitration system | |
JP3000977U (en) | I / O interface device | |
JPH01173149A (en) | Memory module | |
JPH05128279A (en) | One-chip microcomputer | |
JPH06175967A (en) | Dma controller | |
KR20000060513A (en) | Interfacing apparatus | |
JPS61112272A (en) | Microcomputer applied device | |
JPH04170663A (en) | Direct memory access controller | |
JPH0195350A (en) | System for controlling data transferring | |
JPH08115293A (en) | Information processor | |
JPH02253362A (en) | Data transfer system between microprocessor and fifo buffer | |
JPH02307149A (en) | Direct memory access control system | |
JPS63259746A (en) | Inter-bank-memory data transmission system |