JPH07334451A - Direct memory access controller system - Google Patents

Direct memory access controller system

Info

Publication number
JPH07334451A
JPH07334451A JP12717994A JP12717994A JPH07334451A JP H07334451 A JPH07334451 A JP H07334451A JP 12717994 A JP12717994 A JP 12717994A JP 12717994 A JP12717994 A JP 12717994A JP H07334451 A JPH07334451 A JP H07334451A
Authority
JP
Japan
Prior art keywords
data
memory
bus
unit
controller
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
JP12717994A
Other languages
Japanese (ja)
Inventor
Osami Okubo
修実 大久保
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP12717994A priority Critical patent/JPH07334451A/en
Publication of JPH07334451A publication Critical patent/JPH07334451A/en
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

PURPOSE:To provide a DMA controller system capable of reducing transfer frequency between an I/O part and a memory and eliminating futile transfer time. CONSTITUTION:In the case of executing DMA transfer between the I/O part and the memory 5 having respectively different bus width, a CPU 4 releases a data bus, a timing control part 10 controls the timing of data reading from the I/O part in an I/O controller 6 and data storage from the controller 6 to a data latch part 9 and data read out from the I/O part by the control of the controller 6 are continuously stored in the data latch part 9 in each 8-bit unit through the data bus. Then, a timing control, part 10 controls the transfer timing of data from the latch part 9 to the memory 5 to transfer the data stored in the latch part 9 to the memory 5 through the data bus.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、パーソナルコンピュー
タなどで用いられるダイレクトメモリアクセスコントロ
ーラ装置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a direct memory access controller device used in a personal computer or the like.

【0002】[0002]

【従来の技術】近年、マイクロプロセッサの高性能化に
ともない、パーソナルコンピュータ(以下、パソコンと
略称する)などのデータバス幅は、8ビットから16ビ
ット、32ビット、さらには64ビットに増加してきて
いる。しかし、GPIBやSCSIなどの汎用インタフ
ェース(I/O)としては、従来からの8ビット幅のも
のが多く使用されている。
2. Description of the Related Art In recent years, as the performance of microprocessors has increased, the data bus width of personal computers (hereinafter referred to as personal computers) has increased from 8 bits to 16 bits, 32 bits, and even 64 bits. There is. However, as a general-purpose interface (I / O) such as GPIB or SCSI, a conventional 8-bit wide interface is often used.

【0003】以下、従来のI/Oとメモリ間でバス幅の
異なる場合のダイレクトメモリアクセス(以下、DMA
と略称する)転送について説明する。図2はI/Oから
メモリへのデータ転送を行う従来のDMAコントローラ
装置の構成図である。図2において、1はI/Oコント
ローラおよびメモリに対してそれぞれのアドレスを発生
するアドレス発生部である。2はI/Oコントローラへ
のリードおよびメモリへのライトの各タイミングを制御
するタイミング制御部である。3はアドレスやアクセス
タイミングなどの制御に関する設定を行う設定レジスタ
である。
In the following, a direct memory access (hereinafter, DMA) when the bus width is different between the conventional I / O and the memory
The transfer will be described. FIG. 2 is a block diagram of a conventional DMA controller device that transfers data from I / O to memory. In FIG. 2, reference numeral 1 is an address generator that generates respective addresses for the I / O controller and the memory. Reference numeral 2 denotes a timing control unit that controls each timing of reading to the I / O controller and writing to the memory. Reference numeral 3 is a setting register for making settings relating to control of addresses and access timings.

