JPH0668022A - Direct memory access device - Google Patents

Direct memory access device

Info

Publication number
JPH0668022A
JPH0668022A JP24125892A JP24125892A JPH0668022A JP H0668022 A JPH0668022 A JP H0668022A JP 24125892 A JP24125892 A JP 24125892A JP 24125892 A JP24125892 A JP 24125892A JP H0668022 A JPH0668022 A JP H0668022A
Authority
JP
Japan
Prior art keywords
data
memory access
direct memory
buffer
transfer
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
JP24125892A
Other languages
Japanese (ja)
Inventor
Toshiya Irie
俊也 入江
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP24125892A priority Critical patent/JPH0668022A/en
Publication of JPH0668022A publication Critical patent/JPH0668022A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To execute the complicated discontinuous space DMA operation with a relatively simple logic and to relatively easily change the function. CONSTITUTION:A pair of buffer memories 13 and 14 are provided and are used like a toggle by an input-side DMAC and an output-side DMAC 12. That is, the input-side DMAC 11 stores designated data on a memory 1 in the first buffer memory 13; and when the first buffer memory 13 is filled up, the DMAC 11 stores data in the second buffer memory 14. The output-side DMAC 12 reads out data from the first buffer memory 13, where data is already written, to transfer this data to an input/output device 3 while the input-side DMAC 11 writes data in the second buffer memory 14. Since each of DMACs 11 and 12 executes only the fundamental operation without the data read after write processing to buffer memories, the logic constitution is simplified.

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 device suitable for transferring data stored in a discontinuous space on a memory.

【0002】[0002]

【従来の技術】ダイレクトメモリアクセス(DMA)装
置は、プロセッサのデータ処理に対する負荷を軽減し、
処理の高速化を図るためにコンピュータ等に広く使用さ
れている。図2に従来一般のDMA基本動作説明図を示
す。この図を用いて、まず一般のDMA動作を説明す
る。図において、メモリ1はデータの転送元であって、
ダイレクトメモリアクセスコントローラ2を用いて転送
先の入出力装置3にデータを転送する構成が図示されて
いる。メモリ1は、例えばコンピュータの主記憶装置
で、入出力装置3は磁気ディスク装置等のI/Oデバイ
スである。ダイレクトメモリアクセスコントローラ2
は、プロセッサより先頭アドレス5とデータ量6の通知
を受けて、メモリ1の中に格納されたデータ4を読み出
し、入出力装置3に向け転送する。上記の動作は最も基
本的な動作であるが、通常、データはメモリ1の内部に
常に連続して格納されているとは限らない。従って、メ
モリ1上の不連続な空間に格納されたデータについての
ダイレクトメモリアクセス要求が起こり得る。
2. Description of the Related Art Direct memory access (DMA) devices reduce the load on the data processing of the processor,
It is widely used in computers for speeding up processing. FIG. 2 is a diagram for explaining the basic operation of a conventional general DMA. First, a general DMA operation will be described with reference to this figure. In the figure, the memory 1 is a data transfer source,
A configuration for transferring data to the input / output device 3 of the transfer destination by using the direct memory access controller 2 is illustrated. The memory 1 is, for example, a main storage device of a computer, and the input / output device 3 is an I / O device such as a magnetic disk device. Direct memory access controller 2
Receives a notification of the start address 5 and the data amount 6 from the processor, reads the data 4 stored in the memory 1 and transfers it to the input / output device 3. Although the above operation is the most basic operation, data is not always continuously stored in the memory 1. Therefore, a direct memory access request for the data stored in the discontinuous space on the memory 1 may occur.

【0003】図3に、このような場合に対応する従来の
不連続空間DMA動作説明図を示す。この図もメモリ1
からダイレクトメモリアクセスコントローラ8を用い
て、入出力装置3にデータを転送する構成を図示してい
る。メモリ1には、例えば3個の領域にデータ4−1、
4−2及び4−3が格納されている。これらの領域は、
それぞれ全く別々の場所に離れており、ダイレクトメモ
リアクセスコントローラ8には、プロセッサから各デー
タ4−1、4−2、4−3の先頭アドレス5−1、5−
2、5−3とデータ量6−1、6−2、6−3の通知を
受ける。
FIG. 3 is an explanatory diagram of a conventional discontinuous space DMA operation corresponding to such a case. This figure is also memory 1
3 illustrates a configuration for transferring data to the input / output device 3 by using the direct memory access controller 8. In the memory 1, for example, data 4-1 in three areas,
4-2 and 4-3 are stored. These areas are
They are separated from each other at completely different places, and the direct memory access controller 8 sends the head addresses 5-1 and 5- of the respective data 4-1, 4-2 and 4-3 from the processor to the direct memory access controller 8.
2, 5-3 and data amounts 6-1, 6-2, 6-3 are notified.