【0004】以上のような構成要素からなるDMAコン
トローラ装置について、以下その動作について説明す
る。まず、設定レジスタ3にI/Oコントローラのデー
タ読み出しレジスタのアドレス、メモリのデータ格納エ
リアの先頭アドレス、最終アドレスなどの設定を行う。
I/Oコントローラが読み出し可能になると、DMAコ
ントローラ装置はI/Oコントローラに対しリードを行
う。そのリード動作の途中でデータが確定した時点か
ら、DMAコントローラ装置はメモリの先頭アドレスに
対しライト動作を開始する。ライト動作が終了すると、
リード動作も終了し、1回のデータ転送が終了する。
The operation of the DMA controller device having the above components will be described below. First, the setting register 3 is set with the address of the data read register of the I / O controller, the start address and the end address of the data storage area of the memory.
When the I / O controller becomes readable, the DMA controller device reads the I / O controller. The DMA controller device starts the write operation to the head address of the memory when the data is determined in the middle of the read operation. When the write operation ends,
The read operation also ends, and one data transfer ends.

【0005】この場合、メモリのデータバス幅は32ビ
ットであるが、I/Oのアドレスは8ビットのバイト単
位で存在し、バイトアクセスが可能でなければならな
い。つまり、I/Oとメモリ間のDMA転送における1
回のデータ転送はバイト単位で行われる。データ転送を
継続する場合は、タイミング制御部2によって、設定レ
ジスタ3の内容を参照して、アドレス発生部1のアドレ
スカウンタ1a,1bをインクリメントすることによっ
てアドレスレジスタ1c,1dを書き換え、メモリアド
レスをインクリメントしながら同様の動作が行われる。
In this case, the data bus width of the memory is 32 bits, but the I / O address exists in 8-bit byte units and must be byte-accessible. In other words, 1 in DMA transfer between I / O and memory
Data transfer is performed byte by byte. When continuing the data transfer, the timing control unit 2 refers to the contents of the setting register 3 and rewrites the address registers 1c and 1d by incrementing the address counters 1a and 1b of the address generation unit 1 to write the memory address. The same operation is performed while incrementing.

【0006】[0006]

【発明が解決しようとする課題】しかしながら上記のよ
うな従来のDMAコントローラ装置では、バス幅が異な
るI/Oとメモリ間のDMA転送を行う場合は、1バイ
トの転送を行うのに、I/Oコントローラに対する1回
分のリード時間とメモリに対する1回分のライト時間と
が転送時間として必要になるので、たとえば、32ビッ
ト分のデータ転送を行う場合には、バス幅が8ビットの
I/Oと32ビットのメモリ間では、I/Oコントロー
ラに対して4回、メモリに対して4回、合計8回分の転
送時間が必要になり、転送時間に無駄が生じるという問
題点を有していた。
However, in the conventional DMA controller device as described above, when performing the DMA transfer between the I / Os having different bus widths and the memory, the I / O is transferred in 1 byte. Since one read time with respect to the O controller and one write time with respect to the memory are required as the transfer time, for example, when performing data transfer for 32 bits, an I / O having a bus width of 8 bits and Between the 32-bit memories, a transfer time of 4 times for the I / O controller and 4 times for the memory, that is, a total of 8 transfer times is required, resulting in a waste of the transfer time.

【0007】本発明は、上記従来の問題点を解決するも
ので、バス幅が異なるI/Oとメモリ間のDMA転送を
行う場合の転送回数を減らすことによって転送時間が短
縮でき、この場合の転送時間の無駄を省くことができる
DMAコントローラ装置を提供することを目的とする。
The present invention solves the above-mentioned conventional problems, and the transfer time can be shortened by reducing the number of transfers when performing DMA transfer between I / O and memories having different bus widths. It is an object of the present invention to provide a DMA controller device that can reduce waste of transfer time.

【0008】[0008]

【課題を解決するための手段】上記の目的を達成するた
めに本発明のDMAコントローラ装置は、データのバス
幅が異なるI/Oとメモリとの間のDMA転送を制御す
るDMAコントローラ装置において、前記I/Oを制御
し、このI/Oから読み出ししたデータをデータバスへ
出力する出力部と、前記出力部の前記読み出しのアドレ
スとデータが転送される前記メモリのアドレスとを発生
するアドレス発生部と、複数の8ビットレジスタで構成
され、前記出力部からデータバスへ出力されたデータを
前記複数の8ビットレジスタに連続して格納するデータ
ラッチ部と、前記出力部により前記I/Oからデータを
読み出しし前記データラッチ部に格納するタイミングと
前記データラッチ部が格納したデータを前記メモリへ転
送するタイミングとを制御するタイミングコントロール
部と、前記データバスの開閉を制御するバス制御部とを
備えた構成とする。
In order to achieve the above object, a DMA controller device of the present invention is a DMA controller device for controlling DMA transfer between an I / O and a memory having different data bus widths. An output unit that controls the I / O and outputs the data read from the I / O to a data bus, and an address generator that generates the read address of the output unit and the memory address to which the data is transferred. Unit and a plurality of 8-bit registers, and a data latch unit for continuously storing the data output from the output unit to the data bus in the plurality of 8-bit registers, and the output unit from the I / O. Timing of reading data and storing it in the data latch unit and timing of transferring data stored in the data latch unit to the memory A timing controller for controlling, a configuration in which a bus control unit for controlling the opening and closing of the data bus.

【0009】[0009]

【作用】この構成によると、データのバス幅が異なるI
/Oとメモリとの間のDMA転送を行う際には、バス制
御部がデータバスを開いて解放し、タイミングコントロ
ール部が、出力部のI/Oからのデータの読み出しと、
出力部からデータをデータラッチ部へ格納するタイミン
グを制御する。この制御により、アドレス発生部が発生
したアドレスのI/Oに対する出力部からの制御により
読み出されたデータが、解放されたデータバスを介し
て、データラッチ部に8ビット単位で連続して格納され
る。
According to this structure, I having different data bus widths is used.
When performing a DMA transfer between the I / O and the memory, the bus control unit opens and releases the data bus, and the timing control unit reads the data from the I / O of the output unit.
Controls the timing of storing data from the output section to the data latch section. By this control, the data read by the control from the output unit for the I / O of the address generated by the address generation unit is continuously stored in the data latch unit in 8-bit units via the released data bus. To be done.

【0010】この後、タイミングコントロール部は、デ
ータラッチ部からデータをメモリへ転送するタイミング
を制御する。この制御により、データラッチ部に格納さ
れたデータが、解放されたデータバスを介して、アドレ
ス発生部が発生したアドレスのメモリ領域に転送され
る。
Thereafter, the timing control section controls the timing of transferring the data from the data latch section to the memory. By this control, the data stored in the data latch unit is transferred to the memory area of the address generated by the address generation unit via the released data bus.

【0011】[0011]

【実施例】以下、本発明の一実施例のダイレクトメモリ
アクセスコントローラ装置について、図面を参照しなが
ら説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS A direct memory access controller device according to an embodiment of the present invention will be described below with reference to the drawings.

【0012】図1は本実施例のダイレクトメモリアクセ
ス(以下、DMAと略称する)コントローラ装置を用い
たDMA転送システムのブロック図である。図1におい
て、4は32ビットのデータバスを持つバス制御部とし
てのCPU、5は32ビットのデータバスを持つメモ
リ、6はGPIBインタフェース(I/O)をコントロ
ールする出力部としてのI/Oコントローラ(8ビット
バス)、7はI/Oコントローラ6のアドレスを発生
し、アドレス発生部を構成するI/Oアドレス発生部、
8は、I/Oアドレス発生部7とともにアドレス発生部
を構成し、メモリ5のアドレスを発生するメモリアドレ
ス発生部、9は8ビットのレジスタ4個より構成される
データラッチ部、10はタイミングコントロール部、1
1はタイミングコントロール部10などの制御用データ
の設定を行う制御レジスタ部である。
FIG. 1 is a block diagram of a DMA transfer system using a direct memory access (hereinafter abbreviated as DMA) controller device of this embodiment. In FIG. 1, 4 is a CPU as a bus control unit having a 32-bit data bus, 5 is a memory having a 32-bit data bus, and 6 is an I / O as an output unit for controlling a GPIB interface (I / O). A controller (8-bit bus), 7 generates an address of the I / O controller 6, and an I / O address generation unit that constitutes an address generation unit,
Reference numeral 8 denotes a memory address generation unit which constitutes an address generation unit together with the I / O address generation unit 7 and generates an address of the memory 5, 9 denotes a data latch unit constituted by four 8-bit registers, and 10 denotes timing control. Part, 1
Reference numeral 1 is a control register unit for setting control data such as the timing control unit 10.