【0004】このような場合、読み取られたデータをま
とめて入出力装置3に転送するために、予めダイレクト
メモリアクセスコントローラ8にバッファメモリ9が設
けられる。そして、ダイレクトメモリアクセスコントロ
ーラ8は、始めのデータ4−1から読取りを開始しバッ
ファメモリ9に格納し、次に別のデータ4−2を読み取
り、バッファメモリ9の次の領域に転送し、最後にデー
タ4−3を読み取ってバッファメモリ9に転送する、と
いうようにメモリ1からバッファメモリ9へのデータ転
送動作を繰り返す。そして、その後バッファメモリ9か
ら入出力装置3への転送が行われる。この転送もダイレ
クトメモリアクセスコントローラ8の制御による。
In such a case, a buffer memory 9 is provided in advance in the direct memory access controller 8 in order to collectively transfer the read data to the input / output device 3. Then, the direct memory access controller 8 starts reading from the first data 4-1 and stores it in the buffer memory 9, then reads another data 4-2, transfers it to the next area of the buffer memory 9, and finally. The data transfer operation from the memory 1 to the buffer memory 9 is repeated such that the data 4-3 is read and transferred to the buffer memory 9. Then, after that, the transfer from the buffer memory 9 to the input / output device 3 is performed. This transfer is also controlled by the direct memory access controller 8.

【0005】[0005]

【発明が解決しようとする課題】ところで、上記のよう
な不連続空間DMA動作を実行する場合においては、ダ
イレクトメモリアクセスコントローラ8は、バッファメ
モリ9に順番にデータを書き足していく処理を行うため
に、現在、いずれのデータの転送を行っているかを示す
情報や、バッファメモリ9上の書き込み開始アドレス、
その他各種の情報を認識しながら処理を実行することに
なる。
By the way, in the case of executing the discontinuous space DMA operation as described above, the direct memory access controller 8 performs a process of sequentially writing data in the buffer memory 9. Information indicating which data is currently being transferred, the write start address in the buffer memory 9,
The processing is executed while recognizing various other information.

【0006】一方、この種のダイレクトメモリアクセス
コントローラ8は、通常高速性を要求されるため、ソフ
トウェアでなくハードウェアにより構成される。即ち、
プロセッサから先頭アドレスやデータ量等の情報が所定
のレジスタに格納されると、ダイレクトメモリアクセス
コントローラ8を構成するカウンタや論理ゲート群等の
ロジックが動作して、自動的にデータ転送が行われる。
従って、図2に示すような基本的なダイレクトメモリア
クセス動作に比べて、図3に示したような不連続空間D
MA動作を実行させるためのダイレクトメモリアクセス
コントローラ8は、非常に複雑なロジックを必要とす
る。また、プロセッサが、基本動作と不連続空間DMA
動作の両方を要求する可能性がある場合、2種類のロジ
ックを用意しておかなければならない。更に、このよう
な転送動作を変更する場合には、改めてロジックを組み
直す必要が生じる。このように、従来のDMA装置では
回路コストやその保守管理の面で、費用的にあるいは手
数の面で大きな負担となる欠点があった。
On the other hand, the direct memory access controller 8 of this type is usually required to have a high speed, and is therefore constituted by hardware instead of software. That is,
When information such as the head address and the amount of data is stored in a predetermined register from the processor, the logic such as the counter and the logic gate group that constitute the direct memory access controller 8 operates to automatically perform the data transfer.
Therefore, compared with the basic direct memory access operation as shown in FIG. 2, the discontinuous space D as shown in FIG.
The direct memory access controller 8 for executing the MA operation requires very complicated logic. In addition, the processor has a basic operation and a discontinuous space DMA.
Two types of logic must be prepared when both operations may be required. Furthermore, when changing such a transfer operation, it becomes necessary to reconstruct the logic. As described above, the conventional DMA device has a drawback that it is a heavy burden in terms of cost and maintenance in terms of circuit cost and maintenance management thereof.

【0007】本発明は以上の点に着目してなされたもの
で、比較的簡単なロジックによって複雑な不連続空間D
MA動作を実行でき、更にその機能変更等も比較的容易
に行うことができるダイレクトメモリアクセス装置を提
供することを目的とするものである。
The present invention has been made by paying attention to the above points, and a complicated discontinuous space D can be formed by a relatively simple logic.
It is an object of the present invention to provide a direct memory access device that can execute MA operation and can relatively easily change its function.

【0008】[0008]