【0013】ここでは、CPU4と、I/Oコントロー
ラ6と、I/Oアドレス発生部7と、メモリアドレス発
生部8と、データラッチ部9と、タイミングコントロー
ル部10と、制御レジスタ部11とでDMAコントロー
ラ装置が構成されている。
Here, the CPU 4, the I / O controller 6, the I / O address generation unit 7, the memory address generation unit 8, the data latch unit 9, the timing control unit 10, and the control register unit 11 are included. A DMA controller device is configured.

【0014】以上のような構成要素からなるDMA転送
システムの動作に基づいて、本実施例のDMAコントロ
ーラ装置の動作について説明する。外部機器からGPI
Bなどの汎用インタフェース(I/O)を通してデータ
が入力される場合、I/Oコントローラ6よりCPU4
に対し割り込みによってバスの解放を要求する。バスの
解放要求をCPU4が受け付けると、CPU4は、バス
を解放し、DMAコントローラ装置に対しバスが解放さ
れたことを知らせ、DMA転送を開始させる。
The operation of the DMA controller device of this embodiment will be described based on the operation of the DMA transfer system having the above components. External device to GPI
When data is input through a general-purpose interface (I / O) such as B, the I / O controller 6 causes the CPU 4
Is requested to release the bus by an interrupt. When the CPU 4 receives the bus release request, the CPU 4 releases the bus, notifies the DMA controller device that the bus has been released, and starts the DMA transfer.

【0015】DMAコントローラ装置は、I/Oコント
ローラ6に対して、I/Oアドレス発生部7よりI/O
コントローラ6の読み出しレジスタのアドレスを出力
し、同時に、タイミングコントロール部10よりリード
信号を出力する。I/Oコントローラ6の規定タイミン
グ(本実施例では100nsとする)後に、タイミング
コントロール部10は、データラッチ部9の4個の8ビ
ットレジスタの1番目のレジスタに対し、ラッチ信号を
出力する。連続してI/Oコントローラ6よりデータを
読み出し、32ビットバスであるシステムデータバスを
介して、データラッチ部9の4個のレジスタにデータを
格納する。
The DMA controller device controls the I / O controller 6 from the I / O address generation section 7 to the I / O controller 6.
The address of the read register of the controller 6 is output, and at the same time, the read signal is output from the timing control unit 10. After the specified timing of the I / O controller 6 (100 ns in this embodiment), the timing control unit 10 outputs a latch signal to the first of the four 8-bit registers of the data latch unit 9. Data is continuously read from the I / O controller 6, and the data is stored in four registers of the data latch unit 9 via the system data bus which is a 32-bit bus.

【0016】データラッチ部9に32ビット分のデータ
が格納されると、メモリアドレス発生部8より、メモリ
5に対しデータを格納するメモリ領域の先頭アドレスが
出力され、同時に、データバスにデータラッチ部9より
データが出力され、タイミングコントロール部10より
メモリ5に対しメモリ5のライト信号が出力される。メ
モリ5の規定タイミング(本実施例では100ns)後
に、メモリ5に対してのライト信号は終了し、外部機器
からメモリ5への32ビットデータのデータ転送の1回
目が終了する。
When 32 bits of data are stored in the data latch unit 9, the memory address generation unit 8 outputs the start address of the memory area for storing the data to the memory 5, and at the same time, the data latch is latched on the data bus. The data is output from the unit 9, and the write signal of the memory 5 is output from the timing control unit 10 to the memory 5. After the specified timing of the memory 5 (100 ns in this embodiment), the write signal to the memory 5 ends, and the first data transfer of 32-bit data from the external device to the memory 5 ends.