【課題を解決するための手段】本発明のダイレクトメモ
リアクセス装置は、転送元からダイレクトメモリアクセ
ス要求を受けた場合に転送すべきデータ量の、平均転送
量の2分の1以下の容量の一対の2ポート式のバッファ
メモリと、転送元から一方のバッファメモリにデータを
転送する入力側ダイレクトメモリアクセスコントローラ
と、他方のバッファメモリから、既に直前の転送動作に
より格納されたデータを、入力側ダイレクトメモリアク
セスコントローラの転送動作と並行して転送先へ転送す
る出力側ダイレクトメモリアクセスコントローラとを備
えたことを特徴とするものである。更に、転送データの
転送元における複数の読み出しアドレスとデータ量とを
含むパラメータを格納するランダム・アクセス・メモリ
と、前記ランダム・アクセス・メモリに格納されたパラ
メータの書き換え制御を行うプロセッサとを備えたこと
を特徴とするものである。
The direct memory access device of the present invention comprises a pair of capacities that are ½ or less of the average transfer amount of the data amount to be transferred when a direct memory access request is received from the transfer source. The 2-port type buffer memory, the input side direct memory access controller for transferring data from the transfer source to one buffer memory, and the data already stored by the immediately preceding transfer operation from the other buffer memory for the input side direct memory access controller. An output side direct memory access controller for transferring to the transfer destination in parallel with the transfer operation of the memory access controller is provided. Further, a random access memory for storing parameters including a plurality of read addresses and a data amount at the transfer data transfer source, and a processor for controlling rewriting of the parameters stored in the random access memory are provided. It is characterized by that.

【0009】[0009]

【作用】この装置は、一対のバッファメモリを設け、こ
れを入力側ダイレクトメモリアクセスコントローラ(D
MAC)と出力側DMACとでトグルに使用する。即
ち、入力側DMACはメモリ上の指定されたデータを第
1バッファメモリに格納し、第1バッファメモリがいっ
ぱいになると第2バッファメモリにそのデータを格納す
る。出力側DMACは、入力側DMACが第2バッファ
メモリにデータを書き込み中、既にデータの書き込まれ
た第1バッファメモリからそのデータを読み出し、入出
力装置に向け転送する。バッファメモリへのデータの追
記処理を行わず、各DMACはいずれも基本動作のみを
実行するためロジック構成は簡単になる。連続するデー
タのバッファメモリへの転送が終わると、次の領域の先
頭アドレスやデータ量を認識するとともに、そのデータ
を書き込むバッファメモリも切り換えられる。従って、
読み出されるデータを格納した空間が切り換わっても、
入力側DMACの動作は変わらない。出力側DMACの
動作も同様である。このようなトグル動作の切り換えタ
イミングパラメータを変更すれば、ロジックの変更無し
にダイレクトメモリアクセス動作の変更が可能である。
This device is provided with a pair of buffer memories, which are connected to the input side direct memory access controller (D
It is used as a toggle between the MAC) and the output side DMAC. That is, the input side DMAC stores the designated data in the memory in the first buffer memory, and stores the data in the second buffer memory when the first buffer memory becomes full. The output-side DMAC reads the data from the first buffer memory in which the data has already been written and transfers it to the input / output device while the input-side DMAC is writing the data in the second buffer memory. The additional data writing process to the buffer memory is not performed, and each DMAC executes only the basic operation, which simplifies the logic configuration. When the transfer of continuous data to the buffer memory is completed, the start address and data amount of the next area are recognized, and the buffer memory to write the data is also switched. Therefore,
Even if the space storing the read data is switched,
The operation of the input side DMAC does not change. The operation of the output side DMAC is similar. By changing the switching timing parameter of such a toggle operation, it is possible to change the direct memory access operation without changing the logic.

【0010】[0010]

【実施例】以下、本発明を図の実施例を用いて詳細に説
明する。図1は、本発明のダイレクトメモリアクセス装
置の実施例を示す概略ブロック図である。図において、
この装置は、コンピュータの主記憶装置等から構成され
る転送元のメモリ1から磁気ディスク装置等と接続され
た転送先の入出力装置3に対し、データを転送するため
に構成されたものである。メモリ1側には、入力側ダイ
レクトメモリアクセスコントローラ11が設けられ、入
出力装置3側には、出力側ダイレクトメモリアクセスコ
ントローラ12が設けられる。その間に一対のバッファ
メモリ、即ち第1バッファメモリ13と第2バッファメ
モリ14が設けられている。入力側ダイレクトメモリア
クセスコントローラ11と一対のバッファメモリ13、
14の間は、セレクタ15により接続されている。
The present invention will be described in detail below with reference to the embodiments shown in the drawings. FIG. 1 is a schematic block diagram showing an embodiment of a direct memory access device of the present invention. In the figure,
This device is configured to transfer data from a transfer source memory 1 including a main storage device of a computer to a transfer destination input / output device 3 connected to a magnetic disk device or the like. . An input side direct memory access controller 11 is provided on the memory 1 side, and an output side direct memory access controller 12 is provided on the input / output device 3 side. A pair of buffer memories, that is, a first buffer memory 13 and a second buffer memory 14 are provided between them. Input side direct memory access controller 11 and a pair of buffer memories 13,
The selectors 15 are connected between the fourteen.