【0017】以後、メモリアドレス発生部8は、データ
を格納するメモリ領域のアドレスをインクリメントしな
がら、上記の動作を、外部機器からI/Oコントローラ
にデータ入力が無くなるまで繰り返す。外部機器からの
データ入力が終了したとI/Oコントローラ6が判断す
ると、I/Oコントローラ6はCPU4に対して割り込
みをかけ、DMA転送を終了する。
After that, the memory address generator 8 repeats the above operation while incrementing the address of the memory area for storing data until there is no data input from the external device to the I / O controller. When the I / O controller 6 determines that the data input from the external device is completed, the I / O controller 6 interrupts the CPU 4 and ends the DMA transfer.

【0018】以上の動作により、バス幅が異なるI/O
とメモリ間のDMA転送を行う場合の転送回数を減らす
ことによって転送時間が短縮でき、この場合の転送時間
の無駄を省くことができる。
By the above operation, I / Os having different bus widths
The transfer time can be shortened by reducing the number of transfers in the case of performing the DMA transfer between the memory and the memory, and the waste of the transfer time in this case can be eliminated.

【0019】[0019]

【発明の効果】以上のように本発明によれば、データの
バス幅が異なるI/Oとメモリとの間のDMA転送を行
う際には、バス制御部がデータバスを開いて解放し、タ
イミングコントロール部が、出力部のI/Oからのデー
タの読み出しと、出力部からデータをデータラッチ部へ
格納するタイミングを制御する。この制御により、アド
レス発生部が発生したアドレスのI/Oに対する出力部
からの制御により読み出されたデータを、解放されたデ
ータバスを介して、データラッチ部に8ビット単位で連
続して格納することができる。
As described above, according to the present invention, the bus controller opens and releases the data bus when performing the DMA transfer between the I / O and the memory having different data bus widths. The timing control unit controls the timing of reading data from the I / O of the output unit and storing the data from the output unit in the data latch unit. By this control, the data read by the control of the output unit for the I / O of the address generated by the address generation unit is continuously stored in 8-bit units in the data latch unit via the released data bus. can do.

【0020】この後、タイミングコントロール部は、デ
ータラッチ部からデータをメモリへ転送するタイミング
を制御する。この制御により、データラッチ部に格納さ
れたデータを、解放されたデータバスを介して、アドレ
ス発生部が発生したアドレスのメモリ領域に転送するこ
とができる。
After that, the timing control section controls the timing of transferring the data from the data latch section to the memory. By this control, the data stored in the data latch unit can be transferred to the memory area of the address generated by the address generation unit via the released data bus.

【0021】そのため、バス幅が異なるI/Oとメモリ
間のDMA転送を行う場合の転送回数を減らすことによ
って転送時間が短縮でき、この場合の転送時間の無駄を
省くことができる。
Therefore, the transfer time can be shortened by reducing the number of transfers when performing the DMA transfer between the I / O and the memory having different bus widths, and the waste of the transfer time in this case can be omitted.

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

【図1】本発明の実施例のDMAコントローラ装置のブ
ロック図
FIG. 1 is a block diagram of a DMA controller device according to an embodiment of the present invention.

【図2】従来のDMAコントローラ装置のブロック図FIG. 2 is a block diagram of a conventional DMA controller device.

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