【0011】また、出力側ダイレクトメモリアクセスコ
ントローラ12と一対のバッファメモリ13、14の間
は、セレクタ16により接続されている。これらのセレ
クタ15、16は、例えば第1バッファメモリ13を入
力側ダイレクトメモリアクセスコントローラ11に接続
したとき、第2バッファメモリ14を出力側ダイレクト
メモリアクセスコントローラ12に接続し、その次のタ
イミングでは、第2バッファメモリ14を入力側ダイレ
クトメモリアクセスコントローラ11に接続し、第1バ
ッファメモリ13を出力側ダイレクトメモリアクセスコ
ントローラ12に接続する。このような切換動作は、従
来データの連続的な高速転送等に広く使われており、そ
の制御回路等の説明は省略する。本発明では、このよう
に一対のバッファメモリ13、14をトグルに使用する
ことによって、転送動作の簡略化を図っている。
A selector 16 connects the output side direct memory access controller 12 and the pair of buffer memories 13 and 14. These selectors 15 and 16 connect the second buffer memory 14 to the output side direct memory access controller 12, for example, when the first buffer memory 13 is connected to the input side direct memory access controller 11, and at the next timing, The second buffer memory 14 is connected to the input side direct memory access controller 11, and the first buffer memory 13 is connected to the output side direct memory access controller 12. Such a switching operation has been widely used for continuous high-speed data transfer in the related art, and a description of its control circuit will be omitted. In the present invention, the pair of buffer memories 13 and 14 are used as toggles in this way to simplify the transfer operation.

【0012】図4に、上記の第1バッファメモリ13及
び第2バッファメモリ14の容量を決めるための平均転
送量の説明図を示す。図に示すように、図1に示すシス
テムでダイレクトメモリアクセスの要求回数を縦軸に、
その各要求の都度転送したデータ量を横軸にとってその
統計を図示すると、平均転送量Mを中心とする適当な分
布が得られる。本発明の装置の場合、第1バッファメモ
リ13及び第2バッファメモリ14の容量は、この平均
転送量をMとしたとき、その2分の1程度に選択する。
従って、平均的なデータ転送要求が行われた場合、第1
バッファメモリ13と第2バッファメモリ14をフルに
使用してデータ転送が行われることになる。このよう
に、本発明においては、基本的にバッファメモリへのデ
ータの追記を行わない。つまり、バッファメモリの容量
が大き過ぎると使用されない部分が増え、資源が無駄に
なる。これに対し、バッファメモリの容量を小さくし過
ぎると、後で説明するトグル切り換え回数が増え、全体
としてデータ転送時間が長時間となる。これらの点を考
慮して上記したようにバッファメモリの容量が決定され
ている。
FIG. 4 is an explanatory diagram of the average transfer amount for determining the capacities of the first buffer memory 13 and the second buffer memory 14 described above. As shown in the figure, in the system shown in FIG. 1, the vertical axis indicates the number of direct memory access requests,
When the statistics are shown with the horizontal axis representing the amount of data transferred for each request, an appropriate distribution centered on the average transfer amount M is obtained. In the case of the device of the present invention, the capacities of the first buffer memory 13 and the second buffer memory 14 are selected to be about one half of the average transfer amount, where M is the average transfer amount.
Therefore, if an average data transfer request is made, the first
Data transfer is carried out by fully using the buffer memory 13 and the second buffer memory 14. As described above, basically, in the present invention, additional data is not added to the buffer memory. In other words, if the buffer memory capacity is too large, the unused portion increases and resources are wasted. On the other hand, if the capacity of the buffer memory is too small, the number of times of toggle switching, which will be described later, increases, and the data transfer time becomes long as a whole. In consideration of these points, the capacity of the buffer memory is determined as described above.

【0013】再び図1に戻って、本発明の装置の概略動
作をこの図を用いて説明する。入力側ダイレクトメモリ
アクセスコントローラ11には、プロセッサからメモリ
1に格納されたデータ4−1、4−2、4−3の先頭ア
ドレス5−1、5−2、5−3と、各データ量6−1、
6−2、6−3が通知される。更に、本発明の装置にお
いては、入力側ダイレクトメモリアクセスコントローラ
11と出力側ダイレクトメモリアクセスコントローラ1
2に対するトグル切り換えタイミングのためのパラメー
タが通知される。このパラメータは、実際には読み出し
データ量をカウントするカウンタの初期値等として使用
され、第1バッファメモリ13や第2バッファメモリ1
4の容量いっぱいまでデータの書き込みが行われると、
カウンタからセレクタ15、16に対し切り換え信号が
出力され、データの転送先が切り換えられるといった制
御に使われる。従って、図に示す先頭アドレスやデータ
量あるいはトグル切り換えタイミングパラメータ17等
は、予めメモリ等に保存されるが、その他は全てロジッ
クにより構成される。
Referring back to FIG. 1, the schematic operation of the apparatus of the present invention will be described with reference to this figure. In the input side direct memory access controller 11, the start addresses 5-1, 5-2, 5-3 of the data 4-1, 4-2, 4-3 stored in the memory 1 from the processor and the data amount 6 are stored. -1,
6-2 and 6-3 are notified. Further, in the device of the present invention, the input side direct memory access controller 11 and the output side direct memory access controller 1
The parameter for the toggle switching timing for 2 is notified. This parameter is actually used as an initial value of a counter that counts the amount of read data, and the first buffer memory 13 and the second buffer memory 1 are used.
When data is written up to the full capacity of 4,
A switching signal is output from the counter to the selectors 15 and 16 and is used for control such that the data transfer destination is switched. Therefore, the head address, the amount of data, the toggle switching timing parameter 17 and the like shown in the figure are stored in the memory or the like in advance, but the others are all configured by logic.