4 CPU 6 I/Oコントローラ 7 I/Oアドレス発生部 8 メモリアドレス発生部 9 データラッチ部 10 タイミングコントロール部 4 CPU 6 I / O controller 7 I / O address generator 8 Memory address generator 9 Data latch 10 Timing controller

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 データのバス幅が異なるI/Oとメモリ
との間のダイレクトメモリアクセス転送を制御するダイ
レクトメモリアクセスコントローラ装置において、前記
I/Oを制御し、このI/Oから読み出ししたデータを
データバスへ出力する出力部と、前記出力部の前記読み
出しのアドレスとデータが転送される前記メモリのアド
レスとを発生するアドレス発生部と、複数の8ビットレ
ジスタで構成され、前記出力部からデータバスへ出力さ
れたデータを前記複数の8ビットレジスタに連続して格
納するデータラッチ部と、前記出力部により前記I/O
からデータを読み出しし前記データラッチ部に格納する
タイミングと前記データラッチ部が格納したデータを前
記メモリへ転送するタイミングとを制御するタイミング
コントロール部と、前記データバスの開閉を制御するバ
ス制御部とを備えたダイレクトメモリアクセスコントロ
ーラ装置。
1. A direct memory access controller device for controlling a direct memory access transfer between an I / O and a memory having different data bus widths, wherein the I / O is controlled and data read from the I / O is controlled. Output to the data bus, an address generation unit for generating the read address of the output unit and an address of the memory to which data is transferred, and a plurality of 8-bit registers. A data latch unit for successively storing the data output to the data bus in the plurality of 8-bit registers, and the output unit for the I / O
A timing control unit that controls the timing of reading data from the data latch unit and storing it in the data latch unit and the timing of transferring the data stored in the data latch unit to the memory; and a bus control unit that controls the opening and closing of the data bus. Direct memory access controller device equipped with.
JP12717994A 1994-06-09 1994-06-09 Direct memory access controller system Pending JPH07334451A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP12717994A JPH07334451A (en) 1994-06-09 1994-06-09 Direct memory access controller system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP12717994A JPH07334451A (en) 1994-06-09 1994-06-09 Direct memory access controller system

Publications (1)

Publication Number Publication Date
JPH07334451A true JPH07334451A (en) 1995-12-22

Family

ID=14953634

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12717994A Pending JPH07334451A (en) 1994-06-09 1994-06-09 Direct memory access controller system

Country Status (1)

Country Link
JP (1) JPH07334451A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998054650A1 (en) * 1997-05-30 1998-12-03 Sanyo Electric Co., Ltd. Communication dma device

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998054650A1 (en) * 1997-05-30 1998-12-03 Sanyo Electric Co., Ltd. Communication dma device
JPH10334037A (en) * 1997-05-30 1998-12-18 Sanyo Electric Co Ltd Communication dma device
KR100348545B1 (en) * 1997-05-30 2002-08-14 산요 덴키 가부시키가이샤 Communication dma device
CN1109980C (en) * 1997-05-30 2003-05-28 三洋电机株式会社 Communication DMA device
US6584512B1 (en) 1997-05-30 2003-06-24 Sanyo Electric Co., Ltd. Communication DMA device for freeing the data bus from the CPU and outputting divided data

Similar Documents

Publication Publication Date Title
JP3598321B2 (en) Buffering data exchanged between buses operating at different frequencies
US4835684A (en) Microcomputer capable of transferring data from one location to another within a memory without an intermediary data bus
JPH05324348A (en) Single chip microcomputer
JP3803196B2 (en) Information processing apparatus, information processing method, and recording medium
US6938118B1 (en) Controlling access to a primary memory
JPH07334451A (en) Direct memory access controller system
JP3701045B2 (en) Processing unit and method for generating a memory access cycle in a processing unit
JPH04130551A (en) Cache control method
JPH11184799A (en) Method for transferring memory data and device therefor
JPH064398A (en) Information processor
JP2570271B2 (en) Semiconductor memory controller
JP2642087B2 (en) Data transfer processing mechanism between main storage devices
JP4319788B2 (en) Microcomputer
JPH0445067Y2 (en)
JP3299147B2 (en) Cache control circuit
JPS5938827A (en) Microprocessor ipl system
JPH04246764A (en) Data processor
JPS61286956A (en) Data processor
JPH0630085B2 (en) Computer system
JPH0512121A (en) Data processor
JPS59189433A (en) Data erasing system by direct memory access
JPH02307123A (en) Computer
JPH07160577A (en) Cache memory controller
JPH02123450A (en) Information processing system
JPH01250163A (en) Bus controller