【0014】即ち、まず初めのデータ4−1について、
ダイレクトメモリアクセスコントローラ11が第1バッ
ファメモリ13に転送する動作を開始する。そして、第
1バッファメモリ13がいっぱいになると、セレクタ1
5が切り換えられる。セレクタ15が切り換えられる
と、今度は、データ4−1の残り分が第2バッファメモ
リ14に格納される。このとき、第1バッファメモリ1
3と出力側ダイレクトメモリアクセスコントローラ12
がセレクタ16にて接続されており、出力側ダイレクト
メモリアクセスコントローラ12は、第1バッファメモ
リ13から既に格納されたデータを読み出して入出力装
置3に転送する。
That is, for the first data 4-1,
The direct memory access controller 11 starts the operation of transferring to the first buffer memory 13. When the first buffer memory 13 is full, the selector 1
5 is switched. When the selector 15 is switched, the remaining portion of the data 4-1 is stored in the second buffer memory 14 this time. At this time, the first buffer memory 1
3 and output side direct memory access controller 12
Are connected by the selector 16, and the output side direct memory access controller 12 reads the already stored data from the first buffer memory 13 and transfers it to the input / output device 3.

【0015】第1バッファメモリ13と第2バッファメ
モリ14の容量は、先に説明したように、データ4−1
が平均的な量であれば、その2分の1程度以下に選定さ
れているため、数回上記動作を繰り返すことによってデ
ータ転送が終了する。そして、データ4−1の最後のデ
ータが、例えば第2バッファメモリ14に書き込まれる
と、第2バッファメモリ14がいっぱいにならなくて
も、その動作を一旦停止する。そして、セレクタ15、
16を切り換えて、今度はデータ4−2の転送処理に移
る。データ4−2は、新たに第1バッファメモリ13へ
転送開始される。従って、その後の動作は最初のデータ
4−1の転送動作と全く同様である。このため、入力側
ダイレクトメモリアクセスコントローラ11も出力側ダ
イレクトメモリアクセスコントローラ12も、従来行っ
ていたような複雑な追記処理のための制御を全く行う必
要はない。
The capacities of the first buffer memory 13 and the second buffer memory 14 are, as described above, the data 4-1.
Is an average amount, it is selected to be about half or less of the average amount. Therefore, the data transfer is completed by repeating the above operation several times. Then, when the last data of the data 4-1 is written in the second buffer memory 14, for example, the operation is temporarily stopped even if the second buffer memory 14 is not full. And the selector 15,
16 is switched, and the process for transferring the data 4-2 is started this time. The data 4-2 is newly started to be transferred to the first buffer memory 13. Therefore, the subsequent operation is exactly the same as the first data 4-1 transfer operation. Therefore, neither the input-side direct memory access controller 11 nor the output-side direct memory access controller 12 need to perform any control for complicated additional write processing, which has been conventionally performed.

【0016】図5に、本発明の装置を更に詳細に示す具
体例主要部ブロック図を示す。本発明の装置は、例えば
具体的にはこのような構成で実施される。この装置は、
メインバス21に接続された図示しない転送元の主記憶
装置等から、I/Oバス22に接続された図示しない転
送先の磁気ディスク装置等へデータを転送するためのも
のである。この装置には、内部バス23が設けられ、こ
こに接続されたマイクロプロセッサ24が装置全体の動
作を制御する。メインバス21と内部バス23の間に
は、メインバスインタフェース部25が設けられ、この
メインバスインタフェース部25を介してメインバス用
DMAコントローラ26がデータバッファ27に対し、
先に説明した要領でダイレクトメモリアクセス動作を実
行する構成とされている。
FIG. 5 is a block diagram of the essential parts of a specific example showing the apparatus of the present invention in more detail. The device of the present invention is specifically implemented, for example, in such a configuration. This device
Data is transferred from a transfer source main storage device (not shown) connected to the main bus 21 to a transfer destination magnetic disk device (not shown) connected to the I / O bus 22. The device is provided with an internal bus 23, and a microprocessor 24 connected thereto controls the operation of the entire device. A main bus interface unit 25 is provided between the main bus 21 and the internal bus 23, and the main bus DMA controller 26 transfers data to the data buffer 27 via the main bus interface unit 25.
The configuration is such that the direct memory access operation is executed in the manner described above.

【0017】また、内部バス23とI/Oバス22の間
には、I/Oバスインタフェース部29が設けられ、デ
ータバッファ27に格納されたデータをI/Oバス22
に転送するために、I/Oバス用DMAコントローラ2
8が設けられている。更に、先に説明した先頭アドレス
や、データ量あるいはトグル切り換えタイミングパラメ
ータ等を格納するために記憶装置32が設けられてい
る。また、マイクロプロセッサ24の動作制御のために
読出し専用記憶装置31が設けられている。
An I / O bus interface unit 29 is provided between the internal bus 23 and the I / O bus 22 to transfer the data stored in the data buffer 27 to the I / O bus 22.
I / O bus DMA controller 2 for transfer to
8 are provided. Further, a storage device 32 is provided for storing the above-described start address, data amount, toggle switching timing parameter, and the like. Further, a read-only storage device 31 is provided for controlling the operation of the microprocessor 24.

【0018】図6に、図5に示したデータバッファ27
の具体的な構成を示す主要部ブロック図を示す。このデ
ータバッファ27には、2個1組で構成されたバッファ
メモリが全部でn組設けられている。DMAチャネル0
用バッファA面27−01とDMAチャネル0用バッフ
ァB面27−02は1組となって、先に図1で説明した
通りの転送動作に使用される。その他の部分、即ちDM
Aチャネル1用バッファA面27−11とDMAチャネ
ル1用バッファB面27−12とは、別のチャネル用の
バッファメモリを構成し、以下、同様にDMAチャネル
n用バッファA面27−n1とDMAチャネルn用バッ
ファB面27−n2まで1組で他のチャネル用のバッフ
ァメモリを構成する。このように、実際の例では入出力
装置の複数のチャネルについて、それぞれ1組ずつバッ
ファメモリが対応して設けられ、独立にダイレクトメモ
リアクセス動作が実行できる構成とされている。
FIG. 6 shows the data buffer 27 shown in FIG.
2 is a block diagram of a main part showing a specific configuration of FIG. This data buffer 27 is provided with a total of n sets of buffer memories each composed of two sets. DMA channel 0
Buffer A side 27-01 and DMA channel 0 buffer B side 27-02 form a set and are used for the transfer operation as described above with reference to FIG. The other part, DM
The buffer A side 27-11 for A channel 1 and the buffer B side 27-12 for DMA channel 1 constitute a buffer memory for another channel. The buffer memory for the other channels is configured by one set up to the buffer B side 27-n2 for the DMA channel n. As described above, in the actual example, one set of buffer memories is provided for each of a plurality of channels of the input / output device, and the direct memory access operation can be independently performed.

【0019】なお、図5の装置において、その動作開始
の際には、マイクロプロセッサ24にメインバス21と
メインバスインタフェース部25を通じてダイレクトメ
モリアクセス要求が入力し、更に同様の経路を通って先
頭アドレスとデータ量とが入力する。これらの入力情報
は記憶装置32に格納される。その後、マイクロプロセ
ッサ24は読出し専用記憶装置31に格納された所定の
動作開始処理のためのプログラムに従って、トグル切り
換えタイミングパラメータを生成し、メインバス用DM
Aコントローラ26やI/Oバス用DMAコントローラ
28の所定のレジスタに格納する。また、I/Oバス用
DMAコントローラ28の動作タイミングを制御するパ
ラメータ等も同時に通知する。そして、動作開始の指示
があると先に説明した通り、メインバス用DMAコント
ローラ26がデータバッファ27に設けられた1組のバ
ッファメモリの一方にデータを格納し、これと並行して
I/Oバス用DMAコントローラ28が他方のバッファ
メモリからデータを読み出してI/Oバス22に転送す
る動作が実行される。
In the apparatus of FIG. 5, when the operation is started, a direct memory access request is input to the microprocessor 24 through the main bus 21 and the main bus interface section 25, and the head address is further passed through the same route. And the amount of data to enter. These input information are stored in the storage device 32. After that, the microprocessor 24 generates the toggle switching timing parameter according to the program for the predetermined operation start processing stored in the read-only storage device 31, and the main bus DM
It is stored in a predetermined register of the A controller 26 or the I / O bus DMA controller 28. Also, the parameters for controlling the operation timing of the I / O bus DMA controller 28 are notified at the same time. Then, as described above when the operation start instruction is given, the main bus DMA controller 26 stores the data in one of the set of buffer memories provided in the data buffer 27, and in parallel with this, the I / O The operation in which the bus DMA controller 28 reads data from the other buffer memory and transfers it to the I / O bus 22 is executed.

【0020】図6に示す実施例では、例えば各バッファ
メモリの容量を2キロバイト程度に選定し良好な結果を
得た。また、図5に示す読出し専用記憶装置に格納され
たプログラムを変更すれば、データバッファ27の分割
方法やトグル切り換えタイミングの生成方法等を変更す
ることができる。この場合、メインバス用DMAコント
ローラ26やI/Oバス用DMAコントローラ28を構
成するロジックは全く変更する必要はない。また、本発
明の方法では、バッファメモリをトグルに使用してデー
タ転送を実行するため、その転送速度も従来方法と比較
して実質的にほとんど低下することはない。
In the embodiment shown in FIG. 6, for example, the capacity of each buffer memory was selected to be about 2 kilobytes, and good results were obtained. Further, by changing the program stored in the read-only storage device shown in FIG. 5, it is possible to change the division method of the data buffer 27, the toggle switching timing generation method, and the like. In this case, there is no need to change the logic configuring the main bus DMA controller 26 or the I / O bus DMA controller 28. Further, in the method of the present invention, since the buffer memory is used as a toggle to perform the data transfer, the transfer speed thereof is not substantially reduced as compared with the conventional method.

【0021】ところで、図5に示すように、データバッ
ファ27はメインバスインタフェース部25と内部バス
23に接続されており、メインバス用DMAコントロー
ラ26とI/Oバス用DMAコントローラ28がデータ
バッファ27を同時にアクセスしてデータ転送を実行し
ている。従って、データバッファ27としては、同時ア
クセス可能ないわゆる2ポートメモリが使用されてい
る。これによって、一方のダイレクトメモリアクセスコ
ントローラがアクセスしている間バスが占有され、他方
のダイレクトメモリアクセスコントローラのアクセスが
禁止されてしまうことがなくなる。
By the way, as shown in FIG. 5, the data buffer 27 is connected to the main bus interface section 25 and the internal bus 23, and the main bus DMA controller 26 and the I / O bus DMA controller 28 are connected to the data buffer 27. Are simultaneously accessed to perform data transfer. Therefore, as the data buffer 27, a so-called 2-port memory that can be accessed simultaneously is used. This prevents the bus from being occupied while one of the direct memory access controllers is being accessed and the access of the other direct memory access controller being prohibited.

【0022】本発明は以上の実施例に限定されない。装
置を構成するハードウェアは、図1に示した概略的なブ
ロック構成となる各種の回路を使用して構成して差し支
えない。また、データバッファを分割していくつかのバ
ッファメモリを構成する動作と、データバッファ27を
従来のように全体に使用して基本動作を実行する処理と
を要求に応じて使い分けるような構成にしてもよい。
The present invention is not limited to the above embodiments. The hardware configuring the device may be configured using various circuits having the schematic block configuration shown in FIG. In addition, the operation of dividing the data buffer to form some buffer memories and the processing of using the data buffer 27 as a whole to execute the basic operation are selectively used according to the request. Good.

【0023】[0023]

【発明の効果】以上説明した本発明のダイレクトメモリ
アクセス装置は、平均のデータ転送量の2分の1以下の
容量を持つ一対の2ポート式のバッファメモリをトグル
に使用することによって、入力側ダイレクトメモリアク
セスコントローラと出力側ダイレクトメモリアクセスコ
ントローラをそれぞれ並行に動作させ、基本的で簡単な
ロジックにより複雑な不連続空間DMA動作等を高速で
行うことができる。しかも、そのパラメータ等は、動作
準備のためのプログラムを変更することによって容易に
変更できるため、ロジックの追加変更を伴わず、複雑な
DMA動作を制御することが可能になる。
The direct memory access device of the present invention described above uses a pair of two-port type buffer memories each having a capacity equal to or less than one-half of the average data transfer amount as a toggle, so that the input side The direct memory access controller and the output side direct memory access controller are operated in parallel, respectively, and a complicated discontinuous space DMA operation or the like can be performed at high speed by a basic and simple logic. Moreover, since the parameters and the like can be easily changed by changing the program for the operation preparation, it becomes possible to control the complicated DMA operation without additional change of the logic.

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

【図1】本発明のダイレクトメモリアクセス装置概略ブ
ロック図である。
FIG. 1 is a schematic block diagram of a direct memory access device according to the present invention.

【図2】従来一般のDMA基本動作説明図である。FIG. 2 is an explanatory diagram of a basic operation of a conventional general DMA.

【図3】従来の不連続空間DMA動作説明図である。FIG. 3 is an explanatory diagram of a conventional discontinuous space DMA operation.

【図4】平均転送量の説明図である。FIG. 4 is an explanatory diagram of an average transfer amount.

【図5】本発明の装置の具体例主要部ブロック図であ
る。
FIG. 5 is a block diagram of a main part of a specific example of the apparatus of the present invention.

【図6】本発明の装置のデータバッファ主要部ブロック
図である。
FIG. 6 is a block diagram of a main part of a data buffer of the device of the present invention.

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

1 メモリ(転送元) 3 入出力装置(転送先) 11 入力側ダイレクトメモリアクセスコントローラ 12 出力側ダイレクトメモリアクセスコントローラ 13 第1バッファメモリ 14 第2バッファメモリ 15、16 セレクタ 1 memory (transfer source) 3 input / output device (transfer destination) 11 input side direct memory access controller 12 output side direct memory access controller 13 first buffer memory 14 second buffer memory 15, 16 selector

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 転送元からダイレクトメモリアクセス要
求を受けた場合に転送すべきデータ量の、平均転送量の
2分の1以下の容量の一対の2ポート式のバッファメモ
リと、 転送元から前記一方のバッファメモリにデータを転送す
る入力側ダイレクトメモリアクセスコントローラと、 前記他方のバッファメモリから、既に直前の転送動作に
より格納されたデータを、前記入力側ダイレクトメモリ
アクセスコントローラの前記転送動作と並行して転送先
へ転送する出力側ダイレクトメモリアクセスコントロー
ラとを備えたことを特徴とするダイレクトメモリアクセ
ス装置。
1. A pair of two-port type buffer memories having a capacity equal to or less than ½ of an average transfer amount of data to be transferred when a direct memory access request is received from the transfer source; An input side direct memory access controller that transfers data to one buffer memory, and data that has already been stored by the previous transfer operation from the other buffer memory in parallel with the transfer operation of the input side direct memory access controller. A direct memory access device comprising an output side direct memory access controller for transferring to a transfer destination.
【請求項2】 転送データの転送元における複数の読み
出しアドレスとデータ量とを含むパラメータを格納する
ランダム・アクセス・メモリと、 前記ランダム・アクセス・メモリに格納されたパラメー
タの書き換え制御を行うプロセッサとを備えたことを特
徴とする請求項1記載のダイレクトメモリアクセス装
置。
2. A random access memory that stores parameters including a plurality of read addresses and a data amount at a transfer source of transfer data, and a processor that controls rewriting of the parameters stored in the random access memory. The direct memory access device according to claim 1, further comprising:
JP24125892A 1992-08-18 1992-08-18 Direct memory access device Pending JPH0668022A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24125892A JPH0668022A (en) 1992-08-18 1992-08-18 Direct memory access device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24125892A JPH0668022A (en) 1992-08-18 1992-08-18 Direct memory access device

Publications (1)

Publication Number Publication Date
JPH0668022A true JPH0668022A (en) 1994-03-11

Family

ID=17071572

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24125892A Pending JPH0668022A (en) 1992-08-18 1992-08-18 Direct memory access device

Country Status (1)

Country Link
JP (1) JPH0668022A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006236395A (en) * 1994-06-03 2006-09-07 Hynix Semiconductor Inc Bus interface for computer
JP2015032008A (en) * 2013-07-31 2015-02-16 株式会社東芝 Memory transfer apparatus by digital signal processor and memory transfer method by digital signal processor
JP2015506025A (en) * 2011-12-07 2015-02-26 ザイリンクス インコーポレイテッドXilinx Incorporated Memory configuration without contention
JP2022527907A (en) * 2019-03-27 2022-06-07 无錫海斯凱尓医学技術有限公司 Data transmission equipment, methods and readable storage media

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006236395A (en) * 1994-06-03 2006-09-07 Hynix Semiconductor Inc Bus interface for computer
JP2015506025A (en) * 2011-12-07 2015-02-26 ザイリンクス インコーポレイテッドXilinx Incorporated Memory configuration without contention
JP2015032008A (en) * 2013-07-31 2015-02-16 株式会社東芝 Memory transfer apparatus by digital signal processor and memory transfer method by digital signal processor
JP2022527907A (en) * 2019-03-27 2022-06-07 无錫海斯凱尓医学技術有限公司 Data transmission equipment, methods and readable storage media
US11803490B2 (en) 2019-03-27 2023-10-31 Wuxi Hisky Medical Technologies Co., Ltd. Apparatus and method for data transmission and readable storage medium

Similar Documents

Publication Publication Date Title
JPH03191453A (en) Data processing system
JPH0668022A (en) Direct memory access device
JPS62117001A (en) Input and output processing method for programmable sequence controller
JP2539030B2 (en) Direct memory access device
JPS6336021B2 (en)
JPH0261749A (en) Data transfer device
JPH08278938A (en) Dma device
JPH04205452A (en) Dma controller
JPS60253083A (en) Storage device controlling system
JP2001306488A (en) Data transfer device
JPS61165172A (en) Memory access controlling system
JPS62219153A (en) Dma controller
JPH06348582A (en) Multi-computer system
JPS62145339A (en) Interleaving type storage device
JPS63305447A (en) Memory access control circuit
JPS60218149A (en) Dma mode control device
JPS6378260A (en) Input-output device controlling system
JPH05108545A (en) Dma controller
JPS6028022B2 (en) input/output processing unit
JPS62293455A (en) Dma controller
JPH01261763A (en) Dma transfer control device
JPH0744488A (en) Data transfer system
JPS63103351A (en) Dma control circuit
JPS58166581A (en) Addressing system of memory
JPH1011351A (en) Computer system